/******************************************************************************
 * 文件名称: GridViewSetter.cs
 * 文件说明: GridView界面的设置
 * 当前版本: V1.0
 * 创建日期: 2022-04-14
 * 2020-04-14: 增加 AddDGVColumn 方法
 * 2020-04-14: 增加 AddDGVCheckBoxColumn 方法
 * 2020-04-14: 增加 SetHeaderTextOfDrug 方法
 * 2020-04-14: 增加 SetHeaderTextOfDiagnose 方法


******************************************************************************/
using System;
using System.Collections.Generic;
using System.Data;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace PTMedicalInsurance.FormSetter
{
    class GridViewSetter
    {
        /// <summary>
        /// 动态增加datagridview列
        /// </summary>
        /// <param name="dgv"></param>
        /// <param name="headerText"></param>
        /// <param name="dataPropertyName"></param>
        private void AddDGVColumn(DataGridView dgv, string headerText, string dataPropertyName, int width = 120)
        {
            DataGridViewColumn newColumn = new DataGridViewTextBoxColumn();
            newColumn.HeaderText = headerText;
            newColumn.Width = width;
            newColumn.DataPropertyName = dataPropertyName;
            newColumn.Name = dataPropertyName;
            dgv.Columns.Add(newColumn);
        }

        private void AddDGVCheckBoxColumn(DataGridView dgv, string headerText, string dataPropertyName, int width = 120)
        {
            DataGridViewColumn newColumn = new DataGridViewCheckBoxColumn();
            newColumn.HeaderText = headerText;
            newColumn.Width = width;
            newColumn.DataPropertyName = dataPropertyName;
            newColumn.Name = dataPropertyName;
            dgv.Columns.Add(newColumn);
        }

        private void AddDGVComboxColumn(DataTable dt,DataGridView dgv, string headerText, string dataPropertyName, int width = 120)
        {
            DataGridViewComboBoxColumn newColumn = new DataGridViewComboBoxColumn();
            newColumn.DataSource = dt;
            newColumn.HeaderText = headerText;
            newColumn.Width = width;
            newColumn.DataPropertyName = dataPropertyName;
            newColumn.Name = dataPropertyName;
            newColumn.DisplayMember = "descripts";
            newColumn.ValueMember = "id";
            dgv.Columns.Add(newColumn);
        }

        #region 设置表格标题

        public void SetHeaderTextOfInterfaceMaintain(DataTable dt, DataGridView dgv)
        {
            dgv.Columns.Clear();
            AddDGVComboxColumn(dt,dgv, "医院ID", "HospitalDr", 200);
            AddDGVColumn(dgv, "编码", "InterfaceID", 200);
            AddDGVColumn(dgv, "名称", "InterfaceName", 200);
            AddDGVColumn(dgv, "中心编码", "HospitalNO");
            AddDGVColumn(dgv, "医院等级", "HospitalLevel");
            AddDGVColumn(dgv, "中心网址", "CenterURL");
            AddDGVColumn(dgv, "中心网址2", "CenterURL2");
            AddDGVColumn(dgv, "对应DLL名称", "DLLName");
            AddDGVColumn(dgv, "区划代码", "AreaCode");
            AddDGVCheckBoxColumn(dgv, "使用标志", "UseFlag",100);
        }
        /// <summary>
        /// 设置药品列标题
        /// </summary>
        public void SetHeaderTextOfDrug(DataGridView dgv)
        {
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "编码", "Code", 300);
            AddDGVColumn(dgv, "名称", "Name", 300);
            AddDGVColumn(dgv, "批准文号", "ApprovalNO", 200);
            AddDGVColumn(dgv, "剂型", "DosageFormCode");
            AddDGVColumn(dgv, "剂型名称", "DosageFormName");
            AddDGVColumn(dgv, "规格", "Specification");
            AddDGVColumn(dgv, "包装单位", "UnitOfPackag",100);
            AddDGVColumn(dgv, "计价单位", "UnitOfValuation",100);
            AddDGVColumn(dgv, "有效标志", "ValidFlag",100);
            AddDGVCheckBoxColumn(dgv, "使用标志", "UseFlag",100);
            AddDGVColumn(dgv, "特殊药品标志", "SpecialFlag");
            AddDGVColumn(dgv, "更新时间", "UpdateTime",180);
            AddDGVColumn(dgv, "限制标志", "LimitFlag");
            AddDGVColumn(dgv, "限制范围", "LimitRange");
            AddDGVColumn(dgv, "生产厂家", "Manufacturers");
            AddDGVColumn(dgv, "版本号", "VersionNO");
        }

        ///// <summary>
        ///// 设置诊断，手术，病种等列标题
        ///// </summary>
        //public void SetHeaderTextOfDiagnose(DataGridView dgv)
        //{
        //    dgv.Columns.Clear();
        //    AddDGVColumn(dgv, "编码", "CategoryCode");
        //    AddDGVColumn(dgv, "类名", "CategoryName");

        //}

        ///// <summary>
        ///// 设置药品列标题
        ///// </summary>
        //public void SetHeaderTextOfSettlList(DataGridView dgv)
        //{
        //    dgv.AutoGenerateColumns = false;
        //    dgv.Columns.Clear();
        //    AddDGVColumn(dgv, "结算编号", "SettlementID", 200);
        //    AddDGVColumn(dgv, "就诊号", "MdtrtID", 200);
        //    AddDGVColumn(dgv, "姓名", "PatientName");
        //    AddDGVColumn(dgv, "险种", "InsuranceType");
        //    AddDGVColumn(dgv, "人员类别", "PersonType");
        //    AddDGVColumn(dgv, "结算时间", "SettlementTime");
        //    AddDGVColumn(dgv, "医疗类别", "MedicalType");
        //    AddDGVColumn(dgv, "总金额", "Sumamt");
        //    AddDGVColumn(dgv, "自付金额", "OwnPayAmount");
        //    AddDGVColumn(dgv, "超限金额", "OverLimitAmount");
        //    AddDGVColumn(dgv, "先行自付", "PreSelfPayAmount");
        //    AddDGVColumn(dgv, "政策范围内金额", "InPolicyRangeAmount");
        //    AddDGVColumn(dgv, "公务员补助金额", "CivilserviceAllowancePay");
        //    AddDGVColumn(dgv, "大病补助金额", "SeriousIllnessPay");
        //    AddDGVColumn(dgv, "大额补助金额", "LargeExpensesSupplementPay");
        //    AddDGVColumn(dgv, "医疗救助金额", "MedicalAssistPay");
        //    AddDGVColumn(dgv, "医院承担金额", "HospitalPartAmount");
        //    AddDGVColumn(dgv, "其他支出金额", "OtherPay");
        //    AddDGVColumn(dgv, "基金支付金额", "FundPaySumamt");
        //    AddDGVColumn(dgv, "个人支付金额", "PersonPaySumamt");
        //    AddDGVColumn(dgv, "现金支付金额", "PersonCashPay");
        //    AddDGVColumn(dgv, "账户余额", "Balance");
        //    AddDGVColumn(dgv, "共济账户支付金额", "AccountMutualAidAmount");
        //    AddDGVColumn(dgv, "清算机构", "ClearingOrgan");
        //    AddDGVColumn(dgv, "清算方式", "ClearingWay");
        //    AddDGVColumn(dgv, "清算类型", "ClearingType");
        //    AddDGVColumn(dgv, "有效标志", "ValidFlag");
        //}

        /// <summary>
        /// 设置中心交易日志列标题
        /// </summary>
        public void SetHeaderTextOfCenterLog(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "报文ID", "msgid", 200);
            AddDGVColumn(dgv, "交易编号", "infno", 80);
            AddDGVColumn(dgv, "医保编号", "psn_no", 200);
            AddDGVColumn(dgv, "交易时间", "inf_time", 200);
            AddDGVColumn(dgv, "参保地", "insuplc_admdvs", 100);
            AddDGVColumn(dgv, "就医地", "mdtrtarea_admvs", 100);
            AddDGVColumn(dgv, "入参", "inparam");
            AddDGVColumn(dgv, "出参", "outparam");
            AddDGVColumn(dgv, "操作员", "opter", 80);
            AddDGVColumn(dgv, "有效标志", "validflag", 60);
            AddDGVColumn(dgv, "接收系统编码", "recer_sys_code", 60);
            AddDGVColumn(dgv, "设备编号", "dev_no", 200);
            AddDGVColumn(dgv, "医疗机构编码", "fixmedins_code", 150);
            AddDGVColumn(dgv, "医疗机构名称", "fixmedins_name", 300);
        }

        /// <summary>
        /// 设置登记列标题
        /// </summary>
        public void SetHeaderTextOfRegister(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "HIS就诊号", "AdmID", 80);
            AddDGVColumn(dgv, "姓名", "Pat_Name", 80);
            AddDGVColumn(dgv, "医保编号", "PersonalNO", 300);
            AddDGVColumn(dgv, "医保登记号", "InsuRegID", 250);
            AddDGVColumn(dgv, "中心登记时间", "RegDate", 200);
            AddDGVColumn(dgv, "发生时间", "OccurTime", 200);
            AddDGVColumn(dgv, "险种", "InsuType",80);
            AddDGVColumn(dgv, "凭证类型", "Cert_Type",60);
            AddDGVColumn(dgv, "凭证编号", "Cert_NO", 250);
            AddDGVColumn(dgv, "医疗类别", "med_type", 60);
            AddDGVColumn(dgv, "参保地", "insuplc_admdvs", 60);
            AddDGVColumn(dgv, "就医地", "mdtrtarea_admvs", 60);
            AddDGVColumn(dgv, "登记状态", "RegState", 60);
            AddDGVColumn(dgv, "有效标志", "ValidFlag", 60);
            AddDGVColumn(dgv, "类型", "Type", 60);
            AddDGVColumn(dgv, "取消登记时间", "CancleRegDate", 200);
            AddDGVColumn(dgv, "报文ID", "msgid", 250);
        }

        /// <summary>
        /// 设置签到查询列标题
        /// </summary>
        public void SetHeaderTextOfSign(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "医院代码", "HospitalDr", 100);
            AddDGVColumn(dgv, "接口类型", "InterfaceDr", 100);
            AddDGVColumn(dgv, "操作员编号", "OperatorNO");
            AddDGVColumn(dgv, "操作员姓名", "OperatorName");
            AddDGVColumn(dgv, "签到日期", "SignDate", 140);
            AddDGVColumn(dgv, "MAC", "Mac", 170);
            AddDGVColumn(dgv, "IP", "IP",100);
            AddDGVColumn(dgv, "签到流水号", "SignNo", 130);
            AddDGVColumn(dgv, "Division", "Division", 100);
            AddDGVColumn(dgv, "操作时间", "CreateTime", 180);
        }

        #endregion



        #region 设置目录下载表格




        /// <summary>
        /// 中药饮片
        /// </summary>
        public void SetHeaderTextOfChineseMedicine(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "编码", "Code", 200);
            AddDGVColumn(dgv, "名称", "Name", 500);

            AddDGVColumn(dgv, "单复方标志", "DosageFormCode", 200);
            AddDGVColumn(dgv, "药用部位", "DosageFormName", 300);
            AddDGVColumn(dgv, "质量等级", "CategoryCode", 200);
            AddDGVColumn(dgv, "中草药年份", "CategoryName", 200);
            AddDGVColumn(dgv, "安全计量", "Specification", 200);
            AddDGVColumn(dgv, "更新时间", "UpdateTime", 180);
        }

        /// <summary>
        /// 医疗机构制剂目录
        /// </summary>
        public void SetHeaderTextOfPreparation(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "编码", "Code", 300);
            AddDGVColumn(dgv, "名称", "Name", 300);
            AddDGVColumn(dgv, "批准文号", "ApprovalNO", 200);
            AddDGVColumn(dgv, "更新时间", "UpdateTime", 180);
            AddDGVColumn(dgv, "剂型", "DosageFormCode",100);
            AddDGVColumn(dgv, "剂型名称", "DosageFormName");
            AddDGVColumn(dgv, "规格", "Specification");
            AddDGVColumn(dgv, "包装单位", "UnitOfPackag",100);
            AddDGVColumn(dgv, "计价单位", "UnitOfValuation", 100);
            AddDGVColumn(dgv, "有效标志", "ValidFlag", 100);
            AddDGVCheckBoxColumn(dgv, "使用标志", "UseFlag", 100);
            AddDGVColumn(dgv, "特殊药品标志", "SpecialFlag");
            AddDGVColumn(dgv, "限制标志", "LimitFlag", 100);
            AddDGVColumn(dgv, "限制范围", "LimitRange");
            AddDGVColumn(dgv, "版本号", "VersionNO");
        }

        /// <summary>
        /// 肿瘤形态学
        /// </summary>
        public void SetHeaderTextOfTumorMorphology(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "唯一记录号", "Code", 300);
            AddDGVColumn(dgv, "肿瘤形态学ID", "Name", 200);

            AddDGVColumn(dgv, "肿瘤/细胞类型代码", "Connotation", 200);
            AddDGVColumn(dgv, "形态学分类代码", "DosageFormCode", 200);
            AddDGVColumn(dgv, "形态学分类", "DosageFormName", 200);
            AddDGVColumn(dgv, "数据创建时间", "CategoryCode", 200);
            AddDGVColumn(dgv, "数据更新时间", "CategoryName", 200);
            AddDGVColumn(dgv, "更新时间", "UpdateTime", 180);
            AddDGVColumn(dgv, "版本号", "VersionNO", 200);
            AddDGVColumn(dgv, "版本号名称", "VersionName", 400);
        }

        /// <summary>
        /// 中医疾病
        /// </summary>
        public void GetChineseDiagnoseJsonByTxt(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "中医疾病诊断ID", "Code", 300);
            AddDGVColumn(dgv, "疾病分类名称", "Name", 200);

            AddDGVColumn(dgv, "科别类目代码", "LocateCode", 200);
            AddDGVColumn(dgv, "科别类目名称", "LocateName", 300);
            AddDGVColumn(dgv, "专科系统分类目代码", "DosageFormCode", 200);
            AddDGVColumn(dgv, "专科系统分类目名称", "DosageFormName", 300);

            AddDGVColumn(dgv, "疾病分类代码", "CategoryCode", 200);
            AddDGVColumn(dgv, "疾病分类名称", "CategoryName", 300);
            AddDGVColumn(dgv, "更新时间", "UpdateTime", 180);

            AddDGVColumn(dgv, "版本号", "VersionNO", 200);
            AddDGVColumn(dgv, "版本号名称", "VersionName", 400);
        }

        /// <summary>
        /// 中医证候
        /// </summary>
        public void GetTCMSyndromeJsonByTxt(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "中医证候ID", "Code", 300);
            AddDGVColumn(dgv, "证候类目名称", "Name", 200);

            AddDGVColumn(dgv, "证候类目代码", "LocateCode", 200);
            AddDGVColumn(dgv, "证候类目名称", "LocateName", 300);
            AddDGVColumn(dgv, "证候属性代码", "DosageFormCode", 200);
            AddDGVColumn(dgv, "证候属性", "DosageFormName", 300);

            AddDGVColumn(dgv, "证候分类代码", "CategoryCode", 200);
            AddDGVColumn(dgv, "证候分类名称", "CategoryName", 300);
            AddDGVColumn(dgv, "更新时间", "UpdateTime", 180);

            AddDGVColumn(dgv, "版本号", "VersionNO", 200);
            AddDGVColumn(dgv, "版本号名称", "VersionName", 400);
        }

        /// <summary>
        /// 民族药品
        /// </summary>
        /// <param name="dgv"></param>
        public void GetEthnicMedicineJsonByTxt(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "医疗目录编码", "med_list_codg", 300);
            AddDGVColumn(dgv, "药品商品名", "drug_prodname", 200);
            AddDGVColumn(dgv, "通用名编号", "genname_codg", 200);
            AddDGVColumn(dgv, "药品通用名", "drug_genname", 300);
            AddDGVColumn(dgv, "民族药种类", "ethdrug_type", 200);
            AddDGVColumn(dgv, "化学名称", "chemname", 300);
            AddDGVColumn(dgv, "别名", "alis", 200);
            AddDGVColumn(dgv, "英文名称", "eng_name", 200);
            AddDGVColumn(dgv, "剂型", "dosform", 200);
            AddDGVColumn(dgv, "每次用量", "each_dos", 200);
            AddDGVColumn(dgv, "使用频次", "used_frqu", 200);
            AddDGVColumn(dgv, "国家药品编号", "nat_drug_no", 200);
            AddDGVColumn(dgv, "用法", "used_mtd", 200);
            AddDGVColumn(dgv, "成分", "ing", 200);
            AddDGVColumn(dgv, "性状", "chrt", 200);
            AddDGVColumn(dgv, "不良反应", "defs", 200);
            AddDGVColumn(dgv, "禁忌", "tabo", 200);
            AddDGVColumn(dgv, "注意事项", "mnan", 200);
            AddDGVColumn(dgv, "贮藏", "stog", 200);
            AddDGVColumn(dgv, "药品规格", "drug_spec", 200);
            AddDGVColumn(dgv, "计价单位类型", "prcunt_type", 200);
            AddDGVColumn(dgv, "非处方药标志", "otc_flag", 200);
            AddDGVColumn(dgv, "包装材质", "pacmatl", 200);
            AddDGVColumn(dgv, "包装规格", "pacspec", 200);
            AddDGVColumn(dgv, "最小使用单位", "min_useunt", 200);
            AddDGVColumn(dgv, "最小销售单位", "min_salunt", 200);
            AddDGVColumn(dgv, "说明书", "manl", 200);
            AddDGVColumn(dgv, "给药途径", "rute", 200);
            AddDGVColumn(dgv, "开始日期", "begndate", 200);
            AddDGVColumn(dgv, "结束日期", "enddate", 200);
            AddDGVColumn(dgv, "药理分类", "pham_type", 200);
            AddDGVColumn(dgv, "备注", "memo", 200);
            AddDGVColumn(dgv, "包装数量", "pac_cnt", 200);
            AddDGVColumn(dgv, "最小计量单位", "min_unt", 200);
            AddDGVColumn(dgv, "最小包装数量", "min_pac_cnt", 200);
            AddDGVColumn(dgv, "最小包装单位", "min_pacunt", 200);
            AddDGVColumn(dgv, "最小制剂单位", "min_prepunt", 200);
            AddDGVColumn(dgv, "药品有效期", "drug_expy", 200);
            AddDGVColumn(dgv, "功能主治", "efcc_atd", 200);
            AddDGVColumn(dgv, "最小计价单位", "min_prcunt", 200);
            AddDGVColumn(dgv, "五笔助记码", "wubi", 200);
            AddDGVColumn(dgv, "拼音助记码", "pinyin", 200);
            AddDGVColumn(dgv, "有效标志", "vali_flag", 200);
            AddDGVColumn(dgv, "唯一记录号", "rid", 200);
            AddDGVColumn(dgv, "数据创建时间", "crte_time", 200);
            AddDGVColumn(dgv, "数据更新时间", "updt_time", 200);
            AddDGVColumn(dgv, "创建人", "crter_id", 200);
        }

        /// <summary>
        /// 医保目录信息查询
        /// </summary>
        /// <param name="dgv"></param>
        public void GetMedInsuCatalogJsonByTxt(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "医保目录编码", "hilist_code", 300);
            AddDGVColumn(dgv, "医保目录名称", "hilist_name", 200);
            AddDGVColumn(dgv, "参保机构医保区划", "insu_admdvs", 150);
            AddDGVColumn(dgv, "开始日期", "begndate", 200);
            AddDGVColumn(dgv, "结束日期", "enddate", 200);
            AddDGVColumn(dgv, "医疗收费项目类别", "med_chrgitm_type", 180);
            AddDGVColumn(dgv, "收费项目等级", "chrgitm_lv", 180);
            AddDGVColumn(dgv, "限制使用标志", "lmt_used_flag", 180);
            AddDGVColumn(dgv, "目录类别", "list_type", 150);
            AddDGVColumn(dgv, "医疗使用标志", "med_use_flag", 150);
            AddDGVColumn(dgv, "生育使用标志", "matn_used_flag", 150);
            AddDGVColumn(dgv, "医保目录使用类别", "hilist_use_type", 180);
            AddDGVColumn(dgv, "限复方使用类型", "lmt_cpnd_type", 150);
            AddDGVColumn(dgv, "五笔助记码", "wubi", 180);
            AddDGVColumn(dgv, "拼音助记码", "pinyin", 180);
            AddDGVColumn(dgv, "备注", "memo", 200);
            AddDGVColumn(dgv, "有效标志", "vali_flag", 200);
            AddDGVColumn(dgv, "唯一记录号", "rid", 200);
            AddDGVColumn(dgv, "更新时间", "updt_time", 200);
            AddDGVColumn(dgv, "创建人", "crter_id", 200);
            AddDGVColumn(dgv, "创建人姓名", "crter_name", 200);
            AddDGVColumn(dgv, "创建时间", "crte_time", 200);
            AddDGVColumn(dgv, "创建机构", "crte_optins_no", 200);
            AddDGVColumn(dgv, "经办人", "opter_id", 200);
            AddDGVColumn(dgv, "经办人姓名", "opter_name", 200);
            AddDGVColumn(dgv, "经办时间", "opt_time", 200);
            AddDGVColumn(dgv, "经办机构", "optins_no", 150);
            AddDGVColumn(dgv, "统筹区", "poolarea_no", 150);
        }

        /// <summary>
        /// 医疗与医保目录匹配关系查询
        /// </summary>
        /// <param name="dgv"></param>
        public void GetMedInsuCorrespondencJsonByTxt(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "医疗目录编码", "med_list_codg", 200);
            AddDGVColumn(dgv, "医保目录编码", "hilist_code", 200);
            AddDGVColumn(dgv, "目录类别", "list_type", 150);
            AddDGVColumn(dgv, "参保机构医保区划", "insu_admdvs", 150);
            AddDGVColumn(dgv, "开始日期", "begndate", 200);
            AddDGVColumn(dgv, "结束日期", "enddate", 200);
            AddDGVColumn(dgv, "备注", "memo", 300);
            AddDGVColumn(dgv, "有效标志", "vali_flag", 200);
            AddDGVColumn(dgv, "唯一记录号", "rid", 200);
            AddDGVColumn(dgv, "更新时间", "updt_time", 200);
            AddDGVColumn(dgv, "创建人", "crter_id", 200);
            AddDGVColumn(dgv, "创建人姓名", "crter_name", 200);
            AddDGVColumn(dgv, "创建时间", "crte_time", 200);
            AddDGVColumn(dgv, "创建机构", "crte_optins_no", 200);
            AddDGVColumn(dgv, "经办人", "opter_id", 200);
            AddDGVColumn(dgv, "经办人姓名", "opter_name", 200);
            AddDGVColumn(dgv, "经办时间", "opt_time", 200);
            AddDGVColumn(dgv, "经办机构", "optins_no", 150);
            AddDGVColumn(dgv, "统筹区", "poolarea_no", 150);
        }

        /// <summary>
        /// 医药机构目录匹配信息查询
        /// </summary>
        /// <param name="dgv"></param>
        public void GetMedInstCorrespondencJsonByTxt(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "定点医药机构编号", "fixmedins_code", 200);
            AddDGVColumn(dgv, "定点医药机构目录编号", "medins_list_codg", 200);
            AddDGVColumn(dgv, "定点医药机构目录名称", "medins_list_name", 200);
            AddDGVColumn(dgv, "参保机构医保区划", "insu_admdvs", 200);
            AddDGVColumn(dgv, "目录类别", "list_type", 200);
            AddDGVColumn(dgv, "医疗目录编码", "med_list_codg", 200);
            AddDGVColumn(dgv, "开始日期", "begndate", 200);
            AddDGVColumn(dgv, "结束日期", "enddate", 200);
            AddDGVColumn(dgv, "批准文号", "aprvno", 200);
            AddDGVColumn(dgv, "剂型", "dosform", 200);
            AddDGVColumn(dgv, "除外内容", "exct_cont", 200);
            AddDGVColumn(dgv, "项目内涵", "item_cont", 200);
            AddDGVColumn(dgv, "计价单位", "prcunt", 200);
            AddDGVColumn(dgv, "规格", "spec", 200);
            AddDGVColumn(dgv, "包装规格", "pacspec", 200);
            AddDGVColumn(dgv, "备注", "memo", 200);
            AddDGVColumn(dgv, "有效标志", "vali_flag", 200);
            AddDGVColumn(dgv, "唯一记录号", "rid", 200);
            AddDGVColumn(dgv, "更新时间", "updt_time", 200);
            AddDGVColumn(dgv, "创建人", "crter_id", 200);
            AddDGVColumn(dgv, "创建人姓名", "crter_name", 200);
            AddDGVColumn(dgv, "创建时间", "crte_time", 200);
            AddDGVColumn(dgv, "创建机构", "crte_optins_no", 200);
            AddDGVColumn(dgv, "经办人", "opter_id", 200);
            AddDGVColumn(dgv, "经办人姓名", "opter_name", 200);
            AddDGVColumn(dgv, "经办时间", "opt_time", 200);
            AddDGVColumn(dgv, "经办机构", "optins_no", 150);
            AddDGVColumn(dgv, "统筹区", "poolarea_no", 150);
        }

        /// <summary>
        /// 医保目录限价信息查询
        /// </summary>
        /// <param name="dgv"></param>
        public void GetMedInsuFixedPriceJsonByTxt(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "医保目录编码", "hilist_code", 300);
            AddDGVColumn(dgv, "医保目录限价类型", "hilist_lmtpric_type", 200);
            AddDGVColumn(dgv, "医保目录超限处理方式", "overlmt_dspo_way", 200);
            AddDGVColumn(dgv, "参保机构医保区划", "insu_admdvs", 200);
            AddDGVColumn(dgv, "开始日期", "begndate", 200);
            AddDGVColumn(dgv, "结束日期", "enddate", 200);
            AddDGVColumn(dgv, "医保目录定价上限金额", "hilist_pric_uplmt_amt", 200);
            AddDGVColumn(dgv, "有效标志", "vali_flag", 100);
            AddDGVColumn(dgv, "唯一记录号", "rid", 300);
            AddDGVColumn(dgv, "更新时间", "updt_time", 180);
            AddDGVColumn(dgv, "创建人", "crter_id", 110);
            AddDGVColumn(dgv, "创建人姓名", "crter_name", 150);
            AddDGVColumn(dgv, "创建时间", "crte_time", 180);
            AddDGVColumn(dgv, "创建机构", "crte_optins_no", 150);
            AddDGVColumn(dgv, "经办人", "opter_id", 110);
            AddDGVColumn(dgv, "经办人姓名", "opter_name", 150);
            AddDGVColumn(dgv, "经办时间", "opt_time", 180);
            AddDGVColumn(dgv, "经办机构", "optins_no", 150);
            AddDGVColumn(dgv, "表名", "tabname", 180);
            AddDGVColumn(dgv, "统筹区", "poolarea_no", 150);
        }

        /// <summary>
        /// 医保目录先自付比例信息查询
        /// </summary>
        /// <param name="dgv"></param>
        public void GetMedInsuFirstPayProportionJsonByTxt(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "医保目录编码", "hilist_code", 220);
            AddDGVColumn(dgv, "医保目录自付比例人员类别", "selfpay_prop_psn_type", 210);
            AddDGVColumn(dgv, "目录自付比例类别", "selfpay_prop_type", 180);
            AddDGVColumn(dgv, "参保机构医保区划", "insu_admdvs", 150);
            AddDGVColumn(dgv, "开始日期", "begndate", 180);
            AddDGVColumn(dgv, "结束日期", "enddate", 180);
            AddDGVColumn(dgv, "自付比例", "selfpay_prop", 110);
            AddDGVColumn(dgv, "有效标志", "vali_flag", 110);
            AddDGVColumn(dgv, "唯一记录号", "rid", 250);
            AddDGVColumn(dgv, "更新时间", "updt_time", 180);
            AddDGVColumn(dgv, "创建人", "crter_id", 100);
            AddDGVColumn(dgv, "创建人姓名", "crter_name", 150);
            AddDGVColumn(dgv, "创建时间", "crte_time", 180);
            AddDGVColumn(dgv, "创建机构", "crte_optins_no", 200);
            AddDGVColumn(dgv, "经办人", "opter_id", 200);
            AddDGVColumn(dgv, "经办人姓名", "opter_name", 150);
            AddDGVColumn(dgv, "经办时间", "opt_time", 180);
            AddDGVColumn(dgv, "经办机构", "optins_no", 150);
            AddDGVColumn(dgv, "表名", "tabname", 180);
            AddDGVColumn(dgv, "统筹区", "poolarea_no", 150);
        }

        /// <summary>
        /// 医药机构信息获取
        /// </summary>
        /// <param name="dgv"></param>
        public void GetMedicalInstitutionJsonByTxt(DataGridView dgv)
        {
            dgv.Columns.Clear();
            //dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "定点医药机构编号", "fixmedins_code", 180);
            AddDGVColumn(dgv, "定点医药机构名称", "fixmedins_name", 400);
            AddDGVColumn(dgv, "统一社会信用代码", "uscc", 200);
            AddDGVColumn(dgv, "定点医疗服务机构类型", "fixmedins_type", 200);
            AddDGVColumn(dgv, "医院等级", "hosp_lv", 100);
            AddDGVColumn(dgv, "除外内容", "exp_content", 200);

            //AddDGVColumn(dgv, "定点医药机构编号", "Code", 200);
            //AddDGVColumn(dgv, "定点医药机构名称", "Descripts", 400);
            ////AddDGVColumn(dgv, "统一社会信用代码", "uscc", 200);
            //AddDGVColumn(dgv, "定点医疗服务机构类型", "HospTypeDr", 300);
            //AddDGVColumn(dgv, "医院等级", "HospGradeDr", 200);
        }


        ///// <summary>
        ///// 设置诊断，手术，病种等列标题
        ///// </summary>
        //public void SetHeaderTextOfDiagnose(DataGridView dgv)
        //{
        //    dgv.Columns.Clear();
        //    dgv.AutoGenerateColumns = false;
        //    AddDGVColumn(dgv, "编码", "Code", 200);
        //    AddDGVColumn(dgv, "名称", "Name", 500);

        //}

        //字典表
        public void SetHeaderTextOfDictionary(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "大类", "insuCode");
            AddDGVColumn(dgv, "编码", "code");
            AddDGVColumn(dgv, "名称", "descripts", 500);//PinyinSearchCode
            AddDGVColumn(dgv, "查找码", "pinyinSearchCode", 200);
            AddDGVColumn(dgv, "更新日期", "CreateDate", 150);
            AddDGVColumn(dgv, "更新时间", "CreateTime", 150);
        }

        public void SetHeaderTextOfMedicalService(DataGridView dgv)
        {
            dgv.Columns.Clear();
            //dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "编码", "Code", 300);
            AddDGVColumn(dgv, "名称", "Name", 300);
            AddDGVColumn(dgv, "说明", "Instructions", 200);
            AddDGVColumn(dgv, "除外内容", "ExceptContent", 200);
            AddDGVColumn(dgv, "项目内涵", "Connotation", 200);
            AddDGVColumn(dgv, "非公立二级价格", "ChargeStandards", 250);
            AddDGVColumn(dgv, "非公立三级价格", "CeilingPrice", 250);
            AddDGVColumn(dgv, "计价单位", "UnitOfValuation", 100);
            AddDGVColumn(dgv, "规格", "Specification");
            //AddDGVCheckBoxColumn(dgv, "有效标志", "ValidFlag", 100);
            //AddDGVCheckBoxColumn(dgv, "使用标志", "UseFlag", 100);
            AddDGVColumn(dgv, "收费等级", "ChargeItemLevel", 100);
            AddDGVColumn(dgv, "收费等级名称", "ChargeItemLevelName", 160);
            AddDGVColumn(dgv, "更新时间", "UpdateTime", 180);
            AddDGVColumn(dgv, "限制标志", "LimitFlag", 100);
            AddDGVColumn(dgv, "限制范围", "LimitRange");
            AddDGVColumn(dgv, "版本号", "VersionNO");
        }
        /// <summary>
        /// 材料
        /// </summary>
        /// <param name="dgv"></param>
        public void SetHeaderTextOfMaterials(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "编码", "Code", 300);
            AddDGVColumn(dgv, "名称", "Name", 300);
            AddDGVColumn(dgv, "批准文号", "ApprovalNO", 200);
            AddDGVColumn(dgv, "剂型", "DosageFormCode",100);
            AddDGVColumn(dgv, "剂型名称", "DosageFormName");
            AddDGVColumn(dgv, "规格", "Specification");
            AddDGVColumn(dgv, "包装单位", "UnitOfPackag");
            AddDGVColumn(dgv, "计价单位", "UnitOfValuation");
            AddDGVColumn(dgv, "有效标志", "ValidFlag", 100);
            AddDGVCheckBoxColumn(dgv, "使用标志", "UseFlag", 100);
            AddDGVColumn(dgv, "特殊药品标志", "SpecialFlag");
            AddDGVColumn(dgv, "更新时间", "UpdateTime", 180);
            AddDGVColumn(dgv, "限制标志", "LimitFlag", 100);
            AddDGVColumn(dgv, "限制范围", "LimitRange", 100);
            AddDGVColumn(dgv, "生产厂家", "Manufacturers");
            AddDGVColumn(dgv, "版本号", "VersionNO");
        }

        /// <summary>
        /// 设置诊断，手术，病种等列标题
        /// </summary>
        public void SetHeaderTextOfDiagnose(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "编码", "Code", 200);
            AddDGVColumn(dgv, "名称", "Name", 500);

        }

        public void SetHeaderTextOfMapping_HisDirectory(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "序号", "tind", 50);
            AddDGVColumn(dgv, "医院编码", "itemCode", 200);
            AddDGVColumn(dgv, "医院名称", "itemDesc", 300);
            AddDGVColumn(dgv, "中心编码", "insuCode", 250);
            AddDGVColumn(dgv, "中心名称", "insuName",300);
            AddDGVColumn(dgv, "对照状态", "flag", 80);
            AddDGVColumn(dgv, "规格", "spec", 200);
            AddDGVColumn(dgv, "单位", "itemUnitDesc",70);
            AddDGVColumn(dgv, "价格", "itemPrice", 80);
            AddDGVColumn(dgv, "批准文号", "pprovalNo", 200);
            AddDGVColumn(dgv, "厂家", "manfDesc", 200);
        }

        /// <summary>
        /// 设置药品列标题
        /// </summary>
        public void SetHeaderTextOfSettlList(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "医保编号", "PersonnelNO",150);
            AddDGVColumn(dgv, "结算编号", "SettlementID", 150);
            AddDGVColumn(dgv, "就诊号", "MdtrtID", 150);
            AddDGVColumn(dgv, "姓名", "PatientName",100);
            AddDGVColumn(dgv, "险种", "InsuranceType");
            AddDGVColumn(dgv, "人员类别", "PersonType");
            AddDGVColumn(dgv, "结算时间", "SettlementTime");
            AddDGVColumn(dgv, "医疗类别", "MedicalType");
            AddDGVColumn(dgv, "总金额", "Sumamt");
            AddDGVColumn(dgv, "自付金额", "OwnPayAmount");
            AddDGVColumn(dgv, "超限金额", "OverLimitAmount");
            AddDGVColumn(dgv, "先行自付", "PreSelfPayAmount");
            AddDGVColumn(dgv, "政策范围内金额", "InPolicyRangeAmount");
            AddDGVColumn(dgv, "公务员补助金额", "CivilserviceAllowancePay");
            AddDGVColumn(dgv, "大病补助金额", "SeriousIllnessPay");
            AddDGVColumn(dgv, "大额补助金额", "LargeExpensesSupplementPay");
            AddDGVColumn(dgv, "医疗救助金额", "MedicalAssistPay");
            AddDGVColumn(dgv, "医院承担金额", "HospitalPartAmount");
            AddDGVColumn(dgv, "其他支出金额", "OtherPay");
            AddDGVColumn(dgv, "基金支付金额", "FundPaySumamt");
            AddDGVColumn(dgv, "个人支付金额", "PersonPaySumamt");
            AddDGVColumn(dgv, "现金支付金额", "PersonCashPay");
            AddDGVColumn(dgv, "账户余额", "Balance");
            AddDGVColumn(dgv, "共济账户支付金额", "AccountMutualAidAmount");
            AddDGVColumn(dgv, "清算机构", "ClearingOrgan");
            AddDGVColumn(dgv, "清算方式", "ClearingWay");
            AddDGVColumn(dgv, "清算类型", "ClearingType");
            AddDGVColumn(dgv, "有效标志", "ValidFlag");
            AddDGVColumn(dgv, "参保地", "insuplc_admdvs");
            AddDGVColumn(dgv, "MSGID", "MSGID");
            AddDGVColumn(dgv, "HIS就诊号", "AdmID");

        }

        /// <summary>
        /// 设置对账列标题
        /// </summary>
        public void SetHeaderTextOfCheck(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "医疗费总额", "medfee_sumamt", 150);
            AddDGVColumn(dgv, "基金支付总额", "fund_pay_sumamt", 200);
            AddDGVColumn(dgv, "个人账户支付金额", "acct_pay", 200);
            AddDGVColumn(dgv, "定点医药机构结算笔数", "fixmedins_setl_cnt", 280);
            AddDGVColumn(dgv, "清算类别", "clr_type",100);
            AddDGVColumn(dgv, "接口ID", "Interface_dr", 80);
            AddDGVColumn(dgv, "结算经办机构", "setl_optins", 180);
            AddDGVColumn(dgv, "险种", "insutype", 100);

        }

        /// <summary>
        /// 设置清算汇总列标题
        /// </summary>
        public void SetHeaderTextOfClearing(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "医疗费总额", "medfee_sumamt", 80);
            AddDGVColumn(dgv, "基金支付总额", "fund_appy_sum", 200);
            AddDGVColumn(dgv, "医保认可费用总额", "med_sumfee", 300);
            AddDGVColumn(dgv, "个人账户支付金额", "acct_pay", 300);
            AddDGVColumn(dgv, "现金支付金额", "cash_payamt", 300);
            AddDGVColumn(dgv, "清算人次", "psntime", 100);
            AddDGVColumn(dgv, "清算方式", "clr_way");
            AddDGVColumn(dgv, "清算类别", "clr_type");
            AddDGVColumn(dgv, "接口ID", "Interface_dr", 80);
            //AddDGVColumn(dgv, "结算经办机构", "setl_optins", 80);
            //AddDGVColumn(dgv, "险种", "insutype", 80);
        }

        /// <summary>
        /// 设置清算数据查询列标题
        /// </summary>
        public void SetHeaderTextOfClearingData(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "接口ID", "InterfaceDr", 80);
            AddDGVColumn(dgv, "清算ID", "ApplyID", 200);
            AddDGVColumn(dgv, "发生时间", "OccurTime", 200);
            AddDGVColumn(dgv, "清算类别", "ClrType", 200);
            AddDGVColumn(dgv, "清算方式", "ClrWay", 100);
            AddDGVColumn(dgv, "清算年月", "ClearYearMonth", 100);
            AddDGVColumn(dgv, "清算人次", "PersonTime");
            AddDGVColumn(dgv, "总金额", "Sumamt");
            AddDGVColumn(dgv, "医保认可金额", "MedAcceptSumamt");
            AddDGVColumn(dgv, "基金支付金额", "FundPay");
            AddDGVColumn(dgv, "现金支付金额", "CashPay");
            AddDGVColumn(dgv, "账户支付金额", "AccountPay");
            AddDGVColumn(dgv, "开始时间", "Begndate");
            AddDGVColumn(dgv, "截止时间", "Enddate");
            AddDGVColumn(dgv, "有效标志", "ValidFlag");
            AddDGVColumn(dgv, "经办人", "Operator");
        }

        /// <summary>
        /// 设置异地对账列标题
        /// </summary>
        public void SetHeaderTextOfOthPlcCheck(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "人员姓名", "PatientName", 120);
            AddDGVColumn(dgv, "人员编号", "PersonnelNO", 200);
            AddDGVColumn(dgv, "医疗费总额", "Sumamt", 180);
            AddDGVColumn(dgv, "基金支付总额", "FundPaySumamt", 200);
            AddDGVColumn(dgv, "个人账户支付", "AccountPaySumamt", 200);
            AddDGVColumn(dgv, "就诊结算时间", "SettlementTime", 300);
            AddDGVColumn(dgv, "交易类型", "BillType", 100);
            AddDGVColumn(dgv, "就诊顺序号", "MdtrtID", 200);
            AddDGVColumn(dgv, "结算流水号", "SettlementID", 200);
        }

        /// <summary>
        /// 设置HIS结算明细标题
        /// </summary>
        public void SetHeaderTextOfHisSettlRec(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "就诊ID", "AdmID", 80);
            AddDGVColumn(dgv, "医保登记号", "MdtrtID", 200);
            AddDGVColumn(dgv, "结算ID", "SettlementID", 200);
            AddDGVColumn(dgv, "医保个人编号", "PersonnelNO", 200);
            AddDGVColumn(dgv, "姓名", "PatientName", 100);
            AddDGVColumn(dgv, "结算时间", "SettlementTime", 180);
            AddDGVColumn(dgv, "总费用", "Sumamt");
            AddDGVColumn(dgv, "账户支付", "AccountPaySumamt", 80);
            AddDGVColumn(dgv, "现金支付", "PersonCashPay", 80);
            AddDGVColumn(dgv, "有效标志", "ValidFlag", 80);
            AddDGVColumn(dgv, "单据类型", "BillType", 80);
        }

        public void SetHeaderTextOfDgvCenterSetlRec(DataGridView dgv)
        {
            dgv.Columns.Clear();
            AddDGVColumn(dgv, "序号", "sn", 50);
            AddDGVColumn(dgv, "个人编号", "psn_no", 200);
            AddDGVColumn(dgv, "医保就诊号", "mdtrt_id", 200);
            AddDGVColumn(dgv, "结算ID", "setl_id", 200);
            AddDGVColumn(dgv, "报文ID", "msgid", 200);
            AddDGVColumn(dgv, "结果", "stmt_rslt", 50);
            AddDGVColumn(dgv, "退费结算标志", "refd_setl_flag");
            AddDGVColumn(dgv, "备注", "memo", 200);
            AddDGVColumn(dgv, "总费用", "medfee_sumamt");
            AddDGVColumn(dgv, "基金支付", "fund_pay_sumamt");
            AddDGVColumn(dgv, "账户支付", "acct_pay");

        }

        /// <summary>
        /// 参保地查询
        /// </summary>
        public void SetAdmdvsData(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;
            AddDGVColumn(dgv, "编码", "Code", 150);
            AddDGVColumn(dgv, "名称", "Name", 300);
        }

        #region【设置dataGrideView列宽自适应】
        public void DatagridviewColumnWidthAdaptation(DataGridView dgv)
        {
            int width = 0;
            dgv.AutoGenerateColumns = false;
            //对于DataGridView的每一个列都调整
            for (int i = 0; i < dgv.Columns.Count; i++)
            {
                //将每一列都调整为自动适应模式
                dgv.AutoResizeColumn(i, DataGridViewAutoSizeColumnMode.AllCells);
                //记录整个DataGridView的宽度
                width += dgv.Columns[i].Width;
            }
            //判断调整后的宽度与原来设定的宽度的关系，如果是调整后的宽度大于原来设定的宽度，
            //则将DataGridView的列自动调整模式设置为显示的列即可，
            //如果是小于原来设定的宽度，将模式改为填充。
            if (width > dgv.Size.Width)
            {
                dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.DisplayedCells;
            }
            else
            {
                dgv.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill;
            }
            dgv.Refresh();
        }
        #endregion



        #endregion

        #region【设置医保辅助查询标题】
        #region【设置人员慢病用药历史查询标题】
        public void SetMbMedicationHistory(DataGridView dgv)
        {            
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;

            AddDGVColumn(dgv, "费用明细流水号", "feedetl_sn", 200);
            AddDGVColumn(dgv, "处方号", "rx_drord_no", 150);
            AddDGVColumn(dgv, "医院编码", "fixmedins_code", 100);
            AddDGVColumn(dgv, "医院名称", "fixmedins_name", 150);
            AddDGVColumn(dgv, "人员编号", "psn_no", 150);

            AddDGVColumn(dgv, "医疗类别", "med_type", 150);
            AddDGVColumn(dgv, "费用发生时间", "fee_ocur_time", 150);
            AddDGVColumn(dgv, "数量", "cnt", 150);
            AddDGVColumn(dgv, "单价", "pric", 150);
            AddDGVColumn(dgv, "收费项目等级", "chrgitm_lv", 150);

            AddDGVColumn(dgv, "医保目录编码", "hilist_code", 150);
            AddDGVColumn(dgv, "医保目录名称", "hilist_name", 150);
            AddDGVColumn(dgv, "目录类别", "list_type", 150);
            AddDGVColumn(dgv, "医疗目录编码", "med_list_codg", 150);
            AddDGVColumn(dgv, "医药机构目录编码", "medins_list_codg", 150);

            AddDGVColumn(dgv, "医药机构目录名称", "medins_list_name", 150);
            AddDGVColumn(dgv, "医疗收费项目类别", "med_chrgitm_type", 150);
            AddDGVColumn(dgv, "商品名", "prodname", 150);
            AddDGVColumn(dgv, "规格", "spec", 150);
            AddDGVColumn(dgv, "剂型", "dosform_name", 150);

            AddDGVColumn(dgv, "限制使用标志", "lmt_used_flag", 150);
            AddDGVColumn(dgv, "医院制剂标志", "hosp_prep_flag", 150);
            AddDGVColumn(dgv, "医院审批标志", "hosp_appr_flag", 150);
            AddDGVColumn(dgv, "中药使用方式", "tcmdrug_used_way", 150);
            AddDGVColumn(dgv, "生产地类别", "prodplac_type", 150);

            AddDGVColumn(dgv, "基本药物标志", "bas_medn_flag", 150);
            AddDGVColumn(dgv, "医保谈判药物标志", "hi_nego_drug_flag", 150);
            AddDGVColumn(dgv, "儿童用药标志", "chld_medc_flag", 150);
            AddDGVColumn(dgv, "外检标志", "etip_flag", 150);
            AddDGVColumn(dgv, "外检医院编码", "etip_hosp_code", 150);

            AddDGVColumn(dgv, "出院带药编码", "dscg_tkdrug_flag", 150);
            AddDGVColumn(dgv, "目录特项标志", "list_sp_item_flag", 150);
            AddDGVColumn(dgv, "生育费用标志", "matn_fee_flag", 150);
        }
        #endregion

        #region【设置人员慢病用药历史查询标题】
        public void SetPersonAccumulativeTotal(DataGridView dgv)
        {
            dgv.Columns.Clear();
            dgv.AutoGenerateColumns = false;

            AddDGVColumn(dgv, "险种类型", "insutype", 200);
            AddDGVColumn(dgv, "年度", "year", 150);
            AddDGVColumn(dgv, "累积年月", "cum_ym", 100);
            AddDGVColumn(dgv, "累积类别代码", "cum_type_code", 150);
            AddDGVColumn(dgv, "累计值", "cum", 150);
        }
        #endregion
        #endregion
        #region 事前事中
        public void SetHeaderTextOfPAIPAVolaItem(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();

            AddDGVColumn(dgv, "规则名称", "rule_name", 500);
            dgv.ColumnHeadersVisible = false;
            dgv.RowHeadersVisible = false;
        }

        public void SetHeaderTextOfPAIPAVolaDetailDtos(DataGridView dgv)
        {
            dgv.AutoGenerateColumns = false;
            dgv.Columns.Clear();

            AddDGVColumn(dgv, "医保就诊号", "mdtrt_id", 200);
            AddDGVColumn(dgv, "违规明细标识", "jrd_id", 300);
            AddDGVColumn(dgv, "处方(医嘱)标识", "rx_id", 120);
            AddDGVColumn(dgv, "HIS就真号", "patn_id", 200);
            AddDGVColumn(dgv, "违规金额", "vola_amt", 200);
            AddDGVColumn(dgv, "违规明细类型", "vola_item_type", 120);

            dgv.RowHeadersVisible = false;
        }
        #endregion
    }

}
