[update] 调年度制修订计划两个流程

This commit is contained in:
lideqin
2023-10-24 17:59:40 +08:00
parent 4e1d090c78
commit 9ab2eb4c24
17 changed files with 711 additions and 159 deletions
@@ -29,7 +29,9 @@
:can-drag="true"
:scroll="{x: '100%'}"
ref="table"
rowKey="enterpriseStandardPlanId"
:rowKey="(record, index) => {
return index
}"
:columns="columns"
:dataSource="dataSource"
:pagination="false"
@@ -67,7 +69,7 @@
<base-info-table-modal ref="baseInfoTableModal" @ok="modelFormOk"></base-info-table-modal>
<!-- 选人弹框 -->
<user-select-modal ref="userSelectModal" type="radio" @change="userSelectModalChange"></user-select-modal>
<user-select-modal ref="userSelectModal" type="radio" @change="userSelectModalChange" @nameChange="userSelectNameChange"></user-select-modal>
</div>
</template>
@@ -79,7 +81,6 @@ import JTable from '@/components/jero/JTable'
import { downloadFile } from '@/api/manage'
import UserSelectByContact from '@/components/selection/UserSelectByContact'
import UserSelectModal from '@/components/selection/UserSelectModal'
import { standardizationInitBatchSetContact } from '@/api/workCenter'
import BaseInfoTableModal from './BaseInfoTableModal'
// 导入的加载提示
@@ -246,6 +247,7 @@ export default {
} else {
// 不是被驳回的待办,可以设置联络人
return <user-select-by-contact v-model={this.dataSource[index].contactUser}
nameStr={this.dataSource[index].contactUser_dictText}
disabled={this.disabled} type={'radio'} placeholder={this.$t('pleaseSelect')} />
}
}
@@ -267,17 +269,58 @@ export default {
importExcelUrl: '/process/es/annualInit/importExcel'
},
modalType: '', // 是在新增还是在编辑,编辑的时候放正在编辑的下标
isRejectedTodo: false // 是否是被驳回的待办,被驳回的待办不可设置联络人
isRejectedTodo: false, // 是否是被驳回的待办,被驳回的待办不可设置联络人
selectNames: '' // 选完人的名字,批量设置人需要用
}
},
mounted () {
/**
* 需要能判断是否是被驳回,产生的待办点击进入的,是的话需要显示带出被驳回的法规的联络人,
* 并且去掉批量设置联络人按钮,如需修改联络人,删除该标准重新走标准化发起流程
* 并且去掉批量设置联络人按钮,如需修改联络人,删除该标准重新走标准化发起流程 ??
*/
// this.isRejectedTodo = false
},
methods: {
// 拿到外面传进来的数据初始化,因为套了几层就不在外层初始化数据了
initData (data) {
this.data = data
// 给表格赋值
// this.dataSource =
},
// 外层要获取数据
getData () {
// 把数据抛出
const data = {}
data.dataSource = this.dataSource
return data
},
// 外层获取数据要过校验,返回false表示没有通过校验
getDataValidate (callback) {
// 校验表格是否每行都有数据,每行的联络人是否都有
if (this.dataSource && this.dataSource.length > 0) {
const data = {}
data.dataSource = this.dataSource
let hasErr = false
for (const item of this.dataSource) {
if (!item.contactUser) {
// 需要选联络人,但是没有选择
hasErr = true
break
}
}
if (hasErr) {
this.$message.warning(this.$t('workCenter.revisionPlanActivelyReport.pleaseSelectContact'))
const data = false
callback(data)
} else {
callback(data)
}
} else {
this.$message.warning(this.$t('addAtLeastOneRowOfData'))
const data = false
callback(data)
}
},
// 企标编号,企标名称跳转详情,原企标
handleGoDetailOld (record) {
this.$openPageNewSheet({
@@ -393,7 +436,7 @@ export default {
},
// 编辑
handleEdit (record, index) {
this.modalType = 'edit' + index
this.modalType = 'edit' + ',' + index
this.$refs.baseInfoTableModal.edit(record)
},
// 查看
@@ -406,7 +449,11 @@ export default {
},
// 批量删除
batchDel () {
this.dataSource = this.dataSource.filter(item => !this.selectedRowKeys.includes(item.enterpriseStandardPlanId))
for (let i = 0; i < this.selectedRowKeys.length; i++) {
this.dataSource.splice(this.selectedRowKeys[i], 1, false)
}
this.dataSource = this.dataSource.filter(item => !!item)
this.selectedRowKeys = []
},
// 批量设置联络人
batchSetContact () {
@@ -419,16 +466,15 @@ export default {
},
// 批量设置联络人选择人后的回调
userSelectModalChange (value) {
const param = {}
param.contact = value
param.ids = this.selectedRowKeys.join(',')
standardizationInitBatchSetContact(param).then(res => {
if (res.success) {
this.$message.success(res.message)
} else {
this.$message.warning(res.message)
}
})
for (const item of this.selectedRowKeys) {
this.dataSource[item].contactUser = value
this.dataSource[item].contactUser_dictText = this.selectNames
}
this.dataSource = JSON.parse(JSON.stringify(this.dataSource))
},
// 选人的名字获取
userSelectNameChange (value) {
this.selectNames = value
}
}
}