From b7f144bf5256d986762b27a07a7531f7679c52ce Mon Sep 17 00:00:00 2001 From: duhe <226547893@qq.com> Date: 星期一, 28 四月 2025 13:24:25 +0800 Subject: [PATCH] 三升:小诸葛接口 --- LMES/XiaoZhuGe_autoGetData.Designer.cs | 34 LMES/Program.cs | 6 LMES/XiaoZhuGe_autoGetData.resx | 335 +++++++++++++ LMES/XiaoZhuGe_autoGetData.cs | 72 ++ WebAPI/Controllers/数据同步/小诸葛同步/XZG_DataSynchronizationController.cs | 939 ++++++++++++++++++++++++++++++++++++++ 5 files changed, 1,348 insertions(+), 38 deletions(-) diff --git a/LMES/Program.cs b/LMES/Program.cs index f36a4e2..a123ba2 100644 --- a/LMES/Program.cs +++ b/LMES/Program.cs @@ -15,8 +15,8 @@ { Application.EnableVisualStyles(); Application.SetCompatibleTextRenderingDefault(false); - //Application.Run(new DingDing_autoGetData()); - //Application.Run(new XiaoZhuGe_autoGetData()); + //Application.Run(new DingDing_autoGetData()); //鏂帿灏斻�愰拤閽�-MES銆戝悓姝ユ彃浠� + //Application.Run(new XiaoZhuGe_autoGetData()); //涓夊崌銆愬皬璇歌憶-閲戣澏浜戙�戝悓姝ユ彃浠� DBUtility.ClsPub.AppPath = System.Environment.CurrentDirectory; @@ -25,7 +25,7 @@ DBUtility.ClsPub.SetIPAddress(); DBUtility.ClsPub.VersionNum = "12.1"; Pub_Class.ClsPub.VersionNum = "12.1";// - //=================================================================== + //=================================================================== try { if (DBUtility.ClsPub.CheckUpdate()) diff --git a/LMES/XiaoZhuGe_autoGetData.Designer.cs b/LMES/XiaoZhuGe_autoGetData.Designer.cs index ff58e8a..4bd975d 100644 --- a/LMES/XiaoZhuGe_autoGetData.Designer.cs +++ b/LMES/XiaoZhuGe_autoGetData.Designer.cs @@ -29,25 +29,35 @@ /// </summary> private void InitializeComponent() { - this.button1 = new System.Windows.Forms.Button(); + this.components = new System.ComponentModel.Container(); + System.ComponentModel.ComponentResourceManager resources = new System.ComponentModel.ComponentResourceManager(typeof(XiaoZhuGe_autoGetData)); + this.timer1 = new System.Windows.Forms.Timer(this.components); + this.timer2 = new System.Windows.Forms.Timer(this.components); + this.notifyIcon_Icon = new System.Windows.Forms.NotifyIcon(this.components); this.SuspendLayout(); // - // button1 + // timer1 // - this.button1.Location = new System.Drawing.Point(35, 22); - this.button1.Name = "button1"; - this.button1.Size = new System.Drawing.Size(105, 52); - this.button1.TabIndex = 0; - this.button1.Text = "button1"; - this.button1.UseVisualStyleBackColor = true; - this.button1.Click += new System.EventHandler(this.button1_Click); + this.timer1.Tick += new System.EventHandler(this.timer1_Tick); + // + // timer2 + // + this.timer2.Enabled = true; + this.timer2.Interval = 3600; + this.timer2.Tick += new System.EventHandler(this.timer2_Tick); + // + // notifyIcon_Icon + // + this.notifyIcon_Icon.Icon = ((System.Drawing.Icon)(resources.GetObject("notifyIcon_Icon.Icon"))); + this.notifyIcon_Icon.Text = "LMES"; + this.notifyIcon_Icon.Visible = true; + this.notifyIcon_Icon.MouseDoubleClick += new System.Windows.Forms.MouseEventHandler(this.notifyIcon_Icon_MouseDoubleClick); // // XiaoZhuGe_autoGetData // this.AutoScaleDimensions = new System.Drawing.SizeF(9F, 18F); this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font; this.ClientSize = new System.Drawing.Size(800, 450); - this.Controls.Add(this.button1); this.Name = "XiaoZhuGe_autoGetData"; this.Text = "XiaoZhuGe_autoGetData"; this.ResumeLayout(false); @@ -56,6 +66,8 @@ #endregion - private System.Windows.Forms.Button button1; + private System.Windows.Forms.Timer timer1; + private System.Windows.Forms.NotifyIcon notifyIcon_Icon; + private System.Windows.Forms.Timer timer2; } } \ No newline at end of file diff --git a/LMES/XiaoZhuGe_autoGetData.cs b/LMES/XiaoZhuGe_autoGetData.cs index a15e860..096dacc 100644 --- a/LMES/XiaoZhuGe_autoGetData.cs +++ b/LMES/XiaoZhuGe_autoGetData.cs @@ -15,15 +15,75 @@ public XiaoZhuGe_autoGetData() { InitializeComponent(); + + //涓虹郴缁熸墭鐩樺浘鏍囧鍔� 鍙冲嚮鑿滃崟椤� + ContextMenu contextMenu = new ContextMenu(); + MenuItem exitMenuItem = new MenuItem("閫�鍑�"); + exitMenuItem.Click += ExitMenuItem_Click; + contextMenu.MenuItems.Add(exitMenuItem); + notifyIcon_Icon.ContextMenu = contextMenu; + + //椤甸潰鍒濆鍖� + set_initPage(); } - private void button1_Click(object sender, EventArgs e) + #region 椤甸潰鍒濆鍖� + public void set_initPage() { - XZG_DataSynchronizationController t = new XZG_DataSynchronizationController(); - - //t.getAddMaterAsync_1(); - - t.icmoInfoSyncFromERPToXZG(); + timer1.Enabled = true; } + #endregion + + #region 瀹氭椂鍣�1锛氱敤浜庨殣钘忛〉闈笌浠诲姟鏍忓浘鏍� + private void timer1_Tick(object sender, EventArgs e) + { + //绯荤粺鎵樼洏鏄剧ず杞欢鍥炬爣 + this.notifyIcon_Icon.Visible = true; + // 闅愯棌涓荤獥浣� + this.Hide(); + // 闅愯棌浠诲姟鏍忚蒋浠跺浘鏍� + this.ShowInTaskbar = false; + + timer1.Enabled = false; + } + #endregion + + #region 瀹氭椂鍣�2锛氱敤浜庡畾鏃跺悓姝ユ暟鎹� + private void timer2_Tick(object sender, EventArgs e) + { + try + { + XZG_DataSynchronizationController t = new XZG_DataSynchronizationController(); + t.dataAnsy(); + }catch(Exception e1) + { + string sErrMsg = ""; + } + } + #endregion + + #region 绯荤粺鎵樼洏鐐瑰嚮鍥炬爣鍚庡浘鏍囦粛瀛樺湪 + private void notifyIcon_Icon_MouseDoubleClick(object sender, MouseEventArgs e) + { + + + if (e.Button == MouseButtons.Left && e.Clicks == 2) // 鍙屽嚮宸﹂敭浜嬩欢绀轰緥 + { + // 澶勭悊鍙屽嚮浜嬩欢锛屼緥濡傛樉绀烘垨闅愯棌涓荤獥浣撶瓑銆� + //this.Show(); // 绀轰緥锛氭樉绀轰富绐椾綋锛堝鏋滀箣鍓嶆槸闅愯棌鐨勶級 + //this.WindowState = FormWindowState.Normal; // 纭繚绐楀彛澶勪簬姝e父鐘舵�侊紙闈炴渶灏忓寲锛� + + //绯荤粺鎵樼洏鏄剧ず杞欢鍥炬爣 + this.notifyIcon_Icon.Visible = true; //淇濊瘉绯荤粺鎵樼洏鍥炬爣浠嶆棫瀛樺湪 + } + } + #endregion + + #region 绯荤粺鎵樼洏鍥炬爣 鍙冲嚮鍔熻兘鑿滃崟閫�鍑烘寜閽簨浠� + private void ExitMenuItem_Click(object sender, EventArgs e) + { + Application.Exit(); // 杩欏皢鍏抽棴鏁翠釜搴旂敤绋嬪簭 + } + #endregion } } diff --git a/LMES/XiaoZhuGe_autoGetData.resx b/LMES/XiaoZhuGe_autoGetData.resx index 1af7de1..356ab97 100644 --- a/LMES/XiaoZhuGe_autoGetData.resx +++ b/LMES/XiaoZhuGe_autoGetData.resx @@ -117,4 +117,339 @@ <resheader name="writer"> <value>System.Resources.ResXResourceWriter, System.Windows.Forms, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b77a5c561934e089</value> </resheader> + <metadata name="timer1.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>17, 17</value> + </metadata> + <metadata name="timer2.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>136, 17</value> + </metadata> + <metadata name="notifyIcon_Icon.TrayLocation" type="System.Drawing.Point, System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a"> + <value>246, 21</value> + </metadata> + <assembly alias="System.Drawing" name="System.Drawing, Version=4.0.0.0, Culture=neutral, PublicKeyToken=b03f5f7f11d50a3a" /> + <data name="notifyIcon_Icon.Icon" type="System.Drawing.Icon, System.Drawing" mimetype="application/x-microsoft.net.object.bytearray.base64"> + <value> + AAABAAUAICAAAAEAGACoDAAAVgAAABAQAAABABgAaAMAAP4MAAAwMAAAAQAgAKglAABmEAAAICAAAAEA + IACoEAAADjYAABAQAAABACAAaAQAALZGAAAoAAAAIAAAAEAAAAABABgAAAAAAAAMAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAXYSURH+XVYuh + a5mrhaGrAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAQIOeXIudAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + L4erAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAood1wZ2C17KS4a+G5bua4MKpy6KDrYBhknZkAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAh6u5PImpAAAAAAAAAAAAAAAAAAAAAAAAAAAA + wqGN98qn/+3K///x///////9///////////3//fm/8yn15Njl3NaAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAfLHGN4anAAAAAAAAAAAAAAAAAAAArJJ48ruI/+vF///z///7//7w//La/+vP/+7T//bm + //TZ//rj///w//HY/b6RyI5pinhpAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAfLbNLoaoAAAAAAAAAAAA + AAAAvpVv+8KO/9qw/+nG/+vP/+DB/9++/sKa/rKE/bWH/8ij/LuP/cKW/tCm/+K//+bJ/9Gx2Y9bj3BX + AAAAAAAAAAAAAAAAAAAAAAAAAAAAhLPFKo+4AAAAAAAAAAAAt41u6K15+MWZ/9Co/8ai/sup/8Kc/76W + /8Ca/sGa/rOF/7+Z+66C+Kl79at997CD+7uQ/86u77qa2JFcjHBaAAAAAAAAAAAAAAAAAAAAAAAAAAAA + MJ7MdY2XAAAAj29Yz5dw4KZ99bqR+bmS/ryV/82q/82n/7qM/7iI/8GX/8qk/9Cv/7qN/q59+K1+8qp6 + 7qV387OL7rKM2ZtxyotYi351AAAAAAAAAAAAAAAAAAAAAAAAOaPPVYqge2xjjlo2u4lp4aaA87OL/L6V + /8ie/9iz/82k/7uL/7+S/7yM/7yL/86m/9Ct/8GX/rSE+a5+8ql47ayB6auB2ZVkxoFKp3FDAAAAAAAA + AAAAAAAAAAAAAAAAOZjASaLKaVVGhFg6uIho5qyE+72S/8ui/9Kp/9Wu/8+m/8GR/8eX/8aX/8KQ/8uf + /8ui/8WZ/8qi/r6V+LCA86+C662C35poxIFPvXQ1iW1TAAAAAAAAAAAAAAAAAAAARpKwXcLsVmhqiF5B + u5J467OR/cab/9Ko/8uf/8eZ/9ev/8WU/8ma/8mZ/8aV/8+j/9Sq/72J/76N/8OY/cOb+sCb87WM5J1p + zopXunQ6oGc0AAAAAAAAAAAAAAAAAAAAZZqwZL7gXpipg1s/vI5y58Gl/Ni3/9Os/8SU/8SV/9qy/8qZ + /8yc/82d/8ya/9Cg/9qx/8ST/8CO/7yI/riH/b+U+sOf8LKH25lou3Y+r2cojX9yAAAAAAAAAAAAAAAA + AAAAT569ernLe3htvoll3rGP98GZ/9ay/+G9/9+6/+XC/9Wo/9Cg/8+d/8+b/9Cd/+C2/8uY/8aT/8OR + /7yK/rqL+b6U8q+A5ql+xo1gsW81jG9WAAAAAAAAAAAAAAAAAAAAToCOf7C9f5aUvIFb26SB87GD/b6N + /8ud/9ar/+vI/+7L/+7I/+nC/+G1/9mr/+K5/82a/8aT/8WT/7+M/8CR/MGZ9a176KJty4tYsnVCk2xN + AAAAAAAAAAAAAAAAAAAAbGpcdJaglaejsopu36R+7bOJ+b2O/siW/8qV/9yv/9ut/9el/+Cx/+W6/+nA + //DN/+S8/9ao/8uZ/8CM/8GQ/cWd+LKA7Kl10pBbtHAzmGc+AAAAAAAAAAAAAAAAAAAAj1stcYWJqa6m + sJ2I3KB66LGJ9bqL/cmY/86b/9yt/+C0/9Kf/9Wh/9Og/9Oe/+S4/92v/9ms/9qx/9Ko/8yh/cmh+LN/ + 7al01JVftXU6mmc9AAAAAAAAAAAAAAAAAAAAo1kegnRipKafwbemh61mgaBM77WF+8WT/suY/9io/+K4 + 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 + dqghjLj8DjlKdAAAADgAAAA7AAAAHwAAAAkAAAAAAAAADAAAABkAAAAmAAAANyYcFWd/YFCu0qKH7Pe/ + lP//167//+/P///86P////X////x////9v////n/////////8////+r///7t///jyf//v5T/6Ztn/7Rw + QOlhOhy1GA4FfgAAAF8AAABYAAAASwAAADYAAAAjAAAAEQAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAFVhzDBlpiboii7f8DjhJdAAAADwAAAA/AAAAIgAAAAwAAAALAAAAGgAAACIRDAhIak8yoMyb + bOn9yaT//+PL///z3f///Or////3///////////////2////9/////b////9/////v////X////0//// + +///+/L//+TI//2+kv/nl2H/rnFG5lA3JqcGAwBtAAAAXAAAAFIAAAA7AAAAIgAAABEAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAG3edEBx5nsMhjLj/DjxPfQAAAEAAAABEAAAAJwAAABYAAAAYAAAAIywg + FGCheE7K7LN+//3Imf/+4Lb///vh////+P////v////u///64v//8NL//+bA///kv///47v//+7T///0 + 3P//7Mj///HP///21P//++H////v///13f/9zan/9K+D/9iZbfx/TCPLGQ4EfgAAAF4AAABTAAAAOwAA + ACQAAAARAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAG3uhERx6oMMhj7v/D0BUjwAAAEQAAABLAAAAMAAA + ACAAAAAhQC4db76LW+Pvtn//98SX///bsf//68P///LV///w1v//6cz//+vP///jw//+yJ///riM//65 + jv/9tor//sWd///Qrv/+wJT//sWa///OpP//1q3//+C6///szf//79P//te6//O+nf/ajlf/nFwr3yUV + CIcAAABdAAAAVAAAADsAAAAhAAAADQAAAAAAAAAAAAAAAAAAAAAAAAAAHX6lEBx6n78lk7//E09mqAAA + AEkAAABRAAAAPAAAACpALiByxY5b7OWsd//tuY7//s+l///ctP//17L//9a1///Wtv/+x6D//sei///L + qf//xKL//biR//2ufv/9q3r//rWL//7CoP/6roH/+Kt9//qvgv/7tIj//LyQ///Emf//zqj//9i2//3X + vf/nsI7/2Y1V/6ViK+gpFgiKAAAAXQAAAFAAAAAzAAAAGwAAAAwAAAAAAAAAAAAAAAAAAAAAFmSCDRpr + jLUsmsj/GmiJxQEFB1UAAABVAAAAQjEjGHG2gmDr259t/+GqfP/2wpX//82i//7Jo///wZz//sOe//7M + q///w5z//8Oc//+5jf//u5L//8up///Hov//tor//7WJ///HpP/9s4f/+6x9//erff/0q3v/86p9//au + gf/5tIj/+7iM//7Lqv/1xKb/3qiE/9WRXf+fYS7mHhAFggAAAFgAAABGAAAALAAAABUAAAAIAAAAAAAA + AAAAAAAADkJXCBVad6Ywm8n/IoCm3gMRF2kAAABUEwwGbIteO9zKk27/0Jlx/+asgf/0u5L/+LyV//m7 + lP/9vJX//sGa///Qr///zqj//8Wd//+3iv//t4b//7uO///Hof//zqr//8mj///Orv//uIz//699//2w + gf/4rn//9Kt8//Coef/uqHv/8Kl7//a7l//yt5H/4KJ4/9CZc//Sk2L/iFo11QsHBW0AAABSAAAAPgAA + ACIAAAAMAAAAAAAAAAAAAAAAAAAAABNbeI8zmMP/MZvH+gQlNIYBAABeUzMew59nQP+1hGT/0Jl3/+Sm + gf/vsov/9LWP//q6kv//wZn//8ef///XtP//1bD//76S//+6i///vY7//7uM//+5if//v5P//8ym///Z + uv//yqT//7aI//+zgP/9sYH/+q+A//Wtff/wqXr/66R1/+6wiv/uso3/459v/9KPX//GhVL/xYZU/1s/ + KrIAAAFfAAAATwAAAC8AAAATAAAAAAAAAAAAAAAAAAAAABBVcXIvkbr/Ra/d/wtLZq4iEQiUeksr+41b + OP+vgGD/1J9+/+WngP/xs4r/+rqS///Dmv//yqH//82j///buP//0qz//7yM//+/kP//wJP//7+S//+/ + j///vIz//7uH///PqP//1rT//82o///FnP//tof//a9///muf//1rX3/8Kd3/+2uhP/qrof/4p9u/9mW + Zv/Ef0z/uXI3/6VnMPMoGQuLAAAAVwAAAD0AAAAdAAAACgAAAAAAAAAAAAAAAAo9UFUmiLD7Vrjl/yqC + qOZXRjbifFE0/4RXOP+vfl7/1aKB/+irgv/3uI7//sKa///Lov//0Kf//9Or///ZtP//1K7//8CQ///E + lP//xZb//8aW///Elf//w5T//7+O///Opf//zab//8CS///Np///zaj//8GY//yzhf/4rXv/9Kp5//Gy + hv/tsYr/455t/9uYZ//Kh1X/tXI8/7hwMf9zRRzNBAIBYwAAAEYAAAAoAAAAEwAAAAAAAAAAAAAAAAw8 + TjMbeZ7jWbfg/0mt2f9WYmD/fVU8/4hlTP+uf2L/1aOE/+ywh//7v5T//8mg///RqP//1Kz//8yh///L + n///2rb//8SV///Flf//yJn//8mZ///ImP//x5f//8WT///Sqf//1rL//72K//+8iv//wpX//8uj///J + p//8v5n/97KD//azh//xtpH/6KFu/96aaf/Pi1v/vHlD/7VvNP+mZSr3LBoLiwAAAEkAAAA0AAAAGwAA + AAkAAAAAAAAAAA01RhIUZ4jASKnS/2rI7v1AeIz/dk4x/45sU/+xjHP/2KqO/++2lP/7wpn//s6k///V + q///zqL//8KR///Hmf//3rr//8qa///Glf//yZr//8qa///Jmf//yJj//8aV///Spf//3Lf//8WT///A + j///vIr//7uK//++kP/+xZv//cWg//vDof/2vZj/7KVz/+Ocaf/UkF7/w39L/7BtNP+zbC3/YjoXvAIB + AFMAAAA8AAAAJAAAAAwAAAAAAAAAAAAAAAATXnyTMZS+/33M5/1SpMD/Y1lL/5RiQf+wh2z/1qyS/+7H + qf/507H//tSv///Knf//v4///8CQ///GmP//37r//9Kk///JmP//zJ3//8yc///Lm///y5r//8mX///Q + of//3rn//8ma///Dkv//wZD//76M//+6h///toT//biK//zDm//7yKj/9LmS/+qqe//blmP/yYRP/7Jv + Nf+waiz/jFMh4xIKA2gAAABAAAAAKwAAAA8AAAAAAAAAAAAAAAAMP1NWJoeu922zzv98w9f/VXmB/5do + SP+xgWD/z6WI/+jEpP/30rL//du+///buf//1az//82h///ImP//3LX//9aq///Hlf//zZ3//8+f///Q + oP//0Z7//86b///RoP//473//9Cg///Fkv//xZP//8OP///Ajf//u4z//7aD//y5if/6wpz/9riN//O5 + kf/mrIP/1JVn/7h1P/+qZSf/omAk9y4cDocAAABDAAAAMQAAABIAAAAAAAAAAAAAAAADFRwiInCP1Fic + uP+Iv83/ZZ2s/4h2ZP+6hWL/zJ9//+OwjP/zsob//MSa///Xsv//48H//+jH///lxP//6sv//+K8///T + pP//0qL//8+d///Om///0Zz//8+c///Rnf//5b7//9ap///Jlf//yJb//8aT///CkP//v4z//7qI//+8 + kP/7xZ7/8698//CqeP/pp3r/26R5/8OMYv+rcD//qmgt/1AyGqkAAABJAAAANAAAABQAAAAAAAAAAAAA + AAAMCAUUNVZew02Npv9+rLr/grK6/3mDfv+7f1f/zZJt/+Ctiv/xroH/+reH///Aj///yZr//9Ko///d + tv//7Mr///bW///x0P//8c3//+rF///gtv//2an//9Sg///Omf//4rj//9iq///Jlf//ypj//8eW///E + k///wY3//7yI//+/kf/9yKL/97KE//Otev/qo2//25Zh/8WHVf+udkj/r3NE/2dDJsEBAQFQAAAANQAA + ABQAAAAAAAAAAAAAAAAgDAAebFM40U19i/9vlaL/lLCw/4CWlf+vgWL/05Fo/96tjf/usYf/97iK//zA + kf/+xZP//8iV///Jlf//2av//+rE///cr///5bn//+7H///yzf//8s7///HL///pw///7cr//+C1///M + mP//yJX//8eU///Fk///wo///72L///Ck//+yaT/+bSG//Wxfv/uqnX/35pn/8iFT/+ubDL/rGkv/3hN + KdEJBwVZAAAAMwAAABUAAAAAAAAAAAAAAAAjDwApi0wa3mBvbP9kiJT/maai/5mppP+hjXz/1pJn/96q + if/osYn/87WH//nAkP/9xpb//82b///Nmf//1aX//+fA///ToP//0Zz//9ah///XpP//2qv//+G0///m + vP//8c3///LT///owf//37T//9Ok///Ilv//wo7//76I///Ckf/+zKj/+reI//eyf//vrHj/4aBs/8+O + WP+0dDz/rmkq/4FQKNoQCgdfAAAAMAAAABQAAAAAAAAAAAAAAAAjEgIskkkQ4n5iQ/9jgIj/lJ2c/66w + o/+hnpD/zJNu/+Gqg//lsYr/8LGE//i+j//8x5b//82b///Pnf//1aL//+rC///aq///06D//9aj///U + of//06D//9Og///RnP//4bP//+i////aqf//37T//+G6///dt///1Kr//8mZ///Elf/+zaf/+riG//ez + fv/wrXr/4qNu/9CRW/+0dj//r2wv/4RSK90RCwhfAAAALgAAABQAAAAAAAAAAAAAAAAjEgMokUwV4Jha + Jv9wdGv/i5eX/7ayp/+0r53/vJd7/+KlgP/lso//7LCB//W+jv/7xZX//sqY///OnP//0qD//+jA///e + sf//1KH//9mn///Xpf//16X//9ak///ToP//3bH//+W8///Omv//y5b//8yZ///QoP//0qj//9Wt///V + rv//1rL//MKV//i1gv/vrHf/4qBq/8yNV/+ydD3/rmwv/4NOJtsQCgVaAAAAKwAAABMAAAAAAAAAAAAA + AAAkEwQgjE0Y16NbI/+Ma07/goZ9/7Crof/IwLD/vKya/9imgv/msov/6Kp9//G5iv/4w5H//cmX//7N + m///0J3//+S7///gtf//05///9im///Xpf//2Kb//9im///Wof//3q///+rB///Sn///z5r//8yY///I + lP//xZH//8SQ///Imf//17T//c+p//3In//1vZL/4qV2/8qKVv+xcjn/rWop/3xIHdMNBwZPAAAAJwAA + ABEAAAAAAAAAAAAAAABSLA4Xf0cZyKJdJ/+la0H/jHtm/6GXiP/ItaH/zL6t/8q1n//mupj/57KI/+y1 + h//zu4v/+cOQ//7Kl///z5v//+K3///it///0p7//9ak///VpP//1qT//9aj///VoP//3az//+vD///W + of//0Zv//86a//7Jlv/9x5T/+cCN//K6iv/nv5v/2KZ8/8yacf/Dl3T/to1t/6Z9W/+TZT7/lFYi/1sx + EccBAQFKAAAAKwAAAA4AAAAAAAAAAAAAAABsPBYJhUscppxcJ/+pajv/p3lT/5qNfP+7ppD/1Leb/8iz + nf/Yu6L/6MKc/+fFof/uyKH/9sme//vMm//9zJj//9yw///kuv//0Z3//9Wi///Vo///1aL//9Wj///T + nv//26r//+rE///Wov//0Zr//8+b//3Klv/5xJH/8rqI/+Wvg//SrYz/tZNr/4SQM/97hyP/gHRI/4Ne + Pf9yYFD/eGVa/0UuHroAAABGAAAALQAAAAoAAAAAAAAAAAAAAAAAAAAAZjsWeKBfKv+laTv/t3ZF/6iH + av+tnIn/0LOX/9e5nP/ItJ7/5bCE/+i3i//ow5z/8M+p//fZtP/63rj//ubC///qxP//263//9mr///X + pv//1aH//9Kf///Rmv//16T//+rE///Uof//zpf//syY//rGk//zvo3/5rCC/9Kfdv+zmnv/epxb/1W0 + Jv5bqQD/VIJG/1BrZ/9Ilbr/Tp7F/zhaZs0DDRBRAAAAMAAAAAAAAAAAAAAAAAAAAAAAAAAAWDQTSJxd + KfOlbD3/s3JB/8CFWP+slHr/wKeR/9y7n//Twq3/z62M/+qrev/osYP/6riI//HClP/2zaD//N20//7r + xv//5r7//+rC///qxP//6L///+a6///hsv//3rH//+vD///Vof//zZb/+8iS//XAjP/ptYX/1qV4/7qN + af+JnHX/Yr1x91zCV/9isST+P6Fy8yC/4Pgd0v7/Jc71/yvA6fEQVWeKAAAAOAAAAAAAAAAAAAAAAAAA + AAAAAAAAPCMOFYVQJMurbz//qm47/8WBTP/Ekmr/tJuE/82xl//gybH/zLmi/9iqg//tsYD/6LKE/+y4 + if/xvYz/98ye//vetv/9z53//9Sh///bq///36///+e6///rwf//7cb///XP///pvP//4bL/99Kj/+zA + jv/aq3z/wJJo/6SDYf9zq2D/XLQ6/2C3OP+KlVL/W6a0/xPN9v8I0Pj/Ds30/wvV9f8Ll6/IAxwhQwAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAGtCHH6rcD3/p2w4/7d3Qv/Tj1v/xJhz/7mhi//YwKr/4Mir/8ew + lf/crYT/7bOB/+i0hf/quYn/8MWY//XZsv/6zJr//c2X//7Qmv//zpj//9Ga///Rmv//16P//+zE///g + sv//3q3/79Os/+DFof/Iro3/sJJ1/6ydb/9pnxj9S6QA/2mTAP+lbE7/dJTD/zO59/8sqPD/KJfr/xKs + 7v8ArMfhAFlgZwAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAEksFCWeaTzgqGw2/61uOf/Gh1L/15hm/8Kb + ev/DsJ7/3cSq/9m/of/HsJb/366E/+yygf/ns4T/6r6R/+/Sqv/0x5f/+ciV//vOm//9z5r//9Gc///Q + mv//0Zz//+a9///UoP//ypH/5beF/9Gofv+4mHX/zaiL/9awcP93mg3/UKQA/4V5Ev+jZmn/cJjU/06o + +P9KkO3/Q3Lm/zRs5v8Rh8LlAlhkegAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAABzUDZ6s3pM/6pw + O/+3eUP/0Y9c/92cav/JqY3/xbOf/9y+nv/XwKP/xrCV/92vhf/rsID/5rWJ/+fKpP/rwJP/8L+O//TF + lf/4yZf//M2Z//7MmP/+zpr//+S6///Vov//ypT/2qx+/8SYb//Hnnf/5LeN/9imbv+cmR7/cpMC/51r + L/+Tepr/W6ns/0iu+P9DnO3/Oobp/zZo5f8hUbfmBx46hwAAAAkAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AABFMCEZnW5Iy7iFW/+2g1n/xY5g/9ubaP/mroL/y62P/8Opjf/bvZ//1b6j/8Ovlv/Zq4T/6rOD/+fC + nf/kuIv/5raH/+q8jP/uwI7/88SR//fFkv/5x5T/+921//3Rn//+yJH/0KR5/8accv/aqnv12KJt/9iZ + Yf/CkjL/qXwP/6VrU/9yksf/TrX5/0qw9P9Ene7/OYjp/y9t5f8mRb/wEBhQpAAAABEAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAYz8fTa51QfC4hlj/wJJq/9Kkfv/puZP/7byT/8urif/BrpX/17uf/9O8 + of+/rZT/zq2J/+bAmv/otIb/4a19/96wgv/gsoX/47aG/+i5h//uv4z/9Nau//jLmv/8wo3/ypht/9Kd + bP/Um2H/zZFP/8iIO//Jfxv5wG0i/417iPNSo+3+RKv4/0Sa7f86hen/MWzl/yta4f8qUtv6FSpwvgAA + ABcAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAHhMI3u5djr9t31E/8CNWf/ar4f/8sSf//TF + nP/avqP/w7em/83BsP/QxK//urem/7q2pf/Uroj/5Kp5/9+nd//Wpnj/1Kd6/9ipe//er4D/5MKe/+u0 + iP/wqHf/zI9e/8+UVf/Jij7/w38m/r57Ev+/fCn/p21D/4prXv9Kmt//OJPx/zR35v8sX+L/KVPh/ypU + 4f8qV+H/GDGBxQAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACOUCKNuG4v/7l0 + OP/JkWT/4a+F//C2hf/7w5L/576X/8e4ov++vbD/xsi7/7bEvv+jsar/r6mV/82rif/eqX//2KB4/86V + bf/Jj2n/y5x+/9GSa//XjmL/yItH/8SDK/m+ehDzw30a/8SDOv+/iWP/uHdK/6piLf9NaobXOI/u+zJ0 + 5v8qXeP/KVTh/ypW4f8qV+H/GTWIvgAAACAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AABwOxcJjEscj71kJ/vBeEv/zY9p/+Kdb//5tor//8GT//a+kv/VsZH/t6uc/7O7t/+ut7X/lqqs/4ee + of+am5T/wJ2I/9Kbff/JlXf/upeB/7iSeP+/lHb/voU+/8GELP/LjU3/zYtc/8B7Sv/HiWT/w3tL/0op + D40VL0VGM4TZvzN14/srX+P/Klbh/ypX4f8qV+D+GDOFsQAAAB0AAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAHtBGHS0bUDqxn1S/858TP/pn3b//7+Z///Rq///1a7/7s+u/8bN + wv+itrX/mbG0/5Czu/9zprT/YZWj/3qQkP+mm4r/w7Of/8O2n/+7spz/tauX/76ljf/Cl4D/uYNk/7t3 + Sv+ocU/nPykcdwEAABkAAAAbDyhDPyZUpKwrXuD1KVbg/ipX4f8fVa37FS1zkQAAABkAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAACFUTFErGk9xMFqLv/Qfkj/5ptv//m9 + mP//2rf///LQ////8v/m8+T/stfU/4bC0v93vNX/arnX/0+nyf9Bk7D/Xpiq/5mrov/FrI3/w5Fw/7B4 + Vv+mbEr/pG1K/3FPOsseFhFgAAAAHwAAAB4AAAAeAAAAHwAAACsULWxwIki90CpX4PwbVJrtBxAmSAAA + ABYAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAaEInF4pK + G3yxYynZx3M5/92KVP/wpXj/+sSf///t2v//+uL///rl/+Dw5v+j0df/cbfP/1ex2P9Hrdn/MZfE/yyG + rP9Ufo3/hm5b/5taL/uCQRfPRCILiwoFAkoAAAAvAAAALQAAACYAAAAdAAAAGgAAABwULGoSFjB/RxtY + l9gYUom4AAICGAAAABMAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA + AAAAAAAAAAAAAAAAAACKTR8mpVslc6JaJsDCbDPr0n5I/+6viP/1r4H/+7SC///Flv//ypn/67eO/6qa + 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 + fMAjJSaOHx8fbR8fHz00NDQjHBwcNx4eHmQ6MiundWFVyffKp9H/7crR///x0f///9H///3R////0f// + /9H///fR//fm0f/Mp9HWkF7JTjstzSsoJ8QlJSWzIyMjliEhIWsgICBENDQ0IzQ0NA80NDQENDQ0ATQ0 + NAYjY3yII2J8wyMmJ5YfHx94Hx8fTh8fH0MmIyFzYk88vvK7iM//68XR///z0f//+9H//vDR//La0f/r + z9H/7tPR//bm0f/02dH/+uPR///w0f/x2NH9vpHRu4Fc0TkvJ8slJSW8JCQknSEhIW0gICBDNDQ0HzQ0 + NAs0NDQENDQ0BiNphYgiaIPIIiYooCAgIIghISFlKygkgHtgRsf7wo7R/9qw0f/pxtH/68/R/+DB0f/f + vtH+wprR/rKE0f21h9H/yKPR/LuP0f3CltH+0KbR/+K/0f/mydH/0bHR2Y9b0VY3H9EmJia+IyMjnSEh + IWc0NDQ0NDQ0GTQ0NAk0NDQFIl51fyaNt8wiKy6qIyMjlygmJJF4XEfI6K150fjFmdH/0KjR/8ai0f7L + qdH/wpzR/76W0f/AmtH+wZrR/rOF0f+/mdH7roLR+Kl70fWrfdH3sIPR+7uQ0f/OrtHvuprR2JFc0VI2 + INEmJia6IyMjkCEhIVg0NDQpNDQ0EjQ0NAUeSVptMJ7M0SE0PLUlJCStVUExx8+XcNHgpn3R9bqR0fm5 + ktH+vJXR/82q0f/Np9H/uozR/7iI0f/Bl9H/yqTR/9Cv0f+6jdH+rn3R+K1+0fKqetHupXfR87OL0e6y + jNHZm3HRyotY0TgxLMomJiawIiIieyAgIEE0NDQeNDQ0Ax1FVVU5o8/RJEpZvzEoIsWOWjbRu4lp0eGm + gNHzs4vR/L6V0f/IntH/2LPR/82k0f+7i9H/v5LR/7yM0f+8i9H/zqbR/9Ct0f/Bl9H+tITR+a5+0fKp + eNHtrIHR6auB0dmVZNHGgUrRmWM00SknJsIkJCSbISEhWjQ0NCw0NDQCGjhDODaXv81BnsjHYk09x4RY + OtG4iGjR5qyE0fu9ktH/y6LR/9Kp0f/VrtH/z6bR/8GR0f/Hl9H/xpfR/8KQ0f/Ln9H/y6LR/8WZ0f/K + otH+vpXR+LCA0fOvgtHrrYLR35po0cSBT9G9dDXRRTUnzCYmJq8iIiJ0ICAgPwAAAAAeND0XKHGOuF3C + 7NFWaGrRiF5B0buSeNHrs5HR/cab0f/SqNH/y5/R/8eZ0f/Xr9H/xZTR/8ma0f/JmdH/xpXR/8+j0f/U + qtH/vYnR/76N0f/DmNH9w5vR+sCb0fO1jNHknWnRzopX0bp0OtGTWibRKigmvSQkJIogICBQAAAAADQ0 + NAYcWHGUZL7g0V6YqdGDWz/RvI5y0efBpdH82LfR/9Os0f/ElNH/xJXR/9qy0f/KmdH/zJzR/82d0f/M + mtH/0KDR/9qx0f/Ek9H/wI7R/7yI0f64h9H9v5TR+sOf0fCyh9HbmWjRu3Y+0a9nKNE3LibGJSUlmiEh + IV8AAAAANDQ0BBk3Q2FPnr3RernL0Xt4bdG+iWXR3rGP0ffBmdH/1rLR/+G90f/futH/5cLR/9Wo0f/Q + oNH/z53R/8+b0f/QndH/4LbR/8uY0f/Gk9H/w5HR/7yK0f66i9H5vpTR8q+A0eapftHGjWDRsW810Ug3 + KcwmJiakIiIiagAAAAA0NDQFKSYiTkl2g813pK/Rd4yK0a14VtLGlnfT2qF41OOrgdTkt4/U5MGb1ObU + tdPm17nT6Ni30unVstLqz6jR68mf0f/iudH/zZrR/8aT0f/Fk9H/v4zR/8CR0fzBmdH1rXvR6KJt0cuL + WNGydULRVkEwziYmJqsjIyNvAAAAADQ0NAU7Kx5eZmRX0W2LlNKImJXTnn1l1r+PcNnGmHfbzJ553dGn + gNzVq4Hb1ruW2tq8ltnevZLX48ig1OfQqtLq1rLR//DN0f/kvNH/1qjR/8uZ0f/AjNH/wZDR/cWd0fiy + gNHsqXXR0pBb0bRwM9FeRC7OJyYmrSMjI24AAAAAJiYmBTQiFmKBUirTY3R31oyQitqJe2vgnHRb55h3 + X+2del/vp4hq7K6PbumwmXvotqGE5sOjfeDSsIba4ryR1enBktL/5LjR/92v0f/ZrNH/2rHR/9Ko0f/M + odH9yaHR+LN/0e2pdNHUlV/RtXU60WFFLs8oJiWqIyMjZwAAAAAmJiYGMCMYX45PHdZtYlPafoB64YWC + c+uAfE/4iHtK/IVyVfqNc1r3koFs9pSLefeZjHfzqZBw7MGlgeHcu5LY58OU0//it9H/2ajR/8qV0f/K + ltH/yZnR/82h0f7Ur9H9xZrR8LSF0dGSX9GzcjXRXkIpzSclJaAhISFZGRkZASUlJQs5KRxWgUsg1n1X + OuBtaFzqfopr+VW0Jv5bqQD/MlI3+ytGTvg0Zn/7OmyF/DJRX/KUgGb2rZNz6tOzjNzkwJHU/+O10f/e + rtH/0JnR/8uY0f/HktH/xJLR/c6j0fu8itHvtYnR0J1y0bZ5RtFWPSnLJCQkjR8fH0YZGRkGJSUlFDQo + HkljPyLTe1Aw6HJvVfZivXH3XMJX/2KxJP4/oXLzIL/g+B3S/v8lzvX/K8Dp8YiJePudiG3xyquG4OG6 + jNX/3rDR/9ut0f/NldH/y5fR/8eU0f/Dk9H+z6bR+LiE0eWmcdHGhlDRt2ov0Uo2KcMjIyNxHR0dMBkZ + GQ0ZGRkkIyMjSkszH8t3VTfyT3dJ91y0Ov9gtzj/ipVS/1umtP8Tzfb/CND4/w7N9P8L1fX/Iml1+pSK + dfXCsZLj3smj1//pwNH/47XR/9Kd0f/LlNH/xY7R/8KO0f/NpNH3uIXR4KBr0cJ0PNG2YiHRNywjsSEh + IVE0NDQaGBgYGBkZGTkhISFpQTUqyYZpRftpnxj9S6QA/2mTAP+lbE7/dJTD/zO59/8sqPD/KJfr/xKs + 7v8bdIL9jIVs+L2hfebcvJLY/+W50f/pvdH/4LHR/92x0f/Wp9H/y5vR/82j0e+rdtHWhlDRw28x0W9I + Kc0oJSKINDQ0MDQ0NBIYGBgmGRkZUjQwLJR8aFrq1rBw/3eaDf9QpAD/hXkS/6Nmaf9wmNT/Tqj4/0qQ + 7f9Dcub/NGzm/xaIwv+Gf2r5uZp359qxhNn/2KfR/9ur0f/LktH/zZjR/9Ge0f3NoNH8xaPR66mC0cyF + V9HIczfRSTQmtiEhIVEcHBwmNDQ0FRgYGDYlIyByemdU2OS3jf/Ypm7/nJke/3KTAv+day//k3qa/1up + 7P9Irvj/Q5zt/zqG6f82aOX/JVW4/35vYPqukHDp06t/2vzSotH+2arR/8qT0f/Jk9H+uoTR96h10fOw + iNHbkmLRzYNP0XtWPssoJSNvNDQ0LxwcHDIcHBwuGBgYSWZWRa3aqnv12KJt/9iZYf/CkjL/qXwP/6Vr + U/9yksf/TrX5/0qw9P9Ene7/OYjp/y9t5f8pSMP/eWRe/JyAY+u+mXLa7MSW0fXMoNH7u4bR+7B+0fin + dtH2p3bR7K2H0c9+RtHLcS/NOi0jjTQ0NC0dLDBEHx8fSh4eHk88Myllm3lY7dSbYf/NkU//yIg7/8l/ + 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 +</value> + </data> </root> \ No newline at end of file diff --git "a/WebAPI/Controllers/\346\225\260\346\215\256\345\220\214\346\255\245/\345\260\217\350\257\270\350\221\233\345\220\214\346\255\245/XZG_DataSynchronizationController.cs" "b/WebAPI/Controllers/\346\225\260\346\215\256\345\220\214\346\255\245/\345\260\217\350\257\270\350\221\233\345\220\214\346\255\245/XZG_DataSynchronizationController.cs" index 51c1829..5e4f9f1 100644 --- "a/WebAPI/Controllers/\346\225\260\346\215\256\345\220\214\346\255\245/\345\260\217\350\257\270\350\221\233\345\220\214\346\255\245/XZG_DataSynchronizationController.cs" +++ "b/WebAPI/Controllers/\346\225\260\346\215\256\345\220\214\346\255\245/\345\260\217\350\257\270\350\221\233\345\220\214\346\255\245/XZG_DataSynchronizationController.cs" @@ -28,6 +28,7 @@ using System.Security.Cryptography; using System.Net.Http.Headers; using System.Web; +using Kingdee.BOS.WebApi.Client; namespace WebAPI.Controllers { @@ -427,6 +428,118 @@ #endregion #endregion + + #region 鐢熶骇姹囨姤 + #region 宸插鏍哥殑鎶ュ伐璁板綍淇℃伅鍒楄〃 + public class ICMOReportListResponse + { + public string code; + public string msg; + public List<ICMOReportListResponse_Data> data; + } + public class ICMOReportListResponse_Data + { + public List<ICMOReportListResponse_Data_Data> data; + public string pageIndex; + public string pageCount; + } + public class ICMOReportListResponse_Data_Data + { + public string produceReportId; //鎶ュ伐璁板綍id + public string machineName; //璁惧鍚嶇О + public string macId; //璁惧id + public string productName; //浜у搧鍚嶇О + public string partId; //浜у搧id + public string workTime; //宸ヤ綔鏃堕棿 + public string tour; //鐝 + public string productNum; //鐢熶骇鏁版嵁 + public string standardNum; //鎶ュ悎鏍兼暟閲� + public string defectiveNum; //娆″搧鏁伴噺 + public string remark; //澶囨敞 + public string materialId; // + public string materialName; //鏉愭枡鍚嶇О + public string materialNo; //鏉愭枡缂栧彿 + public string producePerson; //鐢熶骇浜哄憳 + public string producePersonId; //鐢熶骇浜哄憳id + public string producePersonCode; //鐢熶骇浜哄憳code + public string planNo; //璁″垝鍗曞彿 + public string taskNo; //浠诲姟鍗曞彿 + + public string partNum; //浜у搧缂栧彿 + public string produceRecordId; //鐢熶骇璁板綍鐨刬d + public string moldNo; //妯″叿缂栧彿 + public string reportDate; //鎶ュ伐鏃ユ湡 + public string reportUser; //鎶ュ伐浜哄憳 + public string reportUserCode; //鎶ュ伐浜哄憳缂栫爜 + public string auditUser; //瀹℃牳浜� + public string auditUserCode; //瀹℃牳浜哄憳缂栧彿 + public string auditDate; //瀹℃牳鏃ユ湡 + public string moldName; //妯″叿鍚嶇О + public string defectiveReasonName; //娆″搧鏄庣粏淇℃伅 + public string boxCodes; //绠辩爜 + public string tourGroupName; //鐝粍 + + } + #endregion + + #region 鐢熶骇姹囨姤璇︾粏淇℃伅 + public class ICMOReportDetailResponse + { + public string code; + public string msg; + public List<ICMOReportDetailResponse_Data> data; + } + public class ICMOReportDetailResponse_Data + { + public string produceReportId; //鎶ュ伐璁板綍id + public string machineName; //璁惧鍚嶇О + public string macId; //璁惧id + public string productName; //浜у搧鍚嶇О + public string partId; //浜у搧id + public string workTime; //宸ヤ綔鏃堕棿 + public string tour; //鐝 + public string productNum; //鐢熶骇鏁版嵁 + public string standardNum; //鎶ュ悎鏍兼暟閲� + public string defectiveNum; //娆″搧鏁伴噺 + public string stockInputNum; + public string remark; //澶囨敞 +/* public string materialId; */ // + public string materialName; //鏉愭枡鍚嶇О + public string materialNo; //鏉愭枡缂栧彿 + public string producePerson; //鐢熶骇浜哄憳 + public string producePersonId; //鐢熶骇浜哄憳id + public string producePersonCode; //鐢熶骇浜哄憳code + public string planNo; //璁″垝鍗曞彿 + public string taskNo; //浠诲姟鍗曞彿 + + public string partNum; //浜у搧缂栧彿 + public string produceRecordId; //鐢熶骇璁板綍鐨刬d + public string moldNo; //妯″叿缂栧彿 + public string reportDate; //鎶ュ伐鏃ユ湡 + public string reportUser; //鎶ュ伐浜哄憳 + public string reportUserCode; //鎶ュ伐浜哄憳缂栫爜 + public string auditUser; //瀹℃牳浜� + public string auditUserCode; //瀹℃牳浜哄憳缂栧彿 + public string auditDate; //瀹℃牳鏃ユ湡 + + + public string piceWage; //鍗曚环 + public string moldName; //妯″叿鍚嶇О + + public List<string> defectiveReasonNameList; + public List<string> defectiveNumList; + + public string tourGroupName; //鐝粍 + public List<ICMOReportDetailResponse_Data_Box> boxs; + } + + public class ICMOReportDetailResponse_Data_Box + { + public string boxCode; //绠辩爜 + public string boxActQty; //鏁伴噺 + } + #endregion + #endregion #endregion #region 灏忚钁涙暟鎹悓姝� @@ -442,6 +555,10 @@ #region 灏忚钁涙暟鎹悓姝ュ瘑閽� string APPID = "1f2e019a-ff51-f115-ce59-205606c72853"; string APPPWD = "YYLM01A"; + #endregion + + #region erp鏁版嵁搴撳悕绉� + string erpDatabaseName = "AIS20210811135644.."; #endregion #region 鑾峰彇鏈嶅姟鍦板潃 @@ -522,6 +639,37 @@ return res; } + #endregion + + #region 鏁版嵁鍚屾 + #region 鏁版嵁鍚屾-姹囨�诲叏閮ㄥ悓姝� + public async Task<json> dataAnsy() + { + try + { + //浜у搧妗f鍚屾锛坋rp->灏忚钁涳級 + await productInfoSyncFromERPToXZG(); + //鐢熶骇璁㈠崟鍚屾锛坋rp->灏忚钁涳級 + await icmoInfoSyncFromERPToXZG(); + //鐢熶骇姹囨姤鍗曞悓姝�(灏忚钁�->erp) + await icmoReportInfoSyncFromXZGToERP(); + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "鍚屾鎴愬姛!"; + objJsonResult.data = null; + return objJsonResult; + } + catch(Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍚屾澶辫触!" + e.Message; + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion #endregion #region 浜у搧妗f @@ -832,29 +980,22 @@ #region 鑾峰彇鐢熶骇璁㈠崟璇︾粏淇℃伅 public async Task<ICMODetailResponse> getICMODetailAsync(string url, string key, string planNum) { - try - { - //璇锋眰鍦板潃 - url = url + "/v2/GET/getPlanOrderDetail"; - //璇锋眰鍙傛暟 - Dictionary<string, string> queryParams = new Dictionary<string, string> + //璇锋眰鍦板潃 + url = url + "/v2/GET/getPlanOrderDetail"; + //璇锋眰鍙傛暟 + Dictionary<string, string> queryParams = new Dictionary<string, string> { {"key", key}, {"planNum",planNum } }; - //杩斿洖缁撴灉 - string responseBody = await DefinedRequestSendMethod.GetDataAsyncByGetRequest(url, queryParams); + //杩斿洖缁撴灉 + string responseBody = await DefinedRequestSendMethod.GetDataAsyncByGetRequest(url, queryParams); - //灏嗗瓧绗︿覆杞崲涓哄璞� - ICMODetailResponse icmoDetailResponse = Newtonsoft.Json.JsonConvert.DeserializeObject<ICMODetailResponse>(responseBody); + //灏嗗瓧绗︿覆杞崲涓哄璞� + ICMODetailResponse icmoDetailResponse = Newtonsoft.Json.JsonConvert.DeserializeObject<ICMODetailResponse>(responseBody); - return icmoDetailResponse; - }catch(Exception e) - { - return new ICMODetailResponse(); - } - + return icmoDetailResponse; } #endregion @@ -955,7 +1096,7 @@ //鑾峰彇閲戣澏浜戠敓浜ц鍗曟暟鎹� List<ICMO> icmos = new List<ICMO>(); string sql = @"select - cast(a.FBILLNO as varchar(100)) + '_' + cast(b.FSEQ as varchar(10)) 璁″垝鍗曞彿 + cast(a.FBILLNO as varchar(100)) + '_' + cast(b.FSEQ as varchar(10)) + '_' + cast(b.FENTRYID as varchar(10)) 璁″垝鍗曞彿 ,cast(b.FQTY as int) 璁″垝鏁伴噺 ,m.FNUMBER 浜у搧缂栧彿 ,convert(varchar(100),b.FPLANSTARTDATE,20) 璁″垝寮�宸ユ棩鏈� @@ -985,7 +1126,7 @@ or convert(varchar(100),c.fstartdate ,23) >= convert(varchar(100),dateadd(day,-7,getdate()),23) ) - and cast(a.FBILLNO as varchar(100)) + '_' + cast(b.FSEQ as varchar(10)) = 'MO000269_1'"; + --and cast(a.FBILLNO as varchar(100)) + '_' + cast(b.FSEQ as varchar(10)) = 'MO000269_1'"; DataSet ds = oCN.RunProcReturn(sql, "AIS20210811135644..T_PRD_MO"); if (ds != null && ds.Tables.Count > 0) { @@ -1090,6 +1231,768 @@ } #endregion #endregion + + #region 鐢熶骇姹囨姤 + #region 鑾峰彇宸插鏍哥殑鎶ュ伐璁板綍淇℃伅鍒楄〃淇℃伅 + public async Task<ICMOReportListResponse> getICMOReportListAsync() + { + //璇锋眰鍦板潃 + string url = await getServerAddressAsync() + "/v2/GET/getAuditedProduceReportList"; + string token = await getTokenAsync(); + //璇锋眰鍙傛暟 + Dictionary<string, string> queryParams = new Dictionary<string, string> + { + {"key", token}, + {"indexPage", "1"}, + //{"startDate", DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd")}, + //{"endDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")}, + {"sidx", "reportDate"}, + {"sord", "desc"}, + //{"tour", "鐧界彮"}, + {"type", "1"}, + {"reportStartDate", DateTime.Now.AddDays(-30).ToString("yyyy-MM-dd HH:mm:ss")}, + {"reportEndDate", DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss")} + }; + + //杩斿洖缁撴灉 + string responseBody = await DefinedRequestSendMethod.GetDataAsyncByGetRequest(url, queryParams); + + //灏嗗瓧绗︿覆杞崲涓哄璞� + ICMOReportListResponse icmoReportListResponse = Newtonsoft.Json.JsonConvert.DeserializeObject<ICMOReportListResponse>(responseBody); + + return icmoReportListResponse; + } + #endregion + + #region 鑾峰彇鐢熶骇姹囨姤璇︾粏淇℃伅 + public async Task<ICMOReportDetailResponse> getICMOReportDetailAsync(string url, string key, string reportId) + { + //璇锋眰鍦板潃 + url = url + "/v2/GET/getProduceRecordReport"; + //璇锋眰鍙傛暟 + Dictionary<string, string> queryParams = new Dictionary<string, string> + { + {"key", key}, + {"reportId",reportId } + }; + + //杩斿洖缁撴灉 + string responseBody = await DefinedRequestSendMethod.GetDataAsyncByGetRequest(url, queryParams); + + //灏嗗瓧绗︿覆杞崲涓哄璞� + ICMOReportDetailResponse icmoReportDetailResponse = Newtonsoft.Json.JsonConvert.DeserializeObject<ICMOReportDetailResponse>(responseBody); + + return icmoReportDetailResponse; + } + #endregion + + #region 鐢熶骇姹囨姤瀹氭椂鍚屾_浠庡皬璇歌憶鍒癊RP + public async Task<json> icmoReportInfoSyncFromXZGToERP() + { + string sErrMsg = ""; + try + { + //璇锋眰鍦板潃 + string url = await getServerAddressAsync(); + string token = await getTokenAsync(); + + ICMOReportListResponse iCMOReportListResponse = await getICMOReportListAsync(); + List<ICMOReportListResponse_Data_Data> iCMOReportList = new List<ICMOReportListResponse_Data_Data>(); + for(int i = 0; i < iCMOReportListResponse.data.Count; i++) + { + for(int j=0;j< iCMOReportListResponse.data[i].data.Count; j++) + { + string sql = "select * from AIS20210811135644..T_PRD_MORPT where FBillNo = '" + iCMOReportListResponse.data[i].data[j].produceReportId + "'"; + DataSet ds_erp = oCN.RunProcReturn(sql, "AIS20210811135644..T_PRD_MORPT"); + if(ds_erp!=null&ds_erp.Tables[0].Rows.Count == 0) + { + iCMOReportList.Add(iCMOReportListResponse.data[i].data[j]); + } + } + } + + ////閲戣澏浜戠敓浜ф眹鎶ュ崟锛氭壒閲忓悓姝� + //ICMOReportListResponse_Data_Data data = new ICMOReportListResponse_Data_Data(); + //data.planNo = "MO000269_1_100483"; + //data.reportDate = "2025-04-27 00:00:00"; + //data.standardNum = "1"; + //data.produceReportId = "1234321"; + //iCMOReportList.Add(data); + + objJsonResult = set_SaveICMOReportBillList(iCMOReportList); + + //objJsonResult.code = "1"; + //objJsonResult.count = 1; + //objJsonResult.Message = "鍚屾鎴愬姛!"; + //objJsonResult.data = null; + + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鍚屾澶辫触!" + e.Message; + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 鐢熶骇姹囨姤 鎵归噺鏂板 + public json set_SaveICMOReportBillList(List<ICMOReportListResponse_Data_Data> iCMOReportList) + { + string sErrMsg = ""; + string sRemark = ""; + string sRemark_errAudit = ""; + + try + { + for (int i = 0; i < iCMOReportList.Count; i++) + { + objJsonResult = set_SaveICMOReportBill(iCMOReportList[i]); + if (objJsonResult.code == "1" && objJsonResult.count == 1) + { + sRemark += objJsonResult.Message; + }else if(objJsonResult.code == "1" && objJsonResult.count == 0) + { + sRemark_errAudit += objJsonResult.Message; + } + else + { + sErrMsg += objJsonResult.Message; + } + } + + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = "銆愬悓姝ュ苟瀹℃牳鎴愬姛淇℃伅銆戯細" + sRemark + "锛涖�愬悓姝ユ垚鍔熶絾瀹℃牳澶辫触淇℃伅銆戯細" + sRemark_errAudit + "锛涖�愬悓姝ュけ璐ヤ俊鎭細銆戯細" + sErrMsg ; //鎴愬姛锛� + objJsonResult.data = null; + return objJsonResult; + } + catch (Exception e) + { + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = "鐢熶骇姹囨姤鍗曚笂浼犲け璐ワ紒" + e.ToString(); + objJsonResult.data = null; + return objJsonResult; + } + } + #endregion + + #region 鐢熶骇姹囨姤 鏂板 + public json set_SaveICMOReportBill(ICMOReportListResponse_Data_Data data) + { + string sErrMsg = ""; + + //鐢ㄤ簬璁板綍杩囩▼鏁版嵁锛屼綔涓烘棩璁版暟鎹� + string sRemark = ""; + try + { + try + { + #region 浠庨厤缃枃浠惰幏鍙� CLOUD缃戝潃銆佽处濂椾俊鎭�佺櫥褰曠敤鎴枫�佺櫥褰曞瘑鐮� + //鐧诲綍 + string HReturn; + bool bLogin = false; + var loginRet = InvokeHelper.LoginUser(data.reportUser); + string dbId = Pub_Class.ClsPub.sCLOUDAcc; //AotuTest117 + 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; + } + else + { + bLogin = true; + sRemark = sRemark + " 锛涜幏鍙栭獙璇丆LOUD璐﹀彿瀵嗙爜" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); + } + #endregion + + #region 鍒ゆ柇鐢熶骇璁㈠崟鐘舵�� 鏄惁涓� 瀹屽伐 鎴栫粨妗� + string[] planNoSplit = data.planNo.Split('_'); + string HICMOBillNo = planNoSplit[0]; + string HICMOSEQ = planNoSplit[1]; + string HICMOEntryID = planNoSplit[2]; + + string sql_judgeICMOStatus = @"select distinct + mo.FBILLNO + from AIS20210811135644..T_PRD_MO mo + inner join AIS20210811135644..T_PRD_MOENTRY_A a on mo.FID=a.FID + where a.FSTATUS in (5,6) + and mo.FBILLNO = '" + HICMOBillNo + "' " + + "and a.FENTRYID = " + HICMOEntryID; + DataSet Ds2; + Ds2 = oCN.RunProcReturn(sql_judgeICMOStatus, "AIS20210811135644..T_PRD_MO"); + if (Ds2 != null && Ds2.Tables[0].Rows.Count > 0) + { + sErrMsg = "鐢熶骇璁㈠崟銆� " + HICMOBillNo + "銆戜笟鍔$姸鎬佸凡瀹屽伐涓嶅厑璁告眹鎶ワ紒"; + + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = sErrMsg; + objJsonResult.data = null; + return objJsonResult; + } + #endregion + + #region 鑾峰彇閲戣澏浜戠敓鎴愬崟鎹甹son + string json = getErpJSON(data); + sRemark = sRemark + " 锛涜幏鍙朇LOUD鍗曟嵁API閫掑叆鍊�" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); + #endregion + + #region 鐢熸垚閲戣澏浜戝崟鎹� + if (bLogin) + { + var result = InvokeHelper.Save("PRD_MORPT", json); + sRemark = sRemark + " 锛涚敓鎴怌LOUD鍗曟嵁" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); + + //鑾峰彇閲戣澏浜戝崟鎹敓鎴愯繑鍥炰俊鎭� + HReturn = result.ToString(); + if (HReturn.Contains("\"IsSuccess\":false") == true) + { + sErrMsg = "鐢熸垚鐢熶骇姹囨姤鍗曞け璐ワ紒" + HReturn; + LogService.Write("鐢熸垚鐢熶骇姹囨姤鍗曪紙婧愬崟锛氱敓浜ц鍗曪級澶辫触锛�" + HReturn + json); //鍐欏叆txt鏂囨湰 + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = sErrMsg; //鎴愬姛锛� + objJsonResult.data = null; + return objJsonResult; + } + else + { + sRemark = sRemark + json; + } + } + else + { + sErrMsg = "鐢熸垚鐢熶骇姹囨姤鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒"; + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = sErrMsg; //鎴愬姛锛� + objJsonResult.data = null; + return objJsonResult; + } + #endregion + + } + catch (Exception e) + { + sErrMsg = "鐢熸垚鐢熶骇姹囨姤鍗曞け璐ワ紒" + e.Message; + + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = sErrMsg; + objJsonResult.data = null; + return objJsonResult; + } + + + #region 瀹℃牳鍗曟嵁 + try + { + //鎻愪氦銆佸鏍搁噾铦朵簯鍗曟嵁 + #region 浠庨厤缃枃浠惰幏鍙� CLOUD缃戝潃銆佽处濂椾俊鎭�佺櫥褰曠敤鎴枫�佺櫥褰曞瘑鐮� + //鐧诲綍 + string HReturn = ""; + bool bLogin = false; + var loginRet = InvokeHelper.LoginUser(data.auditUser); + string dbId = Pub_Class.ClsPub.sCLOUDAcc; //AotuTest117 + 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; + } + else + { + bLogin = true; + sRemark = sRemark + " 锛涜幏鍙栭獙璇丆LOUD璐﹀彿瀵嗙爜" + DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss:ffff"); + } + #endregion + + if (bLogin) + { + ////鎻愪氦鍗曟嵁 + string sJson2 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + data.produceReportId + "\"]}"; + var result2 = InvokeHelper.Submit("PRD_MORPT", sJson2); + + //瀹℃牳鍗曟嵁 + string sJson3 = "{\"CreateOrgId\":0,\"Numbers\":[\"" + data.produceReportId + "\"]}"; + var result3 = InvokeHelper.Audit("PRD_MORPT", sJson3); + + HReturn = result2.ToString() + "," + result3.ToString(); + + if (HReturn.Contains("\"IsSuccess\":false") == true) + { + LogService.Write("瀹℃牳鍗曟嵁澶辫触" + sRemark); + sErrMsg = "鐢熸垚鐢熶骇姹囨姤鍗曟垚鍔燂紝瀹℃牳鍗曟嵁澶辫触锛�" + HReturn; + + objJsonResult.code = "1"; + objJsonResult.count = 0; + objJsonResult.Message = sErrMsg; + objJsonResult.data = null; + return objJsonResult; + } + else + { + LogService.Write("鐢熸垚骞跺鏍哥敓浜ф眹鎶ュ崟锛堟簮鍗曪細鐢熶骇璁㈠崟锛夋垚鍔燂紒" + sRemark); + sErrMsg = "鐢熸垚骞跺鏍哥敓浜ф眹鎶ュ崟鎴愬姛锛佸崟鎹彿涓猴細" + data.produceReportId; + + objJsonResult.code = "1"; + objJsonResult.count = 1; + objJsonResult.Message = sErrMsg; + objJsonResult.data = null; + return objJsonResult; + } + } + else + { + sErrMsg = "瀹℃牳鐢熶骇姹囨姤鍗曞け璐ワ紒閲戣澏浜戠櫥褰曞け璐ワ紒"; + objJsonResult.code = "1"; + objJsonResult.count = 0; + objJsonResult.Message = sErrMsg; + objJsonResult.data = null; + return objJsonResult; + } + } + catch (Exception e) + { + sErrMsg = "瀹℃牳鐢熶骇姹囨姤鍗曞け璐ワ紒" + e.Message; + objJsonResult.code = "1"; + objJsonResult.count = 0; + objJsonResult.Message = sErrMsg; + objJsonResult.data = null; + return objJsonResult; + } + #endregion + }catch(Exception e0) + { + sErrMsg = "鐢熸垚鐢熶骇姹囨姤鍗曞け璐ワ紒" + e0.Message; + + objJsonResult.code = "0"; + objJsonResult.count = 0; + objJsonResult.Message = sErrMsg; + objJsonResult.data = null; + return objJsonResult; + } + } + + #endregion + + #region 鏍规嵁鑾峰彇鐨勬姤宸ヤ俊鎭紝鎷兼帴json璇彞 + public string getErpJSON(ICMOReportListResponse_Data_Data data) + { + //try + //{ + //data.planNo = "MO000269_1_100483"; + //data.reportDate = "2025-04-27 00:00:00"; + //data.standardNum = "1"; + //data.produceReportId = "1234321"; + + // 鑾峰彇鐢熶骇姹囨姤鐨勬簮鍗曚俊鎭� + string[] planNoSplit = data.planNo.Split('_'); + string HICMOBillNo = planNoSplit[0]; + string HICMOSEQ = planNoSplit[1]; + string HICMOEntryID = planNoSplit[2]; + + //鏍规嵁鎶ュ伐淇℃伅锛岃幏鍙栫浉鍏充俊鎭� + string sql1 = @"select + isnull(org1.hnumber,'') FPRDORGIDNumber + ,ISNULL(org1.HItemID,0) FPRDORGID + ,isnull(moSub.FPRODUCTTYPE,'1') FPRODUCTTYPE + ,ISNULL(pr.HNumber,'') FAUXPROPNumber + ,ISNULL(unit.HNumber,'') FUNITNumber + ,ISNULL(dept.HNumber,'') FWORKSHOPNumber + ,isnull(moSub.FMTONO,'') FMTONO + ,isnull(moSubA.FCHECKPRODUCT,'false') FCHECKPRODUCT + ,isnull(mo.FISENTRUST,'false') FISENTRUST + ,isnull(moSub.FPROJECTNO,'') FPROJECTNO + ,isnull(mp.FPERUNITSTANDHOUR,0) FSTDMANHOUR + ,isnull(mp.FSTDLABORPREPARETIME,0) FHRPREPARETIME + ,isnull(mp.FSTDMACHINEPREPARETIME,0) FMACPREPARETIME + ,isnull(mo.FID,0) FSRCINTERID + ,isnull(moSub.FSEQ,0) FSRCENTRYSEQ + ,isnull(mo.FID,0) FMOID + ,isnull(moSub.FENTRYID,0) FMOENTRYID + ,isnull(unit1.HNumber,'') FBASEUNITID + ,isnull(org1.HNumber,'') FSTOCKINORGID + ,isnull(moSubA.FINSTOCKOWNERTYPEID,'') FOWNERTYPEID + ,isnull(org2.HNumber,'') FOWNERID + ,isnull(moSub.FCOSTRATE,0) FCOSTRATE + ,isnull('','') FSTOCKID + ,isnull(moSubA.FISBACKFLUSH,'false') FISBACKFLUSH + ,isnull(moSub.FENTRYID,0) FMOMAINENTRYID + ,isnull(moSubA.FQAIP,'') FQAIP + + ,isnull(moSubA.FREQSRC,'') FREQSRC + ,isnull(moSub.FSALEORDERNO,'') FREQBILLNO + ,isnull(moSub.FSALEORDERID,0) FREQBILLID + ,isnull(moSub.FSALEORDERENTRYSEQ,0) FREQENTRYSEQ + ,isnull(moSub.FSALEORDERENTRYID,0) FREQENTRYID + ,isnull(moSubA.FINSTOCKTYPE,'1') FINSTOCKTYPE + from AIS20210811135644..T_PRD_MO mo with(nolock) + left join AIS20210811135644..T_PRD_MOENTRY moSub with(nolock) on mo.FID=moSub.FID + left join AIS20210811135644..T_PRD_MOENTRY_A moSubA with(nolock) on moSubA.FID=moSub.FID and moSubA.FENTRYID=moSub.FENTRYID + left join Xt_ORGANIZATIONS org1 with(nolock) on mo.FPRDORGID=org1.HItemID --鐢熶骇缁勭粐 + left join xt_ORGANIZATIONS org2 with(nolock) on moSubA.FINSTOCKOWNERID=org2.HItemID --鍏ュ簱璐т富 + left join AIS20210811135644..t_BD_MaterialProduce mp with(nolock) on moSub.FMATERIALID=mp.FMATERIALID --鐗╂枡鐢熶骇淇℃伅 + left join Gy_Unit as unit with(nolock) on moSub.FUNITID = unit.HItemID + left join Gy_Unit as unit1 with(nolock) on moSub.FBASEUNITID = unit1.HItemID + left join Gy_Property pr on moSub.FAUXPROPID = pr.HItemID + left join Gy_Department dept on moSub.FWORKSHOPID = dept.HItemID + where + mo.FBillNo = '" + HICMOBillNo + "' " + + " and moSub.FENTRYID = " + HICMOEntryID; + DataSet jsonData = oCN.RunProcReturn(sql1, "AIS20210811135644..T_PRD_MO"); + if (jsonData == null || jsonData.Tables[0].Rows.Count == 0) + { + return ""; + } + + string FBillType = "SCHBD01_SYS"; //鍗曟嵁绫诲瀷 + string FPRDORGIDNumber = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FPRDORGIDNumber"]); //鐢熶骇缁勭粐缂栫爜 + string FPRDORGID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FPRDORGID"]); //鐢熶骇缁勭粐缂栫爜 + string FAUXPROPNumber = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FAUXPROPNumber"]); //杈呭姪灞炴�� + string FIsNew = "false"; //鏄惁鏂板琛� + string FPRODUCTTYPE = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FPRODUCTTYPE"]); //浜у搧绫诲瀷 + string FREPORTTYPE = ""; //鐢熶骇姹囨姤绫诲瀷 + string FUNITNumber = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FUNITNumber"]); //鍗曚綅缂栫爜 + string FWORKSHOPNumber = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FWORKSHOPNumber"]); //閮ㄩ棬 + string FMTONO = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FMTONO"]); //璁″垝璺熻釜鍙� + string FCHECKPRODUCT = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FCHECKPRODUCT"]); //浜у搧妫�楠� + string FISENTRUST = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FISENTRUST"]); //缁勭粐濮旀墭鍔犲伐 + string FSRCBILLTYPE = "PRD_MO"; //婧愬崟绫诲瀷 + string FPROJECTNO = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FPROJECTNO"]); //椤圭洰缂栧彿 + string FSTDMANHOUR = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FSTDMANHOUR"]); //鍗曚綅鏍囧噯宸ユ椂 + string FHRPREPARETIME = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FHRPREPARETIME"]); //浜哄憳鍑嗗宸ユ椂 + string FMACPREPARETIME = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FMACPREPARETIME"]); //鏈哄櫒鍑嗗宸ユ椂 + string FSRCINTERID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FSRCINTERID"]); //婧愬崟鍐呯爜 + string FSRCENTRYSEQ = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FSRCENTRYSEQ"]); //婧愬崟琛屽彿 + string FMOID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FMOID"]); //鐢熶骇璁㈠崟鍐呯爜 + string FMOENTRYID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FMOENTRYID"]); //鐢熶骇璁㈠崟鍒嗗綍鍙� + string FBASEUNITID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FBASEUNITID"]); //鍩烘湰鍗曚綅 + string FSTOCKINORGID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FSTOCKINORGID"]); //鍏ュ簱缁勭粐 + string FBOMID = ""; //BOM鐗堟湰 + string FOWNERTYPEID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FOWNERTYPEID"]); //璐т富绫诲瀷 + string FOWNERID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FOWNERID"]); //璐т富 + string FSTOCKID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FSTOCKID"]); //浠撳簱 + string FCOSTRATE = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FCOSTRATE"]); //鎴愭湰鏉冮噸 + string FSNUNITID = ""; //搴忓垪鍙峰崟浣� + string FISBACKFLUSH = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FISBACKFLUSH"]); //鍊掑啿棰嗘枡 + string FMOMAINENTRYID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FMOMAINENTRYID"]); //鐢熶骇璁㈠崟涓讳骇鍝佸垎褰� + string FQAIP = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FQAIP"]); //绱ф�ユ斁琛� + string FREQSRC = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FREQSRC"]); //闇�姹傛潵婧� + string FREQBILLNO = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FREQBILLNO"]); //闇�姹傚崟鎹� + string FREQBILLID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FREQBILLID"]); //闇�姹傚崟鎹唴鐮� + string FREQENTRYSEQ = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FREQENTRYSEQ"]); //闇�姹傚崟鎹鍙� + string FREQENTRYID = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FREQENTRYID"]); //闇�姹傚崟鎹垎褰曞唴鐮� + string FINSTOCKTYPE = Pub_Class.ClsPub.isStrNull(jsonData.Tables[0].Rows[0]["FINSTOCKTYPE"]); //渚涗笅鎺ㄥ叆搴撳崟浣跨敤-鍏ュ簱绫诲瀷 + string FEntity_Link_FFlowId = "f6e6eec3-5267-4f02-8593-b633da508a72"; //涓氬姟娴佺▼鍥� + string FEntity_Link_FFlowLineId = "3"; //鎺ㄨ繘璺嚎 + string FEntity_Link_FRuleId = "PRD_MO2MORPT"; //杞崲瑙勫垯 + string FEntity_Link_FSTableName = "T_PRD_MOENTRY"; //婧愬崟琛� + string FBFLOWID = "f6e6eec3-5267-4f02-8593-b633da508a72"; //涓氬姟娴佺▼ + + //鑾峰彇鐢熶骇姹囨姤绫诲瀷 + string sql2 = @"select top(1) + FNUMBER FREPORTTYPE + from AIS20210811135644..T_PRD_REPORTTYPE with(nolock) + Where FUSEORGID = " + FPRDORGID + + " and FISDEFREPTYPE=1"; + DataSet jsonData2 = oCN.RunProcReturn(sql2, "T_PRD_REPORTTYPE"); + if (jsonData2 != null && jsonData2.Tables[0].Rows.Count > 0) + { + FREPORTTYPE = Pub_Class.ClsPub.isStrNull(jsonData2.Tables[0].Rows[0]["FREPORTTYPE"]); + } + + + + + //鏈�缁堣鍙� + string json = ""; + + string sJson_ZYMESFLAG = ""; //鐢熶骇姹囨姤鍗曞悓姝ES鏍囪 + string sJson_MainCustom = ""; //涓昏〃鑷畾涔夊瓧娈� + string sJson_Date = ""; //鍗曟嵁鏃ユ湡 + + //sJson_MainCustom = Pub_Class.ClsPub.isStrNull(Ds.Tables[0].Rows[0]["MainCustom"]); + //鍗曟嵁鏃ユ湡 + sJson_Date = ",\"FDATE\":\"" + data.reportDate + "\""; + sJson_ZYMESFLAG = ""; + + + string sJson_Main = + "{" + + "\"Creator\":\"\"" + + ",\"NeedUpDateFields\":[]" + + ",\"NeedReturnFields\":[]" + + ",\"IsDeleteEntry\":\"True\"" + + ",\"SubSystemId\":\"\"" + + ",\"IsVerifyBaseDataField\":\"false\"" + + ",\"IsEntryBatchFill\":\"false\"" + + ",\"ValidateFlag\":\"True\"" + + ",\"NumberSearch\":\"True\"" + + ",\"InterationFlags\":\"\"" + + ",\"Model\": " + + "{ " + + "\"FBILLNO\":\"" + data.produceReportId + "\"" + + //",\"FID\":\"" + oMain.HInterID.ToString() + "\"" + + ",\"FBillType\":" + + "{" + + "\"FNumber\":\"" + FBillType + "\"" + + "}" + + ",\"FDocumentStatus\":\"\"" + + sJson_Date + + ",\"FPRDORGID\":" + + "{" + + "\"FNumber\":\"" + FPRDORGIDNumber + "\"" + + "}" + + //",\"FWorkshipIdH\":" + + // "{" + + // "\"FNumber\":\"\"" + + // "}" + + //",\"FDescription\":\"\"" + + sJson_ZYMESFLAG + + sJson_MainCustom + + ",\"FEntity\": [ "; + + string sJson_Entry = ""; + + string sJson_BatchNo = ""; + string sJson_StockPlace = ""; + string sJson_FProduceDate = ""; //鐢熶骇鏃ユ湡 + string sJson_FExpiryDate = ""; //鏈夋晥鏈熻嚦 + string sJson_EntryCustom = ""; + string sJson_FAUXPROPID = ""; + string sJson_SubCustom = ""; //瀛愯〃鑷畾涔夊瓧娈� + + //瀛愯〃鑷畾涔夊瓧娈� + //sJson_SubCustom = Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["SubCustom"]); + + ////鏄惁鍚敤鎵规绠$悊 + //if (Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["HISBATCHMANAGE"]) == "1") + //{ + // sJson_BatchNo = " \"FLOT\": {\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FLOT"]) + "\"}, \"FLOT_TEXT\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FLOT"]) + "\" , "; + //} + //else + //{ + // sJson_BatchNo = ""; + //} + + ////鏄惁鍚敤淇濊川鏈熸帶鍒� + //if (Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FISKFPERIOD"]) == "1") + //{ + // sJson_FProduceDate = " \"FProduceDate\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FProduceDate"]) + "\","; + // sJson_FExpiryDate = " \"FExpiryDate\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FExpiryDate"]) + "\","; + //} + //else + //{ + // sJson_FProduceDate = ""; + // sJson_FExpiryDate = ""; + //} + + //杈呭姪灞炴�� + sJson_FAUXPROPID = ", \"FAUXPROPID\":" + + "{" + + "\"FAUXPROPID__FF100002\":" + + "{" + + "\"FNumber\":\"" + FAUXPROPNumber + "\"" + + "}" + + "}"; + + + ////浠撲綅 + //if (Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSTOCKLOCID"]) == "") + //{ + // sJson_StockPlace = ""; + //} + //else + //{ + // sJson_StockPlace = Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSTOCKLOCID"]) + "\"}},"; + //} + + //鑷畾涔夊瓧娈靛鐞� + sJson_EntryCustom = ""; + + sJson_Entry = sJson_Entry + + " {" + + //"\"FEntryID\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["HEntryID"]) + "," + + " \"FSRCENTRYID\":" + HICMOEntryID + "" + + ", \"FIsNew\":" + FIsNew + "" + + ", \"FMATERIALID\":" + + "{" + + "\"FNumber\":\"" + data.partNum + "\"" + + "}" + + ", \"FPRODUCTTYPE\":\"" + FPRODUCTTYPE + "\"" + + ", \"FREPORTTYPE\":" + + "{" + + "\"FNumber\":\"" + FREPORTTYPE + "\"" + + "}" + + ", \"FUNITID\":" + + "{" + + "\"FNumber\":\"" + FUNITNumber + "\"" + + "}" + + ", \"FWORKSHIPID\":" + + "{" + + "\"FNumber\":\"" + FWORKSHOPNumber + "\"" + + "}" + + //", \"FShiftGroupId\":{\"FNumber\":\"\"}" + + sJson_BatchNo + + //\"FDeptId\":{\"FNumber\":\"\"}, + //sJson_StockPlace + //浠撲綅绉诲埌涓嬫柟 + ", \"FMTONO\":\"" + FMTONO + "\"" + + ", \"FCHECKPRODUCT\":" + FCHECKPRODUCT + "" + + ", \"FISENTRUST\":" + FISENTRUST + "" + + ", \"FSRCBILLTYPE\":\"" + FSRCBILLTYPE + "\"" + + ", \"FMOBILLNO\":\"" + HICMOBillNo + "\"" + + //", \"FAUXPROPID\":" + + // "{" + + // "\"FAUXPROPID__FF100002\":" + + // "{" + + // "\"FNumber\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FAUXPROPID"]) + "\"" + + // "}" + + // "}" + + sJson_FAUXPROPID + + //", \"FHumanQty\":\"0\"" + + ", \"FSRCBILLNO\":\"" + HICMOBillNo + "\"" + + //", \"FMachineQty\":\"0\"" + + //", \"FMaterialUnitID\":" + + // "{" + + // "\"FNumber\":\"\"" + + // "}" + + //", \"FStartTime\":\"1900-01-01\"" + + //", \"FEndTime\":\"1900-01-01\"" + + //", \"FTimeUnitId\":\"\"" + + ", \"FMOENTRYSEQ\":" + HICMOSEQ + "" + + //", \"FSTANDHOURUNITID\":\"" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSTANDHOURUNITID"]) + "\"" + + ", \"FPROJECTNO\":\"" + FPROJECTNO + "\"" + + ", \"FSTDMANHOUR\":" + FSTDMANHOUR + "" + + ", \"FHRPREPARETIME\":" + FHRPREPARETIME + "" + + //", \"FHrWorkTime\":\"0\"" + + ", \"FMACPREPARETIME\":" + FMACPREPARETIME + "" + + //",\"FMacWorkTime\":\"0\"" + + //",\"FDescriptionE\":\"\"" + + ", \"FSRCINTERID\":" + FSRCINTERID + "" + + ", \"FSRCENTRYSEQ\":" + FSRCENTRYSEQ + "" + + ", \"FMOID\":" + FMOID + "" + + ", \"FMOENTRYID\":" + FMOENTRYID + "" + + ", \"FBASEUNITID\":" + + "{" + + "\"FNumber\":\"" + FBASEUNITID + "\"" + + "}" + + ", \"FSTOCKINORGID\":" + + "{" + + "\"FNumber\":\"" + FSTOCKINORGID + "\"" + + "}" + + ", \"FBOMID\":" + + "{" + + "\"FNumber\":\"" + FBOMID + "\"" + + "}" + + ", \"FOWNERTYPEID\":\"" + FOWNERTYPEID + "\"" + + ", \"FOWNERID\":" + + "{" + + "\"FNumber\":\"" + FOWNERID + "\"" + + "}" + + ", \"FSTOCKID\":" + + "{" + + "\"FNumber\":\"" + FSTOCKID + "\"" + + "}" + + ", \"FCOSTRATE\":" + FCOSTRATE + "" + + ", \"FSNUNITID\":" + + "{" + + "\"FNumber\":\"" + FSNUNITID + "\"" + + "}" + + //", \"FSNQty\":" + Pub_Class.ClsPub.isStrNull(Ds.Tables[1].Rows[i]["FSNQty"]) + "" + + sJson_FProduceDate + + sJson_FExpiryDate + + ", \"FISBACKFLUSH\":" + FISBACKFLUSH + "" + + ", \"FMOMAINENTRYID\":" + FMOMAINENTRYID + "" + + ", \"FQAIP\":\"" + FQAIP + "\"" + + ", \"FREQSRC\":\"" + FREQSRC + "\"" + + ", \"FREQBILLNO\":\"" + FREQBILLNO + "\"" + + ", \"FREQBILLID\":" + FREQBILLID + "" + + ", \"FREQENTRYSEQ\":" + FREQENTRYSEQ + "" + + ", \"FREQENTRYID\":" + FREQENTRYID + "" + + ", \"FBASEQUAQTY\":" + data.standardNum + "" + + ", \"FQUAQTY\":" + data.standardNum + "" + + ", \"FBASEFINISHQTY\":" + data.standardNum + "" + + ", \"FFINISHQTY\":" + data.standardNum + "" + + ", \"FInStockType\":\"" + FINSTOCKTYPE + "\"" + + sJson_StockPlace + + sJson_EntryCustom + + sJson_SubCustom + + + //",\"FSerialSubEntity\":" + + // "[" + + // "{" + + // "\"FDetailID\":\"0\"" + + // ",\"FQCMaterialId\":" + + // "{" + + // "\"FNUMBER\":\"\"" + + // "}" + + // ",\"FInspectResult\":\"\"" + + // ",\"FQcAuxPropId\":" + + // "{" + + // "\"FQCAUXPROPID__FF100002\":" + + // "{" + + // "\"FNumber\":\"\"" + + // "}" + + // "}" + + // ",\"FQCQty\":\"0\"" + + // ",\"FSerialNo\":\"\"" + + // ",\"FSerialId\":" + + // "{" + + // "\"FNUMBER\":\"\"" + + // "}" + + // ",\"FQCStockInSelQty\":\"0\"" + + // ",\"FSerialNote\":\"\"" + + // ",\"FBaseQCQty\":\"0\"" + + // ",\"FBaseQCStockInSelQty\":\"0\"" + + // "}" + + // "]" + + ", \"FEntity_Link\": " + + "[" + + "{" + + " \"FEntity_Link_FFlowId\":\"" + FEntity_Link_FFlowId + "\"" + + ", \"FEntity_Link_FFlowLineId\":\"" + FEntity_Link_FFlowLineId + "\"" + + ", \"FEntity_Link_FRuleId\":\"" + FEntity_Link_FRuleId + "\"" + + ", \"FEntity_Link_FSTableName\":\"" + FEntity_Link_FSTableName + "\"" + + ", \"FEntity_Link_FSBillId\":\"" + FMOID + "\"" + + ", \"FEntity_Link_FSId\":\"" + FMOENTRYID + "\"" + + " }" + + " ]" + + ", \"FBFLOWID\":" + + "{" + + "\"FID\":\"" + FBFLOWID + "\"" + + "}" + + "}"; + + + string sJson_End = " ] }}"; + + + json = sJson_Main + sJson_Entry + sJson_End; + + + return json; + //}catch(Exception e) + //{ + // return e.Message; + //} + } + #endregion + #endregion } #endregion -- Gitblit v1.9.1