1.结项详情增加审核/驳回按钮,以及审批意见弹出。

通过当前执行人判断是否有审核/驳回按钮及提交按钮
2.结项列表增加代办/已办搜索
3.增加结项审核方法
4.项目立项详情页面去掉项目管理员字段
This commit is contained in:
zty 2024-08-02 15:52:20 +08:00
parent 13a49b21bc
commit 73a9ac6be7
4 changed files with 210 additions and 128 deletions

View File

@ -93,7 +93,7 @@ export default {
formOpenRangeData: [ //
{
label: '成果转化类(TT)',
value: 1,
value: 1
},
{
label: '市场创收类(SC)',
@ -116,9 +116,9 @@ export default {
value: 6
},
{
label: '自主研发类',
label: '自主研发类(ZY)',
value: 7
},
}
],
expandRight: false,
title: '',
@ -776,15 +776,15 @@ export default {
options: this.formProjectManagerData
}
},
{
type: 'custom-cascader',
title: '项目管理员',
model: 'projectAdmin',
externalValue: {
disabled: true,
options: this.formProjectAdmin
}
},
// {
// type: 'custom-cascader',
// title: '',
// model: 'projectAdmin',
// externalValue: {
// disabled: true,
// options: this.formProjectAdmin
// }
// },
// {
// type: 'custom-cascader',
// title: '',

View File

@ -4,31 +4,27 @@
<!--Page Title-->
<div id="page-title">
<h1 class="page-header text-overflow">结项详情</h1>
<!--Searchbox-->
<!--<div class="searchbox">-->
<!--<div class="input-group custom-search-form">-->
<!--<input type="text" class="form-control" placeholder="Search..">-->
<!--<span class="input-group-btn">-->
<!--<button class="text-muted" type="button"><i class="demo-pli-magnifi-glass"></i></button>-->
<!--</span>-->
<!--</div>-->
<!--</div>-->
</div>
<div>
<el-dialog v-bind="$attrs" v-on="$listeners" title="审核"
:visible="isSubmit" @close="close">
<el-form ref="elForm" :model="formData" size="medium" label-width="100px">
<el-form-item label="审核意见" prop="opinion">
<el-input v-model="formData.opinion" placeholder="请输入审核意见" clearable :style="{width: '100%'}">
</el-input>
</el-form-item>
</el-form>
<div slot="footer">
<el-button @click="close">取消</el-button>
<el-button type="primary" @click="handleConfirm">确定</el-button>
</div>
</el-dialog>
</div>
<!--End page title-->
<!--Breadcrumb-->
<!--<ol class="breadcrumb">-->
<!--<li><a href="#">Home</a></li>-->
<!--<li><a href="#">Layouts</a></li>-->
<!--<li class="active">Demo</li>-->
<!--</ol>-->
<!--End breadcrumb-->
<!--Page content-->
<div class="page-content">
<div style="text-align: right">
<el-button type="primary" @click="addExpApply(0)">审核</el-button>
<el-button type="warning" @click="addExpApply(1)">驳回</el-button>
<el-button type="primary" @click="addExpApply(0)" v-if=isEdit>审核</el-button>
<el-button type="warning" @click="addExpApply(1)" v-if="isEdit">驳回</el-button>
</div>
<data-form
element-loading-text="拼命加载中"
@ -66,6 +62,7 @@ export default {
},
data () {
return {
formData: {},
isEdit: false,
formBtnData: [],
expandRight: false,
@ -183,10 +180,14 @@ export default {
roles: JSON.parse(getItem('roles')),
formPeopleWeightData: [],
projectId: '',
conclusionFile: []
conclusionFile: [],
isExamine: 0, ///
isSubmit: false,//
opinion: ''
}
},
created () {
this.userId = getItem('userId')
this.projectId = this.$route.params.id
this.judgeSuperAdmin()
this.init()
@ -217,10 +218,38 @@ export default {
}
},
methods: {
//
handleConfirm () {
let map = {
id: this.projectId,
opinion: this.formData.opinion,
examine: this.isExamine,
}
Api.ProjectManagements.endExamine(map).then(result => {
console.log(result)
if (result.status === 0) {
this.$message.success(result.data)
this.$router.push({
name: 'ConclusionManagement'
})
} else {
this.$message.error(result.data)
}
})
},
close () {
this.isSubmit = false
this.formData.spyj = ''
},
//
addExpApply (a) {
this.isSubmit = true
this.isExamine = a
},
getProject () {
let params = {
pageUtil: {
t: {
map: {
id: this.projectId
},
pageNo: 1,
@ -231,7 +260,7 @@ export default {
if (result.status === 0) {
let project = {}
$.extend(true, project, result.data.ls[0])
if (project.ext.taskName == '结项填报') {
if (project.ext.endExecutor.includes(getItem('userId'))) {
this.isEdit = true
}
if (this.isEdit) {
@ -253,6 +282,16 @@ export default {
}
}
]
} else {
this.formBtnData = [
{
title: '取消',
type: 'default',
callback: () => {
this.$router.go(-1)
}
}
]
}
switch (project.ext.openRange) {
case 1:
@ -300,12 +339,14 @@ export default {
this.formModel = project
this.logOperationData = JSON.parse(JSON.stringify(this.formModel))
}
})
}
)
},
// form
judgeFormEditable (step) {
return (this.canEdit && this.projectStep === step)
},
}
,
getAllPeople () {
let params = {
path: {
@ -325,7 +366,8 @@ export default {
this.$message.error(result.msg)
}
})
},
}
,
init () {
let orgIdArray = JSON.parse(getItem('orgIdData'))
let userInfoId = getItem('userInfoId')
@ -373,11 +415,13 @@ export default {
this.$message.error(result.msg)
}
})
},
}
,
//
judgeSuperAdmin () {
this.isSuperAdmin = (getItem('userId') == 0)
},
}
,
/*
* form相关
*/
@ -426,7 +470,8 @@ export default {
documentType: 2,
year: moment().format('YYYY'),
}
},
}
,
initFormSchema () {
this.formSchema = [
{
@ -520,7 +565,8 @@ export default {
type: 'submit'
}
]
},
}
,
getPersonStatus () {
/*根据账号ID,查询人员信息*/
let id = this.formModel.draftManId
@ -533,7 +579,8 @@ export default {
this.$message.info(result.msg)
}
})
},
}
,
//
getDocumentType () {
@ -620,7 +667,8 @@ export default {
this.$message.error(result.msg)
}
})
},
}
,
//
getDocumentCode () {
let param = {
@ -643,7 +691,8 @@ export default {
}
})
},
}
,
//
getSignedMember () {
if ($.inArray(this.draftDeptId, this.formModel.signedDepts) < 0) {
@ -663,11 +712,13 @@ export default {
// this.initFormSchema();
}
})
},
}
,
//
radioValueChanged () {
this.initFormSchema()
},
}
,
//
selectorValueChanged (model) {
if (model === 'contentClass') {
@ -685,27 +736,32 @@ export default {
if (model === 'signedDepts') {
this.getSignedMember()
}
},
}
,
//
cascaderMultipleValueChanged (model) {
this.formCustomizePeopleData = model
},
}
,
//
formValidate () {
return this.$refs.childrenForm.validate()
},
}
,
//
formResetFields () {
this.formFileData = []
this.$refs.childrenForm.resetFields()
this.initFormSchema()
this.formPeopleWeightData = []
},
}
,
//
formCancel () {
this.formResetFields()
},
}
,
//
formSubmit (data) {
this.$refs.childrenForm.letTextEditorSubmit()
@ -728,7 +784,8 @@ export default {
this.$message.error(result.data)
}
})
},
}
,
//
assembleOrgData (source) {
let dest = []
@ -743,7 +800,8 @@ export default {
dest.push(org)
}
return dest
},
}
,
setCascaderMultipleValue (value) {
// this.formCustomizePeopleData = []; //
@ -754,7 +812,8 @@ export default {
this.formModel.permissionsPeople.push(checkV)
this.formCustomizePeopleData.push(value[value.length - 1])
}
},
}
,
handleClose (model) {
this.formModel.permissionsPeople.find((item, index) => {
@ -765,7 +824,8 @@ export default {
return true
}
})
},
}
,
}
,

