Browse Source

疫苗关注

shibei_master
jiangyy 3 years ago
parent
commit
96c4b10c9d
  1. 98
      src/views/modules/base/epidemic/veroFocus/veroFocusAdd.vue
  2. 86
      src/views/modules/base/epidemic/veroFocus/veroFocusEdit.vue
  3. 4
      src/views/modules/base/epidemic/veroFocus/veroFocusList.vue

98
src/views/modules/base/epidemic/veroFocus/veroFocusAdd.vue

@ -61,10 +61,10 @@
</el-form-item> </el-form-item>
<el-form-item label="通知渠道" <el-form-item label="通知渠道"
prop="noticeWay" prop="channel"
label-width="150px" label-width="150px"
style="display: block"> style="display: block">
<el-checkbox-group v-model="formData1.noticeWay"> <el-checkbox-group v-model="formData1.channel">
<el-checkbox key="1" <el-checkbox key="1"
label="1">小程序通知</el-checkbox> label="1">小程序通知</el-checkbox>
<el-checkbox key="2" <el-checkbox key="2"
@ -100,7 +100,7 @@
<el-form-item label="所属网格" <el-form-item label="所属网格"
label-width="80px"> label-width="80px">
<el-select class="item_width_3" <el-select class="item_width_3"
v-model.trim="formDataSearch.selGridId" v-model.trim="formDataSearch.gridId"
placeholder="请选择" placeholder="请选择"
size="mini" size="mini"
clearable> clearable>
@ -114,7 +114,7 @@
<el-form-item label="疫苗接种次数小于" <el-form-item label="疫苗接种次数小于"
label-width="150px"> label-width="150px">
<el-input-number class="item_width_3" <el-input-number class="item_width_3"
v-model="formDataSearch.veroNum" v-model="formDataSearch.vaccineCount"
size="mini" size="mini"
:min="0" :min="0"
:max="20" :max="20"
@ -149,25 +149,25 @@
type="index" type="index"
width="50"></el-table-column> width="50"></el-table-column>
<el-table-column prop="NAME" <el-table-column prop="name"
header-align="center" header-align="center"
align="center" align="center"
label="姓名" label="姓名"
width="90"> width="90">
</el-table-column> </el-table-column>
<el-table-column prop="MOBILE" <el-table-column prop="mobile"
header-align="center" header-align="center"
align="center" align="center"
label="手机号" label="手机号"
width="110"> width="110">
</el-table-column> </el-table-column>
<el-table-column prop="ID_CARD" <el-table-column prop="idCard"
header-align="center" header-align="center"
align="center" align="center"
label="身份证" label="身份证"
min-width="170"> min-width="170">
</el-table-column> </el-table-column>
<el-table-column prop="ID_CARD" <el-table-column prop="idCard"
header-align="center" header-align="center"
align="center" align="center"
label="疫苗接种次数" label="疫苗接种次数"
@ -198,7 +198,7 @@
:disable-transitions="false" :disable-transitions="false"
@close="handleCloseTag(tag,index)" @close="handleCloseTag(tag,index)"
closable> closable>
{{tag.NAME}} {{tag.name}}
</el-tag> </el-tag>
</div> </div>
<div v-else <div v-else
@ -228,14 +228,14 @@
</el-form-item> </el-form-item>
<el-form-item label="通知渠道" <el-form-item label="通知渠道"
prop="noticeWay" prop="channel"
label-width="100px" label-width="100px"
style="display: block"> style="display: block">
<el-checkbox-group v-model="formData2.noticeWay"> <el-checkbox-group v-model="formData2.channel">
<el-checkbox key="0"
label="0">小程序通知</el-checkbox>
<el-checkbox key="1" <el-checkbox key="1"
label="1">小程序通知</el-checkbox> label="1">短信通知</el-checkbox>
<el-checkbox key="2"
label="2">短信通知</el-checkbox>
</el-checkbox-group> </el-checkbox-group>
</el-form-item> </el-form-item>
@ -291,35 +291,35 @@ export default {
btnDisable: false, btnDisable: false,
formDataSearch: { formDataSearch: {
selGridId: '', gridId: '',
veroNum: undefined, vaccineCount: undefined,
}, },
formData1: { formData1: {
attentionType: 1,
name: '', name: '',
idCard: '', idCard: '',
mobile: '', mobile: '',
remark: '', remark: '',
noticeWay: [], channel: [],
content: '', content: '',
}, },
formData2: { formData2: {
personList: [], attentionType: 1,
remark: '', remark: '',
noticeWay: [], channel: [],
content: '', content: '',
}, },
tableData: [], tableData: [],
total: 0, total: 0,
pageSize: 20, pageSize: 20,
pageNo: 0, pageNo: 1,
tableLoading: false, tableLoading: false,
selectionAll: [],// selectionAll: [],//
} }
}, },
components: {}, components: {},
@ -348,12 +348,11 @@ export default {
async loadTable () { async loadTable () {
this.tableLoading = true this.tableLoading = true
const url = "/epmetuser/icresiuser/listresi" // const url = "/epmetuser/epidemicPrevention/page"
// const url = "http://yapi.elinkservice.cn/mock/245/gov/org/placeorg/getlist" const url = "http://yapi.elinkservice.cn/mock/245/epmetuser/epidemicPrevention/page"
let params = { let params = {
pageSize: this.pageSize, pageSize: this.pageSize,
pageNo: this.pageNo, pageNo: this.pageNo,
formCode: 'resi_base_info',
...this.formDataSearch ...this.formDataSearch
} }
@ -384,7 +383,7 @@ export default {
} else { } else {
for (let i = 0; i < this.selectionAll.length; i++) { for (let i = 0; i < this.selectionAll.length; i++) {
let item = this.selectionAll[i] let item = this.selectionAll[i]
if (item.ID_CARD === row.ID_CARD) { if (item.idCard === row.idCard) {
this.selectionAll.splice(i, 1) this.selectionAll.splice(i, 1)
break break
} }
@ -402,7 +401,7 @@ export default {
let isHasItem = false let isHasItem = false
for (let j = 0; j < this.selectionAll.length; j++) { for (let j = 0; j < this.selectionAll.length; j++) {
let selectionItem = this.selectionAll[j] let selectionItem = this.selectionAll[j]
if (selectionItem.ID_CARD === tableItem.ID_CARD) { if (selectionItem.idCard === tableItem.idCard) {
isHasItem = true isHasItem = true
if (!selFlag) { if (!selFlag) {
this.selectionAll.splice(j, 1) this.selectionAll.splice(j, 1)
@ -425,7 +424,7 @@ export default {
for (let i = 0; i < this.tableData.length; i++) { for (let i = 0; i < this.tableData.length; i++) {
let tableItem = this.tableData[i] let tableItem = this.tableData[i]
if (tag.ID_CARD === tableItem.ID_CARD) {// if (tag.idCard === tableItem.idCard) {//
tableItem.isSel = false tableItem.isSel = false
this.$refs.ref_table.toggleRowSelection(tableItem); this.$refs.ref_table.toggleRowSelection(tableItem);
break break
@ -435,7 +434,7 @@ export default {
for (let i = 0; i < this.selectionAll.length; i++) { for (let i = 0; i < this.selectionAll.length; i++) {
let item = this.selectionAll[i] let item = this.selectionAll[i]
if (item.ID_CARD === tag.ID_CARD) { if (item.idCard === tag.idCard) {
this.selectionAll.splice(i, 1) this.selectionAll.splice(i, 1)
break break
} }
@ -452,7 +451,7 @@ export default {
for (let j = 0; j < this.selectionAll.length; j++) { for (let j = 0; j < this.selectionAll.length; j++) {
let selectionItem = this.selectionAll[j] let selectionItem = this.selectionAll[j]
if (selectionItem.ID_CARD === tableItem.ID_CARD) { if (selectionItem.idCard === tableItem.idCard) {
tableItem.isSel = true tableItem.isSel = true
break break
@ -502,9 +501,10 @@ export default {
}, },
async addVero () { async addVero () {
let formData = {} let list = []
if (this.activeName === 'first') { if (this.activeName === 'first') {
formData = this.formData1 list.push(this.formData1)
const regPhone = /^1(3|4|5|6|7|8|9)\d{9}$/; // const regPhone = /^1(3|4|5|6|7|8|9)\d{9}$/; //
// if (regPhone.test(this.formData.mobile) === false) { // if (regPhone.test(this.formData.mobile) === false) {
// this.btnDisable = false // this.btnDisable = false
@ -520,10 +520,20 @@ export default {
return false return false
} }
formData = this.formData2 this.selectionAll.forEach(element => {
formData.personList = this.selectionAll let obj = {
name: element.name,
idCard: element.idCard,
mobile: element.mobile,
...this.formData2
} }
console.log(formData)
list.push(obj)
});
}
console.log(list)
return false return false
@ -564,13 +574,17 @@ export default {
resetSearch () { resetSearch () {
this.formDataSearch = { this.formDataSearch = {
selGridId: '', gridId: '',
veroNum: undefined, vaccineCount: undefined,
} }
}, },
destroyed () {
console.log(11111111)
},
resetData () { resetData () {
this.formData1 = { this.formData1 = {
@ -578,20 +592,20 @@ export default {
idCard: '', idCard: '',
mobile: '', mobile: '',
remark: '', remark: '',
noticeWay: [], channel: [],
content: '', content: '',
attentionType: 1,
} }
this.formData2 = { this.formData2 = {
personList: [], attentionType: 1,
remark: '', remark: '',
noticeWay: [], channel: [],
content: '', content: '',
} }
this.formDataSearch = { this.formDataSearch = {
selGridId: '', gridId: '',
veroNum: undefined, vaccineCount: undefined,
} }
this.selectionAll = []// this.selectionAll = []//

86
src/views/modules/base/epidemic/veroFocus/veroFocusEdit.vue

@ -6,7 +6,7 @@
:inline="true" :inline="true"
:model="formData" :model="formData"
:rules="dataRule" :rules="dataRule"
:disabled="formTyoe==='detail'" :disabled="formType==='detail'"
class="form"> class="form">
<el-form-item label="姓名" <el-form-item label="姓名"
@ -16,21 +16,19 @@
<el-input class="item_width_2" <el-input class="item_width_2"
placeholder="请输入姓名" placeholder="请输入姓名"
clearable clearable
:disabled="isFromResi"
v-model="formData.name"> v-model="formData.name">
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="手机号" <el-form-item label="手机号"
prop="phone" prop="mobile"
label-width="150px" label-width="150px"
style="display: block"> style="display: block">
<el-input class="item_width_2" <el-input class="item_width_2"
placeholder="请输入手机号" placeholder="请输入手机号"
clearable clearable
:disabled="isFromResi" v-model="formData.mobile">
v-model="formData.phone">
</el-input> </el-input>
</el-form-item> </el-form-item>
<el-form-item label="身份证号" <el-form-item label="身份证号"
@ -40,7 +38,6 @@
<el-input class="item_width_2" <el-input class="item_width_2"
placeholder="请输入身份证号" placeholder="请输入身份证号"
clearable clearable
:disabled="isFromResi"
v-model="formData.idCard"> v-model="formData.idCard">
</el-input> </el-input>
</el-form-item> </el-form-item>
@ -59,20 +56,20 @@
</el-form-item> </el-form-item>
<el-form-item label="通知渠道" <el-form-item label="通知渠道"
prop="noticeWay" prop="channel"
label-width="150px" label-width="150px"
style="display: block"> style="display: block">
<el-checkbox-group v-model="formData.noticeWay"> <el-checkbox-group v-model="formData.channel">
<el-checkbox key="0"
label="0">小程序通知</el-checkbox>
<el-checkbox key="1" <el-checkbox key="1"
label="1">小程序通知</el-checkbox> label="1">短信通知</el-checkbox>
<el-checkbox key="2"
label="2">短信通知</el-checkbox>
</el-checkbox-group> </el-checkbox-group>
</el-form-item> </el-form-item>
<el-form-item label="通知内容" <el-form-item label="通知内容"
prop="noticeContent" prop="content"
label-width="150px" label-width="150px"
style="display: block"> style="display: block">
<el-input class="item_width_1" <el-input class="item_width_1"
@ -82,7 +79,7 @@
:autosize="{ minRows: 4, maxRows: 10 }" :autosize="{ minRows: 4, maxRows: 10 }"
clearable clearable
placeholder="请输入通知内容" placeholder="请输入通知内容"
v-model="formData.noticeContent"></el-input> v-model="formData.content"></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
@ -121,12 +118,13 @@ export default {
btnDisable: false, btnDisable: false,
formData: { formData: {
attentionType: 1,
name: '', name: '',
idCard: '', idCard: '',
phone: '', mobile: '',
remark: '', remark: '',
noticeWay: [], channel: [],
noticeContent: '', content: '',
}, },
} }
@ -138,36 +136,11 @@ export default {
methods: { methods: {
async initForm (formType, veroId) { async initForm (formType, row) {
this.formType = formType this.formType = formType
this.$refs['ref_form1'].resetFields(); this.$refs['ref_form1'].resetFields();
},
async loadFormData () {
// const url = 'http://yapi.elinkservice.cn/mock/245/gov/project/memoConcern'
const url = '/gov/project/memoConcern'
let params = {
id: this.veroId,
readFlag: '0',
}
const { data, code, msg } = await requestPost(url, params)
if (code === 0) {
this.formData = data
if (data.attachmentList) {
data.attachmentList.forEach(element => {
element.name = element.fileName
element.type = element.attachmentType
element.size = element.attachmentSize
});
this.fileList = data.attachmentList
}
} else { this.formData = JSON.parse(JSON.stringify(row))
this.$message.error(msg)
}
}, },
async handleComfirm () { async handleComfirm () {
@ -181,8 +154,6 @@ export default {
}, },
async addVero () { async addVero () {
console.log(this.formData)
return false
const regPhone = /^1(3|4|5|6|7|8|9)\d{9}$/; // const regPhone = /^1(3|4|5|6|7|8|9)\d{9}$/; //
// if (regPhone.test(this.formData.mobile) === false) { // if (regPhone.test(this.formData.mobile) === false) {
@ -196,15 +167,9 @@ export default {
let url = '' let url = ''
if (this.formType === 'add') {
url = '/gov/project/memoConcern/save'
// url = "http://yapi.elinkservice.cn/mock/245/gov/project/memoConcern/save"
this.formData.id = ''
} else { // url = '/epmetuser/icEpidemicSpecialAttention/vaccination-update'
url = '/gov/project/memoConcern/update' url = "http://yapi.elinkservice.cn/mock/245/epmetuser/icEpidemicSpecialAttention/vaccination-update"
// url = "http://yapi.elinkservice.cn/mock/245/gov/project/memoConcern/update"
}
const { data, code, msg } = await requestPost(url, this.formData) const { data, code, msg } = await requestPost(url, this.formData)
@ -217,8 +182,7 @@ export default {
this.resetData() this.resetData()
this.$emit('dialogOk') this.$emit('dialogOk')
this.btnDisable = false this.btnDisable = false
this.$store.dispatch('setTipsList')
this.$store.dispatch('setTipsTime')
} else { } else {
this.btnDisable = false this.btnDisable = false
this.$message.error(msg) this.$message.error(msg)
@ -241,10 +205,10 @@ export default {
this.formData = { this.formData = {
name: '', name: '',
idCard: '', idCard: '',
phone: '', mobile: '',
remark: '', remark: '',
noticeWay: [], channel: [],
noticeContent: '', content: '',
} }
}, },
@ -291,7 +255,7 @@ export default {
idCard: [ idCard: [
{ required: true, message: '身份证号不能为空', trigger: 'blur' } { required: true, message: '身份证号不能为空', trigger: 'blur' }
], ],
phone: [ mobile: [
{ required: true, message: '手机号不能为空', trigger: 'blur' }, { required: true, message: '手机号不能为空', trigger: 'blur' },
], ],
checkTime: [ checkTime: [
@ -307,10 +271,10 @@ export default {
address: [ address: [
{ required: false }, { required: false },
], ],
noticeWay: [ channel: [
{ required: false }, { required: false },
], ],
noticeContent: [ content: [
{ required: false }, { required: false },
], ],

4
src/views/modules/base/epidemic/veroFocus/veroFocusList.vue

@ -478,14 +478,14 @@ export default {
handleEdit (row) { handleEdit (row) {
this.editFormShow = true this.editFormShow = true
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.ref_form_edit.initForm('edit', row.veroFocusId) this.$refs.ref_form_edit.initForm('edit', row)
}) })
}, },
handleDetail (row) { handleDetail (row) {
this.editFormShow = true this.editFormShow = true
this.$nextTick(() => { this.$nextTick(() => {
this.$refs.ref_form_edit.initForm('detail', row.veroFocusId) this.$refs.ref_form_edit.initForm('detail', row)
}) })
}, },

Loading…
Cancel
Save