|
@@ -7,11 +7,15 @@
|
|
|
<a id="allocateBillDetail-back-btn" href="javascript:;" @click="handleBack"><a-icon type="left" /> 返回列表</a>
|
|
|
<a-button
|
|
|
v-if="isEdit"
|
|
|
- type="primary"
|
|
|
- size="small"
|
|
|
- style="background-color: #1890ff;margin-left: 20px;border: #1890ff;"
|
|
|
+ type="link"
|
|
|
+ class="button-default"
|
|
|
id="allocateBillDetail-edit-btn"
|
|
|
- @click.stop="handleEdit">编辑</a-button>
|
|
|
+ @click.stop="handleEdit">
|
|
|
+ <a-icon type="edit"/>编辑
|
|
|
+ </a-button>
|
|
|
+ <a-button type="link" class="button-default" @click="showDetail=!showDetail">
|
|
|
+ <a-icon :type="showDetail ? 'eye-invisible' : 'eye'"/> {{ showDetail?'隐藏':'查看' }}信息
|
|
|
+ </a-button>
|
|
|
</template>
|
|
|
<!-- 操作区,位于 title 行的行尾 -->
|
|
|
<template slot="extra">
|
|
@@ -50,68 +54,69 @@
|
|
|
@click="handlePrint('dbflExport')">调拨分类导出</a-button>
|
|
|
</template>
|
|
|
</a-page-header>
|
|
|
- <a-card size="small" :bordered="false" class="allocateBillDetail-cont">
|
|
|
- <a-collapse :activeKey="['1']">
|
|
|
- <a-collapse-panel key="1" header="基础信息">
|
|
|
- <a-descriptions :column="4">
|
|
|
- <a-descriptions-item label="调往对象">{{ (basicInfoData&&basicInfoData.targetName) || '--' }}</a-descriptions-item>
|
|
|
- <a-descriptions-item label="调出仓库">{{ (basicInfoData&&basicInfoData.warehouseName) || '--' }}</a-descriptions-item>
|
|
|
- <a-descriptions-item label="发货编号">{{ (basicInfoData&&basicInfoData.sendNo) || '--' }}</a-descriptions-item>
|
|
|
- <a-descriptions-item label="收货客户名称">{{ (basicInfoData&&basicInfoData.receiverName) || '--' }}</a-descriptions-item>
|
|
|
- <a-descriptions-item label="调拨单号">{{ (basicInfoData&&basicInfoData.allocateNo) || '--' }}</a-descriptions-item>
|
|
|
- <a-descriptions-item label="业务状态">{{ (basicInfoData&&basicInfoData.stateDictValue) || '--' }}</a-descriptions-item>
|
|
|
- <a-descriptions-item label="打印状态">{{ (basicInfoData&&basicInfoData.printStateDictValue) || '--' }}</a-descriptions-item>
|
|
|
- <a-descriptions-item label="费用类型">
|
|
|
- {{ (basicInfoData&&basicInfoData.costTypeName) || '--' }}
|
|
|
- </a-descriptions-item>
|
|
|
- <a-descriptions-item label="调拨类型">
|
|
|
- <div>
|
|
|
- <span v-if="basicInfoData&&basicInfoData.allocateSortName">{{ basicInfoData.allocateSortName || '--' }}</span>
|
|
|
- <span v-if="basicInfoData&&basicInfoData.allocateTypeName">/{{ basicInfoData.allocateTypeName || '--' }}</span>
|
|
|
- </div>
|
|
|
- </a-descriptions-item>
|
|
|
- <a-descriptions-item label="费用归属品牌">
|
|
|
- {{ (basicInfoData&&basicInfoData.productBrandName) || '--' }}
|
|
|
- </a-descriptions-item>
|
|
|
- <a-descriptions-item label="费用归属品类">
|
|
|
- <div>
|
|
|
- <span v-if="basicInfoData&&basicInfoData.productTypeName1">{{ basicInfoData.productTypeName1 || '--' }}</span>
|
|
|
- <span v-else>--</span>
|
|
|
- <span v-if="basicInfoData&&basicInfoData.productTypeName2">/{{ basicInfoData.productTypeName2 || '--' }}</span>
|
|
|
- <span v-if="basicInfoData&&basicInfoData.productTypeName3">/{{ basicInfoData.productTypeName3 || '--' }}</span>
|
|
|
- </div>
|
|
|
- </a-descriptions-item>
|
|
|
- <a-descriptions-item label="起止时间">
|
|
|
- <span v-if="basicInfoData&&(basicInfoData.promoStartDate || basicInfoData.promoEndDate)">{{ (basicInfoData&&basicInfoData.promoStartDate) || '--' }} ~ {{ (basicInfoData&&basicInfoData.promoEndDate) || '--' }}</span>
|
|
|
- <span v-else>--</span>
|
|
|
- </a-descriptions-item>
|
|
|
- <a-descriptions-item label="备注">{{ (basicInfoData&&basicInfoData.remark) || '--' }}</a-descriptions-item>
|
|
|
- <a-descriptions-item label="附件" :span="3">
|
|
|
- <div v-if="basicInfoData&&basicInfoData.attachmentList&&basicInfoData.attachmentList.length">
|
|
|
- <a
|
|
|
- target="_blank"
|
|
|
- style="color: #00aaff;text-decoration: underline;margin-right: 15px;"
|
|
|
- :href="item.filePath"
|
|
|
- v-for="item in basicInfoData.attachmentList"
|
|
|
- :key="item.id">
|
|
|
- {{ item.fileName }}
|
|
|
- </a>
|
|
|
- </div>
|
|
|
+ <!-- 基础信息 -->
|
|
|
+ <a-card size="small" :bordered="false" class="allocateBillDetail-cont" v-show="showDetail">
|
|
|
+ <div style="padding: 0;" ref="basicInformation">
|
|
|
+ <a-descriptions :column="4">
|
|
|
+ <a-descriptions-item label="调往对象">{{ (basicInfoData&&basicInfoData.targetName) || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="调出仓库">{{ (basicInfoData&&basicInfoData.warehouseName) || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="发货编号">{{ (basicInfoData&&basicInfoData.sendNo) || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="收货客户名称">{{ (basicInfoData&&basicInfoData.receiverName) || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="调拨单号">{{ (basicInfoData&&basicInfoData.allocateNo) || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="业务状态">{{ (basicInfoData&&basicInfoData.stateDictValue) || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="打印状态">{{ (basicInfoData&&basicInfoData.printStateDictValue) || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="费用类型">
|
|
|
+ {{ (basicInfoData&&basicInfoData.costTypeName) || '--' }}
|
|
|
+ </a-descriptions-item>
|
|
|
+ <a-descriptions-item label="调拨类型">
|
|
|
+ <div>
|
|
|
+ <span v-if="basicInfoData&&basicInfoData.allocateSortName">{{ basicInfoData.allocateSortName || '--' }}</span>
|
|
|
+ <span v-if="basicInfoData&&basicInfoData.allocateTypeName">/{{ basicInfoData.allocateTypeName || '--' }}</span>
|
|
|
+ </div>
|
|
|
+ </a-descriptions-item>
|
|
|
+ <a-descriptions-item label="费用归属品牌">
|
|
|
+ {{ (basicInfoData&&basicInfoData.productBrandName) || '--' }}
|
|
|
+ </a-descriptions-item>
|
|
|
+ <a-descriptions-item label="费用归属品类">
|
|
|
+ <div>
|
|
|
+ <span v-if="basicInfoData&&basicInfoData.productTypeName1">{{ basicInfoData.productTypeName1 || '--' }}</span>
|
|
|
<span v-else>--</span>
|
|
|
- </a-descriptions-item>
|
|
|
- </a-descriptions>
|
|
|
- </a-collapse-panel>
|
|
|
- </a-collapse>
|
|
|
+ <span v-if="basicInfoData&&basicInfoData.productTypeName2">/{{ basicInfoData.productTypeName2 || '--' }}</span>
|
|
|
+ <span v-if="basicInfoData&&basicInfoData.productTypeName3">/{{ basicInfoData.productTypeName3 || '--' }}</span>
|
|
|
+ </div>
|
|
|
+ </a-descriptions-item>
|
|
|
+ <a-descriptions-item label="起止时间">
|
|
|
+ <span v-if="basicInfoData&&(basicInfoData.promoStartDate || basicInfoData.promoEndDate)">{{ (basicInfoData&&basicInfoData.promoStartDate) || '--' }} ~ {{ (basicInfoData&&basicInfoData.promoEndDate) || '--' }}</span>
|
|
|
+ <span v-else>--</span>
|
|
|
+ </a-descriptions-item>
|
|
|
+ <a-descriptions-item label="备注" :span="4">{{ (basicInfoData&&basicInfoData.remark) || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="附件" :span="4">
|
|
|
+ <div v-if="basicInfoData&&basicInfoData.attachmentList&&basicInfoData.attachmentList.length">
|
|
|
+ <a
|
|
|
+ target="_blank"
|
|
|
+ style="color: #00aaff;text-decoration: underline;margin-right: 15px;"
|
|
|
+ :href="item.filePath"
|
|
|
+ v-for="item in basicInfoData.attachmentList"
|
|
|
+ :key="item.id">
|
|
|
+ {{ item.fileName }}
|
|
|
+ </a>
|
|
|
+ </div>
|
|
|
+ <span v-else>--</span>
|
|
|
+ </a-descriptions-item>
|
|
|
+ </a-descriptions>
|
|
|
+ </div>
|
|
|
</a-card>
|
|
|
<a-card size="small" :bordered="false" class="allocateBillDetail-cont">
|
|
|
<!-- 总计 -->
|
|
|
- <a-alert type="info" style="margin-bottom:10px">
|
|
|
- <div slot="message">
|
|
|
- 总数量:<strong>{{ (productTotal&&(productTotal.totalQty || productTotal.totalQty==0)) ? productTotal.totalQty : '--' }}</strong> ;
|
|
|
- <span v-if="$hasPermissions('M_transferOut_detail_costPrice')||$hasPermissions('M_tfoPrint_detail_costPrice')||$hasPermissions('M_mso_detail_costPrice')">总成本:<strong>{{ (productTotal&&(productTotal.totalCost || productTotal.totalCost==0)) ? toThousands(productTotal.totalCost) : '--' }}</strong> ;</span>
|
|
|
- <span v-if="$hasPermissions('M_transferOut_detail_salesPrice')||$hasPermissions('M_tfoPrint_detail_salesPrice')||$hasPermissions('M_mso_detail_salesPrice')">总售价:<strong>{{ (productTotal&&(productTotal.totalPrice || productTotal.totalPrice==0)) ? toThousands(productTotal.totalPrice) : '--' }}</strong>;</span>
|
|
|
- </div>
|
|
|
- </a-alert>
|
|
|
+ <div ref="countInfo">
|
|
|
+ <a-alert type="info" style="margin-bottom:10px">
|
|
|
+ <div slot="message">
|
|
|
+ 总数量:<strong>{{ (productTotal&&(productTotal.totalQty || productTotal.totalQty==0)) ? productTotal.totalQty : '--' }}</strong> ;
|
|
|
+ <span v-if="$hasPermissions('M_transferOut_detail_costPrice')||$hasPermissions('M_tfoPrint_detail_costPrice')||$hasPermissions('M_mso_detail_costPrice')">总成本:<strong>{{ (productTotal&&(productTotal.totalCost || productTotal.totalCost==0)) ? toThousands(productTotal.totalCost) : '--' }}</strong> ;</span>
|
|
|
+ <span v-if="$hasPermissions('M_transferOut_detail_salesPrice')||$hasPermissions('M_tfoPrint_detail_salesPrice')||$hasPermissions('M_mso_detail_salesPrice')">总售价:<strong>{{ (productTotal&&(productTotal.totalPrice || productTotal.totalPrice==0)) ? toThousands(productTotal.totalPrice) : '--' }}</strong>;</span>
|
|
|
+ </div>
|
|
|
+ </a-alert>
|
|
|
+ </div>
|
|
|
<!-- 列表 -->
|
|
|
<s-table
|
|
|
class="sTable"
|
|
@@ -176,7 +181,8 @@ export default {
|
|
|
productTotal: null, // 合计
|
|
|
localDataSource: [],
|
|
|
openModal: false,
|
|
|
- nowType: null
|
|
|
+ nowType: null,
|
|
|
+ showDetail: false
|
|
|
}
|
|
|
},
|
|
|
computed: {
|
|
@@ -187,18 +193,18 @@ export default {
|
|
|
const _this = this
|
|
|
const arr = [
|
|
|
{ title: '序号', dataIndex: 'no', width: '4%', align: 'center' },
|
|
|
- { title: '产品编码', dataIndex: 'productEntity.code', width: '10%', align: 'center', customRender: function (text) { return text || '--' } },
|
|
|
- { title: '产品名称', dataIndex: 'productEntity.name', width: '20%', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true },
|
|
|
+ { title: '产品编码', dataIndex: 'productEntity.code', width: '10%', align: 'left', customRender: function (text) { return text || '--' } },
|
|
|
+ { title: '产品名称', dataIndex: 'productEntity.name', width: '20%', align: 'left', customRender: function (text) { return text || '--' }, ellipsis: true },
|
|
|
{ title: '原厂编码', dataIndex: 'productEntity.origCode', width: '8%', align: 'center', customRender: function (text) { return text || '--' } },
|
|
|
{ title: '单位', dataIndex: 'productEntity.unit', width: '5%', align: 'center', customRender: function (text) { return text || '--' } },
|
|
|
{ title: '调出数量', dataIndex: 'qty', width: '8%', align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } }
|
|
|
]
|
|
|
- if (this.$hasPermissions('M_transferOut_detail_costPrice')||this.$hasPermissions('M_tfoPrint_detail_salesPrice')||this.$hasPermissions('M_mso_detail_costPrice')) { // 成本价权限
|
|
|
+ if (this.$hasPermissions('M_transferOut_detail_costPrice') || this.$hasPermissions('M_tfoPrint_detail_salesPrice') || this.$hasPermissions('M_mso_detail_costPrice')) { // 成本价权限
|
|
|
arr.splice(5, 0, { title: '成本价', dataIndex: 'cost', width: '9%', align: 'right', customRender: function (text) { return ((text || text == 0) ? _this.toThousands(text) : '--') } })
|
|
|
arr.splice(8, 0, { title: '成本小计', dataIndex: 'totalCost', width: '9%', align: 'right', customRender: function (text) { return ((text || text == 0) ? _this.toThousands(text) : '--') } })
|
|
|
}
|
|
|
- if (this.$hasPermissions('M_transferOut_detail_salesPrice')||this.$hasPermissions('M_tfoPrint_detail_salesPrice')||this.$hasPermissions('M_mso_detail_salesPrice')) { // 售价权限
|
|
|
- const ind = this.$hasPermissions('M_transferOut_detail_costPrice')||this.$hasPermissions('M_tfoPrint_detail_costPrice') ? 6 : 5
|
|
|
+ if (this.$hasPermissions('M_transferOut_detail_salesPrice') || this.$hasPermissions('M_tfoPrint_detail_salesPrice') || this.$hasPermissions('M_mso_detail_salesPrice')) { // 售价权限
|
|
|
+ const ind = this.$hasPermissions('M_transferOut_detail_costPrice') || this.$hasPermissions('M_tfoPrint_detail_costPrice') ? 6 : 5
|
|
|
arr.splice(ind, 0, { title: '售价', dataIndex: 'price', width: '8%', align: 'right', customRender: function (text) { return ((text || text == 0) ? _this.toThousands(text) : '--') } })
|
|
|
arr.splice(ind + 3, 0, { title: '售价小计', dataIndex: 'totalPrice', width: '9%', align: 'right', customRender: function (text) { return ((text || text == 0) ? _this.toThousands(text) : '--') } })
|
|
|
}
|
|
@@ -291,7 +297,7 @@ export default {
|
|
|
this.pageInit()
|
|
|
}
|
|
|
},
|
|
|
- deactivated(){
|
|
|
+ deactivated () {
|
|
|
this.$store.state.app.curActionPermission = ''
|
|
|
},
|
|
|
beforeRouteEnter (to, from, next) {
|