F_MST_0401.cs 46 KB

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