123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257125812591260126112621263126412651266126712681269127012711272127312741275127612771278127912801281128212831284128512861287128812891290129112921293129412951296129712981299130013011302130313041305130613071308130913101311131213131314131513161317131813191320132113221323132413251326132713281329133013311332133313341335133613371338133913401341134213431344134513461347134813491350135113521353135413551356135713581359136013611362136313641365136613671368136913701371137213731374137513761377137813791380138113821383138413851386138713881389139013911392139313941395139613971398139914001401140214031404140514061407140814091410141114121413141414151416141714181419142014211422142314241425142614271428142914301431143214331434143514361437143814391440144114421443144414451446144714481449145014511452145314541455145614571458145914601461146214631464146514661467146814691470147114721473147414751476147714781479148014811482148314841485148614871488148914901491149214931494149514961497149814991500150115021503150415051506150715081509151015111512151315141515151615171518151915201521152215231524152515261527152815291530153115321533153415351536153715381539154015411542154315441545154615471548154915501551155215531554155515561557155815591560156115621563156415651566156715681569157015711572157315741575157615771578 |
- <template>
- <div class="app-container">
- <el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="70px">
- <el-row>
- <el-col :span="24">
- <el-row>
- <el-col :span="6">
- <el-form-item label="身份证号" prop="idCard">
- <el-input v-model="queryParams.idCard" placeholder="请输入身份证号码" style="width:200px;" clearable @keyup.enter.native="handleQuery" />
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <el-form-item label="姓名" prop="userName">
- <el-input v-model="queryParams.userName" placeholder="请输入姓名" style="width:200px;" clearable @keyup.enter.native="handleQuery" />
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <el-form-item label="联系号码" prop="phoneNum">
- <el-input v-model="queryParams.phoneNum" placeholder="请输入联系号码" style="width:190px;"clearable @keyup.enter.native="handleQuery" />
- </el-form-item>
- </el-col>
- <el-col :span="6">
- <el-form-item label="年龄阶段" >
- <el-select v-model="queryParams.params.age" placeholder="年龄阶段" style="width:190px;" clearable>
- <el-option v-for="dict in angesList" :key="dict.dictValue" :label="dict.dictLabel" :value="dict.dictValue" />
- </el-select>
- </el-form-item>
- </el-col>
- </el-row>
- </el-col>
- <el-col :span="24">
- <el-row>
- <el-col :span="12" class="jehak">
- <el-form-item label="居住地址" prop="villagerGroup">
- <el-cascader
- placeholder="点击选择居住地址"
- :options="optionsList"
- filterable
- @change="chahetwo"
- :props="optionPropsss"
- style="width: 140%;"
- @keyup.enter.native="handleQuery"
- clearable
- ref = "cdd"
- v-model="listd"
- @active-item-change="handleItemChange"
- ></el-cascader>
- </el-form-item>
- </el-col>
- <el-col :span="8" class="jehak">
- <el-form-item label="户籍地址" prop="villagerGroup">
- <el-cascader
- placeholder="点击选择户籍地址"
- :options="options"
- filterable
- @change="chahetwo"
- :props="optionPropstwo"
- style="width: 125%;"
- @keyup.enter.native="handleQuery"
- clearable
- ></el-cascader>
- </el-form-item>
- </el-col>
- <el-col :span="4" >
- <el-form-item>
- <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
- <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
- </el-form-item>
- </el-col>
- </el-row>
- </el-col>
- <el-col :span="24">
- <el-row>
- </el-row>
- </el-col>
- </el-row>
- </el-form>
- <!-- <el-row :gutter="10" class="mb8">
- <el-col :span="1.5">
- <el-button type="warning" plain icon="el-icon-edit" size="mini" :disabled="multiple" @click="handleDeletehy" >还原</el-button>
- </el-col>
- <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
- </el-row> -->
- <el-table v-loading="loading" :data="infoList" @selection-change="handleSelectionChange" stripe style="width: 100%" :height="tableMaxHeight">
- <el-table-column type="selection" width="55" align="center" />
- <el-table-column label="姓名" align="center" prop="userName" fixed width="100px"/>
- <el-table-column label="联系方式" align="center" prop="phoneNum" width="110" />
- <el-table-column label="身份证号码" align="center" prop="idCard" width="180" />
- <el-table-column label="户籍地址" align="center" prop="domicileSelect" width="280" />
- <!-- nowInSelect -->
- <el-table-column label="居住地址" align="center" prop="nowInSelect" />
- <el-table-column label="是否户主" align="center" prop="houseType" width="90" />
- <el-table-column label="删除人" align="center" prop="updateBy" width="90" />
- <el-table-column label="删除时间" align="center" prop="updateTime" width="160" />
- <el-table-column label="操作" align="left" class-name="small-padding fixed-width" fixed="right" width="80" >
- <template slot-scope="scope">
- <el-button size="mini" type="text" icon="el-icon-edit" @click="handleDeletehy(scope.row)" class="hueya" >
- 还原
- </el-button>
- </template>
- </el-table-column>
- </el-table>
- <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @pagination="getList" />
- <!-- 添加或修改疫苗信息对话框 -->
- <el-dialog :title="title" :visible.sync="opens" width="1240px" append-to-body>
- <el-form ref="form" :model="form" :rules="rules" label-width="100px">
- <el-row>
- <el-col :span="8">
- <el-form-item label="身份证号" prop="idCard"><el-input v-model="form.idCard" placeholder="请输入身份证号码" @blur="idcde" /></el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="姓名" prop="userName"><el-input v-model="form.userName" placeholder="请输入姓名" /></el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="性别" prop="gender">
- <!-- <el-input v-model="form.gender" placeholder="请输入性别" /> -->
- <el-select v-model="form.gender" placeholder="性别" clearable style="width: 100%;">
- <el-option v-for="dict in statusOptions" :key="dict.dictValue" :label="dict.dictLabel" :value="dict.dictValue" />
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="24">
- <el-row>
- <el-col :span="8">
- <el-form-item label="联系号码" prop="phoneNum"><el-input v-model="form.phoneNum" placeholder="请输入联系号码" /></el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="人员分类" prop="keyIndustries">
- <el-select v-model="form.keyIndustries" placeholder="人员分类" clearable style="width: 100%;">
- <el-option v-for="dict in typeOptionsname" :key="dict.dictValue" :label="dict.dictLabel" :value="dict.dictValue" />
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="8">
- <el-form-item label="年龄" prop="age"><el-input v-model="form.age" placeholder="请输入年龄" /></el-form-item>
- </el-col>
- </el-row>
- </el-col>
- <el-col :span="24">
- <el-row>
- <el-col :span="12">
- <el-form-item label="户籍地址" prop="villageTowns">
- <!-- <el-input v-model="form.villageTowns" type="textarea" placeholder="请输入内容" /> -->
- <!-- <treeselect v-model="form.parentId" :options="deptOptionstwo" :normalizer="normalizer" :flat="true" :maxHeight="150" @select="djieskle" :multiple=true placeholder="点击选择户籍地" /> -->
- <el-cascader
- placeholder="点击选择户籍地址"
- :options="options"
- :filterable="true"
- separator="/"
- @change="chahe"
- v-model="villageTownshy"
- :props="optionProps"
- style="width: 100%;"
- ref="myCascader"
- ></el-cascader>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="详细地址" prop="domicile"><el-input v-model="form.domicile" type="input" placeholder="请输入户籍详细地址" /></el-form-item>
- </el-col>
- </el-row>
- </el-col>
- <el-col :span="12">
- <el-form-item label="居住地址" prop="province">
- <!-- <area-select
- type="text"
- v-model="selected"
- v-if="jue"
- :data="$pcaa"
- :level="2"
- style="display: flex;line-height: 18px;"
- @change="onSelected"
- class="hues"
- ></area-select> -->
- <!-- <el-cascader
- placeholder="点击选择居住地址"
- :options="optionsList"
- filterable
- @change="chahetwo"
- :props="optionPropsss"
- style="width: 130%;"
- @keyup.enter.native="handleQuery"
- clearable
- ref = "cdd"
- v-model="list"
- ></el-cascader> -->
- <el-cascader
- :placeholder="nhdyesfgh"
- :options="optionsList"
- :filterable="true"
- separator="/"
- @change="onSelected"
- v-model="selected"
- :props="optionPropsss"
- style="width: 100%;"
- ref="myCascaderf"
- @active-item-change="handleItemChange"
- :class="[nhdyesfgh == '点击选择居住地址' ? '' : 'placf']"
- ></el-cascader>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="详细地址" prop="nowIn"><el-input v-model="form.nowIn" type="input" placeholder="请输入内容" /></el-form-item>
- </el-col>
- <el-col :span="24">
- <el-col :span="12">
- <el-form-item label="户主" prop="houseType">
- <el-select v-model="form.houseType" placeholder="户主" clearable style="width: 100%;" @change="changese">
- <el-option v-for="dict in typeOptionshuuj" :key="dict.dictValue" :label="dict.dictLabel" :value="dict.dictValue" />
- </el-select>
- </el-form-item>
- </el-col>
- <el-col :span="12">
- <el-form-item label="户编号" prop="code">
- <el-input v-model="form.code" placeholder="请输入户主编号"/>
- <!-- :disabled="nhe" -->
- </el-form-item>
- </el-col>
- </el-col>
- </el-row>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="submitForm">确 定</el-button>
- <el-button @click="cancel">取 消</el-button>
- </div>
- </el-dialog>
- <!-- 图片预览 -->
- <el-dialog :close-on-click-modal="false" title="删除原因" :visible.sync="imashow" width="800px" append-to-body >
- <el-form ref="formgt" :model="formgt" :rules="ruleshy" label-width="100px" style="padding-bottom: 30px;">
- <el-form-item label="删除原因:" prop="houseType">
- <el-select v-model="formgt.houseType" placeholder="请选择删除原因" clearable style="width: 100%;">
- <el-option v-for="dict in typeOptions" :key="dict.dictValue" :label="dict.dictLabel" :value="dict.dictValue" />
- </el-select>
- </el-form-item>
- </el-form>
- <div slot="footer" class="dialog-footer">
- <el-button type="primary" @click="submitFormfr">确 定</el-button>
- <el-button @click="cancel">取 消</el-button>
- </div>
- </el-dialog>
- <el-dialog :close-on-click-modal="false" title="查看信息" :visible.sync="jiezhong" width="1200px" append-to-body class="ojhgy">
- <el-table :data="jiezheList" stripe style="width: 100%">
- <el-table-column label="疫苗名称" align="center" prop="vaccineName" />
- <el-table-column label="剂次" align="center" prop="jici" />
- <el-table-column label="接种时间" align="center" prop="vaccinationTime" width="180">
- <template slot-scope="scope">
- <span>{{ scope.row.vaccinationTime }}</span>
- </template>
- </el-table-column>
- <el-table-column label="接种地点" align="center" prop=".vaccinationPlace" />
- </el-table>
- </el-dialog>
- </div>
- </template>
- <script>
- import { listInfo, getInfo, delInfo, addInfo, updateInfo, exportInfo, listRoleer, idces, delInfort,yiaoe,exportConfig,exportConfigtyr,importLog,listInfotj,listRoleergth,delInfohy } from '@/api/system/bin';
- import { treeselect } from '@/api/system/dept';
- import Treeselect from '@riophae/vue-treeselect';
- import { getToken } from '@/utils/auth';
- import '@riophae/vue-treeselect/dist/vue-treeselect.css';
- export default {
- name: 'Info',
- components: { Treeselect },
- data() {
- return {
- // 遮罩层
- loading: true,
- // 选中数组
- ids: [],
- // 非单个禁用
- single: true,
- // 非多个禁用
- multiple: true,
- // 显示搜索条件
- showSearch: true,
- // 总条数
- total: 0,
- ruleshy:{},
- // 疫苗信息表格数据
- infoList: [],
- dialogImageUrl: '',
- // 弹出层标题
- title: '',
- // 是否显示弹出层
- opens: false,
- tableMaxHeight:300,
- process: process.env.VUE_APP_BASE_API,
- // 查询参数
- queryParams: {
- pageNum: 1,
- pageSize: 10,
- villageTowns: null,
- village: null,
- villagerGroup: null,
- houseType: null,
- province: null,
- city: null,
- userName: null,
- isDel:"Y",
- gender: null,
- idCard: null,
- phoneNum: null,
- keyIndustries: null,
- isVaccination: null,
- vaccineName: null,
- vaccinationTime: null,
- vaccinationPlace: null,
- contraindication: null,
- params:{
- age:''
- }
- },
- config: [],
- comfietg:[],
- configther:[],
- configfor:[],
- // 表单参数
- form: {
- nowIn: '',
- age:'',
- code:'',
- vaccineInfoUserList: [
- {
- vaccineName: '',
- vaccinationTime: '',
- vaccinationPlace: '',
- jici: '',
- progress: '',
- url:null,
- disableg:false
- }
- ]
- },
- // 用户导入参数
- upload: {
- // 是否显示弹出层(用户导入)
- opens: false,
- // 弹出层标题(用户导入)
- title: "",
- // 是否禁用上传
- isUploading: false,
- // 是否更新已经存在的用户数据
- updateSupport: 0,
- // 设置上传的请求头部
- headers: { Authorization: "Bearer " + getToken() },
- // 上传的地址
- url: process.env.VUE_APP_BASE_API + "/boman-web-core//file/common/importYmjz"
- },
- // 表单校验
- rules: {
- province: [{ required: true, message: '居住地址不能为空', trigger: 'blur' }],
- idCard: [{ required: true, message: '身份证号码不能为空', trigger: 'blur' }],
- userName: [{ required: true, message: '姓名不能为空', trigger: 'blur' }],
- villageTowns:[{ required: true, message: '户籍地址不能为空或不能只选潜山市', trigger: 'blur' }],
- },
- selected: [12, 340800000000, 340882000000, 340882100000, 340882100002],
- selectedtwo: [],
- statusOptions: [
- {
- dictValue: '女',
- dictLabel: '女'
- },
- {
- dictValue: '男',
- dictLabel: '男'
- }
- ],
- statusOptionstue: [
- {
- dictValue: '已完成',
- dictLabel: '已完成'
- },
- {
- dictValue: '未完成',
- dictLabel: '未完成'
- }
- ],
- typeOptionshuuj: [
- {
- dictValue: '是',
- dictLabel: '是'
- },
- {
- dictValue: '否',
- dictLabel: '否'
- }
- ],
- deptOptionstwo: [],
- options: [],
- optionss:[],
- optionsList: [],
- optionProps: {
- value: 'label',
- label: 'label',
- children: 'children',
- checkStrictly: true
- },
- optionPropsss: {
- value: 'areaId',
- label: 'name',
- checkStrictly: true,
- lazy: true,
- lazyLoad: this.lazyLoads,
- leaf: "leaf"
- },
- optionPropstwo: {
- value: 'id',
- label: 'label',
- children: 'children',
- checkStrictly: true
- },
- heuiq: [],
- typeOptions: [],
- typeOptionsty: [
- {
- dictValue: '是',
- dictLabel: '是'
- },
- {
- dictValue: '否',
- dictLabel: '否'
- }
- ],
- typeOptionstyzandeh:[],
- angesList: [
- ],
- typeOptionsname: [],
- typeOptionstimes: [],
- typeOptionsvaccinatio: [],
- typeOptionscont: [],
- typeOptionscontty: [],
- typeOptionscontqit:[],
- // 剂次
- typeOptionstimesgt: [
- {
- dictValue: '1',
- dictLabel: '1'
- },
- {
- dictValue: '2',
- dictLabel: '2'
- },
- {
- dictValue: '3',
- dictLabel: '3'
- },
- {
- dictValue: '加强针',
- dictLabel: '加强针'
- }
- ],
- imashow: false,
- naneme: false,
- shouwes: false,
- shouwestwo:false,
- villageTownshy: undefined,
- naiseurya: '',
- hsuej: '',
- jdourdjoaj: false,
- jiezhong: false,
- jiezheList: [],
- fireLise:{config:[]},
- nameutaiL:0,
- jue:false,
- nhue:true,
- exportflag:true,
- errorlog:false,
- errorList:[],
- idfer:0,
- formgt:{},
- list: [],
- listd:[],
- dneyhsd:{},
- nhdyesfgh:'点击选择居住地址',
- nhe:false
- };
- },
- created() {
- this.getList();
- this.getTreeselectjue();
- this.mnyesfjer(0)
- this.getTreeselectjuetj()
- // 重点行业
- this.getDicts('person_type').then(response => {
- this.typeOptions = response.data;
- });
- // 疫苗名称
- this.getDicts('renyuanfenlei').then(response => {
- this.typeOptionsname = response.data;
- });
- // 年龄阶段
- this.getDicts('age_interval').then(response => {
- this.angesList = response.data;
- });
- window.onresize = () => {
- this.changeTableMaxHeight()
- }
- this.changeTableMaxHeight()
- // this.form.province = this.selected[0];
- // this.form.city = this.selected[1];
- // this.form.region = this.selected[2];
- console.log(this.selected,456)
- // this.queryParams.province = this.selectedtwo[0];
- // this.queryParams.city = this.selectedtwo[1];
- // this.queryParams.region = this.selectedtwo[2];
- // this.naiseurya = this.form.province + this.form.city + this.form.region;
- },
- mounted() {
- console.log(136)
- window.onresize = () => {
- this.changeTableMaxHeight()
- }
- this.changeTableMaxHeight()
- },
- methods: {
- onSelected(data) {
- console.log(data, 125);
- console.log(this.$refs['myCascaderf'].getCheckedNodes()[0].pathLabels)
- // province
- let nhdye = []
- nhdye = this.$refs['myCascaderf'].getCheckedNodes()[0].pathLabels
- // id
- // this.form.province = data[0];
- // this.form.city = data[1];
- // this.form.region = data[2];
- // 名称
- this.form.province = nhdye[0];
- this.form.city = nhdye[1];
- this.form.region = nhdye[2];
- this.form.residenceTown = nhdye[3];
- this.form.residenceVillage = nhdye[4];
- this.naiseurya = this.form.province + this.form.city + this.form.region;
- if (this.jdourdjoaj == false) {
- // 修改
- this.form.nowIn = '';
- }
- // this.form.nowIn = undefined
- // this.form.villageTowns = data[3]
- },
- dakousr() {
- console.log(2345);
- },
- mnyesfjer(index){
- this.loading = true;
- let pids = {}
- pids.pid = index
- listRoleergth(pids).then(response => {
- this.optionsList = this.handleData(response.data);
- this.loading = false;
- });
- },
- // // 模拟请求一级节点
- // getfristChild() {
- // return [
- // {
- // label: "第一个",
- // hasChdild: true,
- // leaf: false,
- // pid: null,
- // value: "1",
- // },
- // {
- // label: "第2个",
- // hasChdild: true,
- // leaf: false,
- // pid: null,
- // value: "2",
- // },
- // {
- // label: "第3个",
- // hasChdild: true,
- // leaf: true,
- // pid: null,
- // value: "3",
- // },
- // ];
- // },
- // // 模拟请求子级节点
- // getOther(value) {
- // let res = [];
- // if (value == 1) {
- // res = [
- // {
- // label: "第一个1",
- // hasChdild: false,
- // pid: 1,
- // value: "11",
- // leaf: false, // 差别: 这里加了是否叶子节点属性,后面都加了
- // },
- // {
- // label: "第一个2",
- // hasChdild: false,
- // pid: 1,
- // value: "12",
- // leaf: false,
- // },
- // ];
- // }
- // if (value == 2) {
- // res = [
- // {
- // label: "第2个1",
- // hasChdild: false,
- // pid: 2,
- // leaf: true,
- // value: "5",
- // },
- // {
- // label: "第2个2",
- // hasChdild: false,
- // leaf: true,
- // pid: 2,
- // value: "6",
- // },
- // ];
- // }
- // if (value == 11) {
- // res = [
- // {
- // label: "第3个1",
- // hasChdild: false,
- // pid: 2,
- // leaf: true,
- // value: "111",
- // },
- // {
- // label: "第3个2",
- // hasChdild: false,
- // leaf: true,
- // pid: 2,
- // value: "112",
- // },
- // ];
- // }
- // return res;
- // },
- // // 模拟请求一级节点
- // getfristChild() {
- // return [
- // {
- // label: "第一个",
- // hasChdild: true,
- // pid: null,
- // value: "1",
- // },
- // {
- // label: "第2个",
- // hasChdild: true,
- // pid: null,
- // value: "2",
- // },
- // {
- // label: "第3个",
- // hasChdild: true,
- // pid: null,
- // value: "3",
- // },
- // ];
- // },
- // // 模拟请求子级节点
- // getOther(value) {
- // let res = [];
- // if (value == 1) {
- // res = [
- // {
- // label: "第一个1",
- // hasChdild: false,
- // pid: 1,
- // value: "3",
- // },
- // {
- // label: "第一个2",
- // hasChdild: false,
- // pid: 1,
- // value: "4",
- // },
- // ];
- // }
- // if (value == 2) {
- // res = [
- // {
- // label: "第2个1",
- // hasChdild: false,
- // pid: 2,
- // value: "5",
- // },
- // {
- // label: "第2个2",
- // hasChdild: false,
- // pid: 2,
- // value: "6",
- // },
- // ];
- // }
- // return res;
- // },
- // lazyLoads(node, resolve){
- // if (node.level == 0) {
- // console.log(node,2547);
- // if (this.list.length > 0) {
- // // 存在回显的id我们才去设置回显
- // let res = this.format(); // 这里就是获取第一次要回显的内容了
- // console.log("00000", res);
- // this.optionsList = res; // 有回显第一次就直接给绑定的对象,不要resolve
- // } else {
- // let res = this.getfristChild(); // 不存在就默认加载第一集节点
- // console.log(res,67)
- // resolve(res);
- // }
- // } else {
- // // 记录选择的,不然会点击字节点加载时丢失数据
- // let list = this.list;
- // // 有children属性了就不要再请求了,不然字节点会重复
- // if (!node.data.children) {
- // // 获取子节点数据
- // let res = this.getOther(node.data.value);
- // setTimeout(() => {
- // // 模拟延时,实际不需要
- // resolve(res);
- // }, 100);
- // } else {
- // resolve([]);
- // }
- // // 重新把选择的id放回来-
- // // this.$nextTick(() => {
- // // this.list = [...new Set([...this.list, ...list])]; //差别: 合并并且去重
- // // });
- // setTimeout(() => {
- // this.list = [...new Set([...this.list, ...list])]; //差别: 合并并且去重
- // }, 250);
- // }
- // },
- // lazyLoads(node, resolve) {
- // console.log(node)
- // if (node.level == 0) {
- // let res = this.mnyesfjer(0); // 不存在就默认加载第一集节点
- // resolve(res);
- // } else {
- // // 有children属性了就不要再请求了,不然字节点会重复
- // // if (!node.data.children) {
- // // 获取子节点数据
- // let res = this.mnyesfjer(node.data.areaId);
- // console.log(node.children)
- // let nfhh = node.children.push(res)
- // setTimeout(() => {
- // resolve(nfhh);
- // }, 200);
- // // } else {
- // // resolve([]);
- // // }
- // }
- // },
- format() {
- let res = this.getfristChild(); // 拿一级数据
- this.list.forEach((item) => {
- // 遍历回显的id 二维数组
- if (item.length > 1) {
- item.forEach(async (sitem, index) => {
- if (index == item.length - 1) {
- return; // 如果是一级节点就不用查找了
- }
- let arr = this.getOther(sitem); // 不是一级,获取子级
- this.findItem(res, arr, sitem); // 判断当前拿到的子级数据属于哪个一级数据下的子级,并且加到当前一级的children属性下
- });
- }
- });
- },
- // 递归判断
- findItem(res, arr, id) {
- for (let i = 0; i < res.length; i++) {
- if (res[i].value === id) {
- res[i].children = arr; // 有chidlren 也要判断是不是这个children下的子级
- return res;
- }
- if (res[i].children) {
- this.findItem(res[i].children, arr, id);
- }
- }
- return res;
- },
- // getAddress() {
- // this.mnyesfjer(0).then(res => {
- // this.optionsList = this.handleData(res.data);
- // }).catch(err => {
- // })
- // },
- handleItemChange(val) {
- console.log(val,235)
- let code = val ? val[val.length - 1] : ''; //需请求数据的上级地址的code值
- let level = val.length + 1; //需请求第几级地址
- this.optionsList = this.handleData(this.optionsList, code, level);
- },
- handleData(data, val, level) {
- console.log(data,val,level)
- for (let i = 0; i < data.length; i++) {
- if(!data[i].children) {
- this.$set(data[i], 'children', []);
- }
- if(data[i].areaId === val){
- let vfer = {}
- vfer.pid = val
- listRoleergth(vfer).then(res => {
- if(res.data.length) {
- data[i].children = res.data;
- data[i].children.forEach(ele => {
- this.$set(ele, 'children', [])
- });
- }else {
- data[i].children = undefined;
- }
- }).catch(err => {
- });
- }else {
- if(data[i].children.length){
- this.handleData(data[i].children,val,level)
- }
- }
- }
- return data;
- },
- onSelectedtwo(data) {
- console.log(data);
- // province
- this.queryParams.province = data[0];
- this.queryParams.city = data[1];
- this.queryParams.region = data[2];
- // this.queryParams.villageTowns = data[3]
- },
- /** 查询疫苗信息列表 */
- getList() {
- this.loading = true;
- listInfo(this.queryParams).then(response => {
- this.infoList = response.rows;
- this.total = response.total;
- this.loading = false;
- });
- },
- getToken() {
- return getToken();
- },
- getTreeselectjue() {
- this.loading = true;
- let pids = {}
- pids.pid = 0
- listRoleer().then(response => {
- this.options = response.data;
- this.loading = false;
- });
- },
- // 统计数据
- getTreeselectjuetj() {
- this.loading = true;
- listInfotj().then(response => {
- this.dneyhsd = response.data
- this.loading = false;
- });
- },
- /** 转换角色数据结构 */
- normalizer(node) {
- // if (node.children && !node.children.length) {
- // delete node.children;
- // }
- return {
- id: node.id,
- label: node.roleName
- };
- },
- // 点击组/角色
- djieskle(node, instanceId) {
- // this.personnel(node.id);
- console.log(node, instanceId);
- },
- // 身份证
- idcde(event) {
- console.log(event);
- // 身份证号码为15位或者18位,15位时全为数字,18位前17位为数字,最后一位是校验位,可能为数字或字符X
- let reg = /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/;
- if (reg.test(this.form.idCard)) {
- this.idea();
- // this.go(this.form.idCard.length);
- // callback()
- } else {
- // callback(new Error('身份证号码不正确'))
- this.msgInfo('身份证号码不正确');
- }
- },
- // 实现自动生成生日,性别,年龄
- go(val) {
- let iden = this.form.idCard;
- let sex = null;
- let birth = null;
- let birthr = '';
- let myDate = new Date();
- let month = myDate.getMonth() + 1;
- let day = myDate.getDate();
- let age = 0;
- if (val === 18) {
- age = myDate.getFullYear() - iden.substring(6, 10) - 1;
- sex = iden.substring(16, 17);
- birth = iden.substring(6, 10) + '-' + iden.substring(10, 12) + '-' + iden.substring(12, 14);
- if (iden.substring(10, 12) < month || (iden.substring(10, 12) == month && iden.substring(12, 14) <= day)) age++;
- }
- if (val === 15) {
- age = myDate.getFullYear() - iden.substring(6, 8) - 1901;
- sex = iden.substring(13, 14);
- birth = '19' + iden.substring(6, 8) + '-' + iden.substring(8, 10) + '-' + iden.substring(10, 12);
- if (iden.substring(8, 10) < month || (iden.substring(8, 10) == month && iden.substring(10, 12) <= day)) age++;
- }
- if (sex % 2 === 0) sex = '女';
- else sex = '男';
- this.form.gender = sex;
- // this.baseInfo.age = age;
- birthr = birth + '';
- console.log(birthr);
- // this.form.birthday = birthr;
- // this.$set(this.form.birthday, birthr)
- // this.baseInfo.birthplace = this.area[iden.substring(0,2)];
- },
- // 请求身份证数据
- idea() {
- idces({ idCard: this.form.idCard }).then(response => {
- console.log(response);
- this.form.gender = response.data.gender;
- // this.form.birthday = response.data.birthday;
- this.form.age = response.data.age
- this.form.code = response.data.code
- if (response.data.userName == null) {
- this.form.userName = undefined;
- } else {
- this.form.userName = response.data.userName;
- }
- });
- },
- // 取消按钮
- cancel() {
- this.opens = false;
- this.jiezhong = false;
- this.imashow = false;
- this.errorlog=false;
- this.reset();
- },
- gywoa() {
- console.log(this.form.isVaccination);
- if (this.form.isVaccination !== null) {
- if (this.form.isVaccination == '是') {
- // 接种疫苗
- this.naneme = false,
- this.shouwes = true;
- }else {
- this.naneme = true,
- this.shouwes = false,
- this.form.vaccineInfoUserList = [{
- vaccineName: '',
- vaccinationTime: '',
- vaccinationPlace: '',
- jici: '',
- progress: '',
- url:null
- }
- ]
- }
- }
- },
- gywoatwo() {
- console.log(this.queryParams.isVaccination);
- if (this.queryParams.isVaccination !== null) {
- if (this.queryParams.isVaccination == '是') {
- // 接种疫苗
- // (this.naneme = false), (this.shouwes = true);
- this.shouwestwo = false
- } else {
- // (this.naneme = true), (this.shouwes = false);
- this.shouwestwo = true
- }
- }
- },
- // 表单重置
- reset() {
- this.form = {
- id: null,
- villageTowns: null,
- village: null,
- age:'',
- code:'',
- villagerGroup: null,
- houseType: null,
- domicile: null,
- province: null,
- city: null,
- region: null,
- userName: null,
- isDel:"Y",
- gender: null,
- idCard: null,
- phoneNum: null,
- keyIndustries: null,
- isVaccination: null,
- vaccinationPlace: null,
- contraindication: null,
- nowIn: '',
- remark: null,
- residenceTown:null,
- residenceVillage:null
- };
- this.resetForm('form');
- },
- /** 搜索按钮操作 */
- handleQuery() {
- this.queryParams.pageNum = 1;
- console.log(this.queryParams)
- this.getList();
- },
- /** 重置按钮操作 */
- resetQuery() {
- this.nhue = false
- this.selectedtwo = []
- setTimeout( ()=>{
- this.nhue = true
- },100)
- this.queryParams.province = undefined;
this.queryParams.city = undefined;
this.queryParams.region = undefined;
- this.queryParams.deptId = undefined
- this.listd = []
- this.resetForm('queryForm');
- this.handleQuery();
- },
- // 多选框选中数据
- handleSelectionChange(selection) {
- this.ids = selection.map(item => item.id);
- this.single = selection.length !== 1;
- this.multiple = !selection.length;
- },
- /** 新增按钮操作 */
- handleAdd() {
- this.reset();
- this.opens = true;
- (this.naneme = false),
- (this.shouwes = false);
- this.selected = ['安徽省', '安庆市', '潜山市'],
- this.form.province = this.selected[0];
- this.villageTownshy = '';
- this.naiseurya = '';
- this.hsuej = '';
- this.form.city = this.selected[1];
- this.form.region = this.selected[2];
- this.title = '添加常住人口';
- this.jdourdjoaj = true;
- this.jue = true
- this.form.province = '安徽省';
- this.form.city = '安庆市';
- this.form.region = '潜山市';
- this.form.residenceTown = '梅城镇';
- this.form.residenceVillage = '龙井社区';
- this.nhdyesfgh = this.form.province + '/' + this.form.city + '/' + this.form.region + '/' + this.form.residenceTown + '/' + this.form.residenceVillage;
- console.log(this.form)
- },
- /** 修改按钮操作 */
- handleUpdate(row) {
- this.reset();
- const id = row.id || this.ids;
- getInfo(id).then(response => {
- this.form = response.data;
- this.jue = false
- if(response.data.province !== null && response.data.province !== ""){
- this.nhdyesfgh = response.data.province;
- if(response.data.city !== null && response.data.city !== ""){
- this.nhdyesfgh = response.data.province + '/' + response.data.city;
- if(response.data.region !== null && response.data.region !== ""){
- this.nhdyesfgh = response.data.province + '/' + response.data.city + '/' + response.data.region;
- if(this.form.residenceTown !==null && this.form.residenceTown !=='' && this.form.residenceTown !== undefined){
- this.nhdyesfgh = response.data.province + '/' + response.data.city + '/' + response.data.region + '/' + this.form.residenceTown;
- if(this.form.residenceVillage !==null && this.form.residenceVillage !=='' && this.form.residenceVillage !== undefined){
- this.nhdyesfgh = response.data.province + '/' + response.data.city + '/' + response.data.region + '/' + this.form.residenceTown + '/' + this.form.residenceVillage;
- }
- }
- }else{
- // this.nhdyesfgh ='点击选择居住地址'
- }
- }else{
- // this.nhdyesfgh ='点击选择居住地址'
- }
- }else{
- this.nhdyesfgh ='点击选择居住地址'
- }
- // if(response.data.province !== null){
- // this.selected[0] = response.data.province;
- // }else{
- // this.selected[0] ='安徽省'
- // }
- // if(response.data.city !== null){
- // this.selected[1] = response.data.city;
- // }else{
- // this.selected[1] = '安庆市'
- // }
- // if(response.data.region !== null){
- // this.selected[2] = response.data.region;
- // }else{
- // this.selected[2] = '潜山市'
- // }
- // this.onSelected(this.selected)
- setTimeout( ()=>{
- this.jue = true
- },100)
- // this.jue = true
- console.log(this.selected,98767)
- // if(this.form){
- if (this.form.isVaccination !== null) {
- if (this.form.isVaccination == '是') {
- // 接种疫苗
- (this.naneme = false), (this.shouwes = true);
- } else {
- (this.naneme = true), (this.shouwes = false);
- }
- } else {
- this.naneme = false;
- this.shouwes = false;
- }
- if (this.form.dictValue !== null && this.form.dictValue !== undefined) {
- this.jicheru(this.form.dictValue);
- }
- if (this.form.villageTowns !== null) {
- this.villageTownshy = this.form.villageTowns;
- if (this.form.village !== null) {
- this.villageTownshy = this.form.village;
- if (this.form.villagerGroup !== null) {
- this.villageTownshy = this.form.villagerGroup;
- }
- }
- }else{
- this.villageTownshy = '';
- }
- console.log(this.villageTownshy,3455)
- if (this.form.vaccineInfoUserList !== null) {
- if (this.form.vaccineInfoUserList.length == 0) {
- }else {
- this.form.isVaccination = '是'
- this.form.vaccineInfoUserList.filter(router =>{
- if(router.url == undefined){
- router.url = null
- }else if(router.url == []){
- router.url = null
- }
- router.disableg = true
- })
- }
- }
- // villageTownshy
- // }
- // this.heuiq.push()
- this.naiseurya = '';
- this.hsuej = '';
- this.opens = true;
- this.jdourdjoaj = false;
- this.title = '查看编辑常住人口';
- });
- },
- chahe(data) {
- console.log(data);
- // let labelValue = this.$refs['myCascader'].inputValue
- // console.log(labelValue)
- console.log(this.$refs['myCascader'])
- this.form.villageTowns = data[1];
- this.form.village = data[2];
- this.form.villagerGroup = data[3];
- if (this.form.villageTowns !== undefined) {
- this.hsuej = this.form.villageTowns;
- if (this.form.village !== undefined) {
- this.hsuej = this.form.villageTowns + this.form.village;
- if (this.form.villagerGroup !== undefined) {
- this.hsuej = this.form.villageTowns + this.form.village + this.form.villagerGroup;
- }
- }
- }
- this.form.domicile = '';
- // if(this.jdourdjoaj == true){
- // //新增
- // this.form.nowIn = this.hsuej
- // }else{
- // this.form.nowIn != this.hsuej
- // }
- },
- chahetwo(data) {
- console.log(data)
- // this.queryParams.villageTowns = data[1];
- // this.queryParams.village = data[2];
- // this.queryParams.villagerGroup = data[3];
- this.queryParams.deptId = data[ data.length - 1]
- },
- /** 提交按钮 */
- submitForm() {
- this.$refs['form'].validate(valid => {
- console.log(this.selected);
- if (valid) {
- if (this.form.id != null) {
- // this.form.nowIn = this.naiseurya + this.form.nowIn;
- // this.form.domicile = this.hsuej + this.form.domicile;
- updateInfo(this.form).then(response => {
- this.msgSuccess('修改成功');
- this.opens = false;
- this.getList();
- });
- } else {
- // this.form.nowIn = this.naiseurya + this.form.nowIn;
- // this.form.domicile = this.hsuej + this.form.domicile;
- // if (this.form.nowIn == 'undefined') {
- // this.form.nowIn = null;
- // }
- console.log(this.form)
- // return
- addInfo(this.form).then(response => {
- this.msgSuccess('新增成功');
- this.opens = false;
- this.getList();
- });
- }
- }
- });
- },
- /** 删除按钮操作 */
- handleDelete(row) {
- const ids = row.id || this.ids;
- this.idfer = ids
- this.imashow = true;
- // this.$confirm('是否确认删除疫苗信息编号为"' + ids + '"的数据项?', '警告', {
- // confirmButtonText: '确定',
- // cancelButtonText: '取消',
- // type: 'warning'
- // })
- // .then(function() {
- // return delInfo(ids);
- // })
- // .then(() => {
- // this.getList();
- // this.msgSuccess('删除成功');
- // });
- },
- submitFormfr(){
- // formgt
- if(this.formgt.houseType == null || this.formgt.houseType == undefined){
- this.$message.error('请选择删除原因');
- return false
- }
- let nhue = {}
- nhue.deleteReason = this.formgt.houseType
- nhue.id = this.idfer
- delInfo(nhue).then(response => {
- this.msgSuccess('删除成功');
- this.imashow = false;
- this.getList();
- });
- },
- // 还原
- handleDeletehy(row){
- const ids = row.id || this.ids;
- this.$confirm('是否确认还原信息?', '警告', {
- confirmButtonText: '确定',
- cancelButtonText: '取消',
- type: 'warning'
- })
- .then(function() {
- return delInfohy(ids);
- })
- .then(() => {
- this.getList();
- this.msgSuccess('还原成功');
- });
- },
- /** 导出按钮操作 */
- handleExport() {
- var heuia = {
- tableName: "vaccine_info",
- empty: false,
- condition: {}
- }
- var that=this;
- heuia.condition = this.queryParams
- const queryParams = this.queryParams
- this.$confirm('是否确认导出?', "警告", {
- confirmButtonText: "确定",
- cancelButtonText: "取消",
- type: "warning"
- }).then(function() {
- return exportConfig(heuia);
- }).then(response => {
- const jues= response.data
- that.exportflag=false;
- that.$alert('数据导入中,系统将自动处理数据,请稍后查看结果', "导出结果", { dangerouslyUseHTMLString: true });
- // that.msgSuccess('数据导入中,系统将自动处理数据,请稍后查看结果');
- // exportConfigtyr().then(responsr => {
- // console.log(responsr)
- // if(responsr.data == true){
- // // this.download(jues);
- // // window.location.href = jues
- // window.open(jues)
- // }else{
- // this.msgSuccess('数据暂未加载完成,请稍后点击导出进度按钮查看');
- // }
- // });
- })
- // this.download('/boman-web-core/core/info/export',
- // {
- // ...this.queryParams
- // },
- // `post_${new Date().getTime()}.xlsx`
- // );
- },
- // 点击查看
- chakei(row) {
- console.log(row);
- // yiaoe({idCard:row.idCard}).then(response => {
- // // this.msgSuccess('操作成功');
- // if(response.code == 200){
- // this.jiezheList = response.data
- // }
- // });
- this.jiezhong = true;
- },
- /** 导入按钮操作 */
- handleImport() {
- this.upload.title = "数据导入";
- this.upload.opens = true;
- },
- // 判断是否选择户主
- changese(){
- console.log(this.form.houseType)
- if(this.form.houseType == '是'){
- this.form.code = this.form.idCard
- this.nhe = false
- }else{
- this.form.code != this.form.idCard
- this.nhe = true
- }
- },
- // 获取屏幕高度
- showFilterForm () {
- this.filterActive = !this.filterActive
- this.changeTableMaxHeight()
- },
- changeTableMaxHeight () {
- let height = document.body.offsetHeight // 网页可视区域高度
- // if (this.filterActive) {
- // this.tableMaxHeight = height - 320
- // } else {
- this.tableMaxHeight = height - 250
- // }
- console.log(height)
- },
- }
- };
- </script>
- <style lang="scss">
- .placf {
- .el-input {
- .el-input__inner::placeholder{
- color: #333;
- }
- /* 谷歌 */
- .el-input__inner::-webkit-input-placeholder {
- color: #333;
- }
- /* 火狐 */
- .el-input__inner:-moz-placeholder {
- color: #333;
- }
- /*ie*/
- .el-input__inner:-ms-input-placeholder {
- color: #333;
- }
- }
- }
- .jdueuh{
- .el-form-item__label {
- width: 0px !important;
- }
- .el-form-item__content {
- margin-left: 10px !important;
- // width: 70%;
- }
- }
- .ijeuhdy{
- .el-form-item__label {
- width: 80px !important;
- }
- .el-form-item__content {
- margin-left: 80px !important;
- // width: 70%;
- }
- }
- .znshu{
- .el-form-item__label {
- width: 80px !important;
- // padding-left: 30px;
- }
- .el-form-item__content {
- margin-left: 80px !important;
- // width: 70%;
- }
- .el-input__inner{
- padding-left: 0 !important;
- }
- }
- .heioangd{
- .el-form-item__label {
- width: 70px !important;
- }
- .el-form-item__content {
- margin-left: 70px !important;
- // width: 70%;
- }
- }
- .hues {
- .area-select {
- margin-left: 0 !important;
- margin-right: 10px;
- }
- }
- .jehak {
- .el-form-item {
- width: 100%;
- }
- .el-form-item__content {
- width: 60%;
- }
- }
- .oiuyty {
- .el-form-item__label {
- width: 80px !important;
- }
- .el-form-item__content {
- margin-left: 80px !important;
- // width: 70%;
- }
- input {
- padding-right: 0 !important;
- }
- }
- .el-dialog__body {
- padding-top: 0;
- padding-bottom: 0;
- }
- .jhy {
- // width: 100%;
- // .el-form-item__content {
- // width: 100%;
- // margin-left: 0 !important;
- // }
- .el-form-item__content {
- margin-left: 55px !important;
- // width: 70%;
- }
- .el-form-item__label {
- width: 55px !important;
- }
- }
- .ehiqya {
- .el-form-item__content {
- display: flex;
- .jdidur {
- flex: 1;
- margin-left: 10px;
- // text-align: left;
- display: flex;
- }
- }
- .upload-demo {
- display: flex;
- }
- }
- .jdoier{
- display: flex;
- align-items: center;
- .upload-demo {
- display: flex;
- }
- }
- .hueyde {
- width: 18px;
- height: 18px;
- margin: 0 5px;
- margin-right: 10px;
- }
- .hueydele {
- width: 15px;
- height: 18px;
- }
- .hyeoa {
- height: 100%;
- display: flex;
- align-items: center;
- }
- .hjdoecdre {
- // margin-top: 50%;
- transform: translateY(50%);
- }
- .ojhgy {
- .el-dialog {
- padding-bottom: 40px;
- padding-top: 10px;
- }
- .el-dialog__header {
- padding-bottom: 20px;
- }
- .el-table .cell {
- line-height: 50px;
- }
- }
- .hueya{
- margin-left: 0 !important;
- }
- .iejghiadh{
- .el-input__inner{
- padding-right: 0 !important;
- padding-left: 5px !important;
- }
- }
- </style>
|