合同台资同步

master
xy 2 years ago
parent 14a2729c64
commit 6ef647cc0e

@ -9,7 +9,7 @@ VUE_APP_UPLOAD_API = http://contract-sqhj.ali251.langye.net/api/admin/upload-fil
VUE_APP_BASE_API = VUE_APP_BASE_API =
VUE_APP_OUT_Book = http://book-sqhj.ali251.langye.net VUE_APP_OUT_Book = http://book-sqhj.ali251.langye.net
VUE_APP_OUT_GDZC = http://hjjc-szemcgdzc.ali251.langye.net VUE_APP_OUT_GDZC = http://hjjc-szemcgdzc.ali251.langye.net
VUE_APP_OUT_OLD = http://oa-sqhj.ali251.langye.net/index.php/admin VUE_APP_OUT_OLD = http://oa-sqhj-test.ali251.langye.net/index.php/admin
VUE_APP_OUT_URL = http://oa-sqhj.ali251.langye.net/index.php/admin VUE_APP_OUT_URL = http://oa-sqhj-test.ali251.langye.net/index.php/admin
VUE_APP_OUT_GOODS = http://hjjc-szemc_goods-test.ali251.langye.net VUE_APP_OUT_GOODS = http://hjjc-szemc_goods-test.ali251.langye.net

