Merge branch 'master' of gitee.com:longyears/contract-business-web

master
liuxy 2 years ago
commit 7b26086df2

@ -1,10 +1,11 @@
import request from "@/utils/request";
export function getContract(params){
export function getContract(params,noloading=false){
return request({
method:'get',
url:'/api/admin/contract/index',
params
params,
noloading
})
}
@ -47,3 +48,12 @@ export function checkContractName(params){
params
})
}
export function updateContract (params) {
return request({
method: 'get',
url: '/api/admin/oa/update-contract',
params,
noloading: true
})
}

@ -47,7 +47,7 @@ export function httpCurl(params,noloading = true,s= '/Api/flowDetail',method='GE
method: 'post',
url: '/api/admin/other/http-curl',
data: {
url: url || process.env.VUE_APP_OUT_OLD,
url: url || process.env.VUE_APP_OUT_URL,
method,
params: {
s,

@ -3,7 +3,6 @@
<!-- 编辑-->
<xy-dialog :is-show.sync="isShowEditor" title="合同编辑" type="form" :form="detail" :rules="rules" @submit="editor"
ref="addContract">
<template v-slot:name>
<div class="xy-table-item">
<div class="xy-table-item-label">
@ -152,10 +151,14 @@
<div class="xy-table-item-label" style="width: 200px">请示流程
</div>
<div class="xy-table-item-content">
<el-select v-model="detail.req_status" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
<div style="display: flex;">
<el-select v-model="detail.req_status" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
<el-input v-model="oaFlow.qingshi" style="width: 100px;margin-left: 10px;" placeholder="流水号">
</el-input>
</div>
</div>
</div>
</template>
@ -164,10 +167,14 @@
<div class="xy-table-item-label" style="width: 200px">采购流程
</div>
<div class="xy-table-item-content">
<el-select v-model="detail.purchase_status" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
<div style="display: flex;">
<el-select v-model="detail.purchase_status" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
<el-input v-model="oaFlow.caigou" style="width: 100px;margin-left: 10px;" placeholder="流水号">
</el-input>
</div>
</div>
</div>
</template>
@ -176,10 +183,14 @@
<div class="xy-table-item-label" style="width: 200px">招标流程
</div>
<div class="xy-table-item-content">
<el-select v-model="detail.invite_status" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
<div style="display: flex;">
<el-select v-model="detail.invite_status" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
<el-input v-model="oaFlow.zhaobiaowenjianshencha" style="width: 100px;margin-left: 10px;" placeholder="流水号">
</el-input>
</div>
</div>
</div>
</template>
@ -189,10 +200,14 @@
合同会签流程
</div>
<div class="xy-table-item-content">
<el-select v-model="detail.join_status" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
<div style="display: flex">
<el-select v-model="detail.join_status" placeholder="请选择">
<el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
</el-option>
</el-select>
<el-input v-model="oaFlow.hetonghuiqian" style="width: 100px;margin-left: 10px;" placeholder="流水号">
</el-input>
</div>
</div>
</div>
</template>
@ -248,10 +263,12 @@
</template>
<script>
import { httpCurl } from "@/api/contractSign/contractSign"
import {
editorContract,
detailContract,
checkContractName
checkContractName,
updateContract
} from "@/api/contract/contract";
import {
getBudget
@ -264,6 +281,7 @@
Message
} from 'element-ui'
import govPlane from "@/views/contract/components/govPlane.vue";
import {getOatoken} from "@/api/oatoken";
export default {
components: {govPlane},
props: {
@ -344,6 +362,12 @@
}
}
return {
oaFlow: {
hetonghuiqian: '',
caigou: '',
zhaobiaowenjianshencha: '',
qingshi: ''
},
userList: ["liuxiangyu", "zhushulan", "admin", "jiangjiao"],
user: null,
adminEdit: false,
@ -451,10 +475,42 @@
}
],
planTotal: 0,
oatoken: '',
}
},
methods: {
async getOaFlow (table) {
const flow_type = new Map([
['caigou',2],
['hetonghuiqian',3],
['qingshi',17],
['zhaobiaowenjianshencha',27]
])
if (!this.oatoken) {
this.oatoken = (await getOatoken()).oatoken;
}
const res = await httpCurl({
oatoken: this.oatoken,
table,
keyword: this.detail.name
},true,'','get',`${process.env.VUE_APP_OUT_URL}/api/flow-list`)
if (res.data.flow.data.length > 0) {
const oaFlow = res.data.flow.data[0]
console.log('oaFlow',oaFlow)
updateContract({
out_contract_id: this.detail.id,
flow_type: flow_type.get(key),
status: oaFlow.status
})
} else {
this.$message({
type: 'warning',
message: '内控系统未找到相应流程'
})
}
},
//
planInput(e, row) {
if (!/^[0-9]+.?[0-9]*$/.test(e) && e) {
@ -608,12 +664,25 @@
}
this.$refs['govPlane'].selected = res.gov_plane
this.plan = this.detail.plan
this.oaFlow = {
hetonghuiqian: res.join_last_flow_id,
caigou: res.purchase_last_flow_id,
zhaobiaowenjianshencha: res.invite_last_flow_id,
qingshi: res.req_last_flow_id
}
},
//y
checkName(e) {
},
editor() {
for (let key in this.oaFlow) {
if (this.oaFlow[key]) {
this.getOaFlow(key).then(res => {
})
}
}
editorContract({
id: this.contrantId,
type: this.detail.type,

@ -1448,9 +1448,9 @@ export default {
"项目名称": row?.name,
"采购形式": row?.purchase_type?.value,
"采购方式": row?.purchase_way?.value,
"项目类型": this.type.filter(item => {
"项目类型": this.type.find(item => {
return item.value === row.type
})[0]?.label,
})?.label,
"资金渠道": row?.money_way?.value,
"项目预算(元)": row?.plan_price
}
@ -1576,14 +1576,14 @@ export default {
'合同列表.xlsx')
},
//
async getContracts(is_export) {
async getContracts(is_export,noloading=false) {
const res = await getContract({
page_size: this.select.pageSize,
page: this.select.pageIndex,
is_auth: 1,
...this.select
})
},noloading)
let tokens = getToken();
// if (is_export) {
@ -1802,7 +1802,7 @@ export default {
this.getMoneyWay()
//
window.onfocus = () => {
this.getContracts()
this.getContracts(false, true)
}
},
destroyed() {

Loading…
Cancel
Save