View File

@ -18,7 +18,16 @@
<!--Page content-->
<div class="page-content">
<div style="margin-bottom: 10px">
<!-- <el-button type="primary" @click="addExpApply" v-if="!isSuper">新增</el-button>-->
<el-select v-model="verifyStatus" placeholder="审批状态" style="width: 220px;margin-right: 30px">
<el-option
v-for="item in verifyStatusData"
:key="item.model"
:label="item.label"
:value="item.model"
>
</el-option>
</el-select>
<el-button round type="primary" @click="init()">搜索</el-button>
</div>
<data-table
:totalColumnsData="tableColumnsData"
@ -55,6 +64,17 @@ export default {
},
data () {
return {
verifyStatus: 1,
verifyStatusData: [
{
label: '未提交',
model: 1
},
{
label: '已提交',
model: 2
}
],
expandRight: false,
//table
tableShowSingleOperation: {
@ -89,7 +109,9 @@ export default {
pageNoUtil: {
pageNo: this.pageNo,
pageSize: this.pageSize,
t: {}
map: {
verifyStatus: this.verifyStatus
}
}
}
}
@ -163,8 +185,7 @@ export default {
label: '填表日期',
prop: 'ext.applyDate',
show: true,
externalValue: {
}
externalValue: {}
},
{
label: '项目负责人',

View File

@ -73,6 +73,7 @@ export default {
//获取结项列表
getConclusionList: (param) => Ax('post', '/api/project/inits/conclusion/list', param),
conclusionUpdate: (param) => Ax('post', '/api/project/inits/conclusion/update', param),
endExamine: (param) => Ax('post', '/api/project/inits/conclusion/examine', param),
/**
* 部门周报填报管理
* */