| | |
| | | } |
| | | else |
| | | { |
| | | //验证日计划工单是否存在数据 生产订单号加明细行号 已生成过日计划的不生成 |
| | | //验证日计划工单是否存在数据 生产订单号加明细行号 已生成过日计划的不生成 (关闭后的) |
| | | string moSql = string.Format(@"/*dialect*/ select FID from SC_WORKBILLSORTBILLMAIN |
| | | where FSCORDERNO ='{0}' and FSRCBILLENTRYSEQ = '{1}'", Convert.ToString(current["FSCOrderNo"]), Convert.ToString(current["FSRCBILLENTRYSEQ"])); |
| | | where FDOCUMENTSTATUS NOT IN ('E') AND FSCORDERNO ='{0}' and FSRCBILLENTRYSEQ = '{1}'", Convert.ToString(current["FSCOrderNo"]), Convert.ToString(current["FSRCBILLENTRYSEQ"])); |
| | | int fDayPlanFID = DBServiceHelper.ExecuteScalar<int>(Context, moSql, 0); |
| | | if (fDayPlanFID > 0) |
| | | continue; |
| | |
| | | --(FHEntryCloseDate is null and DATEDIFF(D,GETDATE(),FHMASTERDATE)<0)or |
| | | DATEDIFF(D,GETDATE(),FHMASTERDATE)>=0 |
| | | and a.FDOCUMENTSTATUS not in ('E') |
| | | --and b.FHQTY>0 |
| | | and b.FHQTY>0 |
| | | ORDER BY b.FHMASTERDATE,a.FHOrderLev |
| | | "; |
| | | ds = DBServiceHelper.ExecuteDataSet(Context, sql); |
| | |
| | | LogHelper.Info("齐套分析准备数据完成:" + sw.Elapsed); |
| | | foreach (var item in DatePlanList) |
| | | { |
| | | //LogHelper.Info("齐套分析第一个循环 : 工单号 :" + item.FPRDMOENTYID.ToString() + item.FHMASTERDATE.ToString("yyyy-MM-dd")); |
| | | //筛选出当日计划数据 |
| | | var _BomList = BomList.Where(x => x.FHMASTERDATE == item.FHMASTERDATE && x.FPRDMOENTYID == item.FPRDMOENTYID).ToList(); |
| | | foreach (var _item in _BomList) |
| | |
| | | "; |
| | | ds = DBServiceHelper.ExecuteDataSet(Context, sql); |
| | | List<PRD_PPBOM> BomList = ds.ToModelList<PRD_PPBOM>(); |
| | | //日计划+生产订单子表编码ID |
| | | //日计划日期+生产订单子表编码ID |
| | | var DatePlanList = BomList.GroupBy(p => new { p.FHMASTERDATE, p.FPRDMOENTYID }).Select(x => new PRD_PPBOM { FHMASTERDATE = x.Key.FHMASTERDATE, FPRDMOENTYID = x.Key.FPRDMOENTYID }).ToList(); |
| | | //CompleteAnalysisTempModel 用于存储临时需要插入数据 |
| | | List<CompleteAnalysisTempModel> completeAnalysisTempModel = new List<CompleteAnalysisTempModel>(); |
| | |
| | | //单据体信息转换为列表集合 |
| | | DynamicObjectCollection entityDataObjoct = this.View.Model.GetEntityDataObject(entity); |
| | | int Fseq = entityDataObjoct.Count(); |
| | | //if (Fseq == 0) |
| | | //{ |
| | | // this.View.ShowErrMessage("请先加载数据"); |
| | | // return; |
| | | //} |
| | | //var isexists = entityDataObjoct.Where(x => x["FSRCBILLENTRYSEQ"].ToString() == "1"); |
| | | //var isexists1 = entityDataObjoct.ToList().FindAll(x => x["FSRCBILLENTRYSEQ"].ToString() == "1"); |
| | | string pageId = Guid.NewGuid().ToString(); |
| | | ListShowParameter showParameter = new ListShowParameter(); |
| | | showParameter.FormId = "PRD_MO"; |
| | | showParameter.PageId = pageId; |
| | | showParameter.UseOrgId = this.Context.CurrentOrganizationInfo.ID; |
| | | showParameter.IsLookUp = true; |
| | | this.View.ShowForm(showParameter); |
| | | this.View.ShowForm(showParameter, delegate (FormResult result) |
| | | { |
| | | object returnData = result.ReturnData; |
| | |
| | | LogHelper.Info("生产计划平台选单 行数" + listSelectedRowCollection.Count().ToString()); |
| | | if (listSelectedRowCollection != null) |
| | | { |
| | | var ret = ""; |
| | | foreach (var listSelectedRow in listSelectedRowCollection) |
| | | { |
| | | if (entityDataObjoct.Where(x => x["FSRCBILLENTRYSEQ"].ToString() == listSelectedRow.DataRow["t1_FSeq"].ToString() && x["FSCOrderNo"].ToString() == listSelectedRow.DataRow["FBillNo"].ToString()).Count() > 0) |
| | | { |
| | | LogHelper.Info("生产计划平台选单:"+listSelectedRow.DataRow["FBillNo"].ToString()+ ", 行号," +listSelectedRow.DataRow["t1_FSeq"].ToString() + ",已选"); |
| | | LogHelper.Info("生产计划平台选单:" + listSelectedRow.DataRow["FBillNo"].ToString() + ", 行号," + listSelectedRow.DataRow["t1_FSeq"].ToString() + ",已选"); |
| | | ret += "生产订单号:" + listSelectedRow.DataRow["FBillNo"].ToString() + ", 行号," + listSelectedRow.DataRow["t1_FSeq"].ToString() + ",已选" + "\n"; |
| | | continue; |
| | | } |
| | | //今天以前的数据是显示不出来的 |
| | | string sql = $"select DATEDIFF(d,getdate(),FPlanStartDate)days from T_PRD_MOENTRY where FENTRYID = {listSelectedRow.DataRow["t1_FENTRYID"].ToString()}"; |
| | | int day = DBServiceHelper.ExecuteScalar<int>(Context, sql, 0); |
| | | if (day < 0) |
| | | { |
| | | LogHelper.Info("生产计划平台选单:日期太靠后," + listSelectedRow.DataRow["FBillNo"].ToString()+ ", 行号, "+listSelectedRow.DataRow["t1_FSeq"].ToString() + ", day= "+ day.ToString()); |
| | | //LogHelper.Info(sql); |
| | | { |
| | | LogHelper.Info("生产计划平台选单:日期太靠后," + listSelectedRow.DataRow["FBillNo"].ToString() + ", 行号, " + listSelectedRow.DataRow["t1_FSeq"].ToString() + ", day= " + day.ToString()); |
| | | ret += "计划开工日期在今天之前,生产订单号:" + listSelectedRow.DataRow["FBillNo"].ToString() + ", 行号," + listSelectedRow.DataRow["t1_FSeq"].ToString() + "\n"; |
| | | continue; |
| | | } |
| | | this.Model.CreateNewEntryRow("FEntity"); |
| | |
| | | this.View.Model.SetValue("FT" + day.ToString(), listSelectedRow.DataRow["FQty"].ToString(), Fseq); |
| | | Fseq++; |
| | | } |
| | | if (ret != "") |
| | | { |
| | | this.View.ShowMessage(ret); |
| | | } |
| | | } |
| | | } |
| | | }); |
| | |
| | | } |
| | | } |
| | | } |
| | | |
| | | |
| | | //tbReleaseReserve |