chenhaozhe
2026-02-11 c41e17e84cfad582ed8ecba6e4c1e0b6a5c9a31b
调整 派工单 首检单 下推 工作联系单 后 推送消息的方法
35个文件已修改
218 ■■■■ 已修改文件
BLL/bin/Release/BLL.dll 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/BLL.pdb 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/DAL.dll 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/DAL.pdb 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/DAL.dll 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/DAL.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
DAL/bin/Release/Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
DAL/生产管理/模具管理/ClsSc_MouldConkBookBill.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
Model/bin/Release/Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Model/obj/Release/Model.csproj.AssemblyReference.cache 补丁 | 查看 | 原始文档 | blame | 历史
Model/obj/Release/Model.dll 补丁 | 查看 | 原始文档 | blame | 历史
Model/obj/Release/Model.pdb 补丁 | 查看 | 原始文档 | blame | 历史
Model/生产管理/模具管理/ClsSc_MouldConkBookBillMain.cs 2 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
Model/生产管理/设备管理/ClsSb_EquipConkBookBillMain.cs 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/BaseSet/Gy_ConkTypeController.cs 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/LMESController.cs 35 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/SBGL/Sb_EquipRepairSendWorkBillController.cs 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/Sb_CheckEqpRepairWorkBillController.cs 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/Sc_MouldRepairInBillListController.cs 12 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/WebAPIController.cs 3 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/品质管理/首件检验单/QC_FirstPieceCheckBillController.cs 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/条码管理/WEBSController.cs 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/DLL/ClsSb_EquipConkBookBill.cs 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Properties/PublishProfiles/FolderProfile4.pubxml.user 20 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Service/GeTuiService.cs 19 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Service/WebSocketServer.cs 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/WebAPI.csproj.user 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/bin/Debug/TopSdk.dll 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/bin/Debug/TopSdk.pdb 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Debug/TopSdk.dll 补丁 | 查看 | 原始文档 | blame | 历史
sdk_dingding/TopSdk/obj/Debug/TopSdk.pdb 补丁 | 查看 | 原始文档 | blame | 历史
BLL/bin/Release/BLL.dll
Binary files differ
BLL/bin/Release/BLL.pdb
Binary files differ
BLL/bin/Release/DAL.dll
Binary files differ
BLL/bin/Release/DAL.pdb
Binary files differ
BLL/bin/Release/Model.dll
Binary files differ
BLL/bin/Release/Model.pdb
Binary files differ
DAL/bin/Release/DAL.dll
Binary files differ
DAL/bin/Release/DAL.pdb
Binary files differ
DAL/bin/Release/Model.dll
Binary files differ
DAL/bin/Release/Model.pdb
Binary files differ
DAL/Éú²ú¹ÜÀí/Ä£¾ß¹ÜÀí/ClsSc_MouldConkBookBill.cs
@@ -190,14 +190,14 @@
                ",HYear,HPeriod,HRemark" +
                ",HMouldID,HConkTypeID,HConkBeginDate,HEndDate"+
                ",HEmpID,HManagerID,HDeptID"+
                ",HInnerBillNo,HExplanation" +
                ",HInnerBillNo,HExplanation, HRepairManID" +
                ") " +
                " 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.HMouldID.ToString() + "," + omodel.HConkTypeID.ToString() + ",'" + omodel.HConkBeginDate + "','" + omodel.HEndDate + "'"+
                "," + omodel.HEmpID.ToString() + "," + omodel.HManagerID.ToString() + "," + omodel.HDeptID.ToString() + 
                ",'" + omodel.HInnerBillNo + "','" + omodel.HExplanation + "'" +
                ") ");
                $",{omodel.HRepairManID}) ");
                //插入子表
                foreach (Model.ClsSc_MouldConkBookBillSub oSub in DetailColl)
                {
Model/bin/Release/Model.dll
Binary files differ
Model/bin/Release/Model.pdb
Binary files differ
Model/obj/Release/Model.csproj.AssemblyReference.cache
Binary files differ
Model/obj/Release/Model.dll
Binary files differ
Model/obj/Release/Model.pdb
Binary files differ
Model/Éú²ú¹ÜÀí/Ä£¾ß¹ÜÀí/ClsSc_MouldConkBookBillMain.cs
@@ -18,5 +18,7 @@
        public string HExplanation;//    varchar(500)   --故障描述 
        public string HInnerBillNo;//   varchar(50)    --内部单据号 
        public long HRepairManID; // -- ç»´ä¿®äºº
    }
}
Model/Éú²ú¹ÜÀí/É豸¹ÜÀí/ClsSb_EquipConkBookBillMain.cs
@@ -19,5 +19,8 @@
        public string HLev;     // --紧急程度( ç´§æ€¥ï¼Œæ™®é€šï¼‰ 
        public string HReason;  //varchar(200) --故障原因分析及预防措施 
        public Int64 HRepairManID;
    }
}
WebAPI/Controllers/BaseSet/Gy_ConkTypeController.cs
@@ -539,6 +539,63 @@
            }
        }
        [Route("Gy_ConkType/List_PDA2")]
        [HttpGet]
        public object List_PDA(string sWhere, string user, string Mode)
        {
            if (string.IsNullOrWhiteSpace(Mode))
            {
                return List_PDA(sWhere, user);
            }
            try
            {
                string errRef = "";
                List<object> columnNameList = new List<object>();
                if(oClsXt_SystemParameter.ShowBill(ref errRef))
                {
                    if(oClsXt_SystemParameter.omodel.WMS_CampanyName == "华舟")
                    {
                        if(Mode == "Module")
                        {
                            sWhere += $" and æ•…障类别代码 like 'MJ%' ";
                        }
                        else if (Mode == "Equip")
                        {
                            sWhere += $" and æ•…障类别代码 like 'SB%' ";
                        }
                    }
                }
                sWhere += $" and ç¦ç”¨æ ‡å¿—='' ";
                LogService.Write(sWhere);
                string sql1 = string.Format(@"select * from h_v_Gy_ConkTypeList where 1=1 ");
                ds = oCN.RunProcReturn(sql1 + sWhere + " order by æ•…障类别代码 ", "h_v_Gy_ConkTypeList");
                //添加列名
                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;
            }
        }
