frmTgMotoriaMain.cs 32 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706
  1. using com.hnshituo.core.webapp.vo;
  2. using Common;
  3. using Infragistics.Win;
  4. using Infragistics.Win.UltraWinGrid;
  5. using JC_MeasuringSystem;
  6. using MeterPlugInLibrary;
  7. using System;
  8. using System.Collections.Generic;
  9. using System.ComponentModel;
  10. using System.Data;
  11. using System.Drawing;
  12. using System.Linq;
  13. using System.Reflection;
  14. using System.Text;
  15. using System.Threading.Tasks;
  16. using System.Windows.Forms;
  17. using CreateAccess;
  18. namespace RailMeterSystem
  19. {
  20. public partial class frmTgMotoriaMain : Form
  21. {
  22. #region
  23. MeterWorkRailwayActFirstService actFirstService = new MeterWorkRailwayActFirstService(); //
  24. MeterBaseRailwayWeightService baseRailwayWgt = new MeterBaseRailwayWeightService();
  25. MeterWorkRailwayActualService actualService = new MeterWorkRailwayActualService();
  26. #endregion
  27. List<MeterBaseVideoinfo> ltMbV = new List<MeterBaseVideoinfo>();
  28. CoreAppUser appUser = null;
  29. string strBaseSpotNo = "00013", sBaseSpotName = "动态轨道衡";
  30. public frmTgMotoriaMain()
  31. {
  32. InitializeComponent();
  33. }
  34. private void frmTgMotoriaMain_Load(object sender, EventArgs e)
  35. {
  36. appUser = ((ST_MainForm)(this.MdiParent)).AppUser;
  37. cbTimeType.SelectedIndex = 1;
  38. ValueList vlist1 = new ValueList();
  39. vlist1.ValueListItems.Add("1", "未使用");
  40. vlist1.ValueListItems.Add("2", "已使用");
  41. ultraGridRecive.DisplayLayout.Bands[0].Columns["valueFlag"].ValueList = vlist1;
  42. ValueList vlist2 = new ValueList();
  43. vlist2.ValueListItems.Add("1", "正常结净");
  44. vlist2.ValueListItems.Add("2", "匹配结净");
  45. ultraGridNet.DisplayLayout.Bands[0].Columns["netMode"].ValueList = vlist2;
  46. ValueList vlist3 = new ValueList();
  47. vlist3.ValueListItems.Add("0", "待审核");
  48. vlist3.ValueListItems.Add("1", "已审核");
  49. vlist3.ValueListItems.Add("2", "已上传");
  50. ultraGridNet.DisplayLayout.Bands[0].Columns["uploadFlag"].ValueList = vlist3;
  51. dtStartTime.Value = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd") + " 00:00:00");
  52. dtEndTime.Value = Convert.ToDateTime(DateTime.Now.ToString("yyyy-MM-dd") + " 23:59:59");
  53. ClsControlPack.SetUltraGridRowFilter(ref ultraGridNet, true);
  54. ClsControlPack.SetUltraGridRowFilter(ref ultraGridFirst, true);
  55. }
  56. #region 按钮事件
  57. private void btnQuery()
  58. {
  59. dtRecevice.Clear();
  60. DataTable dtV = dtRecevice.Clone();
  61. ClsControlPack.CopyDataToDatatable(ref dtV, ref this.dtRecevice, true);
  62. ClsControlPack.RefreshAndAutoSize(ultraGridRecive);
  63. QueryVoice();
  64. QueryNetDb();
  65. QueryFirstDb();
  66. }
  67. private void btnSubmit()
  68. {
  69. ultraGridRecive.UpdateData();
  70. ultraGridFirst.UpdateData();
  71. List<MeterWorkRailwayMotorialReceived> lmmr = new List<MeterWorkRailwayMotorialReceived>();
  72. List<MeterWorkRailwayActFirst> lmrf = new List<MeterWorkRailwayActFirst>();
  73. int icnt = 0;
  74. foreach (UltraGridRow ugrR in ultraGridRecive.Rows)
  75. {
  76. if (ugrR.Cells["UNCK"].Value.ToString().ToUpper() == "TRUE" && !ugrR.HiddenResolved)
  77. {
  78. icnt++;
  79. foreach (UltraGridRow ugr in ultraGridFirst.Rows)
  80. {
  81. if (ugrR.Cells["railwayNo"].Text.Trim() == ugr.Cells["railwayNo"].Text.Trim())
  82. {
  83. MeterWorkRailwayMotorialReceived rec = new MeterWorkRailwayMotorialReceived();
  84. rec.actualFirstNo = ugrR.Cells["actualFirstNo"].Text.Trim();
  85. rec.railwayNo = ugrR.Cells["railwayNo"].Text.Trim();
  86. rec.railwayCarriageNo = ugrR.Cells["railwayCarriageNo"].Text.Trim();
  87. rec.railwaySpeed = Convert.ToDouble(string.IsNullOrEmpty(ugrR.Cells["railwaySpeed"].Text) ? "0" : ugrR.Cells["railwaySpeed"].Text);
  88. rec.railwayModel = ugrR.Cells["railwayModel"].Text.Trim();
  89. rec.shipmentGrossWeight = Convert.ToDouble(string.IsNullOrEmpty(ugrR.Cells["shipmentGrossWeight"].Text) ? "0" : ugrR.Cells["shipmentGrossWeight"].Text);
  90. rec.shipmentNetWeight = Convert.ToDouble(string.IsNullOrEmpty(ugrR.Cells["shipmentNetWeight"].Text) ? "0" : ugrR.Cells["shipmentNetWeight"].Text);
  91. rec.meterWeight = Convert.ToDouble(string.IsNullOrEmpty(ugrR.Cells["meterWeight"].Text) ? "0" : ugrR.Cells["meterWeight"].Text);
  92. rec.createTime = Convert.ToDateTime(ugrR.Cells["createTime"].Text.Trim());
  93. rec.valueFlag = ugrR.Cells["valueFlag"].Text.Trim();
  94. rec.baseSpotNo = "00013";
  95. rec.baseSpotName = "动态轨道衡";
  96. rec.railwayTypeNo = "001019002";
  97. rec.railwayTypeName = "动态轨道衡";
  98. rec.weightType = "0";
  99. lmmr.Add(rec);
  100. MeterWorkRailwayActFirst first = new MeterWorkRailwayActFirst();
  101. first.actualFirstNo = ugr.Cells["actualFirstNo"].Text.Trim();
  102. first.railwayNo = ugr.Cells["railwayNo"].Text.Trim();
  103. first.railwayCarriageNo = ugr.Cells["railwayCarriageNo"].Text.Trim();
  104. first.railwaySpeed = Convert.ToDouble(string.IsNullOrEmpty(ugr.Cells["railwaySpeed"].Text) ? "0" : ugr.Cells["railwaySpeed"].Text);
  105. first.meterWeight = Convert.ToDouble(string.IsNullOrEmpty(ugr.Cells["meterWeight"].Text) ? "0" : ugr.Cells["meterWeight"].Text);
  106. first.shipmentGrossWeight = Convert.ToDouble(string.IsNullOrEmpty(ugr.Cells["shipmentGrossWeight"].Text) ? "0" : ugr.Cells["shipmentGrossWeight"].Text);
  107. first.shipmentNetWeight = Convert.ToDouble(string.IsNullOrEmpty(ugr.Cells["shipmentNetWeight"].Text) ? "0" : ugr.Cells["shipmentNetWeight"].Text);
  108. first.createManNo = ugr.Cells["createManNo"].Text.Trim();
  109. first.createManName = ugr.Cells["createManName"].Text.Trim();
  110. first.createTime = Convert.ToDateTime(ugr.Cells["createTime"].Text.Trim());
  111. first.valueFlag = ugr.Cells["valueFlag"].Text.Trim();
  112. first.weightType = "1";
  113. first.baseSpotNo = "00013";
  114. first.baseSpotName = "动态轨道衡";
  115. first.railwayTypeNo = "001019002";
  116. first.railwayTypeName = "动态轨道衡";
  117. lmrf.Add(first);
  118. break;
  119. }
  120. }
  121. }
  122. }
  123. string MeterTypeNo = "", MeterTypeName = "";
  124. FrmMessage frmMessage = FrmMess($"当前选中【{icnt}】条毛重数据,当前选中【{lmrf.Count}】条皮重数据\n\r是否进行匹配!", "进厂保存");
  125. if (frmMessage.ShowDialog(this) != DialogResult.OK)
  126. {
  127. return;
  128. }
  129. else
  130. {
  131. string sType = frmMessage.setType;
  132. switch (sType)
  133. {
  134. case "0": //采购
  135. MeterTypeNo = "001006001";
  136. MeterTypeName = "采购进厂";
  137. break;
  138. case "1": //销售
  139. MeterTypeNo = "001006002";
  140. MeterTypeName = "销售出厂";
  141. break;
  142. }
  143. }
  144. if (lmmr.Count == 0)
  145. {
  146. MessageBox.Show("请确保至少有一条能进行结净的毛皮数据");
  147. }
  148. else
  149. {
  150. for (int i = 0; i < lmmr.Count; i++)
  151. {
  152. lmmr[i].meterTypeNo = MeterTypeNo;
  153. lmmr[i].meterTypeName = MeterTypeName;
  154. lmrf[i].meterTypeNo = MeterTypeNo;
  155. lmrf[i].meterTypeName = MeterTypeName;
  156. }
  157. //下面先保存,保存成功则使用下面的清理predictionNo的代码
  158. RESTfulResult<string> rES = actFirstService.doAddRailNetWf(lmmr, lmrf);
  159. if (rES.Succeed)
  160. {
  161. QueryNetDb();
  162. QueryFirstDb();
  163. UltraGridRow ugr = ultraGridVoice.ActiveRow;
  164. if (ugr != null)
  165. {
  166. QueryReceived(ugr.Cells["actualNo"].Text.Trim());
  167. }
  168. MessageBox.Show("操作成功");
  169. }
  170. else
  171. {
  172. MessageBox.Show("操作失败:" + rES.Message);
  173. }
  174. }
  175. }
  176. private void btnUnSubmit()
  177. {
  178. ultraGridNet.UpdateData();
  179. if (ultraGridNet.Rows.Count > 0)
  180. {
  181. List<MeterWorkRailwayActual> ltFirst = new List<MeterWorkRailwayActual>();
  182. foreach (UltraGridRow ugr in ultraGridNet.Rows)
  183. {
  184. if (ugr.Cells["UNCK"].Value.ToString().ToUpper() == "TRUE" && !ugr.HiddenResolved)
  185. {
  186. MeterWorkRailwayActual actual = new MeterWorkRailwayActual();
  187. actual.actualNo = ugr.Cells["actualNo"].Text.Trim();
  188. actual.actualFirst1No = ugr.Cells["actualFirst1No"].Text.Trim();
  189. actual.actualFirst2No = ugr.Cells["actualFirst2No"].Text.Trim();
  190. ltFirst.Add(actual);
  191. }
  192. }
  193. if (ltFirst != null && ltFirst.Count > 0)
  194. {
  195. RESTfulResult<string> result = actFirstService.doRemoveRailNetWf(ltFirst);
  196. if (result.Succeed)
  197. {
  198. QueryNetDb();
  199. QueryFirstDb();
  200. UltraGridRow ugr = ultraGridVoice.ActiveRow;
  201. if (ugr != null)
  202. {
  203. QueryReceived(ugr.Cells["actualNo"].Text.Trim());
  204. }
  205. }
  206. else
  207. {
  208. MessageBox.Show("删除失败:" + result.Message);
  209. }
  210. }
  211. else
  212. {
  213. MessageBox.Show("请先勾选需删除且未审核的结净数据");
  214. }
  215. }
  216. }
  217. private void btnTare()
  218. {
  219. if (ultraGridRecive.Rows.Count > 0)
  220. {
  221. List<MeterWorkRailwayActFirst> ltFirst = new List<MeterWorkRailwayActFirst>();
  222. foreach (UltraGridRow ugr in ultraGridRecive.Rows)
  223. {
  224. if (ugr.Cells["UNCK"].Value.ToString().ToUpper() == "TRUE" && !ugr.HiddenResolved)
  225. {
  226. MeterWorkRailwayActFirst fs = new MeterWorkRailwayActFirst();
  227. fs.railwayNo = ugr.Cells["railwayNo"].Text.Trim();
  228. fs.actualFirstNo = ugr.Cells["actualFirstNo"].Text.Trim();
  229. fs.railwayCarriageNo = ugr.Cells["railwayCarriageNo"].Text.Trim();
  230. fs.railwaySpeed = Convert.ToDouble(ugr.Cells["railwaySpeed"].Text.Trim());
  231. fs.meterWeight = Convert.ToDouble(ugr.Cells["meterWeight"].Text.Trim());
  232. fs.createTime = Convert.ToDateTime(ugr.Cells["createTime"].Text.Trim());
  233. fs.railwayModelName = ugr.Cells["railwayModel"].Text.Trim();
  234. fs.baseSpotNo = strBaseSpotNo;
  235. fs.baseSpotName = sBaseSpotName;
  236. fs.valueFlag = "1";
  237. fs.weightType = "1";
  238. fs.createManNo = appUser.userid;
  239. fs.createManName = appUser.username;
  240. fs.shipmentGrossWeight = Convert.ToDouble(string.IsNullOrEmpty(ugr.Cells["shipmentGrossWeight"].Text) ? "0" : ugr.Cells["shipmentGrossWeight"].Text);
  241. fs.shipmentNetWeight = Convert.ToDouble(string.IsNullOrEmpty(ugr.Cells["shipmentNetWeight"].Text) ? "0" : ugr.Cells["shipmentNetWeight"].Text);
  242. fs.railwayTypeNo = "001019002";
  243. fs.railwayTypeName = "动态轨道衡";
  244. ltFirst.Add(fs);
  245. }
  246. }
  247. if (ltFirst != null && ltFirst.Count > 0)
  248. {
  249. RESTfulResult<string> result = actFirstService.doAddRailWf(ltFirst);
  250. if (result.Succeed)
  251. {
  252. UltraGridRow ugr = ultraGridVoice.ActiveRow;
  253. QueryReceived(ugr.Cells["actualNo"].Text.Trim());
  254. QueryFirstDb();
  255. }
  256. else
  257. {
  258. MessageBox.Show("新增失败!");
  259. }
  260. }
  261. }
  262. else
  263. {
  264. MessageBox.Show("请先勾选需确认的皮重数据");
  265. }
  266. }
  267. private void btnUnTare()
  268. {
  269. if (ultraGridFirst.Rows.Count > 0)
  270. {
  271. List<MeterWorkRailwayActFirst> ltFirst = new List<MeterWorkRailwayActFirst>();
  272. foreach (UltraGridRow ugr in ultraGridFirst.Rows)
  273. {
  274. if (ugr.Cells["UNCK"].Value.ToString().ToUpper() == "TRUE" && !ugr.HiddenResolved)
  275. {
  276. MeterWorkRailwayActFirst fs = new MeterWorkRailwayActFirst();
  277. fs.actualFirstNo = ugr.Cells["actualFirstNo"].Text.Trim();
  278. ltFirst.Add(fs);
  279. }
  280. }
  281. if (ltFirst != null && ltFirst.Count > 0)
  282. {
  283. RESTfulResult<string> result = actFirstService.doDeleteWf(ltFirst);
  284. if (result.Succeed)
  285. {
  286. QueryFirstDb();
  287. UltraGridRow ugr = ultraGridVoice.ActiveRow;
  288. if (ugr != null)
  289. {
  290. QueryReceived(ugr.Cells["actualNo"].Text.Trim());
  291. }
  292. }
  293. else
  294. {
  295. MessageBox.Show("删除失败!");
  296. }
  297. }
  298. }
  299. else
  300. {
  301. MessageBox.Show("请先勾选需删除的皮重数据");
  302. }
  303. }
  304. private static FrmMessage FrmMess(string strMess, string strBtnSaveInfo)
  305. {
  306. FrmMessage frmMessage = new FrmMessage();
  307. frmMessage.StartPosition = FormStartPosition.Manual;
  308. frmMessage.Location = new Point(350, 450);
  309. frmMessage.ShowMessage = strMess;
  310. frmMessage.BtnSaveText = strBtnSaveInfo;
  311. frmMessage.BtnCancelText = "取消";
  312. return frmMessage;
  313. }
  314. private void ultraGridVoice_Click(object sender, EventArgs e)
  315. {
  316. UltraGridRow ugr = ultraGridVoice.ActiveRow;
  317. if (ugr != null)
  318. {
  319. QueryReceived(ugr.Cells["actualNo"].Text.Trim());
  320. cbCheckAll.Checked = false;
  321. foreach (UltraGridRow ur in ultraGridVoice.Rows)
  322. {
  323. ur.Appearance.BackColor = Color.White;
  324. }
  325. ugr.Appearance.BackColor = Color.Red;
  326. }
  327. }
  328. #endregion
  329. #region 数据查询
  330. /// <summary>
  331. /// 采集主表数据查询
  332. /// </summary>
  333. private void QueryVoice()
  334. {
  335. string sql = string.Format(@"select t.actual_no actualNo,
  336. to_char(t.create_time, 'yyyy-MM-dd HH24:mi:ss') createTime,
  337. t.carriage_num carriageNum,
  338. t.base_spot_no baseSpotNo,
  339. t.base_spot_name baseSpotName,
  340. t.video_name videoName,
  341. t.sound_name soundName,
  342. t.track_way trackWay
  343. from METER_WORK_RAILWAY_REC_MAIN t
  344. where t.create_time between to_date('{0}','yyyy-MM-dd HH24:mi:ss') and to_date('{1}','yyyy-MM-dd HH24:mi:ss')",
  345. dtStartTime.Value.ToString("yyyy-MM-dd HH:mm:ss"), dtEndTime.Value.ToString("yyyy-MM-dd HH:mm:ss"));
  346. if (!string.IsNullOrEmpty(strBaseSpotNo))
  347. {
  348. sql += " and t.base_spot_no='" + strBaseSpotNo + "'";
  349. }
  350. sql += " order by t.actual_no";
  351. DataTable dtV = dtVioce.Clone();
  352. PbModelDbService<List<MeterWorkRailwayMotorialRecMain>> pb = new PbModelDbService<List<MeterWorkRailwayMotorialRecMain>>();
  353. RESTfulResult<List<MeterWorkRailwayMotorialRecMain>> rmType = pb.executeSqlDataWf(sql);
  354. if (rmType.Succeed && rmType.Data != null && rmType.Data.Count > 0)
  355. {
  356. dtV = rmType.Data.ListToDataTable<MeterWorkRailwayMotorialRecMain>();
  357. }
  358. ClsControlPack.CopyDataToDatatable(ref dtV, ref this.dtVioce, true);
  359. ClsControlPack.RefreshAndAutoSize(ultraGridVoice);
  360. }
  361. /// <summary>
  362. /// 采集子表数据查询
  363. /// </summary>
  364. private void QueryReceived(string actualNo)
  365. {
  366. string sql = string.Format(@"select t.actual_first_no actualFirstNo,
  367. t.railway_no railwayNo,
  368. t.railway_carriage_no railwayCarriageNo,
  369. t.railway_speed railwaySpeed,
  370. nvl(t.meter_weight, 0) meterWeight,
  371. t.railway_model railwayModel,
  372. to_char(t.create_time,'yyyy-mm-dd hh24:mi:ss') createTime,
  373. t.base_spot_no baseSpotNo,
  374. t.base_spot_name baseSpotName,
  375. t.value_flag valueFlag,
  376. t.shipment_Gross_Weight shipmentGrossWeight,
  377. t.shipment_Net_Weight shipmentNetWeight
  378. from METER_WORK_RAILWAY_RECEIVED t
  379. where value_flag ='1' and actual_first_no like '{0}%' order by t.actual_first_no", actualNo);
  380. DataTable dtV = dtRecevice.Clone();
  381. PbModelDbService<List<MeterWorkRailwayMotorialReceived>> pb = new PbModelDbService<List<MeterWorkRailwayMotorialReceived>>();
  382. RESTfulResult<List<MeterWorkRailwayMotorialReceived>> rmType = pb.executeSqlDataWf(sql);
  383. if (rmType.Succeed && rmType.Data != null && rmType.Data.Count > 0)
  384. {
  385. dtV = rmType.Data.ListToDataTable<MeterWorkRailwayMotorialReceived>();
  386. }
  387. ClsControlPack.CopyDataToDatatable(ref dtV, ref this.dtRecevice, true);
  388. ClsControlPack.RefreshAndAutoSize(ultraGridRecive);
  389. foreach (UltraGridRow ugrc in ultraGridRecive.Rows)
  390. {
  391. if (ugrc.Cells["valueFlag"].Value.ToString() != "1")
  392. {
  393. ugrc.Appearance.BackColor = Color.Yellow;
  394. }
  395. }
  396. }
  397. /// <summary>
  398. /// 皮重查询
  399. /// </summary>
  400. private void QueryFirstDb()
  401. {
  402. string sql = $@"select actual_first_no actualFirstNo,
  403. railway_no railwayNo,
  404. railway_carriage_no railwayCarriageNo,
  405. railway_work_no railwayWorkNo,
  406. railway_speed railwaySpeed,
  407. nvl(meter_weight, 0) meterWeight,
  408. weight_type weightType,
  409. create_man_no createManNo,
  410. railway_model_name railwayModelName,
  411. create_man_name createManName,
  412. to_char(create_time, 'yyyy-mm-dd hh24:mi:ss') createTime,
  413. base_spot_no baseSpotNo,
  414. base_spot_name baseSpotName,
  415. value_flag valueFlag,
  416. shipment_Gross_Weight shipmentGrossWeight,
  417. shipment_Net_Weight shipmentNetWeight
  418. from Meter_Work_Railway_Act_First
  419. where value_flag = '1' and weight_type='1' and base_spot_no='00013' and create_time between to_date('{dtStartTime.Value.ToString("yyyy-MM-dd HH:mm:ss")}','yyyy-MM-dd HH24:mi:ss') and to_date('{dtEndTime.Value.ToString("yyyy-MM-dd HH:mm:ss")}','yyyy-MM-dd HH24:mi:ss') order by CREATE_TIME,RAILWAY_CARRIAGE_NO";
  420. dtRailwayActFirst.Clear();
  421. DataTable dtV = dtRailwayActFirst.Clone();
  422. PbModelDbService<List<MeterWorkRailwayActFirst>> pb = new PbModelDbService<List<MeterWorkRailwayActFirst>>();
  423. RESTfulResult<List<MeterWorkRailwayActFirst>> rmType = pb.executeSqlDataWf(sql);
  424. if (rmType.Succeed && rmType.Data != null && rmType.Data.Count > 0)
  425. {
  426. dtV = rmType.Data.ListToDataTable<MeterWorkRailwayActFirst>();
  427. }
  428. ClsControlPack.CopyDataToDatatable(ref dtV, ref this.dtRailwayActFirst, true);
  429. ClsControlPack.RefreshAndAutoSize(ultraGridFirst);
  430. }
  431. /// <summary>
  432. /// 结净数据查询
  433. /// </summary>
  434. private void QueryNetDb()
  435. {
  436. string sql = $@"select actual_no actualNo,
  437. prediction_no predictionNo,
  438. notice_no noticeNo,
  439. railway_no railwayNo,
  440. railway_carriage_no railwayCarriageNo,
  441. matter_no matterNo,
  442. matter_name matterName,
  443. contract_no contractNo,
  444. batch_no batchNo,
  445. customer_supplier_no customerSupplierNo,
  446. customer_supplier_name customerSupplierName,
  447. forwarding_unit_no forwardingUnitNo,
  448. forwarding_unit_name forwardingUnitName,
  449. receiving_uint_no receivingUintNo,
  450. receiving_uint_name receivingUintName,
  451. material_no materialNo,
  452. material_name materialName,
  453. spec_no specNo,
  454. spec_name specName,
  455. load_point_no loadPointNo,
  456. load_point_name loadPointName,
  457. sample_voucher sampleVoucher,
  458. carrier_unit_no carrierUnitNo,
  459. carrier_unit_name carrierUnitName,
  460. meter_type_no meterTypeNo,
  461. meter_type_name meterTypeName,
  462. meter_process_no meterProcessNo,
  463. meter_process_edition_no meterProcessEditionNo,
  464. actual_first1_no actualFirst1No,
  465. nvl(gross_weight,0) grossWeight,
  466. gross_man_no grossManNo,
  467. gross_man_name grossManName,
  468. to_char(gross_time, 'yyyy-mm-dd hh24:mi:ss') grossTime ,
  469. base_spot1_no baseSpot1No,
  470. base_spot1_name baseSpot1Name,
  471. gross_class grossClass,
  472. gross_group grossGroup,
  473. gross_mode grossMode,
  474. actual_first2_no actualFirst2No,
  475. nvl(tare_weight,0) tareWeight,
  476. tare_man_no tareManNo,
  477. tare_man_name tareManName,
  478. to_char(tare_time, 'yyyy-mm-dd hh24:mi:ss') tareTime ,
  479. base_spot2_no baseSpot2No,
  480. base_spot2_name baseSpot2Name,
  481. tare_class tareClass,
  482. tare_group tareGroup,
  483. tare_mode tareMode,
  484. nvl(net_weight,0) netWeight,
  485. net_man_no netManNo,
  486. net_man_name netManName,
  487. to_char(net_time, 'yyyy-mm-dd hh24:mi:ss') netTime ,
  488. net_spot3_no netSpot3No,
  489. net_spot3_name netSpot3Name,
  490. net_class netClass,
  491. net_group netGroup,
  492. net_mode netMode,
  493. value_flag valueFlag,
  494. upload_flag uploadFlag,
  495. check_man_no checkManNo,
  496. check_man_name checkManName,
  497. to_char(check_time, 'yyyy-mm-dd hh24:mi:ss') checkTime ,
  498. upload_man_no uploadManNo,
  499. upload_man_name uploadManName,
  500. to_char(upload_time, 'yyyy-mm-dd hh24:mi:ss') uploadTime,
  501. sample_no sampleNo,
  502. railway_type_no railwayTypeNo,
  503. railway_type_name railwayTypeName,
  504. water_num waterNum,
  505. round((nvl(net_weight,0)- nvl(net_weight,0) * nvl(water_num,0)/100),2) dryWgt,
  506. RAILWAY_MODEL_NAME railwayModelName
  507. from meter_work_railway_actual
  508. where value_flag = '0' and {(cbTimeType.Text == "毛重时间" ? "gross_time" : "net_time")} between to_date('{dtStartTime.Value.ToString("yyyy-MM-dd HH:mm:ss")}','yyyy-MM-dd HH24:mi:ss') and to_date('{dtEndTime.Value.ToString("yyyy-MM-dd HH:mm:ss")}','yyyy-MM-dd HH24:mi:ss')";
  509. //and railway_type_no='001019002' 轨道衡类型
  510. if (!string.IsNullOrEmpty(strBaseSpotNo))
  511. {
  512. sql += string.Format(" and NET_SPOT3_NO ='{0}'", strBaseSpotNo);
  513. }
  514. sql += " order by net_time";
  515. dtRailwayActual.Clear();
  516. DataTable dt = dtRailwayActual.Clone();
  517. PbModelDbService<List<MeterWorkRailwayActual>> pb = new PbModelDbService<List<MeterWorkRailwayActual>>();
  518. RESTfulResult<List<MeterWorkRailwayActual>> rmType = pb.executeSqlDataWf(sql);
  519. if (rmType.Succeed && rmType.Data != null && rmType.Data.Count > 0)
  520. {
  521. dt = rmType.Data.ListToDataTable<MeterWorkRailwayActual>();
  522. }
  523. ClsControlPack.CopyDataToDatatable(ref dt, ref this.dtRailwayActual, true);
  524. ClsControlPack.RefreshAndAutoSize(ultraGridNet);
  525. }
  526. #endregion
  527. private void ultraToolbarsManager1_ToolClick(object sender, Infragistics.Win.UltraWinToolbars.ToolClickEventArgs e)
  528. {
  529. ultraGridNet.UpdateData();
  530. ultraGridRecive.UpdateData();
  531. switch (e.Tool.Key)
  532. {
  533. case "btnQuery":
  534. {
  535. cbCheckAll.Checked = false;
  536. cbNetAll.Checked = false;
  537. btnQuery();
  538. break;
  539. }
  540. case "btnSubmit":
  541. {
  542. btnSubmit();
  543. break;
  544. }
  545. case "btnTareSave":
  546. {
  547. btnTare();
  548. break;
  549. }
  550. case "btnUnSubmit":
  551. {
  552. btnUnSubmit();
  553. break;
  554. }
  555. case "btnUnTareSave":
  556. {
  557. btnUnTare();
  558. break;
  559. }
  560. default: break;
  561. }
  562. }
  563. private void cbCheckAll_CheckedChanged(object sender, EventArgs e)
  564. {
  565. if (ultraGridRecive.Rows.Count > 0)
  566. {
  567. foreach (UltraGridRow ugr in ultraGridRecive.Rows)
  568. {
  569. ugr.Cells["UNCK"].Value = cbCheckAll.Checked;
  570. foreach (UltraGridRow ugrx in ultraGridFirst.Rows)
  571. {
  572. if (ugrx.Cells["railwayNo"].Text.Trim() == ugr.Cells["railwayNo"].Text.Trim())
  573. {
  574. ugrx.Cells["UNCK"].Value = cbCheckAll.Checked;
  575. break;
  576. }
  577. }
  578. }
  579. }
  580. ultraGridFirst.UpdateData();
  581. ultraGridRecive.UpdateData();
  582. }
  583. private void cbCheckTare_CheckedChanged(object sender, EventArgs e)
  584. {
  585. if (ultraGridFirst.Rows.Count > 0)
  586. {
  587. foreach (UltraGridRow ugr in ultraGridFirst.Rows)
  588. {
  589. ugr.Cells["UNCK"].Value = cbCheckTare.Checked;
  590. }
  591. }
  592. ultraGridFirst.UpdateData();
  593. }
  594. private void ultraGridRecive_AfterCellUpdate(object sender, CellEventArgs e)
  595. {
  596. UltraGridRow ugr = ultraGridRecive.ActiveRow;
  597. if (ugr != null)
  598. {
  599. foreach (UltraGridRow ugrx in ultraGridFirst.Rows)
  600. {
  601. if (ugrx.Cells["railwayNo"].Text.Trim() == ugr.Cells["railwayNo"].Text.Trim())
  602. {
  603. ugrx.Cells["UNCK"].Value = ugr.Cells["UNCK"].Value;
  604. break;
  605. }
  606. }
  607. }
  608. ugr.Appearance.BackColor = Color.Red;
  609. }
  610. private void ultraGridNet_AfterRowActivate(object sender, EventArgs e)
  611. {
  612. UltraGridRow ugr = ultraGridNet.ActiveRow;
  613. if (ugr != null)
  614. {
  615. if (ultraGridNet.Rows.Count > 0)
  616. {
  617. foreach (UltraGridRow ugrc in ultraGridNet.Rows)
  618. {
  619. ugrc.Appearance.BackColor = Color.White;
  620. }
  621. }
  622. ugr.Appearance.BackColor = Color.Red;
  623. }
  624. }
  625. private void cbNetAll_CheckedChanged(object sender, EventArgs e)
  626. {
  627. if (ultraGridNet.Rows.Count > 0)
  628. {
  629. foreach (UltraGridRow ugr in ultraGridNet.Rows)
  630. {
  631. ugr.Cells["UNCK"].Value = cbNetAll.Checked;
  632. }
  633. }
  634. ultraGridNet.UpdateData();
  635. }
  636. }
  637. }