From 2494e0b704a0394baf57b6c3d771dfad829aa148 Mon Sep 17 00:00:00 2001
From: "271556543@qq.com" <271556543@qq.com>
Date: Sat, 30 Jul 2022 22:08:24 +0800
Subject: [PATCH] 2022.7.30
---
.env.development | 2 +-
src/api/budget/budget.js | 8 +
src/components/XyTable/index.vue | 10 +-
src/views/budget/budgetList.vue | 4 +-
.../contractPaymentRegistration.vue | 92 +++++
.../contract/components/contractSign.vue | 31 +-
.../contract/components/detailContract.vue | 9 +-
.../components/detailContractSign.vue | 4 +-
.../components/detailPaymentRegistration.vue | 288 +++++++++++++
.../contract/components/editorContract.vue | 6 +-
.../components/examineRegistration.vue | 2 +-
.../components/paymentRegistration.vue | 48 ++-
.../contract/components/printRegistration.vue | 69 +---
src/views/contract/contractList.vue | 164 ++++++--
src/views/contract/paymentPlan.vue | 49 ++-
.../contract/paymentRegistrationList.vue | 50 ++-
src/views/dashboard/index.vue | 6 +-
.../components/examineRegistration.vue | 386 ++++++++++++++++++
src/views/finance/paymentRegistrationList.vue | 149 +++++++
.../statisticalReport/budgetProgress.vue | 137 ++++++-
vue.config.js | 7 +
21 files changed, 1357 insertions(+), 164 deletions(-)
create mode 100644 src/views/contract/components/contractPaymentRegistration.vue
create mode 100644 src/views/contract/components/detailPaymentRegistration.vue
create mode 100644 src/views/finance/components/examineRegistration.vue
create mode 100644 src/views/finance/paymentRegistrationList.vue
diff --git a/.env.development b/.env.development
index 7f51ce9..c12a781 100644
--- a/.env.development
+++ b/.env.development
@@ -2,5 +2,5 @@
ENV = 'development'
# base api
-VUE_APP_BASE_API = ''
+VUE_APP_BASE_API = http://hdcontract.ali251.langye.net
VUE_APP_OUT_URL = http://suzhouhedaooa.langye.net
diff --git a/src/api/budget/budget.js b/src/api/budget/budget.js
index 79d652e..7dda48f 100644
--- a/src/api/budget/budget.js
+++ b/src/api/budget/budget.js
@@ -39,3 +39,11 @@ export function detailBudget(params){
params
})
}
+
+export function getProgress(params){
+ return request({
+ method:'get',
+ url:'/api/admin/plan/progress',
+ params
+ })
+}
diff --git a/src/components/XyTable/index.vue b/src/components/XyTable/index.vue
index fd58382..6077874 100644
--- a/src/components/XyTable/index.vue
+++ b/src/components/XyTable/index.vue
@@ -89,6 +89,9 @@ export default {
selectClick(selection, row){
this.$emit('select',selection, row)
},
+ cellClick(row, column, cell){
+ this.$emit('cellClick',row, column, cell)
+ },
createIndexRow(){
return
},
@@ -110,7 +113,7 @@ export default {
mounted() {
},
render(h) {
- let {btnWidth,selectClick,height,createIndexRow,tableStyle,treeProps,showSummary,showHeader,$scopedSlots,showIndex,defaultExpandAll,headerCellStyle,headerRowStyle,rowStyle,cellStyle,indent,tableHeight,tableItem,list,deleteClick,editorClick} = this
+ let {cellClick,btnWidth,selectClick,height,createIndexRow,tableStyle,treeProps,showSummary,showHeader,$scopedSlots,showIndex,defaultExpandAll,headerCellStyle,headerRowStyle,rowStyle,cellStyle,indent,tableHeight,tableItem,list,deleteClick,editorClick} = this
return (
{ tableItem && tableItem.length>0 ?
@@ -132,7 +135,7 @@ export default {
default-expand-all={defaultExpandAll}
tree-props={treeProps}
fit={true}
- on={{['select']:selectClick}}>
+ on={{['select']:selectClick,['cell-click']:cellClick}}>
{
//序号
showIndex ? createIndexRow() : ''
@@ -213,7 +216,8 @@ export default {
label={item.label}
prop={item.prop}
sortable={item.sortable ?? true}
- type={item.type ?? ''}>
+ type={item.type ?? ''}
+ selectable={item.selectable}>
)
}
diff --git a/src/views/budget/budgetList.vue b/src/views/budget/budgetList.vue
index 84384e1..6610279 100644
--- a/src/views/budget/budgetList.vue
+++ b/src/views/budget/budgetList.vue
@@ -6,7 +6,7 @@
年份
- select.year = e">
+ select.year = e">
@@ -295,7 +295,7 @@ export default {
width: 180
},
{
- label:'金额',
+ label:'项目金额(元)',
prop:'money',
align:'right',
width: 160
diff --git a/src/views/contract/components/contractPaymentRegistration.vue b/src/views/contract/components/contractPaymentRegistration.vue
new file mode 100644
index 0000000..e8f1c70
--- /dev/null
+++ b/src/views/contract/components/contractPaymentRegistration.vue
@@ -0,0 +1,92 @@
+
+
+
+
+
+
+
diff --git a/src/views/contract/components/contractSign.vue b/src/views/contract/components/contractSign.vue
index 9b99a3f..55c309f 100644
--- a/src/views/contract/components/contractSign.vue
+++ b/src/views/contract/components/contractSign.vue
@@ -10,6 +10,16 @@
+
+
+
@@ -110,6 +120,8 @@ import {Message} from "element-ui";
import {parseTime} from "@/utils"
import detailContractSign from "@/views/contract/components/detailContractSign";
+import {getOatoken} from "@/api/oatoken";
+import axios from "axios";
export default {
components:{
detailContractSign
@@ -117,11 +129,15 @@ export default {
data() {
return {
form:{
+ number:'',
supply:'',
carryDepartment:'',
money:''
},
rules:{
+ number:[
+ {required:true,message:"必填"}
+ ],
supply:[
{required:true,message:"必填"}
],
@@ -195,6 +211,7 @@ export default {
sign(){
editorContract({
id:this.contractId,
+ number:this.form.number,
supply:this.form.supply,
carry_department:this.form.carryDepartment,
money:this.form.money,
@@ -227,7 +244,7 @@ export default {
console.log(this.planForm)
addContractSign({
contract_id:this.contract.id,
- date:'2022-7-22',
+ date:`${new Date(this.planForm.date).getFullYear()}-${new Date(this.planForm.date).getMonth()+1}-${new Date(this.planForm.date).getDate()}`,
content:this.planForm.content,
money:this.planForm.money,
remark:this.planForm.remark
@@ -240,12 +257,24 @@ export default {
message:'操作成功'
})
})
+ },
+
+ //获取oa合同信息
+ async getOaContractInfo(){
+ let res = await getOatoken()
+ let url =`/oa/admin/flow/view/${this.contract.join_last_flow_id}?oatoken=${res.oatoken}&get_raw=1`
+ const oaInfo = await axios.get(url)
+ this.form.money = Number(oaInfo.data.flow['合同金额(万元)']) * 10000
+ this.form.number = oaInfo.data.flow['合同编号']
+ this.form.supply = oaInfo.data.flow['承包商\\供应商']
+ this.form.carryDepartment = oaInfo.data.flow['执行部门']
}
},
watch:{
async contractId(){
await this.getContract()
await this.getContractSignList()
+ await this.getOaContractInfo()
}
}
}
diff --git a/src/views/contract/components/detailContract.vue b/src/views/contract/components/detailContract.vue
index 9c53481..d3da941 100644
--- a/src/views/contract/components/detailContract.vue
+++ b/src/views/contract/components/detailContract.vue
@@ -160,15 +160,18 @@ export default {
},
{
label:"日志类型",
- sortable:false
+ sortable:false,
+ prop:'type'
},
{
label:"日志内容",
- sortable:false
+ sortable:false,
+ prop:'remark'
},
{
label:"操作人",
- sortable:false
+ sortable:false,
+ prop:'admin.name'
},
{
label:"时间",
diff --git a/src/views/contract/components/detailContractSign.vue b/src/views/contract/components/detailContractSign.vue
index fec1855..95a9ade 100644
--- a/src/views/contract/components/detailContractSign.vue
+++ b/src/views/contract/components/detailContractSign.vue
@@ -1,7 +1,7 @@
-
+
diff --git a/src/views/contract/components/detailPaymentRegistration.vue b/src/views/contract/components/detailPaymentRegistration.vue
new file mode 100644
index 0000000..23cc13b
--- /dev/null
+++ b/src/views/contract/components/detailPaymentRegistration.vue
@@ -0,0 +1,288 @@
+
+
+
+
+
+
受款单位
+
{{form.contract.supply}}
+
+
+
合同名称
+
{{form.contract.name}}
+
+
+
合同金额
+
{{form.contract.money}} (元)
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ *款项类型
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ scope.row.use_money = e"/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/contract/components/editorContract.vue b/src/views/contract/components/editorContract.vue
index c0d8a83..6200436 100644
--- a/src/views/contract/components/editorContract.vue
+++ b/src/views/contract/components/editorContract.vue
@@ -140,7 +140,7 @@
- scope.row.useMoney = e"/>
+ scope.row.useMoney = e"/>
@@ -267,7 +267,7 @@ export default {
label:item.name,
value:{
plan_id:item.id,
- use_money:item.useMoney ?? item.money,
+ use_money:item.useMoney,
new_money:item.money
}
}
@@ -328,7 +328,7 @@ export default {
label:item.name,
value:{
plan_id:item.id,
- use_money:item.useMoney ?? item.money,
+ use_money:item.useMoney,
new_money:item.money
}
}
diff --git a/src/views/contract/components/examineRegistration.vue b/src/views/contract/components/examineRegistration.vue
index 706d4dd..30df027 100644
--- a/src/views/contract/components/examineRegistration.vue
+++ b/src/views/contract/components/examineRegistration.vue
@@ -312,7 +312,7 @@ export default {
this.paymentRegistrationForm.plan = sel.map(item => {
return {
plan_id:item.id,
- use_money:item.useMoney ?? item.money,
+ use_money:item.useMoney,
new_money:item.money
}
})
diff --git a/src/views/contract/components/paymentRegistration.vue b/src/views/contract/components/paymentRegistration.vue
index da065bc..d968ab2 100644
--- a/src/views/contract/components/paymentRegistration.vue
+++ b/src/views/contract/components/paymentRegistration.vue
@@ -5,7 +5,7 @@
受款单位
-
受款单位
+
{{contract.supply}}
合同金额
-
{{contract.money}} (元)
+
{{priceFormat(contract.money)}} (元)
@@ -93,17 +93,17 @@
*是否最后一笔
-
+
-
+
- scope.row.useMoney = e"/>
+ scope.row.useMoney = e"/>
@@ -234,28 +234,31 @@ export default {
this.paymentRegistrationForm.plan = this.contract.plans.map(item=>{
return {
plan_id:item.id,
- use_money:item.useMoney ?? item.money,
+ use_money:item.useMoney,
new_money:item.money,
}
})
const res = await getFundLog({contract_id:this.contract.id})
this.payment = res.data
-
- this.toggleSelection(this.paymentRegistrationForm.plan.map(item => {
- return item.plan_id
- }))
},
submit(){
- addFundLog({
+ let data = this.paymentRegistrationForm.isLast ? {
contract_id:this.contract.id,
apply_money:this.paymentRegistrationForm.applyMoney,
discount_money:this.paymentRegistrationForm.deductionMoney,
type:this.paymentRegistrationForm.type,
is_end:this.paymentRegistrationForm.isLast ? 1 : 0,
contract_plan_links:this.paymentRegistrationForm.plan
- }).then(res=>{
+ } : {
+ contract_id:this.contract.id,
+ apply_money:this.paymentRegistrationForm.applyMoney,
+ discount_money:this.paymentRegistrationForm.deductionMoney,
+ type:this.paymentRegistrationForm.type,
+ is_end:this.paymentRegistrationForm.isLast ? 1 : 0
+ }
+ addFundLog(data).then(res=>{
this.isShowPaymentRegistration = false
Message({
type:'success',
@@ -285,7 +288,7 @@ export default {
this.paymentRegistrationForm.plan = sel.map(item => {
return {
plan_id:item.id,
- use_money:item.useMoney ?? item.money,
+ use_money:item.useMoney,
new_money:item.money
}
})
@@ -293,18 +296,31 @@ export default {
this.paymentRegistrationForm.plan = []
}
},
- toggleSelection(plans) {
+ toggleSelection(e) {
+ if(!e){
+ return
+ }
+ let plans = this.paymentRegistrationForm.plan.map(item => {return item.plan_id})
if (plans) {
this.plans.filter(plan => {
return plans.includes(plan.id)
}).map(row => {
- this.$refs.planTable.toggleRowSelection(row);
+ this.$nextTick(()=>{
+ this.$refs['planTable'].toggleRowSelection(row);
+ })
})
} else {
- this.$refs.planTable.clearSelection();
+ this.$refs['planTable'].clearSelection();
}
},
},
+ computed:{
+ priceFormat(){
+ return function (price){
+ return Number(price).toFixed(2).replace(/(\d)(?=(\d{3})+\.)/g, '$1,')
+ }
+ }
+ },
async mounted() {
await this.getBudgets()
}
diff --git a/src/views/contract/components/printRegistration.vue b/src/views/contract/components/printRegistration.vue
index a88cf45..b2b3599 100644
--- a/src/views/contract/components/printRegistration.vue
+++ b/src/views/contract/components/printRegistration.vue
@@ -149,7 +149,7 @@ export default {
.print-table1{
box-sizing: border-box;
&-title{
- font-size: 20px;
+ font-size: 24px;
letter-spacing: 2px;
text-align: center;
font-weight: 600;
@@ -159,6 +159,7 @@ export default {
}
&-grid{
+ font-size: 21px;
border: 1px #000 solid;
display: grid;
grid-template-rows: repeat(14,auto);
@@ -195,6 +196,7 @@ export default {
padding: 0.2vw 0;
}
&-center{
+ text-align: center;
justify-content: center;
align-items: center;
@@ -217,70 +219,5 @@ export default {
-
diff --git a/src/views/contract/contractList.vue b/src/views/contract/contractList.vue
index efb4284..ff9d4e6 100644
--- a/src/views/contract/contractList.vue
+++ b/src/views/contract/contractList.vue
@@ -74,24 +74,26 @@
-
+
- deleteContract(row.id)">
+ deleteContract(row.id)" @cellClick="showPaymentPlan" :cell-style="cellStyle">
-
+
+
+
-
+
@@ -102,18 +104,20 @@
v-if="scope.row.purchase_status === 1 && ((scope.row.req_status === 3 && scope.row.is_plan === 0)||scope.row.is_plan === 1)">
-
deleteContract(scope.row.id)">
- 删除
-
+
+ deleteContract(scope.row.id)">
+ 删除
+
+
@@ -265,6 +269,9 @@
+
+
+
@@ -281,13 +288,15 @@ import editor from "./components/editorContract"
import detail from "./components/detailContract"
import paymentRegistration from "./components/paymentRegistration";
import contractSign from "@/views/contract/components/contractSign";
+import contractPaymentRegistration from "@/views/contract/components/contractPaymentRegistration";
import {login} from "@/api/user";
export default {
components:{
editor,
detail,
paymentRegistration,
- contractSign
+ contractSign,
+ contractPaymentRegistration
},
data() {
var planPass = (rule, value, callback) => {
@@ -373,7 +382,19 @@ export default {
prop:"money_way.value"
},
{
- label:"项目预算(万元)",
+ label:'已付金额',
+ prop:'fund_log_total',
+ width:160,
+ align:'right',
+ formatter:(cell,data,value)=>{
+ if(!value){
+ return '0.00'
+ }
+ return value
+ }
+ },
+ {
+ label:"合同预算价(万元)",
width: 200,
prop:"plan_price",
align:'right',
@@ -398,6 +419,14 @@ export default {
}
}
},
+ {
+ label:'付款计划',
+ prop:'plan_link_count',
+ width: 160,
+ formatter:(cell,data,value)=>{
+ return value + '期'
+ }
+ },
{
label:"采购流程",
multiHd:[
@@ -406,6 +435,9 @@ export default {
width: 200,
prop:'req_status',
formatter:(cell,data,value)=>{
+ if(cell.is_plan === 1){
+ return '无'
+ }
switch (value){
case 1:
return "待申请"
@@ -414,7 +446,7 @@ export default {
return "流转中"
break;
case 3:
- return "已结办"
+ return "已办结"
break;
default:
return "异常"
@@ -435,7 +467,7 @@ export default {
return "流转中"
break;
case 3:
- return "已结办"
+ return "已办结"
break;
default:
return "异常"
@@ -456,7 +488,7 @@ export default {
return "流转中"
break;
case 3:
- return "已结办"
+ return "已办结"
break;
default:
return "异常"
@@ -477,7 +509,7 @@ export default {
return "流转中"
break;
case 3:
- return "已结办"
+ return "已办结"
break;
default:
return "异常"
@@ -488,12 +520,17 @@ export default {
]
},
{
- label:"创建科室",
+ label:"业务科室",
width: 200,
prop:'department.name'
},
{
- label:"创建信息",
+ label:"经办人",
+ width: 160,
+ prop:'admin.name'
+ },
+ {
+ label:"创建日期",
width: 200,
prop:'created_at',
formatter:(cell,data,value)=>{
@@ -591,6 +628,80 @@ export default {
}
},
methods: {
+ cellStyle({row, column, rowIndex, columnIndex}){
+ if(columnIndex === 10){
+ if(row.is_plan === 1){
+ return {'background':'rgba(240,240,240,0.2)'}
+ }
+ switch (row.req_status){
+ case 1:
+ return {'background':'rgba(140,197,255,0.2)'}
+ break;
+ case 2:
+ return {'background':'rgba(253,226,226,0.2)'}
+ break;
+ case 3:
+ return {'background':'rgba(225,243,216,0.2)'}
+ break;
+ default:
+ return {'background':'rgba(250,236,216,0.2)'}
+ }
+ }
+ if(columnIndex === 11){
+ switch (row.purchase_status){
+ case 1:
+ return {'background':'rgba(140,197,255,0.2)'}
+ break;
+ case 2:
+ return {'background':'rgba(253,226,226,0.2)'}
+ break;
+ case 3:
+ return {'background':'rgba(225,243,216,0.2)'}
+ break;
+ default:
+ return {'background':'rgba(250,236,216,0.2)'}
+ }
+ }
+ if(columnIndex === 12){
+ switch (row.invite_status){
+ case 1:
+ return {'background':'rgba(140,197,255,0.2)'}
+ break;
+ case 2:
+ return {'background':'rgba(253,226,226,0.2)'}
+ break;
+ case 3:
+ return {'background':'rgba(225,243,216,0.2)'}
+ break;
+ default:
+ return {'background':'rgba(250,236,216,0.2)'}
+ }
+ }
+ if(columnIndex === 13){
+ switch (row.join_status){
+ case 1:
+ return {'background':'rgba(140,197,255,0.2)'}
+ break;
+ case 2:
+ return {'background':'rgba(253,226,226,0.2)'}
+ break;
+ case 3:
+ return {'background':'rgba(225,243,216,0.2)'}
+ break;
+ default:
+ return {'background':'rgba(250,236,216,0.2)'}
+ }
+ }
+ },
+
+ //点击付款计划查看
+ showPaymentPlan(row, column, cell){
+ if(column.id === 'el-table_1_column_10'){
+ console.log(row)
+ this.$refs['contractPaymentRegistration'].getSignPlan(row.id)
+ this.$refs['contractPaymentRegistration'].isShow = true
+ }
+ },
//招标文件审查
async bidding(row){
let baseInfo = {
@@ -722,7 +833,7 @@ export default {
label:item.name,
value:{
plan_id:item.id,
- use_money:item.useMoney ?? item.money,
+ use_money:item.useMoney,
new_money:item.money
}
}
@@ -804,6 +915,9 @@ export default {
this.getContracts()
}
},
+ destroyed() {
+ window.onfocus = null
+ }
}
diff --git a/src/views/contract/paymentPlan.vue b/src/views/contract/paymentPlan.vue
index 4217e4f..173513b 100644
--- a/src/views/contract/paymentPlan.vue
+++ b/src/views/contract/paymentPlan.vue
@@ -6,9 +6,9 @@
- 创建日期
+ 付款计划日期
-
+
@@ -48,9 +48,8 @@ export default {
data() {
return {
select:{
- showDate:'',
- start:'',
- end:'',
+ start:`${new Date().getFullYear()}-${new Date().getMonth()+1}-${new Date().getDate()}`,
+ end:`${new Date().getFullYear()}-${new Date().getMonth()+2}-${new Date().getDate()}`,
pageIndex:1,
keyword:''
},
@@ -59,7 +58,7 @@ export default {
table:[
{
prop:'contract.name',
- label:'合同名称',
+ label:'项目名称',
width:170
},
{
@@ -68,6 +67,11 @@ export default {
align:'right',
width:168
},
+ {
+ prop:'date',
+ label:'计划付款日期',
+ width: 200
+ },
{
prop:'created_at',
label:'创建信息',
@@ -83,10 +87,35 @@ export default {
align:'left'
},
{
- prop:'remark',
- label:'备注',
- minWidth:180,
- align:'left'
+ prop:'contract.created_at',
+ label:'合同签订日期',
+ width: 200,
+ formatter:(v1,v2,value)=>{
+ return parseTime(new Date(value))
+ }
+ },
+ {
+ prop:'contract.supply',
+ label:'受款单位',
+ width: 180
+ },
+ {
+ prop:'admin.name',
+ label:'经办人',
+ width: 180
+ },
+ {
+ prop:'department.name',
+ label:'经办科室',
+ width: 200
+ },
+ {
+ prop:'created_at',
+ label:'创建信息',
+ width: 200,
+ formatter:(v1,v2,value)=>{
+ return parseTime(new Date(value))
+ }
}
],
}
diff --git a/src/views/contract/paymentRegistrationList.vue b/src/views/contract/paymentRegistrationList.vue
index f2f8922..d007be9 100644
--- a/src/views/contract/paymentRegistrationList.vue
+++ b/src/views/contract/paymentRegistrationList.vue
@@ -22,17 +22,18 @@
-
-
-
-
-
+
+
+
+
+
+
@@ -45,7 +46,7 @@
-
+
@@ -55,11 +56,11 @@ import {parseTime} from "@/utils"
import {Message} from "element-ui";
import printRegistration from "./components/printRegistration";
-import examineRegistration from "./components/examineRegistration";
+import detailPaymentRegistration from "./components/detailPaymentRegistration";
export default {
components:{
printRegistration,
- examineRegistration
+ detailPaymentRegistration
},
data() {
return {
@@ -69,25 +70,34 @@ export default {
table:[
{
label:"项目名称",
- width: 150,
+ minWidth: 150,
prop:'contract.name'
},
{
- label:"付款申请金额(万元)",
+ label:"付款申请金额(元)",
prop:"apply_money",
align:'right',
- width: 165
+ width: 180
},
{
- label:'实际付款金额',
+ label:'实际支付金额',
prop:"act_money",
align:'right',
- width: 165
+ width: 180
},
{
label:"款项类型",
prop:"type",
- width: 120
+ width: 140
+ },
+ {
+ prop:'status',
+ label:'状态',
+ width: 140,
+ formatter:(cell,data,value)=>{
+ if(value === 0) return '待审核'
+ else return '已审核'
+ }
},
{
label:"是否最后一笔",
@@ -100,7 +110,7 @@ export default {
{
label:"创建信息",
prop:"created_at",
- minWidth:200,
+ width:220,
formatter:(cell,data,value)=>{
return parseTime(new Date(value))
}
diff --git a/src/views/dashboard/index.vue b/src/views/dashboard/index.vue
index 5c363fc..3862281 100644
--- a/src/views/dashboard/index.vue
+++ b/src/views/dashboard/index.vue
@@ -3,7 +3,7 @@
当前登录人:{{user.name}}
-
+
@@ -13,6 +13,7 @@
+
@@ -82,6 +83,9 @@ export default {
timeFormatter(cell,data,value) {
return parseTime(new Date(value))
},
+ typeFormatter(cell,data,value){
+ return value === 1 ? '合同类型' : '付款类型'
+ },
async getNotices(){
const res = await getNotice({page_size:10,page:this.pageIndex})
diff --git a/src/views/finance/components/examineRegistration.vue b/src/views/finance/components/examineRegistration.vue
new file mode 100644
index 0000000..23038be
--- /dev/null
+++ b/src/views/finance/components/examineRegistration.vue
@@ -0,0 +1,386 @@
+
+
+
+
+
+
+
受款单位
+
{{contract.carry_department}}
+
+
+
合同名称
+
{{contract.name}}
+
+
+
合同金额
+
{{contract.money}}
+
+
+
+
已付金额
+
{{totalMoney()}} (元)
+
+
+
支付占比
+
{{percentPay()}}%
+
+
+
已付笔数
+
{{payment.length}}
+
+
+ 点击查看列表
+
+
+
+
+
+
+
+ 暂无已付笔数
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ *款项类型
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ scope.row.use_money = e"/>
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/finance/paymentRegistrationList.vue b/src/views/finance/paymentRegistrationList.vue
new file mode 100644
index 0000000..58dac0b
--- /dev/null
+++ b/src/views/finance/paymentRegistrationList.vue
@@ -0,0 +1,149 @@
+
+
+
+
+
+ 创建日期
+
+
+
+
+ 关键字
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/statisticalReport/budgetProgress.vue b/src/views/statisticalReport/budgetProgress.vue
index bbf0e1f..d9ddb2d 100644
--- a/src/views/statisticalReport/budgetProgress.vue
+++ b/src/views/statisticalReport/budgetProgress.vue
@@ -5,35 +5,152 @@
年份
-
+ select.year = e">
预算类型
-
+
- 科室
+
+ 科室
+
-
-
+ select.department = e[e.length-1] || ''"/>
+
-
-
+
+
-
+
+
+
+
+
+
+
diff --git a/vue.config.js b/vue.config.js
index 9b24ffb..580351a 100644
--- a/vue.config.js
+++ b/vue.config.js
@@ -52,6 +52,13 @@ module.exports = {
pathRewrite: {
['^' + process.env.VUE_APP_BASE_API]: ''
}
+ },
+ '/oa':{
+ target:'http://suzhouhedaooa.langye.net',
+ changeOrigin: true, //配置跨域
+ pathRewrite: {
+ '/oa': '/'
+ }
}
}
},