|
|
|
@ -424,6 +424,10 @@
|
|
|
|
>
|
|
|
|
>
|
|
|
|
查看
|
|
|
|
查看
|
|
|
|
</Button>
|
|
|
|
</Button>
|
|
|
|
|
|
|
|
<!--
|
|
|
|
|
|
|
|
($refs['editor'].isShowEditor = true,
|
|
|
|
|
|
|
|
$refs['editor'].getDetail(scope.row.id))
|
|
|
|
|
|
|
|
-->
|
|
|
|
<template v-if="scope.row.status != 2 || hasEdit">
|
|
|
|
<template v-if="scope.row.status != 2 || hasEdit">
|
|
|
|
<Button
|
|
|
|
<Button
|
|
|
|
class="slot-btns-item"
|
|
|
|
class="slot-btns-item"
|
|
|
|
@ -432,8 +436,7 @@
|
|
|
|
@click="
|
|
|
|
@click="
|
|
|
|
(new RegExp(/contractLedger/g).test($route.path)) ?
|
|
|
|
(new RegExp(/contractLedger/g).test($route.path)) ?
|
|
|
|
($refs['addContractLedger'].setId(scope.row.id),$refs['addContractLedger'].setType('editor'),$refs['addContractLedger'].show()) :
|
|
|
|
($refs['addContractLedger'].setId(scope.row.id),$refs['addContractLedger'].setType('editor'),$refs['addContractLedger'].show()) :
|
|
|
|
($refs['editor'].isShowEditor = true,
|
|
|
|
($refs['editContract'].getDetail(scope.row.id), isShowEdit = true)
|
|
|
|
$refs['editor'].getDetail(scope.row.id))
|
|
|
|
|
|
|
|
"
|
|
|
|
"
|
|
|
|
>编辑
|
|
|
|
>编辑
|
|
|
|
</Button>
|
|
|
|
</Button>
|
|
|
|
@ -643,6 +646,7 @@
|
|
|
|
</Modal>
|
|
|
|
</Modal>
|
|
|
|
|
|
|
|
|
|
|
|
<!-- 编辑-->
|
|
|
|
<!-- 编辑-->
|
|
|
|
|
|
|
|
<edit-contract ref="editContract" :is-show.sync="isShowEdit"></edit-contract>
|
|
|
|
<editor
|
|
|
|
<editor
|
|
|
|
ref="editor"
|
|
|
|
ref="editor"
|
|
|
|
:is-show-editor.sync="isShowEditor"
|
|
|
|
:is-show-editor.sync="isShowEditor"
|
|
|
|
@ -711,7 +715,6 @@ import { deepCopy, parseTime, resetSelect, moneyFormatter, throttle } from '@/ut
|
|
|
|
import { Message } from "element-ui";
|
|
|
|
import { Message } from "element-ui";
|
|
|
|
import { getInfo } from "@/api/me.js";
|
|
|
|
import { getInfo } from "@/api/me.js";
|
|
|
|
import { getToken } from "@/utils/auth";
|
|
|
|
import { getToken } from "@/utils/auth";
|
|
|
|
import { getOaToken, getOutDetail, httpCurl, updateFlow } from "@/api/out";
|
|
|
|
|
|
|
|
import editor from "./components/editorContract";
|
|
|
|
import editor from "./components/editorContract";
|
|
|
|
import detail from "./components/detailContract";
|
|
|
|
import detail from "./components/detailContract";
|
|
|
|
import paymentRegistration from "./components/paymentRegistration";
|
|
|
|
import paymentRegistration from "./components/paymentRegistration";
|
|
|
|
@ -720,7 +723,8 @@ import contractPaymentRegistration from "@/views/contract/components/contractPay
|
|
|
|
import biddingUpload from "./components/biddingUpload.vue";
|
|
|
|
import biddingUpload from "./components/biddingUpload.vue";
|
|
|
|
import oaFiles from './components/oaFiles.vue';
|
|
|
|
import oaFiles from './components/oaFiles.vue';
|
|
|
|
import addContractLedger from '@/views/contract/components/addContractLedger.vue'
|
|
|
|
import addContractLedger from '@/views/contract/components/addContractLedger.vue'
|
|
|
|
import {show} from "@/api/away";
|
|
|
|
import EditContract from './components/EditContract.vue'
|
|
|
|
|
|
|
|
import { show } from "@/api/away";
|
|
|
|
let iframe;
|
|
|
|
let iframe;
|
|
|
|
export default {
|
|
|
|
export default {
|
|
|
|
components: {
|
|
|
|
components: {
|
|
|
|
@ -731,96 +735,12 @@ export default {
|
|
|
|
contractSign,
|
|
|
|
contractSign,
|
|
|
|
contractPaymentRegistration,
|
|
|
|
contractPaymentRegistration,
|
|
|
|
biddingUpload,
|
|
|
|
biddingUpload,
|
|
|
|
oaFiles
|
|
|
|
oaFiles,
|
|
|
|
|
|
|
|
EditContract
|
|
|
|
},
|
|
|
|
},
|
|
|
|
data() {
|
|
|
|
data() {
|
|
|
|
var planPass = (rule, value, callback) => {
|
|
|
|
|
|
|
|
if (this.form.isBudget) {
|
|
|
|
|
|
|
|
if (this.form.plan.length === 0) {
|
|
|
|
|
|
|
|
callback(new Error("必选"));
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
var supplyPass = (rule, value, callback) => {
|
|
|
|
|
|
|
|
if (this.form.is_simple) {
|
|
|
|
|
|
|
|
if (value === "") {
|
|
|
|
|
|
|
|
callback(new Error("必填"));
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
var moneyPass = (rule, value, callback) => {
|
|
|
|
|
|
|
|
if (this.form.is_simple) {
|
|
|
|
|
|
|
|
if (value === "") {
|
|
|
|
|
|
|
|
callback(new Error("必填"));
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
if (/^\d+(\.\d+)?$/.test(value)) {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback(new Error("必须为数字"));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
var typePass = (rule, value, callback) => {
|
|
|
|
|
|
|
|
if (!this.form.is_simple) {
|
|
|
|
|
|
|
|
if (value === "") {
|
|
|
|
|
|
|
|
callback(new Error("必填"));
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
var methodsPass = (rule, value, callback) => {
|
|
|
|
|
|
|
|
if (!this.form.is_simple) {
|
|
|
|
|
|
|
|
if (value === "") {
|
|
|
|
|
|
|
|
callback(new Error("必填"));
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
var modalityPass = (rule, value, callback) => {
|
|
|
|
|
|
|
|
if (!this.form.is_simple) {
|
|
|
|
|
|
|
|
if (value === "") {
|
|
|
|
|
|
|
|
callback(new Error("必填"));
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
var pricePass = (rule, value, callback) => {
|
|
|
|
|
|
|
|
if (!this.form.is_simple) {
|
|
|
|
|
|
|
|
if (value === "") {
|
|
|
|
|
|
|
|
callback(new Error("必填"));
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
if (/^\d+(\.\d+)?$/.test(value)) {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback(new Error("必须为数字"));
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
} else {
|
|
|
|
|
|
|
|
callback();
|
|
|
|
|
|
|
|
}
|
|
|
|
|
|
|
|
};
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
return {
|
|
|
|
return {
|
|
|
|
|
|
|
|
isShowEdit: false,
|
|
|
|
isShowOaModal: false,
|
|
|
|
isShowOaModal: false,
|
|
|
|
oaUrl: "",
|
|
|
|
oaUrl: "",
|
|
|
|
//事前流程
|
|
|
|
//事前流程
|
|
|
|
@ -1577,63 +1497,6 @@ export default {
|
|
|
|
contract_to_contracts: [],
|
|
|
|
contract_to_contracts: [],
|
|
|
|
},
|
|
|
|
},
|
|
|
|
plan: [],
|
|
|
|
plan: [],
|
|
|
|
rules: {
|
|
|
|
|
|
|
|
name: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
required: true,
|
|
|
|
|
|
|
|
message: "必填",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
supply: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
validator: supplyPass,
|
|
|
|
|
|
|
|
trigger: "change",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
money: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
validator: moneyPass,
|
|
|
|
|
|
|
|
trigger: "change",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
type: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
validator: typePass,
|
|
|
|
|
|
|
|
trigger: "change",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
methods: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
validator: methodsPass,
|
|
|
|
|
|
|
|
trigger: "change",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
modality: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
validator: modalityPass,
|
|
|
|
|
|
|
|
trigger: "change",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
price: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
validator: pricePass,
|
|
|
|
|
|
|
|
trigger: "change",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
fundingChannels: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
required: true,
|
|
|
|
|
|
|
|
message: "必填",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
plan: [
|
|
|
|
|
|
|
|
{
|
|
|
|
|
|
|
|
validator: planPass,
|
|
|
|
|
|
|
|
trigger: "change",
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
],
|
|
|
|
|
|
|
|
},
|
|
|
|
|
|
|
|
isShowPlan: false, //新增中预算计划
|
|
|
|
isShowPlan: false, //新增中预算计划
|
|
|
|
plans: [], //预算数据
|
|
|
|
plans: [], //预算数据
|
|
|
|
planSearch: {
|
|
|
|
planSearch: {
|
|
|
|
@ -1906,7 +1769,8 @@ export default {
|
|
|
|
"amt": Number(row?.money) || row?.plan_price,
|
|
|
|
"amt": Number(row?.money) || row?.plan_price,
|
|
|
|
out_contract_id: row.id,
|
|
|
|
out_contract_id: row.id,
|
|
|
|
"zhuyaoneirong": row.content,
|
|
|
|
"zhuyaoneirong": row.content,
|
|
|
|
"jiafang": row.supply
|
|
|
|
"jiafang": row.supply,
|
|
|
|
|
|
|
|
"xiangguanliucheng": [row.flow_list?.find(i => i.custom_model_id === (row.is_common_purchase ? 99 : row.flow_mod_id))?.flow_id]
|
|
|
|
};
|
|
|
|
};
|
|
|
|
let url = `${process.env.VUE_APP_OUT_OLD}/#/flow/create?auth_token=${window.encodeURIComponent(getToken())}&module_name=oa&isSinglePage=1&module_id=72&out_contract_id=${row.id}&default_json=${JSON.stringify(baseInfo)}`;
|
|
|
|
let url = `${process.env.VUE_APP_OUT_OLD}/#/flow/create?auth_token=${window.encodeURIComponent(getToken())}&module_name=oa&isSinglePage=1&module_id=72&out_contract_id=${row.id}&default_json=${JSON.stringify(baseInfo)}`;
|
|
|
|
|
|
|
|
|
|
|
|
|