src/BLL/Demo.BillView/PRD/Pro_DayPlanBG.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/BLL/Demo.BillView/PRD/Pro_RJHYLQDBGFSH.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/BLL/Demo.BillView/PRD/Pro_RJHYLQDBGSH.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 | |
src/BLL/Demo.BillView/PRD/Pro_TlPush.cs | ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史 |
src/BLL/Demo.BillView/PRD/Pro_DayPlanBG.cs
@@ -36,10 +36,8 @@ double FHQty = Convert.ToDouble(model.GetValue("FHQty")); if (e.Field.Key.Contains("FUseRateNew")) { if (e.OldValue == e.NewValue||e.NewValue==null) if (e.OldValue == e.NewValue || e.NewValue == null) return; double FNumerator = Convert.ToDouble(model.GetValue("FNumerator", e.Row));//分子 double FDenominator = Convert.ToDouble(model.GetValue("FDenominator", e.Row));//分母 double FUseRateNew = Convert.ToDouble(model.GetValue("FUseRateNew", e.Row));//使用比例 @@ -50,7 +48,6 @@ } Hqty = Math.Ceiling((FNumerator / FDenominator) * FHQty * (FUseRateNew / 100)); this.View.Model.SetValue("FHQtyMustNew", Hqty, e.Row);//新计划数量 var m = e.Row; //项次 var pro = model.GetValue("FReplaceGroup", m).ToString(); @@ -59,21 +56,12 @@ //查找到的同批项次 var finds = entrys.Where(entry => entry.GetValue<string>("FReplaceGroup") == pro && entry.GetValue<int>("Seq") != (m + 1)); if (finds.Count() == 0) return; var seq = finds.First().GetValue<int>("Seq"); model.SetValue("FUseRateNew", 100 - Convert.ToDouble(e.NewValue), seq - 1); //int FentryID = Convert.ToInt32(model.GetEntryPKValue("FEntity",e.Row));//明细表id ////查询同项次的序号 //string sql = // $"select top 1 FSEQ from Sc_DayPlanPPBomBillSubBG where FReplaceGroup in(select FReplaceGroup from Sc_DayPlanPPBomBillSubBG where FEntryID = {FentryID} )and FEntryID<> { FentryID} "; //int Fseq = DBServiceHelper.ExecuteScalar<int>(Context,sql,0); //if (Fseq > 0) { // this.View.Model.SetValue("FUseRateNew", 100 - FUseRateNew, Fseq - 1);//新计划数量 //} } if (e.Field.Key.Contains("FHQtyMustNew")) { if (e.OldValue == e.NewValue) if (e.OldValue == e.NewValue || e.NewValue == null) return; var m = e.Row; double FNumerator = Convert.ToDouble(model.GetValue("FNumerator", e.Row));//分子 @@ -85,27 +73,38 @@ Hqty = Math.Ceiling(FHQtyMustNew / FHQty * 100); } Hqty = Math.Ceiling(FHQtyMustNew / ((FNumerator / FDenominator) * FHQty) * 100); this.View.Model.SetValue("FUseRateNew", Hqty, e.Row);//新计划数量 //int FentryID = Convert.ToInt32(model.GetEntryPKValue("FEntity", e.Row));//明细表id ////查询同项次的序号 //string sql = // $"select top 1 FSEQ from Sc_DayPlanPPBomBillSubBG where FReplaceGroup in(select FReplaceGroup from Sc_DayPlanPPBomBillSubBG where FEntryID = {FentryID} )and FEntryID<> { FentryID} "; //int Fseq = DBServiceHelper.ExecuteScalar<int>(Context, sql, 0); //if (Fseq > 0) //{ // double FUseRateNew = Convert.ToDouble(model.GetValue("FUseRateNew", e.Row));//使用比例 // this.View.Model.SetValue("FUseRateNew", 100 - FUseRateNew, Fseq - 1);//新计划数量 //} this.View.Model.SetValue("FUseRateNew", Hqty, e.Row);//新用料比例 } } //public override void BeforeSave(BeforeSaveEventArgs e) //{ // base.BeforeSave(e); public override void BeforeSave(BeforeSaveEventArgs e) { base.BeforeSave(e); var entrys = this.View.Model.DataObject.GetValue<DynamicObjectCollection>("FEntity"); string resultMes = ""; foreach (var entry in entrys) { var fReplaceGroup = entry["FReplaceGroup"].ToString(); //LogService.WriteAsync(entrys); //查找到的同批项次 var finds = entrys.Where(trys => trys.GetValue<string>("FReplaceGroup") == fReplaceGroup); if (finds.Count() > 1) return; // e.Cancel = true; //} string sql = string.Format(@"/*dialect*/ select count(*) from Sc_DayPlanPPBomBillSub a join Sc_DayPlanPPBomBillMain b on a.FID = b.FID where FREPLACEGROUP = '{0}' and FHMaterSubID<> '{1}' and(FPickedQty + FTranslateQty) > FHQty * ((100 - {2}) / 100.0) * FDwyl and a.FID = {3}", entry["FReplaceGroup"].ToString(), entry["FHMaterSubID_Id"].ToString(), entry["FUseRateNew"].ToString(), entry["FDayPlanId"].ToString()); int result = DBServiceHelper.ExecuteScalar<int>(Context, sql, 0); if (result > 0) resultMes += $"行号:" + entry["Seq"].ToString() + ",存在替代料关系,使用比例变更后超出了领用数量"; } if (resultMes != "") { e.Cancel = true; this.View.ShowErrMessage(resultMes); } } } } src/BLL/Demo.BillView/PRD/Pro_RJHYLQDBGFSH.cs
@@ -44,44 +44,12 @@ base.AfterExecuteOperationTransaction(e); List<string> sqlList = new List<string>(); string sql = ""; //审核时更新生产用料清单表明细领料数量 //反审核时更新生产用料清单表明细领料数量 Entity entity = this.BusinessInfo.GetEntity("FEntity");//获取明细信息 foreach (var billObj in e.SelectedRows) { DynamicObjectCollection entryRows = entity.DynamicProperty.GetValue(billObj.DataEntity) as DynamicObjectCollection; foreach (var entryRow in entryRows) { string fDayPlanFentryId = entryRow["FDayPlanFentryId"].ToString(); string fHQtyMust = entryRow["FHQtyMust"].ToString(); string fUseRate = entryRow["FUseRate"].ToString(); string fDwyl = entryRow["FDwyl"].ToString(); string fHPPBomEntryID = entryRow["FHPPBomEntryID"].ToString(); sql = string.Format($"/*dialect*/update Sc_DayPlanPPBomBillSub set FHQtyMust = {fHQtyMust},FUseRate = { fUseRate} where FEntryID ={fDayPlanFentryId} "); sqlList.Add(sql); sql = string.Format(@"/*dialect*/ update T_PRD_PPBOMENTRY set FBASENEEDQTY = c.FHQtyMust, FBASEMUSTQTY = c.FHQtyMust, FSTDQTY = c.FHQtyMust, FNEEDQTY = c.FHQtyMust, FMUSTQTY = c.FHQtyMust, FUSERATE = (c.FHQtyMust / {0} / b.FQTY *100) from T_PRD_PPBOMENTRY a join T_PRD_PPBOM b on a.FID=b.FID join (select sum(FHQtyMust) FHQtyMust,FHPPBomEntryID from Sc_DayPlanPPBomBillSub where FHPPBomEntryID = {1} group by FHPPBomEntryID) c on a.FENTRYID=c.FHPPBomEntryID where a.FENTRYID = {1}", fDwyl, fHPPBomEntryID); sqlList.Add(sql); sql = string.Format(@"/*dialect*/ update T_PRD_PPBOMENTRY_Q set FNOPICKEDQTY = b.FMUSTQTY - a.FPICKEDQTY, FBASENOPICKEDQTY = b.FMUSTQTY - a.FPICKEDQTY from T_PRD_PPBOMENTRY_Q a join T_PRD_PPBOMENTRY b on a.FENTRYID=b.FENTRYID where a.FENTRYID = {0} ", fHPPBomEntryID); sqlList.Add(sql); } sql = $"/*dialect*/ exec pr_FSHRjhylqdBgUpdate {billObj["Id"].ToString()}"; sqlList.Add(sql); } DBServiceHelper.ExecuteBatch(Context, sqlList); } src/BLL/Demo.BillView/PRD/Pro_RJHYLQDBGSH.cs
@@ -27,13 +27,13 @@ e.FieldKeys.Add("FSrcBillNo"); e.FieldKeys.Add("FBillNo"); e.FieldKeys.Add("FDayPlanId"); e.FieldKeys.Add("FDayPlanFentryId"); e.FieldKeys.Add("FHQtyMust"); e.FieldKeys.Add("FDayPlanFentryId"); e.FieldKeys.Add("FHQtyMust"); e.FieldKeys.Add("FHQtyMustNew"); e.FieldKeys.Add("FUseRate"); e.FieldKeys.Add("FUseRateNew"); e.FieldKeys.Add("FHPPBomEntryID"); e.FieldKeys.Add("FDwyl"); e.FieldKeys.Add("FDwyl"); } /// <summary> ///审核更新日计划用料清单领料数量 @@ -48,44 +48,13 @@ Entity entity = this.BusinessInfo.GetEntity("FEntity");//获取明细信息 foreach (var billObj in e.SelectedRows) { DynamicObjectCollection entryRows = entity.DynamicProperty.GetValue(billObj.DataEntity) as DynamicObjectCollection; foreach (var entryRow in entryRows) { string fDayPlanFentryId = entryRow["FDayPlanFentryId"].ToString(); string fHQtyMustNew = entryRow["FHQtyMustNew"].ToString(); string fUseRateNew = entryRow["FUseRateNew"].ToString(); string fDwyl = entryRow["FDwyl"].ToString(); string fHPPBomEntryID = entryRow["FHPPBomEntryID"].ToString(); if (fHQtyMustNew == "0") continue; sql = string.Format($"/*dialect*/update Sc_DayPlanPPBomBillSub set FHQtyMust = {fHQtyMustNew},FUseRate = { fUseRateNew} where FEntryID ={fDayPlanFentryId} "); sqlList.Add(sql); sql = string.Format(@"/*dialect*/ update T_PRD_PPBOMENTRY set FBASENEEDQTY = c.FHQtyMust, FBASEMUSTQTY = c.FHQtyMust, FSTDQTY = c.FHQtyMust, FNEEDQTY = c.FHQtyMust, FMUSTQTY = c.FHQtyMust, FUSERATE = (c.FHQtyMust / {0} / b.FQTY *100) from T_PRD_PPBOMENTRY a join T_PRD_PPBOM b on a.FID=b.FID join (select sum(FHQtyMust) FHQtyMust,FHPPBomEntryID from Sc_DayPlanPPBomBillSub where FHPPBomEntryID = {1} group by FHPPBomEntryID) c on a.FENTRYID=c.FHPPBomEntryID where a.FENTRYID = {1}", fDwyl, fHPPBomEntryID); sqlList.Add(sql); sql = string.Format(@"/*dialect*/ update T_PRD_PPBOMENTRY_Q set FNOPICKEDQTY = b.FMUSTQTY - a.FPICKEDQTY, FBASENOPICKEDQTY = b.FMUSTQTY - a.FPICKEDQTY from T_PRD_PPBOMENTRY_Q a join T_PRD_PPBOMENTRY b on a.FENTRYID=b.FENTRYID where a.FENTRYID = {0} ", fHPPBomEntryID); sqlList.Add(sql); } sql = $"/*dialect*/ exec pr_SHRjhylqdBgUpdate {billObj["Id"].ToString()}"; sqlList.Add(sql); } DBServiceHelper.ExecuteBatch(Context, sqlList); } } } src/BLL/Demo.BillView/PRD/Pro_TlPush.cs
@@ -138,7 +138,7 @@ ["IsDeleteEntry"] = "false", ["SubSystemId"] = "", ["IsVerifyBaseDataField"] = "false", ["IsAutoSubmitAndAudit"] = true,//自动调用提交和审核功能 //["IsAutoSubmitAndAudit"] = true,//自动调用提交和审核功能 ["Model"] = model };