内外部会议、政策课题 修改
This commit is contained in:
@@ -276,7 +276,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
editForm (val) {
|
showDrawer (val) {
|
||||||
if (this.title === '编辑') {
|
if (this.title === '编辑') {
|
||||||
this.form = { ...this.editForm }
|
this.form = { ...this.editForm }
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
@@ -98,9 +98,9 @@
|
|||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<div class="divider-line">
|
<div class="divider-line">
|
||||||
课题组会议
|
课题组会议
|
||||||
<el-button type="primary" size="mini" icon="el-icon-plus" @click="addMeeting"
|
<el-button type="primary" size="mini" icon="el-icon-plus" @click="add('meetingList')"
|
||||||
:style="{visibility: (index === form.meetingList.length - 1) ? 'visible' : 'collapse'}"></el-button>
|
:style="{visibility: (index === form.meetingList.length - 1) ? 'visible' : 'collapse'}"></el-button>
|
||||||
<el-button type="primary" size="mini" icon="el-icon-minus" @click="removeMeeting(index)"
|
<el-button type="primary" size="mini" icon="el-icon-minus" @click="remove('meetingList', index)"
|
||||||
:style="{visibility: (form.meetingList.length < 2 && index === 0) ? 'collapse' : 'visible'}"></el-button>
|
:style="{visibility: (form.meetingList.length < 2 && index === 0) ? 'collapse' : 'visible'}"></el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
@@ -187,9 +187,9 @@
|
|||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<div class="divider-line">
|
<div class="divider-line">
|
||||||
课题组联系方式
|
课题组联系方式
|
||||||
<el-button type="primary" size="mini" icon="el-icon-plus" @click="addTopicContactInformation"
|
<el-button type="primary" size="mini" icon="el-icon-plus" @click="add('topicContactInformationList')"
|
||||||
:style="{visibility: (index === form.topicContactInformationList.length - 1) ? 'visible' : 'collapse'}"></el-button>
|
:style="{visibility: (index === form.topicContactInformationList.length - 1) ? 'visible' : 'collapse'}"></el-button>
|
||||||
<el-button type="primary" size="mini" icon="el-icon-minus" @click="removeTopicContactInformation(index)"
|
<el-button type="primary" size="mini" icon="el-icon-minus" @click="remove('topicContactInformationList', index)"
|
||||||
:style="{visibility: (form.topicContactInformationList.length < 2 && index === 0) ? 'collapse' : 'visible'}"></el-button>
|
:style="{visibility: (form.topicContactInformationList.length < 2 && index === 0) ? 'collapse' : 'visible'}"></el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
@@ -283,9 +283,9 @@
|
|||||||
<el-col :span="24">
|
<el-col :span="24">
|
||||||
<div class="divider-line">
|
<div class="divider-line">
|
||||||
课题组联系方式
|
课题组联系方式
|
||||||
<el-button type="primary" size="mini" icon="el-icon-plus" @click="addInsideContactInformation"
|
<el-button type="primary" size="mini" icon="el-icon-plus" @click="add('insideContactInformationList')"
|
||||||
:style="{visibility: (index === form.insideContactInformationList.length - 1) ? 'visible' : 'collapse'}"></el-button>
|
:style="{visibility: (index === form.insideContactInformationList.length - 1) ? 'visible' : 'collapse'}"></el-button>
|
||||||
<el-button type="primary" size="mini" icon="el-icon-minus" @click="removeInsideContactInformation(index)"
|
<el-button type="primary" size="mini" icon="el-icon-minus" @click="remove('insideContactInformationList', index)"
|
||||||
:style="{visibility: (form.insideContactInformationList.length < 2 && index === 0) ? 'collapse' : 'visible'}"></el-button>
|
:style="{visibility: (form.insideContactInformationList.length < 2 && index === 0) ? 'collapse' : 'visible'}"></el-button>
|
||||||
</div>
|
</div>
|
||||||
</el-col>
|
</el-col>
|
||||||
@@ -362,60 +362,59 @@ export default {
|
|||||||
type: Object
|
type: Object
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
data (){
|
data (){const rules = {
|
||||||
const rules = {
|
|
||||||
topicName: [
|
topicName: [
|
||||||
{required: true, type: 'string', message: '会议名称不能为空', trigger: 'change'},
|
{required: true, type: 'string', message: '课题名称不能为空', trigger: 'change'},
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '课题名称不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
organizer: [
|
organizer: [
|
||||||
{required: true, type: 'string', message: '会议名称不能为空', trigger: 'change'},
|
{required: true, type: 'string', message: '课题承办单位不能为空', trigger: 'change'},
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '课题承办单位不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
guidanceUnit: [
|
guidanceUnit: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '课题指导单位不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
participatingUnit: [
|
participatingUnit: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '课题参与单位不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
startTime: [
|
startTime: [
|
||||||
{required: true, message: '会议时间不能为空', trigger: 'change'}
|
{required: true, message: '启动时间不能为空', trigger: 'change'}
|
||||||
],
|
],
|
||||||
topicStatus: [
|
topicStatus: [
|
||||||
{required: true, type: 'string', message: '会议名称不能为空', trigger: 'change'},
|
{required: true, type: 'string', message: '课题状态不能为空', trigger: 'change'},
|
||||||
],
|
],
|
||||||
topicCost: [
|
topicCost: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '课题费用(万元)不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
meetingName: [
|
meetingName: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
meetingTime: [
|
meetingTime: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '会议时间不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
meetingAddress: [
|
meetingAddress: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '会议地点不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
participants: [
|
participants: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '参会人员(内部)不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
meetingContent: [
|
meetingContent: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '会议主要内容不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
name: [
|
name: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '姓名不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
department: [
|
department: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '单位不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
phone: [
|
phone: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '电话不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
email: [
|
email: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '邮箱不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
identity: [
|
identity: [
|
||||||
{type: 'string', max: 500, message: '会议名称不能超过500个字符', trigger: 'change'}
|
{type: 'string', max: 500, message: '身份不能超过500个字符', trigger: 'change'}
|
||||||
],
|
],
|
||||||
}
|
}
|
||||||
const form = {
|
const form = {
|
||||||
@@ -495,7 +494,7 @@ export default {
|
|||||||
}
|
}
|
||||||
},
|
},
|
||||||
watch: {
|
watch: {
|
||||||
editForm (val) {
|
showDrawer (val) {
|
||||||
if (this.title === '编辑') {
|
if (this.title === '编辑') {
|
||||||
this.form = { ...this.editForm }
|
this.form = { ...this.editForm }
|
||||||
} else {
|
} else {
|
||||||
@@ -549,62 +548,39 @@ export default {
|
|||||||
}
|
}
|
||||||
})
|
})
|
||||||
},
|
},
|
||||||
addMeeting () {
|
add (type) {
|
||||||
const meetingListItem = {
|
let item = {}
|
||||||
meetingName: '',
|
switch (type) {
|
||||||
meetingTime: '',
|
case 'meetingList':
|
||||||
meetingAddress: '',
|
item = {
|
||||||
participants: '',
|
meetingName: '',
|
||||||
meetingContent: '',
|
meetingTime: '',
|
||||||
|
meetingAddress: '',
|
||||||
|
participants: '',
|
||||||
|
meetingContent: ''
|
||||||
|
}
|
||||||
|
break
|
||||||
|
case 'topicContactInformationList':
|
||||||
|
case 'insideContactInformationList':
|
||||||
|
item = {
|
||||||
|
name: '',
|
||||||
|
department: '',
|
||||||
|
phone: '',
|
||||||
|
email: '',
|
||||||
|
identity: ''
|
||||||
|
}
|
||||||
|
break
|
||||||
}
|
}
|
||||||
this.form.meetingList = [...this.form.meetingList, meetingListItem]
|
this.form[type] = [...this.form[type], item]
|
||||||
},
|
},
|
||||||
removeMeeting (index) {
|
remove (type, index) {
|
||||||
let res = []
|
let res = []
|
||||||
this.form.meetingList.forEach((item, i) => {
|
this.form[type].forEach((item, i) => {
|
||||||
if (i !== index) {
|
if (i !== index) {
|
||||||
res.push(item)
|
res.push(item)
|
||||||
}
|
}
|
||||||
})
|
})
|
||||||
this.form.meetingList = [ ...res ]
|
this.form[type] = [ ...res ]
|
||||||
},
|
|
||||||
addTopicContactInformation () {
|
|
||||||
const topicContactInformationListItem = {
|
|
||||||
name: '',
|
|
||||||
department: '',
|
|
||||||
phone: '',
|
|
||||||
email: '',
|
|
||||||
identity: ''
|
|
||||||
}
|
|
||||||
this.form.topicContactInformationList = [...this.form.topicContactInformationList, topicContactInformationListItem]
|
|
||||||
},
|
|
||||||
removeTopicContactInformation (index) {
|
|
||||||
let res = []
|
|
||||||
this.form.topicContactInformationList.forEach((item, i) => {
|
|
||||||
if (i !== index) {
|
|
||||||
res.push(item)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.form.topicContactInformationList = [ ...res ]
|
|
||||||
},
|
|
||||||
addInsideContactInformation () {
|
|
||||||
const insideContactInformationListItem = {
|
|
||||||
name: '',
|
|
||||||
department: '',
|
|
||||||
phone: '',
|
|
||||||
email: '',
|
|
||||||
identity: ''
|
|
||||||
}
|
|
||||||
this.form.insideContactInformationListItem = [...this.form.insideContactInformationListItem, insideContactInformationListItem]
|
|
||||||
},
|
|
||||||
removeInsideContactInformation (index) {
|
|
||||||
let res = []
|
|
||||||
this.form.insideContactInformationListItem.forEach((item, i) => {
|
|
||||||
if (i !== index) {
|
|
||||||
res.push(item)
|
|
||||||
}
|
|
||||||
})
|
|
||||||
this.form.insideContactInformationListItem = [ ...res ]
|
|
||||||
},
|
},
|
||||||
resetForm () {
|
resetForm () {
|
||||||
this.form = this.initForm
|
this.form = this.initForm
|
||||||
|
|||||||
@@ -39,7 +39,7 @@ export default {
|
|||||||
type: Object
|
type: Object
|
||||||
},
|
},
|
||||||
disabled: {
|
disabled: {
|
||||||
type: Object,
|
type: Boolean,
|
||||||
default: false
|
default: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
@@ -6,7 +6,8 @@
|
|||||||
</ProcessHeader>
|
</ProcessHeader>
|
||||||
<div class="headerTabs">
|
<div class="headerTabs">
|
||||||
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
<div class="headerTabsItem" :class="active === '1' ? 'active' : ''" @click="handleTabs('1')">基础信息</div>
|
||||||
<div class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">人员信息</div>
|
<div v-if="title === '起草'" class="headerTabsItem" :class="active === '2' ? 'active' : ''" @click="handleTabs('2')">人员信息</div>
|
||||||
|
<div v-else class="headerTabsItem" :class="active === '3' ? 'active' : ''" @click="handleTabs('3')">审批历史</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="content">
|
<div class="content">
|
||||||
<el-form v-if="reloadForm"
|
<el-form v-if="reloadForm"
|
||||||
@@ -42,6 +43,9 @@
|
|||||||
<div class="block" style="padding-top: 20px;" v-show="active === '2'">
|
<div class="block" style="padding-top: 20px;" v-show="active === '2'">
|
||||||
<PersonInfo ref="roleForm" :roleForm="roleForm" :roleRules="roleRules" :disabled="disabled"></PersonInfo>
|
<PersonInfo ref="roleForm" :roleForm="roleForm" :roleRules="roleRules" :disabled="disabled"></PersonInfo>
|
||||||
</div>
|
</div>
|
||||||
|
<div class="block" style="padding-top: 20px;" v-show="active === '3'">
|
||||||
|
<ApprovalHistory :data="processData" :loading="processLoading"></ApprovalHistory>
|
||||||
|
</div>
|
||||||
</el-form>
|
</el-form>
|
||||||
</div>
|
</div>
|
||||||
<ProcessFooter
|
<ProcessFooter
|
||||||
@@ -66,6 +70,7 @@ import Classification from "./components/Classification";
|
|||||||
import Topics from "./components/Topics";
|
import Topics from "./components/Topics";
|
||||||
import PersonInfo from "./components/PersonInfo";
|
import PersonInfo from "./components/PersonInfo";
|
||||||
import ReceiptDescription from "@/components/hzwlComponents/ReceiptDescription";
|
import ReceiptDescription from "@/components/hzwlComponents/ReceiptDescription";
|
||||||
|
import ApprovalHistory from "@/components/hzwlComponents/ApprovalHistory";
|
||||||
|
|
||||||
import { getDicTypeListCode, saveTaskFirst, queryTaskFirst, inboundLiaisonDetail, taskDel } from 'api/process'
|
import { getDicTypeListCode, saveTaskFirst, queryTaskFirst, inboundLiaisonDetail, taskDel } from 'api/process'
|
||||||
|
|
||||||
@@ -79,7 +84,8 @@ export default {
|
|||||||
Classification,
|
Classification,
|
||||||
Topics,
|
Topics,
|
||||||
PersonInfo,
|
PersonInfo,
|
||||||
ReceiptDescription
|
ReceiptDescription,
|
||||||
|
ApprovalHistory
|
||||||
},
|
},
|
||||||
data () {
|
data () {
|
||||||
const form = {
|
const form = {
|
||||||
@@ -176,12 +182,16 @@ export default {
|
|||||||
rules,
|
rules,
|
||||||
roleForm,
|
roleForm,
|
||||||
roleRules,
|
roleRules,
|
||||||
dict: {}
|
dict: {},
|
||||||
|
// 审批历史
|
||||||
|
processData: [],
|
||||||
|
processLoading: false,
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
created() {
|
created() {
|
||||||
this.getDicTypeListCode()
|
this.getDicTypeListCode()
|
||||||
this.getData()
|
this.getData()
|
||||||
|
this.processTable()
|
||||||
},
|
},
|
||||||
methods: {
|
methods: {
|
||||||
handleTabs(tab) {
|
handleTabs(tab) {
|
||||||
@@ -248,6 +258,19 @@ export default {
|
|||||||
})
|
})
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
// 审批历史
|
||||||
|
processTable () {
|
||||||
|
if (this.$route.query.prcNum) {
|
||||||
|
this.$http.get('lawss/activiti/get_list_by_instance', {
|
||||||
|
prcNum: this.$route.query.prcNum
|
||||||
|
}, {
|
||||||
|
loading: 'processLoading',
|
||||||
|
_this: this
|
||||||
|
}, res => {
|
||||||
|
this.$set(this, 'processData', res)
|
||||||
|
}, e => {})
|
||||||
|
}
|
||||||
|
},
|
||||||
//保存
|
//保存
|
||||||
handleSave() {
|
handleSave() {
|
||||||
this.footerLoading = true
|
this.footerLoading = true
|
||||||
|
|||||||
+1
-1
@@ -39,7 +39,7 @@ export default {
|
|||||||
type: Object
|
type: Object
|
||||||
},
|
},
|
||||||
disabled: {
|
disabled: {
|
||||||
type: Object,
|
type: Boolean,
|
||||||
default: false
|
default: false
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
|||||||
Reference in New Issue
Block a user