From 01c25c7e0f38e7f458d5dc97a70a9b7b8d4f7a6c Mon Sep 17 00:00:00 2001 From: linwenling <3256558519@qq.com> Date: 星期六, 07 十月 2023 23:30:45 +0800 Subject: [PATCH] 健康保健修改 --- ruoyi-ui/src/views/genealogy/index.vue | 460 +++++++++++++++++++++++++++----------------------------- 1 files changed, 221 insertions(+), 239 deletions(-) diff --git a/ruoyi-ui/src/views/genealogy/index.vue b/ruoyi-ui/src/views/genealogy/index.vue index 46d08b4..59c0854 100644 --- a/ruoyi-ui/src/views/genealogy/index.vue +++ b/ruoyi-ui/src/views/genealogy/index.vue @@ -18,15 +18,21 @@ <!-- v-model="queryParams.id"--> </el-form-item> - <el-form-item label="韬唤" prop="nickName" style="padding-left:180px"> - <el-input - v-model="queryParams.nickName" - placeholder="璇疯緭鍏ヨ韩浠�" + <el-form-item label="韬唤" prop="identity" > + <el-select + v-model="queryParams.identity" + placeholder="璇烽�夋嫨韬唤" clearable style="width: 240px" - @keyup.enter.native="handleQuery"> - <i slot="prefix" class="el-input__icon el-icon-search"></i> - </el-input> + @keyup.enter.native="handleQuery" + > + <el-option + v-for="item in typeOptions" + :key="item.value" + :label="item.label" + :value="item.value" + /> + </el-select> </el-form-item> @@ -42,45 +48,40 @@ </el-form-item> <el-form-item label="鎬у埆" prop="sex"> - <el-input - v-model="queryParams.sex" - placeholder="璇疯緭鍏ユ�у埆" - clearable - style="width: 240px" - @keyup.enter.native="handleQuery"> - <i slot="prefix" class="el-input__icon el-icon-search"></i> - </el-input> + <el-select v-model="queryParams.sex" placeholder="璇烽�夋嫨鎬у埆" clearable + style="width: 240px" @keyup.enter.native="handleQuery"> + <el-option v-for="item in typeOption" + :key="item.value" :label="item.label" :value="item.value"/> + </el-select> </el-form-item> - <el-form-item label="鐢熸棩" prop="birth"> - <el-input - v-model="queryParams.birth" - placeholder="璇疯緭鍏ョ敓鏃�" - clearable - style="width: 240px" + + <el-form-item label="鐢熸棩" prop="birth deadDay"> + <el-date-picker + v-model="dateRange" + style="width: 197px; + height: 30px; + background: #FFFFFF; + border-radius: 14px 14px 14px 14px; + opacity: 0.5; + border: 1px solid rgba(0,0,0,0.25);" + value-format="yyyy-MM-dd" + type="daterange" + range-separator="-" + start-placeholder="寮�濮嬫棩鏈�" + end-placeholder="缁撴潫鏃ユ湡" @keyup.enter.native="handleQuery" - > - <i slot="prefix" class="el-input__icon el-icon-search"></i> - </el-input> + ></el-date-picker> + </el-form-item> <el-form-item> - <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery" - style=" width: 65px; height: 32px;background: #FFDDE3; - border-radius: 6px 6px 6px 6px;opacity:1;">鎼滅储</el-button> - <el-button icon="el-icon-refresh" size="mini" @click="resetQuery" style=" width: 65px; height: 32px;background: #FFDDE3; - border-radius: 6px 6px 6px 6px;opacity:1; " >閲嶇疆</el-button> + <el-button size="mini" @click="handleQuery" style=" width: 67px;height: 27px;background: #FFDDE3; + border-radius: 7px 7px 7px 7px;opacity: 1; " >鎼滅储</el-button> + <el-button size="mini" @click="resetQuery" style=" width: 67px;height: 27px;background: #FFDDE3; + border-radius: 7px 7px 7px 7px;opacity: 1; ">閲嶇疆</el-button> </el-form-item> </el-form> <div> - <div style="width: 149px; - height: 24px; - font-size: 18px; - font-family: Microsoft YaHei-Regular, Microsoft YaHei; - font-weight: 400; - color: #000000; - line-height: 21px; - ">寮犳皬涓�瑙堣〃</div> - <el-row :gutter="10" class="mb8"> <!-- <el-col :span="1.5">--> <!-- <el-button--> @@ -93,17 +94,17 @@ <!-- >鏂板</el-button>--> <!-- </el-col>--> - <el-col :span="1.5"> - <el-button - type="danger" - plain - icon="el-icon-delete" - size="mini" - :disabled="multiple" - @click="handleDelete" - v-hasPermi="['system:role:remove']" - >鍒犻櫎</el-button> - </el-col> +<!-- <el-col :span="1.5">--> +<!-- <el-button--> +<!-- type="danger"--> +<!-- plain--> +<!-- icon="el-icon-delete"--> +<!-- size="mini"--> +<!-- :disabled="multiple"--> +<!-- @click="handleDelete"--> +<!-- v-hasPermi="['system:role:remove']"--> +<!-- >鍒犻櫎</el-button>--> +<!-- </el-col>--> <el-col :span="1.5"> <el-button type="warning" @@ -142,17 +143,15 @@ </el-row> </div> - <el-table v-loading="loading" :data="listRoot" @selection-change="handleSelectionChange" @row-click="handleCheck" :row-class-name="tableRowClassName" style="background: #FFEFF2; border-radius: 14px 14px 14px 14px;"> - <el-table-column type="selection" width="25" align="center" /> - <el-table-column label="搴忓彿" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="80"/> + <el-table v-loading="loading" :data="listRoot" :row-key="getRowId" ref="multipleTable" @selection-change="handleSelectionChange" :row-class-name="tableRowClassName" style="background: #FFEFF2; border-radius: 14px 14px 14px 14px;"> + <el-table-column type="selection" width="55" align="center" /> + <el-table-column fixed label="搴忓彿" sortable type="index" :index="(queryParams.pageNum-1)*queryParams.pageSize+1" width="80"/> - <el-table-column label="韬唤" prop="myName" sortable width="100" > -<!-- <template slot-scope="scope">--> -<!-- <div>--> -<!-- <a href="javascript:;" @click="handleCheck(scope.row)">{{scope.row.myName}}</a>--> -<!-- </div>--> -<!-- </template>--> - + <el-table-column label="韬唤" prop="identity" sortable width="100" > + <template slot-scope="scope" > + <span v-if="scope.row.isMyFamily==1">绗瑊{scope.row.identity}}浠�</span> + <span v-else>鈥斺��</span> + </template> </el-table-column> <el-table-column label="濮撳悕" prop="nickName" sortable :show-overflow-tooltip="true" width="100" align="center"/> <el-table-column label="鎬у埆" prop="sex" sortable width="100" align="center" > @@ -174,40 +173,28 @@ <el-table-column label="鎵�鍦ㄥ崟浣�" prop="unit" sortable width="150" align="center" > <template slot-scope="scope">{{scope.row.unit? scope.row.unit: '鈥斺�斺�斺��'}}</template> </el-table-column> - <el-table-column label="閰嶅伓" prop="userId" sortable width="110" align="center" > - <template slot-scope="scope">{{scope.row.phoneNumber? scope.row.phoneNumber: '鈥斺�斺�斺��'}}</template> +<!-- <el-table-column label="閰嶅伓" prop="spouseId" sortable width="110" align="center" >--> +<!-- <template slot-scope="scope"><span>{{getPerson(scope.row.spouseId)}}</span></template>--> +<!-- </el-table-column>--> + <el-table-column label="閰嶅伓" prop="spouseName" sortable width="110" align="center" > + <template slot-scope="scope">{{scope.row.spouseName? scope.row.spouseName: '鈥斺�斺�斺��'}}</template> </el-table-column> - <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> + + <el-table-column label="鎿嶄綔" align="center" class-name="small-padding fixed-width"> <template slot-scope="scope" v-if="scope.row.roleId !== 1"> - <el-button - size="mini" - type="text" - icon="el-icon-edit" - @click="handleUpdate(scope.row)" - v-hasPermi="['system:role:edit']" - >淇敼</el-button> - <el-button - size="mini" - type="text" - icon="el-icon-delete" - @click="handleDelete(scope.row)" - v-hasPermi="['system:role:remove']" - >鍒犻櫎</el-button> - - <el-button - size="mini" - type="text" - icon="el-icon-d-arrow-right" - @click="handleCheck(scope.row)"> - 鏌ョ湅璇︽儏</el-button> +<el-button + size="mini" + type="text" + icon="el-icon-d-arrow-right" + @click="handleCheck(scope.row)"> +鏌ョ湅璇︽儏</el-button> </template> </el-table-column> </el-table> <pagination - v-show="total>0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize" @@ -216,105 +203,40 @@ /> - <!-- <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body> + <el-dialog :title="title" :visible.sync="open" width="800px" append-to-body> <el-form ref="elForm" :model="formDat" :rules="rules" size="medium" label-width="100px"> - <el-form-item label="鎴愬憳濮撳悕" prop="myName"> - <el-input v-model="formDat.myName" placeholder="璇疯緭鍏ユ垚鍛樺鍚�" clearable :style="{width: '100%'}" > + <el-form-item label="韬唤" prop="identity"> + <el-input v-model="formDat.identity" placeholder="璇疯緭鍏ヨ韩浠�" clearable :style="{width: '100%'}" > </el-input> </el-form-item> - - <el-form-item label="绉板懠" prop="nickName"> - <el-input v-model="formDat.nickName" placeholder="璇疯緭鍏ョО鍛�" clearable :style="{width: '100%'}" ></el-input> + <el-form-item label="濮撳悕" prop="nickName"> + <el-input v-model="formDat.nickName" placeholder="璇疯緭鍏ュ鍚�" clearable :style="{width: '100%'}" ></el-input> </el-form-item> - <el-form-item label="濮撳悕" prop="name"> - <el-input v-model="formDat.name" placeholder="璇疯緭鍏ュ鍚�" clearable :style="{width: '100%'}" > + <el-form-item label="鎬у埆" prop="sex"> + <el-input v-model="formDat.sex" placeholder="璇疯緭鍏ユ�у埆" clearable :style="{width: '100%'}" > </el-input> </el-form-item> - <el-form-item label="宸ヤ綔鍗曚綅" prop="work"> - <el-input v-model="formDat.work" placeholder="璇疯緭鍏ュ伐浣滃崟浣�" clearable :style="{width: '100%'}" > + <el-form-item label="鍑虹敓鏃堕棿" prop="birth"> + <el-input v-model="formDat.birth" placeholder="璇疯緭鍏ュ嚭鐢熸椂闂�" clearable :style="{width: '100%'}" > </el-input> </el-form-item> - <el-form-item label="鎵嬫満" prop="phone"> - <el-input v-model="formDat.phone" placeholder="璇疯緭鍏ユ墜鏈�" clearable :style="{width: '100%'}" > + <el-form-item label="鍏ㄧ敓鍛藉懆鏈�" prop="deadDay"> + <el-input v-model="formDat.deadDay" placeholder="璇疯緭鍏ュ叏鐢熷懡鍛ㄦ湡" clearable :style="{width: '100%'}" > </el-input> </el-form-item> - <el-form-item label="寰俊" prop="wx"> - <el-input v-model="formDat.wx" placeholder="璇疯緭鍏ュ井淇�" clearable :style="{width: '100%'}" > + <el-form-item label="鎵嬫満鍙风爜" prop="phoneNumber"> + <el-input v-model="formDat.phoneNumber" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" clearable :style="{width: '100%'}" > </el-input> </el-form-item> - <el-form-item label="QQ" prop="qq"> - <el-input v-model="formDat.qq" placeholder="璇疯緭鍏Q" clearable :style="{width: '100%'}" > + <el-form-item label="鎵�鍦ㄥ崟浣�" prop="unit"> + <el-input v-model="formDat.unit" placeholder="璇疯緭鍏ユ墍鍦ㄥ崟浣�" clearable :style="{width: '100%'}" > </el-input> </el-form-item> - <el-form-item label="twitter" prop="twitter"> - <el-input v-model="formDat.twitter" placeholder="璇疯緭鍏witter" clearable :style="{width: '100%'}" > + <el-form-item label="閰嶅伓" prop="spouseName"> + <el-input v-model="formDat.spouseName" placeholder="璇疯緭鍏witter" clearable :style="{width: '100%'}" > </el-input> </el-form-item> - <el-form-item label="鏄惁甯歌仈绯�" prop="isAlways"> - <el-input v-model="formDat.isAlways" placeholder="鏄惁甯歌仈绯�" clearable :style="{width: '100%'}" > - </el-input> - </el-form-item> - - <el-form-item label="澶囨敞锛堟槸鍚﹀瓨鍦ㄩ噾閽卞叧绯伙級" prop="remark"> - <el-input v-model="formDat.remark" placeholder="璇疯緭鍏ュ娉�" clearable :style="{width: '100%'}" ></el-input> - </el-form-item> - - <h4 class="form-header">鐢靛瓙鍚嶇墖 </h4> - <el-upload - action="#" - list-type="picture-card" - multiple - :http-request="requestUpload" - :file-list="fileList" - > - <i slot="default" class="el-icon-plus"></i> - <div slot="file" slot-scope="{file}"> - <img - class="el-upload-list__item-thumbnail" - :src="file.url" - alt="" - style="width: 126px; height: 126px" - fit="cover" - :preview-src-list="[file.url]" - > - <span class="el-upload-list__item-actions"> - <span - class="el-upload-list__item-preview" - @click="handlePictureCardPreview(file)" - > - <i class="el-icon-zoom-in"></i> - </span> - - <span - v-if="!disabled" - class="el-upload-list__item-delete" - @click="handleRemove(file)" - > - <i class="el-icon-delete"></i> - </span> - </span> - - - </div> - </el-upload> - <h4 class="form-header">鍏朵粬闄勪欢 </h4> - <el-upload - action="" - :file-list="fileListOther" - class="upload-demo" - multiple - - :on-remove="handleRemove" - :http-request="requestUpload" - :show-file-list="true" - > - <el-button type="primary">鐐瑰嚮涓婁紶</el-button> - <template #tip> - <div class="el-upload__tip"> - </div> - </template> - </el-upload> </el-form> <h4 class="form-header"> </h4> @@ -323,7 +245,7 @@ <el-button type="primary" @click="submitDataScope">淇� 瀛�</el-button> <el-button @click="cancelData">鍙� 娑�</el-button> </div> - </el-dialog> --> + </el-dialog> <el-dialog :title="title" :visible.sync="openDataScope" width="500px" append-to-body> @@ -340,7 +262,7 @@ //瀵煎叆鎺ュ彛鍑芥暟 import {enload, uploadPic} from "@/api/contacts/index"; -import {getRoot} from "@/api/root/index"; +import {getRoot,listUserAll} from "@/api/root/index"; export default { name: "index", dicts: ['sys_normal_disable'], @@ -377,15 +299,12 @@ dateRange: [], // 鏁版嵁鑼冨洿閫夐」 fot:[".jpg",".jif"], - fileList:[ - ], - fileListOther:[ - - ], + fileList:[], + fileListOther:[], dsb:true, btn:false, fit:['fill'], - + uploading: false, formDat: { //寮犳皬涓�瑙堣〃 userid:undefined, @@ -408,6 +327,7 @@ politicalOutlook:undefined, deadDay:undefined, spouseId:undefined, + spouseName:undefined, img:undefined, fatherId:undefined, momId:undefined, @@ -415,6 +335,8 @@ familyId:undefined, secondFamilyId:undefined, childList:undefined, + identity:undefined, + isMyFamily:undefined, url: undefined, }, @@ -426,6 +348,7 @@ queryParams: { pageNum: 1, pageSize: 10, + identity:undefined, nickName:undefined, sex:undefined, birth:undefined, @@ -456,7 +379,7 @@ message: '璇疯緭鍏ユ�у埆', trigger: 'blur' }], - bitrh: [{ + birth: [{ // required: true, message: '璇疯緭鍏ュ嚭鐢熸椂闂�', trigger: 'blur' @@ -468,7 +391,27 @@ }], }, - typeOptions: [], + typeOption: [{ + value: '1', + label: '鐢�', + }, + { + value: '0', + label: '濂�', + }], + typeOptions: [{ + value:'1', + label:'绗�1浠�' + },{ + value:'2', + label:'绗�2浠�' + },{ + value:'3', + label:'绗�3浠�' + },{ + value:'4', + label:'绗�4浠�' + }], }; }, created() { @@ -484,7 +427,31 @@ this.open = false; this.reset(); }, + //鎷垮埌閰嶅伓鐨勫鍚� + getPerson(id) + { + // alert(id) + // alert(typeof(id)) + // this.listRoot.forEach(function(item, index) { + // //item 灏辨槸褰撴棩鎸夊惊鐜埌鐨勫璞� + // //index鏄惊鐜殑绱㈠紩锛屼粠0寮�濮� + // //alert(typeof(item.userId)) + // if(item.userId==id){ + // // alert(89) + // alert(item.nickName) + // return item.nickName + // } + // }) + let username = "" + for(let i = 0; i < this.listRoot.length;i++) + { + if(this.listRoot[i].userId==id) + username = this.listRoot[i].nickName + } + return username; + // return "12ddd" + }, //闅旇鍙樿壊 tableRowClassName({ row, rowIndex }) { if (rowIndex % 2 == 0) { @@ -493,17 +460,30 @@ return "statistics-warning-row"; } }, - + /** 鏂板鎸夐挳鎿嶄綔 */ + handleAdd() { + this.reset(); + this.open = true; + this.title = "娣诲姞璇佷欢/鑽h獕/璧勮川淇℃伅"; + }, /** 鏌ヨ閫氳褰曞垪琛� */ getList() { this.loading = true; - // console.log(this.queryParams) + // console.log(this.queryParams) + //alert(23) + this.queryParams.happenStartTime = this.dateRange.length > 0 && this.dateRange[0] + this.queryParams.happenEndTime = this.dateRange.length > 0 && this.dateRange[1] // listProperty(this.addDateRange(this.queryParams, this.dateRange)).then(response => { - getRoot(this.queryParams).then(response => { + listUserAll(this.queryParams).then(response => { // alert(123) // console.log(response.data) + // alert(76) this.listRoot = response.data.data; - this.total = response.data.total; + // alert(this.listRoot) + this.total = response.data.length; + this.pageNum=1; + this.pageSize=10; + // alert(this.total) this.loading = false; } ); @@ -519,6 +499,24 @@ // }) // }) // }, + //韬唤閫夋嫨 + getSrc(identity) { + if (identity === '1'){ + return '绗�1浠�' + }else if(identity === '2'){ + return '绗�2浠�' + }else if(identity === '3'){ + return '绗�3浠�' + }else if(identity === '4'){ + return '绗�4浠�' + }else { + return '鍏跺畠' + } + }, + getRowId(row) + { + return row.id + }, handleRemove(file) { alert(323) @@ -583,28 +581,12 @@ // }, - /** 鏂板鎸夐挳鎿嶄綔 */ - handleAdd() { - this.reset(); - this.open = true; - this.title = "娣诲姞閫氳褰曡缁嗕俊鎭�"; - }, + /** 鏌ョ湅璇︾粏淇℃伅 */ handleCheck(row){ - const id = row.id; - this.$router.push("/familymodel/Contact/contactsInfo/" + id); - }, - /** 淇敼鎸夐挳鎿嶄綔 */ - handleUpdate(row) { - const id = row.id; - let jd = true - - this.$router.push({ - path:"/familymodel/Contact/contactsInfo/" + id, - query:{ - detail:jd - } - }); + const id = row.userId; + // alert(id) + this.$router.push("/familymodel/jiagenwang/personInfo/" + id); }, @@ -613,26 +595,26 @@ this.dialogVisible = true; }, /** 鎻愪氦鎸夐挳锛堟暟鎹潈闄愶級 */ - // submitDataScope: function() { - // - // let ul = this.fileList.map(function (elem){ - // return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") - // }).join(",") - // let uls = this.fileListOther.map(function (elem){ - // return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") - // }).join(",") - // this.formDat.url = ul+","+uls - // this.$refs["elForm"].validate(valid => { - // if (valid) { - // - // addContact(this.formDat).then(response => { - // this.$modal.msgSuccess("鏂板鎴愬姛"); - // this.open = false; - // this.getList(); - // }); - // } - // }); - // }, + submitDataScope: function() { + + let ul = this.fileList.map(function (elem){ + return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") + }).join(",") + let uls = this.fileListOther.map(function (elem){ + return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API,"") + }).join(",") + this.formDat.url = ul+","+uls + this.$refs["elForm"].validate(valid => { + if (valid) { + + addContact(this.formDat).then(response => { + this.$modal.msgSuccess("鏂板鎴愬姛"); + this.open = false; + this.getList(); + }); + } + }); + }, requestUpload(params) { var file = params.file; @@ -667,27 +649,27 @@ }).catch(() => {}); }, /** 瀵煎嚭鎸夐挳鎿嶄綔 */ + // handleExport() { + // this.download('/self/user/export/genealogy', { + // ...this.queryParams + // }, `zGenealogy_${new Date().getTime()}.xlsx`) + // }, + handleExport() { - this.download('zfContact/export', { - ...this.queryParams - }, `zfContact_${new Date().getTime()}.xlsx`) + const Ids = this.ids; + + if(Ids.length==0) + { + this.download('/self/user/export/genealogy', { + ...this.queryParams + }, `zGenealogy_${new Date().getTime()}.xlsx`) + }else{ + this.download('/self/user/export/genealogy1/'+Ids, { + + }, `zGenealogy_${new Date().getTime()}.xlsx`) + } }, - /** 瀵煎叆鎿嶄綔*/ - // handleEnport(params){ - // var file = params.file; - // var formData = new FormData(); - // formData.append('excelImport', file); - // let _this = this - // enload(formData).then(response => { - // _this.getList(); - // Message({ message: "瀵煎叆鎴愬姛", type: 'warning' }) - // - // }).catch(err) - // { - // Message({ message: "瀵煎叆澶辫触", type: 'error' }) - // } - // - // } + } }; </script> -- Gitblit v1.9.1