Browse Source

2024-05-30 更新

master
fengyuan_yang 2 years ago
parent
commit
a8d278c579
  1. 7
      src/api/processManagement/processManagement.js
  2. 6
      src/api/quotation/quotationInformation.js
  3. 58
      src/views/modules/changeManagement/changeRecord.vue
  4. 183
      src/views/modules/processManagement/processBindingInfo.vue
  5. 137
      src/views/modules/quotation/requestForQuote.vue

7
src/api/processManagement/processManagement.js

@ -84,5 +84,12 @@ export const getAuthorityFieldList = data => createAPI(`/plm/request/getAuthorit
*/
export const saveAuthorityList = data => createAPI(`/plm/request/saveAuthorityList`,'post',data)
/**
* 修改节点
* @param data
* @returns {*}
*/
export const editNodeInfo = data => createAPI(`/plm/request/editNodeInfo`,'post',data)

6
src/api/quotation/quotationInformation.js

@ -121,3 +121,9 @@ export const closeModalDeleteFile = data => createAPI(`/plm/quotationInformation
* @returns {*}
*/
export const searchQuotationByQuotationNo = data => createAPI(`/plm/quotationInformation/searchQuotationByQuotationNo`,'post',data)
/**
* 提交
* @param data
* @returns {*}
*/
export const submitChange = data => createAPI(`/plm/quotationInformation/submitChange`,'post',data)

58
src/views/modules/changeManagement/changeRecord.vue

@ -269,7 +269,9 @@
<el-footer style="height:25px;text-align:center">
<el-button type="primary" @click="saveData">保存</el-button>
<el-button type="primary" @click="modalFlag = false">关闭</el-button>
<el-button v-if="this.modalData.changeStatus === '审批中'" type="primary" @click="submitDataModal">提交</el-button>
<el-button v-if="modalData.changeStatus === '审批中'" type="primary" @click="agreeSubmit">同意</el-button>
<el-button v-if="modalData.changeStatus === '审批中' && modalData.isReject === 'Y'" type="primary" @click="rejectSubmit">驳回</el-button>
<!-- <el-button v-if="this.modalData.changeStatus === '审批中'" type="primary" @click="submitDataModal">提交</el-button>-->
</el-footer>
</el-tab-pane>
@ -364,7 +366,8 @@
<el-footer style="height:25px;text-align:center">
<el-button type="primary" @click="inventoryCostImpactSave">保存</el-button>
<el-button type="primary" @click="modalFlag = false">关闭</el-button>
<el-button v-if="this.modalData.changeStatus === '审批中'" type="primary" @click="submitDataModal">提交</el-button>
<el-button v-if="modalData.changeStatus === '审批中'" type="primary" @click="agreeSubmit">同意</el-button>
<el-button v-if="modalData.changeStatus === '审批中' && modalData.isReject === 'Y'" type="primary" @click="rejectSubmit">驳回</el-button>
</el-footer>
</el-tab-pane>
@ -512,7 +515,8 @@
<el-footer style="height:25px;text-align:center">
<el-button type="primary" @click="executionInformationSave">保存</el-button>
<el-button type="primary" @click="modalFlag = false">关闭</el-button>
<el-button v-if="this.modalData.changeStatus === '审批中'" type="primary" @click="submitDataModal">提交</el-button>
<el-button v-if="modalData.changeStatus === '审批中'" type="primary" @click="agreeSubmit">同意</el-button>
<el-button v-if="modalData.changeStatus === '审批中' && modalData.isReject === 'Y'" type="primary" @click="rejectSubmit">驳回</el-button>
</el-footer>
</el-tab-pane>
@ -564,7 +568,8 @@
<el-footer style="height:25px;text-align:center">
<el-button type="primary" @click="countersignatureSave">保存</el-button>
<el-button type="primary" @click="modalFlag = false">关闭</el-button>
<el-button v-if="this.modalData.changeStatus === '审批中'" type="primary" @click="submitDataModal">提交</el-button>
<el-button v-if="modalData.changeStatus === '审批中'" type="primary" @click="agreeSubmit">同意</el-button>
<el-button v-if="modalData.changeStatus === '审批中' && modalData.isReject === 'Y'" type="primary" @click="rejectSubmit">驳回</el-button>
</el-footer>
</el-tab-pane>
</el-tabs>
@ -1001,6 +1006,7 @@
searchData: {
site: this.$store.state.user.site,
changeNo: '',
menuId: this.$route.meta.menuId,
page: 1,
limit: 10
},
@ -1055,7 +1061,8 @@
nodeConclusion: '',
stepId: '',
rejectFlag: '',
rejectStepId: ''
rejectStepId: '',
isReject: ''
},
costImpactData: {
site: this.$store.state.user.site,
@ -2353,7 +2360,8 @@
nodeConclusion: '',
stepId: row.stepId,
rejectFlag: row.rejectFlag,
rejectStepId: row.rejectStepId
rejectStepId: row.rejectStepId,
isReject: row.isReject
}
this.changeTitle = '变更申请-' + this.modalData.changeNo
// ECN
@ -2403,17 +2411,41 @@
this.submitModalFlag = true
},
//
submitData () {
if (this.modalData.nodeConclusion == null || this.modalData.nodeConclusion === '') {
this.$message.warning('请选择节点结论!')
return
}
//
agreeSubmit () {
this.$confirm(`是否确认提交?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.modalData.nodeConclusion = 'Y'
this.submitData()
})
},
//
rejectSubmit () {
this.$confirm(`是否确认驳回?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.modalData.nodeConclusion = 'N'
this.submitData()
})
},
//
submitData () {
// if (this.modalData.nodeConclusion == null || this.modalData.nodeConclusion === '') {
// this.$message.warning('')
// return
// }
// this.$confirm(`?`, '', {
// confirmButtonText: '',
// cancelButtonText: '',
// type: 'warning'
// }).then(() => {
let tempData = {
site: this.modalData.site,
userName: this.$store.state.user.name,
@ -2433,7 +2465,7 @@
})
}
})
})
// })
},
// ECN

