public static StoreTransfer UpdateStoreTransfer(Dictionary <string, string> values)
        {
            string stNumber = values["STNumber"];
            string stId     = values["STID"];

            StoreTransfer ST = GetStoreTransfer(stNumber);

            ST.Id              = string.IsNullOrEmpty(stId) ? 0 : int.Parse(stId);
            ST.STDate          = values.ContainsKey("Date") ? DateTime.Parse(values["Date"]) : DateTime.Now;
            ST.Customer        = values.ContainsKey("Customer") ? CustomerManager.GetCustomerRef(values["Customer"]) : CustomerManager.GetDefaultRef();
            ST.Origin          = values.ContainsKey("Origin") ? CommonDataManager.GetOrigin(values["Origin"]) : CommonDataManager.GetDefaultRef();
            ST.Size            = values.ContainsKey("Size") ? CommonDataManager.GetOrigin(values["Size"]) : CommonDataManager.GetDefaultRef();
            ST.Vessel          = values.ContainsKey("Vessel") ? CommonDataManager.GetOrigin(values["Vessel"]) : CommonDataManager.GetDefaultRef();
            ST.Quantity        = values.ContainsKey("Quantity") ? decimal.Parse(values["Quantity"]) : 0;
            ST.FromStoreId     = values.ContainsKey("FromStore") ? GetStoreRef(values["FromStore"]) : GetDefaultRef();
            ST.ToStoreId       = values.ContainsKey("ToStore") ? GetStoreRef(values["ToStore"]) : GetDefaultRef();
            ST.VehicleNo       = values.ContainsKey("VehicleNo") ? values["VehicleNo"] : "";
            ST.BiltyNo         = values.ContainsKey("BiltyNo") ? values["BiltyNo"] : "";
            ST.BiltyDate       = values.ContainsKey("BiltyDate") ? DateTime.Parse(values["BiltyDate"]) : DateTime.MinValue;
            ST.RRInvoice       = values.ContainsKey("Invoice") ? values["Invoice"] : "";
            ST.CCMNumber       = values.ContainsKey("CCMNo") ? values["CCMNo"] : "";
            ST.Transporter     = values.ContainsKey("Transporter") ? CommonDataManager.GetTrader(values["Transporter"]) : CommonDataManager.GetDefaultRef();
            ST.StoreInDate     = DateTime.MinValue;
            ST.StoreInQuantity = 0;
            ST.Remarks         = values.ContainsKey("Remarks") ? values["Remarks"] : "";

            StoreDataManager.UpdateStoreTransfer(StoreMap.reMapStoreTransferData(ST));
            ResetCache();
            return(ST);
        }
        public static StoreTransfer CreateStoreTransfer(Dictionary <string, string> values)
        {
            StoreTransfer ST = NewStoreTransfer();

            ST.STDate          = values.ContainsKey("Date") ? DateTime.Parse(values["Date"]) : DateTime.Now;
            ST.Customer        = values.ContainsKey("Customer") ? CustomerManager.GetCustomerRef(values["Customer"]) : CustomerManager.GetDefaultRef();
            ST.Origin          = values.ContainsKey("Origin") ? CommonDataManager.GetOrigin(values["Origin"]) : CommonDataManager.GetDefaultRef();
            ST.Size            = values.ContainsKey("Size") ? CommonDataManager.GetOrigin(values["Size"]) : CommonDataManager.GetDefaultRef();
            ST.Vessel          = values.ContainsKey("Vessel") ? CommonDataManager.GetOrigin(values["Vessel"]) : CommonDataManager.GetDefaultRef();
            ST.Quantity        = values.ContainsKey("Quantity") ? decimal.Parse(values["Quantity"]) : 0;
            ST.FromStoreId     = values.ContainsKey("FromStore") ? StoreManager.GetStoreRef(values["FromStore"]) : StoreManager.GetDefaultRef();
            ST.ToStoreId       = values.ContainsKey("ToStore") ? StoreManager.GetStoreRef(values["ToStore"]) : StoreManager.GetDefaultRef();
            ST.VehicleNo       = values.ContainsKey("VehicleNo") ? values["VehicleNo"] : "";
            ST.BiltyNo         = values.ContainsKey("BiltyNo") ? values["BiltyNo"] : "";
            ST.BiltyDate       = values.ContainsKey("BiltyDate") ? DateTime.Parse(values["BiltyDate"]) : DateTime.MinValue;
            ST.RRInvoice       = values.ContainsKey("Invoice") ? values["Invoice"] : "";
            ST.CCMNumber       = values.ContainsKey("CCMNo") ? values["CCMNo"] : "";
            ST.Transporter     = values.ContainsKey("Transporter") ? CommonDataManager.GetTrader(values["Transporter"]) : CommonDataManager.GetDefaultRef();
            ST.StoreInDate     = DateTime.MinValue;
            ST.StoreInQuantity = 0;
            ST.Remarks         = values.ContainsKey("Remarks") ? values["Remarks"] : "";

            StoreDataManager.CreateStoreTransfer(StoreMap.reMapStoreTransferData(ST));

            // ztodo: create store movement record


            ResetCache();
            return(ST);
        }
