1
yangle
2022-12-28 0c8570bd22ae060cb27f4f7dfa7907ead390a296
WebAPI/Controllers/Sc_ProcessMangementController.cs
@@ -167,16 +167,26 @@
                //根据工序汇报单主ID获取工序汇报入库单的数据
                DataSet ds = oCN.RunProcReturn("select * from h_v_MES_StationOutBillList_LastProc where HInterID=" + InterID, "h_v_MES_StationOutBillList_LastProc");
                DataRow dr = ds.Tables[0].Rows[0];
                //保存
                oCN.BeginTran();
                //生产汇报单主表
                oCN.RunProc("Insert Into Sc_ICMOReportBillMain   " +
                DataSet DsTable = oCN.RunProcReturn($"select * from Sc_ICMOReportBillMain where HBillNo='{HBillNo}'"  , "Sc_ICMOReportBillMain");
                if (DsTable.Tables[0].Rows.Count > 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "已入库,请不要重复入库";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                    //生产汇报单主表
                    oCN.RunProc("Insert Into Sc_ICMOReportBillMain   " +
                "(HBillType,HBillSubType,HInterID,HBillNo,HDate,HMaker,HMakeDate,HBillStatus,HChecker,HCheckDate" +
                ",HYear,HPeriod,HRemark,HEmpID,HEmpNumber" +
                ",HGroupID,HDeptID,HDeptNumber" +
                ",HMainSourceBillNo,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillType" +
                ") " +
                " values('3711','3711'," + HInterID.ToString() + ",'" + HBillNo + "',getdate(),'" + user + "',getdate(),2,'" + user + "',getdate()" +
                " values('3711','3711'," + HInterID.ToString() + ",'" + BillNo + "',getdate(),'" + user + "',getdate(),2,'" + user + "',getdate()" +
                ",DATENAME(YEAR,GETDATE()),0,'','" + dr["HEmpID"].ToString() + "','" + dr["操作员代码"].ToString() +
                "','" + dr["HGroupID"].ToString() + "',0,''" +
                ",'" + BillNo.ToString() + "'," + InterID.ToString() + ", 0,'3791'" +
@@ -220,7 +230,7 @@
                model.Add("FPrdOrgId", new JObject() { ["Fnumber"] = dr1["FPrdOrgNUMBER"].ToString() }); //生产组织1
                model.Add("FDate", DateTime.Now.ToString("yyyy-MM-dd")); //单据日期1
                model.Add("FHZYMESFLAG", "是");//  是否为MES同步
                model.Add("FBillNo", HBillNo);
                model.Add("FBillNo", BillNo);
                
                JArray Fentity = new JArray();
@@ -260,19 +270,6 @@
                    FentityModel.Add("F_bsv_Base1", new JObject() { ["Fnumber"] = dr1["FPREBDONENUMBER"].ToString() }); //包装标识
                    FentityModel.Add("FLot", new JObject() { ["FNumber"] = dr1["FBATCHNO"].ToString() }); //批号
                    FentityModel.Add("F_bsv_Text", dr1["工序流转卡号"].ToString()); //流转卡号
                    //批号
                    //FFLOWID FFLOWLINEID FRULEID FSTABLENAME
                    //f6e6eec3 - 5267 - 4f02 - 8593 - b633da508a72    3   PRD_MO2MORPT T_PRD_MOENTRY
                    //业务流程图:FEntity_Link_FFlowId
                    //推进路线:FEntity_Link_FFlowLineId
                    //转换规则:FEntity_Link_FRuleId
                    //源单表内码:FEntity_Link_FSTableId
                    //源单表:FEntity_Link_FSTableName
                    //源单内码:FEntity_Link_FSBillId
                    //源单分录内码:FEntity_Link_FSId
                    //原始携带量:FEntity_Link_FBaseQuaQtyOld
                    //修改携带量:FEntity_Link_FBaseQuaQty
                    JArray Fentity2 = new JArray();
                    JObject FentityModel2 = new JObject();
                    FentityModel2.Add("FEntity_Link_FFlowId", "f6e6eec3-5267-4f02-8593-b633da508a72");
@@ -439,7 +436,7 @@
                model.Add("FOwnerId0", new JObject() { ["FNumber"] = dr1["HPrdOrgNumber"].ToString() }); //
                model.Add("FIsEntrust", "false");//  
                model.Add("FCurrId", new JObject() { ["FNumber"] = "PRE001" }); //
                model.Add("FBillNo", HBillNo);
                model.Add("FBillNo", BillNo);
                JArray Fentity = new JArray();
@@ -818,6 +815,7 @@
                }
                oCN.Commit();
                oCN.RunProc("update  sc_stationoutbillmain set HBFFlag =1 where HProcExchBillNo = '" + BillNo + "'");
                objJsonResult.code = "0";
                objJsonResult.count = 1;
                objJsonResult.Message = "保存成功!";
@@ -881,7 +879,7 @@
                      ") values("
                      + HInterID.ToString() + ",1,'',''" +
                      ",''," + HSourceInterID.ToString() + "," + HSourceEntryID.ToString() + ",'" + HSourceBillNo.ToString() + "','" + HSourceBillType.ToString() + "'" +
                      ",0,0,0,0,''"+
                      ",0,0,0,0,''" +
                      ",'" + HCheckResult.ToString() + "','" + HCheckResult.ToString() + "','" + HKeeperID.ToString() + "',getdate()" +
                      ") ");
                //同步金蝶
@@ -913,6 +911,7 @@
                    FentityModel.Add("FUnitID", new JObject() { ["Fnumber"] = HUnitNumber.ToString() });//计量单位内码
                    FentityModel.Add("FInspectQty", HCheckQty.ToString());//  检验数量 
                    FentityModel.Add("FQualifiedQty", HRightQty.ToString());//  合格数量 
                    FentityModel.Add("FUnqualifiedQty", HBadQty.ToString());//  不合格数量
                    FentityModel.Add("FInspectResult", HCheckResult.ToString());//  检验结果
                    FentityModel.Add("FQCStatus", "1");//  质检状态 
                    FentityModel.Add("FIsRelated", false);//  不良品关联标志
@@ -920,13 +919,14 @@
                    FentityModel.Add("FBaseUnitId", new JObject() { ["Fnumber"] = HUnitNumber.ToString() });//基本单位
                    FentityModel.Add("FBaseInspectQty", HCheckQty.ToString());//基本单位检验数量
                    FentityModel.Add("FSupplierId", new JObject() { ["Fnumber"] = HSupNumber.ToString() }); //  供应商
                    FentityModel.Add("FStockId", new JObject() { ["Fnumber"] = HWHNumber.ToString() }); // 仓库
                    //FentityModel.Add("FStockId", new JObject() { ["Fnumber"] = HWHNumber.ToString() }); // 仓库
                    FentityModel.Add("FInspectTimes","1"); // 检验次数 
                    FentityModel.Add("FTimeUnit","24");//时间单位
                    FentityModel.Add("FSAMPLEDAMAGEBEARER","2");//样本破坏承担方
                    FentityModel.Add("FISFIRSTINSPECT", false);//首检
                    FentityModel.Add("FBaseQualifiedQty", HRightQty.ToString());//基本单位合格数
                    FentityModel.Add("FCurrency", new JObject() { ["Fnumber"] = "PRE001" });//币别
                FentityModel.Add("FBaseAcceptQty", HRightQty.ToString());//基本单位接收数
                FentityModel.Add("FCurrency", new JObject() { ["Fnumber"] = "PRE001" });//币别
                    FentityModel.Add("FIsSplitRow ", false);// 是否拆分行
                    JArray Fentity2 = new JArray();
@@ -940,7 +940,7 @@
                    FentityModel2.Add("FIsDefectProcess", false);  //不良处理
                    FentityModel2.Add("FCanSale", false);   //可销售
                    FentityModel2.Add("FIsMRBReview", false);   //MRP评审
                    FentityModel2.Add("FIsReturn", false);   //判退
                    FentityModel2.Add("FIsReturn", true);   //判退
                    FentityModel2.Add("FIsRelatedDefect", false);   //不良品关联标志
                    Fentity2.Add(FentityModel2);
                    FentityModel.Add("FPolicyDetail", Fentity2);
@@ -949,6 +949,7 @@
                JArray Fentity3 = new JArray();
                JObject FentityModel3 = new JObject();
                FentityModel3.Add("FDetailID", "0");//
                FentityModel3.Add("FSrcBillType", "PUR_ReceiveBill");   //源单类型
                FentityModel3.Add("FSrcBillNo", HSLBillNo.ToString());    //收料通知单单号
                FentityModel3.Add("FSrcInterId", HSLInterID.ToString());      //收料通知单主ID
@@ -961,6 +962,23 @@
                FentityModel3.Add("FOrderEntrySeq", HSeQ.ToString());  //订单行号
                Fentity3.Add(FentityModel3);
                FentityModel.Add("FReferDetail", Fentity3);
                JArray Fentity4 = new JArray();
                JObject FentityModel4 = new JObject();
                FentityModel4.Add("FEntity_Link_FRuleId", "QM_PURReceive2Inspect");   //单据转换规则
                FentityModel4.Add("FEntity_Link_FSTableName", "T_PUR_RECEIVEENTRY");    //收料通知单子表
                FentityModel4.Add("FEntity_Link_FSBillId", HSLInterID.ToString());      //收料通知单主内码
                FentityModel4.Add("FEntity_Link_FSId", HSLEntryID.ToString());    //收料通知单子内码
                FentityModel4.Add("FEntity_Link_FBaseAcceptQty", HRightQty.ToString());    //
                FentityModel4.Add("FEntity_Link_FBaseAcceptQtyOld", HRightQty.ToString());    //
                FentityModel4.Add("FEntity_Link_FBaseInspectQtyOld", HRightQty.ToString());    //
                FentityModel4.Add("FEntity_Link_FInspectQtyOld", HRightQty.ToString());    //
                Fentity4.Add(FentityModel4);
                FentityModel.Add("FEntity_Link", Fentity4);
                Fentity.Add(FentityModel);
                model.Add("FEntity", Fentity); //明细信息
                JObject jsonRoot = new JObject()
@@ -1108,6 +1126,7 @@
                FentityModel.Add("FUnitID", new JObject() { ["Fnumber"] = HUnitNumber.ToString() });//计量单位内码
                FentityModel.Add("FInspectQty", HCheckQty.ToString());//  检验数量 
                FentityModel.Add("FQualifiedQty", HRightQty.ToString());//  合格数量 
                FentityModel.Add("FUnqualifiedQty", HBadQty.ToString());//  不合格数量
                FentityModel.Add("FInspectResult", HCheckResult.ToString());//  检验结果
                FentityModel.Add("FQCStatus", "1");//  质检状态 
                FentityModel.Add("FIsRelated", false);//  不良品关联标志
@@ -1115,7 +1134,7 @@
                FentityModel.Add("FBaseUnitId", new JObject() { ["Fnumber"] = HUnitNumber.ToString() });//基本单位
                FentityModel.Add("FBaseInspectQty", HCheckQty.ToString());//基本单位检验数量
                //FentityModel.Add("FSupplierId", new JObject() { ["Fnumber"] = HSupNumber.ToString() }); //  供应商
                FentityModel.Add("FStockId", new JObject() { ["Fnumber"] = HWHNumber.ToString() }); // 仓库
                //FentityModel.Add("FStockId", new JObject() { ["Fnumber"] = HWHNumber.ToString() }); // 仓库
                FentityModel.Add("FInspectTimes", "1"); // 检验次数 
                FentityModel.Add("FTimeUnit", "24");//时间单位
                FentityModel.Add("FSAMPLEDAMAGEBEARER", "2");//样本破坏承担方
@@ -1135,13 +1154,44 @@
                FentityModel2.Add("FIsDefectProcess", false);  //不良处理
                FentityModel2.Add("FCanSale", false);   //可销售
                FentityModel2.Add("FIsMRBReview", false);   //MRP评审
                FentityModel2.Add("FIsReturn", false);   //判退
                FentityModel2.Add("FIsReturn", true);   //判退
                FentityModel2.Add("FIsRelatedDefect", false);   //不良品关联标志
                Fentity2.Add(FentityModel2);
                FentityModel.Add("FPolicyDetail", Fentity2);
                JArray Fentity3 = new JArray();
                JObject FentityModel3 = new JObject();
                FentityModel3.Add("FDetailID", "0");//
                FentityModel3.Add("FSrcBillType", "SFC_OperationReport");   //源单类型
                FentityModel3.Add("FSrcBillNo", HSLBillNo.ToString());    //工序汇报单单号
                FentityModel3.Add("FSrcInterId", HSLInterID.ToString());      //工序汇报单主ID
                FentityModel3.Add("FSrcEntryId", HSLEntryID.ToString());    //工序汇报单子ID
                FentityModel3.Add("FSrcEntrySeq", HSLSeQ.ToString());    //工序汇报单行号
                FentityModel3.Add("FOrderType", new JObject() { ["FID"] = "PRD_MO" });  //  生产订单类型
                FentityModel3.Add("FOrderBillNo", HSourceBillNo.ToString());   //生产订单单号
                FentityModel3.Add("FOrderId", HSourceInterID.ToString());      //生产订单主ID
                FentityModel3.Add("FOrderEntryId", HSourceEntryID.ToString());  //生产订单子ID
                FentityModel3.Add("FOrderEntrySeq", HSeQ.ToString());  //生产订单行号
                Fentity3.Add(FentityModel3);
                FentityModel.Add("FReferDetail", Fentity3);
                JArray Fentity4 = new JArray();
                JObject FentityModel4 = new JObject();
                FentityModel4.Add("FEntity_Link_FRuleId", "QM_OperRpt2Inspect");   //单据转换规则
                FentityModel4.Add("FEntity_Link_FSTableName", "T_SFC_OPTRPTENTRY");    //工序汇报单子表
                FentityModel4.Add("FEntity_Link_FSBillId", HSLInterID.ToString());      //工序汇报单主ID
                FentityModel4.Add("FEntity_Link_FSId", HSLEntryID.ToString());    //工序汇报单子ID
                FentityModel4.Add("FEntity_Link_FBaseAcceptQty", HRightQty.ToString());    //
                FentityModel4.Add("FEntity_Link_FBaseAcceptQtyOld", HRightQty.ToString());    //
                FentityModel4.Add("FEntity_Link_FBaseInspectQtyOld", HRightQty.ToString());    //
                FentityModel4.Add("FEntity_Link_FInspectQtyOld", HRightQty.ToString());    //
                Fentity4.Add(FentityModel4);
                FentityModel.Add("FEntity_Link", Fentity4);
                //JArray Fentity3 = new JArray();
                //JObject FentityModel3 = new JObject();
                //FentityModel3.Add("FSrcBillType", "SFC_OperationReport");   //源单类型