zzr99
2021-12-17 e3bff146a97648a9e2b7ec988cfc1ebe4c19b372
Merge branch 'master' of http://101.37.171.70:10101/r/MES-WEB-API
3个文件已添加
7个文件已修改
1166 ■■■■ 已修改文件
WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs 87 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs 169 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/博日自动扫码线/ScanlineAPIController.cs 28 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/HttpClient.cs 103 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/InvokeHelper.cs 245 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/LogService.cs 18 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Models/GetWeekList.cs 235 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/WebAPI.csproj 3 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WorkM/生产管理/Sc_ICMOBillList.designer.cs 224 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WorkM/生产管理/Sc_ICMOBillList.resx 54 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
WebAPI/Controllers/CGGL/Cg_POInStockBillController.cs
@@ -1,4 +1,5 @@
using Newtonsoft.Json.Linq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Pub_Class;
using System;
using System.Collections;
@@ -31,7 +32,7 @@
            try
            {
                ds = oCN.RunProcReturn("select * from h_v_IF_POInStockBillList where HitemID=" + HInterID, "h_v_IF_POInStockBillList");
                ds = oCN.RunProcReturn("select * from h_v_IF_POInStockBillList where hmainid=" + HInterID, "h_v_IF_POInStockBillList");
                if (ds == null || ds.Tables[0].Rows.Count == 0)
                {
                    objJsonResult.code = "0";
@@ -244,6 +245,11 @@
        {
            try
            {
                //先删除 é‡‘蝶数据
                objJsonResult = DeleteKingDee(HInterID);
                if (objJsonResult.code == "0")
                    return objJsonResult;
                oCN.BeginTran();
                oCN.RunProc("Delete From Cg_POInStockBillMain where HInterID = " + HInterID);
                oCN.RunProc("Delete From Cg_POInStockBillSub where HInterID = " + HInterID);
@@ -265,6 +271,83 @@
            }
        }
        /// <summary>
        /// åå®¡æ ¸
        /// </summary>
        [Route("Cg_POInStockBill/DeAuditPOInStockBill")]
        [HttpGet]
        public object DeAuditPOInStockBill(string HInterID)
        {
            try
            {
                //先删除 é‡‘蝶数据
                objJsonResult = DeleteKingDee(HInterID);
                if (objJsonResult.code == "0")
                    return objJsonResult;
                oCN.BeginTran();
                oCN.RunProc("update  Cg_POInStockBillMain  set HERPBillNO='',HERPInterID = 0 ,HBillStatus =5 where HInterID = " + HInterID);
                oCN.Commit();
                objJsonResult.code = "1";
                objJsonResult.count = 1;
                objJsonResult.Message = "操作成功!";
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                oCN.RollBack();
                objJsonResult.code = "0";
                objJsonResult.count = 0;
                objJsonResult.Message = "Exception!" + e.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
        //审核 åˆ é™¤ åˆ é™¤é‡‘蝶数据库对应 æ”¶æ–™é€šçŸ¥åˆ°æ•°æ®
        public json DeleteKingDee(string hinterid)
        {
            string sql = string.Format("select HinterID,HERPBillNO,HERPInterID from Cg_POInStockBillMain where HERPInterID>0 and hinterid in (" + hinterid + ")");
            DataTable dt = oCN.RunProcReturn(sql, "deleteDt").Tables[0];
            if (dt.Rows.Count > 0)
            {
                foreach (DataRow dr in dt.Rows)
                {
                    var sJson = new
                    {
                        Numbers = dr["HERPBillNO"].ToString(),
                        Ids = ""
                    };
                    var loginRet = InvokeHelper.Login();
                    var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                    if (isSuccess == 0)
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "操作失败,金蝶账号登录异常。" + loginRet;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                    var result = InvokeHelper.Delete("PUR_ReceiveBill", JsonConvert.SerializeObject(sJson));
                    //LogService.Write(result);
                    if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() != "TRUE")
                    {
                        objJsonResult.code = "0";
                        objJsonResult.count = 0;
                        objJsonResult.Message = "对应金蝶收料通知单删除失败 ï¼" + result;
                        objJsonResult.data = null;
                        return objJsonResult;
                    }
                }
            }
            objJsonResult.code = "1";
            objJsonResult.count = 1;
            objJsonResult.Message = "Sucess!";
            objJsonResult.data = null;
            return objJsonResult;
        }
        //
    }
WebAPI/Controllers/CGGL/Cg_POOrderBillController.cs
@@ -1,4 +1,5 @@
using Newtonsoft.Json.Linq;
using Newtonsoft.Json;
using Newtonsoft.Json.Linq;
using Pub_Class;
using System;
using System.Collections;
@@ -211,6 +212,172 @@
            }
        }
        [Route("AuditPOInStockBill")]
        [HttpGet]
        public object AuditPOInStockBill(string HInterID, string CurUserName)
        {
            json objjson = new json();
            try
            {
                SQLHelper.ClsCNSRM oCn = new SQLHelper.ClsCNSRM();
                string kdTbaleName = "AIS20210811135644";
                string sql = string.Format(@"
 SELECT B.HINTERID,c.FID,c.FENTRYID, D.FBILLNO,B.HQTY,CD.FRECEIVEORGID,CDOO.FNUMBER AS FRECEIVENUMBER,D.FSUPPLIERID,DS.FNUMBER AS FSUPPLIERNUMBER,D.FPURCHASEORGID,DOO.FNUMBER AS FPURCHASEORGNUMBER,CROO.FNUMBER  AS FSETTLEORGNUMBER,E.FPRICETIMEPOINT,E.FSETTLECURRID,EC.FNUMBER AS FSETTLECURRNUMBER,C.FMATERIALID,CM.FNUMBER AS FMATERIALNUMBER ,C.FUNITID ,CU.FNUMBER AS FUNITNUMBER FROM
   CG_POINSTOCKBILLSUB B
 JOIN CG_POINSTOCKBILLMAIN M ON B.HINTERID = M.HINTERID
 JOIN AIS20210811135644..T_PUR_POORDERENTRY C ON B.HSOURCEINTERID = C.FID AND B.HSOURCEENTRYID = C.FENTRYID
 LEFT JOIN AIS20210811135644..T_BD_MATERIAL CM ON C.FMATERIALID =CM.FMASTERID
 LEFT JOIN AIS20210811135644..T_BD_UNIT CU ON C.FUNITID =CU.FUNITID
 JOIN AIS20210811135644..T_PUR_POORDERENTRY_D CD ON    C.FENTRYID = CD.FENTRYID
 LEFT JOIN AIS20210811135644..T_ORG_ORGANIZATIONS CDOO ON CD.FRECEIVEORGID = CDOO.FORGID
 JOIN AIS20210811135644..T_PUR_POORDERENTRY_F CR ON    C.FENTRYID = CR.FENTRYID
 LEFT JOIN AIS20210811135644..T_ORG_ORGANIZATIONS CROO ON CR.FSETTLEORGID = CROO.FORGID
 JOIN AIS20210811135644..T_PUR_POORDER D ON C.FID =D.FID
 LEFT JOIN AIS20210811135644..T_BD_SUPPLIER DS ON D.FSUPPLIERID = DS.FSUPPLIERID
 LEFT JOIN AIS20210811135644..T_ORG_ORGANIZATIONS DOO ON D.FPURCHASEORGID = DOO.FORGID
 JOIN AIS20210811135644..T_PUR_POORDERFIN E ON C.FENTRYID =E.FENTRYID
 LEFT JOIN AIS20210811135644..T_BD_CURRENCY EC ON E. FSETTLECURRID =EC.FCURRENCYID
 WHERE b.hinterid in ({1}) and M.HERPInterID = 0
", kdTbaleName, HInterID);
                DataTable dt = oCn.RunProcReturn(sql, "sltz").Tables[0];
                List<string> fidList = new List<string>();
                if (dt.Rows.Count > 0)
                {
                    foreach (DataRow dr in dt.Rows)
                    {
                        if (fidList.Contains(dr["FID"].ToString() + dr["HINTERID"].ToString()))
                            continue;
                        else
                            fidList.Add(dr["FID"].ToString() + dr["HINTERID"].ToString());
                        DataRow[] drs = dt.Select("FID = " + dr["FID"].ToString() + " and HINTERID = "+dr["HINTERID"].ToString());
                        JObject model = new JObject();
                        model.Add("FBILLTYPEID", new JObject() { ["Fnumber"] = "SLD01_SYS" }); //单据类型
                        model.Add("FDate", DateTime.Now.ToString("yyyy-MM-dd")); //通知日期
                        model.Add("FStockOrgId", new JObject() { ["Fnumber"] = dr["FRECEIVENUMBER"].ToString() }); // æ”¶æ–™ç»„织
                        model.Add("FPurOrgId", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() }); //采购组织
                        model.Add("FSupplierId", new JObject() { ["Fnumber"] = dr["FSUPPLIERNUMBER"].ToString() }); //供应商
                        model.Add("FOwnerTypeIdHead", "BD_OwnerOrg");//  è´§ä¸»ç±»åž‹
                        model.Add("FOwnerIdHead", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() });//货主
                        JArray Fentity = new JArray();
                        foreach (var item in drs)
                        {
                            JObject FentityModel = new JObject();
                            FentityModel.Add("FMaterialId", new JObject() { ["Fnumber"] = item["FMATERIALNUMBER"].ToString() }); // ç‰©æ–™ç¼–码
                            FentityModel.Add("FUnitID", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); // å•位
                            FentityModel.Add("FPreDeliveryDate", DateTime.Now.ToString("yyyy-MM-dd")); //预计到货日期
                            FentityModel.Add("FPriceUnitId", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); // è®¡ä»·å•位
                            FentityModel.Add("FStockUnitID", new JObject() { ["Fnumber"] = item["FUNITNUMBER"].ToString() }); //  åº“存单位
                            FentityModel.Add("FActReceiveQty", Convert.ToDecimal(item["HQTY"])); // ä¾›åº”商送货数量(提料计划数量 - å·²ç”Ÿæˆé€è´§å•数量)
                            FentityModel.Add("FOwnerTypeId", "BD_OwnerOrg");//货主类型
                            FentityModel.Add("FOwnerID", new JObject() { ["Fnumber"] = dr["FPURCHASEORGNUMBER"].ToString() });//货主
                            FentityModel.Add("FSrcId", item["FID"].ToString());//源单内码
                            FentityModel.Add("FSRCFORMID", "PUR_PurchaseOrder");//源单类型
                            FentityModel.Add("FSrcBillNo", item["FBILLNO"].ToString());//源单单号
                            FentityModel.Add("FSRCENTRYID", item["FENTRYID"].ToString());//源单分录内码
                            FentityModel.Add("FORDERBILLNO", item["FBILLNO"].ToString());//源单单号
                            FentityModel.Add("FPOORDERENTRYID", item["FENTRYID"].ToString());//源单分录内码
                            JArray Fentity2 = new JArray();
                            JObject FentityModel2 = new JObject();
                            FentityModel2.Add("FDetailEntity_Link_FRULEID", "PUR_PurchaseOrder-PUR_ReceiveBill");
                            FentityModel2.Add("FDetailEntity_Link_FSTableName", "t_PUR_POOrderEntry");
                            FentityModel2.Add("FDetailEntity_Link_FSBillId", item["FID"].ToString());
                            FentityModel2.Add("FDetailEntity_Link_FSId", item["FEntryID"].ToString());
                            Fentity2.Add(FentityModel2);
                            FentityModel.Add("FDetailEntity_Link", Fentity2);
                            Fentity.Add(FentityModel);
                        }
                        model.Add("FDetailEntity", Fentity); //明细信息
                        JObject _FentityModel = new JObject();
                        _FentityModel.Add("FSettleOrgId", new JObject() { ["Fnumber"] = dr["FSETTLEORGNUMBER"].ToString() }); //  ç»“算组织
                        _FentityModel.Add("FSettleCurrId", new JObject() { ["Fnumber"] = dr["FSETTLECURRNUMBER"].ToString() }); //  ç»“算币别
                        _FentityModel.Add("FPricePoint", 0); //  å®šä»·æ—¶ç‚¹
                        model.Add("FinanceEntity ", _FentityModel);//财务信息
                        JObject jsonRoot = new JObject()
                        {
                            ["Creator"] = "",
                            ["NeedUpDateFields"] = new JArray(),
                            ["NeedReturnFields"] = new JArray(),
                            ["IsDeleteEntry"] = "false",
                            ["SubSystemId"] = "",
                            ["IsVerifyBaseDataField"] = "false",
                            ["Model"] = model
                        };
                        LogService.Write(JsonConvert.SerializeObject(jsonRoot));
                        var loginRet = InvokeHelper.Login();
                        var isSuccess = JObject.Parse(loginRet)["LoginResultType"].Value<int>();
                        if (isSuccess == 0)
                        {
                            objjson.code = "0";
                            objjson.count = 0;
                            objjson.Message = loginRet;
                            objjson.data = null;
                            return objjson;
                        }
                        var result = InvokeHelper.Save("PUR_ReceiveBill", jsonRoot.ToString());
                        LogService.Write(result);
                        if (JObject.Parse(result)["Result"]["ResponseStatus"]["IsSuccess"].ToString().ToUpper() == "TRUE")
                        {
                            //更新送货单 ä¸»è¡¨ ERP单据号 ä»¥åŠ ERP主内玛
                            string FBillNo = JObject.Parse(result)["Result"]["Number"].ToString();
                            string FID = JObject.Parse(result)["Result"]["Id"].ToString();
                            string updateSql = string.Format(@"
 update a set
 a.HERPInterID = {0} ,
 a.HERPBillNO   ='{1}'
 from Cg_POInStockBillMain a
 join Cg_POInStockBillSub b on a.hinterid = b.hinterid
 where b.HInterID in ({2})
 and b. HSOURCEINTERID = {3}
 and a.HERPInterID = 0
", FID, FBillNo, dr["HINTERID"].ToString(), dr["FID"].ToString());
                            oCn.RunProc(updateSql);
                        }
                        else
                        {
                            objjson.code = "0";
                            objjson.count = 0;
                            objjson.Message = result;
                            objjson.data = null;
                            return objjson;
                        }
                    }
                }
                sql = string.Format(@"update Cg_POInStockBillMain set
HBillStatus = 2 ,
HChecker   ='{0}',
HCheckDate   = getdate()
where HInterID in ({1})", CurUserName, HInterID);
                oCn.RunProc(sql);
                objjson.code = "1";
                objjson.count = 1;
                objjson.Message = "操作成功";
                objjson.data = null;
                return objjson;
            }
            catch (Exception ex)
            {
                objjson.code = "0";
                objjson.count = 0;
                objjson.Message = "操作失败" + ex.Message.ToString();
                objjson.data = null;
                return objjson;
            }
        }
        //判断是否存在权限,并写入日志
        public static bool Security_Log(string gnsy, int LogTF, bool Msg, string CurUserName)
        {
WebAPI/Controllers/²©ÈÕ×Ô¶¯É¨ÂëÏß/ScanlineAPIController.cs
@@ -225,8 +225,8 @@
                oCN.RunProc("Delete From Sc_PackUnionBillSub  where HBarCode_Pack=" + packagebarcode.ToString());
                //删除主表
                oCN.RunProc("Delete From Sc_PackUnionBillMain  where HBarCode_Pack=" + packagebarcode.ToString());
                //删除条码档案表
                oCN.RunProc("Delete From Gy_BarCodeBill  where HBarCode=" + packagebarcode.ToString());
                //作废条码档案表
                oCN.RunProc("Update  Gy_BarCodeBill set HStopflag='1'  where HBarCode=" + packagebarcode.ToString());
                oCN.Commit();
@@ -244,5 +244,29 @@
            }
        }
        #endregion
        [Route("packagebarcode/week")]
        [HttpPost]
        public object week(string tim)
        {
            try
            {
                GetWeekList list = new GetWeekList();
                //string aa=list.getWeek(Convert.ToDateTime(tim));
                string aa = list.GetCodeDateStr(Convert.ToDateTime(tim));
                objJsonResult.status = 0;
                objJsonResult.msg =aa.ToString();
                objJsonResult.data = null;
                return objJsonResult;
            }
            catch (Exception e)
            {
                objJsonResult.status = -1;
                objJsonResult.msg = e.Message;
                objJsonResult.data = null;
                return objJsonResult;
            }
        }
    }
}
WebAPI/HttpClient.cs
New file
@@ -0,0 +1,103 @@
using System;
using System.Collections.Generic;
using System.IO;
using System.Linq;
using System.Net;
using System.Text;
using Newtonsoft.Json.Linq;
using Newtonsoft.Json;
using System.Threading.Tasks;
namespace WebAPI
{
    public class HttpClient
    {
        /// <summary>
        /// Seivice URL
        /// </summary>
        public string Url { get; set; }
        /// <summary>
        /// å†…容
        /// </summary>
        public string Content { get; set; }
        /// <summary>
        /// Cookie,保证登录后,所有访问持有一个Cookie;
        /// </summary>
        static CookieContainer Cookie = new CookieContainer();
        /// <summary>
        /// HTTP访问
        /// </summary>
        public string SyncRequest()
        {
            HttpWebRequest httpRequest = HttpWebRequest.Create(Url) as HttpWebRequest;
            httpRequest.Method = "POST";
            httpRequest.ContentType = "application/json";
            httpRequest.CookieContainer = Cookie;
            httpRequest.Timeout = 1000 * 60 * 10;//10min
            using (Stream reqStream = httpRequest.GetRequestStream())
            {
                JObject jObj = new JObject();
                jObj.Add("format", 1);
                jObj.Add("useragent", "ApiClient");
                jObj.Add("rid", Guid.NewGuid().ToString().GetHashCode().ToString());
                jObj.Add("parameters", Content);
                jObj.Add("timestamp", DateTime.Now);
                jObj.Add("v", "1.0");
                string sContent = jObj.ToString();
                var bytes = UnicodeEncoding.UTF8.GetBytes(sContent);
                reqStream.Write(bytes, 0, bytes.Length);
                reqStream.Flush();
            }
            using (var repStream = httpRequest.GetResponse().GetResponseStream())
            {
                using (var reader = new StreamReader(repStream))
                {
                    return ValidateResult(reader.ReadToEnd());
                }
            }
        }
        public async Task<string> AsyncRequest()
        {
            HttpWebRequest httpRequest = WebRequest.Create(Url) as HttpWebRequest;
            httpRequest.Method = "POST";
            httpRequest.ContentType = "application/json";
            httpRequest.CookieContainer = Cookie;
            httpRequest.Timeout = 1000 * 60 * 10;//10min
            using (Stream reqStream = await httpRequest.GetRequestStreamAsync())
            {
                JObject jObj = new JObject();
                jObj.Add("format", 1);
                jObj.Add("useragent", "ApiClient");
                jObj.Add("rid", Guid.NewGuid().ToString().GetHashCode().ToString());
                jObj.Add("parameters", Content);
                jObj.Add("timestamp", DateTime.Now);
                jObj.Add("v", "1.0");
                string content = jObj.ToString();
                var bytes = Encoding.UTF8.GetBytes(content);
                reqStream.Write(bytes, 0, bytes.Length);
                reqStream.Flush();
            }
            using (var repStream = (await httpRequest.GetResponseAsync()).GetResponseStream())
            {
                using (var reader = new StreamReader(repStream))
                {
                    return ValidateResult(await reader.ReadToEndAsync());
                }
            }
        }
        private static string ValidateResult(string responseText)
        {
            if (responseText.StartsWith("response_error:"))
            {
                responseText.TrimStart("response_error:".ToCharArray());
            }
            return responseText;
        }
    }
}
WebAPI/InvokeHelper.cs
New file
@@ -0,0 +1,245 @@
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using Newtonsoft.Json;
namespace WebAPI
{
    public static class InvokeHelper
    {
        //private static string CloudUrl = "http://localhost/k3cloud/";//K/3 Cloud ä¸šåŠ¡ç«™ç‚¹åœ°å€
        //private static string CloudUrl = "http://60.190.4.42:9002/k3cloud/";//K/3 Cloud ä¸šåŠ¡ç«™ç‚¹åœ°å€
        //private static string CloudUrl = "http://47.96.97.237/k3cloud/";//K/3 Cloud ä¸šåŠ¡ç«™ç‚¹åœ°å€
        private static string CloudUrl = "http://60.190.4.42:9002/K3CLOUD/";//夏宝
        /// <summary>
        /// ç™»é™†
        /// </summary>
        public static string Login()
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc");
            List<object> Parameters = new List<object>();
            Parameters.Add("61b14ea86f5c8a");//账套标示
            Parameters.Add("Administrator");//用户名
            Parameters.Add("888888");//密码
            Parameters.Add(2052);//2052代表中文
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return httpClient.SyncRequest();
        }
        public static async Task<string> LoginAsync()
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.AuthService.ValidateUser.common.kdsvc");
            List<object> Parameters = new List<object>();
            Parameters.Add("5f9258a311401c");//账套标示
            Parameters.Add("Administrator");//用户名
            Parameters.Add("qaz!@#123");//密码
            Parameters.Add(2052);//2052代表中文
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return await httpClient.AsyncRequest();
        }
        /// <summary>
        /// ä¿å­˜
        /// </summary>
        /// <param name="formId"></param>
        /// <param name="content"></param>
        /// <returns></returns>
        public static string Save(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return httpClient.SyncRequest();
        }
        public static string BatchSave(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.BatchSave.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return httpClient.SyncRequest();
        }
        public static async Task<string> SaveAsync(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Save.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return await httpClient.AsyncRequest();
        }
        /// <summary>
        /// æäº¤
        /// </summary>
        /// <param name="formId"></param>
        /// <param name="content"></param>
        /// <returns></returns>
        public static string Submit(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Submit.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return httpClient.SyncRequest();
        }
        /// <summary>
        /// åˆ é™¤
        /// </summary>
        /// <param name="formId"></param>
        /// <param name="content"></param>
        /// <returns></returns>
        public static string Delete(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Delete.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return httpClient.SyncRequest();
        }
        public static async Task<string> DeleteAsync(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Delete.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return await httpClient.AsyncRequest();
        }
        /// <summary>
        /// å®¡æ ¸
        /// </summary>
        /// <param name="formId"></param>
        /// <param name="content"></param>
        /// <returns></returns>
        public static string Audit(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Audit.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return httpClient.SyncRequest();
        }
        /// <summary>
        /// æŸ¥è¯¢
        /// </summary>
        /// <param name="formId"></param>
        /// <param name="content"></param>
        /// <returns></returns>
        public static string View(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.View.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return httpClient.SyncRequest();
        }
        public static string UnAudit(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.UnAudit.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return httpClient.SyncRequest();
        }
        public static string Push(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.Push.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return httpClient.SyncRequest();
        }
        public static string Query(string formId, string content)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, "Kingdee.BOS.WebApi.ServicesStub.DynamicFormService.ExecuteBillQuery.common.kdsvc");
            List<object> Parameters = new List<object>();
            //业务对象Id
            //Parameters.Add(formId);
            //Json字串
            Parameters.Add(content);
            httpClient.Content = JsonConvert.SerializeObject(Parameters);
            return httpClient.SyncRequest();
        }
        /// <summary>
        /// è‡ªå®šä¹‰
        /// </summary>
        /// <param name="key">自定义方法标识</param>
        /// <param name="args">参数</param>
        /// <returns></returns>
        public static string AbstractWebApiBusinessService(string key, List<object> args)
        {
            HttpClient httpClient = new HttpClient();
            httpClient.Url = string.Concat(CloudUrl, key, ".common.kdsvc");
            httpClient.Content = JsonConvert.SerializeObject(args);
            return httpClient.SyncRequest();
        }
    }
}
WebAPI/LogService.cs
@@ -11,7 +11,23 @@
    public class LogService
    {
        private static readonly object lockObj = new object();
        public static void WriteAsync(object obj, string filePath = "Vlog", bool isAppend = true)
        {
            Task.Run(() =>
            {
                Write(obj, filePath, isAppend);
            });
        }
        public static void WriteAsync<T>(object obj, string filePath = "Vlog", bool isAppend = true)
        {
            Task.Run(() =>
            {
                Write(obj, $@"{filePath}\{typeof(T).Name}", isAppend);
            });
        }
        #region æ—¥å¿—
        public static void Write(object obj, string filePath = "Vlog", bool isAppend = true)
        {
WebAPI/Models/GetWeekList.cs
New file
@@ -0,0 +1,235 @@
using System;
using System.Collections.Generic;
using System.Globalization;
using System.Linq;
using System.Web;
namespace WebAPI.Models
{
    public class GetWeekList
    {
        #region æ ¹æ®æ—¶é—´èŽ·å–å½“å‰æ˜¯ç¬¬å‡ å‘¨
        //如果12月31号与下一年的1月1好在同一个星期则算下一年的第一周
        public int GetWeekIndex(DateTime dTime)
        {
            try
            {
                //确定此时间在一年中的位置(第多少天)
                int dayOfYear = dTime.DayOfYear;
                //当年第一天
                DateTime tempDate = new DateTime(dTime.Year, 1, 1);
                //确定当年第一天是周几
                int tempDayOfWeek = (int)tempDate.DayOfWeek;
                //判断当前一月一号如果是周日(0),则默认为周一
                tempDayOfWeek = tempDayOfWeek == 0 ? 1 : tempDayOfWeek;
                //确定当前日期是星期几
                int index = (int)dTime.DayOfWeek;
                //判断当前日期如果是周日(0),则默认为周一
                index = index == 0 ? 1 : index;
                //当前日期周的范围
                DateTime retStartDay = dTime.AddDays(-(index - 1));
                DateTime retEndDay = dTime.AddDays(7 - index);
                //确定当前日期是第几周
                int weekIndex = (int)Math.Ceiling(((double)dayOfYear + tempDayOfWeek - 1) / 7);
                //对比当前日期周的开始和结束,判定是否跨年第一周
                if (retStartDay.Year < retEndDay.Year)
                {
                    weekIndex = 1;
                }
                return weekIndex;
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
            //string retVal = retStartDay.ToString("yyyy/MM/dd") + "~" + retEndDay.ToString("yyyy/MM/dd");
        }
        public int GetWeekIndex(string strDate)
        {
            try
            {
                //需要判断的时间
                DateTime dTime = Convert.ToDateTime(strDate);
                return GetWeekIndex(dTime);
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }
        #endregion
        #region ä»¥å‘¨æœ«ä¸ºæ¯å‘¨ç¬¬ä¸€å¤©æ¥è®¡ç®—当前日期所属哪一年第几周
        public string getWeek(DateTime dtime)
        {
            int nowweekindex = 0;
            //定义每周第一天为周末开始
            int[] aweek = new int[] { 0, 1, 2, 3, 4, 5, 6 };
            int weekd = 0;
            string yearmonthweek = "";
            //确定此时间在一年中的位置(第多少天)
            int dayofyear = dtime.DayOfYear;
            //确定此时间在一年中的月份
            int dayofmonth = dtime.Month;
            //确定当年第一天是周几
            //int dayofweek = (int)dtime.DayOfWeek;
            //当年第一天
            DateTime dtfirstday = new DateTime(dtime.Year, 1, 1);
            //确定当年第一天是周几
            int dtfirstdayofweek = (int)dtfirstday.DayOfWeek;
            //DateTime dtlastday = new DateTime(dtime.Year, 12, 31);
            //下一年第一天
            DateTime dtnextyear = new DateTime(dtime.Year + 1, 1, 1);
            //int dtnextyeardayofweek = (int)dtnextyear.DayOfWeek;
            //下一年第一天是周几
            int nextyear = sy(dtnextyear,aweek) - 1;
            DateTime dtlastday1 = new DateTime(dtime.Year, 12, 31 - nextyear);
            if ((int)dtime.DayOfYear - (int)dtfirstday.DayOfYear <= 7 - sy(dtfirstday,aweek))
            {
                nowweekindex = 1;
                yearmonthweek = dtime.Year + "_" + dayofmonth + "_" + nowweekindex;
            }
            else if ((int)dtime.DayOfYear <= (int)dtlastday1.DayOfYear)
            {
                for (int j = 0; j < aweek.Length; j++)
                {
                    if (Convert.ToInt32(aweek[j]) == dtfirstdayofweek)
                    {
                        int b = aweek.Length - (j + 1);
                        int x = (dayofyear - 1) - b;
                        weekd = x / 7;
                        int yushu = x % 7;
                        if (yushu != 0)
                        {
                            nowweekindex = weekd + 2;
                            yearmonthweek = dtime.Year + "_" + dayofmonth + "_" + nowweekindex;
                        }
                        else
                        {
                            nowweekindex = weekd + 1;
                            yearmonthweek = dtime.Year + "_" + dayofmonth + "_" + nowweekindex;
                        }
                    }
                }
            }
            else
            {
                nowweekindex = weekd + 1;
                yearmonthweek = dtime.Year + 1 + "_" + 1 + "_" + nowweekindex;
            }
            return yearmonthweek;
        }
        public static int sy(DateTime dtime, int[] aweek)
        {
            int midnum = 0;
            int midof = (int)dtime.DayOfWeek;
            for (int i = 0; i < aweek.Length; i++)
            {
                if (Convert.ToInt32(aweek[i]) == midof)
                {
                    midnum = i;
                }
            }
            return midnum + 1;
        }
        #endregion
        public  string GetCodeDateStr(DateTime dtime)
        {
            DateTime currentTime = dtime;
            var year = GetOfYear(currentTime);
            var week = GetWeekOfYear(currentTime);
            var weekStr = week < 10 ? $"0{week}" : week.ToString();
            var dateStr = $"{year}{weekStr}{getWeekOfDay(dtime)}"; ;
            return dateStr;
        }
        private static int GetOfYear(DateTime dt)
        {
            var OfYear =int.Parse(dt.Year.ToString().ToCharArray()[3].ToString());
            GregorianCalendar gc = new GregorianCalendar();
            //判断当前日期是否是12月份
            int dayofmonth = dt.Month;
            //判断当前日期是第几周
            int dayofweek = gc.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Sunday);
            //下一年的第一天
            DateTime dtfirstday = new DateTime(dt.Year + 1, 1, 1);
            //确定下一年第一天是周几
            int dtfirstdayofweek = (int)dtfirstday.DayOfWeek;
            //判断下一年第一天不为周日且当前日期为本年第12月且当前日期为本年第53周
            if (dtfirstdayofweek != 0 && dayofmonth == 12 && dayofweek == 53)
            {
                OfYear = OfYear + 1;  //加一年
            }
            else
            {
                OfYear = int.Parse(dt.Year.ToString().ToCharArray()[3].ToString());
            }
            return OfYear;
        }
        private static int GetWeekOfYear(DateTime dt)
        {
            int weekOfYear = 1;
            GregorianCalendar gc = new GregorianCalendar();
            //判断当前日期是否是12月份
            int dayofmonth = dt.Month;
            //判断当前日期是第几周
            int dayofweek=gc.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Sunday);
            //下一年的第一天
            DateTime dtfirstday = new DateTime(dt.Year+1, 1, 1);
            //确定下一年第一天是周几
            int dtfirstdayofweek = (int)dtfirstday.DayOfWeek;
            //判断下一年第一天不为周日且当前日期为本年第12月且当前日期为本年第53周
            if (dtfirstdayofweek != 0&& dayofmonth == 12&&dayofweek ==53)
            {
                weekOfYear = 1;  //下一年第一周
            }
            else
            {
                 weekOfYear = gc.GetWeekOfYear(dt, CalendarWeekRule.FirstDay, DayOfWeek.Sunday);
            }
            return weekOfYear;
        }
        public static int getWeekOfDay(DateTime dtime)
        {
            int DayinWeek = 0;
            string week = dtime.DayOfWeek.ToString();
            switch (week)
            {
                case "Monday":
                    DayinWeek = 2;
                    break;
                case "Tuesday":
                    DayinWeek = 3;
                    break;
                case "Wednesday":
                    DayinWeek = 4;
                    break;
                case "Thursday":
                    DayinWeek = 5;
                    break;
                case "Friday":
                    DayinWeek = 6;
                    break;
                case "Saturday":
                    DayinWeek = 7;
                    break;
                case "Sunday":
                    DayinWeek = 1;
                    break;
            }
            return DayinWeek;
        }
    }
}
WebAPI/WebAPI.csproj
@@ -453,9 +453,12 @@
    <Compile Include="DLL\ClsSc_PackUnionBill.cs" />
    <Compile Include="DLL\工资管理\ClsPay_GroupBalBill.cs" />
    <Compile Include="DLL\工资管理\ClsPay_WorkTimesBill.cs" />
    <Compile Include="HttpClient.cs" />
    <Compile Include="InvokeHelper.cs" />
    <Compile Include="Models\ClsGy_StockCheckItemBill.cs" />
    <Compile Include="Models\ClsSc_PackUnionBillMain.cs" />
    <Compile Include="Models\ClsSc_PackUnionBillSub.cs" />
    <Compile Include="Models\GetWeekList.cs" />
    <Compile Include="Models\jsonScanline.cs" />
    <Compile Include="Models\ScanLineCode.cs" />
    <Compile Include="Models\工资管理\ClsPay_GroupBalBillEmp.cs" />
WorkM/Éú²ú¹ÜÀí/Sc_ICMOBillList.designer.cs
@@ -70,6 +70,9 @@
            this.grdPrint = new System.Windows.Forms.DataGridView();
            this.grdSum = new System.Windows.Forms.DataGridView();
            this.groupBox1 = new System.Windows.Forms.GroupBox();
            this.txtHBillNo2 = new System.Windows.Forms.TextBox();
            this.label8 = new System.Windows.Forms.Label();
            this.btnTB = new System.Windows.Forms.Button();
            this.cmbHStatus = new System.Windows.Forms.ComboBox();
            this.label7 = new System.Windows.Forms.Label();
            this.label5 = new System.Windows.Forms.Label();
@@ -85,9 +88,6 @@
            this.btnOK = new System.Windows.Forms.Button();
            this.txtHBillNo = new System.Windows.Forms.TextBox();
            this.label3 = new System.Windows.Forms.Label();
            this.txtHBillNo2 = new System.Windows.Forms.TextBox();
            this.label8 = new System.Windows.Forms.Label();
            this.btnTB = new System.Windows.Forms.Button();
            this.pPic.SuspendLayout();
            this.panel1.SuspendLayout();
            this.Tool.SuspendLayout();
@@ -105,9 +105,10 @@
            this.pPic.Controls.Add(this.panel1);
            this.pPic.Controls.Add(this.lblCaption);
            this.pPic.Dock = System.Windows.Forms.DockStyle.Top;
            this.pPic.Location = new System.Drawing.Point(0, 50);
            this.pPic.Location = new System.Drawing.Point(0, 75);
            this.pPic.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.pPic.Name = "pPic";
            this.pPic.Size = new System.Drawing.Size(1246, 53);
            this.pPic.Size = new System.Drawing.Size(1869, 80);
            this.pPic.TabIndex = 15;
            // 
            // panel1
@@ -115,26 +116,29 @@
            this.panel1.Controls.Add(this.lbljl);
            this.panel1.Controls.Add(this.lbldj);
            this.panel1.Dock = System.Windows.Forms.DockStyle.Right;
            this.panel1.Location = new System.Drawing.Point(1032, 0);
            this.panel1.Location = new System.Drawing.Point(1548, 0);
            this.panel1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.panel1.Name = "panel1";
            this.panel1.Size = new System.Drawing.Size(214, 53);
            this.panel1.Size = new System.Drawing.Size(321, 80);
            this.panel1.TabIndex = 7;
            // 
            // lbljl
            // 
            this.lbljl.AutoSize = true;
            this.lbljl.Location = new System.Drawing.Point(24, 30);
            this.lbljl.Location = new System.Drawing.Point(36, 45);
            this.lbljl.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.lbljl.Name = "lbljl";
            this.lbljl.Size = new System.Drawing.Size(11, 12);
            this.lbljl.Size = new System.Drawing.Size(17, 18);
            this.lbljl.TabIndex = 1;
            this.lbljl.Text = " ";
            // 
            // lbldj
            // 
            this.lbldj.AutoSize = true;
            this.lbldj.Location = new System.Drawing.Point(24, 12);
            this.lbldj.Location = new System.Drawing.Point(36, 18);
            this.lbldj.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.lbldj.Name = "lbldj";
            this.lbldj.Size = new System.Drawing.Size(0, 12);
            this.lbldj.Size = new System.Drawing.Size(0, 18);
            this.lbldj.TabIndex = 0;
            // 
            // lblCaption
@@ -143,9 +147,10 @@
            this.lblCaption.BackColor = System.Drawing.Color.Transparent;
            this.lblCaption.Cursor = System.Windows.Forms.Cursors.No;
            this.lblCaption.Font = new System.Drawing.Font("宋体", 15.75F, System.Drawing.FontStyle.Bold, System.Drawing.GraphicsUnit.Point, ((byte)(134)));
            this.lblCaption.Location = new System.Drawing.Point(12, 15);
            this.lblCaption.Location = new System.Drawing.Point(18, 22);
            this.lblCaption.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.lblCaption.Name = "lblCaption";
            this.lblCaption.Size = new System.Drawing.Size(98, 21);
            this.lblCaption.Size = new System.Drawing.Size(147, 33);
            this.lblCaption.TabIndex = 4;
            this.lblCaption.Text = "单据列表";
            this.lblCaption.TextAlign = System.Drawing.ContentAlignment.MiddleLeft;
@@ -160,9 +165,9 @@
            this.toolStripDropDownButton1,
            this.dc,
            this.dy,
            this.cx,
            this.yl,
            this.toolStripSeparator2,
            this.cx,
            this.sx,
            this.toolStripSeparator1,
            this.xz,
@@ -186,7 +191,7 @@
            this.Tool.Location = new System.Drawing.Point(0, 0);
            this.Tool.Name = "Tool";
            this.Tool.Padding = new System.Windows.Forms.Padding(0);
            this.Tool.Size = new System.Drawing.Size(1246, 50);
            this.Tool.Size = new System.Drawing.Size(1869, 75);
            this.Tool.Stretch = true;
            this.Tool.TabIndex = 16;
            this.Tool.Text = "toolStrip1";
@@ -200,7 +205,7 @@
            this.toolStripDropDownButton1.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
            this.toolStripDropDownButton1.ImageTransparentColor = System.Drawing.Color.Magenta;
            this.toolStripDropDownButton1.Name = "toolStripDropDownButton1";
            this.toolStripDropDownButton1.Size = new System.Drawing.Size(45, 47);
            this.toolStripDropDownButton1.Size = new System.Drawing.Size(64, 70);
            this.toolStripDropDownButton1.Text = "引出";
            this.toolStripDropDownButton1.TextAlign = System.Drawing.ContentAlignment.BottomCenter;
            this.toolStripDropDownButton1.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText;
@@ -208,14 +213,14 @@
            // eXCELToolStripMenuItem
            // 
            this.eXCELToolStripMenuItem.Name = "eXCELToolStripMenuItem";
            this.eXCELToolStripMenuItem.Size = new System.Drawing.Size(112, 22);
            this.eXCELToolStripMenuItem.Size = new System.Drawing.Size(163, 34);
            this.eXCELToolStripMenuItem.Text = "EXCEL";
            this.eXCELToolStripMenuItem.Click += new System.EventHandler(this.eXCELToolStripMenuItem_Click);
            // 
            // cSVToolStripMenuItem
            // 
            this.cSVToolStripMenuItem.Name = "cSVToolStripMenuItem";
            this.cSVToolStripMenuItem.Size = new System.Drawing.Size(112, 22);
            this.cSVToolStripMenuItem.Size = new System.Drawing.Size(163, 34);
            this.cSVToolStripMenuItem.Text = "CSV";
            this.cSVToolStripMenuItem.Click += new System.EventHandler(this.cSVToolStripMenuItem_Click);
            // 
@@ -265,7 +270,7 @@
            // toolStripSeparator2
            // 
            this.toolStripSeparator2.Name = "toolStripSeparator2";
            this.toolStripSeparator2.Size = new System.Drawing.Size(6, 50);
            this.toolStripSeparator2.Size = new System.Drawing.Size(6, 75);
            // 
            // cx
            // 
@@ -298,7 +303,7 @@
            // toolStripSeparator1
            // 
            this.toolStripSeparator1.Name = "toolStripSeparator1";
            this.toolStripSeparator1.Size = new System.Drawing.Size(6, 50);
            this.toolStripSeparator1.Size = new System.Drawing.Size(6, 75);
            // 
            // xz
            // 
@@ -346,7 +351,7 @@
            // toolStripSeparator5
            // 
            this.toolStripSeparator5.Name = "toolStripSeparator5";
            this.toolStripSeparator5.Size = new System.Drawing.Size(6, 50);
            this.toolStripSeparator5.Size = new System.Drawing.Size(6, 75);
            this.toolStripSeparator5.Visible = false;
            // 
            // sh
@@ -382,7 +387,7 @@
            // toolStripSeparator6
            // 
            this.toolStripSeparator6.Name = "toolStripSeparator6";
            this.toolStripSeparator6.Size = new System.Drawing.Size(6, 50);
            this.toolStripSeparator6.Size = new System.Drawing.Size(6, 75);
            // 
            // down
            // 
@@ -401,7 +406,7 @@
            // toolStripSeparator10
            // 
            this.toolStripSeparator10.Name = "toolStripSeparator10";
            this.toolStripSeparator10.Size = new System.Drawing.Size(6, 50);
            this.toolStripSeparator10.Size = new System.Drawing.Size(6, 75);
            // 
            // xd
            // 
@@ -420,7 +425,7 @@
            // toolStripSeparator4
            // 
            this.toolStripSeparator4.Name = "toolStripSeparator4";
            this.toolStripSeparator4.Size = new System.Drawing.Size(6, 50);
            this.toolStripSeparator4.Size = new System.Drawing.Size(6, 75);
            // 
            // tc
            // 
@@ -439,13 +444,13 @@
            // toolStripSeparator3
            // 
            this.toolStripSeparator3.Name = "toolStripSeparator3";
            this.toolStripSeparator3.Size = new System.Drawing.Size(6, 50);
            this.toolStripSeparator3.Size = new System.Drawing.Size(6, 75);
            // 
            // toolStripSeparator9
            // 
            this.toolStripSeparator9.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
            this.toolStripSeparator9.Name = "toolStripSeparator9";
            this.toolStripSeparator9.Size = new System.Drawing.Size(6, 50);
            this.toolStripSeparator9.Size = new System.Drawing.Size(6, 75);
            // 
            // mrlk
            // 
@@ -455,7 +460,7 @@
            this.mrlk.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
            this.mrlk.ImageTransparentColor = System.Drawing.Color.White;
            this.mrlk.Name = "mrlk";
            this.mrlk.Size = new System.Drawing.Size(60, 47);
            this.mrlk.Size = new System.Drawing.Size(86, 70);
            this.mrlk.Text = "默认列宽";
            this.mrlk.TextAlign = System.Drawing.ContentAlignment.BottomCenter;
            this.mrlk.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText;
@@ -465,7 +470,7 @@
            // 
            this.toolStripSeparator7.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
            this.toolStripSeparator7.Name = "toolStripSeparator7";
            this.toolStripSeparator7.Size = new System.Drawing.Size(6, 50);
            this.toolStripSeparator7.Size = new System.Drawing.Size(6, 75);
            // 
            // bclk
            // 
@@ -475,7 +480,7 @@
            this.bclk.ImageScaling = System.Windows.Forms.ToolStripItemImageScaling.None;
            this.bclk.ImageTransparentColor = System.Drawing.Color.White;
            this.bclk.Name = "bclk";
            this.bclk.Size = new System.Drawing.Size(60, 47);
            this.bclk.Size = new System.Drawing.Size(86, 70);
            this.bclk.Text = "保存列宽";
            this.bclk.TextAlign = System.Drawing.ContentAlignment.BottomCenter;
            this.bclk.TextImageRelation = System.Windows.Forms.TextImageRelation.ImageAboveText;
@@ -485,7 +490,7 @@
            // 
            this.toolStripSeparator8.Alignment = System.Windows.Forms.ToolStripItemAlignment.Right;
            this.toolStripSeparator8.Name = "toolStripSeparator8";
            this.toolStripSeparator8.Size = new System.Drawing.Size(6, 50);
            this.toolStripSeparator8.Size = new System.Drawing.Size(6, 75);
            // 
            // timer1
            // 
@@ -503,11 +508,13 @@
            this.grdMain.BackgroundColor = System.Drawing.SystemColors.InactiveCaption;
            this.grdMain.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
            this.grdMain.Dock = System.Windows.Forms.DockStyle.Fill;
            this.grdMain.Location = new System.Drawing.Point(0, 167);
            this.grdMain.Location = new System.Drawing.Point(0, 251);
            this.grdMain.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.grdMain.Name = "grdMain";
            this.grdMain.ReadOnly = true;
            this.grdMain.RowHeadersWidth = 62;
            this.grdMain.RowTemplate.Height = 23;
            this.grdMain.Size = new System.Drawing.Size(1246, 345);
            this.grdMain.Size = new System.Drawing.Size(1869, 517);
            this.grdMain.TabIndex = 19;
            this.grdMain.CellMouseUp += new System.Windows.Forms.DataGridViewCellMouseEventHandler(this.grdMain_CellMouseUp);
            this.grdMain.ColumnWidthChanged += new System.Windows.Forms.DataGridViewColumnEventHandler(this.grdMain_ColumnWidthChanged);
@@ -517,10 +524,12 @@
            // grdPrint
            // 
            this.grdPrint.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
            this.grdPrint.Location = new System.Drawing.Point(772, 146);
            this.grdPrint.Location = new System.Drawing.Point(1158, 219);
            this.grdPrint.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.grdPrint.Name = "grdPrint";
            this.grdPrint.RowHeadersWidth = 62;
            this.grdPrint.RowTemplate.Height = 23;
            this.grdPrint.Size = new System.Drawing.Size(25, 24);
            this.grdPrint.Size = new System.Drawing.Size(38, 36);
            this.grdPrint.TabIndex = 8;
            this.grdPrint.Visible = false;
            // 
@@ -531,12 +540,14 @@
            this.grdSum.BackgroundColor = System.Drawing.SystemColors.Control;
            this.grdSum.ColumnHeadersHeightSizeMode = System.Windows.Forms.DataGridViewColumnHeadersHeightSizeMode.AutoSize;
            this.grdSum.Dock = System.Windows.Forms.DockStyle.Bottom;
            this.grdSum.Location = new System.Drawing.Point(0, 512);
            this.grdSum.Location = new System.Drawing.Point(0, 768);
            this.grdSum.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.grdSum.Name = "grdSum";
            this.grdSum.ReadOnly = true;
            this.grdSum.RowHeadersWidth = 62;
            this.grdSum.RowTemplate.Height = 23;
            this.grdSum.ScrollBars = System.Windows.Forms.ScrollBars.None;
            this.grdSum.Size = new System.Drawing.Size(1246, 19);
            this.grdSum.Size = new System.Drawing.Size(1869, 28);
            this.grdSum.TabIndex = 47;
            // 
            // groupBox1
@@ -561,11 +572,42 @@
            this.groupBox1.Controls.Add(this.txtHBillNo);
            this.groupBox1.Controls.Add(this.label3);
            this.groupBox1.Dock = System.Windows.Forms.DockStyle.Top;
            this.groupBox1.Location = new System.Drawing.Point(0, 103);
            this.groupBox1.Location = new System.Drawing.Point(0, 155);
            this.groupBox1.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.groupBox1.Name = "groupBox1";
            this.groupBox1.Size = new System.Drawing.Size(1246, 64);
            this.groupBox1.Padding = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.groupBox1.Size = new System.Drawing.Size(1869, 96);
            this.groupBox1.TabIndex = 52;
            this.groupBox1.TabStop = false;
            //
            // txtHBillNo2
            //
            this.txtHBillNo2.Location = new System.Drawing.Point(1454, 16);
            this.txtHBillNo2.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.txtHBillNo2.Name = "txtHBillNo2";
            this.txtHBillNo2.Size = new System.Drawing.Size(193, 28);
            this.txtHBillNo2.TabIndex = 27;
            //
            // label8
            //
            this.label8.AutoSize = true;
            this.label8.Location = new System.Drawing.Point(1370, 22);
            this.label8.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.label8.Name = "label8";
            this.label8.Size = new System.Drawing.Size(80, 18);
            this.label8.TabIndex = 26;
            this.label8.Text = "单据号:";
            //
            // btnTB
            //
            this.btnTB.Location = new System.Drawing.Point(1662, 14);
            this.btnTB.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.btnTB.Name = "btnTB";
            this.btnTB.Size = new System.Drawing.Size(110, 36);
            this.btnTB.TabIndex = 25;
            this.btnTB.Text = "重新同步";
            this.btnTB.UseVisualStyleBackColor = true;
            this.btnTB.Click += new System.EventHandler(this.btnTB_Click);
            // 
            // cmbHStatus
            // 
@@ -577,111 +619,124 @@
            "已审核",
            "未关闭",
            "已关闭"});
            this.cmbHStatus.Location = new System.Drawing.Point(291, 41);
            this.cmbHStatus.Location = new System.Drawing.Point(436, 62);
            this.cmbHStatus.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.cmbHStatus.Name = "cmbHStatus";
            this.cmbHStatus.Size = new System.Drawing.Size(81, 20);
            this.cmbHStatus.Size = new System.Drawing.Size(120, 26);
            this.cmbHStatus.TabIndex = 1;
            this.cmbHStatus.Visible = false;
            // 
            // label7
            // 
            this.label7.AutoSize = true;
            this.label7.Location = new System.Drawing.Point(207, 15);
            this.label7.Location = new System.Drawing.Point(310, 22);
            this.label7.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.label7.Name = "label7";
            this.label7.Size = new System.Drawing.Size(77, 12);
            this.label7.Size = new System.Drawing.Size(116, 18);
            this.label7.TabIndex = 9;
            this.label7.Text = "订单跟踪号:";
            // 
            // label5
            // 
            this.label5.AutoSize = true;
            this.label5.Location = new System.Drawing.Point(213, 41);
            this.label5.Location = new System.Drawing.Point(320, 62);
            this.label5.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.label5.Name = "label5";
            this.label5.Size = new System.Drawing.Size(41, 12);
            this.label5.Size = new System.Drawing.Size(62, 18);
            this.label5.TabIndex = 9;
            this.label5.Text = "状态:";
            this.label5.Visible = false;
            // 
            // txtHOrderProcNO
            // 
            this.txtHOrderProcNO.Location = new System.Drawing.Point(291, 12);
            this.txtHOrderProcNO.Location = new System.Drawing.Point(436, 18);
            this.txtHOrderProcNO.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.txtHOrderProcNO.Name = "txtHOrderProcNO";
            this.txtHOrderProcNO.Size = new System.Drawing.Size(108, 21);
            this.txtHOrderProcNO.Size = new System.Drawing.Size(160, 28);
            this.txtHOrderProcNO.TabIndex = 10;
            // 
            // label6
            // 
            this.label6.AutoSize = true;
            this.label6.Location = new System.Drawing.Point(395, 41);
            this.label6.Location = new System.Drawing.Point(592, 62);
            this.label6.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.label6.Name = "label6";
            this.label6.Size = new System.Drawing.Size(65, 12);
            this.label6.Size = new System.Drawing.Size(98, 18);
            this.label6.TabIndex = 8;
            this.label6.Text = "生产车间:";
            // 
            // txtHDeptID
            // 
            this.txtHDeptID.Location = new System.Drawing.Point(460, 36);
            this.txtHDeptID.Location = new System.Drawing.Point(690, 54);
            this.txtHDeptID.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.txtHDeptID.Name = "txtHDeptID";
            this.txtHDeptID.Size = new System.Drawing.Size(162, 21);
            this.txtHDeptID.Size = new System.Drawing.Size(241, 28);
            this.txtHDeptID.TabIndex = 4;
            // 
            // dtpHBDate
            // 
            this.dtpHBDate.Format = System.Windows.Forms.DateTimePickerFormat.Short;
            this.dtpHBDate.Location = new System.Drawing.Point(78, 11);
            this.dtpHBDate.Location = new System.Drawing.Point(117, 16);
            this.dtpHBDate.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.dtpHBDate.Name = "dtpHBDate";
            this.dtpHBDate.ShowCheckBox = true;
            this.dtpHBDate.Size = new System.Drawing.Size(122, 21);
            this.dtpHBDate.Size = new System.Drawing.Size(181, 28);
            this.dtpHBDate.TabIndex = 1;
            // 
            // label2
            // 
            this.label2.AutoSize = true;
            this.label2.Location = new System.Drawing.Point(15, 14);
            this.label2.Location = new System.Drawing.Point(22, 21);
            this.label2.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.label2.Name = "label2";
            this.label2.Size = new System.Drawing.Size(65, 12);
            this.label2.Size = new System.Drawing.Size(98, 18);
            this.label2.TabIndex = 2;
            this.label2.Text = "开始日期:";
            // 
            // txtHMaterID
            // 
            this.txtHMaterID.Location = new System.Drawing.Point(683, 10);
            this.txtHMaterID.Location = new System.Drawing.Point(1024, 15);
            this.txtHMaterID.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.txtHMaterID.Name = "txtHMaterID";
            this.txtHMaterID.Size = new System.Drawing.Size(200, 21);
            this.txtHMaterID.Size = new System.Drawing.Size(298, 28);
            this.txtHMaterID.TabIndex = 5;
            // 
            // dtpHEDate
            // 
            this.dtpHEDate.Format = System.Windows.Forms.DateTimePickerFormat.Short;
            this.dtpHEDate.Location = new System.Drawing.Point(78, 37);
            this.dtpHEDate.Location = new System.Drawing.Point(117, 56);
            this.dtpHEDate.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.dtpHEDate.Name = "dtpHEDate";
            this.dtpHEDate.ShowCheckBox = true;
            this.dtpHEDate.Size = new System.Drawing.Size(122, 21);
            this.dtpHEDate.Size = new System.Drawing.Size(181, 28);
            this.dtpHEDate.TabIndex = 2;
            // 
            // label4
            // 
            this.label4.AutoSize = true;
            this.label4.Location = new System.Drawing.Point(636, 15);
            this.label4.Location = new System.Drawing.Point(954, 22);
            this.label4.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.label4.Name = "label4";
            this.label4.Size = new System.Drawing.Size(47, 12);
            this.label4.Size = new System.Drawing.Size(71, 18);
            this.label4.TabIndex = 7;
            this.label4.Text = "物 æ–™ï¼š";
            // 
            // label1
            // 
            this.label1.AutoSize = true;
            this.label1.Location = new System.Drawing.Point(407, 15);
            this.label1.Location = new System.Drawing.Point(610, 22);
            this.label1.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.label1.Name = "label1";
            this.label1.Size = new System.Drawing.Size(53, 12);
            this.label1.Size = new System.Drawing.Size(80, 18);
            this.label1.TabIndex = 0;
            this.label1.Text = "单据号:";
            // 
            // btnOK
            // 
            this.btnOK.Location = new System.Drawing.Point(683, 33);
            this.btnOK.Location = new System.Drawing.Point(1024, 50);
            this.btnOK.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.btnOK.Name = "btnOK";
            this.btnOK.Size = new System.Drawing.Size(200, 24);
            this.btnOK.Size = new System.Drawing.Size(300, 36);
            this.btnOK.TabIndex = 6;
            this.btnOK.Text = "快速过滤";
            this.btnOK.UseVisualStyleBackColor = true;
