F_PM_2900.cs 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434
  1. /*******************************************************************************
  2. * Copyright(c) 2014 DongkeSoft All rights reserved. / Confidential
  3. * 类的信息:
  4. * 1.程序名称:F_PM_2900.cs
  5. * 2.功能描述:开模报损一览
  6. * 编辑履历:
  7. * 作者 日期 版本 修改内容
  8. * 姜永辉 2024/12/25 1.00 新建
  9. *******************************************************************************/
  10. using System;
  11. using System.Data;
  12. using System.Data.SqlTypes;
  13. using System.Reflection;
  14. using System.Windows.Forms;
  15. using Dongke.IBOSS.PRD.Basics.BaseControls;
  16. using Dongke.IBOSS.PRD.Basics.BaseResources;
  17. using Dongke.IBOSS.PRD.Client.CommonModule;
  18. using Dongke.IBOSS.PRD.Client.Controls;
  19. using Dongke.IBOSS.PRD.Client.DataModels;
  20. using Dongke.IBOSS.PRD.WCF.DataModels;
  21. using Dongke.IBOSS.PRD.WCF.Proxys;
  22. namespace Dongke.IBOSS.PRD.Client.PMModule
  23. {
  24. /// <summary>
  25. /// 开模报损一览
  26. /// </summary>
  27. public partial class F_PM_2900 : DKDockPanelBase
  28. {
  29. #region 成员变量
  30. // 单例模式
  31. private static F_PM_2900 _instance;
  32. #endregion
  33. #region 构造函数
  34. /// <summary>
  35. /// 开模报损一览窗体构造
  36. /// </summary>
  37. private F_PM_2900()
  38. {
  39. this.InitializeComponent();
  40. this.InitializeControls();
  41. }
  42. #endregion
  43. #region 单例模式
  44. /// <summary>
  45. /// 单例模式,防止重复创建窗体
  46. /// </summary>
  47. public static F_PM_2900 Instance
  48. {
  49. get
  50. {
  51. if (_instance == null)
  52. {
  53. _instance = new F_PM_2900();
  54. }
  55. return _instance;
  56. }
  57. }
  58. #endregion
  59. #region 事件
  60. /// <summary>
  61. /// 窗体加载
  62. /// </summary>
  63. private void F_PM_0101_Load(object sender, EventArgs e)
  64. {
  65. try
  66. {
  67. // 按钮权限控制
  68. FormPermissionManager.FormPermissionControl(this.Name, this,
  69. LogInUserInfo.CurrentUser.CurrentUserEntity.UserRightData,
  70. LogInUserInfo.CurrentUser.CurrentUserEntity.FunctionData);
  71. // 获取成型线类型数据并绑定到控件上
  72. ServiceResultEntity sre = this.DoAsync<ServiceResultEntity>(() =>
  73. {
  74. return PMModuleProxyNew.Service.GetFPM0101IData();
  75. }
  76. );
  77. if (sre.Data != null && sre.Data.Tables.Count > 0)
  78. {
  79. this.cboGroutingLineType.DataSource = sre.Data.Tables[0];
  80. }
  81. this.cboGroutingLineType.SelectedValue = null;
  82. this.chkTestMouldFlag.AllItemCheck();
  83. #region 设置下拉列表框的数据源-车间
  84. DataTable dtWorkShop = new DataTable();
  85. dtWorkShop.Columns.Add("WorkShopId");
  86. dtWorkShop.Columns.Add("WorkShopValue");
  87. DataRow drNull = dtWorkShop.NewRow();
  88. drNull["WorkShopId"] = 0;
  89. drNull["WorkShopValue"] = "";
  90. dtWorkShop.Rows.Add(drNull);
  91. drNull = dtWorkShop.NewRow();
  92. drNull["WorkShopId"] = 1;
  93. drNull["WorkShopValue"] = "A";
  94. dtWorkShop.Rows.Add(drNull);
  95. drNull = dtWorkShop.NewRow();
  96. drNull["WorkShopId"] = 2;
  97. drNull["WorkShopValue"] = "B";
  98. dtWorkShop.Rows.Add(drNull);
  99. drNull = dtWorkShop.NewRow();
  100. drNull["WorkShopId"] = 3;
  101. drNull["WorkShopValue"] = "C";
  102. dtWorkShop.Rows.Add(drNull);
  103. drNull = dtWorkShop.NewRow();
  104. drNull["WorkShopId"] = 4;
  105. drNull["WorkShopValue"] = "高压";
  106. dtWorkShop.Rows.Add(drNull);
  107. drNull = dtWorkShop.NewRow();
  108. drNull["WorkShopId"] = 5;
  109. drNull["WorkShopValue"] = "干补";
  110. dtWorkShop.Rows.Add(drNull);
  111. drNull = dtWorkShop.NewRow();
  112. drNull["WorkShopId"] = 6;
  113. drNull["WorkShopValue"] = "补码";
  114. dtWorkShop.Rows.Add(drNull);
  115. this.cbWorkShop.DataSource = dtWorkShop;
  116. this.cbWorkShop.ValueMember = "WorkShopId";
  117. this.cbWorkShop.DisplayMember = "WorkShopValue";
  118. #endregion
  119. }
  120. catch (Exception ex)
  121. {
  122. // 对异常进行共通处理
  123. ExceptionManager.HandleEventException(this.ToString(),
  124. MethodBase.GetCurrentMethod().Name, this.Text, ex);
  125. }
  126. }
  127. /// <summary>
  128. /// 清空条件
  129. /// </summary>
  130. private void btnClearCondition_Click(object sender, EventArgs e)
  131. {
  132. this.txtRemarks.Clear();
  133. this.txtGoodsCode.Clear();
  134. this.txtGoodsName.Clear();
  135. this.txtGroutingLineCode.Clear();
  136. this.txtGroutingLineName.Clear();
  137. this.txtGroutingMouldCode.Clear();
  138. this.txtGroutingUser.Clear();
  139. this.chkGroutingFlag.AllItemCheck();
  140. this.chkBarcodeFlag.AllItemCheck();
  141. this.txtGroutingDateBegin.Value = DateTime.Now.Date;
  142. this.txtGroutingDateEnd.Value = DateTime.Now.Date;
  143. this.cboGroutingLineType.SelectedValue = null;
  144. this.txtGroutingBatchNo.Clear();
  145. this.chkTestMouldFlag.AllItemCheck();
  146. this.cbWorkShop.SelectedValue = null;
  147. this.txtGroutingLineNo.Clear();
  148. }
  149. /// <summary>
  150. /// 查询数据
  151. /// </summary>
  152. private void btnSearch_Click(object sender, System.EventArgs e)
  153. {
  154. try
  155. {
  156. this.dgvGroutingDaily.DataSource = null;
  157. this.dgvGroutingDaily.DataSource = this.GetSearchData();
  158. }
  159. catch (Exception ex)
  160. {
  161. // 对异常进行共通处理
  162. ExceptionManager.HandleEventException(this.ToString(),
  163. MethodBase.GetCurrentMethod().Name, this.Text, ex);
  164. }
  165. }
  166. /// <summary>
  167. /// 添加新注浆日报
  168. /// </summary>
  169. /// <param name="sender"></param>
  170. /// <param name="e"></param>
  171. private void tsbtnAdd_Click(object sender, EventArgs e)
  172. {
  173. try
  174. {
  175. F_PM_2901 frmFPM0102 = new F_PM_2901();
  176. DialogResult dialogresult = frmFPM0102.ShowDialog();
  177. if (dialogresult == DialogResult.OK)
  178. {
  179. this.btnSearch_Click(sender, e);
  180. }
  181. }
  182. catch (Exception ex)
  183. {
  184. // 对异常进行共通处理
  185. ExceptionManager.HandleEventException(this.ToString(),
  186. MethodBase.GetCurrentMethod().Name, this.Text, ex);
  187. }
  188. }
  189. /// <summary>
  190. /// 编辑注浆日报
  191. /// </summary>
  192. private void tsbtnEdit_Click(object sender, EventArgs e)
  193. {
  194. try
  195. {
  196. DataGridViewRow currentRow = this.dgvGroutingDaily.CurrentRow;
  197. if (currentRow != null)
  198. {
  199. int dailyId = Convert.ToInt32(currentRow.Cells["GroutingDailyID"].Value);
  200. F_PM_0102 frmFPM0102 = new F_PM_0102(dailyId);
  201. DialogResult dialogresult = frmFPM0102.ShowDialog();
  202. if (dialogresult == DialogResult.OK)
  203. {
  204. //this.btnSearch_Click(sender, e);
  205. string groutingDailyIDs = dailyId.ToString();// frmFPM0102.GroutingDailyIDs;
  206. this.dgvGroutingDaily.DataSource = null;
  207. this.dgvGroutingDaily.DataSource = this.GetSearchData();
  208. }
  209. }
  210. else
  211. {
  212. DKMessageBox.ShowDialog(this, DKMessageCode.W_CMN_C_001);
  213. }
  214. }
  215. catch (Exception ex)
  216. {
  217. // 对异常进行共通处理
  218. ExceptionManager.HandleEventException(this.ToString(),
  219. MethodBase.GetCurrentMethod().Name, this.Text, ex);
  220. }
  221. }
  222. /// <summary>
  223. /// 编辑注浆日报
  224. /// </summary>
  225. private void dgvGroutingDaily_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
  226. {
  227. if (e.RowIndex < 0 || e.ColumnIndex < 0)
  228. {
  229. return;
  230. }
  231. this.tsbtnEdit_Click(sender, null);
  232. }
  233. /// <summary>
  234. /// 绑定条码
  235. /// </summary>
  236. /// <param name="sender"></param>
  237. /// <param name="e"></param>
  238. private void tsbtnBindBarCode_Click(object sender, EventArgs e)
  239. {
  240. try
  241. {
  242. //F_PM_0103 frmPM0103 = new F_PM_0103();
  243. //DialogResult dialogResult = frmPM0103.ShowDialog();
  244. //if (dialogResult == DialogResult.OK)
  245. //{
  246. // this.btnSearch_Click(sender, e);
  247. //}
  248. int dailyId = 0;
  249. DataGridViewRow currentRow = this.dgvGroutingDaily.CurrentRow;
  250. if (currentRow != null)
  251. {
  252. dailyId = Convert.ToInt32(currentRow.Cells["GroutingDailyID"].Value);
  253. }
  254. F_PM_0103 frmPM0103 = new F_PM_0103(dailyId);
  255. DialogResult dialogResult = frmPM0103.ShowDialog();
  256. //if (dialogResult == DialogResult.OK)
  257. //{
  258. // this.btnSearch_Click(sender, e);
  259. //}
  260. if (frmPM0103.GroutingDailyIDs != null && frmPM0103.GroutingDailyIDs.Count > 0)
  261. {
  262. string ids = string.Join(",", frmPM0103.GroutingDailyIDs);
  263. this.dgvGroutingDaily.DataSource = null;
  264. // 调用服务器端获取数据集
  265. ServiceResultEntity sre = DoAsync<ServiceResultEntity>(() =>
  266. {
  267. return PMModuleProxyNew.Service.GetFPM0101SData(ids);
  268. }
  269. );
  270. if (sre.Status == Constant.ServiceResultStatus.Success)
  271. {
  272. this.dgvGroutingDaily.DataSource = sre.Data.Tables[0];
  273. }
  274. }
  275. }
  276. catch (Exception ex)
  277. {
  278. // 对异常进行共通处理
  279. ExceptionManager.HandleEventException(this.ToString(),
  280. MethodBase.GetCurrentMethod().Name, this.Text, ex);
  281. }
  282. }
  283. /// <summary>
  284. /// 关闭按钮事件
  285. /// </summary>
  286. /// <param name="sender"></param>
  287. /// <param name="e"></param>
  288. private void tsbtnClose_Click(object sender, EventArgs e)
  289. {
  290. this.Close();
  291. }
  292. /// <summary>
  293. /// 自动列宽事件
  294. /// </summary>
  295. /// <param name="sender"></param>
  296. /// <param name="e"></param>
  297. private void tsbtnAdaptive_Click(object sender, EventArgs e)
  298. {
  299. this.dgvGroutingDaily.AutoResizeColumns(DataGridViewAutoSizeColumnsMode.AllCells);
  300. }
  301. /// <summary>
  302. /// 窗体关闭
  303. /// </summary>
  304. /// <param name="sender"></param>
  305. /// <param name="e"></param>
  306. private void F_PM_0101_FormClosed(object sender, FormClosedEventArgs e)
  307. {
  308. _instance = null;
  309. }
  310. #endregion
  311. #region 私有方法
  312. /// <summary>
  313. /// 初始化控件
  314. /// </summary>
  315. private void InitializeControls()
  316. {
  317. this.tsbtnAdd.Text = ButtonText.TSBTN_ADD;
  318. this.tsbtnAdaptive.Text = ButtonText.TSBTN_ADAPTIVE;
  319. this.tsbtnClose.Text = ButtonText.TSBTN_CLOSE;
  320. this.btnSearch.Text = ButtonText.BTN_SEARCH;
  321. this.btnClearCondition.Text = ButtonText.BTN_CLEARCONDITION;
  322. this.gbxCondition.Text = Constant.LABEL_QUERY_CONDITIONS;
  323. this.chkGroutingFlag.AllItemCheck();
  324. this.chkBarcodeFlag.AllItemCheck();
  325. this.dgvGroutingDaily.AutoGenerateColumns = false;
  326. this.dgvGroutingDaily.ReadOnly = true;
  327. }
  328. /// <summary>
  329. /// 根据界面查询条件获取数据集
  330. /// </summary>
  331. private DataTable GetSearchData()
  332. {
  333. try
  334. {
  335. FPM0101_SE se = new FPM0101_SE();
  336. se.GroutingLineCode = this.txtGroutingLineCode.Text;
  337. se.GroutingLineName = this.txtGroutingLineName.Text;
  338. se.GroutingMouldCode = this.txtGroutingMouldCode.Text;
  339. se.GoodsCode = this.txtGoodsCode.Text;
  340. se.GoodsName = this.txtGoodsName.Text;
  341. se.Remarks = this.txtRemarks.Text;
  342. se.GroutingDateBegin = this.txtGroutingDateBegin.Value.Date;
  343. se.GroutingDateEnd = this.txtGroutingDateEnd.Value.Date;
  344. if (this.txtGroutingBatchNo.DataValue.HasValue)
  345. {
  346. se.GroutingBatchNo = System.Convert.ToInt32(this.txtGroutingBatchNo.DataValue);
  347. }
  348. if (this.cboGroutingLineType.SelectedValue != null)
  349. {
  350. se.GMouldTypeID = Convert.ToInt32(this.cboGroutingLineType.SelectedValue);
  351. }
  352. object[] groutingFlags = this.chkGroutingFlag.SelectedValues;
  353. if (groutingFlags.Length == 1)
  354. {
  355. se.GroutingFlag = groutingFlags[0].ToString();
  356. }
  357. object[] barcodeFlags = this.chkBarcodeFlag.SelectedValues;
  358. if (barcodeFlags.Length == 1)
  359. {
  360. se.BarCodeFlag = barcodeFlags[0].ToString();
  361. }
  362. se.GroutingUserCode = this.txtGroutingUser.Text;
  363. // 是否损坯 (0:否;1:是)
  364. se.ScrapFlag = "1";
  365. // 交坯标识 (0:未交坯;1:已交坯)
  366. se.DeliverFlag = "0";
  367. se.DeliverTimeBegin = SqlDateTime.MinValue.Value;
  368. se.DeliverTimeEnd = SqlDateTime.MaxValue.Value.AddDays(-1);
  369. object[] testMouldFlags = this.chkTestMouldFlag.SelectedValues;
  370. if (testMouldFlags.Length == 1)
  371. {
  372. se.TestMouldFlag = testMouldFlags[0].ToString();
  373. }
  374. // 工段250306
  375. se.GroutingLineNo = this.txtGroutingLineNo.Text;
  376. // 车间250306
  377. if (this.cbWorkShop.Text != string.Empty)
  378. {
  379. se.WorkShop = this.cbWorkShop.Text.ToString();
  380. }
  381. // 调用服务器端获取数据集
  382. ServiceResultEntity sre = DoAsync<ServiceResultEntity>(() =>
  383. {
  384. return PMModuleProxyNew.Service.GetFPM0101SData(se);
  385. }
  386. );
  387. if (sre.Status == Constant.ServiceResultStatus.Success)
  388. {
  389. return sre.Data.Tables[0];
  390. }
  391. return null;
  392. }
  393. catch (Exception ex)
  394. {
  395. throw ex;
  396. }
  397. }
  398. #endregion
  399. private void gbxCondition_Enter(object sender, EventArgs e)
  400. {
  401. }
  402. }
  403. }