Exemple #1
0
        private static MoveOrderDetail GetEntityByModel(MoveOrderDetailModel model, int count)
        {
            if (model == null)
            {
                return(null);
            }

            MoveOrderDetail entity = new MoveOrderDetail();

            if (count == 0)
            {
                entity.CreateBy   = AuthenticationHelper.UserId;
                entity.CreateDate = DateTime.Now;
            }
            else
            {
                entity.CreateBy   = model.CreateBy;
                entity.CreateDate = model.CreateDate;
            }

            entity.DateRequired = model.DateRequired;
            entity.Id           = model.Id;
            entity.ItemId       = model.ItemId;
            entity.LocatorId    = model.LocatorId;
            entity.LotNo        = model.LotNo;
            entity.MoveOrderId  = model.MoveOrderId;
            entity.Quantity     = model.Quantity;
            entity.SerialNo     = model.SerialNo;
            entity.UpdateBy     = AuthenticationHelper.UserId;
            entity.UpdateDate   = DateTime.Now;
            entity.WarehouseId  = model.WarehouseId;
            return(entity);
        }
Exemple #2
0
        public long Update(MoveOrderDetail entity)
        {
            var originalEntity = this.Context.MoveOrderDetails.Find(entity.Id);

            this.Context.Entry(originalEntity).CurrentValues.SetValues(entity);
            this.Context.Entry(originalEntity).State = EntityState.Modified;
            this.Commit();
            return(entity.Id);
        }
Exemple #3
0
 public MoveOrderDetailModel(MoveOrderDetail entity)
 {
     this.CreateBy     = entity.CreateBy;
     this.CreateDate   = entity.CreateDate;
     this.DateRequired = entity.DateRequired;
     this.Id           = entity.Id;
     this.ItemId       = entity.ItemId;
     this.LocatorId    = entity.LocatorId;
     this.LotNo        = entity.LotNo;
     this.MoveOrderId  = entity.MoveOrderId;
     this.Quantity     = entity.Quantity;
     this.SerialNo     = entity.SerialNo;
     this.UpdateBy     = entity.UpdateBy;
     this.UpdateDate   = entity.UpdateDate;
     this.WarehouseId  = entity.WarehouseId;
 }
Exemple #4
0
        /// <summary>
        ///     编辑订单
        /// </summary>
        /// <param name="entity"></param>
        /// <param name="list"></param>
        /// <returns></returns>
        public override string EditOrder(OrdersEntity entity, List <OrderDetailEntity> list)
        {
            using (var ts = new TransactionScope()) {
                var line = 0;
                entity.Include(a => new { a.OrderType, a.ContractOrder, a.Remark, a.Amount, a.Num });
                entity.Where(a => a.OrderNum == entity.OrderNum);
                var detail = new OrderDetailEntity();
                detail.Where(a => a.OrderNum == entity.OrderNum);
                MoveOrderDetail.Delete(detail);
                foreach (var item in list)
                {
                    item.OrderNum = entity.OrderNum;
                    item.IncludeAll();
                }

                entity.Num    = list.Sum(a => a.Num);
                entity.Amount = list.Sum(a => a.Amount);
                line          = Orders.Update(entity);
                OrderDetail.Add(list);
                ts.Complete();
                return(line > 0 ? EnumHelper.GetEnumDesc(EReturnStatus.Success) : string.Empty);
            }
        }
 public long Update(MoveOrderDetail entity)
 {
     return(this.repository.Update(entity));
 }
 public long Insert(MoveOrderDetail entity)
 {
     return(this.repository.Insert(entity));
 }
Exemple #7
0
        public static void Save(MoveOrderModel moveOrderModel)
        {
            MoveOrder entity = GetEntityByModel(moveOrderModel);

            string result = string.Empty;

            if (entity.IsValid())
            {
                if (moveOrderModel.Id > 0)
                {
                    result = service.Update(entity);
                }
                else
                {
                    result = service.Insert(entity);
                }

                if (!string.IsNullOrEmpty(result))
                {
                    var savedDetail = GetMoveOrderLines(result);
                    if (savedDetail.Count() > moveOrderModel.MoveOrderDetail.Count())
                    {
                        var tobeDeleted = savedDetail.Take(savedDetail.Count() - moveOrderModel.MoveOrderDetail.Count());
                        foreach (var item in tobeDeleted)
                        {
                            service.Delete(item.Id);
                            IEnumerable <LotNumber> lotNum = lotNumService.CheckLotNumAvailability(AuthenticationHelper.CompanyId.Value, item.LotNo, item.ItemId, SessionHelper.SOBId);
                            if (lotNum.Any())
                            {
                                LotNumberHelper.Delete(lotNum.FirstOrDefault().Id.ToString());
                            }

                            //IEnumerable<SerialNumber> serialNum = lotNumService.CheckSerialNumAvailability(AuthenticationHelper.CompanyId.Value, item.LotNo, item.SerialNo);
                            //if (serialNum.Any())
                            //{
                            //    LotNumberHelper.DeleteSerialNumber(serialNum.FirstOrDefault().Id.ToString());
                            //}
                        }
                        savedDetail = GetMoveOrderLines(result);
                    }

                    foreach (var detail in moveOrderModel.MoveOrderDetail)
                    {
                        MoveOrderDetail detailEntity = GetEntityByModel(detail, savedDetail.Count());
                        if (detailEntity.IsValid())
                        {
                            detailEntity.MoveOrderId = Convert.ToInt64(result);
                            if (savedDetail.Count() > 0)
                            {
                                detailEntity.Id = savedDetail.FirstOrDefault().Id;
                                savedDetail.Remove(savedDetail.FirstOrDefault(rec => rec.Id == detailEntity.Id));
                                service.Update(detailEntity);
                                IEnumerable <LotNumber> lotNum = lotNumService.CheckLotNumAvailability(AuthenticationHelper.CompanyId.Value, detailEntity.LotNo, detailEntity.ItemId, SessionHelper.SOBId);
                                if (lotNum.Any())
                                {
                                    LotNumberHelper.Update(lotNum.FirstOrDefault());
                                }

                                //IEnumerable<SerialNumber> serialNum = lotNumService.CheckSerialNumAvailability(AuthenticationHelper.CompanyId.Value, detailEntity.LotNo, detailEntity.SerialNo);
                                //if (serialNum.Any())
                                //{
                                //    LotNumberHelper.UpdateSerialNumber(serialNum.FirstOrDefault());
                                //}
                            }
                            else
                            {
                                service.Insert(detailEntity);
                                IEnumerable <LotNumber> lotNum = lotNumService.CheckLotNumAvailability(AuthenticationHelper.CompanyId.Value, detailEntity.LotNo, detailEntity.ItemId, SessionHelper.SOBId);
                                if (!lotNum.Any())
                                {
                                    LotNumberHelper.Insert(new MoveOrderDetailModel(detailEntity));
                                }

                                //IEnumerable<SerialNumber> serialNum = lotNumService.CheckSerialNumAvailability(AuthenticationHelper.CompanyId.Value, detailEntity.LotNo, detailEntity.SerialNo);
                                //if (!serialNum.Any())
                                //{
                                //    LotNumberHelper.InsertSerialNumber(new MoveOrderDetailModel(detailEntity));
                                //}
                            }
                        }
                    }
                }
            }
        }
Exemple #8
0
 public long Insert(MoveOrderDetail entity)
 {
     this.Context.MoveOrderDetails.Add(entity);
     this.Commit();
     return(entity.Id);
 }