@@ -689,57 +744,34 @@
            // 
            // txtHBillNo
            // 
            this.txtHBillNo.Location = new System.Drawing.Point(460, 11);
            this.txtHBillNo.Location = new System.Drawing.Point(690, 16);
            this.txtHBillNo.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.txtHBillNo.Name = "txtHBillNo";
            this.txtHBillNo.Size = new System.Drawing.Size(162, 21);
            this.txtHBillNo.Size = new System.Drawing.Size(241, 28);
            this.txtHBillNo.TabIndex = 3;
            // 
            // label3
            // 
            this.label3.AutoSize = true;
            this.label3.Location = new System.Drawing.Point(14, 40);
            this.label3.Location = new System.Drawing.Point(21, 60);
            this.label3.Margin = new System.Windows.Forms.Padding(4, 0, 4, 0);
            this.label3.Name = "label3";
            this.label3.Size = new System.Drawing.Size(65, 12);
            this.label3.Size = new System.Drawing.Size(98, 18);
            this.label3.TabIndex = 4;
            this.label3.Text = "结束日期:";
            // 
            // txtHBillNo2
            //
            this.txtHBillNo2.Location = new System.Drawing.Point(969, 11);
            this.txtHBillNo2.Name = "txtHBillNo2";
            this.txtHBillNo2.Size = new System.Drawing.Size(130, 21);
            this.txtHBillNo2.TabIndex = 27;
            //
            // label8
            //
            this.label8.AutoSize = true;
            this.label8.Location = new System.Drawing.Point(913, 15);
            this.label8.Name = "label8";
            this.label8.Size = new System.Drawing.Size(53, 12);
            this.label8.TabIndex = 26;
            this.label8.Text = "单据号:";
            //
            // btnTB
            //
            this.btnTB.Location = new System.Drawing.Point(1108, 9);
            this.btnTB.Name = "btnTB";
            this.btnTB.Size = new System.Drawing.Size(73, 24);
            this.btnTB.TabIndex = 25;
            this.btnTB.Text = "重新同步";
            this.btnTB.UseVisualStyleBackColor = true;
            this.btnTB.Click += new System.EventHandler(this.btnTB_Click);
            //
            // Sc_ICMOBillList
            // 
            this.AutoScaleDimensions = new System.Drawing.SizeF(6F, 12F);
            this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 18F);
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.ClientSize = new System.Drawing.Size(1246, 531);
            this.ClientSize = new System.Drawing.Size(1869, 796);
            this.Controls.Add(this.grdMain);
            this.Controls.Add(this.groupBox1);
            this.Controls.Add(this.grdSum);
            this.Controls.Add(this.pPic);
            this.Controls.Add(this.Tool);
            this.Controls.Add(this.grdPrint);
            this.Margin = new System.Windows.Forms.Padding(4, 4, 4, 4);
            this.Name = "Sc_ICMOBillList";
            this.Text = "单据列表";
            this.WindowState = System.Windows.Forms.FormWindowState.Maximized;