Exemplo n.º 3
0
        public ActionResult Create(StoreTransfer storetransfer)
        {
            if (ModelState.IsValid)
            {
                rb.Create <StoreTransfer>(storetransfer);
                return(RedirectToAction("Index"));
            }

            return(View(storetransfer));
        }
        public IActionResult Delete(StoreTransfer storeTransfer)
        {
            var result = _storeTransferService.Delete(storeTransfer);
            if (result.Success)
            {
                return Ok(result.Message);
            }

            return BadRequest(result.Message);
        }
Exemplo n.º 5
0
        public ActionResult Delete(int id = 0, int version = 0)
        {
            StoreTransfer storetransfer = rb.Find <StoreTransfer>(id, version);

            //StoreTransfer storetransfer = db.StoreTransfers.Find(id);
            if (storetransfer == null)
            {
                return(HttpNotFound());
            }
            return(View(storetransfer));
        }
Exemplo n.º 6
0
 public ActionResult Edit(StoreTransfer storetransfer)
 {
     if (ModelState.IsValid)
     {
         rb.Edit <StoreTransfer>(storetransfer);
         //db.Entry(storetransfer).State = EntityState.Modified;
         //db.SaveChanges();
         return(RedirectToAction("Index"));
     }
     return(View(storetransfer));
 }
