F_MST_0401.cs 44 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952
  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. txtSPM001.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  439. txtSPM001.Text = _systemData.Rows[i][loadWay] + "";
  440. break;
  441. case "S_PM_033":
  442. txtSPM033.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  443. txtSPM033.Text = _systemData.Rows[i][loadWay] + "";
  444. break;
  445. case "S_PM_034":
  446. txtSPM034.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  447. txtSPM034.Text = _systemData.Rows[i][loadWay] + "";
  448. break;
  449. #endregion
  450. #region 产成品交接
  451. case "S_PM_011":
  452. //chkSameLogo.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  453. chkSameLogo.Checked = (_systemData.Rows[i][loadWay] + "" == "1");
  454. break;
  455. case "S_PM_012":
  456. //chkSameModel.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  457. chkSameModel.Checked = (_systemData.Rows[i][loadWay] + "" == "1");
  458. break;
  459. case "S_PM_013":
  460. //chkPlateLimitNum.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  461. chkPlateLimitNum.Checked = (_systemData.Rows[i][loadWay] + "" == "1");
  462. break;
  463. #endregion
  464. #region 产品回收
  465. case "S_PM_017":
  466. chkSPM017.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  467. chkSPM017.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  468. break;
  469. case "S_PM_018":
  470. chkSPM018.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  471. chkSPM018.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  472. break;
  473. case "S_PM_019":
  474. chkSPM019.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  475. chkSPM019.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  476. break;
  477. case "S_PM_020":
  478. chkSPM020.Enabled = Convert.ToBoolean(Convert.ToInt32(_systemData.Rows[i]["EditFlag"]));
  479. chkSPM020.Checked = ("1" == _systemData.Rows[i][loadWay] + "");
  480. break;
  481. #endregion
  482. #endregion
  483. #region 查询终端
  484. case "P_HG03_001":
  485. this.txtPHG03001.Text = _systemData.Rows[i][loadWay] + "";
  486. break;
  487. case "P_HG03_002":
  488. this.txtPHG03002.Text = _systemData.Rows[i][loadWay] + "";
  489. break;
  490. case "P_HG03_003":
  491. this.txtPHG03003.Text = _systemData.Rows[i][loadWay] + "";
  492. break;
  493. #endregion
  494. #region 模具管理
  495. case "S_PC_001":
  496. string flag = _systemData.Rows[i][loadWay] + "";
  497. if (flag == "0")
  498. {
  499. this.rabMouldAuto.Checked = true;
  500. }
  501. else if (flag == "1")
  502. {
  503. this.rabMouldBarcode.Checked = true;
  504. }
  505. else
  506. {
  507. this.rabMust.Checked = true;
  508. }
  509. break;
  510. #endregion
  511. default:
  512. break;
  513. }
  514. }
  515. }
  516. }
  517. catch (Exception ex)
  518. {
  519. throw ex;
  520. }
  521. }
  522. /// <summary>
  523. /// 将页面修改过的参数更新到内存_systemData表
  524. /// </summary>
  525. /// <returns></returns>
  526. private void SetDateToMemory()
  527. {
  528. try
  529. {
  530. string value = null;
  531. for (int i = 0; i < _systemData.Rows.Count; i++)
  532. {
  533. switch (_systemData.Rows[i]["SettingCode"].ToString())
  534. {
  535. # region 系统登录
  536. // 错误密码尝试登录的次数
  537. case "S_LGN_0001":
  538. if (!diaPasswordNumber.Text.Trim().
  539. Equals(_systemData.Rows[i]["SettingValue"]))
  540. {
  541. _systemData.Rows[i]["SettingValue"] = diaPasswordNumber.Text.Trim();
  542. }
  543. break;
  544. // 用户锁定时长单位小时
  545. case "S_LGN_0002":
  546. if (!diaLockTime.Text.Trim().
  547. Equals(_systemData.Rows[i]["SettingValue"]))
  548. {
  549. _systemData.Rows[i]["SettingValue"] = diaLockTime.Text.Trim();
  550. }
  551. break;
  552. // 登录时是否启用MAC认证
  553. case "S_LGN_0003":
  554. if (!(Convert.ToByte(chkLoginMac.Checked) + "").
  555. Equals(_systemData.Rows[i]["SettingValue"]))
  556. {
  557. _systemData.Rows[i]["SettingValue"] = Convert.ToByte(chkLoginMac.Checked);
  558. }
  559. break;
  560. // 登录时是否验证登录的时间段
  561. case "S_LGN_0004":
  562. if (!(Convert.ToByte(chkLoginTimeLimit.Checked) + "").
  563. Equals(_systemData.Rows[i]["SettingValue"]))
  564. {
  565. _systemData.Rows[i]["SettingValue"] = Convert.ToByte(chkLoginTimeLimit.Checked);
  566. }
  567. break;
  568. // 结算账务日期
  569. case "S_CMN_0003":
  570. if (!cboBalanceDate.Text.Trim().
  571. Equals(_systemData.Rows[i]["SettingValue"]))
  572. {
  573. _systemData.Rows[i]["SettingValue"] = cboBalanceDate.Text.Trim();
  574. }
  575. break;
  576. // 默认用户密码
  577. case "S_CMN_0001":
  578. if (!txtDefaultPassword.Text.Trim().
  579. Equals(_systemData.Rows[i]["SettingValue"]))
  580. {
  581. _systemData.Rows[i]["SettingValue"] = txtDefaultPassword.Text.Trim();
  582. }
  583. break;
  584. // 账务时间
  585. case "S_CMN_0004":
  586. if (!dtpAccountTime.Text.Trim().
  587. Equals(_systemData.Rows[i]["SettingValue"]))
  588. {
  589. _systemData.Rows[i]["SettingValue"] = dtpAccountTime.Value.ToString("HH:mm:ss");
  590. }
  591. break;
  592. // 年度开始月份
  593. case "S_CMN_0002":
  594. if (!diaSetStartMonth.Text.Trim().
  595. Equals(_systemData.Rows[i]["SettingValue"]))
  596. {
  597. _systemData.Rows[i]["SettingValue"] = diaSetStartMonth.Text.Trim();
  598. }
  599. break;
  600. #endregion
  601. #region 生产参数
  602. #region 生产限制
  603. case "S_PM_003":
  604. value = txtSPM003.Text.Trim();
  605. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  606. break;
  607. case "S_PM_004":
  608. value = txtSPM004.Text.Trim();
  609. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  610. break;
  611. case "S_PM_005":
  612. value = txtSPM005.Text.Trim();
  613. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  614. break;
  615. case "S_PM_006":
  616. value = txtSPM006.Text.Trim();
  617. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  618. break;
  619. case "S_PM_007":
  620. value = txtSPM007.Text.Trim();
  621. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  622. break;
  623. case "S_PM_008":
  624. value = txtSPM008.Text.Trim();
  625. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  626. break;
  627. case "S_PM_009":
  628. value = txtSPM009.Text.Trim();
  629. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  630. break;
  631. case "S_PM_010":
  632. _systemData.Rows[i]["SettingValue"] = (this.chkSPM010.Checked ? "1" : "0");
  633. break;
  634. case "S_PM_015":
  635. _systemData.Rows[i]["SettingValue"] = (this.chkSPM015.Checked ? "1" : "0");
  636. break;
  637. case "S_PM_014":
  638. value = txtSPM014.Text.Trim();
  639. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  640. break;
  641. case "S_PM_016":
  642. _systemData.Rows[i]["SettingValue"] = cobSPM016.SelectedValue;
  643. break;
  644. #endregion
  645. #region 注浆限制
  646. case "S_PM_001":
  647. value = txtSPM001.Text.Trim();
  648. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  649. break;
  650. case "S_PM_002":
  651. value = txtSPM002.Text.Trim();
  652. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  653. break;
  654. case "S_PM_021":
  655. value = txtSPM021.Text.Trim();
  656. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  657. break;
  658. case "S_PM_022":
  659. value = txtSPM022.Text.Trim();
  660. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  661. break;
  662. case "S_PM_023":
  663. value = txtSPM023.Text.Trim();
  664. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  665. break;
  666. case "S_PM_024":
  667. _systemData.Rows[i]["SettingValue"] = (this.chkSPM024.Checked ? "1" : "0");
  668. break;
  669. case "S_PM_033":
  670. value = txtSPM033.Text.Trim();
  671. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  672. break;
  673. case "S_PM_034":
  674. value = txtSPM034.Text.Trim();
  675. _systemData.Rows[i]["SettingValue"] = (value == "" ? "0" : value);
  676. break;
  677. #endregion
  678. #region 产成品交接
  679. case "S_PM_011":
  680. _systemData.Rows[i]["SettingValue"] = (this.chkSameLogo.Checked ? "1" : "0");
  681. break;
  682. case "S_PM_012":
  683. _systemData.Rows[i]["SettingValue"] = (this.chkSameModel.Checked ? "1" : "0");
  684. break;
  685. case "S_PM_013":
  686. _systemData.Rows[i]["SettingValue"] = (this.chkPlateLimitNum.Checked ? "1" : "0");
  687. break;
  688. #endregion
  689. #region 产品回收
  690. case "S_PM_017":
  691. _systemData.Rows[i]["SettingValue"] = (this.chkSPM017.Checked ? "1" : "0");
  692. break;
  693. case "S_PM_018":
  694. _systemData.Rows[i]["SettingValue"] = (this.chkSPM018.Checked ? "1" : "0");
  695. break;
  696. case "S_PM_019":
  697. _systemData.Rows[i]["SettingValue"] = (this.chkSPM019.Checked ? "1" : "0");
  698. break;
  699. case "S_PM_020":
  700. _systemData.Rows[i]["SettingValue"] = (this.chkSPM020.Checked ? "1" : "0");
  701. break;
  702. #endregion
  703. #endregion
  704. #region 查询终端
  705. case "P_HG03_001":
  706. _systemData.Rows[i]["SettingValue"] = this.txtPHG03001.Text.Trim();
  707. break;
  708. case "P_HG03_002":
  709. _systemData.Rows[i]["SettingValue"] = this.txtPHG03002.Text.Trim();
  710. break;
  711. case "P_HG03_003":
  712. _systemData.Rows[i]["SettingValue"] = this.txtPHG03003.Text.Trim();
  713. break;
  714. #endregion
  715. #region 模具管理
  716. case "S_PC_001":
  717. _systemData.Rows[i]["SettingValue"] = (this.rabMust.Checked ? "2" : (this.rabMouldBarcode.Checked ? "1" : "0"));
  718. break;
  719. #endregion
  720. default:
  721. break;
  722. }
  723. }
  724. }
  725. catch (Exception ex)
  726. {
  727. throw ex;
  728. }
  729. }
  730. /// <summary>
  731. /// 将内存中_systemData的系统参数值保存到数据库
  732. /// </summary>
  733. private object SaveSystemData()
  734. {
  735. try
  736. {
  737. return SystemModuleProxy.Service.SaveSystemData(_systemData);
  738. }
  739. catch (Exception ex)
  740. {
  741. throw ex;
  742. }
  743. }
  744. /// <summary>
  745. /// 验证输入信息是否完整有效
  746. /// </summary>
  747. /// <returns></returns>
  748. private bool IsInputValidity()
  749. {
  750. try
  751. {
  752. // 密码尝试次数为空时,返回false
  753. if (string.IsNullOrEmpty(this.diaPasswordNumber.Text.Trim()))
  754. {
  755. this.diaPasswordNumber.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.diaLockTime.Text.Trim()))
  762. {
  763. this.diaLockTime.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.diaSetStartMonth.Text.Trim()))
  770. {
  771. this.diaSetStartMonth.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.txtDefaultPassword.Text.Trim()))
  778. {
  779. this.txtDefaultPassword.Focus();
  780. MessageBox.Show(string.Format(Messages.MSG_CMN_W005, "默认用户密码"), this.Text,
  781. MessageBoxButtons.OK, MessageBoxIcon.Warning);
  782. return false;
  783. }
  784. // 结算账务日期为空时,返回false
  785. if (string.IsNullOrEmpty(this.cboBalanceDate.Text.Trim()))
  786. {
  787. this.cboBalanceDate.Focus();
  788. MessageBox.Show(string.Format(Messages.MSG_CMN_W005, "结算账务日期"), this.Text,
  789. MessageBoxButtons.OK, MessageBoxIcon.Warning);
  790. return false;
  791. }
  792. // 账务时间为空时,返回false
  793. //if (string.IsNullOrEmpty(this.dtpAccountTime.Value.ToString("HH:mm:dd")))
  794. //{
  795. // this.dtpAccountTime.Focus();
  796. // MessageBox.Show(string.Format(Messages.MSG_CMN_W005, "账务时间"), this.Text,
  797. // MessageBoxButtons.OK, MessageBoxIcon.Warning);
  798. // return false;
  799. //}
  800. return true;
  801. }
  802. catch (Exception ex)
  803. {
  804. throw ex;
  805. }
  806. }
  807. /// <summary>
  808. /// 异步处理后重新设置控件Enabled属性
  809. /// </summary>
  810. private void SetEnableControls()
  811. {
  812. try
  813. {
  814. if (this._systemData != null && this._systemData.Rows.Count > Constant.INT_IS_ZERO)
  815. {
  816. for (int i = 0; i < this._systemData.Rows.Count; i++)
  817. {
  818. // 允许修改标识为true时,结束本次循环,进入下次循环
  819. if ("1".Equals(this._systemData.Rows[i]["EditFlag"]))
  820. {
  821. continue;
  822. }
  823. switch (this._systemData.Rows[i]["SettingCode"].ToString().Trim())
  824. {
  825. #region 系统登录
  826. // 错误密码尝试登录的次数
  827. case "S_LGN_0001":
  828. diaPasswordNumber.Enabled = false;
  829. break;
  830. // 用户锁定时长单位小时
  831. case "S_LGN_0002":
  832. diaLockTime.Enabled = false;
  833. break;
  834. // 登录时是否启用MAC认证
  835. case "S_LGN_0003":
  836. chkLoginMac.Enabled = false;
  837. break;
  838. // 登录时是否验证登录的时间段
  839. case "S_LGN_0004":
  840. chkLoginTimeLimit.Enabled = false;
  841. break;
  842. #endregion
  843. #region 共通设置
  844. // 结算账务日期
  845. case "S_CMN_0003":
  846. cboBalanceDate.Enabled = false;
  847. break;
  848. // 默认用户密码
  849. case "S_CMN_0001":
  850. txtDefaultPassword.Enabled = false;
  851. break;
  852. // 账务时间
  853. case "S_CMN_0004":
  854. dtpAccountTime.Enabled = false;
  855. break;
  856. // 年度开始月份
  857. case "S_CMN_0002":
  858. diaSetStartMonth.Enabled = false;
  859. break;
  860. #endregion
  861. default:
  862. break;
  863. }
  864. }
  865. }
  866. }
  867. catch (Exception ex)
  868. {
  869. throw ex;
  870. }
  871. }
  872. #endregion
  873. private void chkSameModel_CheckedChanged(object sender, EventArgs e)
  874. {
  875. if (this.chkSameModel.Checked)
  876. {
  877. this.chkPlateLimitNum.Enabled = true;
  878. }
  879. else
  880. {
  881. this.chkPlateLimitNum.Enabled = false;
  882. this.chkPlateLimitNum.Checked = false;
  883. }
  884. }
  885. private void btnSetBackInP_Click(object sender, EventArgs e)
  886. {
  887. try
  888. {
  889. F_MST_040101 f040101 = new F_MST_040101();
  890. f040101.ShowDialog();
  891. }
  892. catch (Exception ex)
  893. {
  894. // 对异常进行共通处理
  895. ExceptionManager.HandleEventException(this.ToString(),
  896. System.Reflection.MethodBase.GetCurrentMethod().Name, this.Text, ex);
  897. }
  898. }
  899. }
  900. }