WebAPI/Controllers/LMESController.cs
@@ -12,6 +12,8 @@
using WebAPI.Models;
using System.Web;
using System.IO;
using WebAPI.Controllers.SCGL;
namespace WebAPI.Controllers
{
    public class LMESController : ApiController
@@ -25,7 +27,6 @@
        //自定义34进制数组
        private static char[] lNCode = new char[] { '0', '1', '2', '3', '4', '5', '6', '7', '8', '9', 'A', 'B', 'C', 'D', 'E', 'F', 'G', 'H', 'J', 'K', 'L', 'M', 'N', 'P', 'Q', 'R', 'S', 'T', 'U', 'V', 'W', 'X', 'Y', 'Z' };
        string fileip = System.Configuration.ConfigurationManager.AppSettings["FileIP"];
        #region è¿”回进站扫描列表|工序进站接收单列表 
        [Route("LEMS/MES_StationInBillList_Json")]
@@ -856,11 +857,11 @@
                // ååºåˆ—化子表数据
                var detailList = Newtonsoft.Json.JsonConvert.DeserializeObject<List<Dictionary<string, string>>>(msg3);
                // 3. å¼€å§‹äº‹åŠ¡
                oCN.BeginTran();
                foreach (var row in detailList)
                {
                    // 3. å¼€å§‹äº‹åŠ¡
                    oCN.BeginTran();
                    DataSet ds2 = null;
                    // èŽ·å–å­è¡¨å­—æ®µå€¼
                    string hSourceID = row.ContainsKey("HSourceID") ? row["HSourceID"] : "0";
                    string hMoldID = row.ContainsKey("HMoldID") ? row["HMoldID"] : "0";
@@ -874,13 +875,15 @@
                    string sReturn = "";
                    if (oSystemParameter.ShowBill(ref sReturn) == true)
                    {
                        if (oSystemParameter.omodel.WMS_CampanyName == "华舟")
                        {
                         if (oSystemParameter.omodel.WMS_CampanyName == "华舟")
                         {
                            oCN.RunProc("update Sc_ProcessExchangeBillMain set HMakeDate = GETDATE(),HRemark3='已派工',HMaker='" + msg4 + "' where HInterID = " + hSourceInterID);
                            LogService.Write("自动生成工作联系单...");
                            //自动生成工作联系单
                            oCN.RunProc("exec h_p_OA_WorkLinkBill_Create " + hSourceInterID + "," + 3772);
                        }
                            ds2 = oCN.RunProcReturn("exec h_p_OA_WorkLinkBill_Create " + hSourceInterID + "," + 3772, "h_p_OA_WorkLinkBill_Create");
                         }
                    }
                    oCN.RunProc("update Sc_ProcessExchangeBillSub set HSourceID=" + hSourceID + " where HInterID=" + hSourceInterID + " and HEntryID=" + hSourceEntryID);
                    // æ’入生产状态临时表
@@ -888,11 +891,21 @@
                    oCN.RunProc(SQL);
                    //插入工序流转卡派工单
                    string SQL1 = $"exec h_p_Sc_ProcExchSendWorkBill_PG {hSourceInterID},{hSourceEntryID},{hSourceID},{hMoldID}";
                    oCN.RunProc(SQL1);
                    oCN.RunProc(SQL1);
                    // 7. æäº¤äº‹åŠ¡
                    oCN.Commit();
                    if (ds2 != null && ds2.Tables[0].Rows.Count > 0)
                    {
                        int HInterID = int.Parse(ds2.Tables[0].Rows[0]["NewHInterID"].ToString());
                        LogService.Write("执行消息推送..." + HInterID);
                        // è§¦å‘消息推送
                        new Sc_MESTransFerWorkBillController().AuditOA_WorkLinkBill(HInterID, 0, msg4);
                    }
                }
                // 7. æäº¤äº‹åŠ¡
                oCN.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
WebAPI/Controllers/SBGL/Sb_EquipRepairSendWorkBillController.cs
@@ -223,15 +223,29 @@
              ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
              ",HEquipID,HExplanation,HInnerBillNo,HRepairID,HEmpID" +
              ",HManagerID,HDeptID,HRepairContent,HRepairPlanBeginDate,HRepairPlanEndDate" +
              ",HPlanTimes,HCycleUnit" +
              ",HPlanTimes,HCycleUnit,HMainSourceBillType,HMainSourceInterID,HMainSourceEntryID" +
              ") " +
              " values('" + BillType + "','" + BillType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
              ", Year(getdate()),Month(getdate()),'" + omodel.HRemark + "','" + omodel.HMaker + "',getdate()" +
              ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + omodel.HMaker + "',getdate()" +
              ", " + omodel.HEquipID.ToString() + ",'" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "'," + omodel.HRepairID.ToString() + "," + omodel.HEmpID.ToString() +
              "," + omodel.HManagerID.ToString() + "," + omodel.HDeptID.ToString() + ",'" + omodel.HRepairContent + "','" + omodel.HRepairPlanBeginDate + "','" + omodel.HRepairPlanEndDate + "'" +
              "," + omodel.HPlanTimes.ToString() + ",'" + omodel.HCycleUnit + "'" +
              "," + omodel.HPlanTimes.ToString() + ",'" + omodel.HCycleUnit + "','" + omodel.HMainSourceBillType + "','" + omodel.HMainSourceInterID + "','" + omodel.HMainSourceEntryID + "'" +
              ") ");
              //       "Insert Into Sb_EquipRepairSendWorkBillMain" +
              //  "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
              // ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
              // ",HEquipID,HExplanation,HInnerBillNo,HRepairID,HEmpID" +
              // ",HManagerID,HDeptID,HRepairContent,HRepairPlanBeginDate,HRepairPlanEndDate" +
              // ",HPlanTimes,HCycleUnit" +
              // ") " +
              // " values('" + BillType + "','" + BillType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
              // ", Year(getdate()),Month(getdate()),'" + omodel.HRemark + "','" + omodel.HMaker + "',getdate()" +
              // ", " + omodel.HEquipID.ToString() + ",'" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "'," + omodel.HRepairID.ToString() + "," + omodel.HEmpID.ToString() +
              // "," + omodel.HManagerID.ToString() + "," + omodel.HDeptID.ToString() + ",'" + omodel.HRepairContent + "','" + omodel.HRepairPlanBeginDate + "','" + omodel.HRepairPlanEndDate + "'" +
              // "," + omodel.HPlanTimes.ToString() + ",'" + omodel.HCycleUnit + "'" +
              // ") "
                }
                else if (OperationType == 3)
                {
WebAPI/Controllers/Sb_CheckEqpRepairWorkBillController.cs
@@ -1291,6 +1291,7 @@
            ListModels oListModels = new ListModels();
            try
            {
                string errRef = "";
                if (!DBUtility.ClsPub.Security_Log("Sb_EquipConkBookBill_Edit", 1, false, msg4))
                {
                    objJsonResult.code = "0";
@@ -1336,6 +1337,18 @@
                    //oItem.HRepairID = 0; //维修项目(Gy_Repair)
                    //oItem.HRemark = "";   //备注
                    //oItem.HMainSourceInterID = oItem.HInterID;
                    if (oSystemParameter.ShowBill(ref errRef))
                    {
                        // if (oSystemParameter.omodel.WMS_CampanyName == "华舟")
                        // {
                        //     oItem.HRepairManID = oItem.HEmpID;
                        // }
                        // else
                        // {
                            oItem.HRepairManID = 0;
                        // }
                    }
                    //oItem.HInterID = DBUtility.ClsPub.CreateBillID_SRMProd("1103", ref DBUtility.ClsPub.sExeReturnInfo);
                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
@@ -1377,7 +1390,6 @@
                    //oItemSub.HManagerID = 0;   //负责人ID
                    //oItemSub.HMoney = 0;        //维修费用
                    oBill.DetailColl.Add(oItemSub);
                }
                //保存
                //保存完毕后处理
WebAPI/Controllers/Sc_MouldRepairInBillListController.cs
@@ -6058,6 +6058,7 @@
            ListModels oListModels = new ListModels();
            try
            {
                string sErrMsg = "";
                if (!DBUtility.ClsPub.Security_Log("Sc_MouldConkBookBill_Edit", 1, false, msg4))
                {
                    objJsonResult.code = "0";
@@ -6083,6 +6084,17 @@
                    //oItem.HInnerBillNo = "";  //  --内部单据号
                    oItem.HYear = DBUtility.ClsPub.isLong(DateTime.Now.Year);
                    oItem.HMakeDate = DBUtility.ClsPub.isStrNull(DateTime.Now.ToString("yyyy-MM-dd"));
                   if(oSystemParameter.ShowBill(ref sErrMsg) == true)
                   {
                        // if(oSystemParameter.omodel.WMS_CampanyName == "华舟")
                        // {
                        //     oItem.HRepairManID = oItem.HEmpID;
                        // }else
                        // {
                            oItem.HRepairManID = 0;
                        // }
                   }
                    if (DBUtility.ClsPub.isStrNull(oItem.HDate) == "")
                    {
                        objJsonResult.code = "0";
WebAPI/Controllers/WebAPIController.cs
@@ -1518,7 +1518,7 @@
        /// <returns></returns>
        [Route("Web/GetEmployeeList_Json")]
        [HttpGet]
        public object GetEmployeeList_Json(string Employee, Int64 HGroupID)
        public object GetEmployeeList_Json2(string Employee, Int64 HGroupID)
        {
            sWhere = " Where HStopFlag=0  and HEndFlag=1";
            //sWhere = " Where HStopFlag=0  and HEndFlag=1  and HUSEORGID = " + DBUtility.ClsPub.HORGANIZATIONSID.ToString();
@@ -1576,6 +1576,7 @@
            }
        }
        /// <summary>
        /// èŽ·å–ç­æ¬¡åˆ—è¡¨
WebAPI/Controllers/Æ·ÖʹÜÀí/Ê×¼þ¼ìÑéµ¥/QC_FirstPieceCheckBillController.cs
@@ -8,6 +8,7 @@
using System.Data;
using System.Data.SqlClient;
using System.Web.Http;
using WebAPI.Controllers.SCGL;
using WebAPI.Models;
namespace WebAPI.Controllers
@@ -409,10 +410,18 @@
                    {
                        if (oSystemParameter.omodel.WMS_CampanyName == "华舟")
                        {
                            //自动生成工作联系单
                            oCN.RunProc("exec h_p_OA_WorkLinkBill_Create " + BillNew.omodel.HInterID + "," + 7505);
                            // oCN.RunProc("exec h_p_OA_WorkLinkBill_Create " + BillNew.omodel.HInterID + "," + 7505);
                            var ds2 = oCN.RunProcReturn("exec h_p_OA_WorkLinkBill_Create " + BillNew.omodel.HInterID + "," + 7505, "h_p_OA_WorkLinkBill_Create");
                            if (ds2 != null && ds2.Tables[0].Rows.Count > 0)
                            {
                                int HInterID = int.Parse(ds2.Tables[0].Rows[0]["NewHInterID"].ToString());
                                LogService.Write("执行消息推送..." + HInterID);
                                // è§¦å‘消息推送
                                new Sc_MESTransFerWorkBillController().AuditOA_WorkLinkBill(HInterID, 0, user);
                            }
                        }
                    }                    
                }
WebAPI/Controllers/ÌõÂë¹ÜÀí/WEBSController.cs
@@ -13891,7 +13891,7 @@
            {
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "扫描单据条码失败!" + e.ToString();
                objJsonResult.Message = "扫描单据条码失败!" + e.Message.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
WebAPI/DLL/ClsSb_EquipConkBookBill.cs
@@ -174,13 +174,13 @@
                 "(HBillType,HBillSubType,HInterID,HBillNo,HDate" +
                ",HYear,HPeriod,HRemark,HMaker,HMakeDate" +
                ",HEquipID,HExplanation,HInnerBillNo,HConkTypeID,HEmpID" +
                ",HManagerID,HDeptID,HConkBeginDate,HLev,HReason" +
                ",HManagerID,HDeptID,HConkBeginDate,HLev,HReason, HRepairManID" +
                ") " +
                " values('" + this.BillType + "','" + this.HBillSubType + "'," + omodel.HInterID.ToString() + ",'" + omodel.HBillNo + "','" + omodel.HDate + "'" +
                ", " + omodel.HYear.ToString() + "," + omodel.HPeriod.ToString() + ",'" + omodel.HRemark + "','" + omodel.HMaker + "',getdate()" +
                ", " + omodel.HEquipID.ToString() + ",'" + omodel.HExplanation + "','" + omodel.HInnerBillNo + "'," + omodel.HConkTypeID.ToString() + "," + omodel.HEmpID.ToString() +
                "," + omodel.HManagerID.ToString() + "," + omodel.HDeptID.ToString() + ",'" + omodel.HConkBeginDate + "', '" + omodel.HLev + "', '" + omodel.HReason + "'" +
                 ") ");
                 $",{omodel.HRepairManID}) ");
                ////插入子表
                foreach (Model.ClsSb_EquipConkBookBillSub oSub in DetailColl)
                {
WebAPI/Properties/PublishProfiles/FolderProfile4.pubxml.user
@@ -5,7 +5,7 @@
<Project ToolsVersion="4.0" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <_PublishTargetUrl>D:\网站发布\智云MESWMS\API</_PublishTargetUrl>
    <History>True|2026-02-02T07:42:04.9554792Z;True|2026-02-02T15:39:28.7017318+08:00;True|2026-02-02T15:38:33.5592835+08:00;True|2026-02-02T15:34:24.8450917+08:00;True|2026-02-02T15:30:36.5990146+08:00;True|2026-02-02T15:09:46.1965065+08:00;True|2026-02-02T15:09:24.9794288+08:00;True|2026-02-02T15:05:46.0763516+08:00;True|2026-02-02T14:56:30.1210013+08:00;True|2026-02-02T14:52:50.7435709+08:00;True|2026-02-02T14:47:49.5891710+08:00;True|2026-02-02T14:43:23.0006294+08:00;True|2026-02-02T14:31:10.1220612+08:00;True|2026-02-02T14:21:15.6540317+08:00;True|2026-02-02T14:15:41.6183116+08:00;True|2026-02-02T14:11:32.1234982+08:00;True|2026-02-02T14:01:34.6298901+08:00;True|2026-02-02T13:55:03.4760402+08:00;True|2026-02-02T13:49:00.0420220+08:00;True|2026-02-02T13:17:17.0678676+08:00;False|2026-02-02T13:15:46.0360589+08:00;False|2026-02-02T13:15:27.1689505+08:00;False|2026-02-02T13:14:27.3078641+08:00;True|2026-02-02T12:55:41.9272586+08:00;True|2026-02-02T12:55:22.0826476+08:00;True|2026-02-02T12:09:21.8247404+08:00;True|2026-02-02T12:03:58.9256304+08:00;True|2026-02-02T11:56:01.5744871+08:00;True|2026-02-02T11:42:30.2218073+08:00;True|2026-02-02T10:59:29.6077968+08:00;False|2026-02-02T10:59:08.7803594+08:00;True|2026-01-29T14:40:47.4658031+08:00;True|2026-01-29T14:36:18.2141550+08:00;True|2026-01-29T14:32:52.4872179+08:00;True|2026-01-29T14:32:06.4197291+08:00;True|2026-01-29T14:09:33.9372276+08:00;True|2026-01-29T14:08:17.6503129+08:00;True|2026-01-29T14:06:27.5784162+08:00;True|2026-01-29T13:10:48.6581055+08:00;True|2026-01-29T13:07:28.5589276+08:00;True|2026-01-29T12:44:24.3707488+08:00;True|2026-01-29T12:42:34.6204068+08:00;True|2026-01-29T12:39:55.3867683+08:00;True|2026-01-29T12:29:41.8565928+08:00;True|2026-01-29T12:17:04.5932345+08:00;True|2026-01-29T10:08:23.4550691+08:00;True|2026-01-29T10:04:05.4236307+08:00;False|2026-01-29T10:03:18.4044168+08:00;True|2026-01-28T16:00:38.3698743+08:00;True|2026-01-28T14:15:04.1203132+08:00;True|2026-01-28T14:03:32.3230252+08:00;False|2026-01-28T14:02:41.6157812+08:00;True|2026-01-28T13:18:24.5590390+08:00;True|2026-01-28T13:10:49.5716734+08:00;True|2026-01-28T12:25:03.3201915+08:00;True|2026-01-28T12:24:37.6029904+08:00;True|2026-01-28T12:16:13.3862190+08:00;True|2026-01-28T11:43:57.8268938+08:00;True|2026-01-28T10:57:22.9246991+08:00;True|2026-01-28T10:49:34.6185686+08:00;True|2026-01-28T10:44:07.6308515+08:00;True|2026-01-28T10:36:00.0391721+08:00;True|2026-01-28T10:27:26.1658915+08:00;False|2026-01-28T10:27:00.5898601+08:00;True|2026-01-27T15:02:41.1819512+08:00;True|2026-01-27T14:55:32.3962262+08:00;True|2026-01-27T14:31:09.0105130+08:00;True|2026-01-27T13:19:08.8705541+08:00;True|2026-01-27T11:43:17.0109305+08:00;True|2026-01-27T10:53:13.5941761+08:00;True|2026-01-27T10:49:18.5740094+08:00;True|2026-01-27T10:43:29.4337654+08:00;True|2026-01-27T10:00:49.1779297+08:00;False|2026-01-27T10:00:34.2083888+08:00;True|2026-01-26T16:29:09.5100352+08:00;False|2026-01-26T16:29:04.6554601+08:00;False|2026-01-26T14:39:05.7640208+08:00;True|2026-01-26T09:57:23.8775907+08:00;False|2026-01-26T09:56:43.8599383+08:00;True|2026-01-26T09:37:16.8828589+08:00;False|2026-01-26T09:36:35.9597492+08:00;True|2026-01-25T15:20:11.0096169+08:00;True|2026-01-25T14:52:25.7167654+08:00;True|2026-01-25T14:28:16.6779637+08:00;False|2026-01-25T14:27:32.6753765+08:00;True|2026-01-23T16:17:17.9227805+08:00;True|2026-01-23T14:37:25.7929932+08:00;True|2026-01-23T14:32:25.7611106+08:00;False|2026-01-23T14:31:28.4811198+08:00;True|2026-01-22T09:55:07.0908298+08:00;True|2026-01-22T09:38:49.9102490+08:00;False|2026-01-22T09:37:53.0384929+08:00;True|2026-01-21T16:50:27.5625267+08:00;True|2026-01-21T10:50:18.7634322+08:00;True|2026-01-21T10:47:56.7913811+08:00;True|2026-01-21T10:41:46.5883817+08:00;True|2026-01-21T09:29:22.5824101+08:00;False|2026-01-21T09:28:13.4362586+08:00;True|2026-01-20T14:26:36.7806712+08:00;True|2026-01-20T13:13:01.3064754+08:00;False|2026-01-20T13:12:08.1800841+08:00;True|2026-01-20T10:28:19.5250951+08:00;True|2026-01-20T10:27:41.5947282+08:00;True|2026-01-20T10:23:10.6474490+08:00;True|2026-01-20T10:07:24.8412652+08:00;True|2026-01-20T09:53:19.8583529+08:00;True|2026-01-20T08:21:20.5302494+08:00;False|2026-01-20T08:20:24.6093320+08:00;True|2026-01-19T15:58:34.1439056+08:00;True|2026-01-19T15:56:47.6488483+08:00;True|2026-01-19T15:12:36.9286562+08:00;True|2026-01-19T14:55:17.2807312+08:00;True|2026-01-19T14:47:03.8892836+08:00;True|2026-01-19T14:36:15.0507410+08:00;True|2026-01-19T14:26:05.5060287+08:00;True|2026-01-19T13:50:54.8654304+08:00;True|2026-01-19T13:37:47.2294303+08:00;True|2026-01-19T13:20:13.3781676+08:00;True|2026-01-19T13:07:18.8111360+08:00;True|2026-01-19T13:01:15.1432453+08:00;True|2026-01-19T11:54:26.6582081+08:00;True|2026-01-19T11:23:28.6100843+08:00;True|2026-01-19T08:41:23.8724527+08:00;True|2026-01-19T08:34:06.3247836+08:00;True|2026-01-19T07:48:11.5052413+08:00;False|2026-01-19T07:47:21.4586297+08:00;True|2026-01-18T14:27:24.9640228+08:00;True|2026-01-18T13:21:44.9690334+08:00;False|2026-01-18T13:20:08.6314025+08:00;False|2026-01-16T16:53:24.3290896+08:00;True|2026-01-16T09:03:14.4122067+08:00;True|2026-01-16T08:44:23.0342932+08:00;False|2026-01-16T08:43:34.3488415+08:00;True|2026-01-15T16:27:10.8480719+08:00;False|2026-01-15T16:26:06.6002625+08:00;True|2026-01-15T13:04:43.0602637+08:00;</History>
    <History>True|2026-02-11T03:45:25.6746436Z;True|2026-02-11T11:44:47.3185555+08:00;True|2026-02-11T10:54:59.0679758+08:00;True|2026-02-11T10:43:35.2341241+08:00;True|2026-02-11T10:36:26.6768242+08:00;True|2026-02-11T10:26:54.7470684+08:00;True|2026-02-11T10:26:14.5696000+08:00;True|2026-02-11T10:19:17.3267746+08:00;True|2026-02-11T10:03:08.9096446+08:00;True|2026-02-11T10:00:03.1731421+08:00;False|2026-02-11T09:58:47.2916714+08:00;True|2026-02-10T15:11:02.0203382+08:00;True|2026-02-10T15:07:21.6761915+08:00;True|2026-02-10T14:56:44.3660951+08:00;True|2026-02-10T14:42:24.1573010+08:00;True|2026-02-10T14:17:49.6012996+08:00;True|2026-02-10T10:54:27.8849732+08:00;True|2026-02-10T10:37:09.4615737+08:00;True|2026-02-10T10:32:50.2882198+08:00;True|2026-02-10T10:16:38.5004114+08:00;True|2026-02-10T10:04:58.3653257+08:00;False|2026-02-10T10:04:05.6938724+08:00;True|2026-02-09T11:58:12.9122757+08:00;True|2026-02-09T11:52:51.2402774+08:00;True|2026-02-09T11:47:15.5230979+08:00;True|2026-02-09T10:53:15.6587025+08:00;False|2026-02-09T10:52:01.4586729+08:00;True|2026-02-05T12:04:14.1139398+08:00;True|2026-02-05T10:00:41.8883921+08:00;False|2026-02-05T09:59:49.2086159+08:00;True|2026-02-04T13:30:53.8564398+08:00;True|2026-02-04T13:30:06.5486103+08:00;True|2026-02-04T13:21:44.7322601+08:00;True|2026-02-04T13:15:45.0093895+08:00;True|2026-02-04T13:06:30.4891537+08:00;False|2026-02-04T13:05:35.5287589+08:00;True|2026-02-04T12:39:42.2682329+08:00;True|2026-02-04T12:21:52.9722100+08:00;True|2026-02-04T12:16:07.8303016+08:00;True|2026-02-04T12:08:43.8268899+08:00;True|2026-02-04T12:03:26.1174616+08:00;True|2026-02-04T10:33:15.5394044+08:00;False|2026-02-04T10:32:30.7038502+08:00;True|2026-02-02T15:42:04.9554792+08:00;True|2026-02-02T15:39:28.7017318+08:00;True|2026-02-02T15:38:33.5592835+08:00;True|2026-02-02T15:34:24.8450917+08:00;True|2026-02-02T15:30:36.5990146+08:00;True|2026-02-02T15:09:46.1965065+08:00;True|2026-02-02T15:09:24.9794288+08:00;True|2026-02-02T15:05:46.0763516+08:00;True|2026-02-02T14:56:30.1210013+08:00;True|2026-02-02T14:52:50.7435709+08:00;True|2026-02-02T14:47:49.5891710+08:00;True|2026-02-02T14:43:23.0006294+08:00;True|2026-02-02T14:31:10.1220612+08:00;True|2026-02-02T14:21:15.6540317+08:00;True|2026-02-02T14:15:41.6183116+08:00;True|2026-02-02T14:11:32.1234982+08:00;True|2026-02-02T14:01:34.6298901+08:00;True|2026-02-02T13:55:03.4760402+08:00;True|2026-02-02T13:49:00.0420220+08:00;True|2026-02-02T13:17:17.0678676+08:00;False|2026-02-02T13:15:46.0360589+08:00;False|2026-02-02T13:15:27.1689505+08:00;False|2026-02-02T13:14:27.3078641+08:00;True|2026-02-02T12:55:41.9272586+08:00;True|2026-02-02T12:55:22.0826476+08:00;True|2026-02-02T12:09:21.8247404+08:00;True|2026-02-02T12:03:58.9256304+08:00;True|2026-02-02T11:56:01.5744871+08:00;True|2026-02-02T11:42:30.2218073+08:00;True|2026-02-02T10:59:29.6077968+08:00;False|2026-02-02T10:59:08.7803594+08:00;True|2026-01-29T14:40:47.4658031+08:00;True|2026-01-29T14:36:18.2141550+08:00;True|2026-01-29T14:32:52.4872179+08:00;True|2026-01-29T14:32:06.4197291+08:00;True|2026-01-29T14:09:33.9372276+08:00;True|2026-01-29T14:08:17.6503129+08:00;True|2026-01-29T14:06:27.5784162+08:00;True|2026-01-29T13:10:48.6581055+08:00;True|2026-01-29T13:07:28.5589276+08:00;True|2026-01-29T12:44:24.3707488+08:00;True|2026-01-29T12:42:34.6204068+08:00;True|2026-01-29T12:39:55.3867683+08:00;True|2026-01-29T12:29:41.8565928+08:00;True|2026-01-29T12:17:04.5932345+08:00;True|2026-01-29T10:08:23.4550691+08:00;True|2026-01-29T10:04:05.4236307+08:00;False|2026-01-29T10:03:18.4044168+08:00;True|2026-01-28T16:00:38.3698743+08:00;True|2026-01-28T14:15:04.1203132+08:00;True|2026-01-28T14:03:32.3230252+08:00;False|2026-01-28T14:02:41.6157812+08:00;True|2026-01-28T13:18:24.5590390+08:00;True|2026-01-28T13:10:49.5716734+08:00;True|2026-01-28T12:25:03.3201915+08:00;True|2026-01-28T12:24:37.6029904+08:00;True|2026-01-28T12:16:13.3862190+08:00;True|2026-01-28T11:43:57.8268938+08:00;True|2026-01-28T10:57:22.9246991+08:00;True|2026-01-28T10:49:34.6185686+08:00;True|2026-01-28T10:44:07.6308515+08:00;True|2026-01-28T10:36:00.0391721+08:00;True|2026-01-28T10:27:26.1658915+08:00;False|2026-01-28T10:27:00.5898601+08:00;True|2026-01-27T15:02:41.1819512+08:00;True|2026-01-27T14:55:32.3962262+08:00;True|2026-01-27T14:31:09.0105130+08:00;True|2026-01-27T13:19:08.8705541+08:00;True|2026-01-27T11:43:17.0109305+08:00;True|2026-01-27T10:53:13.5941761+08:00;True|2026-01-27T10:49:18.5740094+08:00;True|2026-01-27T10:43:29.4337654+08:00;True|2026-01-27T10:00:49.1779297+08:00;False|2026-01-27T10:00:34.2083888+08:00;True|2026-01-26T16:29:09.5100352+08:00;False|2026-01-26T16:29:04.6554601+08:00;False|2026-01-26T14:39:05.7640208+08:00;True|2026-01-26T09:57:23.8775907+08:00;False|2026-01-26T09:56:43.8599383+08:00;True|2026-01-26T09:37:16.8828589+08:00;False|2026-01-26T09:36:35.9597492+08:00;True|2026-01-25T15:20:11.0096169+08:00;True|2026-01-25T14:52:25.7167654+08:00;True|2026-01-25T14:28:16.6779637+08:00;False|2026-01-25T14:27:32.6753765+08:00;True|2026-01-23T16:17:17.9227805+08:00;True|2026-01-23T14:37:25.7929932+08:00;True|2026-01-23T14:32:25.7611106+08:00;False|2026-01-23T14:31:28.4811198+08:00;True|2026-01-22T09:55:07.0908298+08:00;True|2026-01-22T09:38:49.9102490+08:00;False|2026-01-22T09:37:53.0384929+08:00;True|2026-01-21T16:50:27.5625267+08:00;True|2026-01-21T10:50:18.7634322+08:00;True|2026-01-21T10:47:56.7913811+08:00;True|2026-01-21T10:41:46.5883817+08:00;True|2026-01-21T09:29:22.5824101+08:00;False|2026-01-21T09:28:13.4362586+08:00;True|2026-01-20T14:26:36.7806712+08:00;True|2026-01-20T13:13:01.3064754+08:00;False|2026-01-20T13:12:08.1800841+08:00;True|2026-01-20T10:28:19.5250951+08:00;True|2026-01-20T10:27:41.5947282+08:00;True|2026-01-20T10:23:10.6474490+08:00;True|2026-01-20T10:07:24.8412652+08:00;True|2026-01-20T09:53:19.8583529+08:00;True|2026-01-20T08:21:20.5302494+08:00;False|2026-01-20T08:20:24.6093320+08:00;True|2026-01-19T15:58:34.1439056+08:00;True|2026-01-19T15:56:47.6488483+08:00;True|2026-01-19T15:12:36.9286562+08:00;True|2026-01-19T14:55:17.2807312+08:00;True|2026-01-19T14:47:03.8892836+08:00;True|2026-01-19T14:36:15.0507410+08:00;True|2026-01-19T14:26:05.5060287+08:00;True|2026-01-19T13:50:54.8654304+08:00;True|2026-01-19T13:37:47.2294303+08:00;True|2026-01-19T13:20:13.3781676+08:00;True|2026-01-19T13:07:18.8111360+08:00;True|2026-01-19T13:01:15.1432453+08:00;True|2026-01-19T11:54:26.6582081+08:00;True|2026-01-19T11:23:28.6100843+08:00;True|2026-01-19T08:41:23.8724527+08:00;True|2026-01-19T08:34:06.3247836+08:00;True|2026-01-19T07:48:11.5052413+08:00;False|2026-01-19T07:47:21.4586297+08:00;True|2026-01-18T14:27:24.9640228+08:00;True|2026-01-18T13:21:44.9690334+08:00;False|2026-01-18T13:20:08.6314025+08:00;False|2026-01-16T16:53:24.3290896+08:00;True|2026-01-16T09:03:14.4122067+08:00;True|2026-01-16T08:44:23.0342932+08:00;False|2026-01-16T08:43:34.3488415+08:00;True|2026-01-15T16:27:10.8480719+08:00;False|2026-01-15T16:26:06.6002625+08:00;True|2026-01-15T13:04:43.0602637+08:00;</History>
  </PropertyGroup>
  <ItemGroup>
    <File Include="apiapp.json">
@@ -45,19 +45,19 @@
      <publishTime>02/22/2013 16:43:40</publishTime>
    </File>
    <File Include="bin/BLL.dll">
      <publishTime>02/02/2026 15:17:59</publishTime>
      <publishTime>02/04/2026 13:29:36</publishTime>
    </File>
    <File Include="bin/BLL.pdb">
      <publishTime>02/02/2026 15:17:59</publishTime>
      <publishTime>02/04/2026 13:29:36</publishTime>
    </File>
    <File Include="bin/BouncyCastle.Crypto.dll">
      <publishTime>12/18/2020 05:32:28</publishTime>
    </File>
    <File Include="bin/DAL.dll">
      <publishTime>02/02/2026 15:17:57</publishTime>
      <publishTime>02/04/2026 13:29:33</publishTime>
    </File>
    <File Include="bin/DAL.pdb">
      <publishTime>02/02/2026 15:17:57</publishTime>
      <publishTime>02/04/2026 13:29:33</publishTime>
    </File>
    <File Include="bin/Dapper.dll">
      <publishTime>07/22/2016 22:52:40</publishTime>
@@ -138,10 +138,10 @@
      <publishTime>07/25/2012 19:48:56</publishTime>
    </File>
    <File Include="bin/Model.dll">
      <publishTime>02/02/2026 15:17:52</publishTime>
      <publishTime>02/04/2026 13:29:27</publishTime>
    </File>
    <File Include="bin/Model.pdb">
      <publishTime>02/02/2026 15:17:52</publishTime>
      <publishTime>02/04/2026 13:29:27</publishTime>
    </File>
    <File Include="bin/Models/ClsSc_MouldScrapOutBillMain.cs">
      <publishTime>04/21/2025 11:46:16</publishTime>
@@ -324,13 +324,13 @@
      <publishTime>11/24/2014 19:18:48</publishTime>
    </File>
    <File Include="bin/WebAPI.dll">
      <publishTime>02/02/2026 15:41:51</publishTime>
      <publishTime>02/11/2026 13:40:13</publishTime>
    </File>
    <File Include="bin/WebAPI.pdb">
      <publishTime>02/02/2026 15:41:51</publishTime>
      <publishTime>02/11/2026 13:40:13</publishTime>
    </File>
    <File Include="bin/WebAPI.XmlSerializers.dll">
      <publishTime>02/02/2026 15:42:01</publishTime>
      <publishTime>02/11/2026 13:40:24</publishTime>
    </File>
    <File Include="bin/WebGrease.dll">
      <publishTime>07/18/2013 01:03:52</publishTime>
WebAPI/Service/GeTuiService.cs
@@ -9,6 +9,7 @@
using Newtonsoft.Json;
using com.igetui.api.openservice.igetui.template;
using com.igetui.api.openservice.igetui;
using WebApiWithFleck;
namespace WebAPI.Service
{
@@ -48,13 +49,14 @@
                    string content = ds.Tables[0].Rows[0]["内容"].ToString();
                    template = GetNotificationTemplate(title, content, "/pages/ZLGL/OA_WorkLink/OA_WorkLinkBillQuery", "0"); // è·³è½¬åˆ°å·¥ä½œè”系单查询页面
                    bool pushSuccess = false;
                    // å¹¿æ’­
                    if(ds.Tables[0].Rows[0]["发送类型"].ToString() == "公共")
                    {
                        // éåކ å…¨æŽ¨é€
                        foreach(DataRow row in ds.Tables[1].Rows)
                        {
                            PushMessageToSingle(template, row["HClientID"].ToString());
                            pushSuccess = PushMessageToSingle(template, row["HClientID"].ToString());
                        }
                    }else // å•独推送
                    {
@@ -63,8 +65,17 @@
                        {
                            if(ds.Tables[0].Rows[0]["接收人"].ToString() == row["HUserName"].ToString()
                                || ds.Tables[0].Rows[0]["抄送接收人"].ToString() == row["HUserName"].ToString())
                            PushMessageToSingle(template, row["HClientID"].ToString());
                            {
                               pushSuccess = PushMessageToSingle(template, row["HClientID"].ToString());
                            }
                        }
                    }
                    if(!pushSuccess)
                    {
                        // ä¸ªæŽ¨ æŽ¨é€ä¸æˆåŠŸ(内网环境) ä½¿ç”¨webSocket进行推送
                        // TODO: ä½¿ç”¨ rabbitMQ å®žçŽ°æ¶ˆæ¯é˜Ÿåˆ—
                        // WebSocketServer.PushOne(HInterID);
                    }
                }
            }
@@ -76,7 +87,7 @@
        }
        // å•推 ä½¿ç”¨é€šçŸ¥æ¶ˆæ¯æ¨¡åž‹
        private static void PushMessageToSingle(NotificationTemplate template, string ClientID)
        private static bool PushMessageToSingle(NotificationTemplate template, string ClientID)
        {
            IGtPush push = new IGtPush(HOST, APPKEY, MASTERSECRET);
@@ -100,6 +111,7 @@
                LogService.Write("-----------------------------------------------");
                LogService.Write("-----------------------------------------------");
                LogService.Write("----------------服务端返回结果:" + pushResult);
                return true;
            }
            catch (RequestException e)
            {
@@ -109,6 +121,7 @@
                LogService.Write("-----------------------------------------------");
                LogService.Write("-----------------------------------------------");
                LogService.Write("----------------服务端返回结果:" + pushResult);
                return false;
            }
        }