Exemplo n.º 7
0
        public static List <StoreTransfer> MapStoreTransferData(DataTable dTstore)
        {
            List <StoreTransfer> ListStores = new List <StoreTransfer>();

            foreach (DataRow dr in dTstore.Rows)
            {
                StoreTransfer mapData = new StoreTransfer();
                mapData.Id       = int.Parse(dr["id"].ToString());
                mapData.InOut    = (StoreMovementType)Enum.Parse(typeof(StoreMovementType), dr["Type"].ToString());
                mapData.Status   = (StoreTransferStatus)Enum.Parse(typeof(StoreTransferStatus), dr["Status"].ToString());
                mapData.Customer = dr["CustomerId"] != null?CustomerManager.GetCustomerRef(dr["CustomerId"].ToString()) : CustomerManager.GetDefaultRef();

                mapData.CreatedOn = dr["CreatedOn"] != DBNull.Value ? DateTime.Parse(dr["CreatedOn"].ToString()) : DateTime.MinValue;
                mapData.CreatedBy = dr["CreatedBy"] != null?UserManager.GetUserRef(dr["CreatedBy"].ToString()) : UserManager.GetDefaultRef();

                mapData.ModifiedOn = dr["ModifiedOn"] != DBNull.Value ? DateTime.Parse(dr["ModifiedOn"].ToString()) : DateTime.MinValue;
                mapData.ModifiedBy = dr["ModifiedBy"] != null?UserManager.GetUserRef(dr["ModifiedBy"].ToString()) : UserManager.GetDefaultRef();

                mapData.CompletedOn = dr["CompletedOn"] != DBNull.Value ? DateTime.Parse(dr["CompletedOn"].ToString()) : DateTime.MinValue;
                mapData.LeadId      = dr["LeadId"] != null?UserManager.GetUserRef(dr["LeadId"].ToString()) : UserManager.GetDefaultRef();

                mapData.STNumber = dr["SMNumber"] != null ? dr["SMNumber"].ToString() : "";
                mapData.STDate   = dr["SMDate"] != DBNull.Value ? DateTime.Parse(dr["SMDate"].ToString()) : DateTime.MinValue;

                mapData.Origin = dr["Origin"] != null?CommonDataManager.GetOrigin(dr["Origin"].ToString()) : CommonDataManager.GetDefaultRef();

                mapData.Size = dr["Size"] != null?CommonDataManager.GetSize(dr["Size"].ToString()) : CommonDataManager.GetDefaultRef();

                mapData.Vessel = dr["Vessel"] != null?CommonDataManager.GetVessel(dr["Vessel"].ToString()) : CommonDataManager.GetDefaultRef();

                mapData.Quantity = dr["Quantity"] != null?decimal.Parse(dr["Quantity"].ToString()) : 0;

                mapData.FromStoreId = dr["FromStoreId"] != null?StoreManager.GetStoreRef(dr["FromStoreId"].ToString()) : StoreManager.GetDefaultRef();

                mapData.ToStoreId = dr["ToStoreId"] != null?StoreManager.GetStoreRef(dr["ToStoreId"].ToString()) : StoreManager.GetDefaultRef();

                mapData.VehicleNo   = dr["VehicleNo"] != null ? dr["VehicleNo"].ToString() : "";
                mapData.BiltyNo     = dr["BiltyNo"] != null ? dr["BiltyNo"].ToString() : "";
                mapData.BiltyDate   = dr["BiltyDate"] != DBNull.Value ? DateTime.Parse(dr["BiltyDate"].ToString()) : DateTime.MinValue;
                mapData.RRInvoice   = dr["RRInvoice"] != null ? dr["RRInvoice"].ToString() : "";
                mapData.CCMNumber   = dr["CCMNumber"] != null ? dr["CCMNumber"].ToString() : "";
                mapData.Transporter = dr["Transporter"] != null?CommonDataManager.GetTrader(dr["Transporter"].ToString()) : CommonDataManager.GetDefaultRef();

                mapData.StoreInDate     = dr["StoreInDate"] != DBNull.Value ? DateTime.Parse(dr["StoreInDate"].ToString()) : DateTime.MinValue;
                mapData.StoreInQuantity = dr["StoreInQuantity"] != null?decimal.Parse(dr["StoreInQuantity"].ToString()) : 0;

                ListStores.Add(mapData);
                mapData = null;
            }
            return(ListStores);
        }
        public static StoreTransfer NewStoreTransfer()
        {
            StoreTransfer St = new StoreTransfer();


            St.InOut     = StoreMovementType.Active;
            St.Status    = StoreTransferStatus.InTransit;
            St.CreatedOn = St.ModifiedOn = St.STDate = DateTime.Now;
            St.CreatedBy = St.ModifiedBy = St.LeadId = new Reference()
            {
                Id = Common.CurrentUser.Id, Name = Common.CurrentUser.Name
            };;
            St.STNumber = GenerateNextSTNumber();


            return(St);
        }
