123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137 |
- <template>
- <div class="detail-container">
- <!-- <div class="top-container">
- <el-radio-group v-model="currentType" size="medium" @change="changeType()">
- <el-radio-button v-for="(item, index) in typeList" :key="index" :label="item.value">{{item.label}}</el-radio-button>
- </el-radio-group>
- </div> -->
- <div id="printMe">
- <template v-for="(item,i) in detailArr">
- <PrintCommon v-if="currentType === 0" :key="i" :detail-data="item" :company="company" />
- <PrintFoshan v-if="currentType === 1" :key="i" :detail-data="item" :company="company" />
- <PrintGuangzhou v-if="currentType === 2" :key="i" :detail-data="item" :company="company" />
- <PrintShaoguan v-if="currentType === 3" :key="i" :detail-data="item" :company="company" />
- </template>
- </div>
- <div class="page-footer">
- <div class="footer">
- <el-button v-print="printObj" type="primary" icon="el-icon-printer">打 印</el-button>
- <el-button @click="goBack">关 闭</el-button>
- </div>
- </div>
- </div>
- </template>
- <script>
- import print from 'vue-print-nb'
- import { getDeliverDetail } from '@/api/supply/deliver'
- import { addPrint } from '@/api/supply/pickup'
- import { getCompanyList } from '@/api/user'
- import PrintCommon from '@/components/Common/print-common'
- import PrintFoshan from '@/components/Common/print-foshan'
- import PrintGuangzhou from '@/components/Common/print-guangzhou'
- import PrintShaoguan from '@/components/Common/print-shaoguan'
- export default {
- name: 'ReturnDetail',
- componentName: 'ReturnDetail',
- components: {
- PrintFoshan,
- PrintGuangzhou,
- PrintShaoguan,
- PrintCommon
- },
- directives: {
- print
- },
- props: ['listItem'],
- data() {
- return {
- currentType: 0,
- typeList: [
- { label: '通用', value: 0 },
- { label: '佛山', value: 1 },
- { label: '广州', value: 2 },
- { label: '韶关', value: 3 }
- ],
- printObj: {
- id: 'printMe',
- closeCallback: () => {
- this.addPrint()
- }
- },
- detailData: {},
- company: '',
- detailArr: []
- }
- },
- created() {
- console.log(this.listItem,'454')
- this.listItem.map(k => {
- this.getDetail(k.id)
- })
- this.getCompanyList()
- },
- methods: {
- // 返回列表
- goBack() {
- this.$emit('backListFormDetail')
- },
- changeType() {
- },
- // 获取详情
- getDetail(id) {
- getDeliverDetail({ id: id }).then(res => {
- this.detailArr.push(res.data)
- })
- },
- getCompanyList() {
- getCompanyList().then(res => {
- this.company = res.data ? res.data[0].companyName : ''
- })
- },
- // 添加次数
- addPrint() {
- const ids = this.listItem.map(item => {
- return item.invoiceOrderId
- })
- addPrint({ ids: ids.join(',') }).then(res => {
- // this.$successMsg('提交成功');
- this.$parent.getList()
- })
- }
- }
- }
- </script>
- <style>
- body{
- height: auto !important;
- }
- </style>
- <style scoped lang="scss">
- .detail-container {
- width: 100%;
- height: auto !important;
- margin-bottom: 50px;
- font-family:'Trebuchet MS', 'Lucida Sans Unicode', 'Lucida Grande', 'Lucida Sans', Arial, sans-serif;
- color: #000 !important;
- }
- .top-container {
- margin-bottom: 20px;
- }
- </style>
|