王 垚
2021-09-08 16c4f4c84653feead5c62e124fafcb254e3827b9
src/BLL/Demo.BillView/PRD/Pro_ScDayImport.cs
@@ -39,7 +39,7 @@
            {
                LogHelper.Info("导入功能点击按钮:");
                ImportData();
                WriteImportLog();
                //WriteImportLog();
                //this.View.ShowErrMessage("测试导入功能点击按钮");
            }
@@ -145,14 +145,19 @@
                                FMoFBillType = _dt.Rows[0]["FMoFBillType"].ToString();
                            }
                            //物料编码 + 生产订单号 + 生产资源 + 生产订单行号 去判断是否导入过 带出日计划工单ID及编号 和 关闭数量(6.18更)
                            //9.2 关闭的日计划需要排除
                            string fDayPlanID = "";
                            string fDayPlanBillNo = "";
                            string fCloseCount = "";
                            string fQtyLS = "";
                            sql = string.Format(@"select a.FID,FBILLNO,FSCOrderNo,FHMaterID,FHSourceID,a.FCloseCount,isnull((select SUM(isnull(FHQTY,0)) from SC_WORKBILLSORTBILLSub t2 where t2.FID = a.FID and DATEDIFF(D,FHMASTERDATE,GETDATE())>0),0)FQTYLS  from Sc_WorkBillSortBillMain a JOIN T_BD_MATERIAL b ON a.FHMaterID = b.FMATERIALID
left join T_ENG_WORKCENTER c on a.FHSourceID=c.fid
 where FSCOrderNo ='{0}' and b.FNUMBER ='{1}' and a.FSRCBILLENTRYSEQ ='{3}' and (isnull(c.FNUMBER,'') ='{2}' or (select count(*) from T_ENG_WORKCENTER where isnull(c.FNUMBER,'') ='{2}')=0)", dt.Rows[i][1].ToString(), dt.Rows[i][5].ToString(), dt.Rows[i][4].ToString(), dt.Rows[i][2].ToString());
                            LogHelper.Error(sql);
                            sql = string.Format(@"/*dialect*/
SELECT A.FID,FBILLNO,FSCORDERNO,FHMATERID,FHSOURCEID,A.FCLOSECOUNT,ISNULL((SELECT SUM(ISNULL(FHQTY,0)) FROM SC_WORKBILLSORTBILLSUB T2 WHERE T2.FID = A.FID AND DATEDIFF(D,FHMASTERDATE,GETDATE())>0),0)FQTYLS
FROM SC_WORKBILLSORTBILLMAIN A
JOIN T_BD_MATERIAL B ON A.FHMATERID = B.FMATERIALID
LEFT JOIN T_ENG_WORKCENTER C ON A.FHSOURCEID=C.FID
WHERE A.FDOCUMENTSTATUS NOT IN ('E') AND
FSCORDERNO ='{0}' AND B.FNUMBER ='{1}' AND A.FSRCBILLENTRYSEQ ='{3}' AND (ISNULL(C.FNUMBER,'') ='{2}' OR (SELECT COUNT(*) FROM T_ENG_WORKCENTER WHERE ISNULL(C.FNUMBER,'') ='{2}')=0)", dt.Rows[i][1].ToString(), dt.Rows[i][5].ToString(), dt.Rows[i][4].ToString(), dt.Rows[i][2].ToString());
                            //LogHelper.Error(sql);
                            DataTable dayPlanDt = DBServiceHelper.ExecuteDataSet(Context, sql).Tables[0];
                            if (dayPlanDt.Rows.Count > 0)
                            {
@@ -268,9 +273,10 @@
                }
                int res = DBServiceHelper.ExecuteBatch(Context, sqlList);
                string _result = "";
                //验证是否有生产订单明细行
                foreach (DynamicObject current in entityDataObjoct)
                {
                    //根据生产订单号和物料查询是否存在明细 +生产订单明细行号
                    //根据生产订单号和物料查询是否存在生产订单明细明细 +生产订单明细行号
                    sql = string.Format(@"/*dialect*/SELECT T1.FBILLNO,T2.* FROM T_PRD_MO T1
                                LEFT JOIN T_PRD_MOENTRY T2 ON T1.FID = T2.FID
                                WHERE T1.FBILLNO = '{0}'  AND T2.FMATERIALID = '{1}' AND T2.FSEQ = '{2}'", Convert.ToString(current["FSCOrderNo"]), Convert.ToString(current["FMatrailId_Id"]), Convert.ToString(current["FSRCBILLENTRYSEQ"]));
@@ -316,7 +322,7 @@
                {
                    if (string.IsNullOrEmpty(Convert.ToString(current["FSCOrderNo"])))
                        continue;
                    //根据生产订单号和物料查询是否存在明细 +生产订单明细行号
                    //查询生产订单数据
                    sql = string.Format(@"
/*dialect*/
SELECT t4.FNAME as FMoFBillType,T1.FBILLNO,T2.*,t3.FNUMBER as FUnitNumber,tBom.FNUMBER as FBomNumber FROM T_PRD_MO T1
@@ -442,8 +448,8 @@
                        }
                        else
                        {
                            LogHelper.Error(jsonRoot.ToString());
                            this.View.ShowErrMessage(jsonRoot.ToString());
                            LogHelper.Error("生产日计划导入 新增异常:" + saveObj.ToString());
                            this.View.ShowMessage(saveObj["Result"]["ResponseStatus"]["Errors"][0]["Message"].ToString());
                        }
                    }
                    else
@@ -473,8 +479,8 @@
                        }
                        else
                        {
                            LogHelper.Error("生产日计划导入 新增异常:" + saveObj.ToString());
                            this.View.ShowMessage(saveObj["Result"]["ResponseStatus"]["Errors"][0]["Message"].ToString());
                            this.View.ShowErrMessage(jsonRoot.ToString());
                        }
                    }
                    this.View.UpdateView();