yusijie
2024-06-30 1442ce6fc7e370c4a9cfeb356ca198ea78e9bcd1
WebAPI/Controllers/Æ·ÖʹÜÀí/¹¤Ðò¼ìÑéµ¥/MES_ProcessCheckBill_PDAController.cs
@@ -34,6 +34,7 @@
                string msg2 = "[" + sArray[0].ToString() + "]";
                string user = sArray[1].ToString();//用户名
                string OperationType = sArray[2].ToString();//类型
                string msg_entry = sArray[3].ToString(); //明细行信息
                //判断是否有编辑权限
                if (!DBUtility.ClsPub.Security_Log("QC_ProcessCheckBill_Edit", 1, false, user))
@@ -44,6 +45,7 @@
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                DAL.ClsQC_ProcessCheckBill BillNew = new DAL.ClsQC_ProcessCheckBill();
                List<Model.ClsQC_ProcessCheckBillMain> list = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_ProcessCheckBillMain>>(msg2);
                string BillType = "7507";
@@ -56,6 +58,7 @@
                double HPeriod = DateTime.Now.Month;
                long HSourceID = list[0].HSourceID;//生产资源
                long HICMOInterID = list[0].HICMOInterID;//任务单ID
                long HICMOEntryID = list[0].HICMOEntryID;//任务单子ID
                string HICMOBillNo = list[0].HICMOBillNo;//任务单
                string HProcExchBillNo = list[0].HProcExchBillNo;//指引卡
                long HMaterID = list[0].HMaterID;//产品ID
