王 垚
2022-10-27 0283d10f1f65729a5f3a79832ea587f977a28e96
MES/src/BLL/Demo.BillView/PRD/Pro_DayPlanList.cs
@@ -121,7 +121,8 @@
                        }
                    }
                    string sql = $"/*dialect*/ update  Sc_WorkBillSortBillMain set FDocumentStatus = 'C',FHCloseMan = '',FHCloseDate = NULL where FID in ({FID})";
                    if (fbillno.Length > 0) {
                    if (fbillno.Length > 0)
                    {
                        fbillno = fbillno.Substring(0, fbillno.Length - 1);
                        sql = $"/*dialect*/ update  Sc_WorkBillSortBillMain set FDocumentStatus = 'C',FHCloseMan = '',FHCloseDate = NULL where FID in ({FID}) AND FBILLNO NOT IN ({fbillno})";
                    }
@@ -135,6 +136,51 @@
                    this.View.ShowMessage("操作成功");
                }
            }
            else if (e.BarItemKey.Equals("BTNDISPATCH"))
            {
                PushDispatchBill();
            }
        }
        public void PushDispatchBill()
        {
            try
            {
                //获取选择记录
                ListSelectedRowCollection selectRows = this.ListView.SelectedRowsInfo;
                if (selectRows.Count == 0)
                {
                    this.View.ShowMessage("请选择数据!", MessageBoxType.Notice);
                    return;
                }
                List<string> fidList = selectRows.GetEntryPrimaryKeyValues().ToList();
                string fentryids = string.Join(",", fidList);
                DataTable dt = new DataTable();
                string dtsql = $"/*dialect*/ exec proc_jit_saveDispatchBill '{fentryids}'";
                dt = DBServiceHelper.ExecuteDataSet(Context, dtsql).Tables[0];
                // 一次性获取10个单据编号
                var billNos = BusinessDataServiceHelper.GetListBillNO(this.Context, "bsv_dispatchBill", dt.Rows.Count, "635782b535d236");
                //LogService.Write("billNos:" + string.Join(",", billNos)); ;
                List<string> sqllist = new List<string>();
                for (int i = 0; i < dt.Rows.Count; i++)
                {
                    string sql = string.Format(@"
/*dialect*/
insert into z_jit_prdDispatchBill values('')
INSERT INTO [t_jit_prdDispatchBill]([FID],[FBILLNO],[FDOCUMENTSTATUS],[FCREATORID],[FCREATEDATE],[FMODIFIERID],[FMODIFYDATE],[FWORKSHOPID],[FSCX],[FSALEORDERNO],[FMONO],[FMATERIALID],[FQTY],[FDAYPLANQTY],[FWAREHOUSQTY],[F_SB],[FKHXH],[FDATE],F_dy,F_gl,F_db,FDAYPLANFID,FDAYPLANFENTRYID,FDAYPLANBILLNO)
select id,'{0}','A',{1},GETDATE(),{1},GETDATE(),{2},{3},'{4}','{5}',{6},{7},{8},{9},'{10}','{11}','{12}','{13}','{14}','{15}','{16}','{17}','{18}' from z_jit_prdDispatchBill
delete z_jit_prdDispatchBill", billNos[i], Context.UserId, dt.Rows[i]["FWORKSHOPID"], dt.Rows[i]["FSCX"], dt.Rows[i]["FSALEORDERNO"], dt.Rows[i]["FMONO"], dt.Rows[i]["FMATERIALID"], dt.Rows[i]["FQTY"], dt.Rows[i]["FDAYPLANQTY"], dt.Rows[i]["FWAREHOUSQTY"], dt.Rows[i]["F_SB"], dt.Rows[i]["FKHXH"],dt.Rows[i]["FDATE"], dt.Rows[i]["F_dy"], dt.Rows[i]["F_gl"], dt.Rows[i]["F_db"], dt.Rows[i]["FDAYPLANFID"], dt.Rows[i]["FDAYPLANFENTRYID"], dt.Rows[i]["FDAYPLANBILLNO"]);
                    //LogService.Write(sql);
                    sqllist.Add(sql);
                }
                var ret = DBServiceHelper.ExecuteBatch(Context, sqllist);
                //LogService.Write("ret:" + ret);
                this.View.ShowMessage("操作成功,生成派工单数量为" + billNos.Count);
            }
            catch (Exception ex)
            {
                //LogService.Write(ex.ToString());
                this.View.ShowErrMessage(ex.Message.ToString());
            }
        }
    }
}