Exemplo n.º 9
0
        public static Dictionary <string, object> reMapStockMovementSTOutData(StoreTransfer ST)
        {
            Dictionary <string, object> keyValues = new Dictionary <string, object>();


            keyValues.Add("@Store", ST.FromStoreId.Id);
            keyValues.Add("@CustomerId", ST.Customer.Id);
            keyValues.Add("@Type", StMovType.StoreMovement);
            keyValues.Add("@Quantity", ST.Quantity);
            keyValues.Add("@InOut", false);
            keyValues.Add("@Reference", ST.STNumber);
            keyValues.Add("@Vessel", ST.Vessel.Index);
            keyValues.Add("@Origin", ST.Origin.Index);
            keyValues.Add("@Size", ST.Size.Index);
            keyValues.Add("@Remarks", ST.Remarks);

            return(keyValues);
        }
Exemplo n.º 10
0
        public StoreTransferModel(StoreTransfer storeTransfer)
            : base(storeTransfer)
        {
            this.CodeNo       = storeTransfer.CodeNo;
            this.OrderCode    = storeTransfer.OrderCode;
            this.OrderTimeStr = storeTransfer.OrderTime.ToString("yyyy-MM-dd HH:mm:ss");

            if (storeTransfer.FromStore != null)
            {
                this.FromStoreId   = storeTransfer.FromStore.Id;
                this.FromStoreName = storeTransfer.FromStore.Name;
            }

            if (storeTransfer.ToStore != null)
            {
                this.ToStoreId   = storeTransfer.ToStore.Id;
                this.ToStoreName = storeTransfer.ToStore.Name;
            }

            this.Note = storeTransfer.Note;
        }
Exemplo n.º 11
0
        public ActionResult SaveOrUpdate(StoreTransfer obj, string sgoods)
        {
            try
            {
                if (obj.Id > 0)
                {
                    obj = this.StoreTransferRepository.Get(obj.Id);
                    TryUpdateModel(obj);


                    var jser = new JavaScriptSerializer();
                    IList <StoreTransferDetailModel> datas = jser.Deserialize <IList <StoreTransferDetailModel> >(sgoods);


                    var list = this.StoreTransferDetailRepository.GetAll(new StoreTransferDetailQuery
                    {
                        StoreTransferId = obj.Id
                    });

                    IList <StoreTransferDetail> dts = new List <StoreTransferDetail>();

                    //找到存在的进行更新,不存在的删除
                    foreach (var item1 in list)
                    {
                        bool bFlag = false;

                        for (int i = datas.Count - 1; i >= 0; i--)
                        {
                            var item2 = datas[i];

                            if (item1.Goods.Id == item2.Id)
                            {
                                item1.Price        = item2.Price;
                                item1.Quantity     = item2.StoreGoodsQuantity;
                                item1.TotalAomount = item2.TotalAomount;
                                item1.Note         = item2.StoreGoodsNote;

                                dts.Add(item1);
                                datas.Remove(item2);

                                bFlag = true;
                            }
                        }

                        if (!bFlag)
                        {
                            this.StoreTransferDetailRepository.Delete(item1);
                        }
                    }

                    //添加新增的
                    foreach (var item in datas)
                    {
                        dts.Add(new StoreOutDetail()
                        {
                            StoreOut     = obj,
                            Goods        = this.GoodsRepository.Get(item.Id),
                            Price        = item.Price,
                            Quantity     = item.StoreGoodsQuantity,
                            TotalAomount = item.TotalAomount,
                            Note         = item.StoreGoodsNote
                        });
                    }

                    foreach (var item in dts)
                    {
                        this.StoreOutDetailRepository.SaveOrUpdate(item);
                    }
                }
                else
                {
                    if (obj.Store == null)
                    {
                        return(JsonError("请选择仓库"));
                    }

                    if (obj.Customer == null)
                    {
                        return(JsonError("请选择客户"));
                    }

                    if (obj.Seller == null)
                    {
                        return(JsonError("请选择销售员"));
                    }
                }

                obj = this.StoreOutRepository.SaveOrUpdate(obj);

                return(JsonSuccess(obj));
            }
            catch (Exception ex)
            {
                return(JsonError(ex.Message));
            }
        }
