1
wtt
2024-06-25 831e6cd4b5835082695a72da13926e5624605b84
1
31个文件已修改
1个文件已添加
989 ■■■■■ 已修改文件
DAL/生产管理/模具管理/ClsSc_MouldMaintainBill.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/质检管理/ClsQC_FirstPieceCheckBill.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/质检管理/ClsQC_PatrolProcCheckOtherBill.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/质检管理/ClsQC_ProcessCheckBill.cs 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/生产管理/模具管理/ClsSc_MouldMaintainBillMain.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/生产管理/模具管理/ClsSc_MouldMaintainRuleBillSub_Item.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/质检管理/ClsQC_FirstPieceCheckBillMain.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/质检管理/ClsQC_ProcessCheckBillMain.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Class/CustomerCls/ClsXt_SystemParameter.cs 9 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Pub_Class/CustomerCls/ClsXt_SystemParameterMain.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/BaseSet/Gy_MaterialController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs 44 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/MJGL/Sc_MouldDotCheckRuleBillController.cs 50 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/MJGL/Sc_MouldMaintainRuleBillController.cs 58 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SBGL/Sb_EquipMaintainBillController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SBGL/Sb_EquipMaintainRuleBillController.cs 64 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs 66 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/Sc_MouldRepairInBillListController.cs 136 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/WebAPIController.cs 97 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/仓存管理/条码生成/Sc_BarCodeController.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/品质管理/巡检单/QC_PatrolProcCheckOtherBillController.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/品质管理/工序检验单/QC_ProcessCheckBillController.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/品质管理/首件检验单/QC_FirstPieceCheckBillController.cs 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/基础资料/基础资料/Gy_DotCheckBillController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/应收管理/YS_ReceiveReportController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/条码管理/WEBSController.cs 171 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/生产管理/质量汇报单/Sc_QualityReportBillController.cs 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/DLL/钉钉消息/Cls_DDMsg.cs 75 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/StationBill.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Properties/PublishProfiles/FolderProfile12.pubxml.user 76 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/WebAPI.csproj 20 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/packages.config 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
DAL/Éú²ú¹ÜÀí/Ä£¾ß¹ÜÀí/ClsSc_MouldMaintainBill.cs
@@ -59,6 +59,7 @@
                ",HInnerBillNo='" + omodel.HInnerBillNo + "'" +
                ",HMouldMaintainRuleInterID=" + omodel.HMouldMaintainRuleInterID.ToString() +
                ",HMaintainLevID=" + omodel.HMaintainLevID +
                ",HLastResult='" + omodel.HLastResult + "'" +
                //",HDeptID=" + omodel.HDeptID.ToString() +
                //",HDeptNumber='" + omodel.HDeptNumber +"'"+
                //",HEmpID=" + omodel.HEmpID.ToString() +
@@ -82,13 +83,14 @@
                          ",HMaintainPart,HClaim" +
                          ",HManagerID" +
                          ",HCloseMan,HCloseType,HRemark" +
                          ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                          ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HMaintainResult" +
                          ") values("
                          + omodel.HInterID.ToString() + "," + Item.HEntryID.ToString() + "," + Item.HMaintainItemID.ToString() + ",'" + Item.HMaintainItem.ToString() + "'" +
                          ",'" + Item.HMaintainPart.ToString() + "','" + Item.HClaim.ToString() + "'" +
                          "," + Item.HManagerID.ToString() +
                          ",'" + Item.HCloseMan + "'," + Convert.ToString(Item.HCloseType ? 1 : 0) + ",'" + Item.HRemark + "'" +
                          "," + Item.HSourceInterID.ToString() + "," + Item.HSourceEntryID.ToString() + ",'" + Item.HSourceBillNo + "','" + Item.HSourceBillType + "'," + Item.HRelationQty.ToString() + "," + Item.HRelationMoney.ToString() +
                          "," + Item.HSourceInterID.ToString() + "," + Item.HSourceEntryID.ToString() + ",'" + Item.HSourceBillNo + "','" + Item.HSourceBillType + "'," + Item.HRelationQty.ToString() + "," + Item.HRelationMoney.ToString() +
                          ",'" + Item.HMaintainResult + "'" +
                          ") ");
                }
                //插入配件项子表
@@ -147,13 +149,14 @@
                ",HYear,HPeriod,HRemark" +
                ",HPlanNo,HPlanInterID,HMouldID,HBeginDate"+
                ",HEndDate"+
                ",HInnerBillNo,HExplanation,HMouldMaintainRuleInterID,HMaintainLevID" +
                ",HInnerBillNo,HExplanation,HMouldMaintainRuleInterID,HMaintainLevID,HLastResult" +
                ") " +
                " values('" + this.BillType + "','"  + this.HBillSubType + "'," +omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "','" + DBUtility.ClsPub.CurUserName + "',getdate()" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "'"+
                ",'" + omodel.HPlanNo + "'," + omodel.HPlanInterID.ToString() + "," + omodel.HMouldID.ToString() + ",'" + omodel.HBeginDate + "'" +
                ",'" + omodel.HEndDate + "'"+
                ",'" + omodel.HInnerBillNo + "','" + omodel.HExplanation + "'," +omodel.HMouldMaintainRuleInterID.ToString() + "," + omodel.HMaintainLevID +
                ",'" + omodel.HLastResult + "'" +
                ") ");
                if (DetailCol.Count > 0)
@@ -166,13 +169,14 @@
                          ",HMaintainPart,HClaim" +
                          ",HManagerID" +
                          ",HCloseMan,HCloseType,HRemark" +
                          ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney" +
                          ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HRelationQty,HRelationMoney,HMaintainResult" +
                          ") values("
                          + omodel.HInterID.ToString() + "," + Item.HEntryID.ToString() + "," + Item.HMaintainItemID.ToString() + ",'" + Item.HMaintainItem.ToString() + "'" +
                          ",'" + Item.HMaintainPart.ToString() + "','" + Item.HClaim.ToString() + "'" +
                          "," + Item.HManagerID.ToString() +
                          ",'" + Item.HCloseMan + "'," + Convert.ToString(Item.HCloseType ? 1 : 0) + ",'" + Item.HRemark + "'" +
                          "," + Item.HSourceInterID.ToString() + "," + Item.HSourceEntryID.ToString() + ",'" + Item.HSourceBillNo + "','" + Item.HSourceBillType + "'," + Item.HRelationQty.ToString() + "," + Item.HRelationMoney.ToString() +
                          "," + Item.HSourceInterID.ToString() + "," + Item.HSourceEntryID.ToString() + ",'" + Item.HSourceBillNo + "','" + Item.HSourceBillType + "'," + Item.HRelationQty.ToString() + "," + Item.HRelationMoney.ToString() +
                          ",'" + Item.HMaintainResult + "'" +
                          ") ");
                    }
                }
DAL/Öʼì¹ÜÀí/ClsQC_FirstPieceCheckBill.cs
@@ -94,6 +94,7 @@
                ",HLastResult=" + DBUtility.ClsPub.BoolToString(omodel.HLastResult) +
                ",HShiftsID=" + omodel.HShiftsID.ToString() +
                ",HErrTreatment='" + omodel.HErrTreatment + "'" +
                ",HBatchNo='" + omodel.HBatchNo + "'" +
                " where HInterID=" + lngBillKey.ToString());
                //删除关联
                DeleteRelation(ref sReturn, lngBillKey);
@@ -206,13 +207,13 @@
                ",HYear,HPeriod,HRemark" +
                ",HSourceID,HICMOInterID,HICMOBillNo,HICMOQty,HProcExchInterID,HProcExchEntryID" +
                ",HProcExchBillNo,HProcExchQty,HMaterID,HFirstCheckEmp,HLastResult" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HShiftsID,HErrTreatment" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HShiftsID,HErrTreatment,HBatchNo" +
                ") " +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillStatus.ToString() + ",'" + omodel.HDate + "','" + omodel.HMaker + "',getdate()" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "'" +
                "," + omodel.HSourceID.ToString() + "," + omodel.HICMOInterID.ToString() + ",'" + omodel.HICMOBillNo + "'," + omodel.HICMOQty.ToString() + "," + omodel.HProcExchInterID.ToString() + "," + omodel.HProcExchEntryID.ToString() +
                ",'" + omodel.HProcExchBillNo + "'," + omodel.HProcExchQty.ToString() + "," + omodel.HMaterID.ToString() + "," + omodel.HFirstCheckEmp.ToString() + ", " + DBUtility.ClsPub.BoolToString(omodel.HLastResult) +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType  + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "'" +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType  + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "','" + omodel.HBatchNo + "'" +
                ") ");
                //插入子表
                foreach (Model.ClsQC_FirstPieceCheckBillSub oSub in DetailColl)
DAL/Öʼì¹ÜÀí/ClsQC_PatrolProcCheckOtherBill.cs
@@ -62,6 +62,7 @@
                ",HLastResult=" + DBUtility.ClsPub.BoolToString(omodel.HLastResult) +
                ",HShiftsID=" + omodel.HShiftsID.ToString() +
                ",HErrTreatment='" + omodel.HErrTreatment + "'" +
                ",HBatchNo='" + omodel.HBatchNo + "'" +
                " where HInterID=" + lngBillKey.ToString());
                //删除关联
                