WorkM/Éú²ú¹ÜÀí/Sc_ICMOBillList.resx
@@ -3917,7 +3917,7 @@
  <data name="toolStripDropDownButton1.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAE6SURBVDhPY0hOnvOfEgw2AAY6OjqA5Jn/v78f+P/tzYb/
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAE6SURBVDhPY0hOnvOfEgw2AAY6OjqA5Jn/v78f+P/tzYb/
        7+/P+f/iUsf/x8fK/t/Zmfz/2hr//xcW2v9PS0v7f+DAgf8MDAwIA2aeAWqdaYxiwDuoAY9gBqwFGWD3
        v9AbqBGkGZ8BX1+vh7sAZMDdXSAXBIBdADIgNWMh8QY8PlYO9QLCgDR8BvwBewFiwMtLnfAwuAoNA4IG
        QMIAZMBsoAGIMLhKrAvAXkByAaoBkEBMzcRiwPTjv8CShHBmwYr/abgMmHzgy//+7W/+d657/L91ya3/
@@ -3929,7 +3929,7 @@
  <data name="dc.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADoSURBVDhPrZMvD4MwEMXvm6Jn5uaWtGIGMUXmKHKgJvBo
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAADoSURBVDhPrZMvD4MwEMXvm6Jn5uaWtGIGMUXmKHKgJvBo
        asEiqeQ73O4glHb8C9uaPNFr+su7dy0EQYBHBQCsYXGh6zpsjcGmabCqKixLjUVRYJ7nmKUZKqUwiiIM
        wxCFlD0gjuMBMgKMBygnQOYDpNgB1AzQEyAlwIUuWMCWgycdJKQH6U66ka4kBpxJm4AXFccWtOOAW3Ad
        iLUWLKCet+BnIJYBNsS/AJwppFlqASe6KOQOQNGhP0Yf8PMUVkM07eCAAbMWkgMP6TNEHmPihLjrgAHa
