Exemplo n.º 1
0
        private Tuple <bool, long, string> CreateRckByPick(TOutPick outPick)
        {
            var recheck = new TOutCheck
            {
                Code         = outPick.Code.Replace("PCK", "RCK"),
                WhId         = outPick.WhId,
                OutboundId   = outPick.OutboundId,
                OutboundCode = outPick.OutboundCode,
                PickId       = outPick.Id,
                PickCode     = outPick.Code,
                Status       = Enum.GetName(typeof(EnumOperateStatus), EnumOperateStatus.Init),
                Store        = outPick.Store,
                CreatedBy    = DefaultUser.UserName,
                CreatedTime  = DateTime.Now,
            };

            outPick.Status = Enum.GetName(typeof(EnumOperateStatus), EnumOperateStatus.Finished);

            var outbound = wmsoutbound.TOuts.Where(x => x.Id == outPick.OutboundId).FirstOrDefault();

            outbound.PickStatus = Enum.GetName(typeof(EnumOperateStatus), EnumOperateStatus.Finished);
            outbound.ScanStatus = Enum.GetName(typeof(EnumOperateStatus), EnumOperateStatus.Init);

            wmsoutbound.TOutChecks.Add(recheck);

            var r1 = wmsoutbound.SaveChanges() > 0;

            return(new Tuple <bool, long, string>(r1, outPick.Id, ""));
        }
Exemplo n.º 2
0
        private bool AddRecheckDetail(TOutCheck recheck, VScanRequest request)
        {
            var recheckId = recheck.Id;
            //新增复核明细
            var recheckDetail = new TOutCheckD
            {
                HId         = recheckId,
                Qty         = 1,
                Carton      = request.Carton,
                Barcode     = request.Barcode,
                CreatedBy   = DefaultUser.UserName,
                CreatedTime = DateTime.Now,
            };

            if (recheck.FirstScanAt == null)
            {
                recheck.FirstScanAt = DateTime.UtcNow;
            }

            recheck.Qty += 1;

            recheck.LastScanAt = DateTime.UtcNow;
            recheck.Status     = Enum.GetName(typeof(EnumOperateStatus), EnumOperateStatus.Doing);

            //更新出库单状态
            var outbound = wmsoutbound.TOuts.Where(x => x.Id == recheckId).FirstOrDefault();

            outbound.ScanStatus = Enum.GetName(typeof(EnumOperateStatus), EnumOperateStatus.Doing);

            wmsoutbound.TOutCheckDs.Add(recheckDetail);

            return(wmsoutbound.SaveChanges() > 0);
        }