@@ -121,13 +122,13 @@
                ",HYear,HPeriod,HRemark" +
                ",HSourceID,HICMOInterID,HICMOBillNo,HICMOQty,HProcExchInterID,HProcExchEntryID" +
                ",HProcExchBillNo,HProcExchQty,HMaterID,HFirstCheckEmp,HLastResult" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HShiftsID,HErrTreatment" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HShiftsID,HErrTreatment,HBatchNo" +
                ") " +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillStatus.ToString() + ",'" + omodel.HDate + "','" + omodel.HMaker + "',getdate()" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "'" +
                "," + omodel.HSourceID.ToString() + "," + omodel.HICMOInterID.ToString() + ",'" + omodel.HICMOBillNo + "'," + omodel.HICMOQty.ToString() + "," + omodel.HProcExchInterID.ToString() + "," + omodel.HProcExchEntryID.ToString() +
                ",'" + omodel.HProcExchBillNo + "'," + omodel.HProcExchQty.ToString() + "," + omodel.HMaterID.ToString() + "," + omodel.HFirstCheckEmp.ToString() + ", " + DBUtility.ClsPub.BoolToString(omodel.HLastResult) +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType  + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "'" +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType  + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "','" + omodel.HBatchNo + "'" +
                ") ");
                //插入子表
                foreach (Model.ClsQC_PatrolProcCheckOtherBillSub oSub in DetailColl)
DAL/Öʼì¹ÜÀí/ClsQC_ProcessCheckBill.cs
@@ -108,6 +108,7 @@
                ",HPackTypeID=" + omodel.HPackTypeID.ToString() +
                ",HShiftsID=" + omodel.HShiftsID.ToString() +
                ",HErrTreatment='" + omodel.HErrTreatment + "'" +
                ",HBatchNo='" + omodel.HBatchNo + "'" +
                " where HInterID=" + lngBillKey.ToString());
                //删除关联
                DeleteRelation(ref sReturn, lngBillKey);
@@ -208,7 +209,7 @@
                ",HBarCode,HLBatchNo,HCusID,HSortBillNo,HContrctBatchNo" +
                ",HProdAreaID,HProdTypeID,HProdStoveNo,HRecipeID,HDiameter1" +
                ",HDiameter2,HRoutingInterID,HDrawingDireID,HPackTypeID" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HICMOQty,HProcExchQty,HShiftsID,HErrTreatment" +
                ",HMainSourceInterID,HMainSourceEntryID,HMainSourceBillNo,HMainSourceBillType,HICMOEntryID,HQCSchemeID,HICMOQty,HProcExchQty,HShiftsID,HErrTreatment,HBatchNo" +
                ") " +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "'," + omodel.HBillStatus.ToString() + ",'" + omodel.HDate + "','" + omodel.HMaker + "',getdate()" +
                "," + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "'"+
@@ -218,7 +219,7 @@
                ",'" + omodel.HBarCode + "','" + omodel.HLBatchNo + "'," + omodel.HCusID.ToString() + ",'" + omodel.HSortBillNo + "','" + omodel.HContrctBatchNo + "'" +
                "," + omodel.HProdAreaID.ToString() + "," + omodel.HProdTypeID.ToString() + ",'" + omodel.HProdStoveNo + "'," + omodel.HRecipeID.ToString() + "," + omodel.HDiameter1.ToString() +
                "," + omodel.HDiameter2.ToString() + "," + omodel.HRoutingInterID.ToString() + ",'" + omodel.HDrawingDireID + "'," + omodel.HPackTypeID.ToString() +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HICMOQty + "," + omodel.HProcExchQty + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "'" +
                "," + omodel.HMainSourceInterID + "," + omodel.HMainSourceEntryID + ",'" + omodel.HMainSourceBillNo + "','" + omodel.HMainSourceBillType + "'," + omodel.HICMOEntryID + "," + omodel.HQCSchemeID + "," + omodel.HICMOQty + "," + omodel.HProcExchQty + "," + omodel.HShiftsID + ",'" + omodel.HErrTreatment + "','" + omodel.HBatchNo + "'" +
                ") ");
                //插入子表
                foreach (Model.ClsQC_ProcessCheckBillSub oSub in DetailColl)
Model/Éú²ú¹ÜÀí/Ä£¾ß¹ÜÀí/ClsSc_MouldMaintainBillMain.cs
@@ -20,5 +20,7 @@
        public int HMouldMaintainPlanInterID; //器具保养计划单(Sc_MouldMaintainPlanBillSub_Plan)主内码
        public int HMouldMaintainPlanEntryID; //器具保养计划单(Sc_MouldMaintainPlanBillSub_Plan)子内码
        public string HLastResult;
    }
}
Model/Éú²ú¹ÜÀí/Ä£¾ß¹ÜÀí/ClsSc_MouldMaintainRuleBillSub_Item.cs
@@ -14,6 +14,7 @@
        public string HClaim;//       varchar(100)       --具体要求
        public Int64 HManagerID;//     int   --负责人id(职员表)
        public string HMaintainResult; //保养结果
    }
}
Model/Öʼì¹ÜÀí/ClsQC_FirstPieceCheckBillMain.cs
@@ -26,5 +26,7 @@
        public Int64 HShiftsID;
        public string HErrTreatment;
        public string HBatchNo;
    }
}
Model/Öʼì¹ÜÀí/ClsQC_ProcessCheckBillMain.cs
@@ -46,5 +46,7 @@
        public Int64 HShiftsID;
        public string HErrTreatment;
        public string HBatchNo;
    }
}
Pub_Class/CustomerCls/ClsXt_SystemParameter.cs
@@ -1927,6 +1927,10 @@
                    {
                        omodel.Sc_ProcessExchangeBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                    }
                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Sc_ProcessExchangeBill_SaveDeptIsNull")
                    {
                        omodel.Sc_ProcessExchangeBill_SaveDeptIsNull = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                    }
                    ////=========工序进站单
@@ -3491,7 +3495,10 @@
                    {
                        omodel.Sc_ProcessExchangeBill_DeleterAndMakerMustSame = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                    }
                    if (ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HKey"]) == "Sc_ProcessExchangeBill_SaveDeptIsNull")
                    {
                        omodel.Sc_ProcessExchangeBill_SaveDeptIsNull = ClsPub.isStrNull(DsSub.Tables[0].Rows[i]["HValue"]);
                    }
                    //-======工序进站接收单
                    //自动新增
Pub_Class/CustomerCls/ClsXt_SystemParameterMain.cs
@@ -490,6 +490,7 @@
        public string Sc_ProcessExchangeBill_SaveAutoAddnew;               //保存后变为新增状态
        public string Sc_ProcessExchangeBill_AutoBarCode;                //工序流转卡保存自动同步条码档案
        public string Sc_ProcessExchangeBill_DeleterAndMakerMustSame;    //工序流转卡删除人必须是制单人
        public string Sc_ProcessExchangeBill_SaveDeptIsNull;    //工序流转卡 æ ¹æ®è½¦é—´åˆ¤æ–­ å­—段是否为空
        //工序进站接收单 
        public string MES_StationInBill_AutoCheck;                        //保存后是否自动审核
WebAPI/Controllers/BaseSet/Gy_MaterialController.cs
@@ -852,7 +852,7 @@
                    return objJsonResult;
                }
                string sql1 = "select top 1000 * from h_v_IF_BarCodeBillList where 1 = 1 ";
                string sql1 = "select top 5000 * from h_v_IF_BarCodeBillList where 1 = 1 ";
                string sql = sql1 + sWhere + " order by hmainid desc";
                ds = oCN.RunProcReturn(sql, "h_v_IF_BarCodeBillList");
WebAPI/Controllers/CJGL/Cj_StationOutBillController.cs
@@ -146,6 +146,8 @@
                double HWasterQty_Mater = list[0].HWasterQty_Mater;//料废数量
                double HBackWorkQty = list[0].HBackWorkQty;//返工数量
                Int64 HShiftsID = list[0].HShiftsID;//生产班次
                double HToCheckQty = list[0].HToCheckQty;//取样数量
                double HLossQty = list[0].HLossQty;//遗失数量
                LogService.Write($"1.字段赋值,用时" + sw.Elapsed );
@@ -221,7 +223,7 @@
                if (oSystemParameter.ShowBill(ref Ret))
                {
                    //判断客户不为龙山汽配
                    if (oSystemParameter.omodel.WMS_CampanyName != "龙山汽配"&& oSystemParameter.omodel.WMS_CampanyName != "瑞与祺") //系统参数
                    if (oSystemParameter.omodel.WMS_CampanyName != "龙山汽配" && oSystemParameter.omodel.WMS_CampanyName != "瑞与祺") //系统参数
                    {
                        if (HSourceID == 0)
                        {
@@ -230,7 +232,7 @@
                            objJsonResult.Message = "生产资源没有选择!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                        }
                    }
                    //判断客户为龙山汽配
                    else if (oSystemParameter.omodel.WMS_CampanyName == "龙山汽配")
@@ -261,6 +263,28 @@
                            return objJsonResult;
                        }
                    }
                    //判断客户为斯莫尔
                    else if (oSystemParameter.omodel.WMS_CampanyName == "杭州斯莫尔")
                    {
                        if (HQty + HWasterQty + HBadCount <= 0)
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "合格数量加报废数量加不良数量不能为0!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                    else {
                        if (HQty + HWasterQty <= 0)
                        {
                            objJsonResult.code = "0";
                            objJsonResult.count = 0;
                            objJsonResult.Message = "合格数量加报废数量不能为0!";
                            objJsonResult.data = null;
                            return objJsonResult;
                        }
                    }
                }
               
                //if (HCenterID == 0)
@@ -271,14 +295,7 @@
                //    objJsonResult.data = null;
                //    return objJsonResult;
                //}
                if (HQty + HWasterQty <= 0)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "合格数量加报废数量不能为0!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                //if (HWorkTimes <= 0)
                //{