@@ -3939,17 +3939,29 @@
  <data name="dy.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADmSURBVDhPlY6xDYMwFES9U3bKCmzACEh0FJmACRiAnoqK
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAADmSURBVDhPlY6xDYMwFES9U3bKCmzACEh0FJmACRiAnoqK
        jo6OzvH7yVk/OFHg0MnC/vfuhzOq6zrK76vzIrRtm3nf92sgBpdlieu6ZgCe5xmAXEot0zTZMABBXLiU
        grRUVRWHYTATYpOfYR9kiGbMnQelUTu5wzmsoDWk796GOI6jGRDDzH0BxAyQ1Z5e4xhuGUSQWbkAaE2B
        FMRN05h9uAD4JoHato1d9yjCOjOAH9Y+QggDOW5gwZdfEgR7iAf4YG53yq0eBADzjlWk/+QP2WXf9xmk
        u3/Bo2wICEG/Oo9XdCIYwhNr8dl8ZRwfdQAAAABJRU5ErkJggg==
</value>
  </data>
  <data name="cx.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAFOSURBVDhPnZBPK0RRGIfvxkL5Dha+gLK0tsRGkY3dkK2w
        UjJbCzQWk5EFRslEiUwZFNLo+lMaxWCIIUXIQhYzj/edc28NHUzzq1/v7Z7zPOee6/ybgMu3lhwP6NrO
        F9q6blqaSDaETnOs3UIiCx2bUBuDmjmojpr5t0QWZ9KQfJSNkll5roxAxQRUTZn+LvBOH0vBQgbidzB0
        KF+wCA1xaEyYqbVLPEG/CwMC9iShbQu69yEo0uFzM7V2QV2Y2E2e4Al07kGL3L/3CEKXsCRXSryaOZ3J
        oXs9qiieYFzuPSiSvmMYkef5B9h5hyvM1NoFGlmIXFPo6IWcJv9h5clA7oepFQ4HHLTFi7svsPoMG2+Q
        UtDPT4GC2XgTpCe5X/YktlNs733486C5AJ9FHdrrRaLxARuoscFuuEjwX1RQNqzRzWXDfhTy670qMY7z
        BdYeeKA8svstAAAAAElFTkSuQmCC
