F_MST_0401.cs 44 KB

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