| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224 | using Newtonsoft.Json.Linq;using PTMedicalInsurance.Business;using PTMedicalInsurance.FormSetter;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 MaintainBasicData : Form    {        CenterBusiness cBus = new CenterBusiness();        HisMainBusiness hBus = new HisMainBusiness();        HisIrisServices hIS = new HisIrisServices();        MIIrisServices mIS = new MIIrisServices();        InvokeHelper invoker = new InvokeHelper();        public MaintainBasicData()        {            InitializeComponent();            rbgInterface.SelectedIndex = 0;            this.dgvInterface.DataError += delegate (object sender, DataGridViewDataErrorEventArgs e) { };        }        private void btnDownload_Click(object sender, EventArgs e)        {        }        private void btnIntefaceQuery_Click(object sender, EventArgs e)        {            queryInterfaceBasicInfo(0);        }        private void uiButton1_Click(object sender, EventArgs e)        {            dgvInterface.ReadOnly = false;        }        #region 接口维护        private void queryInterfaceBasicInfo(int index)        {            string errorMsg = "";            switch (index)            {                case 0:                    {                        JObject joRtn = mIS.DynamicQuery("SELECT ID, Code, Descripts, HisHospital_Dr FROM SQLUser.CB_Hospital ","查询医保平台医院表");                        if (JsonHelper.parseIrisRtnValue(joRtn, out errorMsg) != 0)                        {                            MessageBox.Show(errorMsg);                            return;                        }                        //JArray jaParams = JArray.FromObject(joRtn["result"]["data"]);                        JArray jaParams = JArray.Parse(JsonHelper.getDestValue(joRtn, "result.data"));                        if (jaParams.Count == 0)                        {                            MessageBox.Show("未查询到数据");                            return;                        }                        foreach (var jo in jaParams)                        {                            jo["ID"] = int.Parse(jo["ID"].ToString());                        }                        DataTable dt = (DataTable)jaParams.ToObject(typeof(DataTable));                        GridViewSetter intefaceGrid = new GridViewSetter();                        intefaceGrid.SetHeaderTextOfInterfaceMaintain(dt, dgvInterface);                        joRtn = mIS.getInterface();                        jaParams = new JArray();                        jaParams = JArray.FromObject(joRtn["result"]["data"]);                        if (jaParams.Count == 0)                        {                            DataTableSetter dts = new DataTableSetter();                            dt = dts.setDgvInterfaceDataTable();                        }                        else                        {                            dt = (DataTable)joRtn["result"]["data"].ToObject(typeof(DataTable));                        }                        dt.AcceptChanges();                        dgvInterface.DataSource = dt;                        dgvInterface.ReadOnly = true;                        break;                    }            }        }        #endregion        private void btnInterfaceAdd_Click(object sender, EventArgs e)        {            dgvInterface.ReadOnly = false;            DataTable dt = (DataTable)dgvInterface.DataSource;            if (dt == null)            {                MessageBox.Show("请先点击查询");                return;            }            DataRow dtr = dt.NewRow();            dtr["UseFlag"] = "True";            dtr["InsuRegionDr"] = 12;            dtr["InsuRegionFlag"] = "0";            //dtr["InsuCurrencyCataLogue"] = "0";            dt.Rows.Add(dtr);        }        private void btnInterfaceDelete_Click(object sender, EventArgs e)        {            dgvInterface.ReadOnly = true;            DataTable dt = (DataTable)dgvInterface.DataSource;            int index = dgvInterface.CurrentRow.Index;            string ID = dt.Rows[index]["ID"].ToString();            string interfaceID = dgvInterface.CurrentRow.Cells["InterfaceNO"].Value.ToString();            DataRow[] drs = dt.Select("ID = " + ID + " AND InterfaceNO='" + interfaceID + "'");            drs[0].Delete();            dgvInterface.ReadOnly = false;        }        private void btnInterfceSave_Click(object sender, EventArgs e)        {            DataTable dt = (DataTable)dgvInterface.DataSource;            dynamic jsonInsert = new JObject();            dynamic jsonUpdate = new JObject();            dynamic jsonDelete = new JObject();            JArray jsonArry_I = new JArray();            JArray jsonArry_U = new JArray();            JArray jsonArry_D = new JArray();            for (int i = 0; i < dt.Rows.Count; i++)            {                //MessageBox.Show(dt.Rows[i].RowState.ToString() + ':' + dt.Rows[i][0].ToString());                            dynamic jsonTemp = new JObject();                if (dt.Rows[i].RowState.ToString() == "Added")                {                    for (int j = 0; j < dt.Columns.Count; j++)                      {                        //MessageBox.Show(dt.Columns[j].ColumnName);                        if (dt.Columns[j].ColumnName == "HospitalDr")                        {                            jsonTemp.Add(new JProperty("HospitalDr", Global.inf.hospitalDr));                        }                        else                        {                            jsonTemp.Add(new JProperty(dt.Columns[j].ColumnName, dt.Rows[i][j].ToString()));                        }                    }                    jsonTemp.updateUserID = Global.user.ID;                    jsonArry_I.Add(jsonTemp);                }                if (dt.Rows[i].RowState.ToString() == "Deleted")                {                    for (int j = 0; j < dt.Columns.Count; j++)                    {                        string CloumnName = dt.Columns[j].ColumnName;                        jsonTemp.Add(new JProperty(CloumnName, dt.Rows[i][CloumnName, DataRowVersion.Original].ToString()));                    }                    jsonTemp.updateUserID = Global.user.ID;                    jsonArry_D.Add(jsonTemp);                }                if (dt.Rows[i].RowState.ToString() == "Modified")                {                    for (int j = 0; j < dt.Columns.Count; j++)                    {                        //MessageBox.Show(dt.Columns[j].ColumnName);                        jsonTemp.Add(new JProperty(dt.Columns[j].ColumnName, dt.Rows[i][j].ToString()));                    }                    jsonTemp.updateUserID = Global.user.ID;                    jsonArry_U.Add(jsonTemp);                }            }            jsonInsert.Add(new JProperty("params", jsonArry_I));            jsonInsert.code = "09010005";            jsonUpdate.Add(new JProperty("params", jsonArry_U));            jsonUpdate.code = "09010005";            jsonDelete.Add(new JProperty("params", jsonArry_D));            jsonDelete.code = "09010006";            InvokeHelper invoker = new InvokeHelper();            JObject joRtn = new JObject();            if (jsonArry_I.Count != 0)            {                joRtn = invoker.invokeInsuService(jsonInsert.ToString(), "插入");            }            if (jsonArry_U.Count != 0)            {                joRtn = invoker.invokeInsuService(jsonUpdate.ToString(), "更新");            }            if (jsonArry_D.Count != 0)            {                joRtn = invoker.invokeInsuService(jsonDelete.ToString(), "删除");            }            string errorMessage = "";            if (JsonHelper.parseIrisRtnValue(joRtn, out errorMessage) != 0)            {                MessageBox.Show("保存失败:" + errorMessage);            }            else            {                MessageBox.Show("保存成功!");            }            dgvInterface.ReadOnly = true;        }    }}
 |