ChooseCard.cs 8.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264
  1. using System;
  2. using System.Collections.Generic;
  3. using System.ComponentModel;
  4. using System.Data;
  5. using System.Data.SqlTypes;
  6. using System.Drawing;
  7. using System.Linq;
  8. using System.Text;
  9. using System.Threading.Tasks;
  10. using System.Windows.Forms;
  11. using PTMedicalInsurance.Common;
  12. using PTMedicalInsurance.Helper;
  13. using Newtonsoft.Json.Linq;
  14. using PTMedicalInsurance.Forms;
  15. using PTMedicalInsurance.Variables;
  16. namespace PTMedicalInsurance.Forms
  17. {
  18. public partial class ChooseCard : Form
  19. {
  20. public string cardType;
  21. public string businessType;
  22. public string ID,PatName;
  23. public int sL_CardType;
  24. public string psnCertType;
  25. public bool bYDSBK;
  26. //设置业务实例
  27. InvokeHelper invoker = new InvokeHelper();
  28. public ChooseCard()
  29. {
  30. InitializeComponent();
  31. this.StartPosition = FormStartPosition.CenterParent;
  32. initCombox();
  33. }
  34. private DataTable GetDBLKComboxTable(string sqlStr)
  35. {
  36. InvokeHelper invoker = new InvokeHelper();
  37. dynamic joInparm = new JObject();
  38. dynamic joTmp = new JObject();
  39. joTmp.sqlStr = sqlStr;
  40. JArray jaParams = new JArray();
  41. jaParams.Add(joTmp);
  42. joInparm.Add("params", JArray.FromObject(jaParams));
  43. joInparm.code = "09010014";
  44. string inParam = joInparm.ToString();
  45. JObject joRtn = invoker.invokeInsuService(inParam, "获取下拉框消息");
  46. //dynamic jsonRtn = JsonConvert.DeserializeObject(strRtn);
  47. DataTable dt = (DataTable)joRtn["result"].ToObject(typeof(DataTable));
  48. //dt.Columns[0].ColumnName = "编码";
  49. //dt.Columns[1].ColumnName = "名称";
  50. //dt.Columns[2].ColumnName = "拼音查找码";
  51. return dt;
  52. }
  53. private void SetDBLKCombox(ref PTControl.DBLookupCombox dblcbx, string sqlStr)
  54. {
  55. dblcbx.sDisplayField = "Code,Name,SearchCode";
  56. dblcbx.sDisplayMember = "名称";
  57. dblcbx.sKeyWords = "Code,SearchCode";
  58. DataTable dt = GetDBLKComboxTable(sqlStr);
  59. dblcbx.DataSource = dt;
  60. if (dt?.Rows.Count > 0)
  61. {
  62. // default to select first one;
  63. }
  64. dblcbx.RowFilterVisible = true;
  65. dblcbx.TextBox.Width = 400;
  66. dblcbx.DataGridView.Width = 400;
  67. dblcbx.DataGridView.Columns[0].Name = "编码";
  68. dblcbx.DataGridView.Columns[1].Name = "名称";
  69. dblcbx.DataGridView.Columns[2].Name = "查找码";
  70. dblcbx.DataGridView.Columns[0].Width = 100;
  71. dblcbx.DataGridView.Columns[1].Width = 200;
  72. }
  73. private void initCombox()
  74. {
  75. string sqlCondition = " and A.Interface_Dr = '" + Global.inf.InsuCurrencyCataLogue.ToString() + "'";
  76. string sqlStr = "";
  77. sqlStr = " SELECT B.Code,B.Descripts AS Name FROM HB_Dictionary A JOIN HB_DictionaryDataDetail B ON A.ID = B.HBDictionary_Dr "
  78. + " WHERE A.InsuCode = 'psn_cert_type'" + sqlCondition;
  79. SetDBLKCombox(ref dblkcbxPsnCertType, sqlStr);
  80. }
  81. private void btOk_Click(object sender, EventArgs e)
  82. {
  83. cardType = "0" + (rbgCardType.SelectedIndex +1).ToString();
  84. businessType = "01"+cbBusinessType.Text.Substring(0,3);
  85. bYDSBK = chk_WSSBK.Checked;
  86. // 身份证
  87. if (rbgCardType.SelectedIndex == 1)
  88. {
  89. ID = tbID.Text;
  90. PatName = tbName.Text;
  91. }
  92. //社保卡
  93. if (rbgCardType.SelectedIndex == 2)
  94. {
  95. if (cbCardType.Text == "")
  96. {
  97. MessageBox.Show("读社保卡时需要选择卡类型!");
  98. return;
  99. }
  100. sL_CardType = int.Parse(cbCardType.Text.Trim().Substring(0, 1)); //卡类型
  101. }
  102. //非中国大陆公民身份证人员
  103. if (rbgCardType.SelectedIndex == 3)
  104. {
  105. if (tbID.Text == "")
  106. {
  107. MessageBox.Show("非大陆居民,外籍号码必填!例:香港的外籍号码:HKG000000888");
  108. return;
  109. }
  110. }
  111. DialogResult = DialogResult.OK;
  112. }
  113. private void ChooseCard_Load(object sender, EventArgs e)
  114. {
  115. rbgCardType.SelectedIndex = 2; //身份证
  116. cbBusinessType.SelectedIndex = 0; //社保卡
  117. }
  118. private void rbgCardType_ValueChanged(object sender, int index, string text)
  119. {
  120. if (rbgCardType.SelectedIndex == 0)
  121. {
  122. // 电子凭证
  123. cbBusinessType.Enabled = true;
  124. lblNo.Text = "电子凭证号";
  125. tbID.Text = "";
  126. tbID.Focus();
  127. }
  128. else
  129. {
  130. lblNo.Text = "身份证号";
  131. cbBusinessType.Enabled = false;
  132. tbID.Text = Global.pat.presetIDNO;
  133. }
  134. if (rbgCardType.SelectedIndex == 2)
  135. {
  136. cbCardType.SelectedIndex = 0;
  137. cbCardLevel.SelectedIndex = 2;
  138. cbCardType.Enabled = true;
  139. tbPassword.Enabled = true;
  140. //tbPassword.Text = "";
  141. }
  142. else
  143. {
  144. cbCardType.Enabled = false;
  145. tbPassword.Enabled = false;
  146. }
  147. if (rbgCardType.SelectedIndex == 1)
  148. {
  149. cbCBD.Text = "深圳市";
  150. Global.pat.card.SearchAdmCode = "440300";
  151. }
  152. else
  153. {
  154. cbCBD.Text = "";
  155. Global.pat.card.SearchAdmCode = "";
  156. }
  157. if (rbgCardType.SelectedIndex == 3)
  158. {
  159. lblNo.Text = "外籍号码";
  160. }
  161. }
  162. private void btCancle_Click(object sender, EventArgs e)
  163. {
  164. DialogResult = DialogResult.Cancel;
  165. }
  166. /// <summary>
  167. /// 修改密码
  168. /// </summary>
  169. /// <param name="sender"></param>
  170. /// <param name="e"></param>
  171. private void uiButton1_Click(object sender, EventArgs e)
  172. {
  173. string errorMsg="";
  174. JObject joData = new JObject();
  175. joData.Add("", "");
  176. JObject joInput = new JObject();
  177. joInput.Add("data", joData);
  178. InvokeHelper invoker = new InvokeHelper();
  179. JObject joRtn =invoker.invokeCenterService(TradeEnum.ModifyPassword, joInput);
  180. if (JsonHelper.parseCenterRtnValue(joRtn, out errorMsg) != 0)
  181. {
  182. MessageBox.Show("修改卡密码失败:" + errorMsg);
  183. }
  184. else
  185. {
  186. MessageBox.Show("修改卡密码成功!");
  187. }
  188. }
  189. private void SearchAdmdvs()
  190. {
  191. JObject joAdmdvsInfo = new JObject();
  192. SearchAdmdvs Adm = new SearchAdmdvs();
  193. try
  194. {
  195. Global.pat.card.SearchAdmKey = cbCBD.Text;
  196. Adm.StartPosition = FormStartPosition.CenterParent;
  197. if (Adm.ShowDialog() == DialogResult.OK)
  198. {
  199. cbCBD.Text = Global.pat.card.SearchAdmName;
  200. if (!string.IsNullOrEmpty(Global.pat.card.SearchAdmCode))
  201. {
  202. //自动选择异地
  203. if (Utils.isOtherCity(Global.pat.card.SearchAdmCode))
  204. {
  205. //rbgOtherProv.SelectedIndex = 1;
  206. }
  207. }
  208. }
  209. }
  210. catch (Exception ex)
  211. {
  212. MessageBox.Show("异常:" + ex.Message);
  213. return;
  214. }
  215. }
  216. private void dblkcbxPsnCertType_AfterSelector(object sender, PTControl.AfterSelectorEventArgs e)
  217. {
  218. DataGridViewRow row = e.Value as DataGridViewRow;
  219. DataRowView dataRow = row.DataBoundItem as DataRowView;
  220. psnCertType = dataRow["Code"].ToString().Trim();
  221. //insuTypeName = dataRow["Name"].ToString().Trim();
  222. }
  223. private void cbCBD_DoEnter(object sender, EventArgs e)
  224. {
  225. //初始化
  226. Global.pat.card.SearchAdmCode = "";
  227. SearchAdmdvs();
  228. }
  229. }
  230. }