王 垚
2021-09-13 527469d17b75d42349bf17234ef3e34cc36e8920
src/BLL/Demo.BillView/PRD/Pro_WorkBillPlatform.cs
@@ -507,9 +507,9 @@
                }
                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;
@@ -1076,7 +1076,7 @@
--(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);
@@ -1091,6 +1091,7 @@
                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)
@@ -1347,7 +1348,7 @@
";
                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>();
@@ -2995,20 +2996,12 @@
                //单据体信息转换为列表集合
                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;
@@ -3018,20 +3011,22 @@
                        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");
@@ -3047,6 +3042,10 @@
                                this.View.Model.SetValue("FT" + day.ToString(), listSelectedRow.DataRow["FQty"].ToString(), Fseq);
                                Fseq++;
                            }
                            if (ret != "")
                            {
                                this.View.ShowMessage(ret);
                            }
                        }
                    }
                });
@@ -3058,6 +3057,3 @@
        }
    }
}
//tbReleaseReserve