123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161 |
- using Newtonsoft.Json.Linq;
- using PTMedicalInsurance.Helper;
- using PTMedicalInsurance.Variables;
- using System;
- using System.Collections.Generic;
- using System.ComponentModel;
- using System.Data;
- using System.Drawing;
- using System.Linq;
- using System.Text;
- using System.Threading.Tasks;
- using System.Windows.Forms;
- namespace PTMedicalInsurance.Forms
- {
- public partial class SelfpayPercentForm : Form
- {
- public string CenterCode { get; set; }
- public string SelfpayId = "";
- public string BeginDate { get; set; }
- public SelfpayPercentForm()
- {
- InitializeComponent();
- }
- private DataTable GetDBLKComboxTable(string sqlStr)
- {
- InvokeHelper invoker = new InvokeHelper();
- dynamic joInparm = new JObject();
- dynamic joTmp = new JObject();
- joTmp.sqlStr = sqlStr;
- JArray jaParams = new JArray();
- jaParams.Add(joTmp);
- joInparm.Add("params", JArray.FromObject(jaParams));
- joInparm.code = "09010081";
- string inParam = joInparm.ToString();
- JObject joRtn = invoker.invokeInsuService(inParam, "获取下拉框消息");
- //dynamic jsonRtn = JsonConvert.DeserializeObject(strRtn);
- string rtnData = JsonHelper.getDestValue(joRtn, "result.data");
- DataTable dt = (DataTable)JArray.Parse(rtnData).ToObject(typeof(DataTable));
- //dt.Columns[0].ColumnName = "编码";
- //dt.Columns[1].ColumnName = "名称";
- //dt.Columns[2].ColumnName = "拼音查找码";
- return dt;
- }
- private void SetDBLKCombox(ref PTControl.DBLookupCombox dblcbx, string sqlStr)
- {
-
- dblcbx.RowFilterVisible = true;
- dblcbx.TextBox.Width = 400;
- dblcbx.DataGridView.Width = 400;
- dblcbx.DataGridView.Columns[0].Name = "编码";
- dblcbx.DataGridView.Columns[1].Name = "名称";
- dblcbx.DataGridView.Columns[2].Name = "查找码";
- dblcbx.DataGridView.Columns[0].Width = 100;
- dblcbx.DataGridView.Columns[1].Width = 200;
- }
- private void SelfpayPercentForm_Load(object sender, EventArgs e)
- {
- loadType();
- string strType = "A";
- GetPayPercent(strType);
- }
- private void loadType()
- {
- string sqlStr = " SELECT B.Code,B.Descripts AS Name FROM HB_Dictionary A JOIN HB_DictionaryDataDetail B ON A.ID = B.HBDictionary_Dr"
- + " WHERE A.InsuCode = 'RQLB' AND Interface_Dr = " + Global.inf.InsuCurrencyCataLogue;
- chkType.ValueMember = "Code";
- chkType.DisplayMember = "Name";
- DataTable dt = GetDBLKComboxTable(sqlStr);
- chkType.DataSource = dt;
- if (dt?.Rows.Count > 0)
- {
- chkType.SelectedIndex = 0;
- }
- }
- private void GetPayPercent(string type)
- {
- string sqlStr = " SELECT top 1 ID,Code,Name,Proportion,BeginDate FROM HB_MedInsuDirectorySelfpayProportion where Interface_Dr = " + Global.inf.interfaceDr + " And Code = '" + CenterCode + "' and PersonnelType = '" + type + "' order by ID desc";
- DataTable dt = GetDBLKComboxTable(sqlStr);
- if (dt?.Rows.Count > 0 && dt?.Columns.Count>0)
- {
- txtPercent.Text = dt.Rows[0]["Proportion"].ToString();
- lblCode.Text = CenterCode + "已设置自付比例";
- lblCode.ForeColor = Color.Black;
- SelfpayId = dt.Rows[0]["ID"].ToString();
- }
- else {
- lblCode.Text = CenterCode + "未设置自付比例";
- lblCode.ForeColor = Color.Blue;
- SelfpayId = "";
- txtPercent.Text = "";
- }
- }
- private void btnSave_Click(object sender, EventArgs e)
- {
- decimal percent = decimal.Parse(txtPercent.Text.Trim());
- if (percent > 1) {
- percent = (percent / 100);
- }
- JArray joArray = new JArray();
- dynamic joTmp = new JObject();
- joTmp.HospitalDr = Global.inf.hospitalDr;
- joTmp.InterfaceDr = Global.inf.interfaceDr;
- joTmp.updateUserID = Global.user.ID;
- joTmp.ID = SelfpayId;
- joTmp.Code = CenterCode;
- string personType = chkType.SelectedValue.ToString(); //人群类别
- if (string.IsNullOrEmpty(personType))
- {
- personType = "A"; //职工
- }
- joTmp.PersonnelType = personType;
- string proportionType = ""; //自费类型(统筹类别)
- if (string.IsNullOrEmpty(proportionType))
- {
- proportionType = "6"; //普通门诊
- }
- joTmp.ProportionType = proportionType;
- joTmp.Proportion = percent + "";
- joArray.Add(joTmp);
- string errMsg = "";
- InvokeHelper invoker = new InvokeHelper();
- JObject joRtn = invoker.invokeInsuService(JsonHelper.setIrisInpar("09010085", joArray).ToString(), "设置自费比例");
- if (JsonHelper.parseIrisRtnValue(joRtn, out errMsg) != 0)
- {
- MessageBox.Show(errMsg);
- }
- else {
- MessageBox.Show("设置成功!");
- }
- }
- private void btnCancel_Click(object sender, EventArgs e)
- {
- Close();
- }
- private void chkType_SelectedIndexChanged(object sender, EventArgs e)
- {
- GetPayPercent(chkType.SelectedValue.ToString());
- }
- }
- }
|