Merge pull request 'feat : 需求汇总列表新增当前审批节点字段,阶段变更新增项目终止字段' (#901) from dj into master

Reviewed-on: http://git.feashow.cn/clay/mosr-web/pulls/901
This commit is contained in:
2024-10-29 13:45:17 +00:00
3 changed files with 35 additions and 25 deletions

View File

@@ -257,20 +257,19 @@ const tableConfig = reactive({
return row.startTime + ' 至 ' + row.endTime return row.startTime + ' 至 ' + row.endTime
} }
}, },
{
// { prop: 'approveName',
// prop: 'approveName', label: '当前审批节点',
// label: '当前审批节点', align: 'center',
// align: 'center', width: 120,
// width: 120, currentRender: ({row, index}) => {
// currentRender: ({row, index}) => { if (row.state == '1') {
// if (row.state == '1') { return <span>{row.approveName||'--'}</span>
// return <span>{row.approveName}</span> } else {
// } else { return <span>{row.taskNode||'--'}</span>
// return <span>{row.taskNode}</span> }
// } }
// } },
// },
{ {
prop: 'state', prop: 'state',
label: '状态', label: '状态',

View File

@@ -8,19 +8,20 @@
<el-form-item label="抄送人员" label-width="110"> <el-form-item label="抄送人员" label-width="110">
<Ttsup :modelValue="chooseUserInfo()" @clickCopyUser="chooseUser"/> <Ttsup :modelValue="chooseUserInfo()" @clickCopyUser="chooseUser"/>
</el-form-item> </el-form-item>
<el-form-item label="变更状态" label-width="110" prop="changeState"> <el-form-item label="阶段变更" label-width="110" prop="changeState">
<el-select v-model="formData.changeState" placeholder="请选择变更状态" filterable clearable style="width: 300px"> <el-select v-model="formData.changeState" placeholder="请选择阶段变更" filterable clearable style="width: 300px">
<el-option v-for="item in cacheStore.getDict('fee_stage')" :key="item.value" :label="item.label" <el-option v-for="item in cacheStore.getDict('fee_stage')" :key="item.value" :label="item.label"
:value="item.value"> :value="item.value">
</el-option> </el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<!-- <el-form-item label="是否项目终止" label-width="110" prop="isStop">--> <el-form-item label="状态变更" label-width="110" prop="stateChange">
<!-- <el-radio-group v-model="formData.isStop" >--> <el-select v-model="formData.stateChange" placeholder="请选择状态变更" filterable clearable style="width: 300px">
<!-- <el-radio label="1"></el-radio>--> <el-option v-for="item in cacheStore.getDict('state_change')" :key="item.value" :label="item.label"
<!-- <el-radio label="0"></el-radio>--> :value="item.value">
<!-- </el-radio-group>--> </el-option>
<!-- </el-form-item>--> </el-select>
</el-form-item>
</el-form> </el-form>
<user-picker :multiple="true" ref="userPicker" title="请选择抄送人员" v-model:value="userList" <user-picker :multiple="true" ref="userPicker" title="请选择抄送人员" v-model:value="userList"
@ok="ccPersonPickerOkOrCancel" @cancelOrClear="ccPersonPickerOkOrCancel"/> @ok="ccPersonPickerOkOrCancel" @cancelOrClear="ccPersonPickerOkOrCancel"/>
@@ -86,6 +87,7 @@ const name = ref(router.currentRoute.value.name)
const loading = ref(false) const loading = ref(false)
const formData = ref({ const formData = ref({
changeState:'0', changeState:'0',
stateChange:'',
isStop:'0' isStop:'0'
}) })
const file = ref({}) const file = ref({})
@@ -456,7 +458,8 @@ const handleSubmit = async () => {
// singleFile: formData.value.singleFile, // singleFile: formData.value.singleFile,
projectId: route.query.projectId, projectId: route.query.projectId,
userIds: userIds, userIds: userIds,
changeState:formData.value.changeState changeState:formData.value.changeState,
stateChange:formData.value.stateChange
} }
if (!attachment.value.isHaveOneFile) { if (!attachment.value.isHaveOneFile) {
attachment.value.validate() attachment.value.validate()
@@ -514,7 +517,8 @@ const handleResubmit = () => {
// singleFile: attachment.value.singleFile, // singleFile: attachment.value.singleFile,
projectId: route.query.projectId, projectId: route.query.projectId,
userIds: userIds, userIds: userIds,
changeState:formData.value.changeState changeState:formData.value.changeState,
stateChange:formData.value.stateChange
} }
// console.log('重新提交params', params) // console.log('重新提交params', params)
resubmitPhaseForm(params).then(res => { resubmitPhaseForm(params).then(res => {

View File

@@ -5,10 +5,15 @@
<baseTitle title="阶段变更详情" style="margin-top: -10px"></baseTitle> <baseTitle title="阶段变更详情" style="margin-top: -10px"></baseTitle>
<div style="color: #606266;font-size: 14px;height:32px;line-height: 32px"><span style="display:inline-block;text-align: right;margin-right: 14px;margin-left: 15px">抄送人</span>{{copyName?copyName:'--'}}</div> <div style="color: #606266;font-size: 14px;height:32px;line-height: 32px"><span style="display:inline-block;text-align: right;margin-right: 14px;margin-left: 15px">抄送人</span>{{copyName?copyName:'--'}}</div>
<div style="color: #606266;font-size: 14px;display: flex;height:40px;line-height: 32px"> <div style="color: #606266;font-size: 14px;display: flex;height:40px;line-height: 32px">
<span style="display:inline-block;text-align: right;margin-right: 14px;margin-left: 15px">变更状态</span> <span style="display:inline-block;text-align: right;margin-right: 14px;margin-left: 15px">阶段变更</span>
<!-- {{changeState=='1'?'开发阶段':'研究阶段'}}--> <!-- {{changeState=='1'?'开发阶段':'研究阶段'}}-->
<tag dict-type="fee_stage" :value="changeState"/> <tag dict-type="fee_stage" :value="changeState"/>
</div> </div>
<div style="color: #606266;font-size: 14px;display: flex;height:40px;line-height: 32px">
<span style="display:inline-block;text-align: right;margin-right: 14px;margin-left: 15px">状态变更</span>
<tag dict-type="state_change" v-if="stateChange" :value="stateChange"/>
<span v-else>--</span>
</div>
<ApprovalDetail :formData="summaryData.formData" :data="summaryData" type="phase" <ApprovalDetail :formData="summaryData.formData" :data="summaryData" type="phase"
:processViewer="summaryProcessViewer" :loading="loading" :fileListShow="fileListShow" v-model:value="auditOpinion"/> :processViewer="summaryProcessViewer" :loading="loading" :fileListShow="fileListShow" v-model:value="auditOpinion"/>
<opinion v-if="summaryData.taskId" :formData="summaryData.formData" :taskId="summaryData.taskId" :taskUserOptionList="summaryData.taskUserOptionList" v-model:value="auditOpinion"></opinion> <opinion v-if="summaryData.taskId" :formData="summaryData.formData" :taskId="summaryData.taskId" :taskUserOptionList="summaryData.taskUserOptionList" v-model:value="auditOpinion"></opinion>
@@ -34,6 +39,7 @@ const loading = ref(false)
const auditOpinion = ref('') const auditOpinion = ref('')
const copyName = ref('') const copyName = ref('')
const changeState = ref('') const changeState = ref('')
const stateChange = ref('')
const fileListShow = ref('READ') const fileListShow = ref('READ')
const baseFormData = ref([]) const baseFormData = ref([])
const schema = computed(() => { const schema = computed(() => {
@@ -307,6 +313,7 @@ const getInfo = async () => {
summaryData.value = data; summaryData.value = data;
copyName.value= data.formData.userInfoList?.map(item=>item.name).join('') copyName.value= data.formData.userInfoList?.map(item=>item.name).join('')
changeState.value= data.formData.changeState changeState.value= data.formData.changeState
stateChange.value= data.formData.stateChange
loading.value = false loading.value = false
processStore.setDesign(data) processStore.setDesign(data)
processStore.runningList.value = data.runningList; processStore.runningList.value = data.runningList;