</value>
  </data>
  <data name="yl.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAF/SURBVDhPnZFNSwJBAIbnX1Q/IOoYeAzqHh3C6JAgJEgU
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAF/SURBVDhPnZFNSwJBAIbnX1Q/IOoYeAzqHh3C6JAgJEgU
        UQgaeQgxKZQwtBRC7YsiOnQPISISKyEPUrcgKqIipNQ11/XzbWfQdf1IxQceZnaYeVhmiNV9AIvDB/OG
        V3JF/F5z7cK9fwrSCtP6NhrhdNyxsWXEuOpkGwvFoiTFbg+xkdI0YjDb2aZsLi9J8fouMDqhhlKlhcm2
        9X9At2xlB1JCFnzJdCaHAl3jBeSyWWZpez3zSxYW4FIZJPmKQqZ0cDpcbS0zehML/HA8Ysk0k09npMNK
@@ -3959,22 +3971,10 @@
        AABJRU5ErkJggg==
</value>
  </data>
  <data name="cx.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAFOSURBVDhPnZBPK0RRGIfvxkL5Dha+gLK0tsRGkY3dkK2w
        UjJbCzQWk5EFRslEiUwZFNLo+lMaxWCIIUXIQhYzj/edc28NHUzzq1/v7Z7zPOee6/ybgMu3lhwP6NrO
        F9q6blqaSDaETnOs3UIiCx2bUBuDmjmojpr5t0QWZ9KQfJSNkll5roxAxQRUTZn+LvBOH0vBQgbidzB0
        KF+wCA1xaEyYqbVLPEG/CwMC9iShbQu69yEo0uFzM7V2QV2Y2E2e4Al07kGL3L/3CEKXsCRXSryaOZ3J
        oXs9qiieYFzuPSiSvmMYkef5B9h5hyvM1NoFGlmIXFPo6IWcJv9h5clA7oepFQ4HHLTFi7svsPoMG2+Q
        UtDPT4GC2XgTpCe5X/YktlNs733486C5AJ9FHdrrRaLxARuoscFuuEjwX1RQNqzRzWXDfhTy670qMY7z
        BdYeeKA8svstAAAAAElFTkSuQmCC