@@ -373,6 +390,7 @@
                    ",HMainSourceInterID,HMainSourceBillNo,HMainSourceBillType,HLastSubProc" +
                    ",HEmpID2,HEmpID3,HEmpID4,HEmpID5,HDSQty,HChongQty,HPriceRate,HWorkTimes,HQCCheckID,HMainInterID,HPRDOrgID" +
                    ",HmaterOutqty,HProcPriceRate,HTemporaryAreaID,HWasterQty_Work,HWasterQty_Mater,HBackWorkQty,HShiftsID" +
                    ",HToCheckQty,HLossQty" +
                    ") " +
                    " values('" + BillType + "','" + (OperationType == "5" ? "SUB" : HBillSubType)  + "'," + HInterID + ",'" + HBillNo + "'," + HBillStatus + ",getdate(),'" + HMaker + "',getdate(),'" + HMouldNum + "'" +
                    "," + HYear + "," + HPeriod + ",'" + HRemark + "','" + HSourceName + "'," + HPieceQty + "," + HWasterQty + "," + HPlanPieceQty + "," + HBadPNL +
@@ -382,8 +400,8 @@
                    "," + HSupID + "," + HQty + "," + HPrice + "," + HMoney + "," + HBadCount + "," + HCenterID + "," + HProcNo + ",'" + HOrderProcNO + "'" + ",'" + HSourceNameList + "'" +
                    "," + HMainSourceInterID + ",'" + HMainSourceBillNo + "','" + HMainSourceBillType + "'," + Convert.ToString(HLastSubProc ? 1 : 0) +
                    "," + HEmpID2 + "," + HEmpID3 + "," + HEmpID4 + "," + HEmpID5 + "," + HDSQty + "," + HChongQty + "," + HPriceRate + "," + HWorkTimes + "," + HQCCheckID + "," + HMainInterID + "," + HPRDOrgID +
                    ","+ HmaterOutqty + "," + HProcPriceRate + ","+ HTemporaryAreaID + "," + HWasterQty_Work + "," + HWasterQty_Mater + "," + HBackWorkQty +
                    "," + HShiftsID + ") ");
                    "," + HmaterOutqty + "," + HProcPriceRate + "," + HTemporaryAreaID + "," + HWasterQty_Work + "," + HWasterQty_Mater + "," + HBackWorkQty +
                    "," + HShiftsID + "," + HToCheckQty + "," + HLossQty + ") ");
                    LogService.Write($"4.新增结束,用时" + sw.Elapsed);
                    LogService.Write("用户:" + user + ",日期:" + DateTime.Now + ",新增工序出站单据:" + HBillNo);
@@ -412,6 +430,8 @@
                    ",HWorkTimes=" + HWorkTimes +
                    ",HSaveBillFlag=0 " +
                    ",HPieceQty=" + HPieceQty +
                    ",HToCheckQty=" + HToCheckQty +
                    ",HLossQty=" + HLossQty +
                    ",HQty=" + HQty +
                    ",HDSQty=" + HDSQty +
                    ",HChongQty=" + HChongQty +
WebAPI/Controllers/MJGL/Sc_MouldDotCheckRuleBillController.cs
@@ -68,6 +68,56 @@
        }
        #endregion
        #region å™¨å…·ç‚¹æ£€è§„程单列表
        [Route("Sc_MouldDotCheckRuleBill/Sc_MouldDotCheckRuleListPDA")]
        [HttpGet]
        public object Sc_MouldDotCheckRuleListPDA(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                //反序列化传递的值
                //HlpBill com = JsonConvert.DeserializeObject<HlpBill>(sWhere.ToString());
                //编辑权限
                if (!DBUtility.ClsPub.Security_Log("Sc_MouldDotCheckRuleBillList", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                string sql = "select * from h_v_Sc_MouldDotCheckRuleListByMould where 1 = 1" + sWhere + " order by hmainid desc";
                ds = oCN.RunProcReturn(sql, "h_v_Sc_MouldDotCheckRuleListByMould");
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception ex)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "没有返回任何记录!" + ex.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region å™¨å…·ç‚¹æ£€è§„程 ä¿å­˜/编辑
        /// <summary>
        /// ä¿å­˜æ¨¡å…·ç»´ä¿®å•
WebAPI/Controllers/MJGL/Sc_MouldMaintainRuleBillController.cs
@@ -88,6 +88,64 @@
        }
        #endregion
        #region å™¨å…·ä¿å…»è§„程单列表PDA
        [Route("Sc_MouldMaintainRuleBill/GetMouldMaintainRuleListPDA")]
        [HttpGet]
        public object GetMouldMaintainRuleListPDA(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                //反序列化传递的值
                //HlpBill com = JsonConvert.DeserializeObject<HlpBill>(sWhere.ToString());
                //编辑权限
                if (!DBUtility.ClsPub.Security_Log("Sc_MouldMaintainRuleBillList", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_Sc_MouldMaintainRuleListByMould " + sWhere + " order by hmainid desc", "h_v_Sc_MouldMaintainRuleListByMould");
                }
                else
                {
                    string sql1 = "select * from h_v_Sc_MouldMaintainRuleListByMould where 1 = 1";
                    string sql = sql1 + sWhere + " order by hmainid desc";
                    ds = oCN.RunProcReturn(sql, "h_v_Sc_MouldMaintainRuleListByMould");
                }
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception ex)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "没有返回任何记录!" + ex.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region å™¨å…·ä¿å…»è§„程记录删除功能
        [Route("Sc_MouldMaintainRuleBill/DeltetMouldMaintainRuleBillList")]
        [HttpGet]
WebAPI/Controllers/SBGL/Sb_EquipMaintainBillController.cs
@@ -532,7 +532,7 @@
                }
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                //获取保养项目编辑数据
                string sql = "select ä¿å…»é¡¹ç›®ID HMaintainItemID, ä¿å…»é¡¹ç›®ä»£ç  HMaintainItemNumber,保养项目名称 HMaintainItem,保养部位 HMaintainPart,具体要求 HClaim,HManagerID,负责人代码 HManagerNumber,负责人 HManagerName,表体备注 HRemark  from h_v_Sb_EquipMaintainBillSub_Item where 1 = 1 " + Swhere + "";
                string sql = "select ä¿å…»é¡¹ç›®ID HMaintainItemID, ä¿å…»é¡¹ç›®ä»£ç  HMaintainItemNumber,保养项目名称 HMaintainItem,保养部位 HMaintainPart,具体要求 HClaim,HManagerID,负责人代码 HManagerNumber,负责人 HManagerName,表体备注 HRemark,保养结果 HMaintainResult  from h_v_Sb_EquipMaintainBillSub_Item where 1 = 1 " + Swhere + "";
                ds = oCN.RunProcReturn(sql, "h_v_Sb_EquipMaintainBillSub_Item");
                //获取配件项目编辑数据
                string sql1 = "select HMaterID, é…ä»¶ä»£ç  HMaterNumber,配件名称 HMaterName,单位ID HUnitID,单位代码 HUnitNumber,单位名称 HUnitName,实际用量 HQty,标准用量 HQtyMust,表体备注 HRemark,负责人ID HManagerID,负责人代码 HManagerNumber,负责人 HManagerName  from h_v_Sb_EquipMaintainBillList where 1 = 1 " + Swhere + "";
WebAPI/Controllers/SBGL/Sb_EquipMaintainRuleBillController.cs
@@ -75,6 +75,70 @@
        }
        #endregion
        #region è®¾å¤‡ä¿å…»è§„程单列表PDA
        [Route("Sb_EquipMaintainRuleBill/GetEquipMaintainRuleListPDA")]
        [HttpGet]
        public object GetEquipMaintainRuleListPDA(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                if (!DBUtility.ClsPub.Security_Log("Sb_EquipMaintainRuleBillList", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                if (sWhere == null || sWhere.Equals(""))
                {
                    ds = oCN.RunProcReturn("select * from h_v_Sb_GetMaintainRuleListByEquip " + sWhere, "h_v_Sb_GetMaintainRuleListByEquip");
                }
                else
                {
                    string sql1 = "select * from h_v_Sb_GetMaintainRuleListByEquip where 1 = 1";
                    string sql = sql1 + sWhere;
                    ds = oCN.RunProcReturn(sql, "h_v_Sb_GetMaintainRuleListByEquip");
                }
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                //if (ds.Tables[0].Rows.Count != 0 || ds != null)
                //{
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
                //}
                //else
                //{
                //objJsonResult.code = "0";
                //objJsonResult.count = 0;
                //objJsonResult.Message = "无数据";
                //objJsonResult.data = null;
                //return objJsonResult;
                //}
            }
            catch (Exception ex)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "没有返回任何记录!" + ex.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
        #region è®¾å¤‡ä¿å…»è§„程记录删除功能
        [Route("Sb_EquipMaintainRuleBill/DeleteEquipMaintainRuleBillList")]
        [HttpGet]
WebAPI/Controllers/SCGL/Sc_MESTransFerWorkBillController.cs
@@ -1,4 +1,6 @@
using DBUtility;
using DAL;
using DBUtility;
using DLL;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using System;
@@ -7,8 +9,11 @@
using System.Linq;
using System.Net;
using System.Net.Http;
using System.Timers;
using System.Threading.Tasks;
using System.Web.Http;
using WebAPI.Models;
using System.Threading;
namespace WebAPI.Controllers.SCGL
{
@@ -43,7 +48,7 @@
        /// <returns></returns>
        [Route("Sc_MESTransFerWorkBill/SaveGetMESTransFerWorkFrom")]
        [HttpPost]
        public object SaveGetMESTransFerWorkFrom([FromBody] JObject msg)
        public object SaveGetMESTransFerWorkFromAsync([FromBody] JObject msg)
        {
            var _value = msg["msg"].ToString();
@@ -151,7 +156,7 @@
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    //string[] arrStr = oItem.HSendMan.Split(','); //发送人
                    //arrStr = oItem.HReceiveMan.Split(',');  //接收人
                    string[] arrStr = oItem.HCopyMan.Split(',');  //抄送人
@@ -165,7 +170,7 @@
                        Models.ClsOA_ErrMsgBackBillSub2 sb = new Models.ClsOA_ErrMsgBackBillSub2();
                        sb.HEntryID = i;
                        sb.HReceiveMan = arrStr[i - 1];
                        if (arrStr[i-1].ToString() == oItem.HSendMan)
                        if (arrStr[i - 1].ToString() == oItem.HSendMan)
                        {
                            sb.HReadFlag = true;
                        }
@@ -198,6 +203,7 @@
                            }
                        }
                    }
                    SaveOA_ErrMsgBackBillSub(msg2);//第一次保存发送钉钉
                }
                else
