Compare commits
2 Commits
ee68a6d8a1
...
e8dd81080e
| Author | SHA1 | Date | |
|---|---|---|---|
| e8dd81080e | |||
| a2ebba711f |
@ -66,14 +66,14 @@
|
||||
|
||||
<div class="huibox">
|
||||
<div>
|
||||
打款前:总实际订单金额(元):{{itemInfo.total_amount}},
|
||||
总实际已支付金额(元):{{itemInfo.has_paid_amount}},
|
||||
总实际未支付金额(元):{{ ((itemInfo.total_amount * 100 - itemInfo.has_paid_amount * 100) / 100).toFixed(2) }}
|
||||
打款前:总实际订单金额(元):<span>{{itemInfo.total_amount}}</span>,
|
||||
总实际已支付金额(元):<span>{{itemInfo.has_paid_amount}}</span>,
|
||||
总实际未支付金额(元):<span>{{ ((itemInfo.total_amount * 100 - itemInfo.has_paid_amount * 100) / 100).toFixed(2) }}</span>
|
||||
</div>
|
||||
<div>
|
||||
打款后:总实际订单金额(元):{{real_total_amount}},
|
||||
总实际已支付金额(元):{{ ((itemInfo.has_paid_amount * 100 + total_amount * 100) / 100).toFixed(2) }},
|
||||
总实际未支付金额(元):{{ ((real_total_amount * 100 - itemInfo.has_paid_amount * 100 - total_amount * 100) / 100).toFixed(2) }}
|
||||
打款后:总实际订单金额(元):<span>{{real_total_amount}}</span>,
|
||||
总实际已支付金额(元):<span>{{ ((itemInfo.has_paid_amount * 100 + total_amount * 100) / 100).toFixed(2) }}</span>,
|
||||
总实际未支付金额(元):<span>{{ ((real_total_amount * 100 - itemInfo.has_paid_amount * 100 - total_amount * 100) / 100).toFixed(2) }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
@ -295,5 +295,9 @@ export default {
|
||||
padding: 15px;
|
||||
line-height: 30px;
|
||||
border-left: 3px solid #3c8dbc;
|
||||
span{
|
||||
font-weight: 600;
|
||||
color: #f00;
|
||||
}
|
||||
}
|
||||
</style>
|
||||
@ -16,7 +16,7 @@
|
||||
<el-option v-for="it in supplierList" :key="it.id" :label="it.supplier_name" :value="it.id" />
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<template v-if="Type == 1">
|
||||
<!-- <template v-if="Type == 1">
|
||||
<el-form-item label="商品信息:">
|
||||
<el-table :data="itemInfo.products" style="width: 100%;margin-top: 15px;" border>
|
||||
<el-table-column label="商品名称" prop="goods.title" />
|
||||
@ -57,7 +57,7 @@
|
||||
</el-table-column>
|
||||
</el-table>
|
||||
</el-form-item>
|
||||
</template>
|
||||
</template> -->
|
||||
|
||||
<div v-for="(item, index) in logsList" :key="item.id">
|
||||
<div v-if="item.extend && item.extend.purchaseOrder">
|
||||
@ -150,14 +150,14 @@
|
||||
<div style="padding: 20px 0;color: #f00;">合计申请打款金额:{{item.amount}}元</div>
|
||||
<div class="huibox">
|
||||
<div>
|
||||
打款前:总实际订单金额(元):{{item.extend.before_amount}},
|
||||
总实际已支付金额(元):{{item.extend.purchaseOrder.has_paid_amount}},
|
||||
总实际未支付金额(元):{{ ((item.extend.before_amount * 100 - item.extend.purchaseOrder.has_paid_amount * 100) / 100).toFixed(2) }}
|
||||
打款前:总实际订单金额(元):<span>{{item.extend.before_amount}}</span>,
|
||||
总实际已支付金额(元):<span>{{item.extend.purchaseOrder.has_paid_amount}}</span>,
|
||||
总实际未支付金额(元):<span>{{ ((item.extend.before_amount * 100 - item.extend.purchaseOrder.has_paid_amount * 100) / 100).toFixed(2) }}</span>
|
||||
</div>
|
||||
<div>
|
||||
打款后:总实际订单金额(元):{{item.extend.purchaseOrder.total_amount}},
|
||||
总实际已支付金额(元):{{ ((item.extend.purchaseOrder.has_paid_amount * 100 + item.amount * 100) / 100).toFixed(2) }},
|
||||
总实际未支付金额(元):{{ ((item.extend.purchaseOrder.total_amount * 100 - item.extend.purchaseOrder.has_paid_amount * 100 - item.amount * 100) / 100).toFixed(2) }}
|
||||
打款后:总实际订单金额(元):<span>{{item.extend.purchaseOrder.total_amount}}</span>,
|
||||
总实际已支付金额(元):<span>{{ ((item.extend.purchaseOrder.has_paid_amount * 100 + item.amount * 100) / 100).toFixed(2) }}</span>,
|
||||
总实际未支付金额(元):<span>{{ ((item.extend.purchaseOrder.total_amount * 100 - item.extend.purchaseOrder.has_paid_amount * 100 - item.amount * 100) / 100).toFixed(2) }}</span>
|
||||
</div>
|
||||
</div>
|
||||
</template>
|
||||
@ -396,6 +396,16 @@ export default {
|
||||
padding: 15px;
|
||||
line-height: 30px;
|
||||
margin-bottom: 20px;
|
||||
span{
|
||||
font-weight: 600;
|
||||
color: #f00;
|
||||
}
|
||||
}
|
||||
.sumbox{
|
||||
span{
|
||||
font-weight: 600;
|
||||
color: #f00;
|
||||
}
|
||||
}
|
||||
.blue{
|
||||
color: #1989fa;
|
||||
|
||||
@ -202,6 +202,7 @@ import { DeleteFilled, Search } from "@element-plus/icons"
|
||||
import { reactive, toRefs, watch } from 'vue'
|
||||
import { get, post } from '@/api/request'
|
||||
import { ElMessage, ElMessageBox } from 'element-plus'
|
||||
import { useStore } from 'vuex'
|
||||
|
||||
export default {
|
||||
components: { DeleteFilled, Search },
|
||||
@ -322,12 +323,20 @@ export default {
|
||||
ElMessage({ type: 'success', message: '操作成功' })
|
||||
closeDialog()
|
||||
context.emit('refresh')
|
||||
getWaitNum()
|
||||
data.btnloading = false
|
||||
}).catch(() => {
|
||||
data.btnloading = false
|
||||
})
|
||||
}
|
||||
|
||||
const $store = useStore()
|
||||
const getWaitNum = () => {
|
||||
get(`/api/board/waitToBeDone`).then((res) => {
|
||||
$store.dispatch('setWaitNum', res.waitApproval)
|
||||
})
|
||||
}
|
||||
|
||||
function clearForm() {
|
||||
data.itemInfo = {}
|
||||
data.feesList = []
|
||||
@ -510,7 +519,8 @@ export default {
|
||||
removeFee,
|
||||
openGoods,
|
||||
blurInput,
|
||||
getSumData
|
||||
getSumData,
|
||||
getWaitNum
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -2,79 +2,16 @@ import { createStore } from 'vuex'
|
||||
|
||||
export default createStore({
|
||||
state: {
|
||||
msgNum: 0,
|
||||
orderNum: 0,
|
||||
noticeNum: 0,
|
||||
workNum: 0,
|
||||
tousuNum: 0,
|
||||
annNum: 0,
|
||||
orderType: '',
|
||||
orderId: '',
|
||||
workId: '',
|
||||
msgDialog: false
|
||||
watiNum: 0
|
||||
},
|
||||
mutations: {
|
||||
SET_MSGNUM: (state, num) => {
|
||||
state.msgNum = num
|
||||
},
|
||||
SET_ORDERNUM: (state, num) => {
|
||||
state.orderNum = num
|
||||
},
|
||||
SET_NOTICENUM: (state, num) => {
|
||||
state.noticeNum = num
|
||||
},
|
||||
SET_WORKNUM: (state, num) => {
|
||||
state.workNum = num
|
||||
},
|
||||
SET_TOUSUNUM: (state, num) => {
|
||||
state.tousuNum = num
|
||||
},
|
||||
SET_ORDERTYPE: (state, val) => {
|
||||
state.orderType = val
|
||||
},
|
||||
SET_ORDERID: (state, val) => {
|
||||
state.orderId = val
|
||||
},
|
||||
SET_WORKID: (state, val) => {
|
||||
state.workId = val
|
||||
},
|
||||
SET_MSGDIALOG: (state, flag) => {
|
||||
state.msgDialog = flag
|
||||
},
|
||||
SET_ANNNUM: (state, num) => {
|
||||
state.annNum = num
|
||||
},
|
||||
SET_WAITNUM: (state, num) => {
|
||||
state.watiNum = num
|
||||
}
|
||||
},
|
||||
actions: {
|
||||
setMsgNum({ commit }, num) {
|
||||
commit('SET_MSGNUM', num)
|
||||
},
|
||||
setOrderNum({ commit }, num) {
|
||||
commit('SET_ORDERNUM', num)
|
||||
},
|
||||
setNoticeNum({ commit }, num) {
|
||||
commit('SET_NOTICENUM', num)
|
||||
},
|
||||
setWorkNum({ commit }, num) {
|
||||
commit('SET_WORKNUM', num)
|
||||
},
|
||||
setTousuNum({ commit }, num) {
|
||||
commit('SET_TOUSUNUM', num)
|
||||
},
|
||||
setOrderType({ commit }, val) {
|
||||
commit('SET_ORDERTYPE', val)
|
||||
},
|
||||
setOrderId({ commit }, val) {
|
||||
commit('SET_ORDERID', val)
|
||||
},
|
||||
setWorkId({ commit }, val) {
|
||||
commit('SET_WORKID', val)
|
||||
},
|
||||
setMsgDialog({ commit }, flag) {
|
||||
commit('SET_MSGDIALOG', flag)
|
||||
},
|
||||
setAnnNum({ commit }, num) {
|
||||
commit('SET_ANNNUM', num)
|
||||
setWaitNum({ commit }, num) {
|
||||
commit('SET_WAITNUM', num)
|
||||
}
|
||||
},
|
||||
modules: {
|
||||
|
||||
@ -13,13 +13,11 @@ import { get } from "@/api/request"
|
||||
export default {
|
||||
setup() {
|
||||
const data = reactive({
|
||||
numTotal: {}
|
||||
numTotal: 0
|
||||
})
|
||||
|
||||
const fetchData = () => {
|
||||
// get(`/api/admin/home`).then((res) => {
|
||||
// data.numTotal = res.data
|
||||
// })
|
||||
|
||||
}
|
||||
|
||||
onMounted(() => {
|
||||
|
||||
@ -75,6 +75,7 @@
|
||||
import { useRouter } from 'vue-router'
|
||||
import { get, post } from "@/api/request"
|
||||
import { ElMessage } from 'element-plus'
|
||||
import { useStore } from 'vuex'
|
||||
|
||||
export default {
|
||||
components: {
|
||||
@ -160,14 +161,23 @@
|
||||
})
|
||||
}
|
||||
|
||||
const $store = useStore()
|
||||
const getWaitNum = () => {
|
||||
get(`/api/board/waitToBeDone`).then((res) => {
|
||||
$store.dispatch('setWaitNum', res.waitApproval)
|
||||
})
|
||||
}
|
||||
|
||||
onMounted(async () => {
|
||||
data.menuData = JSON.parse(localStorage.getItem('menusList'))
|
||||
getWaitNum()
|
||||
})
|
||||
|
||||
return {
|
||||
...toRefs(data),
|
||||
handleCommand,
|
||||
commitModify
|
||||
commitModify,
|
||||
getWaitNum
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -4,7 +4,10 @@
|
||||
<div class="icon" v-if="menu.parent_id == 0">
|
||||
<img v-if="menu.icon" :src="menu.icon">
|
||||
</div>
|
||||
<template #title><span :class="menu.parent_id == 0 ? 'span' : ''">{{menu.title}}</span></template>
|
||||
<template #title>
|
||||
<span :class="menu.parent_id == 0 ? 'span' : ''">{{menu.title}}</span>
|
||||
<span class="tag" v-if="menu.uri == '/purchase/waitapproval'">{{ watiNum }}</span>
|
||||
</template>
|
||||
</el-menu-item>
|
||||
<el-sub-menu :index="menu.uri" v-else popper-class="popper-meun">
|
||||
<template #title>
|
||||
@ -19,12 +22,30 @@
|
||||
</template>
|
||||
|
||||
<script>
|
||||
import { reactive, toRefs, watch, onMounted } from 'vue'
|
||||
import { useStore } from 'vuex'
|
||||
|
||||
export default {
|
||||
props: {
|
||||
menuData: Array
|
||||
},
|
||||
setup() {
|
||||
return {}
|
||||
const data = reactive({
|
||||
watiNum: 0
|
||||
})
|
||||
|
||||
const $store = useStore()
|
||||
watch(() => $store.state.watiNum, (val, old) => {
|
||||
data.watiNum = val
|
||||
})
|
||||
|
||||
onMounted(() => {
|
||||
data.watiNum = $store.state.watiNum
|
||||
})
|
||||
|
||||
return {
|
||||
...toRefs(data)
|
||||
}
|
||||
}
|
||||
}
|
||||
</script>
|
||||
@ -55,4 +76,14 @@ export default {
|
||||
position: relative;
|
||||
z-index: 10;
|
||||
}
|
||||
.tag{
|
||||
background-color: #f00;
|
||||
padding: 2px 4px;
|
||||
line-height: normal;
|
||||
color: #fff;
|
||||
position: relative;
|
||||
border-radius: 5px;
|
||||
font-size: 12px;
|
||||
margin: -9px 0 0 2px;
|
||||
}
|
||||
</style>
|
||||
@ -5,6 +5,14 @@
|
||||
<span class="span">ID:</span>
|
||||
<div class="right"><el-input v-model="filter.id" class="wid100" clearable></el-input></div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<span class="span">商品名称:</span>
|
||||
<div class="right">
|
||||
<el-select v-model="filter.product_id" placeholder="请选择" clearable filterable class="wid100">
|
||||
<el-option v-for="it in goodskuList" :key="it.id" :label="it.title" :value="it.id" />
|
||||
</el-select>
|
||||
</div>
|
||||
</div>
|
||||
<div class="row">
|
||||
<span class="span">供应商名称:</span>
|
||||
<div class="right">
|
||||
@ -233,9 +241,16 @@ export default {
|
||||
allGoodsList: [],
|
||||
curId: 0,
|
||||
current_instance_id: 0,
|
||||
showDetail: false
|
||||
showDetail: false,
|
||||
goodskuList: [],
|
||||
})
|
||||
|
||||
function getGoodskuList() {
|
||||
get(`/api/all/goods`).then((res) => {
|
||||
data.goodskuList = res.data
|
||||
})
|
||||
}
|
||||
|
||||
function handleSearch() {
|
||||
data.page = 1
|
||||
fetchData()
|
||||
@ -347,6 +362,7 @@ export default {
|
||||
getWarehouseList()
|
||||
getSuppliersList()
|
||||
getAllGoodsList()
|
||||
getGoodskuList()
|
||||
})
|
||||
|
||||
return {
|
||||
@ -366,7 +382,8 @@ export default {
|
||||
toBalancePayment,
|
||||
openLogs,
|
||||
toInvoice,
|
||||
handleView
|
||||
handleView,
|
||||
getGoodskuList
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@ -57,9 +57,9 @@
|
||||
<el-form-item label="开户银行支行名称:">
|
||||
<el-input v-model="itemInfo.bank_name" clearable placeholder="请输入银行开户名"></el-input>
|
||||
</el-form-item>
|
||||
<el-form-item label="开户银行所在地地址:">
|
||||
<!-- <el-form-item label="开户银行所在地地址:">
|
||||
<el-input v-model="itemInfo.bank_address" clearable placeholder="请输入开户银行所在地地址"></el-input>
|
||||
</el-form-item>
|
||||
</el-form-item> -->
|
||||
</el-form>
|
||||
|
||||
<template #footer>
|
||||
|
||||
@ -36,9 +36,9 @@
|
||||
</div>
|
||||
|
||||
<el-card shadow="never">
|
||||
<div class="opaBox">
|
||||
<!-- <div class="opaBox">
|
||||
<el-button type="primary" @click="showAdd = true"><el-icon><Plus /></el-icon> 新增</el-button>
|
||||
</div>
|
||||
</div> -->
|
||||
<el-table :data="tableData" style="width: 100%" border v-loading="loading">
|
||||
<el-table-column prop="id" label="ID" width="80" align="center" />
|
||||
<el-table-column prop="purchase_order_id" label="采购单ID" width="100" align="center" />
|
||||
@ -123,7 +123,7 @@ import { get, post } from "@/api/request"
|
||||
import { Search, Plus, Edit, ZoomIn, Delete, Stamp } from '@element-plus/icons'
|
||||
import { ElMessage } from 'element-plus'
|
||||
import approvalDetail from '@/components/approval/detail.vue'
|
||||
|
||||
import { useStore } from 'vuex'
|
||||
export default {
|
||||
components: {
|
||||
Search, Plus, Edit, ZoomIn, Delete, Stamp, approvalDetail
|
||||
@ -210,6 +210,14 @@ export default {
|
||||
ElMessage.success('审批成功')
|
||||
data.showDialog = false
|
||||
fetchData()
|
||||
getWaitNum()
|
||||
})
|
||||
}
|
||||
|
||||
const $store = useStore()
|
||||
const getWaitNum = () => {
|
||||
get(`/api/board/waitToBeDone`).then((res) => {
|
||||
$store.dispatch('setWaitNum', res.waitApproval)
|
||||
})
|
||||
}
|
||||
|
||||
@ -224,7 +232,8 @@ export default {
|
||||
handleSizeChange,
|
||||
fetchData,
|
||||
toApproval,
|
||||
commitApproval
|
||||
commitApproval,
|
||||
getWaitNum
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user