| | |
| | | <template> |
| | | <div> |
| | | <span class="txt"></span> |
| | | <el-form ref="form" :model="form" :rules="rules" label-width="100px" :inline="true" size="mini"> |
| | | <el-form |
| | | ref="form" |
| | | :model="form" |
| | | :rules="rules" |
| | | label-width="100px" |
| | | :inline="true" |
| | | size="mini" |
| | | > |
| | | <el-collapse class="coll" v-model="activeName" accordion> |
| | | <el-collapse-item class="coll" title="基本信息" name="1" style="width: 900px; font-weight: 600"> |
| | | <el-collapse-item |
| | | class="coll" |
| | | title="基本信息" |
| | | name="1" |
| | | style="width: 900px; font-weight: 600" |
| | | > |
| | | <div style="width: 900px"> |
| | | <el-form-item label="姓名" prop="cusName"> |
| | | <el-input v-model="form.cusName" placeholder="请输入姓名" /> |
| | | </el-form-item> |
| | | <el-form-item label="职业" prop="work"> |
| | | <el-select filterable v-model="form.work" placeholder="请选择职业" clearable style="width: 150px"> |
| | | <el-option v-for="dict in dict.type.tj_work" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | <el-select |
| | | filterable |
| | | v-model="form.work" |
| | | placeholder="请选择职业" |
| | | clearable |
| | | style="width: 150px" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.tj_work" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="工作状态" prop="workStatus"> |
| | | <el-select filterable v-model="form.workStatus" placeholder="请选择工作状态" clearable style="width: 150px"> |
| | | <el-option v-for="dict in dict.type.tj_work_status" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | <el-select |
| | | filterable |
| | | v-model="form.workStatus" |
| | | placeholder="请选择工作状态" |
| | | clearable |
| | | style="width: 150px" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.tj_work_status" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="工种" prop="gongZhong"> |
| | | <el-input v-model="form.gongZhong" placeholder="请输入工种" /> |
| | | </el-form-item> |
| | | <el-form-item label="工龄" prop="gongLing"> |
| | | <!-- <el-input v-model="form.cusName" placeholder="请输入工龄" style="width: 150px" />年 --> |
| | | <el-input-number v-model="form.gongLing" label="请输入工龄"></el-input-number>年 |
| | | <el-form-item label="单位名称" prop="dwmc"> |
| | | <el-input |
| | | v-model="form.dwmc" |
| | | placeholder="请输入单位名称" |
| | | style="width: 710px" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="接触毒物" prop="contactPoison"> |
| | | <el-form-item label="用工单位" prop="ygdw"> |
| | | <el-input |
| | | v-model="form.ygdw" |
| | | placeholder="请输入用工单位" |
| | | style="width: 710px" |
| | | /> |
| | | </el-form-item> |
| | | <el-form-item label="总工龄" prop="gongLing"> |
| | | <!-- <el-input v-model="form.cusName" placeholder="请输入工龄" style="width: 150px" />年 --> |
| | | <el-input-number |
| | | v-model="form.gongLing" |
| | | label="请输入总工龄" |
| | | ></el-input-number |
| | | >年 |
| | | </el-form-item> |
| | | <el-form-item |
| | | label="接触有害物工龄" |
| | | prop="zgongLing" |
| | | label-width="150px" |
| | | > |
| | | <!-- <el-input v-model="form.cusName" placeholder="请输入工龄" style="width: 150px" />年 --> |
| | | <el-input-number |
| | | v-model="form.zgongLing" |
| | | label="请输入接触有害物工龄" |
| | | ></el-input-number |
| | | >年 |
| | | </el-form-item> |
| | | <el-form-item label="是否复诊" prop=""> |
| | | <el-radio-group v-model="radio"> |
| | | <el-radio :label="1">是</el-radio> |
| | | <el-radio :label="2">否</el-radio> |
| | | </el-radio-group> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="接触毒物" prop="contactPoison"> |
| | | <el-input @focus="change" type="textarea" rows="4" v-model="form.contactPoison" placeholder="请输入接触毒物" |
| | | style="width: 700px" /> |
| | | </el-form-item> --> |
| | | <el-form-item label="体检危害因素" prop="tjwhyx"> |
| | | <el-select |
| | | filterable |
| | | v-model="form.tjwhyx" |
| | | placeholder="请选择体检危害因素" |
| | | clearable |
| | | style="width: 180px" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.tj_work_status" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="既往病史" prop="medicalHistory"> |
| | | <el-input @focus="changemedicalhistory" type="textarea" rows="4" v-model="form.medicalHistory" |
| | | placeholder="请输入既往病史" style="width: 700px" /> |
| | | <el-form-item |
| | | label="接触危害因素" |
| | | prop="tcwhyx" |
| | | style="margin-left: 30px" |
| | | > |
| | | <el-select |
| | | filterable |
| | | v-model="form.tcwhyx" |
| | | placeholder="请选择接触危害因素" |
| | | clearable |
| | | style="width: 180px" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.tj_work_status" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="症状" prop="zzsjj"> |
| | | <el-form-item label="既往病史" prop="mediHistoryq"> |
| | | <el-select |
| | | v-model="form.mediHistoryq" |
| | | multiple |
| | | allow-create |
| | | filterable |
| | | placeholder="请选择或输入既往病史" |
| | | style="width: 700px" |
| | | > |
| | | <!-- <el-option |
| | | v-for="item in rulesList" |
| | | :key="item.id" |
| | | :label="item.icdname" |
| | | :value="item.icdname" |
| | | /> --> |
| | | <el-option |
| | | v-for="item in rulesList" |
| | | :key="item.id" |
| | | :label="item.icdname" |
| | | :value="item.id" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="既往病史" prop="medicalHistoryOther"> |
| | | <el-input |
| | | type="textarea" |
| | | rows="4" |
| | | v-model="form.medicalHistoryOther" |
| | | placeholder="请输入既往病史" |
| | | style="width: 700px" |
| | | /> |
| | | </el-form-item> |
| | | <!-- <el-form-item label="症状" prop="zzsjj"> |
| | | <el-select multiple filterable v-model="form.zzsjj" placeholder="请选择症状" clearable style="width: 700px"> |
| | | <el-option v-for="dict in zhenghuzangList" :key="dict.id" :label="dict.proName" :value="dict.proName" /> |
| | | </el-select> |
| | | </el-form-item> |
| | | </el-form-item> --> |
| | | </div> |
| | | </el-collapse-item> |
| | | |
| | | <el-collapse-item title="职业症状" name="6"> |
| | | <div style="width: 900px"> |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-plus" |
| | | size="mini" |
| | | @click="addzj()" |
| | | >添加 |
| | | </el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="danger" |
| | | icon="el-icon-delete" |
| | | size="mini" |
| | | @click="delezz()" |
| | | >删除 |
| | | </el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-table |
| | | border |
| | | :data="form.zhiyezzList" |
| | | ref="zhiyezzList" |
| | | style="width: 98%" |
| | | @selection-change="handlezzChange" |
| | | > |
| | | <el-table-column type="selection" width="40" align="center" /> |
| | | <el-table-column |
| | | label="序号" |
| | | width="80" |
| | | align="center" |
| | | type="index" |
| | | :index="indexMethod" |
| | | /> |
| | | <el-table-column label="症状名称" prop="name" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | :remote-method="getZzData" |
| | | v-model="scope.row.diseaseName" |
| | | remote |
| | | filterable |
| | | placeholder="请选择症状名称" |
| | | clearable |
| | | @change="zz" |
| | | > |
| | | <el-option |
| | | v-for="dict in zhenghuzangList" |
| | | :key="dict.id" |
| | | :label="dict.proName" |
| | | :value="dict.proName" |
| | | /> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | label="症状日期" |
| | | width="160" |
| | | prop="diseaseData" |
| | | align="center" |
| | | > |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | size="mini" |
| | | v-model="scope.row.diseaseData" |
| | | align="right" |
| | | type="date" |
| | | placeholder="选择日期" |
| | | :picker-options="pickerOptions" |
| | | style="width: 130px" |
| | | value-format="yyyy-MM-dd" |
| | | > |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | |
| | | <el-table-column label="备注" prop="bz" align="center"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | size="mini" |
| | | v-model="scope.row.bz" |
| | | placeholder="请输入备注" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </el-collapse-item> |
| | | |
| | | <el-collapse-item title="月经史" name="2" v-show="sex"> |
| | | <div style="width: 900px"> |
| | | <el-form-item label="初潮(岁)" prop="chuchao"> |
| | |
| | | <el-input v-model="form.mociage" style="width: 100px" /> |
| | | </el-form-item> |
| | | <el-form-item label="是否异常" prop="yjsfyc"> |
| | | <el-select filterable v-model="form.yjsfyc" placeholder="请选择是否异常" clearable style="width: 150px"> |
| | | <el-option v-for="dict in dict.type.sys_yes_no" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | <el-select |
| | | filterable |
| | | v-model="form.yjsfyc" |
| | | placeholder="请选择是否异常" |
| | | clearable |
| | | style="width: 150px" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_yes_no" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="月经异常描述" prop="ycms"> |
| | | <el-input v-model="form.ycms" style="width: 490px" /> |
| | | </el-form-item> |
| | | </div> |
| | | </el-collapse-item> |
| | |
| | | <div style="width: 900px"> |
| | | <el-form-item label="是否吸烟" prop="xiyan"> |
| | | <!-- <el-input v-model="form.xiyanpinlv" placeholder="请输入吸烟频率" /> --> |
| | | <el-select filterable v-model="form.xiyan" placeholder="请选择是否吸烟" clearable style="width: 150px"> |
| | | <el-option v-for="dict in dict.type.tj_smoking_pinlv" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | <el-select |
| | | filterable |
| | | v-model="form.xiyan" |
| | | placeholder="请选择是否吸烟" |
| | | clearable |
| | | style="width: 150px" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.tj_smoking_pinlv" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="吸烟频率" prop="xiyanpinlv"> |
| | | <el-input v-model="form.xiyanpinlv" style="width: 70px" />支/天 |
| | | </el-form-item> |
| | | <el-form-item label="吸烟时间" prop="xiyanyear"> |
| | | <el-input v-model="form.xiyanyear" style="width: 70px" />年 </el-form-item><br /> |
| | | <el-input |
| | | v-model="form.xiyanyear" |
| | | style="width: 70px" |
| | | />年 </el-form-item |
| | | ><br /> |
| | | <el-form-item label="是否饮酒" prop="yinjiu"> |
| | | <!-- <el-input v-model="form.yinjiupinlv" placeholder="请输入饮酒频率" /> --> |
| | | <el-select filterable v-model="form.yinjiu" placeholder="请选择是否饮酒" clearable style="width: 150px"> |
| | | <el-option v-for="dict in dict.type.tj_smoking_pinlv" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | <el-select |
| | | filterable |
| | | v-model="form.yinjiu" |
| | | placeholder="请选择是否饮酒" |
| | | clearable |
| | | style="width: 150px" |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.tj_smoking_pinlv" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="饮酒频率" prop="yinjiupinlv"> |
| | |
| | | <el-input v-model="form.yinjiuyear" style="width: 70px" />年 |
| | | </el-form-item> |
| | | <el-form-item label="其他" prop="qita"> |
| | | <el-input v-model="form.qita" placeholder="请输入其他" type="textarea" style="width: 600px" rows="2" /> |
| | | <el-input |
| | | v-model="form.qita" |
| | | placeholder="请输入其他" |
| | | type="textarea" |
| | | style="width: 600px" |
| | | rows="2" |
| | | /> |
| | | </el-form-item> |
| | | </div> |
| | | </el-collapse-item> |
| | | <el-collapse-item title="职业病" name="5" v-show="zhiyebingshi"> |
| | | <el-collapse-item title="职业病史" name="5" v-show="zhiyebingshi"> |
| | | <div style="width: 900px"> |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="primary" |
| | | icon="el-icon-plus" |
| | | size="mini" |
| | | @click="addmembers()" |
| | | >添加 |
| | | </el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button |
| | | type="danger" |
| | | icon="el-icon-delete" |
| | | size="mini" |
| | | @click="delemembers()" |
| | | >删除 |
| | | </el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-table |
| | | border |
| | | :data="form.tjAskHistorysList" |
| | | ref="tjAskHistorys" |
| | | style="width: 98%" |
| | | @selection-change="handlebingChange" |
| | | > |
| | | <el-table-column type="selection" width="40" align="center" /> |
| | | <el-table-column label="疾病类型" prop="type"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | v-model="scope.row.type" |
| | | remote |
| | | filterable |
| | | placeholder="请选择疾病类型" |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="item in options" |
| | | :key="item.value" |
| | | :label="item.label" |
| | | :value="item.value" |
| | | /> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="疾病id" prop="icdId" v-if="false"> |
| | | <el-select |
| | | :remote-method="getRemoteData" |
| | | v-model="icdId" |
| | | remote |
| | | filterable |
| | | placeholder="请选择病种名" |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="dict in rulesList" |
| | | :key="dict.id" |
| | | :label="dict.icdname" |
| | | :value="dict.id" |
| | | /> |
| | | </el-select> |
| | | </el-table-column> |
| | | <el-table-column label="疾病名称" prop="diseaseName"> |
| | | <template slot-scope="scope"> |
| | | <el-select |
| | | :remote-method="getRemoteData" |
| | | v-model="scope.row.diseaseName" |
| | | remote |
| | | filterable |
| | | placeholder="请选择病种名" |
| | | clearable |
| | | @change="jibing" |
| | | > |
| | | <el-option |
| | | v-for="dict in rulesList" |
| | | :key="dict.id" |
| | | :label="dict.icdname" |
| | | :value="dict.icdname" |
| | | /> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="诊断日期" prop="diseaseData"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker |
| | | size="mini" |
| | | v-model="scope.row.diseaseData" |
| | | align="right" |
| | | type="date" |
| | | placeholder="选择日期" |
| | | :picker-options="pickerOptions" |
| | | style="width: 130px" |
| | | value-format="yyyy-MM-dd" |
| | | > |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="诊断单位" prop="diseaseCompany"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | size="mini" |
| | | v-model="scope.row.diseaseCompany" |
| | | placeholder="请输入诊断单位" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="是否痊愈" prop="isOk"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input v-model="scope.row.isOk" placeholder="请输入是否痊愈" /> --> |
| | | <el-select |
| | | filterable |
| | | size="mini" |
| | | v-model="scope.row.isOk" |
| | | placeholder="请选择是否痊愈" |
| | | clearable |
| | | > |
| | | <el-option |
| | | v-for="dict in dict.type.sys_yes_no" |
| | | :key="dict.value" |
| | | :label="dict.label" |
| | | :value="dict.value" |
| | | /> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="备注" prop="remark"> |
| | | <template slot-scope="scope"> |
| | | <el-input |
| | | size="mini" |
| | | v-model="scope.row.remark" |
| | | placeholder="请输入备注" |
| | | /> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </el-collapse-item> |
| | | <!-- <el-collapse-item title="既往病史" name="5" v-show="jiwangbingshi"> |
| | | <div style="width: 900px"> |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | |
| | | <el-table border :data="form.tjAskHistorysList" ref="tjAskHistorys" style="width: 98%" |
| | | @selection-change="handlebingChange"> |
| | | <el-table-column type="selection" width="40" align="center" /> |
| | | <!-- <el-table-column |
| | | label="序号" |
| | | align="center" |
| | | prop="index" |
| | | width="50" |
| | | /> --> |
| | | <el-table-column label="疾病类型" prop="type"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input |
| | | size="mini" |
| | | v-model="scope.row.diseaseName" |
| | | placeholder="请输入疾病名称" |
| | | /> --> |
| | | <el-select v-model="scope.row.type" remote filterable placeholder="请选择疾病类型" clearable> |
| | | <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" /> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="疾病id" prop="icdId" v-if="false"> |
| | | <!-- <template slot-scope="scope"> --> |
| | | <el-select :remote-method="getRemoteData" v-model="icdId" remote filterable placeholder="请选择病种名" |
| | | clearable> |
| | | <el-option v-for="dict in rulesList" :key="dict.id" :label="dict.icdname" :value="dict.id" /> |
| | | </el-select> |
| | | <!-- </template> --> |
| | | </el-table-column> |
| | | <el-table-column label="疾病名称" prop="diseaseName"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input |
| | | size="mini" |
| | | v-model="scope.row.diseaseName" |
| | | placeholder="请输入疾病名称" |
| | | /> --> |
| | | <el-select :remote-method="getRemoteData" v-model="scope.row.diseaseName" remote filterable |
| | | placeholder="请选择病种名" clearable @change="jibing"> |
| | | <el-option v-for="dict in rulesList" :key="dict.id" :label="dict.icdname" :value="dict.icdname" /> |
| | |
| | | </el-table-column> |
| | | <el-table-column label="诊断日期" prop="diseaseData"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input |
| | | v-model="scope.row.diseaseData" |
| | | placeholder="请输入诊断日期" |
| | | /> --> |
| | | <el-date-picker size="mini" v-model="scope.row.diseaseData" align="right" type="date" |
| | | placeholder="选择日期" :picker-options="pickerOptions" style="width: 130px" value-format="yyyy-MM-dd"> |
| | | </el-date-picker> |
| | |
| | | </el-table-column> |
| | | <el-table-column label="是否痊愈" prop="isOk"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input v-model="scope.row.isOk" placeholder="请输入是否痊愈" /> --> |
| | | <el-select filterable size="mini" v-model="scope.row.isOk" placeholder="请选择是否痊愈" clearable> |
| | | <el-option v-for="dict in dict.type.sys_yes_no" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </el-collapse-item> |
| | | <el-collapse-item title="既往病史" name="5" v-show="jiwangbingshi"> |
| | | <div style="width: 900px"> |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | | <el-button type="primary" icon="el-icon-plus" size="mini" @click="addmembers()">添加 |
| | | </el-button> |
| | | </el-col> |
| | | <el-col :span="1.5"> |
| | | <el-button type="danger" icon="el-icon-delete" size="mini" @click="delemembers()">删除 |
| | | </el-button> |
| | | </el-col> |
| | | </el-row> |
| | | <el-table border :data="form.tjAskHistorysList" ref="tjAskHistorys" style="width: 98%" |
| | | @selection-change="handlebingChange"> |
| | | <el-table-column type="selection" width="40" align="center" /> |
| | | <!-- <el-table-column |
| | | label="序号" |
| | | align="center" |
| | | prop="index" |
| | | width="50" |
| | | /> --> |
| | | <el-table-column label="疾病类型" prop="type"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input |
| | | size="mini" |
| | | v-model="scope.row.diseaseName" |
| | | placeholder="请输入疾病名称" |
| | | /> --> |
| | | <el-select v-model="scope.row.type" remote filterable placeholder="请选择疾病类型" clearable> |
| | | <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value" /> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="疾病id" prop="icdId" v-if="false"> |
| | | <!-- <template slot-scope="scope"> --> |
| | | <el-select :remote-method="getRemoteData" v-model="icdId" remote filterable placeholder="请选择病种名" |
| | | clearable> |
| | | <el-option v-for="dict in rulesList" :key="dict.id" :label="dict.icdname" :value="dict.id" /> |
| | | </el-select> |
| | | <!-- </template> --> |
| | | </el-table-column> |
| | | <el-table-column label="疾病名称" prop="diseaseName"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input |
| | | size="mini" |
| | | v-model="scope.row.diseaseName" |
| | | placeholder="请输入疾病名称" |
| | | /> --> |
| | | <el-select :remote-method="getRemoteData" v-model="scope.row.diseaseName" remote filterable |
| | | placeholder="请选择病种名" clearable @change="jibing"> |
| | | <el-option v-for="dict in rulesList" :key="dict.id" :label="dict.icdname" :value="dict.icdname" /> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="诊断日期" prop="diseaseData"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input |
| | | v-model="scope.row.diseaseData" |
| | | placeholder="请输入诊断日期" |
| | | /> --> |
| | | <el-date-picker size="mini" v-model="scope.row.diseaseData" align="right" type="date" |
| | | placeholder="选择日期" :picker-options="pickerOptions" style="width: 130px" value-format="yyyy-MM-dd"> |
| | | </el-date-picker> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="诊断单位" prop="diseaseCompany"> |
| | | <template slot-scope="scope"> |
| | | <el-input size="mini" v-model="scope.row.diseaseCompany" placeholder="请输入诊断单位" /> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="是否痊愈" prop="isOk"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input v-model="scope.row.isOk" placeholder="请输入是否痊愈" /> --> |
| | | <el-select filterable size="mini" v-model="scope.row.isOk" placeholder="请选择是否痊愈" clearable> |
| | | <el-option v-for="dict in dict.type.sys_yes_no" :key="dict.value" :label="dict.label" |
| | | :value="dict.value" /> |
| | | </el-select> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="备注" prop="remark"> |
| | | <template slot-scope="scope"> |
| | | <el-input size="mini" v-model="scope.row.remark" placeholder="请输入备注" /> |
| | | </template> |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </el-collapse-item> |
| | | </el-collapse-item> --> |
| | | |
| | | <el-collapse-item title="职业史" name="7" v-show="zhiye"> |
| | | <!-- <el-collapse-item title="职业史" name="7" v-show="zhiye"> |
| | | <div style="width: 900px"> |
| | | <el-row :gutter="10" class="mb8"> |
| | | <el-col :span="1.5"> |
| | |
| | | </el-row> |
| | | <el-table border :data="form.workLogs" style="width: 98%" @selection-change="handlezhiyeChange"> |
| | | <el-table-column type="selection" width="40" align="center" /> |
| | | <!-- <el-table-column |
| | | label="序号" |
| | | align="center" |
| | | prop="index" |
| | | width="50" |
| | | /> --> |
| | | <el-table-column label="开始时间" prop="beginTime"> |
| | | <template slot-scope="scope"> |
| | | <el-date-picker size="mini" v-model="scope.row.beginTime" align="right" type="date" placeholder="选择日期" |
| | |
| | | </el-table-column> |
| | | <el-table-column label="有害因素" prop="harmTypeLogs"> |
| | | <template slot-scope="scope"> |
| | | <!-- <el-input v-model="scope.row.isOk" placeholder="请输入是否痊愈" /> --> |
| | | <el-select filterable size="mini" v-model="scope.row.harmTypeLogs" multiple placeholder="请选择有害因素" |
| | | clearable> |
| | | <el-option v-for="dict in harmTypeList" :key="dict.aid" :label="dict.harmType" :value="dict.aid" /> |
| | |
| | | </el-table-column> |
| | | </el-table> |
| | | </div> |
| | | </el-collapse-item> |
| | | </el-collapse-item> --> |
| | | </el-collapse> |
| | | </el-form> |
| | | <div slot="footer" class="dialog-footer"> |
| | | <el-button type="primary" @click="submitForm" style="margin-top: 10px" :disabled="isdisabled">提交</el-button> |
| | | <el-button |
| | | type="primary" |
| | | @click="submitForm" |
| | | style="margin-top: 10px" |
| | | :disabled="isdisabled" |
| | | >提交</el-button |
| | | > |
| | | </div> |
| | | |
| | | |
| | | <el-dialog title="接触毒物" :visible.sync="dialogTableVisible"> |
| | | <el-table :data="gridData" ref="multipleTable" @selection-change="handleSelectionChange"> |
| | | <el-table-column type="selection" width="55"> |
| | | </el-table-column> |
| | | <el-table-column property="date" label="序号" width="150"></el-table-column> |
| | | <el-table-column property="value" label="毒物" width="200"></el-table-column> |
| | | <el-table |
| | | :data="gridData" |
| | | ref="multipleTable" |
| | | @selection-change="handleSelectionChange" |
| | | > |
| | | <el-table-column type="selection" width="55"> </el-table-column> |
| | | <el-table-column |
| | | property="date" |
| | | label="序号" |
| | | width="150" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | property="value" |
| | | label="毒物" |
| | | width="200" |
| | | ></el-table-column> |
| | | </el-table> |
| | | |
| | | <div slot="footer" class="dialog-footer"> |
| | |
| | | </el-dialog> |
| | | |
| | | <el-dialog title="既往病史" :visible.sync="dialogHistoryVisible"> |
| | | <el-table :data="historyData" ref="historyTable" @selection-change="handleHistoryChange"> |
| | | <el-table-column type="selection" width="55"> |
| | | </el-table-column> |
| | | <el-table-column property="date" label="序号" width="150"></el-table-column> |
| | | <el-table-column property="value" label="毒物" width="200"></el-table-column> |
| | | <el-table |
| | | :data="historyData" |
| | | ref="historyTable" |
| | | @selection-change="handleHistoryChange" |
| | | > |
| | | <el-table-column type="selection" width="55"> </el-table-column> |
| | | <el-table-column |
| | | property="date" |
| | | label="序号" |
| | | width="150" |
| | | ></el-table-column> |
| | | <el-table-column |
| | | property="value" |
| | | label="毒物" |
| | | width="200" |
| | | ></el-table-column> |
| | | </el-table> |
| | | |
| | | <div slot="footer" class="dialog-footer"> |
| | |
| | | </template> |
| | | |
| | | <script> |
| | | import { updateHistory, getInfoById, getZhengZhuang } from "@/api/hosp/history"; |
| | | import { |
| | | updateHistory, |
| | | getInfoById, |
| | | getZhengZhuang, |
| | | removeAskHistorys, |
| | | } from "@/api/hosp/history"; |
| | | import { list } from "@/api/hosp/rules"; |
| | | import { listIcd } from "@/api/system/icd"; |
| | | export default { |
| | | dicts: ["tj_smoking_pinlv", "sys_yes_no", "tj_work_status", "tj_work"], |
| | | name: "jianqianwenzhen", |
| | |
| | | }, |
| | | ], |
| | | icdId: "", |
| | | radio: 1, |
| | | zhiye: true, |
| | | queryParams: { |
| | | pageNum: 1, |
| | |
| | | multiple: true, |
| | | // ${subTable.functionName}表格数据 |
| | | tjAskHistorysList: [], |
| | | zhiyezzList: [], |
| | | // 弹出层标题 |
| | | title: "", |
| | | harmTypeList: [], |
| | | // 表单参数 |
| | | form: { |
| | | contactPoison: "", |
| | | cusName: "", |
| | | work: "", |
| | | workStatus: "", |
| | | gongZhong: "", |
| | | dwmc: "", |
| | | ygdw: "", |
| | | gongLing: "", |
| | | zgongLing: "", |
| | | yjsfyc: "", // 是否异常 |
| | | ycms: "", // 异常描述 |
| | | xiyan: "", |
| | | xiyanpinlv: "", |
| | | xiyanyear: "", |
| | | yinjiu: "", |
| | | yinjiupinlv: "", |
| | | yinjiuyear: "", |
| | | qita: "", |
| | | medicalHistoryOther: "", |
| | | mediHistoryq: [], |
| | | }, |
| | | chageall: [], |
| | | bingshiall: [], |
| | | selectedZhiyezz: [], |
| | | // 疾病字典表格数据 |
| | | icdList: [], |
| | | rulesList: [], |
| | |
| | | trigger: "blur", |
| | | }, |
| | | ], |
| | | ycms: [ |
| | | { |
| | | validator: (rule, value, callback) => { |
| | | if (this.form.yjsfyc === "Y" && !value) { |
| | | callback(new Error("月经异常描述不能为空")); |
| | | } else { |
| | | callback(); |
| | | } |
| | | }, |
| | | trigger: "blur", |
| | | }, |
| | | ], // 初始不设置为必填 |
| | | }, |
| | | }; |
| | | }, |
| | |
| | | val.forEach((item) => { |
| | | let tjNumber = item; |
| | | getInfoById(tjNumber).then((response) => { |
| | | this.form = response.data; |
| | | // this.form = response.data; |
| | | Object.assign(this.form, response.data); |
| | | console.log(response.data.medicalHistoryIds, 8888); |
| | | |
| | | const medicalHistoryIds = response.data.medicalHistoryIds; |
| | | const splitIds = medicalHistoryIds |
| | | ? medicalHistoryIds.split(",") |
| | | : []; |
| | | this.form.mediHistoryq = splitIds; |
| | | if (this.form.cusSex === "1") { |
| | | this.sex = true; |
| | | } else { |
| | | this.sex = false; |
| | | } |
| | | if (this.form.tjLx === "02") { |
| | | /* if (this.form.tjLx === "02") { |
| | | this.zhiye = true; |
| | | this.zhiyebingshi = true; |
| | | this.jiwangbingshi = false; |
| | |
| | | this.zhiye = false; |
| | | this.zhiyebingshi = false; |
| | | this.jiwangbingshi = true; |
| | | } |
| | | } */ |
| | | if (this.form.xiyan == null) { |
| | | this.form.xiyan = "1"; |
| | | } |
| | |
| | | this.form.gongLing = 1; // 工龄默认值 |
| | | } |
| | | this.form.tjAskHistorysList = response.data.tjAskHistorysList; |
| | | this.form.zhiyezzList = response.data.zhiyezzList; |
| | | // this.isdisabled= true |
| | | }); |
| | | }); |
| | |
| | | this.jianqianwenzhendata.forEach((item) => { |
| | | let tjNumber = item; |
| | | getInfoById(tjNumber).then((response) => { |
| | | this.form = response.data; |
| | | // this.form = response.data; |
| | | Object.assign(this.form, response.data); |
| | | |
| | | const splitIds = response.data.medicalHistoryIds.split(","); |
| | | this.form.mediHistoryq = splitIds; |
| | | this.form.medicalHistoryOther = response.data.medicalHistoryOther; |
| | | if (this.form.cusSex === "1") { |
| | | this.sex = true; |
| | | } else { |
| | |
| | | this.form.yinjiuyear = "0"; |
| | | } |
| | | this.form.tjAskHistorysList = response.data.tjAskHistorysList; |
| | | this.form.zhiyezzList = response.data.zhiyezzList; |
| | | // this.isdisabled= true |
| | | }); |
| | | }); |
| | | this.loading = false; |
| | | } |
| | | }, |
| | | |
| | | |
| | | methods: { |
| | | /** 查询疾病字典列表 */ |
| | |
| | | getZhengZhuang().then((response) => { |
| | | this.zhenghuzangList = response.data; |
| | | }); |
| | | }, |
| | | addzj() { |
| | | if (this.form.cusName) { |
| | | if (!this.form.zhiyezzList) { |
| | | this.form.zhiyezzList = []; |
| | | this.form.zhiyezzList.push({ |
| | | id: parseInt(length), |
| | | diseaseName: "", |
| | | diseaseData: "", |
| | | diseaseCompany: "", |
| | | isOk: "", |
| | | remark: "", |
| | | icdId: "", |
| | | type: "", |
| | | }); |
| | | } else { |
| | | this.form.zhiyezzList.push({ |
| | | id: parseInt(length), |
| | | diseaseName: "", |
| | | diseaseData: "", |
| | | diseaseCompany: "", |
| | | isOk: "", |
| | | remark: "", |
| | | icdId: "", |
| | | type: "", |
| | | }); |
| | | } |
| | | } else { |
| | | Message.warning("请先填写客户名"); |
| | | } |
| | | this.$forceUpdate(); |
| | | }, |
| | | |
| | | delezz() { |
| | | if (this.selectedZhiyezz && this.selectedZhiyezz.length > 0) { |
| | | const historyId = this.selectedZhiyezz.map((item) => item.diseaseId); |
| | | console.log(historyId, "准备删除的 diseaseId"); |
| | | |
| | | // 发请求 |
| | | removeAskHistorys(historyId).then((res) => { |
| | | console.log(res, "删除接口响应"); |
| | | |
| | | this.$message.success("删除成功"); |
| | | |
| | | // 接口成功后再本地删除 |
| | | this.form.zhiyezzList = this.form.zhiyezzList.filter( |
| | | (item) => |
| | | !this.selectedZhiyezz.some( |
| | | (selected) => selected.diseaseId === item.diseaseId |
| | | ) |
| | | ); |
| | | |
| | | this.selectedZhiyezz = []; |
| | | this.$forceUpdate(); |
| | | }); |
| | | } else { |
| | | this.$message.warning("请先选择要删除的项"); |
| | | } |
| | | }, |
| | | // 新增行 |
| | | addmembers() { |
| | |
| | | this.$forceUpdate(); |
| | | }, |
| | | |
| | | indexMethod(index) { |
| | | return ( |
| | | (this.queryParams.pageNum - 1) * this.queryParams.pageSize + index + 1 |
| | | ); |
| | | }, |
| | | |
| | | jibing(sel) { |
| | | this.diseaseNames = sel; |
| | | this.rulesList.forEach((item) => { |
| | |
| | | }); |
| | | this.form.tjAskHistorysList.forEach((item) => { |
| | | if (item.diseaseName == sel) { |
| | | item.icdId = this.icdId; |
| | | } |
| | | }); |
| | | }, |
| | | zz(sel) { |
| | | this.name = sel; |
| | | this.zhenghuzangList.forEach((item) => { |
| | | if (sel == item.icdname) { |
| | | this.icdId = item.id; |
| | | } |
| | | }); |
| | | this.form.zhiyezzList.forEach((item) => { |
| | | if (item.name == sel) { |
| | | item.icdId = this.icdId; |
| | | } |
| | | }); |
| | |
| | | } |
| | | }, |
| | | |
| | | |
| | | change() { |
| | | this.multipleSelection = [] |
| | | this.dialogTableVisible = true |
| | | if (this.form.contactPoison == null || this.form.contactPoison == "") { |
| | | this.form.contactPoison = "" |
| | | getZzData(query) { |
| | | if (query) { |
| | | let data = { |
| | | icdname: query, |
| | | pageNum: 1, |
| | | pageSize: 200, |
| | | }; |
| | | getZhengZhuang(data).then((response) => { |
| | | this.zhenghuzangList = response.data; |
| | | }); |
| | | } |
| | | }, |
| | | |
| | | change() { |
| | | this.multipleSelection = []; |
| | | this.dialogTableVisible = true; |
| | | if (this.form.contactPoison == null || this.form.contactPoison == "") { |
| | | this.form.contactPoison = ""; |
| | | } |
| | | }, |
| | | |
| | | changemedicalhistory() { |
| | | this.multipleSelection = [] |
| | | this.dialogHistoryVisible = true |
| | | this.multipleSelection = []; |
| | | this.dialogHistoryVisible = true; |
| | | if (this.form.medicalHistory == null || this.form.medicalHistory == "") { |
| | | this.form.medicalHistory = "" |
| | | this.form.medicalHistory = ""; |
| | | } |
| | | }, |
| | | |
| | |
| | | }, |
| | | dialogVisible() { |
| | | this.historySelection.forEach((item) => { |
| | | this.form.medicalHistory += item.value + "," |
| | | }) |
| | | this.dialogHistoryVisible = false |
| | | this.form.medicalHistory += item.value + ","; |
| | | }); |
| | | this.dialogHistoryVisible = false; |
| | | this.$refs.historyTable.clearSelection(); |
| | | }, |
| | | |
| | |
| | | |
| | | dialogFormVisible() { |
| | | this.multipleSelection.forEach((item) => { |
| | | this.form.contactPoison += item.value + "," |
| | | }) |
| | | this.dialogTableVisible = false |
| | | this.form.contactPoison += item.value + ","; |
| | | }); |
| | | this.dialogTableVisible = false; |
| | | this.$refs.multipleTable.clearSelection(); |
| | | }, |
| | | |
| | |
| | | } |
| | | }, |
| | | delemembers() { |
| | | let that = this; |
| | | if (that.form.tjAskHistorysList.length == that.bingshiall.length) { |
| | | that.form.tjAskHistorysList = []; |
| | | } else { |
| | | that.bingshiall.forEach((item1, index1) => { |
| | | that.form.tjAskHistorysList.forEach((item, index) => { |
| | | if (item == item1) { |
| | | that.form.tjAskHistorysList.splice(index, 1); |
| | | } |
| | | }); |
| | | if (this.bingshiall && this.bingshiall.length > 0) { |
| | | const historyId = this.bingshiall.map((item) => item.diseaseId); |
| | | |
| | | // 发请求 |
| | | removeAskHistorys(historyId).then((res) => { |
| | | console.log(res, "删除接口响应"); |
| | | |
| | | this.$message.success("删除成功"); |
| | | |
| | | // 接口成功后再本地删除 |
| | | this.form.tjAskHistorysList = this.form.tjAskHistorysList.filter( |
| | | (item) => |
| | | !this.bingshiall.some( |
| | | (selected) => selected.diseaseId === item.diseaseId |
| | | ) |
| | | ); |
| | | |
| | | this.bingshiall = []; |
| | | this.$forceUpdate(); |
| | | }); |
| | | } else { |
| | | this.$message.warning("请先选择要删除的项"); |
| | | } |
| | | }, |
| | | handlebingChange(selection) { |
| | | this.bingshiall = []; |
| | | this.bingshiall = selection; |
| | | }, |
| | | handlezzChange(val) { |
| | | // 更新选中的项 |
| | | this.selectedZhiyezz = val; |
| | | }, |
| | | handlezhiyeChange(selection) { |
| | | this.chageall = []; |
| | |
| | | this.form = response.data; |
| | | }); |
| | | }, */ |
| | | submitForm() { |
| | | /* submitForm() { |
| | | this.$refs.form.validate((valid) => { |
| | | if (valid) { |
| | | this.$emit('submitLoading', true); |
| | |
| | | this.$message.error("请检查表单内容"); |
| | | } |
| | | }); |
| | | } |
| | | } */ |
| | | |
| | | submitForm() { |
| | | this.$refs.form.validate((valid) => { |
| | | if (valid) { |
| | | this.$emit("submitLoading", true); |
| | | // this.form.medicalHistory =this.form.mediHistory |
| | | const selected = this.form.mediHistoryq || []; |
| | | |
| | | this.form.medicalHistory = selected.map((name) => { |
| | | const match = this.rulesList.find((item) => item.id === name); |
| | | // console.log(match); |
| | | |
| | | return { |
| | | icdname: match.icdname, |
| | | id: match ? match.id : "", |
| | | }; |
| | | }); |
| | | console.log(this.form.medicalHistory, 1236); |
| | | |
| | | updateHistory(this.form) |
| | | .then((response) => { |
| | | this.$message.success("修改成功"); |
| | | // this.form = response.data; // 更新表单数据 |
| | | |
| | | Object.assign(this.form, response.data); |
| | | |
| | | const splitIds = response.data.medicalHistoryIds.split(","); |
| | | this.form.medicalHistoryOther = response.data.medicalHistoryOther; |
| | | this.form.mediHistoryq = splitIds; |
| | | }) |
| | | .catch((error) => { |
| | | this.$message.error("修改失败"); |
| | | }) |
| | | .finally(() => { |
| | | this.$emit("submitLoading", false); |
| | | }); |
| | | } else { |
| | | this.$message.error("请检查表单内容"); |
| | | } |
| | | }); |
| | | }, |
| | | }, |
| | | }; |
| | | </script> |
| | |
| | | } |
| | | |
| | | /* 调整下拉框位置和层级 */ |
| | | .el-select-dropdown{ |
| | | position: absolute !important; |
| | | top: 30px !important; |
| | | left: 0px !important; |
| | | } |
| | | |
| | | .el-select-dropdown { |
| | | position: absolute !important; |
| | | top: 30px !important; |
| | | left: 0px !important; |
| | | } |
| | | </style> |