183
src/views/modules/processManagement/processBindingInfo.vue

@ -171,9 +171,10 @@
fixed="right"
header-align="center"
align="center"
width="130"
width="160"
label="操作">
<template slot-scope="scope">
<el-link style="cursor: pointer" @click="editNodeModal(scope.row)">编辑</el-link>
<el-link style="cursor: pointer" @click="subDetailModal(scope.row)">出口配置</el-link>
<el-link style="cursor: pointer" @click="authorityModal(scope.row)">权限配置</el-link>
</template>
@ -279,11 +280,6 @@
:value = "i.tableId">
</el-option>
</el-select>
<!-- <el-table-->
<!-- :data="authorityData.fieldList"-->
<!-- border-->
<!-- :height="300"-->
<!-- style="width: 100%;">-->
<el-table
:data="authorityData.fieldList"
border
@ -312,6 +308,15 @@
min-width="200"
label="字段描述">
</el-table-column>
<el-table-column
header-align="center"
align="center"
min-width="50"
label="必填">
<template slot-scope="{row}">
<el-checkbox v-model="row.required" :disabled="!authoritySelections.includes(row)" true-label="Y" false-label="N"></el-checkbox>
</template>
</el-table-column>
</el-table>
<span slot="footer" class="dialog-footer">
<div style="margin-top: 5px">
@ -321,6 +326,44 @@
</span>
</el-dialog>
<!-- 流程维护模态框 -->
<el-dialog title="流程节点" top="29vh" :close-on-click-modal="false" v-drag :visible.sync="nodeModalFlag" width="502px">
<el-form :inline="true" label-position="top" :model="nodeInfo" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="分类编码">
<el-input v-model="nodeInfo.classificationNo" :disabled="nodeModalDisableFlag" style="width: 150px"></el-input>
</el-form-item>
<el-form-item label="节点顺序">
<el-input v-model="nodeInfo.seqNo" :disabled="nodeModalDisableFlag" style="width: 142px"></el-input>
</el-form-item>
<el-form-item label="是否可驳回">
<el-select v-model="nodeInfo.isReject" style="width: 142px">
<el-option label="是" value="Y"></el-option>
<el-option label="否" value="N"></el-option>
</el-select>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="nodeInfo" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="流程ID">
<el-input v-model="nodeInfo.workflowId" :disabled="nodeModalDisableFlag" style="width: 150px"></el-input>
</el-form-item>
<el-form-item label="流程名称">
<el-input v-model="nodeInfo.workflowname" :disabled="nodeModalDisableFlag" style="width: 300px"></el-input>
</el-form-item>
</el-form>
<el-form :inline="true" label-position="top" :model="nodeInfo" style="margin-left: 7px;margin-top: -5px;">
<el-form-item label="节点ID">
<el-input v-model="nodeInfo.nodeId" :disabled="nodeModalDisableFlag" style="width: 150px"></el-input>
</el-form-item>
<el-form-item label="节点名称">
<el-input v-model="nodeInfo.nodeName" :disabled="nodeModalDisableFlag" style="width: 300px"></el-input>
</el-form-item>
</el-form>
<el-footer style="height:35px;margin-top: 25px;text-align:center">
<el-button type="primary" @click="editNodeInfo">保存</el-button>
<el-button type="primary" @click="nodeModalFlag = false">关闭</el-button>
</el-footer>
</el-dialog>
<!-- chooseList模态框 -->
<Chooselist ref="baseList" @getBaseData="getBaseData"></Chooselist>
</div>
@ -340,6 +383,7 @@
getFieldList, //
getAuthorityFieldList, //
saveAuthorityList, //
editNodeInfo, //
} from '@/api/processManagement/processManagement.js'
import Chooselist from '@/views/modules/common/Chooselist'
import DictDataSelect from '../sys/dict-data-select.vue'
@ -413,6 +457,22 @@
fieldList: [],
createBy: '',
},
queryTableParam: {
tableType: '',
passTable: [],
addTable: []
},
nodeInfo: {
site: '',
bu: '',
classificationNo: '',
workflowId: '',
workflowname: '',
nodeId: '',
nodeName: '',
seqNo: '',
isReject: ''
},
// ======== ========
dataList: [],
checkedDetail: [],
@ -693,7 +753,7 @@
sortLv: 0,
status: true,
fixed: '',
columnWidth: 90,
columnWidth: 60,
},
{
userId: this.$store.state.user.name,
@ -729,7 +789,7 @@
sortLv: 0,
status: true,
fixed: '',
columnWidth: 90,
columnWidth: 60,
},
{
userId: this.$store.state.user.name,
@ -765,7 +825,25 @@
sortLv: 0,
status: true,
fixed: '',
columnWidth: 80,
columnWidth: 60,
},
{
userId: this.$store.state.user.name,
functionId: 109001,
serialNumber: '109001Table2IsReject',
tableId: "109001Table2",
tableName: "节点信息表",
columnProp: 'isRejectDesc',
headerAlign: "center",
align: "center",
columnLabel: '是否可驳回',
columnHidden: false,
columnImage: false,
columnSortable: true,
sortLv: 0,
status: true,
fixed: '',
columnWidth: 60,
},
/*{
userId: this.$store.state.user.name,
@ -787,6 +865,7 @@
},*/
],
// ======== ========
rules: {
classificationName: [
@ -827,7 +906,9 @@
subDetailFlag: false,
maintenanceFlag: false,
modalFlag: false,
authorityFlag: false
authorityFlag: false,
nodeModalFlag: false,
nodeModalDisableFlag: false
}
},
@ -845,10 +926,59 @@
},
methods: {
// rowStyle2 ({row}) {
// if (!this.authoritySelections.includes(row)) {
// row.required = 'N'
// return{ 'background-color': '#FFF', cursor: 'pointer' }
// }
// return{ 'background-color': '#FFF', cursor: 'pointer' }
// },
//
editNodeModal (row) {
this.nodeInfo = {
site: row.site,
bu: row.bu,
classificationNo: row.classificationNo,
workflowId: row.workflowId,
workflowname: row.workflowname,
nodeId: row.nodeId,
nodeName: row.nodeName,
seqNo: row.seqNo,
isReject: row.isReject
}
this.nodeModalFlag = true
this.nodeModalDisableFlag = true
},
//
editNodeInfo () {
if (this.nodeInfo.isReject === '' || this.nodeInfo.isReject == null) {
this.$message.warning('请选择节点是否可驳回!')
return false
}
editNodeInfo(this.nodeInfo).then(({data}) => {
if (data && data.code === 0) {
this.getNodeInfoByWorkFlowSearch()
this.nodeModalFlag = false
this.$message({
message: '操作成功',
type: 'success',
duration: 1500,
onClose: () => {
}
})
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
//
authorityClickRow (row) {
this.$refs.authorityTable.toggleRowSelection(row)
//this.$refs.authorityTable.toggleRowSelection(row)
},
//
@ -956,15 +1086,8 @@
},
// Table
getTableList (type) {
let tempData = {
tableType: type,
passTable: [
'plm_change_ecn_type_detail',
'plm_change_ecn_type_header'
]
}
getTableList(tempData).then(({data}) => {
getTableList () {
getTableList(this.queryTableParam).then(({data}) => {
if (data && data.code === 0) {
this.tableList = data.rows
} else {
@ -1033,11 +1156,25 @@
this.requestCurrentRow = JSON.parse(JSON.stringify(row))
//
this.refreshCurrentTabTable()
this.tableList = []
this.fieldList = []
if (row.menuId === '108002') {
this.getTableList('plm_change')
if (row.menuId === '108002') { //
this.queryTableParam = {
tableType: 'plm_change',
passTable: [
'plm_change_ecn_type_detail',
'plm_change_ecn_type_header'
],
addTable: []
}
this.getTableList()
} else if (row.menuId === '102001') { //
this.queryTableParam = {
tableType: 'plm_quotation',
passTable: [],
addTable: []
}
this.getTableList()
}
}
},

137
src/views/modules/quotation/requestForQuote.vue

@ -361,6 +361,8 @@
<el-footer style="height:35px;margin-top: 10px;padding-bottom:5px;text-align:center">
<el-button type="primary" @click="saveData()">保存</el-button>
<el-button type="primary" @click="modalFlag = false">关闭</el-button>
<el-button v-if="modalData.changeStatus === '审批中'" type="primary" @click="agreeSubmit">同意</el-button>
<el-button v-if="modalData.changeStatus === '审批中' && modalData.isReject === 'Y'" type="primary" @click="rejectSubmit">驳回</el-button>
</el-footer>
</el-dialog>
<!--选择项目模态框-->
@ -1002,10 +1004,14 @@ import {
getProjectInformation, //
getCustomerInformation, //
searchProjectInfoList,//
submitChange, //
} from '@/api/quotation/quotationInformation.js'
import {
customerContactSearch, //
} from '@/api/customer/customerContact.js'
import {
getNodeAuthority, //
} from '@/api/changeManagement/changeManagement.js'
import Chooselist from '@/views/modules/common/Chooselist'
import quotationUploadFile from "./quotation_upload_file"
import DictDataSelect from "../sys/dict-data-select.vue";
@ -1020,7 +1026,16 @@ export default {
computed: {
priceCheckProperties() {
return priceCheckProperties
}
},
quotationInformationFlag () {
return (value) => {
let arr = this.plmQuotationInformationArr.filter(a => a.fieldId === value)
if (arr.length > 0) {
return arr[0].updateFlag
}
return 'N'
}
},
},
components: {
PriceCheckDetail,
@ -1139,7 +1154,8 @@ export default {
quoterName: '',
priorityLevel: '',
page: 1,
limit: 10
limit: 10,
menuId: this.$route.meta.menuId,
},
//
dataListLoading: false,
@ -1196,7 +1212,12 @@ export default {
createDate: '',
createBy: '',
updateDate: '',
updateBy: ''
updateBy: '',
nodeConclusion: '',
stepId: '',
rejectFlag: '',
rejectStepId: '',
isReject: ''
},
quotationDetailData: {
technicalConsiderations: '',
@ -2025,8 +2046,8 @@ export default {
customerResponseModalFlag: false,
projectPartModelFlag: false,
contactModelFlag: false,
priceCheckDetailList:[],
plmQuotationInformationArr: []
}
},
mounted() {
@ -2259,7 +2280,8 @@ export default {
* 询价信息编辑模态框
* @param row
*/
updateModal(row) {
async updateModal(row) {
await this.getNodeAuthority(row)
this.modalData = {
flag: '2',
title: '询价编辑-' + row.quotationNo,
@ -2299,7 +2321,13 @@ export default {
confirmInformation: row.confirmInformation,
quotationResultStatus: row.quotationResultStatus,
updateBy: this.$store.state.user.name,
quotationAmount:row.quotationAmount
quotationAmount:row.quotationAmount,
nodeConclusion: '',
stepId: row.stepId,
rejectFlag: row.rejectFlag,
rejectStepId: row.rejectStepId,
isReject: row.isReject
}
this.priceCheckDetail = row.priceCheckDetail
this.modalDisableFlag = true
@ -3220,18 +3248,26 @@ export default {
}
},
updateModalStatus(row, status) {
let params = JSON.parse(JSON.stringify(row))
params.quotationResultStatus = status;
params.quotationStatus = '下达';
quotationInformationEdit(params).then(({data}) => {
if (data && data.code === 0) {
this.$message.success('询价单已下达')
this.getDataList()
} else {
this.$message.warning(data.msg)
}
}).catch((error) => {
this.$message.error(error)
this.$confirm(`是否确认下达?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
let params = JSON.parse(JSON.stringify(row))
params.quotationResultStatus = status;
params.quotationStatus = '下达';
params.userName = this.$store.state.user.name
params.menuId = this.$route.meta.menuId
quotationInformationEdit(params).then(({data}) => {
if (data && data.code === 0) {
this.$message.success('询价单已下达')
this.getDataList()
} else {
this.$message.warning(data.msg)
}
}).catch((error) => {
this.$message.error(error)
})
})
},
getPriceCheckDetailList(){
@ -3248,7 +3284,70 @@ export default {
}).catch((error)=>{
this.$message.error(error)
})
}
},
//
agreeSubmit () {
this.$confirm(`是否确认提交?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.modalData.nodeConclusion = 'Y'
this.submitData()
})
},
//
rejectSubmit () {
this.$confirm(`是否确认驳回?`, '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning'
}).then(() => {
this.modalData.nodeConclusion = 'N'
this.submitData()
})
},
//
submitData () {
let tempData = {
site: this.modalData.site,
userName: this.$store.state.user.name,
quotationNo: this.modalData.quotationNo,
menuId: this.$route.meta.menuId,
nodeConclusion: this.modalData.nodeConclusion
}
submitChange(tempData).then(({data}) => {
if (data && data.code === 0) {
this.getDataList()
this.$message({message: '操作成功', type: 'success'})
this.submitModalFlag = false
this.modalFlag = false
} else {
this.$alert(data.msg, '错误', {
confirmButtonText: '确定'
})
}
})
},
//
async getNodeAuthority (row) {
let tempData = {
site: row.site,
stepId: row.stepId,
menuId: this.$route.meta.menuId
}
await getNodeAuthority(tempData).then(({data}) => {
if (data && data.code === 0) {
this.plmQuotationInformationArr = data.rows.plmQuotationInformation
}
})
},
}
}
</script>

Loading…
Cancel
Save