Commit 3cf03229 authored by wangxl's avatar wangxl

444

parent bb5b8cbb
...@@ -4,5 +4,5 @@ VUE_APP_BASE_PATH = https://beta-yac.yiboshi.com ...@@ -4,5 +4,5 @@ VUE_APP_BASE_PATH = https://beta-yac.yiboshi.com
VUE_APP_BASE_API = https://beta-yacper.yiboshi.com VUE_APP_BASE_API = https://beta-yacper.yiboshi.com
VUE_APP_SYSTEM_TITLE = '云南省卫生健康科技项目管理系统' VUE_APP_SYSTEM_TITLE = '云南省卫生健康科技项目管理系统'
VUE_APP_SYSTEM_PROVINCE = '云南省' VUE_APP_SYSTEM_PROVINCE = '云南省'
VUE_APP_SYSTEM_TOP_CODE = '00015' VUE_APP_SYSTEM_TOP_CODE = '00053'
VUE_APP_KEY_WORD = 'XwKsGlMcdPMEhR1B' VUE_APP_KEY_WORD = 'XwKsGlMcdPMEhR1B'
...@@ -4,5 +4,5 @@ VUE_APP_BASE_PATH = https://beta-yac.yiboshi.com ...@@ -4,5 +4,5 @@ VUE_APP_BASE_PATH = https://beta-yac.yiboshi.com
VUE_APP_BASE_API = https://beta-yacper.yiboshi.com VUE_APP_BASE_API = https://beta-yacper.yiboshi.com
VUE_APP_SYSTEM_TITLE = '云南省卫生健康科技项目管理系统' VUE_APP_SYSTEM_TITLE = '云南省卫生健康科技项目管理系统'
VUE_APP_SYSTEM_PROVINCE = '云南省' VUE_APP_SYSTEM_PROVINCE = '云南省'
VUE_APP_SYSTEM_TOP_CODE = '00015' VUE_APP_SYSTEM_TOP_CODE = '00053'
VUE_APP_KEY_WORD = 'XwKsGlMcdPMEhR1B' VUE_APP_KEY_WORD = 'XwKsGlMcdPMEhR1B'
...@@ -4,5 +4,5 @@ VUE_APP_BASE_PATH = https://beta-yac.yiboshi.com ...@@ -4,5 +4,5 @@ VUE_APP_BASE_PATH = https://beta-yac.yiboshi.com
VUE_APP_BASE_API = https://beta-yacper.yiboshi.com VUE_APP_BASE_API = https://beta-yacper.yiboshi.com
VUE_APP_SYSTEM_TITLE = '云南省卫生健康科技项目管理系统' VUE_APP_SYSTEM_TITLE = '云南省卫生健康科技项目管理系统'
VUE_APP_SYSTEM_PROVINCE = '云南省' VUE_APP_SYSTEM_PROVINCE = '云南省'
VUE_APP_SYSTEM_TOP_CODE = '00015' VUE_APP_SYSTEM_TOP_CODE = '00053'
VUE_APP_KEY_WORD = 'XwKsGlMcdPMEhR1B' VUE_APP_KEY_WORD = 'XwKsGlMcdPMEhR1B'
...@@ -139,6 +139,9 @@ export default { ...@@ -139,6 +139,9 @@ export default {
getUnitTypes () { getUnitTypes () {
return fetch('/v1/science-admin/com-unit/getUnitType') return fetch('/v1/science-admin/com-unit/getUnitType')
}, },
getAppUnitInfo() {
return fetch('/v1/science-admin/com-unit/getAppUnitInfo')
},
getCurrentUnitInfo() { getCurrentUnitInfo() {
return fetch('/v1/science-admin/com-unit/getCurrentUnitInfo') return fetch('/v1/science-admin/com-unit/getCurrentUnitInfo')
}, },
......
...@@ -102,7 +102,7 @@ ...@@ -102,7 +102,7 @@
</template> </template>
<script> <script>
import { isEmptyParams, hideIdCard, hidePhone, checkEmail } from "@/views/utils/common" import { isEmptyParams, checkEmail, checkPhone, checkIdentitytionId, personBirthday, personGender } from "@/views/utils/common"
export default { export default {
...@@ -121,7 +121,10 @@ export default { ...@@ -121,7 +121,10 @@ export default {
duty: [{ required: true, message: '*', trigger: 'blur' }], duty: [{ required: true, message: '*', trigger: 'blur' }],
telephone: [{ required: true, message: '*', trigger: 'blur' },], telephone: [{ required: true, message: '*', trigger: 'blur' },],
fax: [{ required: true, message: '*', trigger: 'blur' },], fax: [{ required: true, message: '*', trigger: 'blur' },],
email: [{ required: true, message: '*', trigger: 'blur' },], email: [
{ required: true, message: '*', trigger: 'blur' },
{ required: true, validator: checkEmail, trigger: 'blur' }
],
address: [{ required: false, message: '*', trigger: 'blur' },], address: [{ required: false, message: '*', trigger: 'blur' },],
mainResearchAreas: [{ required: false, message: '*', trigger: 'blur' },], mainResearchAreas: [{ required: false, message: '*', trigger: 'blur' },],
}, },
......
...@@ -78,7 +78,7 @@ ...@@ -78,7 +78,7 @@
</a-col> </a-col>
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">传真</div> <div>传真</div>
</div> </div>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="8">
...@@ -200,7 +200,7 @@ ...@@ -200,7 +200,7 @@
<a-row type="flex"> <a-row type="flex">
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">开户银行</div> <div>开户银行</div>
</div> </div>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="8">
...@@ -214,7 +214,7 @@ ...@@ -214,7 +214,7 @@
</a-col> </a-col>
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">银行账号</div> <div>银行账号</div>
</div> </div>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="8">
...@@ -230,7 +230,7 @@ ...@@ -230,7 +230,7 @@
<a-row type="flex"> <a-row type="flex">
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">开户银行地址</div> <div>开户银行地址</div>
</div> </div>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="8">
...@@ -244,7 +244,7 @@ ...@@ -244,7 +244,7 @@
</a-col> </a-col>
<a-col :span="4" class="bg-gray"> <a-col :span="4" class="bg-gray">
<div class="special-middle"> <div class="special-middle">
<div class="required">银行联行号</div> <div>银行联行号</div>
</div> </div>
</a-col> </a-col>
<a-col :span="8"> <a-col :span="8">
...@@ -262,13 +262,13 @@ ...@@ -262,13 +262,13 @@
</template> </template>
<script> <script>
import { isEmptyParams } from "@/views/utils/common" import { isEmptyParams, checkEmail, checkPhone, checkIdentitytionId, personBirthday, personGender } from "@/views/utils/common"
export default { export default {
name: "infoEdit", name: "infoEdit",
components: { components: {
}, },
data () { data () {
return { return {
...@@ -278,8 +278,11 @@ export default { ...@@ -278,8 +278,11 @@ export default {
unitAddress: [{ required: true, message: '*' }], unitAddress: [{ required: true, message: '*' }],
linkName: [{ required: true, message: '*' }], linkName: [{ required: true, message: '*' }],
telephone: [{ required: true, message: '*' }], telephone: [{ required: true, message: '*' }],
email: [{ required: true, message: '*' }], email: [
fax: [{ required: true, message: '*' }], { required: true, message: '*', trigger: 'blur' },
{ required: true, validator: checkEmail, trigger: 'blur' }
],
fax: [{ required: false, message: '*' }],
organizationCode: [{ required: true, message: '*', trigger: 'blur' },], organizationCode: [{ required: true, message: '*', trigger: 'blur' },],
registeredAddress: [{ required: true, message: '*', trigger: 'blur' },], registeredAddress: [{ required: true, message: '*', trigger: 'blur' },],
postCode: [{ required: true, message: '*', trigger: 'blur' },], postCode: [{ required: true, message: '*', trigger: 'blur' },],
...@@ -287,10 +290,10 @@ export default { ...@@ -287,10 +290,10 @@ export default {
workforce: [{ required: true, message: '*', trigger: 'blur' },], workforce: [{ required: true, message: '*', trigger: 'blur' },],
specializedPersonnel: [{ required: true, message: '*', trigger: 'blur' },], specializedPersonnel: [{ required: true, message: '*', trigger: 'blur' },],
researchPersonnel: [{ required: true, message: '*', trigger: 'blur' },], researchPersonnel: [{ required: true, message: '*', trigger: 'blur' },],
depositBank: [{ required: true, message: '*', trigger: 'blur' },], depositBank: [{ required: false, message: '*', trigger: 'blur' },],
bankAccount: [{ required: true, message: '*', trigger: 'blur' },], bankAccount: [{ required: false, message: '*', trigger: 'blur' },],
depositBankAddress: [{ required: true, message: '*', trigger: 'blur' },], depositBankAddress: [{ required: false, message: '*', trigger: 'blur' },],
interbankNumber: [{ required: true, message: '*', trigger: 'blur' },], interbankNumber: [{ required: false, message: '*', trigger: 'blur' },],
// unitName: [{ required: true, message: '请输入单位名称' }], // unitName: [{ required: true, message: '请输入单位名称' }],
// unitType: [{ required: true, message: '请选择单位类型' }], // unitType: [{ required: true, message: '请选择单位类型' }],
...@@ -329,22 +332,23 @@ export default { ...@@ -329,22 +332,23 @@ export default {
submit () { submit () {
//提交单位数据 //提交单位数据
this.$refs.form.validate(valid => { this.$refs.form.validate(valid => {
// if (valid) { if (valid) {
this.$emit('load', true) this.$emit('load', true)
let pars = isEmptyParams(this.formData) let pars = isEmptyParams(this.formData)
let par = { ...pars } let par = { ...pars }
this.$api.unit.updateUnit(par).then(({ data = {} }) => { this.$api.unit.updateUnit(par).then(({ data = {} }) => {
if (data) { if (data) {
this.$message.success('修改成功!') this.$message.success('修改成功!')
this.$emit('sub', true)
}
this.$emit('load', false)
}).catch(() => {
this.$emit('load', false) this.$emit('load', false)
} })
}).catch(() => { } else {
this.$emit('load', false) this.$message.error('信息未填写完全!')
}) return false
// } else { }
// this.$message.warn('信息未填写完全!')
// return false
// }
}) })
} }
} }
......
<template>
<div class="app-content" style="height: 65vh;overflow: auto;">
<a-spin :spinning="loading" style="width: 100%;height: 100%;">
<div style="height: calc(100% - 36px);overflow:auto;">
<info-edit :formData.sync="formData" @load="onLoad" @sub="save" ref="infoEdit" />
</div>
<div style="text-align:center;width:100%; height: 36px;">
<a-button type="primary" @click="submit">保存</a-button>
</div>
</a-spin>
</div>
</template>
<script>
import infoEdit from '@/views/basicSetting/unit/components/infoEdit'
import { getUnitComplete, setUnitComplete } from '@/views/utils/auth'
export default {
name: "unitEdit",
components: {
infoEdit
},
data () {
return {
formData: {
id: null,
unitName: null,
unitType: null,
unitAddress: null,
linkName: null,
telephone: null,
email: null,
fax: null,
organizationCode: null,
registeredAddress: null,
postCode: null,
legalPerson: null,
workforce: null,
specializedPersonnel: null,
researchPersonnel: null,
depositBank: null,
bankAccount: null,
depositBankAddress: null,
interbankNumber: null,
},
loading: false
}
},
created () {
this.getAppUnitInfo()
},
methods: {
getAppUnitInfo () {
this.loading = true
this.$api.unit.getAppUnitInfo().then(({ data = {} }) => {
if (data) {
this.formData = data.unit
setUnitComplete(data.isComplete)
}
this.loading = false
}).catch(() => {
this.loading = false
})
},
submit () {
this.$refs.infoEdit.submit()
},
onLoad (value) {
this.loading = value
},
save (value) {
this.$emit('sub', value)
},
}
}
</script>
<style scoped lang="less">
::v-deep .ant-spin-container {
width: 100%;
height: 100%;
}
</style>
\ No newline at end of file
...@@ -99,7 +99,7 @@ ...@@ -99,7 +99,7 @@
<span style="line-height:2;">五、请严格遵守各项法律法规和评审纪律,评审工作做到实事求是、客观公正、科学规范、廉洁自律。</span><br /> <span style="line-height:2;">五、请严格遵守各项法律法规和评审纪律,评审工作做到实事求是、客观公正、科学规范、廉洁自律。</span><br />
<span style="line-height:2;">六、此次专家评审时间为:{{exportTime.expertStart + '至' + exportTime.expertEnd}},请务必于{{exportTime.expertEnd}}前提交评审结果。</span><br /> <span style="line-height:2;">六、此次专家评审时间为:{{exportTime.expertStart + '至' + exportTime.expertEnd}},请务必于{{exportTime.expertEnd}}前提交评审结果。</span><br />
<span style="line-height:2;">&nbsp; &nbsp; &nbsp; 再次感谢您对我们工作的大力支持,未尽事宜,另行通知。</span><br /> <span style="line-height:2;">&nbsp; &nbsp; &nbsp; 再次感谢您对我们工作的大力支持,未尽事宜,另行通知。</span><br />
<span style="line-height:2;">&nbsp; &nbsp; &nbsp; 联系电话:{{ unitInfo.linkTel }}</span><br /> <!-- <span style="line-height:2;">&nbsp; &nbsp; &nbsp; 联系电话:{{ unitInfo.linkTel }}</span><br /> -->
<br /> <br />
</div> </div>
<div style="height:40px;width:100%;text-align:center;padding:4px 0px;background: #fafafa;border:1px solid #e8e8e8; "> <div style="height:40px;width:100%;text-align:center;padding:4px 0px;background: #fafafa;border:1px solid #e8e8e8; ">
...@@ -227,7 +227,7 @@ export default { ...@@ -227,7 +227,7 @@ export default {
this.getAssignExpertById() this.getAssignExpertById()
this.getYear() this.getYear()
this.countStart() this.countStart()
this.getCurrentUnitInfo() // this.getCurrentUnitInfo()
}, },
methods: { methods: {
moment, moment,
......
...@@ -6,17 +6,22 @@ ...@@ -6,17 +6,22 @@
<dashboard-gov v-if="isGov" /> <dashboard-gov v-if="isGov" />
<dashboard-top v-if="isTop" /> <dashboard-top v-if="isTop" />
<dashboard-admin v-if="isAdmin" /> <dashboard-admin v-if="isAdmin" />
<a-modal v-model="visibleUnitEdit" v-if="visibleUnitEdit" title="请先完善单位信息!" width="70%" :dialog-style="{ top: '12%' }" :footer="null" destroyOnClose :maskClosable="false" :closable="false">
<unit-info-edit @sub="unitSave" />
</a-modal>
</div> </div>
</template> </template>
<script> <script>
import { getUnitComplete, setUnitComplete } from '@/views/utils/auth'
import dashboardPerson from '@/views/home/components/dashboardPerson' import dashboardPerson from '@/views/home/components/dashboardPerson'
import dashboardExpert from '@/views/home/components/dashboardPerson' import dashboardExpert from '@/views/home/components/dashboardPerson'
import dashboardUnit from '@/views/home/components/dashboardUnit' import dashboardUnit from '@/views/home/components/dashboardUnit'
import dashboardGov from '@/views/home/components/dashboardGov' import dashboardGov from '@/views/home/components/dashboardGov'
import dashboardTop from '@/views/home/components/dashboardTop' import dashboardTop from '@/views/home/components/dashboardTop'
import dashboardAdmin from '@/views/home/components/dashboardAdmin' import dashboardAdmin from '@/views/home/components/dashboardAdmin'
import unitInfoEdit from '@/views/basicSetting/unit/edit'
export default { export default {
components: { dashboardPerson, dashboardExpert, dashboardUnit, dashboardGov, dashboardTop, dashboardAdmin }, components: { dashboardPerson, dashboardExpert, dashboardUnit, dashboardGov, dashboardTop, dashboardAdmin, unitInfoEdit },
data () { data () {
return { return {
isTop: false, isTop: false,
...@@ -25,6 +30,8 @@ export default { ...@@ -25,6 +30,8 @@ export default {
isReport: false, isReport: false,
isAdmin: false, isAdmin: false,
isExpert: false, isExpert: false,
isUnitComplete: getUnitComplete(),
visibleUnitEdit: false,
}; };
}, },
created () { created () {
...@@ -36,6 +43,9 @@ export default { ...@@ -36,6 +43,9 @@ export default {
this.isGov = true this.isGov = true
} else if (user.roles.indexOf("2") != -1) { } else if (user.roles.indexOf("2") != -1) {
this.isUnit = true this.isUnit = true
if (!this.isUnitComplete) {
this.visibleUnitEdit = true
}
} else if (user.roles.indexOf("3") != -1) { } else if (user.roles.indexOf("3") != -1) {
this.isReport = true this.isReport = true
} else if (user.roles.indexOf("4") != -1) { } else if (user.roles.indexOf("4") != -1) {
...@@ -46,7 +56,11 @@ export default { ...@@ -46,7 +56,11 @@ export default {
} }
}, },
methods: { methods: {
unitSave () {
setUnitComplete(true)
this.isUnitComplete = true
this.visibleUnitEdit = false
}
}, },
}; };
</script> </script>
......
...@@ -53,13 +53,13 @@ ...@@ -53,13 +53,13 @@
<a-modal v-model="visibleView" v-if="visibleView" title="项目详情" width="94%" :footer="null" :dialog-style="{ top: '8%' }" destroyOnClose :maskClosable="false"> <a-modal v-model="visibleView" v-if="visibleView" title="项目详情" width="94%" :footer="null" :dialog-style="{ top: '8%' }" destroyOnClose :maskClosable="false">
<project-view v-model="id" @close="closeWindow"></project-view> <project-view v-model="id" @close="closeWindow"></project-view>
</a-modal> </a-modal>
<a-modal v-model="visibleFileView" title="查看" width="1000px" :dialog-style="{ top: '10%' }" :footer="null" destroyOnClose> <a-modal v-model="visibleFileView" title="查看" width="1000px" :dialog-style="{ top: '10%' }" :footer="null" destroyOnClose :maskClosable="false">
<preview-file v-model="realurl.downloadUrl" :fileName="realurl.fileName"></preview-file> <preview-file v-model="realurl.downloadUrl" :fileName="realurl.fileName"></preview-file>
</a-modal> </a-modal>
<a-modal v-model="projectKPIView" title="查看项目KPI" width="80%" :dialog-style="{ top: '10%' }" :footer="null" destroyOnClose> <a-modal v-model="projectKPIView" title="查看项目KPI" width="80%" :dialog-style="{ top: '10%' }" :footer="null" destroyOnClose :maskClosable="false">
<project-kpi></project-kpi> <project-kpi></project-kpi>
</a-modal> </a-modal>
<a-modal v-model="visiblePersonEdit" v-if="visiblePersonEdit" title="请先完善个人信息!" width="700px" :dialog-style="{ top: '12%' }" :footer="null" destroyOnClose> <a-modal v-model="visiblePersonEdit" v-if="visiblePersonEdit" title="请先完善个人信息!" width="700px" :dialog-style="{ top: '12%' }" :footer="null" destroyOnClose :maskClosable="false">
<person-info-edit @sub="personSave" /> <person-info-edit @sub="personSave" />
</a-modal> </a-modal>
</div> </div>
...@@ -144,6 +144,8 @@ export default { ...@@ -144,6 +144,8 @@ export default {
setComplete(true) setComplete(true)
this.isComplete = true this.isComplete = true
this.visiblePersonEdit = false this.visiblePersonEdit = false
this.id = null
this.visibleEdit = true
}, },
getYear () { getYear () {
this.$api.batch.getCurrentYearBatch({ type: 1, projType: getType() }).then(({ data = {} }) => { this.$api.batch.getCurrentYearBatch({ type: 1, projType: getType() }).then(({ data = {} }) => {
......
...@@ -50,3 +50,20 @@ export function setComplete (value) { ...@@ -50,3 +50,20 @@ export function setComplete (value) {
} }
} }
export function getUnitComplete () {
let state = false
let user = window.sessionStorage.getItem('user')
if (user)
state = JSON.parse(user).unitComplete
return state
}
export function setUnitComplete (value) {
let user = window.sessionStorage.getItem('user')
if (user) {
let obj = JSON.parse(user)
obj.unitComplete = value
window.sessionStorage.setItem('user', JSON.stringify(obj))
}
}
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment