F_MST_0401.cs 43 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936
  1. /*******************************************************************************
  2. * Copyright(c) 2014 dongke All rights reserved. / Confidential
  3. * 类的信息:
  4. * 1.程序名称:F_MST_0401.cs
  5. * 2.功能描述:系统参数管理
  6. * 编辑履历:
  7. * 作者 日期 版本 修改内容
  8. * 任海 2014/09/17 1.00 新建
  9. *******************************************************************************/
  10. using System;
  11. using System.Data;
  12. using System.Windows.Forms;
  13. using Dongke.IBOSS.PRD.Basics.BaseResources;
  14. using Dongke.IBOSS.PRD.Basics.BaseControls;
  15. using Dongke.IBOSS.PRD.Client.CommonModule;
  16. using Dongke.IBOSS.PRD.Basics.Library;
  17. using Dongke.IBOSS.PRD.WCF.Proxys;
  18. using Dongke.IBOSS.PRD.Client.DataModels;
  19. namespace Dongke.IBOSS.PRD.Client.SystemModule
  20. {
  21. /// <summary>
  22. /// 系统参数管理
  23. /// </summary>
  24. public partial class F_MST_0401 : FormBase
  25. {
  26. #region 成员变量
  27. // 定义表存储系统参数信息
  28. private DataTable _systemData = null;
  29. // 窗体的单例模式
  30. private static F_MST_0401 _instance;
  31. #endregion
  32. #region 构造函数
  33. /// <summary>
  34. /// 构造函数
  35. /// </summary>
  36. public F_MST_0401()
  37. {
  38. InitializeComponent();
  39. this.Text = FormTitles.F_MST_0401;
  40. // 按钮
  41. this.btnInit.Text = ButtonText.BTN_INIT;
  42. this.btnSave.Text = ButtonText.BTN_SAVE;
  43. this.btnCancel.Text = ButtonText.BTN_CLOSE;
  44. DataTable spm16 = new DataTable();
  45. spm16.Columns.Add("Name");
  46. spm16.Columns.Add("Value");
  47. spm16.Rows.Add(new object[]{"按窑车","1"});
  48. spm16.Rows.Add(new object[]{"按产品","2"});
  49. cobSPM016.DisplayMember = "Name";
  50. cobSPM016.ValueMember = "Value";
  51. cobSPM016.DataSource = spm16;
  52. }
  53. #endregion
  54. #region 单例模式
  55. /// <summary>
  56. /// 单例模式,防止重复创建窗体
  57. /// </summary>
  58. public static F_MST_0401 Instance
  59. {
  60. get
  61. {
  62. if (_instance == null)
  63. {
  64. _instance = new F_MST_0401();
  65. }
  66. return _instance;
  67. }
  68. }
  69. #endregion
  70. #region 事件
  71. /// <summary>
  72. /// 画面加载
  73. /// </summary>
  74. /// <param name="sender"></param>
  75. /// <param name="e"></param>
  76. private void FrmSystemSetting_Load(object sender, EventArgs e)
  77. {
  78. try
  79. {
  80. // 异步处理,获取系统参数信息
  81. base.DataSource = (DataSet)DoAsync(new BaseAsyncMethod(GetSystemData));
  82. if (DataSource != null && DataSource.Tables.Count > Constant.INT_IS_ZERO && DataSource.Tables[0].Rows.Count > Constant.INT_IS_ZERO)
  83. {
  84. // 内存系统参数表_systemData获取数据源
  85. this._systemData = DataSource.Tables[0];
  86. // 加载系统参数值
  87. this.LoadSystemData("SettingValue");
  88. }
  89. FormPermissionManager.FormPermissionControl(this.Name, this,
  90. LogInUserInfo.CurrentUser.CurrentUserEntity.UserRightData, LogInUserInfo.CurrentUser.CurrentUserEntity.FunctionData);
  91. this.cboBalanceDate.Enabled = false;
  92. }
  93. catch (Exception ex)
  94. {
  95. // 对异常进行共通处理
  96. ExceptionManager.HandleEventException(this.ToString(),
  97. System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
  98. }
  99. }
  100. /// <summary>
  101. /// 控制默认用户密码只能输入数字,字母的组合
  102. /// </summary>
  103. /// <param name="sender"></param>
  104. /// <param name="e"></param>
  105. private void txtDefaultPassword_KeyPress(object sender, KeyPressEventArgs e)
  106. {
  107. if (e.KeyChar != '\b' && !char.IsLetterOrDigit(e.KeyChar))
  108. {
  109. e.Handled = true;
  110. }
  111. }
  112. /// <summary>
  113. /// 保存按钮事件
  114. /// </summary>
  115. /// <param name="sender"></param>
  116. /// <param name="e"></param>
  117. private void btnSave_Click(object sender, EventArgs e)
  118. {
  119. try
  120. {
  121. // 验证输入信息是否完整有效
  122. bool isValidity = IsInputValidity();
  123. if (!isValidity)
  124. {
  125. return;
  126. }
  127. // 将页面修改的数据在内存中的_systemData表更新
  128. this.SetDateToMemory();
  129. // 保存时先判断是否有数据变化
  130. if (DataJudge.IsChange((DataTable)_systemData))
  131. {
  132. // 异步处理
  133. this.btnSave.Enabled = false;
  134. this.btnCancel.Enabled = false;
  135. this.btnInit.Enabled = false;
  136. object result = DoAsync(new BaseAsyncMethod(SaveSystemData));
  137. this.btnSave.Enabled = true;
  138. this.btnCancel.Enabled = true;
  139. this.btnInit.Enabled = true;
  140. // 保存成功后关闭窗体
  141. if (Convert.ToInt32(result) > Constant.INT_IS_ZERO)
  142. {
  143. this._systemData.AcceptChanges();
  144. MessageBox.Show(string.Format(Messages.MSG_CMN_I001, "系统参数", "保存"),
  145. this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
  146. // 关闭窗体
  147. this.Close();
  148. }
  149. else if (Convert.ToInt16(result) == Constant.RETURN_IS_ERRORACCOUNTTIME)
  150. {
  151. // 重置控件Enabled属性
  152. this.SetEnableControls();
  153. MessageBox.Show(string.Format(Messages.MSG_CMN_W007, "账务时间不合法不允许修改"),
  154. this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
  155. this.dtpAccountTime.Focus();
  156. }
  157. // 没有更新数据则保留窗体
  158. else
  159. {
  160. // 重置控件Enabled属性
  161. this.SetEnableControls();
  162. MessageBox.Show(string.Format(Messages.MSG_CMN_W001, "系统参数", "保存"),
  163. this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
  164. }
  165. }
  166. else
  167. {
  168. // 关闭窗体
  169. this.Close();
  170. }
  171. }
  172. catch (Exception ex)
  173. {
  174. this.btnSave.Enabled = true;
  175. this.btnCancel.Enabled = true;
  176. this.btnInit.Enabled = true;
  177. // 对异常进行共通处理
  178. ExceptionManager.HandleEventException(this.ToString(),
  179. System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
  180. }
  181. }
  182. /// <summary>
  183. /// 恢复默认值,将页面参数(除不允许编辑的外)加载为系统默认值
  184. /// </summary>
  185. /// <param name="sender"></param>
  186. /// <param name="e"></param>
  187. private void btnInit_Click(object sender, EventArgs e)
  188. {
  189. try
  190. {
  191. // 提示用户,是否将页面恢复为系统默认参数
  192. DialogResult dialogResult = MessageBox.Show(string.Format(
  193. Messages.MSG_CMN_Q002, "页面系统参数", "恢复默认值"),
  194. this.Text, MessageBoxButtons.YesNo, MessageBoxIcon.Question,
  195. MessageBoxDefaultButton.Button2);
  196. if (dialogResult == DialogResult.Yes)
  197. {
  198. LoadSystemData("SettingDefaultValues");
  199. }
  200. }
  201. catch (Exception ex)
  202. {
  203. // 对异常进行共通处理
  204. ExceptionManager.HandleEventException(this.ToString(),
  205. System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
  206. }
  207. }
  208. /// <summary>
  209. /// 关闭按钮事件
  210. /// </summary>
  211. /// <param name="sender"></param>
  212. /// <param name="e"></param>
  213. private void btnCancel_Click(object sender, EventArgs e)
  214. {
  215. this.Close();
  216. }
  217. /// <summary>
  218. /// 点击窗体右上方关闭按钮
  219. /// </summary>
  220. /// <param name="sender"></param>
  221. /// <param name="e"></param>
  222. private void FrmSystemSetting_FormClosing(object sender, FormClosingEventArgs e)
  223. {
  224. try
  225. {
  226. // 关闭前将页面修改的数据在内存中的_systemData表更新
  227. this.SetDateToMemory();
  228. // 关闭的时候需要判断是否有数据变化,提醒用户是否保存
  229. if (DataJudge.IsChange((DataTable)_systemData))
  230. {
  231. DialogResult dialogResult = MessageBox.Show(string.Format(Messages.MSG_CMN_Q001),
  232. this.Text, MessageBoxButtons.YesNoCancel, MessageBoxIcon.Question);
  233. // 保存改变的数据
  234. if (dialogResult == DialogResult.Yes)
  235. {
  236. // 输入项有无效值时提示用户
  237. if (!IsInputValidity())
  238. {
  239. e.Cancel = true;
  240. return;
  241. }
  242. // 异步处理
  243. object result = DoAsync(new BaseAsyncMethod(SaveSystemData));
  244. // 保存成功提示成功并关闭窗体
  245. if (Convert.ToInt16(result) > Constant.INT_IS_ZERO)
  246. {
  247. MessageBox.Show(string.Format(Messages.MSG_CMN_I001, "系统参数", "保存"),
  248. this.Text, MessageBoxButtons.OK, MessageBoxIcon.Information);
  249. }
  250. else if (Convert.ToInt16(result) == Constant.RETURN_IS_ERRORACCOUNTTIME)
  251. {
  252. MessageBox.Show(string.Format(Messages.MSG_CMN_W007, "账务时间不合法不允许修改"),
  253. this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
  254. this.dtpAccountTime.Focus();
  255. e.Cancel = true;
  256. }
  257. // 没有更新数据则提示并保留窗体
  258. else
  259. {
  260. // 重置控件Enabled属性
  261. this.SetEnableControls();
  262. MessageBox.Show(string.Format(Messages.MSG_CMN_W001, "系统参数", "保存"),
  263. this.Text, MessageBoxButtons.OK, MessageBoxIcon.Warning);
  264. e.Cancel = true;
  265. }
  266. }
  267. // 点击取消不关闭窗体
  268. else if (dialogResult == DialogResult.Cancel)
  269. {
  270. e.Cancel = true;
  271. }
  272. }
  273. }
  274. catch (Exception ex)
  275. {
  276. // 对异常进行共通处理
  277. ExceptionManager.HandleEventException(this.ToString(),
  278. System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
  279. }
  280. }
  281. /// <summary>
  282. /// 窗体关闭后,释放单例资源
  283. /// </summary>
  284. /// <param name="sender"></param>
  285. /// <param name="e"></param>
  286. private void FrmSystemSetting_FormClosed(object sender, FormClosedEventArgs e)
  287. {
  288. _instance = null;
  289. }
  290. #endregion
  291. #region 私有方法
  292. /// <summary>
  293. /// 获取系统参数
  294. /// </summary>
  295. /// <returns></returns>
  296. private object GetSystemData()
  297. {
  298. try
  299. {
  300. return SystemModuleProxy.Service.GetSystemData();
  301. }
  302. catch (Exception ex)
  303. {
  304. throw ex;
  305. }
  306. }
  307. /// <summary>
  308. /// 窗体初始化或者恢复系统默认值时页面加载数据
  309. /// </summary>
  310. /// <param name="loadWay">初始加载"SettingValue";恢复默认值:"SettingDefaultValues"</param>
  311. private void LoadSystemData(string loadWay)
  312. {
  313. try
  314. {
  315. if (this._systemData != null && this._systemData.Rows.Count > Constant.INT_IS_ZERO)
  316. {
  317. for (int i = 0; i < this._systemData.Rows.Count; i++)
  318. {
  319. // 恢复默认值时只恢复允许编辑的,对于不允许编辑的不操作,跳出本次循环执行下次循环
  320. if (!Convert.ToBoolean(Convert.ToInt32(this._systemData.Rows[i]["EditFlag"]))
  321. && "SettingDefaultValues".Equals(loadWay))
  322. {
  323. continue;
  324. }
  325. switch (this._systemData.Rows[i]["SettingCode"].ToString().Trim())
  326. {
  327. #region 系统参数
  328. // 错误密码尝试登录的次数
  329. case "S_LGN_0001":
  330. diaPasswordNumber.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  331. diaPasswordNumber.Text = _systemData.Rows[i][loadWay] + "";
  332. break;
  333. // 用户锁定时长单位小时
  334. case "S_LGN_0002":
  335. diaLockTime.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  336. diaLockTime.Text = _systemData.Rows[i][loadWay] + "";
  337. break;
  338. // 登录时是否启用MAC认证
  339. case "S_LGN_0003":
  340. chkLoginMac.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  341. chkLoginMac.Checked = "1".Equals(_systemData.Rows[i][loadWay]);
  342. break;
  343. // 登录时是否验证登录的时间段
  344. case "S_LGN_0004":
  345. chkLoginTimeLimit.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  346. chkLoginTimeLimit.Checked = "1".Equals(_systemData.Rows[i][loadWay]);
  347. break;
  348. // 结算账务日期
  349. case "S_CMN_0003":
  350. cboBalanceDate.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  351. cboBalanceDate.Text = _systemData.Rows[i][loadWay] + "";
  352. break;
  353. // 默认用户密码
  354. case "S_CMN_0001":
  355. txtDefaultPassword.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  356. txtDefaultPassword.Text = _systemData.Rows[i][loadWay] + "";
  357. break;
  358. // 账务时间
  359. case "S_CMN_0004":
  360. dtpAccountTime.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  361. dtpAccountTime.Text = _systemData.Rows[i][loadWay] + "";
  362. break;
  363. // 年度开始月份
  364. case "S_CMN_0002":
  365. diaSetStartMonth.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  366. diaSetStartMonth.Text = _systemData.Rows[i][loadWay] + "";
  367. break;
  368. #endregion
  369. #region 生产参数
  370. #region 生产限制
  371. case "S_PM_003":
  372. txtSPM003.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  373. txtSPM003.Text = _systemData.Rows[i][loadWay] + "";
  374. break;
  375. case "S_PM_004":
  376. txtSPM004.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  377. txtSPM004.Text = _systemData.Rows[i][loadWay] + "";
  378. break;
  379. case "S_PM_005":
  380. txtSPM005.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  381. txtSPM005.Text = _systemData.Rows[i][loadWay] + "";
  382. break;
  383. case "S_PM_006":
  384. txtSPM006.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  385. txtSPM006.Text = _systemData.Rows[i][loadWay] + "";
  386. break;
  387. case "S_PM_007":
  388. txtSPM007.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  389. txtSPM007.Text = _systemData.Rows[i][loadWay] + "";
  390. break;
  391. case "S_PM_008":
  392. txtSPM008.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  393. txtSPM008.Text = _systemData.Rows[i][loadWay] + "";
  394. break;
  395. case "S_PM_009":
  396. txtSPM009.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  397. txtSPM009.Text = _systemData.Rows[i][loadWay] + "";
  398. break;
  399. case "S_PM_010":
  400. chkSPM010.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  401. chkSPM010.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  402. break;
  403. case "S_PM_015":
  404. chkSPM015.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  405. chkSPM015.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  406. break;
  407. case "S_PM_014":
  408. txtSPM014.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  409. txtSPM014.Text = _systemData.Rows[i][loadWay] + "";
  410. break;
  411. case "S_PM_016":
  412. cobSPM016.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  413. cobSPM016.SelectedValue = _systemData.Rows[i][loadWay] + "";
  414. break;
  415. #endregion
  416. #region 注浆限制
  417. case "S_PM_001":
  418. txtSPM001.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  419. txtSPM001.Text = _systemData.Rows[i][loadWay] + "";
  420. break;
  421. case "S_PM_002":
  422. txtSPM002.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  423. txtSPM002.Text = _systemData.Rows[i][loadWay] + "";
  424. break;
  425. case "S_PM_021":
  426. txtSPM021.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  427. txtSPM021.Text = _systemData.Rows[i][loadWay] + "";
  428. break;
  429. case "S_PM_022":
  430. txtSPM022.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  431. txtSPM022.Text = _systemData.Rows[i][loadWay] + "";
  432. break;
  433. case "S_PM_023":
  434. txtSPM023.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  435. txtSPM023.Text = _systemData.Rows[i][loadWay] + "";
  436. break;
  437. case "S_PM_024":
  438. chkSPM024.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  439. chkSPM024.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  440. break;
  441. #endregion
  442. #region 产成品交接
  443. case "S_PM_011":
  444. //chkSameLogo.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  445. chkSameLogo.Checked = (_systemData.Rows[i][loadWay] + "" == "1");
  446. break;
  447. case "S_PM_012":
  448. //chkSameModel.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  449. chkSameModel.Checked = (_systemData.Rows[i][loadWay] + "" == "1");
  450. break;
  451. case "S_PM_013":
  452. //chkPlateLimitNum.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  453. chkPlateLimitNum.Checked = (_systemData.Rows[i][loadWay] + "" == "1");
  454. break;
  455. #endregion
  456. #region 产品回收
  457. case "S_PM_017":
  458. chkSPM017.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  459. chkSPM017.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  460. break;
  461. case "S_PM_018":
  462. chkSPM018.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  463. chkSPM018.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  464. break;
  465. case "S_PM_019":
  466. chkSPM019.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  467. chkSPM019.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  468. break;
  469. case "S_PM_020":
  470. chkSPM020.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  471. chkSPM020.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  472. break;
  473. #endregion
  474. #endregion
  475. #region 查询终端
  476. case "P_HG03_001":
  477. this.txtPHG03001.Text = _systemData.Rows[i][loadWay] + "";
  478. break;
  479. case "P_HG03_002":
  480. this.txtPHG03002.Text = _systemData.Rows[i][loadWay] + "";
  481. break;
  482. case "P_HG03_003":
  483. this.txtPHG03003.Text = _systemData.Rows[i][loadWay] + "";
  484. break;
  485. #endregion
  486. #region 模具管理
  487. case "S_PC_001":
  488. string flag = _systemData.Rows[i][loadWay] + "";
  489. if (flag == "0")
  490. {
  491. this.rabMouldAuto.Checked = true;
  492. }
  493. else if (flag == "1")
  494. {
  495. this.rabMouldBarcode.Checked = true;
  496. }
  497. else
  498. {
  499. this.rabMust.Checked = true;
  500. }
  501. break;
  502. #endregion
  503. default:
  504. break;
  505. }
  506. }
  507. }
  508. }
  509. catch (Exception ex)
  510. {
  511. throw ex;
  512. }
  513. }
  514. /// <summary>
  515. /// 将页面修改过的参数更新到内存_systemData表
  516. /// </summary>
  517. /// <returns></returns>
  518. private void SetDateToMemory()
  519. {
  520. try
  521. {
  522. string value = null;
  523. for (int i = 0; i < _systemData.Rows.Count; i++)
  524. {
  525. switch (_systemData.Rows[i]["SettingCode"].ToString())
  526. {
  527. # region 系统登录
  528. // 错误密码尝试登录的次数
  529. case "S_LGN_0001":
  530. if (!diaPasswordNumber.Text.Trim().
  531. Equals(_systemData.Rows[i]["SettingValue"]))
  532. {
  533. _systemData.Rows[i]["SettingValue"] = diaPasswordNumber.Text.Trim();
  534. }
  535. break;
  536. // 用户锁定时长单位小时
  537. case "S_LGN_0002":
  538. if (!diaLockTime.Text.Trim().
  539. Equals(_systemData.Rows[i]["SettingValue"]))
  540. {
  541. _systemData.Rows[i]["SettingValue"] = diaLockTime.Text.Trim();
  542. }
  543. break;
  544. // 登录时是否启用MAC认证
  545. case "S_LGN_0003":
  546. if (!(Convert.ToByte(chkLoginMac.Checked) + "").
  547. Equals(_systemData.Rows[i]["SettingValue"]))
  548. {
  549. _systemData.Rows[i]["SettingValue"] = Convert.ToByte(chkLoginMac.Checked);
  550. }
  551. break;
  552. // 登录时是否验证登录的时间段
  553. case "S_LGN_0004":
  554. if (!(Convert.ToByte(chkLoginTimeLimit.Checked) + "").
  555. Equals(_systemData.Rows[i]["SettingValue"]))
  556. {
  557. _systemData.Rows[i]["SettingValue"] = Convert.ToByte(chkLoginTimeLimit.Checked);
  558. }
  559. break;
  560. // 结算账务日期
  561. case "S_CMN_0003":
  562. if (!cboBalanceDate.Text.Trim().
  563. Equals(_systemData.Rows[i]["SettingValue"]))
  564. {
  565. _systemData.Rows[i]["SettingValue"] = cboBalanceDate.Text.Trim();
  566. }
  567. break;
  568. // 默认用户密码
  569. case "S_CMN_0001":
  570. if (!txtDefaultPassword.Text.Trim().
  571. Equals(_systemData.Rows[i]["SettingValue"]))
  572. {
  573. _systemData.Rows[i]["SettingValue"] = txtDefaultPassword.Text.Trim();
  574. }
  575. break;
  576. // 账务时间
  577. case "S_CMN_0004":
  578. if (!dtpAccountTime.Text.Trim().
  579. Equals(_systemData.Rows[i]["SettingValue"]))
  580. {
  581. _systemData.Rows[i]["SettingValue"] = dtpAccountTime.Value.ToString("HH:mm:ss");
  582. }
  583. break;
  584. // 年度开始月份
  585. case "S_CMN_0002":
  586. if (!diaSetStartMonth.Text.Trim().
  587. Equals(_systemData.Rows[i]["SettingValue"]))
  588. {
  589. _systemData.Rows[i]["SettingValue"] = diaSetStartMonth.Text.Trim();
  590. }
  591. break;
  592. #endregion
  593. #region 生产参数
  594. #region 生产限制
  595. case "S_PM_003":
  596. value = txtSPM003.Text.Trim();
  597. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  598. break;
  599. case "S_PM_004":
  600. value = txtSPM004.Text.Trim();
  601. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  602. break;
  603. case "S_PM_005":
  604. value = txtSPM005.Text.Trim();
  605. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  606. break;
  607. case "S_PM_006":
  608. value = txtSPM006.Text.Trim();
  609. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  610. break;
  611. case "S_PM_007":
  612. value = txtSPM007.Text.Trim();
  613. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  614. break;
  615. case "S_PM_008":
  616. value = txtSPM008.Text.Trim();
  617. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  618. break;
  619. case "S_PM_009":
  620. value = txtSPM009.Text.Trim();
  621. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  622. break;
  623. case "S_PM_010":
  624. _systemData.Rows[i]["SettingValue"] = (this.chkSPM010.Checked ? "1" : "0");
  625. break;
  626. case "S_PM_015":
  627. _systemData.Rows[i]["SettingValue"] = (this.chkSPM015.Checked ? "1" : "0");
  628. break;
  629. case "S_PM_014":
  630. value = txtSPM014.Text.Trim();
  631. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  632. break;
  633. case "S_PM_016":
  634. _systemData.Rows[i]["SettingValue"] = cobSPM016.SelectedValue;
  635. break;
  636. #endregion
  637. #region 注浆限制
  638. case "S_PM_001":
  639. value = txtSPM001.Text.Trim();
  640. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  641. break;
  642. case "S_PM_002":
  643. value = txtSPM002.Text.Trim();
  644. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  645. break;
  646. case "S_PM_021":
  647. value = txtSPM021.Text.Trim();
  648. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  649. break;
  650. case "S_PM_022":
  651. value = txtSPM022.Text.Trim();
  652. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  653. break;
  654. case "S_PM_023":
  655. value = txtSPM023.Text.Trim();
  656. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  657. break;
  658. case "S_PM_024":
  659. _systemData.Rows[i]["SettingValue"] = (this.chkSPM024.Checked ? "1" : "0");
  660. break;
  661. #endregion
  662. #region 产成品交接
  663. case "S_PM_011":
  664. _systemData.Rows[i]["SettingValue"] = (this.chkSameLogo.Checked ? "1" : "0");
  665. break;
  666. case "S_PM_012":
  667. _systemData.Rows[i]["SettingValue"] = (this.chkSameModel.Checked ? "1" : "0");
  668. break;
  669. case "S_PM_013":
  670. _systemData.Rows[i]["SettingValue"] = (this.chkPlateLimitNum.Checked ? "1" : "0");
  671. break;
  672. #endregion
  673. #region 产品回收
  674. case "S_PM_017":
  675. _systemData.Rows[i]["SettingValue"] = (this.chkSPM017.Checked ? "1" : "0");
  676. break;
  677. case "S_PM_018":
  678. _systemData.Rows[i]["SettingValue"] = (this.chkSPM018.Checked ? "1" : "0");
  679. break;
  680. case "S_PM_019":
  681. _systemData.Rows[i]["SettingValue"] = (this.chkSPM019.Checked ? "1" : "0");
  682. break;
  683. case "S_PM_020":
  684. _systemData.Rows[i]["SettingValue"] = (this.chkSPM020.Checked ? "1" : "0");
  685. break;
  686. #endregion
  687. #endregion
  688. #region 查询终端
  689. case "P_HG03_001":
  690. _systemData.Rows[i]["SettingValue"] = this.txtPHG03001.Text.Trim();
  691. break;
  692. case "P_HG03_002":
  693. _systemData.Rows[i]["SettingValue"] = this.txtPHG03002.Text.Trim();
  694. break;
  695. case "P_HG03_003":
  696. _systemData.Rows[i]["SettingValue"] = this.txtPHG03003.Text.Trim();
  697. break;
  698. #endregion
  699. #region 模具管理
  700. case "S_PC_001":
  701. _systemData.Rows[i]["SettingValue"] = (this.rabMust.Checked ? "2" : (this.rabMouldBarcode.Checked ? "1" : "0"));
  702. break;
  703. #endregion
  704. default:
  705. break;
  706. }
  707. }
  708. }
  709. catch (Exception ex)
  710. {
  711. throw ex;
  712. }
  713. }
  714. /// <summary>
  715. /// 将内存中_systemData的系统参数值保存到数据库
  716. /// </summary>
  717. private object SaveSystemData()
  718. {
  719. try
  720. {
  721. return SystemModuleProxy.Service.SaveSystemData(_systemData);
  722. }
  723. catch (Exception ex)
  724. {
  725. throw ex;
  726. }
  727. }
  728. /// <summary>
  729. /// 验证输入信息是否完整有效
  730. /// </summary>
  731. /// <returns></returns>
  732. private bool IsInputValidity()
  733. {
  734. try
  735. {
  736. // 密码尝试次数为空时,返回false
  737. if (string.IsNullOrEmpty(this.diaPasswordNumber.Text.Trim()))
  738. {
  739. this.diaPasswordNumber.Focus();
  740. MessageBox.Show(string.Format(Messages.MSG_CMN_W005, "密码尝试次数"), this.Text,
  741. MessageBoxButtons.OK, MessageBoxIcon.Warning);
  742. return false;
  743. }
  744. // 用户锁定时长为空时,返回false
  745. if (string.IsNullOrEmpty(this.diaLockTime.Text.Trim()))
  746. {
  747. this.diaLockTime.Focus();
  748. MessageBox.Show(string.Format(Messages.MSG_CMN_W005, "用户锁定时长"), this.Text,
  749. MessageBoxButtons.OK, MessageBoxIcon.Warning);
  750. return false;
  751. }
  752. // 年度开始月份为空时,返回false
  753. if (string.IsNullOrEmpty(this.diaSetStartMonth.Text.Trim()))
  754. {
  755. this.diaSetStartMonth.Focus();
  756. MessageBox.Show(string.Format(Messages.MSG_CMN_W005, "年度开始月份"), this.Text,
  757. MessageBoxButtons.OK, MessageBoxIcon.Warning);
  758. return false;
  759. }
  760. // 默认用户密码为空时,返回false
  761. if (string.IsNullOrEmpty(this.txtDefaultPassword.Text.Trim()))
  762. {
  763. this.txtDefaultPassword.Focus();
  764. MessageBox.Show(string.Format(Messages.MSG_CMN_W005, "默认用户密码"), this.Text,
  765. MessageBoxButtons.OK, MessageBoxIcon.Warning);
  766. return false;
  767. }
  768. // 结算账务日期为空时,返回false
  769. if (string.IsNullOrEmpty(this.cboBalanceDate.Text.Trim()))
  770. {
  771. this.cboBalanceDate.Focus();
  772. MessageBox.Show(string.Format(Messages.MSG_CMN_W005, "结算账务日期"), this.Text,
  773. MessageBoxButtons.OK, MessageBoxIcon.Warning);
  774. return false;
  775. }
  776. // 账务时间为空时,返回false
  777. //if (string.IsNullOrEmpty(this.dtpAccountTime.Value.ToString("HH:mm:dd")))
  778. //{
  779. // this.dtpAccountTime.Focus();
  780. // MessageBox.Show(string.Format(Messages.MSG_CMN_W005, "账务时间"), this.Text,
  781. // MessageBoxButtons.OK, MessageBoxIcon.Warning);
  782. // return false;
  783. //}
  784. return true;
  785. }
  786. catch (Exception ex)
  787. {
  788. throw ex;
  789. }
  790. }
  791. /// <summary>
  792. /// 异步处理后重新设置控件Enabled属性
  793. /// </summary>
  794. private void SetEnableControls()
  795. {
  796. try
  797. {
  798. if (this._systemData != null && this._systemData.Rows.Count > Constant.INT_IS_ZERO)
  799. {
  800. for (int i = 0; i < this._systemData.Rows.Count; i++)
  801. {
  802. // 允许修改标识为true时,结束本次循环,进入下次循环
  803. if ("1".Equals(this._systemData.Rows[i]["EditFlag"]))
  804. {
  805. continue;
  806. }
  807. switch (this._systemData.Rows[i]["SettingCode"].ToString().Trim())
  808. {
  809. #region 系统登录
  810. // 错误密码尝试登录的次数
  811. case "S_LGN_0001":
  812. diaPasswordNumber.Enabled = false;
  813. break;
  814. // 用户锁定时长单位小时
  815. case "S_LGN_0002":
  816. diaLockTime.Enabled = false;
  817. break;
  818. // 登录时是否启用MAC认证
  819. case "S_LGN_0003":
  820. chkLoginMac.Enabled = false;
  821. break;
  822. // 登录时是否验证登录的时间段
  823. case "S_LGN_0004":
  824. chkLoginTimeLimit.Enabled = false;
  825. break;
  826. #endregion
  827. #region 共通设置
  828. // 结算账务日期
  829. case "S_CMN_0003":
  830. cboBalanceDate.Enabled = false;
  831. break;
  832. // 默认用户密码
  833. case "S_CMN_0001":
  834. txtDefaultPassword.Enabled = false;
  835. break;
  836. // 账务时间
  837. case "S_CMN_0004":
  838. dtpAccountTime.Enabled = false;
  839. break;
  840. // 年度开始月份
  841. case "S_CMN_0002":
  842. diaSetStartMonth.Enabled = false;
  843. break;
  844. #endregion
  845. default:
  846. break;
  847. }
  848. }
  849. }
  850. }
  851. catch (Exception ex)
  852. {
  853. throw ex;
  854. }
  855. }
  856. #endregion
  857. private void chkSameModel_CheckedChanged(object sender, EventArgs e)
  858. {
  859. if (this.chkSameModel.Checked)
  860. {
  861. this.chkPlateLimitNum.Enabled = true;
  862. }
  863. else
  864. {
  865. this.chkPlateLimitNum.Enabled = false;
  866. this.chkPlateLimitNum.Checked = false;
  867. }
  868. }
  869. private void btnSetBackInP_Click(object sender, EventArgs e)
  870. {
  871. try
  872. {
  873. F_MST_040101 f040101 = new F_MST_040101();
  874. f040101.ShowDialog();
  875. }
  876. catch (Exception ex)
  877. {
  878. // 对异常进行共通处理
  879. ExceptionManager.HandleEventException(this.ToString(),
  880. System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
  881. }
  882. }
  883. }
  884. }