</value>
  </data>
  <data name="sx.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHXSURBVDhPjZJNSBtRFIUH3Ke4aiHVTRd2V7B7EXGhriyu
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAHXSURBVDhPjZJNSBtRFIUH3Ke4aiHVTRd2V7B7EXGhriyu
        ao0ImqppU39qSFVMtVZLrfQXFMlKFy4KbaXQTao7Cd1U3VSyFFQIqNXYZDKZTHJ8976ZTEZD6AcnL+/e
        e857A08p5uX7MEgv3i4h9GYRE3MLJUW9sdlPMG0SKhCvP4Z5/R8cIVYA0dk/AkOsKT1fUmpWzvkCz+2A
        4PQ7WRW0tnvR5unFvQ7vFVH9fvdjdPYNoccftANGJufZbOTyvJZjdOaD8/uJ4dAcNzO6ga3dPezEbNFe
@@ -3988,7 +3988,7 @@
  <data name="xz.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGySURBVDhPhZLNKwRxGMefUlLc5D9wUE5eolyUo5PkomhJ
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAGySURBVDhPhZLNKwRxGMefUlLc5D9wUE5eolyUo5PkomhJ
        ybZE5D2ippYty7Ic1NgclOLiqhAlym44yF3JuzW7s2tedvcxzzO7jbWDT337PfN7nu935vdrYH51EwXf
        BgpLor18Is75A+gP7CDYMetdx/9Y9l3wahsy7VnjZiqVshXh9Z7xSuSETLpXuJFIJm1FLC6e85ohK2Rc
        WOJNTU/Yir5B3DjEptZObGnrxv2DY57PACOzC1woqm4rVdMxaaRIchzfwhLPhioL8bQYuIbBaQ8XcUX7