WebAPI/Service/WebSocketServer.cs
@@ -27,14 +27,18 @@
        private static System.Timers.Timer _pushTimerBeat;
        // 300000
        private static readonly int _pushInterval = 300000; // æ¯5分钟发送一次消息
        private static Pub_Class.ClsXt_SystemParameter oSystemParameter = new Pub_Class.ClsXt_SystemParameter();
        /// <summary>
        /// å¯åЍ WebSocket æœåŠ¡ï¼ˆç›‘å¬ 8089 ç«¯å£ï¼‰
        /// </summary>
        public static void Start()
        {
            string sReturn = "";
            var wsUrl = "ws://0.0.0.0:8888/ws"; // é€šç”¨ç«¯å£
            // é…ç½® WebSocket ç›‘听地址(独立端口 8089)
            var wsUrl = "ws://0.0.0.0:8089/ws"; // 0.0.0.0 å…è®¸å¤–部访问
            _server = new Fleck.WebSocketServer(wsUrl);
            _pushTimer = new System.Timers.Timer(_pushInterval);
WebAPI/WebAPI.csproj.user
@@ -1,7 +1,7 @@
<?xml version="1.0" encoding="utf-8"?>
<Project ToolsVersion="Current" xmlns="http://schemas.microsoft.com/developer/msbuild/2003">
  <PropertyGroup>
    <LastActiveSolutionConfig>Debug|Any CPU</LastActiveSolutionConfig>
    <LastActiveSolutionConfig>Release|Any CPU</LastActiveSolutionConfig>
    <UseIISExpress>true</UseIISExpress>
    <Use64BitIISExpress />
    <IISExpressSSLPort />
sdk_dingding/TopSdk/bin/Debug/TopSdk.dll
Binary files differ
sdk_dingding/TopSdk/bin/Debug/TopSdk.pdb
Binary files differ
sdk_dingding/TopSdk/obj/Debug/TopSdk.dll
Binary files differ
sdk_dingding/TopSdk/obj/Debug/TopSdk.pdb
Binary files differ