@@ -6590,5 +6596,57 @@
        #endregion
        #endregion
        #region å¼‚常反馈单保存后,往子表里面去插入数据
        public object SaveOA_ErrMsgBackBillSub(string msg2)
        {
             msg2 = "[" + msg2.ToString() + "]";
            List<ClsOA_ErrMsgBackBillMain> mainList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<ClsOA_ErrMsgBackBillMain>>(msg2);
            long HInterID = mainList[0].HInterID;//递入type得到的单据ID
            string HReceiveMan = mainList[0].HReceiveMan;//接收人
            string HDescription = mainList[0].HDescription;//内容
            int HEntryID = 1;
            string sql = "insert into OA_ErrMsgBackBillSub2 values('" + HInterID + "','" + HEntryID + "','" + HReceiveMan + "','0')";
            oCN.RunProcReturn(sql, "OA_ErrMsgBackBillSub2");
            //直接发送钉钉消息  s
             FistDingDingMesAsync(HReceiveMan, HDescription);
            objJsonResult.code = "0";
            objJsonResult.count = 0;
            objJsonResult.Message = "插入成功,开始执行定时任务,钉钉发送消息";
            objJsonResult.data = 1;
            return objJsonResult;
        }
        /// <summary>
        /// å¼‚常反馈单第一次保存的时候进行发送消息
        /// </summary>
        /// <param name="HReceiveMan"></param>
        /// <param name="HDescription"></param>
        public async void FistDingDingMesAsync(string HReceiveMan, string HDescription)
        {
            ds = oCN.RunProcReturn("select * from Gy_Czygl where Czymc='" + HReceiveMan + "'", "Gy_Czygl");
            string DDUserID = ds.Tables[0].Rows[0]["DDUserID"].ToString();  //钉钉用户的id
            Cls_DDMsg msg = new Cls_DDMsg();
            string appKey = "dingrsrzhdyn3mlaof95";
            string appSecret = "RAqH6YtZnPLCpDbuqfaYQkKkVtVdS0wqfC8I26X6qiS-8eoCJCNrzx3fubGND4Sq";
            //获取企业的access_token的值
            string response = msg.GetAccessToken(appKey, appSecret);
            JObject responseJson = JObject.Parse(response);
            // èŽ·å–access_token的值
            string accessToken = responseJson["accessToken"].ToString();
            //调用方法发送消息
            string agentId = "3118119317";  //企业内部小程序id
            string deptIdList = "0"; // ç©ºå­—符串表示不指定部门
            string toAllUser = "false";
            string message = HDescription;//异常反馈单的内容
            response = await msg.SendTextMessage(accessToken, agentId, DDUserID, deptIdList, toAllUser, message);
            Console.WriteLine($"初始消息发送结果: {response}");
        }
        #endregion
    }
}
WebAPI/Controllers/Sc_MouldRepairInBillListController.cs
@@ -5585,6 +5585,142 @@
        }
        #endregion
        #region æ¨¡å…·ä¿å…»è®°å½•表 ä¿å­˜/编辑PDA
        /// <summary>
        /// ä¿å­˜æ¨¡å…·ç»´ä¿®å•
        /// </summary>
        /// <param name="msg"></param>
        /// <returns></returns>
        [Route("Sc_MouldMaintainBill/SaveGetMouldMaintainBillListPDA")]
        [HttpPost]
        public object SaveGetMouldMaintainBillListPDA([FromBody] JObject msg)
        {
            var _value = msg["msg"].ToString();
            string msg1 = _value.ToString();
            string[] sArray = msg1.Split(new string[] { ";" }, StringSplitOptions.RemoveEmptyEntries);
            string msg2 = sArray[0].ToString();
            string msg3 = sArray[1].ToString();
            string msg5 = sArray[2].ToString();
            string UserName = "";
            ListModels oListModels = new ListModels();
            try
            {
                if (!DBUtility.ClsPub.Security_Log("Sc_MouldMaintainBill_Edit", 1, false, msg5))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无保存权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                DAL.ClsSc_MouldMaintainBill oBill = new DAL.ClsSc_MouldMaintainBill();
                List<Model.ClsSc_MouldMaintainBillMain> lsmain = new List<Model.ClsSc_MouldMaintainBillMain>();
                msg2 = msg2.Replace("\\", "");
                msg2 = msg2.Replace("\n", "");  //\n
                lsmain = oListModels.getObjectByJson_Sc_MouldMaintainBillMain(msg2);
                foreach (Model.ClsSc_MouldMaintainBillMain oItem in lsmain)
                {
                    UserName = oItem.HMaker;  //制单人
                    DBUtility.ClsPub.CurUserName = UserName;
                    oItem.HBillType = "3819";
                    oItem.HBillSubType = "3819";
                    //oItem.HInterID =0;
                    //oItem.HBillNo = "";
                    oItem.HDate = DBUtility.ClsPub.isDate(DateTime.Now.ToString("yyyy-MM-dd"));//  --日期
                    oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
                    //oItem.HMakeDate = "";
                    //oItem.HYear = "";
                    //oItem.HPeriod = "";
                    //oItem.HRemark = "";
                    //oItem.HCycleUnit = "";
                    //oItem.HCheckCycle = "";
                    //oItem.HBeginDate = "";
                    //oItem.HEndDate = "";
                    //oItem.HInnerBillNo = "";
                    //oItem.HExplanation = "";
                    //oItem.HInterID = DBUtility.ClsPub.CreateBillID_SRMProd("1103", ref DBUtility.ClsPub.sExeReturnInfo);
                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "保存失败!没有单据日期,无法保存!";
                        objJsonResult.data = 1;
                        return objJsonResult;
                    }
                    oBill.omodel = oItem;
                }
                //保养项表体数据
                //按 },{来拆分数组 //去掉【和】
                msg3 = msg3.Substring(1, msg3.Length - 2);
                msg3 = msg3.Replace("\\", "");
                msg3 = msg3.Replace("\n", "");  //\n
                //msg2 = msg2.Replace("'", "’");
                List<Model.ClsSc_MouldMaintainRuleBillSub_Item> ls = new List<Model.ClsSc_MouldMaintainRuleBillSub_Item>();
                ls = oListModels.getObjectByJson_Sc_MouldMaintainRuleBillSub_Item(msg3);
                int i = 0;
                foreach (Model.ClsSc_MouldMaintainRuleBillSub_Item oItemSub in ls)
                {
                    i++;
                    oItemSub.HEntryID = i;
                    //oItemSub.HCloseMan = "";       //行关闭
                    oItemSub.HEntryCloseDate = DBUtility.ClsPub.isDate(DateTime.Now);
                    oItemSub.HCloseType = false;   //关闭类型
                    //oItemSub.HRemark = "";         //备注
                    oItemSub.HSourceInterID = 0;     // æºå•主内码
                    oItemSub.HSourceEntryID = 0;   //源单子内码
                    //oItemSub.HSourceBillNo = "";  //源单单号
                    //oItemSub.HSourceBillType = ""; //源单类型
                    oItemSub.HRelationQty = 0;     //关联数量
                    oBill.DetailCol.Add(oItemSub);
                }
                //保存
                //保存完毕后处理
                bool bResult;
                if (oBill.omodel.HInterID == 0)
                {
                    // bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                    bResult = oBill.AddBill(ref DBUtility.ClsPub.sExeReturnInfo);
                }
                else
                {
                    bResult = oBill.ModifyBill(oBill.omodel.HInterID, ref DBUtility.ClsPub.sExeReturnInfo);
                }
                if (bResult)
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 1;
                    objJsonResult.Message = "保存成功!";
                    //WebAPIController.Add_Log("送货单下推", UserName, "生成送货单");
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
                else
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "保存失败!" + DBUtility.ClsPub.sExeReturnInfo;
                    objJsonResult.data = 1;
                    return objJsonResult;
                }
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "保存失败!" + e.ToString();
                objJsonResult.data = 1;
                return objJsonResult;
            }
        }
        #endregion
        #region[模具保养记录表编辑时获取表头数据]
        [Route("Sc_MouldMaintainBill/Sc_MouldMaintainBillListCheckDetai")]
        [HttpGet]
WebAPI/Controllers/WebAPIController.cs
@@ -119,7 +119,7 @@
                    //----------创建虚表------------------------
                    DataTable dt_Main = new DataTable("Json");
                    dt_Main.Columns.Add("HBillNo", typeof(string));
                    dt_Main.Columns.Add("HInterID", typeof(int));
                    dt_Main.Columns.Add("HInterID", typeof(Int64));
                    //---------创建新行------------------------
                    DataRow dr_main = dt_Main.NewRow();//创建新行 
                    dt_Main.Rows.Add(dr_main);//将新行加入到表中
