/// <summary> /// 关闭请购计划明细记录 /// </summary> /// <param name="data"></param> /// <param name="loginUser"></param> /// <returns></returns> public bool CloseSave(List <ICPRBILLENTRYMODEL> data, User loginUser, string content) { try { foreach (ICPRBILLENTRYMODEL model in data) { ICPRBILLENTRYMODEL uptModel = ICPRBILLENTRYDAL.Instance.Get(model.FID); if (uptModel != null) { uptModel.FSTATUS = (int)Constant.ICPRBILL_FSTATUS.关闭; uptModel.FCLOSE_USER = loginUser.FID; uptModel.FCLOSE_TIME = DateTime.Now; uptModel.FCLOSE_RESON = content; uptModel.FCLOSE = 1; ICPRBILLENTRYDAL.Instance.Update(uptModel); if (ICPRBILLENTRYDAL.Instance.GetCloseStatus(uptModel.FPLANID) == 0) { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.关闭 }, new { FID = uptModel.FPLANID }); } } } return(true); } catch (Exception ex) { LogHelper.WriteLog(ex); throw ex; } }
public JsonResult CloseSave(string ICPRBillDataJson) { try { string action = Request["action"]; List <ICPRBILLENTRYMODEL> list = JSONhelper.ConvertToObject <List <ICPRBILLENTRYMODEL> >(ICPRBillDataJson); foreach (ICPRBILLENTRYMODEL model in list) { ICPRBILLENTRYMODEL uptModel = ICPRBILLENTRYDAL.Instance.Get(model.FID); if (uptModel != null) { uptModel.FSTATUS = (int)Constant.ICPRBILL_FSTATUS.关闭; uptModel.FCLOSE = 1; ICPRBILLENTRYDAL.Instance.Update(uptModel); if (ICPRBILLENTRYDAL.Instance.GetCloseStatus(uptModel.FPLANID) == 0) { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.关闭 }, new { FID = uptModel.FPLANID }); } } } return(JsonResultHelper.ToSuccess("处理成功")); } catch (Exception ex) { LogHelper.WriteLog(ex); return(JsonResultHelper.ToFailed(ex.Message)); } }
/// <summary> /// 添加请购计划明细 /// </summary> /// <param name="model"></param> /// <param name="ICPRBILLID"></param> /// <param name="FITEMID"></param> /// <param name="FENTRYID"></param> /// <returns></returns> public int Add(ICPRBILLENTRYMODEL model, string ICPRBILLID) { model.FPLANID = ICPRBILLID; model.FSTATUS = 1; return(ICPRBILLENTRYDAL.Instance.Insert(model).IsGuid() ? 1 : 0); }
public JsonResult ConfirmSave(string ICPRBillDataJson) { try { string action = Request["action"]; List <ICPRBILLENTRYMODEL> list = JSONhelper.ConvertToObject <List <ICPRBILLENTRYMODEL> >(ICPRBillDataJson); foreach (ICPRBILLENTRYMODEL model in list) { ICPRBILLENTRYMODEL uptModel = ICPRBILLENTRYDAL.Instance.Get(model.FID); if (uptModel != null) { uptModel.FACCOUNT = model.FACCOUNT; uptModel.FSTOREHOUSE = model.FSTOREHOUSE; uptModel.FPOLICY = model.FPOLICY; uptModel.FCOMMITQTY = model.FCOMMITQTY; uptModel.FTRANSNAME = model.FTRANSNAME; uptModel.FORDERREMARK1 = model.FORDERREMARK1; uptModel.FORDERREMARK2 = model.FORDERREMARK2; uptModel.FCONFIRM_USER = SysVisitor.Instance.UserId; uptModel.FCONFIRM_TIME = DateTime.Now; if (action == "confirm") { uptModel.FSTATUS = (int)Constant.ICPRBILL_FSTATUS.采购确认; } else if (action == "unconfirm") { var count = ICSEOUTBILLENTRYDAL.Instance.GetWhere(new { FICPRID = uptModel.FID }).ToList(); if (count.Count > 0) { continue; } uptModel.FSTATUS = (int)Constant.ICPRBILL_FSTATUS.审核通过; } ICPRBILLENTRYDAL.Instance.Update(uptModel); if (action == "unconfirm") { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.审核通过 }, new { FID = uptModel.FPLANID }); } else { if (ICPRBILLENTRYDAL.Instance.GetConfirmStatus(uptModel.FPLANID) == 0) { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.采购确认 }, new { FID = uptModel.FPLANID }); } } } } return(JsonResultHelper.ToSuccess("处理完成,已发货的明细已自动跳过!")); } catch (Exception ex) { LogHelper.WriteLog(ex); return(JsonResultHelper.ToFailed(ex.Message)); } }
/// <summary> /// 采购确认 /// </summary> /// <param name="data"></param> /// <returns></returns> public bool ConfirmSave(string action, List <ICPRBILLENTRYMODEL> data, User loginUser) { try { foreach (ICPRBILLENTRYMODEL model in data) { ICPRBILLENTRYMODEL uptModel = ICPRBILLENTRYDAL.Instance.Get(model.FID); if (uptModel != null) { //uptModel.FACCOUNT = model.FACCOUNT; //uptModel.FSTOREHOUSE = model.FSTOREHOUSE; //uptModel.FPOLICY = model.FPOLICY; uptModel.FCOMMITQTY = model.FCOMMITQTY; //uptModel.FTRANSNAME = model.FTRANSNAME; uptModel.FORDERREMARK1 = model.FORDERREMARK1; uptModel.FORDERREMARK2 = model.FORDERREMARK2; if (action == "confirm") { uptModel.FCONFIRM_USER = loginUser.FID; uptModel.FCONFIRM_TIME = DateTime.Now; uptModel.FSTATUS = (int)Constant.ICPRBILL_FSTATUS.采购确认; } else if (action == "unconfirm") { var count = ICSEOUTBILLENTRYDAL.Instance.GetWhere(new { FICPRID = uptModel.FID }).ToList(); if (count.Count > 0) { continue; } uptModel.FSTATUS = (int)Constant.ICPRBILL_FSTATUS.审核通过; } LogHelper.WriteLog(JsonHelper.ToJson(uptModel)); ICPRBILLENTRYDAL.Instance.Update(uptModel); if (action == "unconfirm") { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.审核通过 }, new { FID = uptModel.FPLANID }); } else { if (ICPRBILLENTRYDAL.Instance.GetConfirmStatus(uptModel.FPLANID) == 0) { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.采购确认 }, new { FID = uptModel.FPLANID }); } } } } return(true); } catch (Exception ex) { LogHelper.WriteLog(ex); throw ex; } }
/// <summary> /// 采购确认,要同时更新请购单 /// </summary> /// <param name="data"></param> /// <returns></returns> public bool ConfirmSave_ICPO(string action, List <ICPOBILLENTRYMODEL> data, User loginUser) { try { List <ICPRBILLENTRYMODEL> tempPRList = new List <ICPRBILLENTRYMODEL>(); foreach (ICPOBILLENTRYMODEL model in data) { ICPRBILLENTRYMODEL tempPR = ICPRBILLENTRYDAL.Instance.Get(model.FPLANID); if (tempPR != null) { tempPRList.Add(tempPR); } ICPOBILLENTRYMODEL uptModel = ICPOBILLENTRYDAL.Instance.Get(model.FID); if (uptModel != null) { if (action == "confirm") { uptModel.FSTATUS = (int)Constant.ICPOBILL_FSTATUS.采购确认; } else if (action == "unconfirm") { uptModel.FSTATUS = (int)Constant.ICPOBILL_FSTATUS.审核通过; } LogHelper.WriteLog(JsonHelper.ToJson(uptModel)); ICPOBILLENTRYDAL.Instance.Update(uptModel); if (action == "unconfirm") { ICPOBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPOBILL_FSTATUS.审核通过 }, new { FID = uptModel.FICPOBILLID }); } else { if (ICPOBILLENTRYDAL.Instance.GetConfirmStatus(uptModel.FID) == 0) { ICPOBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPOBILL_FSTATUS.采购确认 }, new { FID = uptModel.FICPOBILLID }); } } } } if (tempPRList.Count > 0) { ConfirmSave(action, tempPRList, loginUser); } return(true); } catch (Exception ex) { LogHelper.WriteLog(ex); throw ex; } }
/// <summary> /// 更新组柜明细状态 /// </summary> /// <param name="ids"></param> /// <param name="status"></param> /// <returns></returns> public string UpdateDeliveryGroupStatus(string ids, int status) { try { string[] array = ids.Split(','); foreach (string id in array) { ICSEOUTBILLENTRYMODEL model = ICSEOUTBILLENTRYDAL.Instance.Get(id); if (model != null) { model.FGROUP_STATUS = status; } ICSEOUTBILLENTRYDAL.Instance.Update(model); //更新请购计划数量 string sql = string.Format("SELECT SUM(FCOMMITQTY*FRATE) FROM V_ICSEOUTBILLENTRY WHERE FICPRID='{0}' and (FGROUP_STATUS is null or FGROUP_STATUS = 0)", model.FICPRID); DataTable table = hn.Common.Data.DbUtils.Query(sql); decimal total = hn.Common.PublicMethod.GetDecimal(table.Rows[0][0]); ICPRBILLENTRYMODEL icprModel = ICPRBILLENTRYDAL.Instance.Get(model.FICPRID); if (icprModel != null) { icprModel.FLEFTAMOUNT = icprModel.FASKQTY - total; if (icprModel.FLEFTAMOUNT <= 0) { icprModel.FSTATUS = 5; } else { icprModel.FSTATUS = 7; } ICPRBILLENTRYDAL.Instance.Update(icprModel); if (ICPRBILLENTRYDAL.Instance.GetCloseStatus(icprModel.FPLANID) == 0) { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.关闭 }, new { FID = icprModel.FPLANID }); } else { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.采购确认 }, new { FID = icprModel.FPLANID }); } } } return(""); } catch (Exception ex) { hn.Common.LogHelper.WriteLog(ex); throw ex; } }
public string Save_ICPREntry_List(ICPRBILLENTRYMODEL tModel) { int iEntryID = 1; if (tModel.FPLANID == "0") { int iCount = ICPRBILLENTRYDAL.Instance.CountWhere(new { FPLANID = "0", FITEMID = tModel.FITEMID }); iEntryID = iEntryID + iCount; tModel.FENTRYID = iEntryID; } return(ICPRBILLENTRYDAL.Instance.Insert(tModel)); }
/// <summary> /// 保存请购计划明细 /// </summary> /// <returns></returns> public string Save(ICPRBILLENTRYMODEL model, string ICPRBILLID) { string result = null; if (model.FID.IsNullOrEmpty()) { result = ICPRBILLENTRYDAL.Instance.InsertWithFID(model, ICPRBILLID) > 0 ? null : "保存请购计划明细失败!"; } else { result = ICPRBILLENTRYDAL.Instance.Update(model) > 0 ? null : "保存请购计划明细失败!"; } return(result); }
/// <summary> /// 批量删除发货计划 /// </summary> /// <param name="ids"></param> /// <returns></returns> public int DeleteDeliveryByIDs(string ids) { try { string[] array = ids.Split(','); foreach (string id in array) { ICSEOUTBILLDAL.Instance.Delete(id); var list = ICSEOUTBILLENTRYDAL.Instance.GetWhere(new { FICSEOUTID = id }).ToList(); ICSEOUTBILLENTRYDAL.Instance.DeleteWhere(new { FICSEOUTID = id }); foreach (var model in list) { string sql = string.Format("SELECT SUM(FCOMMITQTY*FRATE) FROM V_ICSEOUTBILLENTRY WHERE FICPRID='{0}'", model.FICPRID); DataTable table = DbUtils.Query(sql); decimal total = hn.Common.PublicMethod.GetDecimal(table.Rows[0][0]); ICPRBILLENTRYMODEL icprModel = ICPRBILLENTRYDAL.Instance.Get(model.FICPRID); if (icprModel != null) { icprModel.FLEFTAMOUNT = icprModel.FASKQTY - total; if (icprModel.FLEFTAMOUNT > 0) { icprModel.FSTATUS = 7; ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.采购确认 }, new { FID = icprModel.FPLANID }); } ICPRBILLENTRYDAL.Instance.Update(icprModel); } } } return(1); } catch (Exception ex) { hn.Common.LogHelper.WriteLog(ex); throw ex; } }
public JsonResult Delete(string id) { try { ICSEOUTBILLDAL.Instance.Delete(id); var list = ICSEOUTBILLENTRYDAL.Instance.GetWhere(new { FICSEOUTID = id }).ToList(); ICSEOUTBILLENTRYDAL.Instance.DeleteWhere(new { FICSEOUTID = id }); foreach (var model in list) { string sql = string.Format("SELECT SUM(FCOMMITQTY*FRATE) FROM V_ICSEOUTBILLENTRY WHERE FICPRID='{0}'", model.FICPRID); DataTable table = DbUtils.Query(sql); decimal total = PublicMethod.GetDecimal(table.Rows[0][0]); ICPRBILLENTRYMODEL icprModel = ICPRBILLENTRYDAL.Instance.Get(model.FICPRID); if (icprModel != null) { icprModel.FLEFTAMOUNT = icprModel.FASKQTY - total; if (icprModel.FLEFTAMOUNT > 0) { icprModel.FSTATUS = 7; ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.采购确认 }, new { FID = icprModel.FPLANID }); } ICPRBILLENTRYDAL.Instance.Update(icprModel); } } return(JsonResultHelper.ToSuccess("删除完成!")); } catch (Exception ex) { LogHelper.WriteLog(ex); return(JsonResultHelper.ToFailed(ex.Message)); } }
/// <summary> /// 刷新价格政策编号处理 /// </summary> /// <param name="icprbillid"></param> /// <param name="entryids"></param> /// <returns></returns> public List <V_ICPRBILLENTRYMODEL> RefrshPriceNumberList(string icprbillid, List <string> entryids) { try { var list = V_ICPRBILLENTRYDAL.Instance.GetByIDList(entryids).ToList(); foreach (var model in list) { TB_PRICEPOLICYModel priceModel = TB_PRICEPOLICYDal.Instance.GetWhere(new { FPRODUCTNUMBER = model.FITEMID }).OrderBy(m => m.FAUDITPRICE).OrderByDescending(m => m.FID).FirstOrDefault(); if (priceModel != null) { ICPRBILLENTRYMODEL entryModel = ICPRBILLENTRYDAL.Instance.Get(model.FID); entryModel.FPRICENUMBER = priceModel.FPRICENUMBER; ICPRBILLENTRYDAL.Instance.Update(entryModel); } } return(GetPurchasePlanEntryList(icprbillid, "3")); } catch (Exception ex) { LogHelper.WriteLog(ex); throw ex; } }
public string Save(ICSEOUTBILLMODEL ICSEOUTBILL, IEnumerable <ICSEOUTBILLENTRYMODEL> ICSEOUTBILLENTRYList) { #region 检查 ICSEOUTBILLMODEL temp = ICSEOUTBILLDAL.Instance.GetWhere(new { FBILLNO = ICSEOUTBILL.FBILLNO }).FirstOrDefault(); if (temp != null && temp.FID != ICSEOUTBILL.FID) { return("单据单号重复!"); } //foreach (var item in ICSEOUTBILLENTRYList.GroupBy(i => i.FITEMID + i.FENTRYID)) //{ // if (item.Count() > 1) // { // return "商品资料重复!"; // } //} #endregion string FID = ICSEOUTBILL.FID; ICSEOUTBILL.FSTATUS = Constant.BILL_FSTATUS.草稿.ToInt(); if (FID.IsNullOrEmpty()) { if (ICSEOUTBILL.FBILLERID == null) { ICSEOUTBILL.FBILLERID = SysVisitor.Instance.UserId; } ICSEOUTBILL.FBILLDATE = DateTime.Now; ICSEOUTBILL.FCAR_STATUS = 1; // 1:待发布,2:已发布,3:发布失败,4:已确认,5:关闭,6:关闭(改) FID = ICSEOUTBILLDAL.Instance.Insert(ICSEOUTBILL); if (!FID.IsGuid()) { return("发货通知保存失败!"); } } else { int status = ICSEOUTBILLDAL.Instance.GetStatus(ICSEOUTBILL.FID); if (status == Constant.BILL_FSTATUS.审核通过.ToInt()) { return("该发货通知已经审核,不允许编辑!"); } if (status == Constant.BILL_FSTATUS.完成.ToInt()) { return("该发货通知已经完成,不允许编辑!"); } if (status == Constant.BILL_FSTATUS.关闭.ToInt()) { return("该发货通知已经关闭,不允许编辑!"); } //int result = ICSEOUTBILLDAL.Instance.Update(ICSEOUTBILL); int result = ICSEOUTBILLDAL.Instance.UpdateWhatWhere(new { FPREMISEID = ICSEOUTBILL.FPREMISEID, FBRANDID = ICSEOUTBILL.FBRANDID, FCLIENTID = ICSEOUTBILL.FCLIENTID, FBILLNO = ICSEOUTBILL.FBILLNO, FSTATUS = Constant.BILL_FSTATUS.草稿.ToInt(), FCARNUMBER = ICSEOUTBILL.FCARNUMBER, FLOADCAPACITY = ICSEOUTBILL.FLOADCAPACITY, FDELIVERER = ICSEOUTBILL.FDELIVERER, FDELIVERERTEL = ICSEOUTBILL.FDELIVERERTEL, FDELIVERERIDNO = ICSEOUTBILL.FDELIVERERIDNO, FDELIVERERADDR = ICSEOUTBILL.FDELIVERERADDR, FRECEIVER = ICSEOUTBILL.FRECEIVER, FRECEIVERTEL = ICSEOUTBILL.FRECEIVERTEL, FRECEIVERADDR = ICSEOUTBILL.FRECEIVERADDR, FALLWEIGHT = ICSEOUTBILL.FALLWEIGHT, FALLVOLUME = ICSEOUTBILL.FALLVOLUME, FREMARK = ICSEOUTBILL.FREMARK, FTRANSTYPE = ICSEOUTBILL.FTRANSTYPE, FTRANSID = ICSEOUTBILL.FTRANSID, FDELIVERDATE = ICSEOUTBILL.FDELIVERDATE, FEXPRESSCOMPANYID = ICSEOUTBILL.FEXPRESSCOMPANYID, FPROJECTNAME = ICSEOUTBILL.FPROJECTNAME, FCENTER_WAREHOUSE = ICSEOUTBILL.FCENTER_WAREHOUSE, FDELIVERY_METHOD = ICSEOUTBILL.FDELIVERY_METHOD, FPURCHASE_NO = ICSEOUTBILL.FPURCHASE_NO, FPLANDESC = ICSEOUTBILL.FPLANDESC, FIS_CONSIGN = ICSEOUTBILL.FIS_CONSIGN, FBILLING_TYPE = ICSEOUTBILL.FBILLING_TYPE, FSETTLE_ORG = ICSEOUTBILL.FSETTLE_ORG, FDELIVERY_REQUIRE = ICSEOUTBILL.FDELIVERY_REQUIRE, FBRAND_DEPART = ICSEOUTBILL.FBRAND_DEPART, }, new { FID = ICSEOUTBILL.FID }); if (result <= 0) { return("发货通知保存失败!"); } } var entrys = ICSEOUTBILLENTRYDAL.Instance.GetWhere(new { FICSEOUTID = FID }).ToList(); //删除明细 ICSEOUTBILLENTRYBLL.Instance.DeleteByICSEOUTBILLID(FID); foreach (var model in entrys) { var count = ICSEOUTBILLENTRYList.Where(m => m.FICPRID == model.FICPRID).Count(); if (count == 0) { string sql = string.Format("SELECT SUM(FCOMMITQTY*FRATE) FROM V_ICSEOUTBILLENTRY WHERE FICPRID='{0}' and (FGROUP_STATUS is null or FGROUP_STATUS = 0)", model.FICPRID); DataTable table = DbUtils.Query(sql); decimal total = PublicMethod.GetDecimal(table.Rows[0][0]); ICPRBILLENTRYMODEL icprModel = ICPRBILLENTRYDAL.Instance.Get(model.FICPRID); if (icprModel != null) { icprModel.FLEFTAMOUNT = icprModel.FASKQTY - total; if (icprModel.FLEFTAMOUNT <= 0) { icprModel.FSTATUS = 5; } else { icprModel.FSTATUS = 7; } ICPRBILLENTRYDAL.Instance.Update(icprModel); if (ICPRBILLENTRYDAL.Instance.GetCloseStatus(icprModel.FPLANID) == 0) { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.关闭 }, new { FID = icprModel.FPLANID }); } else { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.采购确认 }, new { FID = icprModel.FPLANID }); } } } } foreach (var item in ICSEOUTBILLENTRYList) { item.FICSEOUTID = FID; string id = ICSEOUTBILLENTRYDAL.Instance.Insert(item); LogHelper.WriteLog("herherehrer:" + item.thdbm); //var list = ICSEOUTBILLENTRYDAL.Instance.GetWhere(new { FICPRID = item.FICPRID }); string sql = string.Format("SELECT SUM(FCOMMITQTY*FRATE) FROM V_ICSEOUTBILLENTRY WHERE FICPRID='{0}' and (FGROUP_STATUS is null or FGROUP_STATUS = 0)", item.FICPRID); DataTable table = DbUtils.Query(sql); decimal total = PublicMethod.GetDecimal(table.Rows[0][0]); ICPRBILLENTRYMODEL icprModel = ICPRBILLENTRYDAL.Instance.Get(item.FICPRID); if (icprModel != null) { icprModel.FLEFTAMOUNT = icprModel.FASKQTY - total; if (icprModel.FLEFTAMOUNT <= 0) { icprModel.FSTATUS = 5; } else { icprModel.FSTATUS = 7; } ICPRBILLENTRYDAL.Instance.Update(icprModel); if (ICPRBILLENTRYDAL.Instance.GetCloseStatus(icprModel.FPLANID) == 0) { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.关闭 }, new { FID = icprModel.FPLANID }); } else { ICPRBILLDAL.Instance.UpdateWhatWhere(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.采购确认 }, new { FID = icprModel.FPLANID }); } } //ICPRBILLENTRYMODEL icprModel = ICPRBILLENTRYDAL.Instance.Get(item.FICPRID); //if (icprModel != null) //{ // if (icprModel.FORDERUNITQTY >= total) // { // icprModel.FLEFTAMOUNT = icprModel.FLEFTAMOUNT - total; // } // else // { // icprModel.FLEFTAMOUNT = 0; // } // ICPRBILLENTRYDAL.Instance.Update(icprModel); //} } return(null); }
private void simpleButton3_Click(object sender, EventArgs e) { var list = gridControl采购订单明细.DataSource as List <V_ICPOBILLENTRYMODEL>; if (list.Count == 0) { System.Windows.Forms.MessageBox.Show("明细记录数不可为空!"); return; } string brand = ""; TB_BrandModel bmodel = comBrand.SelectedItem as TB_BrandModel; if (bmodel != null) { brand = bmodel.FID; IniHelper.WriteString(Global.IniUrl, "CONFIG", "FBRANDID", bmodel.FID); } else { System.Windows.Forms.MessageBox.Show("品牌不可为空!"); return; } if (txt厂家账户.Tag == null) { System.Windows.Forms.MessageBox.Show("厂家账户不可为空!"); return; } if (string.IsNullOrEmpty(model.FBILLNO)) { ICPOBILLMODEL tBill = new ICPOBILLMODEL(); tBill.FTRANSTYPE = "0"; tBill.FID = ""; tBill.FBRANDID = bmodel.FID; tBill.FCLIENTID = txt厂家账户.Tag.ToStr(); tBill.FDATE = dateDatetime.DateTime; tBill.FBILLNO = txtBillNO.Text; tBill.FBILLERNAME = txtCreater.Text; tBill.FBILLER = txtCreater.Tag.ToStr(); tBill.FSTATE = 1;//草稿 tBill.Fnote = txtRemarks.Text; tBill.FprojectNO = txtProjectNo.Text; if (searchDic105.Tag != null) { tBill.FPOtype = searchDic105.Tag.ToString(); } if (search价格策略.Tag != null) { tBill.Fpricepolicy = search价格策略.Tag.ToString(); } int iTemp = 1; List <ICPOBILLENTRYMODEL> listSub = new List <ICPOBILLENTRYMODEL>(); foreach (var sub in list) { sub.FENTRYID = iTemp; if (sub.FPLANID == null) { string strFID = Guid.NewGuid().ToStr(); //插入一条icprentry记录 ICPRBILLENTRYMODEL tModel = new ICPRBILLENTRYMODEL(); tModel.FITEMID = sub.FITEMID; tModel.FUNITID = sub.FUNITID; tModel.FID = strFID; tModel.FPLANID = strFID; try { tModel.FASKAMOUNT = sub.Famount; } catch { } try { tModel.FASKQTY = sub.FAUDQTY; } catch { } tModel.FSTOREHOUSE = sub.FstockNO; tModel.FNEEDDATE = sub.FNEEDDATE == DateTime.MinValue ? DateTime.Now : sub.FNEEDDATE; tModel.FASKQTY = sub.FASKQTY; tModel.FORDERUNITQTY = (int)sub.FSRCQTY; string strResult = _service.Save_ICPREntry_List(tModel); sub.FPLANID = strResult; } if (listSub.Any(x => x.FITEMID == sub.FITEMID && sub.FCOLORNO == x.FCOLORNO && x.FPRICE == sub.FPRICE)) { ICPOBILLENTRYMODEL tSingle = listSub.First(x => x.FITEMID == sub.FITEMID && sub.FCOLORNO == x.FCOLORNO && x.FPRICE == sub.FPRICE); tSingle.FSRCQTY += sub.FSRCQTY; tSingle.FSRCCOST += sub.FSRCCOST; tSingle.Famount += sub.Famount; if (!string.IsNullOrEmpty(sub.ICPRBILLENTRYIDS)) { tSingle.ICPRBILLENTRYIDS += sub.ICPRBILLENTRYIDS + ";"; } tSingle.ICPRBILLENTRYIDS += sub.FPLANID + ";"; } else { ICPOBILLENTRYMODEL sub0 = new ICPOBILLENTRYMODEL(); sub0.FADVQTY = 1; sub0.FBATCHNO = ""; sub0.FCOLORNO = ""; sub0.FENTRYID = sub.FENTRYID; sub0.FICPOBILLID = sub.FICPOBILLID; sub0.FID = sub.FID; sub0.FNEEDDATE = sub.FNEEDDATE == DateTime.MinValue ? DateTime.Now : sub.FNEEDDATE; sub0.FPLANID = sub.FPLANID; if (sub0.FPLANID == null) { sub0.FPLANID = "0"; } sub0.FPRICE = sub.FPRICE; sub0.FREMARK = sub.FREMARK; sub0.FSRCCOST = sub.FSRCCOST; sub0.FSRCQTY = sub.FSRCQTY; sub0.FSTATE = sub.FSTATE; sub0.FSTATUS = sub.FSTATUS; //后面添加的字段 sub0.FITEMID = sub.FITEMID; sub0.FSRCCODE = sub.FSRCCODE; sub0.FSRCNAME = sub.FSRCNAME; sub0.FSRCMODEL = sub.FSRCMODEL; sub0.Flevel = sub.Flevel; sub0.FstockNO = sub.FstockNO; sub0.FCOLORNO = sub.FCOLORNO; sub0.FcontractNO = sub.FcontractNO; sub0.Funit = sub.Funit; sub0.FAUDQTY = sub.FAUDQTY; sub0.FPRICE = sub.FPRICE; sub0.Famount = sub.Famount; sub0.FREMARK = sub.FREMARK; sub0.FERR_MESSAGE = sub.FERR_MESSAGE; sub0.FSRCQTY = sub.FSRCQTY; if (!string.IsNullOrEmpty(sub.ICPRBILLENTRYIDS)) { sub0.ICPRBILLENTRYIDS += sub.ICPRBILLENTRYIDS + ";"; } sub0.ICPRBILLENTRYIDS += sub.FPLANID + ";"; listSub.Add(sub0); } } try { //string sResult = ICPOBILLBLL.Instance.SaveClient(tBill, listSub); string sResult = _service.SaveICPOBILL(tBill, listSub.ToArray()); //string sResult = ICPOBILLBLL.Instance.SaveClient(tBill, listSub.ToArray()); System.Windows.Forms.MessageBox.Show(sResult); if (this.SaveAfter != null) { try { SaveAfter(null, null); } catch { } } this.Close(); } catch (Exception ee) { System.Windows.Forms.MessageBox.Show(ee.ToString()); } } else { ICPOBILLMODEL tModel = _service.GetSingleOrder(model.FID); tModel.FBRANDID = bmodel.FID; tModel.FCLIENTID = txt厂家账户.Tag.ToStr(); tModel.FDATE = dateDatetime.DateTime; tModel.FBILLNO = txtBillNO.Text; tModel.FBILLERNAME = txtCreater.Text; tModel.FBILLER = txtCreater.Tag.ToStr(); tModel.FSTATE = 1;//草稿 tModel.Fnote = txtRemarks.Text; tModel.FprojectNO = txtProjectNo.Text; if (searchDic105.Tag != null) { tModel.FPOtype = searchDic105.Tag.ToString(); } if (search价格策略.Tag != null) { tModel.Fpricepolicy = search价格策略.Tag.ToString(); } //tModel.FSTATUS = 3; int iTemp = 1; bool bNeedDate_False = false; List <ICPOBILLENTRYMODEL> listSub = new List <ICPOBILLENTRYMODEL>(); foreach (var sub in list) { if (sub.FPLANID == null) { string strFID = Guid.NewGuid().ToStr(); //插入一条icprentry记录 ICPRBILLENTRYMODEL tRModel = new ICPRBILLENTRYMODEL(); tRModel.FITEMID = sub.FITEMID; tRModel.FUNITID = sub.FUNITID; tRModel.FID = strFID; tRModel.FPLANID = strFID; try { tRModel.FASKAMOUNT = sub.Famount; } catch { } try { tRModel.FASKQTY = sub.FAUDQTY; } catch { } tRModel.FSTOREHOUSE = sub.FstockNO; tRModel.FNEEDDATE = sub.FNEEDDATE; tRModel.FASKQTY = sub.FASKQTY; tRModel.FORDERUNITQTY = (int)sub.FSRCQTY; string strResult = _service.Save_ICPREntry_List(tRModel); sub.FPLANID = strResult; } if (listSub.Any(x => x.FITEMID == sub.FITEMID && sub.FCOLORNO == x.FCOLORNO && x.FPRICE == sub.FPRICE)) { ICPOBILLENTRYMODEL tSingle = listSub.First(x => x.FITEMID == sub.FITEMID && sub.FCOLORNO == x.FCOLORNO && x.FPRICE == sub.FPRICE); tSingle.FSRCQTY += sub.FSRCQTY; tSingle.FSRCCOST += sub.FSRCCOST; tSingle.Famount += sub.Famount; if (!string.IsNullOrEmpty(sub.ICPRBILLENTRYIDS)) { tSingle.ICPRBILLENTRYIDS += sub.ICPRBILLENTRYIDS + ";"; } tSingle.ICPRBILLENTRYIDS += sub.FPLANID + ";"; } else { sub.FENTRYID = listSub.Count + 1; ICPOBILLENTRYMODEL sub0 = new ICPOBILLENTRYMODEL(); sub0.FICPOBILLID = tModel.FID; sub0.FADVQTY = sub.FADVQTY; sub0.FBATCHNO = sub.FBATCHNO; sub0.FCOLORNO = sub.FCOLORNO; sub0.FENTRYID = sub.FENTRYID; // sub0.FICPOBILLID = sub.FICPOBILLID; sub0.FNEEDDATE = sub.FNEEDDATE; sub0.FPLANID = sub.FPLANID; if (sub0.FPLANID == null) { sub0.FPLANID = "0"; } sub0.FPRICE = sub.FPRICE; sub0.FREMARK = sub.FREMARK; sub0.FSRCQTY = sub.FSRCQTY; sub0.FSRCCOST = sub0.FPRICE * sub0.FSRCQTY; //后面添加的字段 sub0.FITEMID = sub.FITEMID; sub0.FSRCCODE = sub.FSRCCODE; sub0.FSRCNAME = sub.FSRCNAME; sub0.FSRCMODEL = sub.FSRCMODEL; sub0.Flevel = sub.Flevel; sub0.FstockNO = sub.FstockNO; sub0.FCOLORNO = sub.FCOLORNO; sub0.FcontractNO = sub.FcontractNO; sub0.Funit = sub.Funit; sub0.FAUDQTY = sub.FAUDQTY; sub0.FPRICE = sub.FPRICE; sub0.Famount = sub.Famount; sub0.FREMARK = sub.FREMARK; sub0.FERR_MESSAGE = sub.FERR_MESSAGE; sub0.FNEEDDATE = DateTime.Now; sub0.FSRCQTY = sub.FSRCQTY; sub0.ICPRBILLENTRYIDS = sub.ICPRBILLENTRYIDS; //sub0.FSTATUS = 3; listSub.Add(sub0); } } /* * if (bNeedDate_False == true) * { * System.Windows.Forms.MessageBox.Show("明细表中到货时间需重新核对!"); * return; * } */ try { //string sResult = ICPOBILLBLL.Instance.SaveClient(tModel, listSub.ToArray()); string sResult = _service.SaveICPOBILL(tModel, listSub.ToArray()); //string sResult= ICPOBILLBLL.Instance.SaveClient(tModel, listSub); System.Windows.Forms.MessageBox.Show(sResult); if (this.SaveAfter != null) { SaveAfter(null, null); } this.Close(); } catch (Exception ee) { System.Windows.Forms.MessageBox.Show(ee.ToString()); } } onCalcWeightTotal(); }
/// <summary> /// 采购确认 /// </summary> /// <param name="data"></param> /// <returns></returns> public bool ConfirmSave(string action, List <ICPRBILLENTRYMODEL> data, User loginUser) { var conn = DbUtils.GetConnection(); conn.Open(); var tran = conn.BeginTransaction(); try { foreach (ICPRBILLENTRYMODEL model in data) { ICPRBILLENTRYMODEL uptModel = ICPRBILLENTRYDAL.Instance.Get(model.FID); if (uptModel != null) { //uptModel.FACCOUNT = model.FACCOUNT; //uptModel.FSTOREHOUSE = model.FSTOREHOUSE; //uptModel.FPOLICY = model.FPOLICY; uptModel.FCOMMITQTY = model.FCOMMITQTY; //uptModel.FTRANSNAME = model.FTRANSNAME; uptModel.FORDERREMARK1 = model.FORDERREMARK1; uptModel.FORDERREMARK2 = model.FORDERREMARK2; if (action == "confirm") { uptModel.FCONFIRM_USER = loginUser.FID; uptModel.FCONFIRM_TIME = DateTime.Now; uptModel.FSTATUS = (int)Constant.ICPRBILL_FSTATUS.采购确认; } else if (action == "unconfirm") { var count = ICSEOUTBILLENTRYDAL.Instance.GetWhere(new { FICPRID = uptModel.FID }).ToList(); if (count.Count > 0) { continue; } uptModel.FSTATUS = (int)Constant.ICPRBILL_FSTATUS.审核通过; } LogHelper.WriteLog(JsonHelper.ToJson(uptModel)); DbUtils.Update(uptModel, conn, tran); } } tran.Commit(); conn.Close(); var entry = ICPRBILLENTRYDAL.Instance.Get(data.First().FID); if (action == "unconfirm") { DbUtils.UpdateWhatWhere <ICPRBILLMODEL>(new { FSTATUS = (int)Constant.ICPRBILL_FSTATUS.审核通过 }, new { FID = entry.FPLANID }); } else { if (ICPRBILLENTRYDAL.Instance.GetConfirmStatus(entry.FPLANID) == 0) { } UpdateConfirmTime(entry.FID); //LogHelper.WriteLog("Hello"); } return(true); } catch (Exception ex) { LogHelper.WriteLog("ConfirmError"); LogHelper.WriteLog(ex); tran.Rollback(); conn.Close(); throw ex; } }