@ -2,11 +2,10 @@
<div :class="classObj" class="app-wrapper"> <div :class="classObj" class="app-wrapper">
<!-- 最顶部导航栏--> <!-- 最顶部导航栏-->
<div class="top-head-bar"> <div class="top-head-bar" v-if="!$store.state.app.isInIframe">
<div class="top-head-bar__logo"> <div class="top-head-bar__logo">
<img style="height: 20px" src="../assets/logo.png" alt="logo" /> <img style="height: 20px" src="../assets/logo.png" alt="logo" />
</div> </div>
<ul> <ul>
<li <li
v-for="item in $store.state.permission.rootMenu" v-for="item in $store.state.permission.rootMenu"
@ -48,69 +47,47 @@
@click="handleClickOutside" @click="handleClickOutside"
/> />
<template v-if="$route.path === '/worker'"> <div class="app-view-container">
<el-scrollbar style="padding-top: 50px; height: 100%"> <template v-if="$route.path === '/worker'">
<worker></worker> <el-scrollbar style="height: 100%">
</el-scrollbar> <worker></worker>
</template> </el-scrollbar>
<template v-else-if="/^\/asset/.test($route.path)"> </template>
<template v-else-if="/^\/asset/.test($route.path)">
<sidebar class="sidebar-container" /> <sidebar class="sidebar-container" />
<div class="main-container"> <div class="main-container">
<iframe style="width: 100%;height: 100%;" ref="bookIframe" :src="iframeUrl" <iframe style="width: 100%;height: 100%;" ref="bookIframe" :src="iframeUrl"
>你的浏览器不支持该iframe</iframe >你的浏览器不支持该iframe</iframe
>
</div>
</template>
<template v-else-if="$route.path === '/oaOld'">
<div
style="width: 100%; height: 100%; overflow-x: hidden"
> >
</div> <iframe ref="oldIframe" style="width: 100%;" :src="oldOaUrl">你的浏览器不支持该iframe</iframe>
<!-- <div class="main-container">-->
<!-- <div :class="{ 'fixed-header': fixedHeader }" v-if="false">-->
<!-- <navbar />-->
<!-- </div>-->
<!-- <el-scrollbar style="height: 100%">-->
<!-- <app-main />-->
<!-- </el-scrollbar>-->
<!-- </div>-->
</template>
<!-- <template v-else-if="$route.path === '/gdzc'">-->
<!-- <div-->
<!-- style="width: 100%; height: 100%; padding-top: 50px; overflow-x: hidden"-->
<!-- >-->
<!-- <iframe ref="gdzcIframe" :src="gdzcUrl"-->
<!-- >你的浏览器不支持该iframe</iframe-->
<!-- >-->
<!-- </div>-->
<!-- </template>-->
<template v-else-if="$route.path === '/oaOld'">
<div
style="width: 100%; height: 100%; padding-top: 50px; overflow-x: hidden"
>
<iframe ref="oldIframe" style="width: 100%;" :src="oldOaUrl">你的浏览器不支持该iframe</iframe>
</div>
</template>
<template v-else-if="$route.path === '/old'">
<div
style="width: 100%; height: 100%; padding-top: 50px; overflow-x: hidden"
>
<iframe ref="oldIframe" style="width: 100%;" :src="oldUrl">你的浏览器不支持该iframe</iframe>
</div>
</template>
<!-- <template v-else-if="$route.path === '/goods'">-->
<!-- <div-->
<!-- style="width: 100%; height: 100%; padding-top: 50px; overflow-x: hidden"-->
<!-- >-->
<!-- <iframe ref="goodsIframe" :src="goodsUrl">你的浏览器不支持该iframe</iframe>-->
<!-- </div>-->
<!-- </template>-->
<template v-else>
<sidebar class="sidebar-container" />
<div class="main-container">
<div :class="{ 'fixed-header': fixedHeader }" v-if="false">
<navbar />
</div> </div>
<el-scrollbar style="height: 100%"> </template>
<app-main /> <template v-else-if="$route.path === '/old'">
</el-scrollbar> <div
</div> style="width: 100%; height: 100%; overflow-x: hidden"
</template> >
<iframe ref="oldIframe" style="width: 100%;" :src="oldUrl">你的浏览器不支持该iframe</iframe>
</div>
</template>
<template v-else>
<sidebar class="sidebar-container" />
<div class="main-container">
<div :class="{ 'fixed-header': fixedHeader }" v-if="false">
<navbar />
</div>
<el-scrollbar style="height: 100%">
<app-main />
</el-scrollbar>
</div>
</template>
</div>
</div> </div>
</template> </template>
@ -132,6 +109,7 @@ export default {
mixins: [ResizeMixin], mixins: [ResizeMixin],
data() { data() {
return { return {
isIframe: false,
active: 0, active: 0,
bookUrl: process.env.VUE_APP_OUT_Book, bookUrl: process.env.VUE_APP_OUT_Book,
gdzcUrl: `${process.env.VUE_APP_OUT_GDZC}/member/oss_login?id=${this.$store.state.user.userId}&username=${this.$store.state.user.username}`, gdzcUrl: `${process.env.VUE_APP_OUT_GDZC}/member/oss_login?id=${this.$store.state.user.userId}&username=${this.$store.state.user.username}`,
@ -183,7 +161,8 @@ export default {
this.$router.push(item.path); this.$router.push(item.path);
}, },
}, },
mounted() {}, mounted() {
},
watch: { watch: {
"$route.path": { "$route.path": {
handler: function (url) { handler: function (url) {
@ -218,13 +197,6 @@ export default {
dom.onload = null; dom.onload = null;
}) })
next() next()
},
created() {
let gdzcIframe = document.createElement('iframe');
gdzcIframe.src = `${process.env.VUE_APP_OUT_GDZC}/member/oss_login?id=${this.$store.state.user.userId}&username=${this.$store.state.user.username}`
gdzcIframe.onload = () => {
gdzcIframe = null;
}
} }
}; };
</script> </script>
@ -233,6 +205,14 @@ export default {
@import "~@/styles/mixin.scss"; @import "~@/styles/mixin.scss";
@import "~@/styles/variables.scss"; @import "~@/styles/variables.scss";
.app-view-container {
height: 100%;
padding-top: $topbarHeight;
&:has(.main-container) {
padding-top: 0;
}
}
.app-wrapper { .app-wrapper {
@include clearfix; @include clearfix;
position: relative; position: relative;
@ -247,11 +227,11 @@ export default {
.top-head-bar { .top-head-bar {
background: #338de3ff; background: #338de3ff;
height: 50px; height: $topbarHeight;
filter: drop-shadow(0 1px 1px #49a0f3); filter: drop-shadow(0 1px 1px #49a0f3);
display: grid; display: grid;
grid-template-columns: auto 0.5fr 6fr 0.2fr 1fr; grid-template-columns: auto 0.5fr 6fr 0.2fr 1fr;
grid-template-rows: 50px; grid-template-rows: $topbarHeight;
grid-template-areas: "logo . menu . user"; grid-template-areas: "logo . menu . user";
z-index: 2000; z-index: 2000;
@ -261,7 +241,7 @@ export default {
right: 0; right: 0;
&__logo { &__logo {
height: 50px; height: $topbarHeight;
grid-area: logo; grid-area: logo;
display: flex; display: flex;
align-items: center; align-items: center;
@ -406,10 +386,5 @@ iframe {
left: 0; left: 0;
bottom: 0; bottom: 0;
} }
.main-container {
iframe {
position: absolute;
}
}
</style> </style>

@ -21,6 +21,8 @@ const whiteList = ['/login'] // no redirect whitelist
router.beforeEach(async (to, from, next) => { router.beforeEach(async (to, from, next) => {
// start progress bar // start progress bar
NProgress.start() NProgress.start()
store.commit('app/SET_ISINIFRAME')
console.log('iframe',store.state.app.isInIframe)
// set page title // set page title
document.title = getPageTitle(to.meta.title) document.title = getPageTitle(to.meta.title)

@ -11,6 +11,7 @@ const state = {
}, },
device: "desktop", device: "desktop",
workerLayout: {}, workerLayout: {},
isInIframe: false,
}; };
const getter = { const getter = {
layout: (state) => { layout: (state) => {
@ -18,6 +19,9 @@ const getter = {
}, },
}; };
const mutations = { const mutations = {
SET_ISINIFRAME: (state) => {
state.isInIframe = self.frameElement && self.frameElement.tagName === "IFRAME"
},
TOGGLE_SIDEBAR: (state) => { TOGGLE_SIDEBAR: (state) => {
state.sidebar.opened = !state.sidebar.opened; state.sidebar.opened = !state.sidebar.opened;
state.sidebar.withoutAnimation = false; state.sidebar.withoutAnimation = false;

@ -241,4 +241,12 @@
} }
&:has(.top-head-bar) {
.main-container {
top: 0!important;
}
.sidebar-container {
top: 0!important;
}
}
} }

@ -13,10 +13,11 @@ $subMenuHover:#edf6ff;
$submenuActiveBg:#dcf3ff; $submenuActiveBg:#dcf3ff;
$sideBarWidth: 210px; $sideBarWidth: 210px;
$topbarHeight: 50px;
// the :export directive is the magic sauce for webpack // the :export directive is the magic sauce for webpack
// https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass // https://www.bluematador.com/blog/how-to-share-variables-between-js-and-sass
:export { :export {
topbarHeight: $topbarHeight;
menuText: $menuText; menuText: $menuText;
menuActiveText: $menuActiveText; menuActiveText: $menuActiveText;
subMenuActiveText: $subMenuActiveText; subMenuActiveText: $subMenuActiveText;

@ -0,0 +1,170 @@
<template>
<div>
<div ref="contractList" style="padding: 0 20px">
<lx-header
icon="md-apps"
style="margin-bottom: 10px; border: 0px; margin-top: 15px"
text="出差管理"
>
<slot>
<div class="selects">
<div>
<span style="padding: 0 6px; word-break: keep-all">关键字</span>
<span>
<Input
v-model="select.keyword"
clearable
placeholder="关键字搜索"
style="width: 200px"
/>
</span>
</div>
<div>
<span>开始时间</span>
<span>
<DatePicker
:value="select.start_year"
placeholder="选择开始时间"
placement="bottom"
format="yyyy-MM-dd"
style="width: 120px"
@on-change="(e) => (select.start_year = $moment(e).format('YYYY-MM-DD'))"
></DatePicker>
</span>
</div>
<div>
<span>结束时间</span>
<span>
<DatePicker
:value="select.end_year"
placeholder="选择结束时间"
placement="bottom"
format="yyyy-MM-dd"
style="width: 120px"
@on-change="(e) => (select.end_year = $moment(e).format('YYYY-MM-DD'))"
></DatePicker>
</span>
</div>
<div>
<Button
type="primary"
@click="">新增</Button>
</div>
<div>
<Button type="primary" @click="getList"></Button>
</div>
<div>
<Button type="primary" @click="">导出</Button>
</div>
</div>
</slot>
</lx-header>
<xy-table
ref="xyTable"
:list="list"
:show-summary="true"
@editor=""
>
</xy-table>
<div style="display: flex; justify-content: flex-end;padding: 10px 6px;">
<Page
:total="total"
show-elevator
@on-change="e => {
select.page = e;
getList();
}"
show-sizer
@on-page-size-change="e => {
select.page = 1;
select.page_size = e;
getList();
}"
/>
</div>
</div>
</div>
</template>
<script>
import {parseTime} from "@/utils";
export default {
data() {
return {
select: {
keyword: '',
start_year: "",
end_year: "",
page: 1,
page_size: 10
},
total: 0,
list: [],
table: [
{
label: "标题"
},
{
label: "开始时间"
},
{
label: "结束时间"
},
{
label: "是否用车"
},
{
label: "是否市内补助"
},
{
label: "创建日期",
width: 160,
prop: "created_at",
formatter: (cell, data, value) => {
return this.$moment(value).format("YYYY-MM-DD HH:mm");
},
},
{
label: "业务科室",
width: 140,
prop: "department.name",
},
{
label: "经办人",
width: 140,
prop: "admin.name",
},
]
}
},
methods: {
async getList () {
}
},
computed: {},
}
</script>
<style scoped lang="scss">
.selects {
display: flex;
flex-wrap: wrap;
& > div {
margin-bottom: 6px;
margin-right: 4px;
& > span {
word-break: keep-all;
padding: 0 4px ;
}
}
}
</style>

@ -88,61 +88,7 @@
</div> </div>
</div> </div>
</template> </template>
<!--
<template v-slot:guarantee_money>
<div class="xy-table-item">
<div class="xy-table-item-label">
<span style="color: red;font-weight: 600;padding-right: 4px;">*</span>质保金
</div>
<div class="xy-table-item-content xy-table-item-price">
<el-input-number :precision="2" :controls="false" placeholder="请填写质保金" v-model="form.guarantee_money"
style="width: 300px;" />
</div>
</div>
</template>
<template v-slot:start_date>
<div class="xy-table-item">
<div class="xy-table-item-label">
<span style="color: red;font-weight: 600;padding-right: 4px;">*</span>合同服务时间
</div>
<div class="xy-table-item-content">
<el-date-picker style="width: 300px;" value-format="yyyy-MM-dd" v-model="time" type="daterange"
range-separator="-" start-placeholder="开始日期" end-placeholder="结束日期"
@change="e => {
(e[0] && e[1]) ?
(form.start_date = e[0],
form.end_date = e[1])
: (form.start_date = '',form.end_date = '')
}">
</el-date-picker>
</div>
</div>
</template>
<template v-slot:guarantee_year>
<div class="xy-table-item">
<div class="xy-table-item-label">
<span style="color: red;font-weight: 600;padding-right: 4px;">*</span>质保期
</div>
<div class="xy-table-item-content xy-table-item-year">
<el-input-number :controls="false" placeholder="请填写质保期" v-model="form.guarantee_year"
style="width: 300px;" />
</div>
</div>
</template>
<template v-slot:date>
<div class="xy-table-item">
<div class="xy-table-item-label">
<span style="color: red;">*</span>
签订日期
</div>
<div class="xy-table-item-content">
<el-date-picker style="width: 300px;" value-format="yyyy-MM-dd" v-model="form.date" type="date">
</el-date-picker>
</div>
</div>
</template>-->
<template v-slot:is_framework> <template v-slot:is_framework>
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
@ -242,6 +188,7 @@ export default {
purchase_status: 3, purchase_status: 3,
//join_status: 3, //join_status: 3,
invite_status: 3, invite_status: 3,
outcome_type: 1,
files: [] files: []
}, },
fileLists: [], fileLists: [],
@ -293,12 +240,24 @@ export default {
this.isShow = false; this.isShow = false;
}, },
init() { init() {
for (let key in this.form) { this.form = {
if (this.form[key] instanceof Array) { name: "",
this.form[key] = []; contract_type: 1,
} else { number: "",
this.form[key] = ""; supply: "",
} money: "",
start_date: "",
end_date: "",
guarantee_money: "",
guarantee_year: "",
date: this.$moment().format('YYYY-MM-DD'),
is_contract: 1,
is_framework: "",
purchase_status: 3,
//join_status: 3,
invite_status: 3,
outcome_type: 1,
files: []
} }
this.$refs["dialog"].clearValidate(); this.$refs["dialog"].clearValidate();
}, },

File diff suppressed because it is too large Load Diff

@ -214,15 +214,20 @@
<Button <Button
style="margin-left: 10px" style="margin-left: 10px"
type="primary" type="primary"
@click="$refs['addContractLedger'].setType('add'),$refs['addContractLedger'].show()" @click="$router.push({
>新增</Button path: '/contract/contractEdit',
query: {
isLedger: 1
}
})"
>新增</Button
> >
<Button style="margin-left: 10px" type="primary" @click="getContracts" <Button style="margin-left: 10px" type="primary" @click="getContracts"
>查询</Button >查询</Button
> >
<Button type="primary" @click="toExport()" style="margin-left: 10px" <Button type="primary" @click="toExport()" style="margin-left: 10px"
>导出</Button >导出</Button
> >
<!-- <Button type="primary" style="margin-left: 10px">导出</Button>--> <!-- <Button type="primary" style="margin-left: 10px">导出</Button>-->
</div> </div>
@ -286,7 +291,7 @@
</Button> </Button>
</template> </template>
</template> </template>
<!--合同没有签订合同审批完成需要签订合同--> <!--合同没有签订合同审批完成需要签订合同-->
<template <template
v-if="(scope.row.status === 1 && scope.row.join_status === 3&&scope.row.is_contract )" v-if="(scope.row.status === 1 && scope.row.join_status === 3&&scope.row.is_contract )"
> >
@ -313,7 +318,7 @@
size="small" size="small"
type="primary" type="primary"
@click="signProcess(scope.row)" @click="signProcess(scope.row)"
>合同审批 >合同审批
</Button> </Button>
</template> </template>
@ -344,7 +349,7 @@
ghost ghost
size="small" size="small"
type="error" type="error"
>删除 >删除
</i-button> </i-button>
</Poptip> </Poptip>
</template> </template>
@ -381,7 +386,7 @@
($refs['editor'].isShowEditor = true, ($refs['editor'].isShowEditor = true,
$refs['editor'].getDetail(scope.row.id)) $refs['editor'].getDetail(scope.row.id))
" "
>编辑 >编辑
</Button> </Button>
</template> </template>
<template v-if="hasEdit && scope.row.status === 2"> <template v-if="hasEdit && scope.row.status === 2">
@ -429,7 +434,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>项目名称 >项目名称
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -466,7 +471,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*是否为简易流程</span >*是否为简易流程</span
> >
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -495,7 +500,7 @@
padding-right: 4px; padding-right: 4px;
font-size: 11px; font-size: 11px;
" "
>*</span >*</span
>承包商/供货商 >承包商/供货商
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -517,7 +522,7 @@
padding-right: 4px; padding-right: 4px;
font-size: 11px; font-size: 11px;
" "
>*</span >*</span
>合同金额 >合同金额
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -533,7 +538,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>项目类型 >项目类型
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -555,7 +560,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>采购形式 >采购形式
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -577,7 +582,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>采购类型 >采购类型
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -599,7 +604,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>采购预算价 >采购预算价
</div> </div>
<div class="xy-table-item-content xy-table-item-price"> <div class="xy-table-item-content xy-table-item-price">
@ -615,7 +620,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>资金渠道 >资金渠道
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -634,23 +639,23 @@
</div> </div>
</div> </div>
</template> </template>
<!-- <template v-slot:isBudget>--> <!-- <template v-slot:isBudget>-->
<!-- <div class="xy-table-item">--> <!-- <div class="xy-table-item">-->
<!-- <div class="xy-table-item-label" style="width: 200px">--> <!-- <div class="xy-table-item-label" style="width: 200px">-->
<!-- <span style="color: red; font-weight: 600; padding-right: 4px"--> <!-- <span style="color: red; font-weight: 600; padding-right: 4px"-->
<!-- >*</span--> <!-- >*</span-->
<!-- >是否为预算内确定项目--> <!-- >是否为预算内确定项目-->
<!-- </div>--> <!-- </div>-->
<!-- <div class="xy-table-item-content">--> <!-- <div class="xy-table-item-content">-->
<!-- <el-switch v-model="form.isBudget" />--> <!-- <el-switch v-model="form.isBudget" />-->
<!-- </div>--> <!-- </div>-->
<!-- </div>--> <!-- </div>-->
<!-- </template>--> <!-- </template>-->
<template v-slot:is_substitute v-if="!form.is_simple"> <template v-slot:is_substitute v-if="!form.is_simple">
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label" style="width: 200px"> <div class="xy-table-item-label" style="width: 200px">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>是否为代建项目 >是否为代建项目
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -668,7 +673,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label" style="width: 200px"> <div class="xy-table-item-label" style="width: 200px">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>是否框架协议 >是否框架协议
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -686,7 +691,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label" style="width: 200px"> <div class="xy-table-item-label" style="width: 200px">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>是否使用框架协议内的采购 >是否使用框架协议内的采购
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -704,7 +709,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>关联的框架协议合同 >关联的框架协议合同
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -719,7 +724,7 @@
closable closable
color="primary" color="primary"
@on-close="delSelections(item)" @on-close="delSelections(item)"
>{{ item.name }}</Tag >{{ item.name }}</Tag
> >
</template> </template>
</template> </template>
@ -746,7 +751,7 @@
<div class="xy-table-item"> <div class="xy-table-item">
<div class="xy-table-item-label"> <div class="xy-table-item-label">
<span style="color: red; font-weight: 600; padding-right: 4px" <span style="color: red; font-weight: 600; padding-right: 4px"
>*</span >*</span
>关联预算计划 >关联预算计划
</div> </div>
<div class="xy-table-item-content"> <div class="xy-table-item-content">
@ -758,8 +763,8 @@
<template v-if="form.plan.length > 0"> <template v-if="form.plan.length > 0">
<template v-for="item in form.plan"> <template v-for="item in form.plan">
<Tag closable color="primary" @on-close="delPlan(item)">{{ <Tag closable color="primary" @on-close="delPlan(item)">{{
item.label item.label
}}</Tag> }}</Tag>
</template> </template>
</template> </template>
<template v-else> <template v-else>
@ -800,7 +805,7 @@
}}</span> }}</span>
</div> </div>
<el-link type="success" @click="clearSelectForSearch" <el-link type="success" @click="clearSelectForSearch"
>清空选择</el-link >清空选择</el-link
> >
</div> </div>
<xy-table <xy-table
@ -888,8 +893,8 @@
> >
<template slot-scope="scope"> <template slot-scope="scope">
<Input v-if="scope.row.pid === 0" <Input v-if="scope.row.pid === 0"
:value="scope.row.useMoney" :value="scope.row.useMoney"
@input="planInput($event, scope.row)" @input="planInput($event, scope.row)"
/> />
</template> </template>
</el-table-column> </el-table-column>
@ -938,7 +943,7 @@
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button @click="isShowContractToContracts = false"> </el-button> <el-button @click="isShowContractToContracts = false"> </el-button>
<el-button type="primary" @click="isShowContractToContracts = false" <el-button type="primary" @click="isShowContractToContracts = false"
> </el-button > </el-button
> >
</span> </span>
</Modal> </Modal>
@ -1250,40 +1255,40 @@ export default {
); );
}, },
},{ },{
label: "合同审批流程", label: "合同审批流程",
width: 145, width: 145,
prop: "join_status", prop: "join_status",
customFn:row => { customFn:row => {
if (row.is_simple || !row.is_contract) { if (row.is_simple || !row.is_contract) {
return (<span></span>); return (<span></span>);
} }
const getDate = (value) => { const getDate = (value) => {
switch (value) { switch (value) {
case 1: case 1:
return "待申请"; return "待申请";
break; break;
case 2: case 2:
return "流转中"; return "流转中";
break; break;
case 3: case 3:
return "已办结"; return "已办结";
break; break;
default: default:
return "异常"; return "异常";
break; break;
}
}
return (
<div>
<span>{ getDate(row.join_status) }</span>
<br/>
{
(row.is_simple || row.join_status === 1) ? '' : <a style="color: #333" on={{['click']:()=>this.toOaDetail('hetong',row)}}>查看</a>
}
</div>
)
} }
}, }
return (
<div>
<span>{ getDate(row.join_status) }</span>
<br/>
{
(row.is_simple || row.join_status === 1) ? '' : <a style="color: #333" on={{['click']:()=>this.toOaDetail('hetong',row)}}>查看</a>
}
</div>
)
}
},
{ {
label: "付款计划", label: "付款计划",
prop: "sign_plan_count", prop: "sign_plan_count",

@ -1624,66 +1624,6 @@ export default {
{ {
label: "采购流程", label: "采购流程",
multiHd: [ multiHd: [
// {
// label: "",
// width: 140,
// prop: "req_status",
// formatter: (cell, data, value) => {
// if (cell.is_substitute) {
// return "";
// }
// if (cell.is_plan === 1) {
// return "";
// }
// switch (value) {
// case 1:
// return "";
// break;
// case 2:
// return "";
// break;
// case 3:
// return "";
// break;
// default:
// return "";
// break;
// }
// },
// customFn:row => {
// const getDate = (value) => {
// if (row.is_substitute) {
// return "";
// }
// if (row.is_plan === 1) {
// return "";
// }
// switch (value) {
// case 1:
// return "";
// break;
// case 2:
// return "";
// break;
// case 3:
// return "";
// break;
// default:
// return "";
// break;
// }
// }
// return (
// <div>
// <span>{ getDate(row.purchase_status) }</span>
// <br/>
// {
// (row.purchase_status === 1 || row.is_substitute || row.is_plan === 1) ? '' : <a style="color: #333" on={{['click']:this.toOaDetail}}></a>
// }
// </div>
// )
// }
// },
{ {
label: "采购业务审批流程", label: "采购业务审批流程",
width: 158, width: 158,
@ -2216,7 +2156,6 @@ export default {
number: "money_way", number: "money_way",
}); });
this.planTypes = res.detail; this.planTypes = res.detail;
console.log(this.planTypes);
}, },
// //
@ -2233,8 +2172,6 @@ export default {
Number(row.update_money) == 0 Number(row.update_money) == 0
? Number(row.money) ? Number(row.money)
: Number(row.update_money); : Number(row.update_money);
console.log(e, money, row.use_money_total);
console.log(e <= money - Number(row.use_money_total));
if (e <= money - Number(row.use_money_total)) { if (e <= money - Number(row.use_money_total)) {
row.useMoney = e; row.useMoney = e;
this.plan.forEach((item) => { this.plan.forEach((item) => {
@ -2891,15 +2828,20 @@ export default {
}, },
created() { created() {
this.getBudgets(); this.getBudgets();
this.select.keyword = this.$route.query.keyword; this.select.is_simple = 0;
// iframe = document.createElement("iframe"); this.select.keyword = this.$route.query.keyword || "";
// iframe.src = `${process.env.VUE_APP_OUT_OLD}/login/oss_login?id=${this.$store.state.user.userId}&username=${this.$store.state.user.username}`; this.select.is_myself = this.$route.path.split('_')[1] ? Number(this.$route.path.split('_')[1]) : 0;
// iframe.style.display = "none"; if (/contractLedger/g.test(this.$route.path)) {
// document.body.appendChild(iframe); this.select.is_contract = 1;
this.select.purchase_status = 3;
this.select.invite_status = 3;
}
if (/contractAll/g.test(this.$route.path)) {
this.select.is_simple = "";
}
}, },
destroyed() { destroyed() {
window.onfocus = null; window.onfocus = null;
//document.body.removeChild(iframe);
}, },
}; };
</script> </script>

@ -35,6 +35,14 @@
</template> </template>
</el-table-column> </el-table-column>
</el-table> </el-table>
<el-pagination
background
:page-size.sync="select.page_size"
:current-page.sync="select.page"
layout="prev, pager, next"
:total="total" @current-change="e => {select.page = e,load()}">
</el-pagination>
</div> </div>
</div> </div>
@ -184,9 +192,11 @@
}, },
tableHeight: 0, tableHeight: 0,
// //
searchFields: { select: {
KeyWord: "" page: 1,
page_size: 20
}, },
total: 0,
tableData: [] tableData: []
} }
}, },
@ -227,8 +237,9 @@
}, },
load() { load() {
var that = this; var that = this;
listparameter().then(response => { listparameter(this.select).then(response => {
that.tableData = response.data; that.tableData = response.data;
this.total = response.total;
}).catch(error => { }).catch(error => {
//reject(error) //reject(error)
}) })
@ -249,7 +260,6 @@
} }
response.detail_list = response.detail; response.detail_list = response.detail;
let result = Object.assign(that.form, response); let result = Object.assign(that.form, response);
}).catch(error => { }).catch(error => {
//reject(error) //reject(error)
}) })

Loading…
Cancel
Save