Exemplo n.º 12
0
        public ActionResult Detail(int id)
        {
            StoreTransfer item = this.StoreTransferRepository.Get(id);

            return(View(item));
        }
Exemplo n.º 13
0
 public static StoreTransferModel From(StoreTransfer storeTransfer)
 {
     return(new StoreTransferModel(storeTransfer));
 }
Exemplo n.º 14
0
 public IResult Update(StoreTransfer storeTransfer)
 {
     _storeTransferDal.Update(storeTransfer);
     return(new SuccessResult(Messages.UpdatedStoreTransfer));
 }
Exemplo n.º 15
0
 public IResult Add(StoreTransfer storeTransfer)
 {
     _storeTransferDal.Add(storeTransfer);
     return(new SuccessResult(Messages.AddedStoreTransfer));
 }
Exemplo n.º 16
0
        public static Dictionary <string, object> reMapStoreTransferData(StoreTransfer ST)
        {
            Dictionary <string, object> keyValues = new Dictionary <string, object>();

            if (ST.Id != 0)
            {
                keyValues.Add("@id", ST.Id);
            }


            keyValues.Add("@Type", ST.InOut);
            keyValues.Add("@Status", ST.Status);

            if (ST.CreatedOn == DateTime.MinValue)
            {
                keyValues.Add("@CreatedOn", DBNull.Value);
            }
            else
            {
                keyValues.Add("@CreatedOn", ST.CreatedOn);
            }
            keyValues.Add("@CreatedBy", ST.CreatedBy == null ? Guid.Empty : ST.CreatedBy.Id);
            if (ST.ModifiedOn == DateTime.MinValue)
            {
                keyValues.Add("@ModifiedOn", DBNull.Value);
            }
            else
            {
                keyValues.Add("@ModifiedOn", ST.ModifiedOn);
            }
            keyValues.Add("@ModifiedBy", ST.ModifiedBy == null ? Guid.Empty : ST.ModifiedBy.Id);
            if (ST.CompletedOn == DateTime.MinValue)
            {
                keyValues.Add("@CompletedOn", DBNull.Value);
            }
            else
            {
                keyValues.Add("@CompletedOn", ST.CompletedOn);
            }
            keyValues.Add("@LeadId", ST.LeadId.Id);
            keyValues.Add("@SMNumber", ST.STNumber);
            if (ST.STDate == DateTime.MinValue)
            {
                keyValues.Add("@SMDate", DBNull.Value);
            }
            else
            {
                keyValues.Add("@SMDate", ST.STDate);
            }
            keyValues.Add("@CustomerId", ST.Customer.Id);
            keyValues.Add("@Origin", ST.Origin.Index);
            keyValues.Add("@Size", ST.Size.Index);
            keyValues.Add("@Vessel", ST.Vessel.Index);
            keyValues.Add("@Quantity", ST.Quantity);
            keyValues.Add("@FromStoreId", ST.FromStoreId.Id);
            keyValues.Add("@ToStoreId", ST.ToStoreId.Id);
            keyValues.Add("@VehicleNo", ST.VehicleNo);
            keyValues.Add("@BiltyNo", ST.BiltyNo);
            keyValues.Add("@BiltyDate", ST.BiltyDate);
            keyValues.Add("@RRInvoice", ST.RRInvoice);
            keyValues.Add("@CCMNumber", ST.CCMNumber);
            keyValues.Add("@Transporter", ST.Transporter.Index);
            if (ST.StoreInDate == DateTime.MinValue)
            {
                keyValues.Add("@StoreInDate", DBNull.Value);
            }
            else
            {
                keyValues.Add("@StoreInDate", ST.StoreInDate);
            }
            keyValues.Add("@StoreInQuantity", ST.StoreInQuantity);
            //keyValues.Add("@Remarks", ST.Remarks);
            return(keyValues);
        }