@@ -4002,7 +4002,7 @@
  <data name="dj.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAD3SURBVDhPnZC9FYIwFEaZiQFkAB1ADzULZACGoJLKSio7
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAD3SURBVDhPnZC9FYIwFEaZiQFkAB1ADzULZACGoJLKSio7
        BqCzorNiABgABnjme+GFBPlR3znfSUJy7yMJdorG0S2KY1r6/lE0PBMcdA8z3NZEd9VtSmiolU7iSjwY
        CcNyUUL0UhzMIcK4An8IPFjGr2F0s3CTmrFOLbgN67vK79LQsOCqQhaIxIE9AfXVxT4Wwzp1NsGYQ4b9
        tjhSe4smiVKma19NL+4KBEQA85hH1OQH+T6T6MgagaArThys0V3g8ZwpgbryzBuIXAfB3iosZSUP3VEH
@@ -4012,7 +4012,7 @@
  <data name="sc.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAG5SURBVDhPlZDrK4NhGMafP8BHf4BPwkfmq8NnvhKlUHxw
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAG5SURBVDhPlZDrK4NhGMafP8BHf4BPwkfmq8NnvhKlUHxw
        iEgSIsQKqcVyPjQ2Z9mS0ooSlqElQ07RaGRib6zmeHmf27O3zSZcdbXnfp77+r33PRZKZdXN8Le4/pt4
        wO15g0vykvn5V4j/1/5iEfsSv/iPbPbjQAgvHp5ecXrlwv6ZE7bDC1h2j7BitWNpzYZ5swUG0zL6Jxag
        GZxCe68+GFBe14rjkzOMjs9iSD+DPt0ktAN6dHQPQ63pR0N7N+pbtdBNL6KmRRNijVo1jWexHcLjfcbN