@@ -63,6 +66,67 @@
                long HProcID = list[0].HProcID;//工序ID
                long HPRDORGID = list[0].HPRDORGID;//组织ID
                bool HLastResult = list[0].HLastResult;//试样结论
                Int64 HProcExchInterID = list[0].HProcExchInterID;//指引卡ID
                Int64 HProcExchEntryID = list[0].HProcExchEntryID;//指引卡子ID
                long HMainSourceInterID = list[0].HMainSourceInterID;//源单ID
                long HMainSourceEntryID = list[0].HMainSourceEntryID;//源单子ID
                string HMainSourceBillNo = list[0].HMainSourceBillNo;//源单单号
                string HMainSourceBillType = list[0].HMainSourceBillType;//源单类型
                //表体数据
                List<Model.ClsQC_ProcessCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_ProcessCheckBillSub>>(msg_entry);
                for (int i = 0; i < subList.ToArray().Length; i++)
                {
                    if (subList.ToArray().Length >= 0)
                    {
                        Model.ClsQC_ProcessCheckBillSub oSub = new Model.ClsQC_ProcessCheckBillSub();
                        oSub.HEntryID = i + 1;
                        oSub.HRemark = ClsPub.isStrNull(subList[i].HRemark);
                        oSub.HSourceInterID = ClsPub.isLong(subList[i].HSourceInterID);
                        oSub.HSourceEntryID = ClsPub.isLong(subList[i].HSourceEntryID);
                        oSub.HSourceBillType = ClsPub.isStrNull(subList[i].HSourceBillType);
                        oSub.HSourceBillNo = ClsPub.isStrNull(subList[i].HSourceBillNo);
                        oSub.HRelationQty = DBUtility.ClsPub.isDoule(subList[i].HRelationQty);
                        oSub.HRelationMoney = DBUtility.ClsPub.isDoule(subList[i].HRelationMoney);
                        oSub.HCloseMan = DBUtility.ClsPub.isStrNull(subList[i].HCloseMan);
                        oSub.HCloseType = DBUtility.ClsPub.isBool(subList[i].HCloseType);
                        oSub.HQCCheckItemID = DBUtility.ClsPub.isLong(subList[i].HQCCheckItemID);
                        oSub.HQCStd = DBUtility.ClsPub.isStrNull(subList[i].HQCStd);
                        oSub.HResult = DBUtility.ClsPub.isStrNull(subList[i].HResult);
                        oSub.HQCRelValue = DBUtility.ClsPub.isStrNull(subList[i].HQCRelValue);
                        //oSub.HProcCheckTime = HDate;
                        //oSub.HBillNo_bak = DBUtility.ClsPub.isStrNull(mainList[0].HBillNo);
                        //oSub.HProcCheckEmp = ClsPub.isLong(mainList[0].HFirstCheckEmp);
                        oSub.HSampleSchemeID = DBUtility.ClsPub.isLong(subList[i].HSampleSchemeID);
                        oSub.HSampleQty = DBUtility.ClsPub.isLong(subList[i].HSampleQty);
                        oSub.HSampleDamageQty = DBUtility.ClsPub.isDoule(subList[i].HSampleDamageQty);
                        oSub.HAcceptQty = DBUtility.ClsPub.isLong(subList[i].HAcceptQty);
                        oSub.HRejectQty = DBUtility.ClsPub.isLong(subList[i].HRejectQty);
                        oSub.HSampleUnRightQty = DBUtility.ClsPub.isDoule(subList[i].HSampleUnRightQty);
                        oSub.HStatus = DBUtility.ClsPub.isStrNull(subList[i].HStatus);
                        oSub.HUnitID = DBUtility.ClsPub.isLong(subList[i].HUnitID);
                        oSub.HInspectVal = DBUtility.ClsPub.isStrNull(subList[i].HInspectVal);
                        oSub.HTargetVal = DBUtility.ClsPub.isStrNull(subList[i].HTargetVal);
                        oSub.HUpLimit = DBUtility.ClsPub.isStrNull(subList[i].HUpLimit);
                        oSub.HDownLimit = DBUtility.ClsPub.isStrNull(subList[i].HDownLimit);
                        oSub.HUpOffSet = DBUtility.ClsPub.isStrNull(subList[i].HUpOffSet);
                        oSub.HDownOffSet = DBUtility.ClsPub.isStrNull(subList[i].HDownOffSet);
                        oSub.HAnalysisMethod = DBUtility.ClsPub.isStrNull(subList[i].HAnalysisMethod);
                        oSub.HKeyInspect = DBUtility.ClsPub.isLong(subList[i].HKeyInspect);
                        oSub.HInspectInstruMentID = DBUtility.ClsPub.isLong(subList[i].HInspectInstruMentID);
                        oSub.HInspectResult = DBUtility.ClsPub.isStrNull(subList[i].HResult == "true" ? 1 : 0);
                        BillNew.DetailColl.Add(oSub);
                    }
                    else
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "无明细行信息!";
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
                //单据完整性判断
                if (HProcExchBillNo == "")
@@ -93,11 +157,30 @@
                    }
                    oCN.RunProc("Insert Into QC_ProcessCheckBillMain " +
                    "(HBillType,HBillSubType,HInterID,HBillNo,HBillStatus,HDate,HMaker,HMakeDate" +
                    ",HYear,HPeriod,HMaterID,HSourceID,HICMOInterID,HICMOBillNo,HProcExchBillNo" +
                    ",HPRDORGID,HLastResult)" +
                    ",HYear,HPeriod,HMaterID,HSourceID,HICMOInterID,HICMOEntryID,HICMOBillNo,HProcExchBillNo" +
                    ",HPRDORGID,HLastResult,HProcExchInterID,HProcExchEntryID,HProcID,HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType)" +
                    " values('" + BillType + "','" + HBillSubType + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate()" +
                    "," + HYear + "," + HPeriod + ",'" + HMaterID + "','" + HSourceID + "'," + HICMOInterID + ",'" + HICMOBillNo + "','" + HProcExchBillNo + "'" +
                    "," + HPRDORGID + ",'" + HLastResult + "') ");
                    "," + HYear + "," + HPeriod + ",'" + HMaterID + "','" + HSourceID + "'," + HICMOInterID + "," + HICMOEntryID + ",'" + HICMOBillNo + "','" + HProcExchBillNo + "'" +
                    "," + HPRDORGID + ",'" + HLastResult + "'," + HProcExchInterID + "," + HProcExchEntryID + "," + HProcID + "," + HMainSourceInterID +
                    "," + HMainSourceEntryID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'" + ") ");
                    //插入子表
                    foreach (Model.ClsQC_ProcessCheckBillSub oSub in BillNew.DetailColl)
                    {
                        oCN.RunProc("Insert into QC_ProcessCheckBillSub " +
                          " (HInterID,HBillNo_bak,HEntryID" +
                          ",HRemark,HSourceInterID" +
                          ",HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                          ",HQCCheckClassID,HQCCheckItemID,HQCStd,HQCRelValue,HResult" +
                          ",HProcCheckEmp,HProcCheckTime,HStatus,HUnitID,HKeyInspect,HAnalysisMethod,HInspectInstruMentID,HInspectResult" +
                          ") values("
                          + HInterID.ToString() + ",'" + oSub.HBillNo_bak + "'," + oSub.HEntryID.ToString() +  ",'" + oSub.HRemark + "'," + HMainSourceInterID.ToString() +
                          "," + HMainSourceEntryID.ToString() + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + oSub.HRelationQty.ToString() + "," + oSub.HRelationMoney.ToString() +
                          "," + oSub.HQCCheckClassID.ToString() + "," + oSub.HQCCheckItemID.ToString() + ",'" + oSub.HQCStd + "','" + oSub.HQCRelValue + "','" + oSub.HResult + "'" +
                          "," + oSub.HProcCheckEmp.ToString() + ",GETDATE()"  + ",'"  + oSub.HStatus +
                          "'," + oSub.HUnitID + "," + oSub.HKeyInspect + ",'" + oSub.HAnalysisMethod + "'," + oSub.HInspectInstruMentID + ",'" + oSub.HInspectResult + "'"  +
                          ") ");
                    }
                }
                else
                {
@@ -147,6 +230,13 @@
                    return objJsonResult;
                }
                ds = oCN.RunProcReturn("select ManagerFlag from gy_czygl where czymc='" + user.Trim() + "'", "gy_czygl");
                if (!(bool)ds.Tables[0].Rows[0]["ManagerFlag"])  //是否管理员
                {
                    //不是管理员
                    sWhere += " and åˆ¶å•人 = '" + user + "'";
                }
                string sql = "select * from  h_v_QC_ProcessCheckBillMainList where 1=1  " + sWhere + " order by æ—¥æœŸ ";
                ds = oCN.RunProcReturn(sql, "h_v_QC_ProcessCheckBillMainList");