Пример #1
0
        public object SaveOutward(OutwardObject OutwardObj)
        {
            var result = new object();

            if (OutwardObj.FormMode == FormMode.Insert || OutwardObj.FormMode == FormMode.Duplicate)
            {
                //insert thằng master lấy id
                var masterID = InsertEntity <Outward>(OutwardObj.Outward);
                OutwardObj.Outward.OutwardID = masterID;
                //gán id cho thằng detail, thực hiện insert
                for (int i = 0; i < OutwardObj.OutwardDetails.Count; i++)
                {
                    OutwardObj.OutwardDetails[i].OutwardID = masterID;
                    var detailID = InsertEntity <OutwardDetail>(OutwardObj.OutwardDetails[i]);
                    OutwardObj.OutwardDetails[i].OutwardDetailID = detailID;

                    var store = new Store();
                    store.ShopID        = OutwardObj.Outward.ShopID;
                    store.ChangeDate    = OutwardObj.Outward.OutwardDate;
                    store.SKUCode       = OutwardObj.OutwardDetails[i].SKUCode;
                    store.ItemName      = OutwardObj.OutwardDetails[i].ItemName;
                    store.Unit          = OutwardObj.OutwardDetails[i].Unit;
                    store.UnitPrice     = OutwardObj.OutwardDetails[i].UnitPrice;
                    store.ItemGroupName = OutwardObj.OutwardDetails[i].ItemGroupName;
                    store.OutAmount     = OutwardObj.OutwardDetails[i].Amount;
                    store.InAmount      = 0;
                    store.UnitPrice     = OutwardObj.OutwardDetails[i].UnitPrice;
                    storeBL.InsertEntity <Store>(store);
                }
                result = masterID;
            }
            else if (OutwardObj.FormMode == FormMode.Update)
            {
                try
                {
                    //update thằng master
                    UpdateEntity <Outward>(OutwardObj.Outward);
                    //gán id cho thằng detail, thực hiện insert
                    var masterID = OutwardObj.Outward.OutwardID;
                    DeleteOutwardDetail(masterID.ToString());
                    for (int i = 0; i < OutwardObj.OutwardDetails.Count; i++)
                    {
                        OutwardObj.OutwardDetails[i].OutwardID = masterID;
                        var detailID = InsertEntity <OutwardDetail>(OutwardObj.OutwardDetails[i]);
                        OutwardObj.OutwardDetails[i].OutwardDetailID = detailID;
                    }
                }
                catch (Exception ex)
                {
                    throw ex;
                }
            }
            return(result);
        }
        // POST: api/Unit
        public ServerResponse Post([FromBody] OutwardObject OutwardObj)
        {
            var res = new ServerResponse();

            using (OutwardBL OutwardBL = new OutwardBL())
            {
                try
                {
                    res.Data = OutwardBL.SaveOutward(OutwardObj);
                }
                catch (Exception ex)
                {
                    res.Success = false;
                }
            }
            return(res);
        }