|
@@ -0,0 +1,383 @@
|
|
|
+<template>
|
|
|
+ <div v-if="showPage" class="jg-page-wrap salesDetail-wrap">
|
|
|
+ <a-spin :spinning="spinning" tip="Loading...">
|
|
|
+ <a-page-header :ghost="false" :backIcon="false" class="salesDetail-cont" :style="{ padding: !outBizSn ? '16px 24px' : '0px 24px' }">
|
|
|
+ <!-- 自定义的二级文字标题 -->
|
|
|
+ <template slot="subTitle" v-if="!outBizSn && detailData">
|
|
|
+ <span class="billno">单号:{{ detailData.salesBillNo ||'--' }}</span>
|
|
|
+ <a-tag color="green" v-if="detailData.billStatusDictValue">{{ detailData.billStatusDictValue }}</a-tag>
|
|
|
+ <a-tag color="orange" v-if="detailData.financialStatusDictValue">{{ detailData.financialStatusDictValue }}</a-tag>
|
|
|
+ <a-button type="link" class="button-default" @click="isShowBisiceInfo=!isShowBisiceInfo" style="margin-left:10px;vertical-align:middle;">
|
|
|
+ <a-icon :type="isShowBisiceInfo ? 'eye-invisible' : 'eye'"/>
|
|
|
+ {{ isShowBisiceInfo?'隐藏':'查看' }}信息
|
|
|
+ </a-button>
|
|
|
+ <a-button id="purchaseNewOrderEdit-back-btn" type="link" @click="handleBack" class="button-default"> <a-icon type="rollback" /> 返回列表</a-button>
|
|
|
+ </template>
|
|
|
+ <!-- 操作区,位于 title 行的行尾 -->
|
|
|
+ <template slot="extra" v-if="outBizSn ? $hasPermissions('B_outboundOrderDetail') : $hasPermissions('B_salesPrint')">
|
|
|
+ <div style="margin-top: 5px;">
|
|
|
+ <PrintPanel ref="printBox" position="bottomRight" :disabled="localDataSource.length==0" @handlePrint="handlePrint">
|
|
|
+ <div style="padding:10px;line-height: 30px;" slot="extendCons">
|
|
|
+ <a-checkbox v-model="printAllName" :checked="printAllName" id="salesQuery-printAllName">打印完整产品名称</a-checkbox>
|
|
|
+ <a-checkbox v-model="printOrgCode" :checked="printOrgCode" id="salesQuery-printOrgCode">打印原厂编码</a-checkbox>
|
|
|
+ <a-checkbox v-model="printPrice" :checked="printPrice" id="salesQuery-printPrice">打印售价</a-checkbox>
|
|
|
+ <br>
|
|
|
+ <a-checkbox v-model="printRemarks" :checked="printRemarks" id="salesQuery-printRemarks">打印备注</a-checkbox>
|
|
|
+ <!-- <a-checkbox v-model="printNo" :checked="printNo" id="salesQuery-printNo">打印销售单号</a-checkbox> -->
|
|
|
+ </div>
|
|
|
+ </PrintPanel>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ </a-page-header>
|
|
|
+ <div class="sales-detail-body">
|
|
|
+ <!-- 基础信息 -->
|
|
|
+ <a-card size="small" :bordered="false" class="salesDetail-cont" v-show="isShowBisiceInfo">
|
|
|
+ <a-descriptions size="small" :column="3">
|
|
|
+ <div slot="title" style="display:flex;justify-content:space-between;align-items:center;">
|
|
|
+ <span>基础信息</span>
|
|
|
+ <a-button
|
|
|
+ type="link"
|
|
|
+ id="salesReturnGrabEdit-editDesc-btn"
|
|
|
+ size="small"
|
|
|
+ @click="openEditModal=true"
|
|
|
+ class="button-info"
|
|
|
+ key="0"> <a-icon type="edit"></a-icon> 编辑</a-button>
|
|
|
+ </div>
|
|
|
+ <a-descriptions-item label="客户名称">{{ detailData&&detailData.buyerNameCurrent?detailData.buyerName?detailData.buyerName==detailData.buyerNameCurrent?detailData.buyerNameCurrent:detailData.buyerNameCurrent+'('+detailData.buyerName+')':detailData.buyerNameCurrent:'--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="客户地址" :span="2">
|
|
|
+ <div v-if="detailData&&(detailData.shippingAddressProvinceName || detailData.shippingAddressCityName || detailData.shippingAddressCountyName || detailData.shippingAddress)">
|
|
|
+ {{ detailData&&detailData.shippingAddressProvinceName || '' }}
|
|
|
+ {{ detailData&&detailData.shippingAddressCityName || '' }}
|
|
|
+ {{ detailData&&detailData.shippingAddressCountyName || '' }}
|
|
|
+ {{ detailData&&detailData.shippingAddress || '' }}
|
|
|
+ </div>
|
|
|
+ <span v-else>--</span>
|
|
|
+ </a-descriptions-item>
|
|
|
+ <a-descriptions-item label="收款方式">{{ detailData&&detailData.settleStyleSnDictValue || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="联系电话">{{ detailData&&detailData.consigneeTel || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="备注">{{ detailData&&detailData.remarks || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="销售单号">{{ detailData&&detailData.salesBillNo || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="制单人">{{ detailData&&detailData.operatorName || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="业务员">{{ detailData&&detailData.salesManName || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="来源">{{ detailData&&detailData.sourceTypeDictValue || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="下级采购单号" v-if="detailData&&detailData.sourceType=='PURCHASE'">{{ detailData&&detailData.purchaseBillNo || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="业务状态">{{ detailData&&detailData.billStatusDictValue || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="财务状态">{{ detailData&&detailData.financialStatusDictValue || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="采购单号" v-if="detailData&&detailData.sourceType!='SALES'&&detailData.sourceType!='TRANSFER_ORDER'">{{ detailData.purchaseBillNo || '--' }}</a-descriptions-item>
|
|
|
+ <a-descriptions-item label="收货状态" v-if="detailData&&detailData.sourceType=='XPRH_PURCHASE'&&detailData.billStatus=='FINISH'">{{ detailData.purchaseBillNo || '--' }}</a-descriptions-item>
|
|
|
+ </a-descriptions>
|
|
|
+ </a-card>
|
|
|
+ <a-card size="small" :bordered="false" class="pages-wrap">
|
|
|
+ <!-- alert -->
|
|
|
+ <div style="display: flex;align-items: center;justify-content: space-between;margin-bottom:10px;">
|
|
|
+ <div>
|
|
|
+ 总款数:<strong>{{ detailData&&(detailData.totalCategory || detailData.totalCategory==0) ? detailData.totalCategory : '--' }}</strong>;
|
|
|
+ 总数量:<strong>{{ detailData&&(detailData.totalQty || detailData.totalQty==0) ? detailData.totalQty : '--' }}</strong>;
|
|
|
+ 总赠品数量:<strong>{{ detailData&&(detailData.giftQty || detailData.giftQty==0) ? detailData.giftQty : '--' }}</strong>;
|
|
|
+ 急件总款数:<strong>{{ detailData&&(detailData.oosCategory || detailData.oosCategory==0) ? detailData.oosCategory : '--' }}</strong>;
|
|
|
+ 急件总数量:<strong>{{ detailData&&(detailData.oosQty || detailData.oosQty==0) ? detailData.oosQty : '--' }}</strong>;<br/>
|
|
|
+ 总售价:<strong>{{ detailData&&(detailData.totalAmount || detailData.totalAmount==0) ? toThousands(detailData.totalAmount) : '--' }}</strong>;
|
|
|
+ 总成本:<strong>{{ detailData&&(detailData.totalCost || detailData.totalCost==0) ? toThousands(detailData.totalCost) : '--' }}</strong>;
|
|
|
+ 总毛利:<strong>{{ detailData&&(detailData.grossProfit || detailData.grossProfit==0) ? toThousands(detailData.grossProfit) : '--' }}</strong>;
|
|
|
+ <span v-if="detailData&&detailData.sourceType&&detailData.sourceType==='XPRH_PURCHASE'"> 返券金额:<strong>{{ detailData&&(detailData.totalGiveAmount || detailData.totalGiveAmount==0) ? toThousands(detailData.totalGiveAmount) : '--' }}</strong>;</span>
|
|
|
+ </div>
|
|
|
+ <div>
|
|
|
+ <a-checkbox v-model="showCost" v-if="$hasPermissions('M_ShowAllCost')" id="salesQuery-cost">成本价</a-checkbox>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ <!-- 列表 -->
|
|
|
+ <s-table
|
|
|
+ class="sTable"
|
|
|
+ ref="table"
|
|
|
+ size="small"
|
|
|
+ :rowKey="(record) => record.id"
|
|
|
+ :columns="columns"
|
|
|
+ :data="loadData"
|
|
|
+ :defaultLoadData="false"
|
|
|
+ bordered>
|
|
|
+ <div slot="costTitle">
|
|
|
+ <a-tooltip placement="top">
|
|
|
+ <template slot="title">
|
|
|
+ 系统中不同批次的产品,成本价可能不同,此值是按照实际出库批次的成本计算得到。
|
|
|
+ </template>
|
|
|
+ <span style="margin-right: 5px;">实际总成本</span> <a-icon type="question-circle" />
|
|
|
+ </a-tooltip>
|
|
|
+ </div>
|
|
|
+ <!-- 产品编码 -->
|
|
|
+ <template slot="productCode" slot-scope="text, record">
|
|
|
+ <div v-if="detailData">
|
|
|
+ <div v-if="isOwerEdit">
|
|
|
+ <a-badge count="急" v-if="record.oosFlag == 1">
|
|
|
+ <div style="padding-right: 15px;">{{ text }}</div>
|
|
|
+ </a-badge>
|
|
|
+ <span v-else>{{ text }}</span>
|
|
|
+ </div>
|
|
|
+ <div v-else>
|
|
|
+ <a-badge count="急" v-if="isAudit&&record.oosFlag == 1">
|
|
|
+ <div style="padding-right: 15px;">{{ text }}</div>
|
|
|
+ </a-badge>
|
|
|
+ <a-badge count="缺" v-else-if="!isAudit&&(!record.currentStockQty || record.currentStockQty < record.qty)">
|
|
|
+ <div style="padding-right: 15px;">{{ text }}</div>
|
|
|
+ </a-badge>
|
|
|
+ <span v-else>{{ text }}</span>
|
|
|
+ </div>
|
|
|
+ </div>
|
|
|
+ </template>
|
|
|
+ <!-- 操作 -->
|
|
|
+ <template slot="action" slot-scope="text, record">
|
|
|
+ <a-button
|
|
|
+ :id="'sales-detail-out-'+record.id"
|
|
|
+ size="small"
|
|
|
+ type="link"
|
|
|
+ v-if="record.oosFlag == 0 && (isOwerEdit || isAudit)"
|
|
|
+ class="button-primary"
|
|
|
+ @click="handleViewDetail(record)">出库明细</a-button>
|
|
|
+ <span v-else>--</span>
|
|
|
+ </template>
|
|
|
+ </s-table>
|
|
|
+ </a-card>
|
|
|
+ </div>
|
|
|
+ </a-spin>
|
|
|
+ <!-- 出入库明细 -->
|
|
|
+ <outInDetialModal ref="outInDetialModal" outBizType="SALES" :openModal="showOutInModal" @close="showOutInModal=false"></outInDetialModal>
|
|
|
+ <!-- 编辑备注 -->
|
|
|
+ <editRemarkModal :openModal="openEditModal" @close="openEditModal=false" @ok="handleEditOk"></editRemarkModal>
|
|
|
+ </div>
|
|
|
+</template>
|
|
|
+
|
|
|
+<script>
|
|
|
+import { commonMixin } from '@/utils/mixin'
|
|
|
+import { getOperationalPrecision } from '@/libs/tools.js'
|
|
|
+import { hdPrint } from '@/libs/JGPrint'
|
|
|
+// 组件
|
|
|
+import { STable, VSelect } from '@/components'
|
|
|
+import editRemarkModal from './editRemarkModal.vue'
|
|
|
+import PrintPanel from '@/views/common/printPanel.vue'
|
|
|
+// 接口
|
|
|
+import { salesDetailBySn, salesDetailPrint, salesDetailExport } from '@/api/sales'
|
|
|
+import { salesDetailList } from '@/api/salesDetail'
|
|
|
+export default {
|
|
|
+ name: 'SalesDetail',
|
|
|
+ components: { STable, VSelect, PrintPanel, editRemarkModal },
|
|
|
+ mixins: [commonMixin],
|
|
|
+ props: {
|
|
|
+ outBizSn: { // 有值则为弹框,无值则为页面
|
|
|
+ type: [Number, String],
|
|
|
+ default: ''
|
|
|
+ }
|
|
|
+ },
|
|
|
+ data () {
|
|
|
+ return {
|
|
|
+ showPage: false, // 是否显示组件
|
|
|
+ spinning: false,
|
|
|
+ disabled: false,
|
|
|
+ showCost: false, // 是否显示成本价
|
|
|
+ printOrgCode: false, // 是否打印原创编码
|
|
|
+ printAllName: false, // 是否打印全部名称
|
|
|
+ printRemarks: false, // 是否打印备注
|
|
|
+ printPrice: false, // 是否打印价格
|
|
|
+ printNo: true, // 是否打印销售单号
|
|
|
+ showOutInModal: false, // 出库明细弹框
|
|
|
+ openEditModal: false, // 打开编辑备注弹窗
|
|
|
+ // 加载数据方法 必须为 Promise 对象
|
|
|
+ loadData: parameter => {
|
|
|
+ this.disabled = true
|
|
|
+ return salesDetailList(Object.assign(parameter, { orderBy: 'sales_bill_detail.CREATE_DATE desc', salesBillSn: this.outBizSn || this.$route.params.sn })).then(res => {
|
|
|
+ let data
|
|
|
+ if (res.status == 200) {
|
|
|
+ data = res.data
|
|
|
+ const no = (data.pageNo - 1) * data.pageSize
|
|
|
+ for (var i = 0; i < data.list.length; i++) {
|
|
|
+ data.list[i].no = no + i + 1
|
|
|
+ const productCode = (data.list[i].productEntity && data.list[i].productEntity.code) || (data.list[i].dealerProductEntity && data.list[i].dealerProductEntity.code)
|
|
|
+ const productName = (data.list[i].productEntity && data.list[i].productEntity.name) || (data.list[i].dealerProductEntity && data.list[i].dealerProductEntity.name)
|
|
|
+ const productOrigCode = (data.list[i].productEntity && data.list[i].productEntity.origCode) || (data.list[i].dealerProductEntity && data.list[i].dealerProductEntity.origCode) || '--'
|
|
|
+ const productOrigUnit = (data.list[i].productEntity && data.list[i].productEntity.unit) || (data.list[i].dealerProductEntity && data.list[i].dealerProductEntity.unit)
|
|
|
+ data.list[i].productCode = productCode || '--'
|
|
|
+ data.list[i].productName = productName || '--'
|
|
|
+ data.list[i].productOrigCode = productOrigCode || '--'
|
|
|
+ data.list[i].productOrigUnit = productOrigUnit || '--'
|
|
|
+ data.list[i].warehouseName = data.list[i].warehouseEntity && data.list[i].warehouseEntity.name || '--'
|
|
|
+ data.list[i].warehouseLocationName = data.list[i].warehouseLocationEntity && data.list[i].warehouseLocationEntity.name || '--'
|
|
|
+ // 售价小计 由于数据库内小数位数为4位,页面则需显示2位。因此会做小数运算精度处理
|
|
|
+ data.list[i].salePriceSubtotal = getOperationalPrecision(data.list[i].price, data.list[i].qty)
|
|
|
+ }
|
|
|
+ this.localDataSource = data.list
|
|
|
+ this.disabled = false
|
|
|
+ }
|
|
|
+ return data
|
|
|
+ })
|
|
|
+ },
|
|
|
+ localDataSource: [], // 原始列表数据
|
|
|
+ detailData: null, // 详情数据
|
|
|
+ isShowBisiceInfo: false// 显示基础内容
|
|
|
+ }
|
|
|
+ },
|
|
|
+ computed: {
|
|
|
+ // 是否自建单据
|
|
|
+ isOwerEdit () {
|
|
|
+ return this.detailData && this.detailData.sourceType == 'SALES'
|
|
|
+ },
|
|
|
+ // 是否审核通过
|
|
|
+ isAudit () {
|
|
|
+ return this.detailData ? (this.detailData.billStatus == 'WAIT_OUT_WAREHOUSE' || this.detailData.billStatus == 'FINISH') : false
|
|
|
+ },
|
|
|
+ // 列定义
|
|
|
+ columns () {
|
|
|
+ const _this = this
|
|
|
+ const arr = [
|
|
|
+ { title: '序号', dataIndex: 'no', width: '4%', align: 'center' },
|
|
|
+ { title: '产品编码', dataIndex: 'dealerProductEntity.code', width: '11%', scopedSlots: { customRender: 'productCode' }, align: 'center' },
|
|
|
+ { title: '产品名称', dataIndex: 'productName', width: '11%', align: 'center', customRender: function (text) { return text || '--' }, ellipsis: true },
|
|
|
+ { title: '原厂编码', dataIndex: 'productOrigCode', width: '9%', align: 'center', customRender: function (text) { return text && text != ' ' ? text : '--' } },
|
|
|
+ { title: '售价', dataIndex: 'price', width: '5%', align: 'right', customRender: function (text) { return ((text || text == 0) ? _this.toThousands(text) : '--') } },
|
|
|
+ { title: '销售数量', dataIndex: 'qty', width: '6%', align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } },
|
|
|
+ { title: '单位', dataIndex: 'productOrigUnit', width: '4%', align: 'center', customRender: function (text) { return text || '--' } },
|
|
|
+ { title: '售价小计', dataIndex: 'totalAmount', width: '6%', align: 'right', customRender: function (text) { return ((text || text == 0) ? _this.toThousands(text) : '--') } },
|
|
|
+ { title: '是否急件', dataIndex: 'oosFlagDictValue', width: '6%', align: 'center', customRender: function (text) { return text || '--' } },
|
|
|
+ { title: '操作', scopedSlots: { customRender: 'action' }, width: '7%', align: 'center' }
|
|
|
+ ]
|
|
|
+ if (this.detailData && this.detailData.sourceType && this.detailData.sourceType === 'XPRH_PURCHASE') {
|
|
|
+ arr.splice(8, 0, { title: <a-tooltip placement="bottom" title='返券金额以销售单完结时的活动规则为准'>返券金额 <a-icon type="question-circle" /></a-tooltip>, dataIndex: 'giveAmount', width: '6%', align: 'right', customRender: function (text) { return ((text || text == 0) ? _this.toThousands(text) : '--') } })
|
|
|
+ }
|
|
|
+ // 实际总成本
|
|
|
+ if (this.showCost) {
|
|
|
+ arr.splice(9, 0, { slots: { title: 'costTitle' }, dataIndex: 'totalCost', width: '6%', align: 'right', customRender: function (text) { return ((text || text == 0) ? _this.toThousands(text) : '--') } })
|
|
|
+ }
|
|
|
+ // 下级创建,不显示仓库仓位
|
|
|
+ if (!this.isOwerEdit) {
|
|
|
+ arr.splice(10, 0, { title: '库存数量', dataIndex: 'currentStockQty', width: '6%', align: 'center', customRender: function (text) { return ((text || text == 0) ? text : '--') } })
|
|
|
+ }
|
|
|
+
|
|
|
+ return arr
|
|
|
+ }
|
|
|
+ },
|
|
|
+ methods: {
|
|
|
+ handleEditOk () {
|
|
|
+ this.openEditModal = false
|
|
|
+ },
|
|
|
+ // 打印预览/快捷打印
|
|
|
+ handlePrint (type, printerType) {
|
|
|
+ const _this = this
|
|
|
+ _this.spinning = true
|
|
|
+ let url = salesDetailPrint
|
|
|
+ const params = {
|
|
|
+ sn: this.outBizSn || this.$route.params.sn,
|
|
|
+ printOrgCode: this.printOrgCode ? 1 : 0,
|
|
|
+ printAllName: this.printAllName ? 1 : 0,
|
|
|
+ remarksShowFlag: this.printRemarks ? 1 : 0,
|
|
|
+ printNo: this.printNo ? 1 : 0,
|
|
|
+ priceFlag: this.printPrice ? 1 : 0
|
|
|
+ }
|
|
|
+ if (type == 'export') { // 导出
|
|
|
+ url = salesDetailExport
|
|
|
+ }
|
|
|
+ // 打印或导出
|
|
|
+ hdPrint(printerType, type, url, params, '销售单', function () {
|
|
|
+ _this.spinning = false
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 返回
|
|
|
+ handleBack () {
|
|
|
+ this.$router.push({ name: 'onlinePayOrderList' })
|
|
|
+ },
|
|
|
+ // 详情
|
|
|
+ getDetail () {
|
|
|
+ salesDetailBySn({ salesBillSn: this.outBizSn || this.$route.params.sn }).then(res => {
|
|
|
+ if (res.status == 200) {
|
|
|
+ this.detailData = res.data
|
|
|
+ } else {
|
|
|
+ this.detailData = null
|
|
|
+ }
|
|
|
+ })
|
|
|
+ },
|
|
|
+ // 打开出入库明细
|
|
|
+ handleViewDetail (row) {
|
|
|
+ this.showOutInModal = true
|
|
|
+ this.$refs.outInDetialModal.getData(row)
|
|
|
+ },
|
|
|
+ // 页面初始
|
|
|
+ pageInit () {
|
|
|
+ const vm = this
|
|
|
+ vm.$nextTick(() => {
|
|
|
+ vm.spinning = false
|
|
|
+ vm.disabled = false
|
|
|
+ // 是否默认打印原厂编码
|
|
|
+ vm.printOrgCode = localStorage.getItem('printOrgCode-' + this.$store.state.user.info.orgId) == 'true'
|
|
|
+ vm.printAllName = localStorage.getItem('printAllName-' + this.$store.state.user.info.orgId) == 'true'
|
|
|
+ vm.printRemarks = localStorage.getItem('printRemarks-' + this.$store.state.user.info.orgId) == 'true'
|
|
|
+ vm.printPrice = localStorage.getItem('printPrice-' + this.$store.state.user.info.orgId) == 'true'
|
|
|
+ const printNo = localStorage.getItem('printNo-' + this.$store.state.user.info.orgId)
|
|
|
+ console.log(printNo)
|
|
|
+ vm.printNo = printNo ? printNo == 'true' : true
|
|
|
+ // 查询列表
|
|
|
+ vm.$refs.table.refresh(true)
|
|
|
+ // 获取单据详情
|
|
|
+ vm.getDetail()
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ watch: {
|
|
|
+ // 打印选项变化
|
|
|
+ printOrgCode (newValue, oldValue) {
|
|
|
+ localStorage.setItem('printOrgCode-' + this.$store.state.user.info.orgId, newValue)
|
|
|
+ },
|
|
|
+ printRemarks (newValue, oldValue) {
|
|
|
+ localStorage.setItem('printRemarks-' + this.$store.state.user.info.orgId, newValue)
|
|
|
+ },
|
|
|
+ printPrice (newValue, oldValue) {
|
|
|
+ localStorage.setItem('printPrice-' + this.$store.state.user.info.orgId, newValue)
|
|
|
+ },
|
|
|
+ printAllName (newValue, oldValue) {
|
|
|
+ localStorage.setItem('printAllName-' + this.$store.state.user.info.orgId, newValue)
|
|
|
+ },
|
|
|
+ printNo (newValue, oldValue) {
|
|
|
+ localStorage.setItem('printNo-' + this.$store.state.user.info.orgId, newValue)
|
|
|
+ }
|
|
|
+ },
|
|
|
+ mounted () {
|
|
|
+ if (!this.$store.state.app.isNewTab || this.outBizSn) { // 页签刷新时调用
|
|
|
+ this.showPage = true
|
|
|
+ this.pageInit()
|
|
|
+ }
|
|
|
+ },
|
|
|
+ activated () {
|
|
|
+ this.showPage = true
|
|
|
+ this.pageInit()
|
|
|
+ },
|
|
|
+ beforeRouteEnter (to, from, next) {
|
|
|
+ next(vm => {
|
|
|
+ })
|
|
|
+ }
|
|
|
+}
|
|
|
+</script>
|
|
|
+
|
|
|
+<style lang="less" scoped>
|
|
|
+ .salesDetail-wrap{
|
|
|
+ position: relative;
|
|
|
+ height: 100%;
|
|
|
+ .billno{
|
|
|
+ font-size: 16px;
|
|
|
+ font-weight: 600;
|
|
|
+ display: inline-block;
|
|
|
+ vertical-align: middle;
|
|
|
+ color: #333;
|
|
|
+ margin-right: 15px;
|
|
|
+ }
|
|
|
+ .ant-tag-green,.ant-tag-orange{
|
|
|
+ vertical-align: middle;
|
|
|
+ }
|
|
|
+ .salesDetail-cont{
|
|
|
+ margin-bottom: 10px;
|
|
|
+ /deep/ .ant-descriptions-title{
|
|
|
+ margin-bottom: 10px;
|
|
|
+ }
|
|
|
+ }
|
|
|
+ .pages-wrap{
|
|
|
+ strong{
|
|
|
+ color:#f12929;
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+ }
|
|
|
+</style>
|