@@ -12580,6 +12580,101 @@
            }
        }
        /// <summary>
        /// æ ¹æ®å™¨å…·ç‚¹æ£€è§„程显示器具点检程项目
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetDotCheckRuleItemByDotCheckRuleID/Mould")]
        [HttpGet]
        public object GetDotCheckRuleItemByDotCheckRuleIDForMould(int HDotCheckRuleInterID)
        {
            if (HDotCheckRuleInterID <= 0)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "器具点检规程未选择";
                objjson.data = null;
                return objjson;
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                string sql = string.Format(@"select * from h_v_Sc_MouldDotCheckRuleBillList_PDA where HInterID=" + HDotCheckRuleInterID);
                ds = oCN.RunProcReturn(sql, "h_v_Sc_MouldDotCheckRuleBillList_PDA");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "1";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// æ ¹æ®å™¨å…·ä¿å…»è§„程显示器具保养程项目
        /// </summary>
        /// <returns></returns>
        [Route("Web/GetMaintainItemByMaintainRuleID/Mould")]
        [HttpGet]
        public object GetMaintainItemByMaintainRuleIDForMould(int HMouldMaintainRuleInterID)
        {
            if (HMouldMaintainRuleInterID <= 0)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "器具保养规程未选择";
                objjson.data = null;
                return objjson;
            }
            try
            {
                SQLHelper.ClsCN oCN = new SQLHelper.ClsCN();
                string sql = string.Format(@"select * from h_v_Sb_MouldMaintainRuleBillList_PDA where HInterID=" + HMouldMaintainRuleInterID);
                ds = oCN.RunProcReturn(sql, "h_v_Sb_MouldMaintainRuleBillList_PDA");
                if (ds == null || ds.Tables[0].Rows.Count <= 0)
                {
                    objjson.code = "0";
                    objjson.count = 0;
                    objjson.Message = "获取失败" + DBUtility.ClsPub.sErrInfo;
                    objjson.data = null;
                    return objjson;
                }
                else
                {
                    objjson.code = "1";
                    objjson.count = 1;
                    objjson.Message = "获取成功!";
                    objjson.data = ds.Tables[0];
                    return objjson;
                }
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "获取失败" + ex.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        /// <summary>
        /// èŽ·å–ç»´ä¿®é¡¹ç›®åˆ—è¡¨
WebAPI/Controllers/²Ö´æ¹ÜÀí/ÌõÂëÉú³É/Sc_BarCodeController.cs
@@ -431,6 +431,7 @@
        public object HSourceOrderList(DataTable dt, HSouceOrderList ordrlist,string HBarCodeType) 
        {
            oSystemParameter.ShowBill(ref DBUtility.ClsPub.sExeReturnInfo);
            for (int i = 0; i < dt.Rows.Count; i++)
            {
                ordrlist.HQty = dt.Rows[i]["未生成条码数量"].ToString();
@@ -467,6 +468,17 @@
                ordrlist.HSourceName = dt.Rows[i]["生产线"].ToString();
                ordrlist.HEndDate = dt.Rows[i]["计划完工日期"].ToString();//博日 ç”Ÿäº§è®¢å• å¤±æ•ˆæ—¥æœŸ
                ordrlist.HMinQty = dt.Rows[i]["最小包装数"].ToString();
                if (oSystemParameter.omodel.WMS_CampanyName == "九菱") //系统参数  å®¢æˆ·å®šåˆ¶åŒ–名称     ç©ºç™½ä¸ºé€šç”¨
                {
                    ordrlist.HGroupID = Convert.ToInt32(dt.Rows[i]["HBeginWorkGroupID"]);
                    ordrlist.HGroupNumber = dt.Rows[i]["开工班组代码"].ToString();
                    ordrlist.HGroupName = dt.Rows[i]["开工班组名称"].ToString();
                    ordrlist.HEmpID = Convert.ToInt32(dt.Rows[i]["HBeginWorkEmpID"]);
                    ordrlist.HEmpNumber = dt.Rows[i]["开工人代码"].ToString();
                    ordrlist.HEmpName = dt.Rows[i]["开工人名称"].ToString();
                }
                if (HBarCodeType == "仪器外购件条码容器规则")
                {
                    ordrlist.HMinQty = dt.Rows[i]["未生成条码数量"].ToString();
WebAPI/Controllers/Æ·ÖʹÜÀí/Ѳ¼ìµ¥/QC_PatrolProcCheckOtherBillController.cs
@@ -139,6 +139,7 @@
                BillNew.omodel.HBillStatus = 1;
                BillNew.omodel.HShiftsID = ClsPub.isLong(mainList[0].HShiftsID);
                BillNew.omodel.HErrTreatment = ClsPub.isStrNull(mainList[0].HErrTreatment);
                BillNew.omodel.HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo);
                List<Model.ClsQC_PatrolProcCheckOtherBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_PatrolProcCheckOtherBillSub>>(msg3);
                BillNew.DetailColl = new List<Model.ClsQC_PatrolProcCheckOtherBillSub>();
                for (int i = 0; i < subList.ToArray().Length; i++)
WebAPI/Controllers/Æ·ÖʹÜÀí/¹¤Ðò¼ìÑéµ¥/QC_ProcessCheckBillController.cs
@@ -780,6 +780,7 @@
                BillNew.omodel.HProcID = ClsPub.isLong(mainList[0].HProcID);
                BillNew.omodel.HShiftsID = ClsPub.isLong(mainList[0].HShiftsID);
                BillNew.omodel.HErrTreatment = ClsPub.isStrNull(mainList[0].HErrTreatment);
                BillNew.omodel.HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo);
                List<Model.ClsQC_ProcessCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_ProcessCheckBillSub>>(msg3);
                BillNew.DetailColl = new List<Model.ClsQC_ProcessCheckBillSub>();
                for (int i = 0; i < subList.ToArray().Length; i++)
WebAPI/Controllers/Æ·ÖʹÜÀí/Ê×¼þ¼ìÑéµ¥/QC_FirstPieceCheckBillController.cs
@@ -202,6 +202,7 @@
                BillNew.omodel.HBillStatus = 1;
                BillNew.omodel.HShiftsID = ClsPub.isLong(mainList[0].HShiftsID);
                BillNew.omodel.HErrTreatment = ClsPub.isStrNull(mainList[0].HErrTreatment);
                BillNew.omodel.HBatchNo = ClsPub.isStrNull(mainList[0].HBatchNo);
                List<Model.ClsQC_FirstPieceCheckBillSub> subList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Model.ClsQC_FirstPieceCheckBillSub>>(msg3);
                BillNew.DetailColl = new List<Model.ClsQC_FirstPieceCheckBillSub>();
                for (int i = 0; i < subList.ToArray().Length; i++)
WebAPI/Controllers/»ù´¡×ÊÁÏ/»ù´¡×ÊÁÏ/Gy_DotCheckBillController.cs
@@ -337,7 +337,7 @@
            try
            {
                ds = oCN.RunProcReturn("select b.HItemID,b.HNumber,b.HName from  Gy_DotCheck a left  join gy_DotCheckItemClass b on a.HDotCheckItemClassID=b.HItemID", "Gy_DotCheck");
                ds = oCN.RunProcReturn("select HItemID,HNumber,HName from gy_DotCheckItemClass", "gy_DotCheckItemClass");
                List<TreeModel> treeModels = new List<TreeModel>();
                TreeModel first = new TreeModel();
WebAPI/Controllers/Ó¦ÊÕ¹ÜÀí/YS_ReceiveReportController.cs
@@ -20,7 +20,7 @@
        Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
        #region å®¢æˆ·åº”收账款分析报表
        #region   å®¢æˆ·åº”收账款分析报表
        /// <summary>
        /// å®¢æˆ·åº”收账款分析报表
        /// </summary>
WebAPI/Controllers/ÌõÂë¹ÜÀí/WEBSController.cs
@@ -5980,6 +5980,177 @@
        {
            try
            {
                ds = oCn.RunProcReturn("select * from Gy_BarCodeBill where HBarcode='" + HBarCode + "'", "Gy_BarCodeBill");
                if (ds.Tables[0].Rows.Count == 0) {
                    DAL.ClsGy_BarCodeBill_View dal = new DAL.ClsGy_BarCodeBill_View();
                    string sErrMsg = "";
                    oSystemParameter.ShowBill(ref sErrMsg);
                    if (oSystemParameter.omodel.WMS_CampanyName == "杭州斯莫尔")
                    {
                        if (!dal.GetInfoByNumber(HBarCode))
                        {
                            //条码解析
                            string[] str = HBarCode.Split('@');
                            if (str[0] != "CMR" && str[0] != "SRM")
                            {
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "条码解析失败,请确认条码是否正确!";
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            int HOrgIDs = 0;
                            //查询组织
                            DataSet ds = oCn.RunProcReturn("select * from Xt_ORGANIZATIONS where HNumber='" + str[1] + "' ", "Xt_ORGANIZATIONS");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "条码解析失败,请确认条码组织是否正确!";
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            else
                            {
                                HOrgIDs = int.Parse(ds.Tables[0].Rows[0]["HItemID"].ToString());
                            }
                            string HMaterNames = "";
                            string HMaterModels = "";
                            string HMaterIDs = "0";
                            //查询物料
                            ds = oCn.RunProcReturn("select  * from Gy_Material where HNumber='" + str[4] + "' and HUSEORGID=" + HOrgIDs, "Gy_Material");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                objJsonResult.code = "0";
                                objJsonResult.count = 0;
                                objJsonResult.Message = "条码解析失败,请确认条码物料是否正确!";
                                objJsonResult.data = null;
                                return objJsonResult;
                            }
                            else
                            {
                                HMaterIDs = ds.Tables[0].Rows[0]["HItemID"].ToString();
                                HMaterNames = ds.Tables[0].Rows[0]["HName"].ToString();
                                HMaterModels = ds.Tables[0].Rows[0]["HModel"].ToString();
                            }
                            string HSupIDs = "0";
                            //查询供应商
                            ds = oCn.RunProcReturn("select * from Gy_Supplier where HNumber='" + str[2] + "' and HUSEORGID=" + HOrgIDs, "Gy_Supplier");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                //sErrMsg = "条码解析失败,请确认条码供应商是否正确!";
                                //return null;
                            }
                            else
                            {
                                HSupIDs = ds.Tables[0].Rows[0]["HItemID"].ToString();
                            }
                            string HSourceInterIDs = "0";
                            string HSourceEntryIDs = "0";
                            string HSourceBillNos = "0";
                            string HUnitIDs = "0";
                            //查询采购订单
                            ds = oCn.RunProcReturn(@"select  a.HInterID,b.HEntryID,a.HBillNo,b.HUnitID from Cg_POOrderBillMain a
inner join Cg_POOrderBillSub b on a.HInterID = b.HInterID where HBillNo='" + str[3] + "' and b.HMaterID=" + HMaterIDs, "Cg_POOrderBillMain");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                //sErrMsg = "条码解析失败,请确认条码采购订单是否正确!";
                                //return null;
                            }
                            else
                            {
                                HSourceInterIDs = ds.Tables[0].Rows[0]["HInterID"].ToString();
                                HSourceEntryIDs = ds.Tables[0].Rows[0]["HEntryID"].ToString();
                                HSourceBillNos = ds.Tables[0].Rows[0]["HBillNo"].ToString();
                                HUnitIDs = ds.Tables[0].Rows[0]["HUnitID"].ToString();
                            }
                            string HInnerBillNos = "";
                            //查询内部采购订单号
                            ds = oCn.RunProcReturn(@" select * from h_v_IF_POInStockList where é‡‡è´­è®¢å•号= '" + str[3] + "' ", "h_v_IF_POInStockList");
                            if (ds.Tables[0].Rows.Count == 0)
                            {
                                //sErrMsg = "条码解析失败,请确认条码内部采购订单号是否正确!";
                                //return null;
                                HInnerBillNos = str[3];
                            }
                            else
                            {
                                HInnerBillNos = ds.Tables[0].Rows[0]["内部采购订单号"].ToString();
                            }
                            double HQty = double.Parse(str[6]);
                            //日期获取方式
                            string sDate = DateTime.Now.ToString();
                            string HWei = "0";      //尾数
                            string HBarCodeType = "批次条码";
                            Int64 HMaterID = int.Parse(HMaterIDs);
                            Int64 HAuxPropID = 0;
                            Int64 HUnitID = int.Parse(HUnitIDs);
                            double HQty2 = HQty;
                            string HBatchNo2 = str[5];
                            Int64 HSupID = int.Parse(HSupIDs);
                            Int64 HGroupID = 0;
                            int HPrintQty = 0;
                            Int64 HSourceInterID = int.Parse(HSourceInterIDs);
                            Int64 HSourceEntryID = int.Parse(HSourceEntryIDs);
                            string HSourceBillNo = HSourceBillNos;
                            //HSourceBillType = "1102";
                            Int64 HBarcodeNo = 0;       //托号
                            Int64 HBarcodeQtys = 0;     //总托数
                            Int64 HDeptID = 0;
                            //Int64 HWhID = 0;
                            //Int64 HSPID = 0;
                            string HRemark = "条码解析";
                            string HMaterName = HMaterNames;
                            string HMaterModel = HMaterModels;
                            string HPinfan = "";
                            string HMTONo = "";
                            Int64 HCusID = 0;
                            string HCusType = "";
                            DateTime HEndDate = DateTime.Now;
                            string HWorkLineName = "";
                            string HSeOrderBillNo = "";
                            string HInnerBillNo = HInnerBillNos;
                            bool HGiveAwayFlag = false;
                            Int64 HEntryID = 1;
                            Int64 HInterIDs = DBUtility.ClsPub.CreateBillID_Prod("85", ref DBUtility.ClsPub.sExeReturnInfo);
                            int HOrgID = HOrgIDs;
                            string HSourceBillType = "";
                            oCn.RunProc("insert into Gy_BarCodeBill (HBarCode,HBarCodeType,HMaterID,HUnitID,HQty" +
                                               ",HBatchNo,HSupID,HGroupID,HMaker,HMakeDate,HPrintQty,HinitQty" +
                                               ",HSourceInterID,HSourceEntryID,HSourceBillNo,HSourceBillType,HEndQty " +
                                               ",HBarcodeQtys,HBarcodeNo,HDeptID,HWhID,HSPID,HRemark " +
                                               ",HCusID,HCusType,HEndDate,HWorkLineName,HBarCodeDate " +
                                               ",HSTOCKORGID,HOWNERID,HSeOrderBillNo,HInterID,HEntryID " +
                                               ",HGiveAwayFlag " +
                                               ",HMaterName,HMaterModel,HPinfan,HAuxPropID,HMTONo,HInnerBillNo" +
                                               ",HProduceDate,HExpiryDate " +
                                               ") values ("
                                               + "'" + HBarCode + "','" + HBarCodeType + "'," + HMaterID.ToString() + "," + HUnitID.ToString() + "," + HQty2.ToString()
                                               + ",'" + HBatchNo2 + "'," + HSupID.ToString() + "," + HGroupID.ToString() + ",'',getdate()," + HPrintQty.ToString() + "," + HQty2.ToString()
                                               + ", " + HSourceInterID.ToString() + "," + HSourceEntryID.ToString() + ",'" + HSourceBillNo + "','" + HSourceBillType + "','" + HWei + "'"
                                               + ", " + HBarcodeQtys.ToString() + "," + HBarcodeNo.ToString() + "," + HDeptID.ToString() + ",0,0,'" + HRemark + "'"
                                               + ", " + HCusID.ToString() + ",'" + HCusType + "','" + HEndDate.ToShortDateString() + "','" + HWorkLineName + "','" + sDate + "'"
                                               + ", " + HOrgID.ToString() + "," + HOrgID.ToString() + ",'" + HSeOrderBillNo + "'," + HInterIDs.ToString() + "," + HEntryID.ToString() + ""
                                               + ", " + DBUtility.ClsPub.BoolToString(HGiveAwayFlag)
                                               + ",'" + HMaterName + "','" + HMaterModel + "','" + HPinfan + "'," + HAuxPropID.ToString() + ",'" + HMTONo + "','" + HInnerBillNo + "','','')");
                        }
                    }
                }
                ds = oCn.RunProcReturn("exec h_p_WMS_AddBarCode_MaterToSource " + HInterID.ToString() + ",'" + HBillNo + "','" + HBillType + "','" + HBarCode + "','" + HMaker + "'", "h_p_WMS_AddBarCode_MaterToSource");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
WebAPI/Controllers/Éú²ú¹ÜÀí/ÖÊÁ¿»ã±¨µ¥/Sc_QualityReportBillController.cs
@@ -631,7 +631,7 @@
        #region æäº¤ä¿å­˜ï¼Œå­˜ä¸»å­è¡¨åŠæ˜Žç»†è¡¨
        [Route("Sc_QualityReportBill/set_SaveBill")]
        [HttpGet]
        public object set_SaveBill(long HInterID,string HBillNo, string HChecker)
        public object set_SaveBill(long HInterID,string HBillNo, string HChecker,string HBadReasonHQty)
        {
            try
            {
@@ -659,7 +659,7 @@
                }
                //=========================================================
                //保存
                oCN.RunProc("exec h_p_save_Sc_QualityReportBill " + HInterID);
                oCN.RunProc("exec h_p_save_Sc_QualityReportBill " + HInterID+",'"+ HBadReasonHQty +"'");
                //判断是否允许保存,不允许则回滚
                ds = oCN.RunProcReturn("exec h_p_JIT_ICMOBillQualityStatus_SaveCtrl", "h_p_JIT_ICMOBillQualityStatus_SaveCtrl");
                if (ClsPub.isStrNull(ds.Tables[0].Rows[0]["HBack"]) == "2")
@@ -1613,5 +1613,60 @@
            }
        }
        #endregion
        #region ç”Ÿäº§è´¨é‡æ—¥æ±‡æŠ¥å•列表 æŸ¥è¯¢
        public class ReportWorkDemandPlanBill
        {
            public string HNumber;
            public string HName;
            public DateTime HBeginDate;
            public DateTime HEndDate;
        }
        [Route("Sc_QualityReportBill/getSc_QualityReportBillDay")]
        [HttpGet]
        public object getSc_QualityReportBillDay(string sWhere, string user)
        {
            try
            {
                List<object> columnNameList = new List<object>();
                //查看权限
                if (!DBUtility.ClsPub.Security_Log("Sc_QualityReportBill_Query", 1, false, user))
                {
                    objJsonResult.code = "0";
                    objJsonResult.count = 0;
                    objJsonResult.Message = "无查看权限!";
                    objJsonResult.data = null;
                    return objJsonResult;
                }
                ReportWorkDemandPlanBill Report = JsonConvert.DeserializeObject<ReportWorkDemandPlanBill>(sWhere);
                ds = oCN.RunProcReturn($"exec h_p_Sc_StationOutBillMain  '{Report.HBeginDate}','{Report.HEndDate}','{Report.HNumber}','{Report.HName}'", "h_p_Sc_StationOutBillMain");
                //添加列名
                foreach (DataColumn col in ds.Tables[0].Columns)
                {
                    Type dataType = col.DataType;
                    string ColmString = "{\"ColmCols\":\"" + col.ColumnName + "\",\"ColmType\":\"" + dataType.Name + "\"}";
                    columnNameList.Add(JsonConvert.DeserializeObject(ColmString));//获取到DataColumn列对象的列名
                }
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "Sucess!";
                objJsonResult.data = ds.Tables[0];
                objJsonResult.list = columnNameList;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        #endregion
    }
}
WebAPI/DLL/¶¤¶¤ÏûÏ¢/Cls_DDMsg.cs
New file
@@ -0,0 +1,75 @@
using System;
using System.IO;
using System.Net;
using System.Net.Http;
using System.Text;
using System.Threading.Tasks;
namespace DLL
{
    public class Cls_DDMsg
    {
        private HttpClient _client;
        private string _baseUrl;
        //获取企业的accessToken
        public string GetAccessToken(string appKey, string appSecret)
        {
            string url = "https://api.dingtalk.com/v1.0/oauth2/accessToken";
            string postData = "{\"appKey\":\"" + appKey + "\", \"appSecret\":\"" + appSecret + "\"}";
            byte[] byteArray = Encoding.UTF8.GetBytes(postData);
            WebRequest request = WebRequest.Create(url);
            request.Method = "POST";
            request.ContentType = "application/json";
            request.ContentLength = byteArray.Length;
            using (Stream dataStream = request.GetRequestStream())
            {
                dataStream.Write(byteArray, 0, byteArray.Length);
            }
            using (WebResponse response = request.GetResponse())
            using (Stream responseStream = response.GetResponseStream())
            using (StreamReader reader = new StreamReader(responseStream))
            {
                string responseString = reader.ReadToEnd();
                return responseString;
            }
        }
        //发送工作通知
        public async Task<string> SendTextMessage(string accessToken, string agentId, string userIdList, string deptIdList, string toAllUser, string message)
        {
            try
            {
                _client = new HttpClient();
                _baseUrl = "https://oapi.dingtalk.com/topapi/message/corpconversation/asyncsend_v2";
                string url = $"{_baseUrl}?access_token={accessToken}";
                DateTimeOffset now = DateTimeOffset.Now;
                string currentTime = now.ToString("yyyy-MM-dd HH:mm:ss");
                string messageWithTimestamp = $"{currentTime}-{message}"; // åœ¨æ¶ˆæ¯å†…容之前添加时间戳
                string messageJson = $"{{\"msgtype\": \"text\", \"text\": {{ \"content\": \"{messageWithTimestamp}\" }} }}";
                string requestBody = $"agent_id={agentId}&userid_list={userIdList}&dept_id_list={deptIdList}&to_all_user={toAllUser}&msg={messageJson}";
                HttpResponseMessage response = await _client.PostAsync(url, new StringContent(requestBody, Encoding.UTF8, "application/x-www-form-urlencoded"));
                if (response.IsSuccessStatusCode)
                {
                    return await response.Content.ReadAsStringAsync();
                }
                else
                {
                    return $"Failed to send message. Status code: {response.StatusCode}";
                }
            }
            catch (Exception ex)
            {
                return "An error occurred: " + ex.Message;
            }
        }
    }
}
WebAPI/Models/StationBill.cs
@@ -85,6 +85,8 @@
        public double HWasterQty_Work { get; set; }
        public double HWasterQty_Mater { get; set; }
        public double HBackWorkQty { get; set; }
        public double HToCheckQty { get; set; }
        public double HLossQty { get; set; }
        public Int64 HShiftsID { get; set; }
    }
}
WebAPI/Properties/PublishProfiles/FolderProfile12.pubxml.user
@@ -4,12 +4,39 @@
-->
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <History>True|2024-06-18T08:08:52.3066991Z;True|2024-06-18T14:08:42.6969999+08:00;True|2024-06-17T13:22:25.8401219+08:00;True|2024-06-17T11:27:09.9223091+08:00;True|2024-06-17T11:23:37.5133763+08:00;True|2024-06-17T10:58:43.2727797+08:00;True|2024-06-14T13:32:57.5800980+08:00;False|2024-06-13T10:45:10.1375417+08:00;False|2024-06-13T10:43:52.8804222+08:00;</History>
    <History>True|2024-06-25T04:30:32.4272933Z;True|2024-06-25T09:53:35.8089888+08:00;True|2024-06-25T09:50:45.0788666+08:00;True|2024-06-25T09:46:08.5825317+08:00;True|2024-06-25T09:44:17.5984285+08:00;True|2024-06-25T09:40:23.4977167+08:00;True|2024-06-25T09:37:55.3516214+08:00;True|2024-06-25T09:34:57.0498926+08:00;True|2024-06-24T23:22:12.1756387+08:00;True|2024-06-24T23:15:13.9995277+08:00;True|2024-06-24T23:05:20.8658324+08:00;True|2024-06-24T22:59:59.2842726+08:00;True|2024-06-24T16:29:08.9135923+08:00;True|2024-06-24T15:44:19.8100242+08:00;True|2024-06-18T16:08:52.3066991+08:00;True|2024-06-18T14:08:42.6969999+08:00;True|2024-06-17T13:22:25.8401219+08:00;True|2024-06-17T11:27:09.9223091+08:00;True|2024-06-17T11:23:37.5133763+08:00;True|2024-06-17T10:58:43.2727797+08:00;True|2024-06-14T13:32:57.5800980+08:00;False|2024-06-13T10:45:10.1375417+08:00;False|2024-06-13T10:43:52.8804222+08:00;</History>
    <_PublishTargetUrl>D:\网站发布\智云MESWMS\API</_PublishTargetUrl>
  </PropertyGroup>
  <ItemGroup>
    <File Include="apiapp.json">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="bin/AlibabaCloud.EndpointUtil.dll">
      <publishTime>04/07/2020 16:33:48</publishTime>
    </File>
    <File Include="bin/AlibabaCloud.GatewayDingTalk.dll">
      <publishTime>04/25/2023 17:49:04</publishTime>
    </File>
    <File Include="bin/AlibabaCloud.GatewaySpi.dll">
      <publishTime>07/26/2022 20:39:50</publishTime>
    </File>
    <File Include="bin/AlibabaCloud.OpenApiClient.dll">
      <publishTime>05/14/2024 12:47:20</publishTime>
    </File>
    <File Include="bin/AlibabaCloud.OpenApiUtil.dll">
      <publishTime>11/22/2022 11:24:18</publishTime>
    </File>
    <File Include="bin/AlibabaCloud.SDK.Dingtalk.dll">
      <publishTime>06/20/2024 11:03:14</publishTime>
    </File>
    <File Include="bin/AlibabaCloud.TeaUtil.dll">
      <publishTime>05/13/2024 10:17:22</publishTime>
    </File>
    <File Include="bin/AlibabaCloud.TeaXML.dll">
      <publishTime>08/03/2022 21:46:08</publishTime>
    </File>
    <File Include="bin/Aliyun.Credentials.dll">
      <publishTime>12/05/2022 15:40:12</publishTime>
    </File>
    <File Include="bin/Antlr3.Runtime.dll">
      <publishTime>02/22/2013 16:43:40</publishTime>
@@ -18,28 +45,28 @@
      <publishTime>02/22/2013 16:43:40</publishTime>
    </File>
    <File Include="bin/BLL.dll">
      <publishTime>06/18/2024 16:08:23</publishTime>
      <publishTime>06/25/2024 12:30:16</publishTime>
    </File>
    <File Include="bin/BLL.pdb">
      <publishTime>06/18/2024 16:08:23</publishTime>
      <publishTime>06/25/2024 12:30:16</publishTime>
    </File>
    <File Include="bin/BouncyCastle.Crypto.dll">
      <publishTime>12/18/2020 05:32:28</publishTime>
    </File>
    <File Include="bin/DAL.dll">
      <publishTime>06/18/2024 16:08:22</publishTime>
      <publishTime>06/25/2024 12:30:15</publishTime>
    </File>
    <File Include="bin/DAL.pdb">
      <publishTime>06/18/2024 16:08:22</publishTime>
      <publishTime>06/25/2024 12:30:15</publishTime>
    </File>
    <File Include="bin/Dapper.dll">
      <publishTime>07/22/2016 22:52:40</publishTime>
    </File>
    <File Include="bin/DBUtility.dll">
      <publishTime>06/18/2024 16:08:19</publishTime>
      <publishTime>06/25/2024 12:30:13</publishTime>
    </File>
    <File Include="bin/DBUtility.pdb">
      <publishTime>06/18/2024 16:08:19</publishTime>
      <publishTime>06/25/2024 12:30:13</publishTime>
    </File>
    <File Include="bin/Grpc.Core.Api.dll">
      <publishTime>03/22/2022 13:17:26</publishTime>
@@ -84,16 +111,16 @@
      <publishTime>07/25/2012 19:48:56</publishTime>
    </File>
    <File Include="bin/Model.dll">
      <publishTime>06/18/2024 16:08:20</publishTime>
      <publishTime>06/25/2024 12:30:13</publishTime>
    </File>
    <File Include="bin/Model.pdb">
      <publishTime>06/18/2024 16:08:20</publishTime>
      <publishTime>06/25/2024 12:30:13</publishTime>
    </File>
    <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="bin/Newtonsoft.Json.dll">
      <publishTime>08/04/2014 04:33:56</publishTime>
      <publishTime>09/07/2014 18:39:38</publishTime>
    </File>
    <File Include="bin/NPOI.dll">
      <publishTime>10/23/2021 09:07:54</publishTime>
@@ -120,25 +147,25 @@
      <publishTime>10/23/2021 17:07:54</publishTime>
    </File>
    <File Include="bin/Pub_Class.dll">
      <publishTime>06/18/2024 16:08:17</publishTime>
      <publishTime>06/25/2024 12:30:11</publishTime>
    </File>
    <File Include="bin/Pub_Class.pdb">
      <publishTime>06/18/2024 16:08:17</publishTime>
      <publishTime>06/25/2024 12:30:11</publishTime>
    </File>
    <File Include="bin/Pub_Control.dll">
      <publishTime>06/18/2024 16:08:19</publishTime>
      <publishTime>06/25/2024 12:30:12</publishTime>
    </File>
    <File Include="bin/Pub_Control.pdb">
      <publishTime>06/18/2024 16:08:19</publishTime>
      <publishTime>06/25/2024 12:30:12</publishTime>
    </File>
    <File Include="bin/RestSharp.dll">
      <publishTime>08/31/2012 06:22:50</publishTime>
    </File>
    <File Include="bin/SQLHelper.dll">
      <publishTime>06/18/2024 16:08:19</publishTime>
      <publishTime>06/25/2024 12:30:12</publishTime>
    </File>
    <File Include="bin/SQLHelper.pdb">
      <publishTime>06/18/2024 16:08:19</publishTime>
      <publishTime>06/25/2024 12:30:12</publishTime>
    </File>
    <File Include="bin/Swashbuckle.Core.dll">
      <publishTime>02/16/2015 01:57:08</publishTime>
@@ -176,8 +203,14 @@
    <File Include="bin/System.Net.Http.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/System.Net.Http.Extensions.dll">
      <publishTime>02/20/2015 04:10:46</publishTime>
    </File>
    <File Include="bin/System.Net.Http.Formatting.dll">
      <publishTime>11/28/2018 21:00:36</publishTime>
    </File>
    <File Include="bin/System.Net.Http.Primitives.dll">
      <publishTime>02/20/2015 04:10:46</publishTime>
    </File>
    <File Include="bin/System.Runtime.CompilerServices.Unsafe.dll">
      <publishTime>09/19/2018 03:38:10</publishTime>
@@ -242,14 +275,17 @@
    <File Include="bin/System.Xml.Linq.dll">
      <publishTime>09/26/2012 03:16:08</publishTime>
    </File>
    <File Include="bin/Tea.dll">
      <publishTime>04/18/2023 12:14:54</publishTime>
    </File>
    <File Include="bin/WebActivatorEx.dll">
      <publishTime>11/24/2014 19:18:48</publishTime>
    </File>
    <File Include="bin/WebAPI.dll">
      <publishTime>06/18/2024 16:08:27</publishTime>
      <publishTime>06/25/2024 12:30:22</publishTime>
    </File>
    <File Include="bin/WebAPI.pdb">
      <publishTime>06/18/2024 16:08:27</publishTime>
      <publishTime>06/25/2024 12:30:22</publishTime>
    </File>
    <File Include="bin/WebGrease.dll">
      <publishTime>07/18/2013 01:03:52</publishTime>
@@ -336,7 +372,7 @@
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="packages.config">
      <publishTime>05/25/2024 09:46:41</publishTime>
      <publishTime>06/25/2024 09:50:21</publishTime>
    </File>
    <File Include="Views/Scripts/bootstrap.js">
      <publishTime>05/25/2024 09:46:41</publishTime>
@@ -444,7 +480,7 @@
      <publishTime>05/25/2024 09:46:41</publishTime>
    </File>
    <File Include="Web.config">
      <publishTime>06/18/2024 16:08:51</publishTime>
      <publishTime>06/25/2024 12:30:31</publishTime>
    </File>
  </ItemGroup>
</Project>
WebAPI/WebAPI.csproj
@@ -46,6 +46,9 @@
    <Prefer32Bit>false</Prefer32Bit>
  </PropertyGroup>
  <ItemGroup>
    <Reference Include="Aliyun.Credentials, Version=1.3.2.0, Culture=neutral, processorArchitecture=MSIL">
      <HintPath>..\packages\Aliyun.Credentials.1.3.2\lib\net45\Aliyun.Credentials.dll</HintPath>
    </Reference>
    <Reference Include="Antlr3.Runtime, Version=3.4.1.9004, Culture=neutral, PublicKeyToken=eb42632606e9261f, processorArchitecture=MSIL">
      <HintPath>..\packages\Antlr.3.4.1.9004\lib\Antlr3.Runtime.dll</HintPath>
      <Private>True</Private>
@@ -81,8 +84,7 @@
      <Private>True</Private>
    </Reference>
    <Reference Include="Newtonsoft.Json, Version=6.0.0.0, Culture=neutral, PublicKeyToken=30ad4fe6b2a6aeed, processorArchitecture=MSIL">
      <SpecificVersion>False</SpecificVersion>
      <HintPath>..\packages\Newtonsoft.Json.6.0.4\lib\net45\Newtonsoft.Json.dll</HintPath>
      <HintPath>..\packages\Newtonsoft.Json.6.0.5\lib\net45\Newtonsoft.Json.dll</HintPath>
    </Reference>
    <Reference Include="NPOI, Version=2.5.5.0, Culture=neutral, PublicKeyToken=0df73ec7942b34e1, processorArchitecture=MSIL">
      <HintPath>..\packages\NPOI.2.5.5\lib\net45\NPOI.dll</HintPath>
@@ -119,15 +121,23 @@
    <Reference Include="System.Net.Http">
      <Private>True</Private>
    </Reference>
    <Reference Include="System.Net.Http.Extensions, Version=2.2.29.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>..\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Extensions.dll</HintPath>
    </Reference>
    <Reference Include="System.Net.Http.Formatting, Version=5.2.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
      <HintPath>..\packages\Microsoft.AspNet.WebApi.Client.5.2.7\lib\net45\System.Net.Http.Formatting.dll</HintPath>
    </Reference>
    <Reference Include="System.Net.Http.Primitives, Version=4.2.29.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>..\packages\Microsoft.Net.Http.2.2.29\lib\net45\System.Net.Http.Primitives.dll</HintPath>
    </Reference>
    <Reference Include="System.Net.Http.WebRequest" />
    <Reference Include="System.Runtime.CompilerServices.Unsafe, Version=4.0.4.1, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a, processorArchitecture=MSIL">
      <HintPath>..\packages\System.Runtime.CompilerServices.Unsafe.4.5.2\lib\netstandard1.0\System.Runtime.CompilerServices.Unsafe.dll</HintPath>
    </Reference>
    <Reference Include="System.Runtime.Serialization">
      <Private>True</Private>
    </Reference>
    <Reference Include="System.Security" />
    <Reference Include="System.ServiceModel" />
    <Reference Include="System.Web.Cors, Version=5.2.7.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35, processorArchitecture=MSIL">
      <HintPath>..\packages\Microsoft.AspNet.Cors.5.2.7\lib\net45\System.Web.Cors.dll</HintPath>
@@ -731,6 +741,7 @@
    <Compile Include="DLL\工资管理\ClsPay_GroupBalBill.cs" />
    <Compile Include="DLL\工资管理\ClsGy_GroupEmpBill.cs" />
    <Compile Include="DLL\工资管理\ClsPay_WorkTimesBill.cs" />
    <Compile Include="DLL\钉钉消息\Cls_DDMsg.cs" />
    <Compile Include="HttpClient.cs" />
    <Compile Include="InvokeHelper.cs" />
    <Compile Include="Log.cs" />
@@ -1230,6 +1241,11 @@
    </PropertyGroup>
    <Error Condition="!Exists('..\packages\Grpc.Core.2.45.0\build\net45\Grpc.Core.targets')" Text="$([System.String]::Format('$(ErrorText)', '..\packages\Grpc.Core.2.45.0\build\net45\Grpc.Core.targets'))" />
  </Target>
  <Import Project="..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets" Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" />
  <Target Name="EnsureBclBuildImported" BeforeTargets="BeforeBuild" Condition="'$(BclBuildImported)' == ''">
    <Error Condition="!Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" Text="This project references NuGet package(s) that are missing on this computer. Enable NuGet Package Restore to download them.  For more information, see http://go.microsoft.com/fwlink/?LinkID=317567." HelpKeyword="BCLBUILD2001" />
    <Error Condition="Exists('..\packages\Microsoft.Bcl.Build.1.0.14\tools\Microsoft.Bcl.Build.targets')" Text="The build restored NuGet packages. Build the project again to include these packages in the build. For more information, see http://go.microsoft.com/fwlink/?LinkID=317568." HelpKeyword="BCLBUILD2002" />
  </Target>
  <!-- To modify your build process, add your task inside one of the targets below and uncomment it. 
       Other similar extension points exist, see Microsoft.Common.targets.
  <Target Name="BeforeBuild">
WebAPI/packages.config
@@ -24,7 +24,7 @@
  <package id="Microsoft.jQuery.Unobtrusive.Validation" version="3.2.3" targetFramework="net45" />
  <package id="Microsoft.Web.Infrastructure" version="1.0.0.0" targetFramework="net45" />
  <package id="Modernizr" version="2.6.2" targetFramework="net45" />
  <package id="Newtonsoft.Json" version="6.0.4" targetFramework="net45" />
  <package id="Newtonsoft.Json" version="6.0.5" targetFramework="net45" />
  <package id="NPOI" version="2.5.5" targetFramework="net45" />
  <package id="Portable.BouncyCastle" version="1.8.9" targetFramework="net45" />
  <package id="RestSharp" version="104.0" targetFramework="net45" />