Browse Source

增加签收图片zip压缩

fix_bug_pro20231227
汤建军 1 year ago
parent
commit
d75abf4184
  1. 21
      src/api/distribution/distributionSignfor.js
  2. 4
      src/views/distribution/reservation/atlas.vue
  3. 161
      src/views/distribution/signdetail/distributionSigndetail.vue
  4. 92
      src/views/distribution/signfor/distributionSignfor.vue

21
src/api/distribution/distributionSignfor.js

@ -52,7 +52,23 @@ export const getSignforExportOwn = row => {
},
responseType: 'blob',
})
}
;/**
* 签收图片下载
* @param row
* @returns {AxiosPromise}
*/
export const handlePicture = ids => {
return request({
url: '/api/logpm-distribution/signfor/handlePicture',
method: 'get',
params: {
ids
},
})
};
export const getListOrder = (current, size, params) => {
return request({
url: '/api/logpm-distribution/reservationStockarticle/orderpage',
@ -64,6 +80,7 @@ export const getListOrder = (current, size, params) => {
}
})
}
export const getstatistics = (current, size, params) => {
return request({
url: '/api/logpm-distribution/signfor/statistics',
@ -205,7 +222,7 @@ export const addvalueInfoList = (row) => {
/**
* 签收增值服务弹窗
* 签收增值服务弹窗
* @param params
* @returns {AxiosPromise}
*/
@ -254,4 +271,4 @@ export const $_updateSignAddValuePackage = data => {
method: 'post',
data,
});
};
};

4
src/views/distribution/reservation/atlas.vue

@ -101,15 +101,17 @@ function initmap() {
})
}
function checkgoto() {
let ids = [];
details.datalists.map(item => {
console.log('item>>>>>>>>>>>>>>',item);
if (item.isck) {
ids.push(item.items.id);
}
});
console.log("ids>>>>>>>>>>>",ids);
if (ids.length == 0) {
return;
}

161
src/views/distribution/signdetail/distributionSigndetail.vue

@ -1,21 +1,132 @@
<template>
<basic-container>
<div class="avue-crud">
<!-- <el-row>-->
<!-- <div class="avue-crud__header">-->
<!-- &lt;!&ndash; 头部左侧按钮模块 &ndash;&gt;-->
<!-- <div class="avue-crud__left">-->
<!-- &lt;!&ndash; <el-button type="primary" icon="el-icon-plus" @click="handleAdd"> </el-button>&ndash;&gt;-->
<!-- &lt;!&ndash; <el-button type="danger" icon="el-icon-delete" @click="handleDelete" plain> </el-button>&ndash;&gt;-->
<!-- <el-button type="danger" icon="el-icon-download" @click="handleExportInfo" plain-->
<!-- >导出-->
<!-- </el-button>-->
<!-- </div>-->
<!-- &lt;!&ndash; 头部右侧按钮模块 &ndash;&gt;-->
<!-- <div class="avue-crud__right">-->
<!-- <el-button icon="el-icon-refresh" @click="searchChange" circle></el-button>-->
<!-- <el-button icon="Operation" @click="showdrawer(true)" circle></el-button>-->
<!-- &lt;!&ndash; <el-button icon="el-icon-search" @click="searchHide" circle></el-button> &ndash;&gt;-->
<!-- </div>-->
<!-- </div>-->
<!-- </el-row>-->
<el-row v-if="!search">
<!-- 查询模块 -->
<el-form :inline="true" :model="query" class="fr-fm">
<div class="fr-fo">
<el-form-item label="配送车次:">
<el-input v-model="query.trainNumber" placeholder="请输入配送车次"></el-input>
</el-form-item>
<el-form-item label="订单编号:">
<el-input v-model="query.stockArticleId" placeholder="请输入订单自编号"></el-input>
</el-form-item>
<!-- <el-form-item label="商城名称:">-->
<!-- <el-input v-model="query.mallName" placeholder="请输入商城名称"></el-input>-->
<!-- </el-form-item>-->
<!-- <el-form-item label="门店名称:">-->
<!-- <el-input v-model="query.storeName" placeholder="请输入门店名称"></el-input>-->
<!-- </el-form-item>-->
<el-form-item label="客户名称:">
<el-input v-model="query.consignee" placeholder="请输入客户名称"></el-input>
</el-form-item>
<el-form-item label="客户电话:">
<el-input v-model="query.deliveryPhone" placeholder="请输入客户电话"></el-input>
</el-form-item>
<el-form-item label="业务类型:">
<el-select v-model="query.businessType" placeholder="请选择业务类型">
<el-option :key="'1'" :value="'商配'">商配 </el-option>
<el-option :key="'2'" :value="'市配'">市配 </el-option>
</el-select>
<!-- <el-input v-model="query.deliveryType" placeholder="请选择业务类型"></el-input>-->
</el-form-item>
<el-form-item label="文员名称:">
<el-input v-model="query.deliveryPhone" placeholder="请输入客户电话"></el-input>
</el-form-item>
<el-form-item label="司机名称:">
<el-input v-model="query.deliveryPhone" placeholder="请输入客户电话"></el-input>
</el-form-item>
<el-form-item label="车牌:">
<el-input v-model="query.deliveryPhone" placeholder="请输入客户电话"></el-input>
</el-form-item>
<el-form-item label="配送时间:">
<el-date-picker
v-model="query.taskTimeSection"
type="daterange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions">
</el-date-picker>
</el-form-item>
<el-form-item label="装车时间:">
<el-date-picker
v-model="query.loadingTimeSection"
type="daterange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions">
</el-date-picker>
</el-form-item>
<el-form-item label="司机签收时间:">
<el-date-picker
v-model="query.sjsigningTimeSection"
type="daterange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions">
</el-date-picker>
</el-form-item>
<el-form-item label="文员审核时间:">
<el-date-picker
v-model="query.signingTimeSection"
type="daterange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
:picker-options="pickerOptions">
</el-date-picker>
</el-form-item>
</div>
<!-- 查询按钮 -->
<el-form-item class="el-btn">
<el-button type="primary" icon="el-icon-search" @click="searchChange"> </el-button>
<el-button icon="el-icon-delete" @click="searchReset()"> </el-button>
</el-form-item>
</el-form>
</el-row>
<el-row>
<div class="avue-crud__header">
<!-- 头部左侧按钮模块 -->
<div class="avue-crud__left">
<!-- <el-button type="primary" icon="el-icon-plus" @click="handleAdd"> </el-button>-->
<!-- <el-button type="danger" icon="el-icon-delete" @click="handleDelete" plain> </el-button>-->
<el-button type="danger" icon="el-icon-download" @click="handleExportInfo" plain
>导出
>导出
</el-button>
</div>
<!-- 头部右侧按钮模块 -->
<div class="avue-crud__right">
<el-button icon="el-icon-refresh" @click="searchChange" circle></el-button>
<el-button icon="Operation" @click="showdrawer(true)" circle></el-button>
<!-- <el-button icon="el-icon-search" @click="searchHide" circle></el-button> -->
<el-button icon="el-icon-search" @click="searchHide" circle></el-button>
</div>
</div>
</el-row>
@ -266,16 +377,16 @@ export default {
fixed: false,
sortable: true,
},
{
prop: 'warehouseEntryTime',
label: '入库时间',
type: 4,
values: '',
width: '130',
checkarr: [],
fixed: false,
sortable: true,
},
// {
// prop: 'warehouseEntryTime',
// label: '',
// type: 4,
// values: '',
// width: '130',
// checkarr: [],
// fixed: false,
// sortable: true,
// },
// {
// prop: 'leadTime',
// label: '',
@ -308,6 +419,28 @@ export default {
sortable: true,
head: false,
},
{
prop: 'signeeName',
label: '签收人',
type: 2,
values: '',
width: '130',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'examineUserName',
label: '审核人',
type: 2,
values: '',
width: '130',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'storeTime',
label: '在库时长',

92
src/views/distribution/signfor/distributionSignfor.vue

@ -30,61 +30,72 @@
</el-select>
<!-- <el-input v-model="query.deliveryType" placeholder="请选择业务类型"></el-input>-->
</el-form-item>
<el-form-item label="文员名称:">
<el-input v-model="query.deliveryPhone" placeholder="请输入客户电话"></el-input>
<el-form-item label="审核人名称:">
<el-input v-model="query.examineUserName" placeholder="请输入客户电话"></el-input>
</el-form-item>
<el-form-item label="签收人名称:">
<el-input v-model="query.signeeName" placeholder="请输入客户电话"></el-input>
</el-form-item>
<el-form-item label="司机名称:">
<el-input v-model="query.deliveryPhone" placeholder="请输入客户电话"></el-input>
<el-input v-model="query.driverName" placeholder="请输入司机名称"></el-input>
</el-form-item>
<el-form-item label="车牌:">
<el-input v-model="query.deliveryPhone" placeholder="请输入客户电话"></el-input>
<el-input v-model="query.vehicleName" placeholder="请输入车牌号"></el-input>
</el-form-item>
<el-form-item label="配送时间:">
<el-date-picker
v-model="query.taskTimeSection"
type="daterange"
type="datetimerange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
format="YYYY/MM/DD"
value-format="YYYY-MM-DD"
:picker-options="pickerOptions">
</el-date-picker>
</el-form-item>
<el-form-item label="装车时间:">
<el-date-picker
v-model="query.loadingTimeSection"
type="daterange"
type="datetimerange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
format="YYYY/MM/DD"
value-format="YYYY-MM-DD"
:picker-options="pickerOptions">
</el-date-picker>
</el-form-item>
<el-form-item label="司机签收时间:">
<el-date-picker
v-model="query.sjsigningTimeSection"
type="daterange"
type="datetimerange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
format="YYYY/MM/DD"
value-format="YYYY-MM-DD"
:picker-options="pickerOptions">
</el-date-picker>
</el-form-item>
<el-form-item label="文员审核时间:">
<el-date-picker
v-model="query.signingTimeSection"
type="daterange"
type="datetimerange"
align="right"
unlink-panels
range-separator="至"
start-placeholder="开始日期"
end-placeholder="结束日期"
format="YYYY/MM/DD"
value-format="YYYY-MM-DD"
:picker-options="pickerOptions">
</el-date-picker>
</el-form-item>
@ -104,6 +115,9 @@
<el-button type="danger" icon="el-icon-download" @click="handleExportInfo" plain
>导出
</el-button>
<el-button type="danger" icon="el-icon-picture" @click="handlePictureInfo" plain
>导出图片
</el-button>
</div>
<!-- 头部右侧按钮模块 -->
<div class="avue-crud__right">
@ -228,10 +242,11 @@ import option from '@/option/distribution/distributionSignfor';
import { mapGetters } from 'vuex';
import { getDictionaryBiz } from '@/api/system/dict';
import dayjs from 'dayjs';
import { getVehicleList } from '@/api/basicdata/basicdataVehicle';
// import { getVehicleList } from '@/api/basicdata/basicdataVehicle';
import { getDriverList } from '@/api/basicdata/basicdataDriverArtery';
import { getDeliveryListExport } from '@/api/distribution/distributionDeliveryList';
import { handlePicture } from '@/api/distribution/distributionSignfor';
// import { getDeliveryListExport } from '@/api/distribution/distributionDeliveryList';
import { downloadXls } from '@/utils/util';
export default {
data() {
@ -702,6 +717,37 @@ export default {
downloadXls(res.data, '签收数据.xlsx');
});
},
handlePictureInfo() {
let row = {};
// if (!!this.ids) {
// row.ids = this.ids;
// }
console.log("this.selectionList>>>>>>>>>>",this.selectionList);
if (this.selectionList.length < 1){
this.$message({
type: 'warning',
message: '请选择签收记录!',
});
}
const idList= this.selectionList.map(item=>{
return item.id
})
console.log(idList);
const ids = idList.join(',');
console.log("ids>>>>>>>>>>>>",ids);
handlePicture(ids).then(res=>{
console.log("res><>>>>>>>>>>>>>",res);
})
// row.signingStatus = '2';
// row = { ...row, ...this.query };
// // console.log("<><><>>",ids);
// getSignforExportOwn(row).then(res => {
// // console.log(res.data);
// downloadXls(res.data, '.xlsx');
// });
},
showdrawer(value) {
this.drawerShow = value;
},
@ -982,18 +1028,30 @@ export default {
display: flex;
flex-wrap: wrap;
justify-content: space-between;
.fr-fo {
display: flex;
flex-wrap: wrap;
.el-form-item {
width: 208px;
}
}
/*.fr-fo {*/
/* display: flex;*/
/* flex-wrap: wrap;*/
/* .el-form-item {*/
/* width: 208px;*/
/* }*/
/*}*/
.el-btn {
margin-right: 0;
width: auto;
}
}
.fr-fo {
display: flex;
flex-wrap: wrap;
justify-content: flex-start;
.el-form-item {
width: 20%;
margin-right: 5%;
}
.el-select {
width: 100%;
}
}
.avue-crud__right {
display: flex;
align-items: flex-end;

Loading…
Cancel
Save