@@ -4026,7 +4026,7 @@
  <data name="sh.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGgSURBVDhPlZPPK8NhHMc/5T7tRM0cOCAHJXGbxQ7c/AEc
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAGgSURBVDhPlZPPK8NhHMc/5T7tRM0cOCAHJXGbxQ7c/AEc
        d1EcjEwytSiH4SZcRHLQ7FemtlJDOPiZml8XSzMWMz9mK7Xevs/z7DvDzLzr9X2253k+r8+nvn0pM10t
        hGykjnMndRE1ZWJlVKvF+qdErytIF/1G6k72sMPTBULIRcCF4H2bcOMknC8SNsb/IXheJ8R8hAfPPwUH
        M4Qz6fKVlXBtJwRWxP99aX/NnKfgcJZwMkfwS9OwdW86TwFLc6MGmxPE2Zok+CwCzwjB5XDkLpbDJHYj
@@ -4039,7 +4039,7 @@
  <data name="qsh.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAGPSURBVDhPlZLLK0RhGMbfsrVRtkp2k4UFsUOxsPAn2NoI
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAGPSURBVDhPlZLLK0RhGMbfsrVRtkp2k4UFsUOxsPAn2NoI
        C0MzEmpQFi4LpWEjUhaGMYqyUINQjEtqGEqkcZkY4zLO1CGP73vPN2cujdtTv97vPd/7PL2ncyhZTTWE
        TKjrn6UGUVRgVElhnlF/DamvzjJN36FmMkteHk8RbhYJODXQNwnXHkJgmrA2+I+A51VC1Et4WPlnwN4Y
        4UQMX7gIV27C5ZzR+8TzZccfA/bHCUcTBL/YRtZd5x8DpKoqyrE+RMzGMME7YHDlG4WUGvtZMsRtJ8bV
@@ -4052,7 +4052,7 @@
  <data name="down.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAEXSURBVDhPpZG/TsJQFMbvO/kOsjrAzNI+Qu0L4MzCwg66
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAEXSURBVDhPpZG/TsJQFMbvO/kOsjrAzNI+Qu0L4MzCwg66
        mMgAC2wYmEggECCQdtDUuGhQFiWQfJxz7+0VUmgv8SRn6T395fsjeAbVK5SLInV934c8PjUMAAbYbrr4
        WTWxfqvjc1nB+7CE154nAXR2HhIDdhLQIkANHwsG3BnA9PHmPOQYoBRIwKiEFwLQydEmIAbwqxR8swK2
        MCIFfQ9B28H8qYDxw3UGgBV8ESD6A7CCkAENBuTSAYchqgxUiEHbxayRx+Q+A7DbPGuAVsAhsoWOSxby
@@ -4063,7 +4063,7 @@
  <data name="xd.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAHvSURBVDhPnZJNSFRRGIYPCBHYLl24d9EiKsuN48KNBbUo
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAHvSURBVDhPnZJNSFRRGIYPCBHYLl24d9EiKsuN48KNBbUo
        EGSEmEwXoo0iRkR/ZBkSaC3m74qmC3/GjS7Edv5RTQNCMzUyNMWUWFaTo6AIaqjQ2/d999id61SLXnjh
        cr73ec8991yVqXZPLzq9PfD6e+AL2M1rnZ4n4IyO29Xa0YUf27twhwDlJfv3mdaawz8lw1mNWbrV7sHa
        6jrcUxsYTOOPbprelAxnNWbp+r1HWF1ZhnoMDHwFKp8BeYO0s0+b38IDyXBWY5au3nmIdOqbhC6HgYIh
@@ -4078,7 +4078,7 @@
  <data name="tc.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAADCSURBVDhPpZJdCoMwEIRzpxxJ6Ak2z/ZZnysIBXuUHMA7
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAADCSURBVDhPpZJdCoMwEIRzpxxJ6Ak2z/ZZnysIBXuUHMA7
        bXeWrGBMYkoHh+gk8xl/XEneP7jXqXIWJkIgHscnT/PEy2vhz7ZhMQ/Dm5l3ObRcB1ACzAKQ6FTcV69G
        rgWTbUl3QFQtFgGpfAAoAVDOi2ZbrwW5hwY4N+P6FmDlkrsBq6zOy3AXIEkhGHMbIMaorgGgI8Cu7CsY
        wOZbAEgDBch/gOveRzgJAKLwH0CGJsDmxU1dAMiSu3R5iZr+oJuic1+SJ5jRbOqnmgAAAABJRU5ErkJg
@@ -4088,7 +4088,7 @@
  <data name="mrlk.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAH/SURBVDhPfZHfS1NhGMefkCLQu/A/6MK6SbMQFlg3dudN
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAH/SURBVDhPfZHfS1NhGMefkCLQu/A/6MK6SbMQFlg3dudN
        oBFDY9BF05XMMAoLL3bhxGB4zjzoVCKim4iCgkCMSam1cqP9aO4YJlpIDmqh00IRv73Pe87OWuV54Mt7
        znm/n895z0aF8Stj6FdGoARDUAf/H97jTp96FyZmjC8QwuRUBB0zACkiwT0i9rxvgBcvX4MZEye65Vex
        vp6HJ7yJ+1nYpmNyE3nRZcbEiW74AljL5UB3gOk84J8HnFPA0UfirZqIaoZPMQDZZcbEibp6+vE9mwUF
@@ -4103,7 +4103,7 @@
  <data name="bclk.Image" type="System.Drawing.Bitmap, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64">
    <value>
        iVBORw0KGgoAAAANSUhEUgAAABAAAAAQCAYAAAAf8/9hAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8
        YQUAAAAJcEhZcwAADsMAAA7DAcdvqGQAAAH4SURBVDhPjZPNS1RRGMZfI2jRLlqUEKLUQgsl3EauEoRW
        YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAH4SURBVDhPjZPNS1RRGMZfI2jRLlqUEKLUQgsl3EauEoRW
        /QN+phG4CQXTNrPLbzFrpZAuBIfEqChctFRndHI0YzKnxkHFYQgH50NH5+o8Pm/HwQ/s4oGHc++5z/O7
        77nnvSKPPZDyKYSfA8tN55N6NfMvK1XT+LIBxAH8PqfUqxnNitR+g1x/yQuRlJWCZVm2Uo965RozmpXq
        aRR/Io1jYgJwTdlLPeqt92QqqHLj7phZTCST2Nqxl3rUWzrOTKX7JGBykm9x2Us96r3p1ApOAf5G49iI