Browse Source

签收复核图片查看上传人,仓库增加限制,只能admin能查看

dev
马远东 2 weeks ago
parent
commit
1954ce003e
  1. 4
      src/views/basicdata/warehouse/warehouse/basicdataWarehouse.vue
  2. 409
      src/views/distribution/deliverylist/distributionDeliveryListedt.vue
  3. 1
      src/views/distribution/signfor/distributionSignfortreat.vue

4
src/views/basicdata/warehouse/warehouse/basicdataWarehouse.vue

@ -34,7 +34,7 @@
<template #default="slotProps">
<template v-if="slotProps.scope.column.label === '操作'">
<div class="ElBtnClass">
<el-text @click="Expandconfiguration(slotProps.scope.row)">扩展配置</el-text>
<el-text v-if=" userInfo == 'admin'" @click="Expandconfiguration(slotProps.scope.row)">扩展配置</el-text>
<el-text @click="view(slotProps.scope)">查看</el-text>
<el-text @click="edit(slotProps.scope)">编辑</el-text>
<el-text @click="DeleteInformation(slotProps.scope)">删除</el-text>
@ -494,6 +494,8 @@ import { compressImageBlob } from '@/components/IMGcompressor/imgcompressor.js';
const dataRwo = ref({}); //
const props = { multiple: true };
const options = ref([]); //
const userInfo=ref({})
userInfo.value = JSON.parse(localStorage.getItem('TWMS-userInfo')).content.user_name;//
const Compulsoryoptions = [
{
value: 1,

409
src/views/distribution/deliverylist/distributionDeliveryListedt.vue

@ -103,175 +103,169 @@
</el-row>
<el-divider>订单列表</el-divider>
<div v-loading="checkloading" element-loading-text="正在复核签收处理中...">
<div class="flex-c-sb">
<el-tabs class="flex1" v-model="activeTab" @tab-click="handleTabClick">
<el-tab-pane label="客 户 列 表" name="tab1"> </el-tab-pane>
<div class="flex-c-sb">
<el-tabs
class="flex1"
v-model="activeTab"
@tab-click="handleTabClick"
v-loading="checkloading"
element-loading-text="正在复核签收处理中..."
>
<el-tab-pane label="客 户 列 表" name="tab1"> </el-tab-pane>
<el-tab-pane label="订 单 列 表" name="tab2"> </el-tab-pane>
<el-tab-pane label="订 单 列 表" name="tab2"> </el-tab-pane>
<el-tab-pane label="包 件 列 表" name="tab3"> </el-tab-pane>
<el-tab-pane label="包 件 列 表" name="tab3"> </el-tab-pane>
<el-tab-pane label="库 存 品 列 表" name="tab4"> </el-tab-pane>
</el-tabs>
<el-tab-pane label="库 存 品 列 表" name="tab4"> </el-tab-pane>
</el-tabs>
<el-button style="margin-left: 20px" type="primary" icon="Position" @click="handleExport">
导出
</el-button>
</div>
<!-- 客户列表 -->
<template v-if="activeTab === 'tab1'">
<tablecmt
class="tableNode"
:columnList="columnList"
:tableData="data"
:loading="loading"
@inputTxt="inputscClient"
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionChange"
>
<template #default="slotProps">
<el-text
type="primary"
text
icon="el-icon-view"
@click="handleView(slotProps.scope.row)"
>查看
</el-text>
<el-text
v-if="Number(deliverydata.type) === 2"
type="primary"
text
icon="el-icon-view"
@click="handlePrint(slotProps.scope.row)"
>打印
</el-text>
<el-button style="margin-left: 20px" type="primary" icon="Position" @click="handleExport">
导出
</el-button>
</div>
<!-- 客户列表 -->
<template v-if="activeTab === 'tab1'">
<tablecmt
class="tableNode"
:columnList="columnList"
:tableData="data"
:loading="loading"
@inputTxt="inputscClient"
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionChange"
>
<template #default="slotProps">
<el-text
type="primary"
text
icon="el-icon-view"
@click="handleView(slotProps.scope.row)"
>查看
</el-text>
<el-text
v-if="Number(deliverydata.type) === 2"
type="primary"
text
icon="el-icon-view"
@click="handlePrint(slotProps.scope.row)"
>打印
</el-text>
<el-text
type="primary"
text
icon="el-icon-view"
@click="viewAbnormalLoading(slotProps.scope.row)"
v-if="slotProps.scope.row.isHaveAbnormalPackage == '2'"
>异常审核
</el-text>
<el-text
type="primary"
text
icon="el-icon-view"
@click="viewAbnormalLoading(slotProps.scope.row)"
v-if="slotProps.scope.row.isHaveAbnormalPackage == '2'"
>异常审核
</el-text>
<el-text
type="primary"
text
icon="el-icon-view"
@click="handleCallDelivery('3', slotProps.scope.row)"
v-if="slotProps.scope.row.reservationSigningStatus === '待签收'"
>编辑
</el-text>
<el-text
type="primary"
text
icon="el-icon-view"
@click="pictureUpload('4', slotProps.scope.row)"
v-if="slotProps.scope.row.driverSigning === '未完成'"
>图片上传
</el-text>
<el-text
type="primary"
text
icon="el-icon-view"
@click="handleCallDelivery('3', slotProps.scope.row)"
v-if="slotProps.scope.row.reservationSigningStatus === '待签收'"
>编辑
</el-text>
<el-text
type="primary"
text
icon="el-icon-view"
@click="pictureUpload('4', slotProps.scope.row)"
v-if="slotProps.scope.row.driverSigning === '未完成'"
>图片上传
</el-text>
<el-text
type="primary"
text
icon="el-icon-view"
@click="handleSign(slotProps.scope.row)"
v-if="
slotProps.scope.row.signingStatus == '待审核' &&
slotProps.scope.row.driverSigning === '已完成'
"
>复核签收
</el-text>
</template>
</tablecmt>
</template>
<el-text
type="primary"
text
icon="el-icon-view"
@click="handleSign(slotProps.scope.row)"
v-if="
slotProps.scope.row.signingStatus == '待审核' &&
slotProps.scope.row.driverSigning === '已完成'
"
>复核签收
</el-text>
</template>
</tablecmt>
</template>
<!-- 订单列表 -->
<template v-if="activeTab === 'tab2'">
<!-- 列表模块 -->
<tablecmt
class="tableNode"
:columnList="ordoptioncolumn"
:tableData="orddata"
:loading="loading"
@inputTxt="inputscOrder"
>
<template #default="slotProps"> </template>
</tablecmt>
</template>
<!-- 订单列表 -->
<template v-if="activeTab === 'tab2'">
<!-- 列表模块 -->
<tablecmt
class="tableNode"
:columnList="ordoptioncolumn"
:tableData="orddata"
:loading="loading"
@inputTxt="inputscOrder"
>
<template #default="slotProps"> </template>
</tablecmt>
</template>
<!-- 包件列表 -->
<template v-if="activeTab === 'tab3'">
<!-- 列表模块 -->
<el-button type="warning" plain @click="ViewQRcodes">批量查看二维码 </el-button>
<tablecmt
class="tableNode"
:columnList="wrapoptioncolumn"
:tableData="packdata"
:loading="loading"
@inputTxt="inputscPackage"
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionChange"
>
<template #default="slotProps">
<el-text size="small" @click="handleQRCode(slotProps.scope.row)">查看二维码</el-text>
<el-text size="small" @click="ViewingTrajectories(slotProps.scope.row)"
>查看轨迹</el-text
>
</template>
</tablecmt>
<div class="avue-crud__pagination" style="width: 100%">
<!-- 分页模块 -->
<el-pagination
align="right"
background
@size-change="psizeChange"
@current-change="pcurrentChange"
:current-page="packpage.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-size="packpage.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="packpage.total"
<!-- 包件列表 -->
<template v-if="activeTab === 'tab3'">
<!-- 列表模块 -->
<el-button type="warning" plain @click="ViewQRcodes">批量查看二维码 </el-button>
<tablecmt
class="tableNode"
:columnList="wrapoptioncolumn"
:tableData="packdata"
:loading="loading"
@inputTxt="inputscPackage"
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionChange"
>
</el-pagination>
</div>
</template>
<template #default="slotProps">
<el-text size="small" @click="handleQRCode(slotProps.scope.row)">查看二维码</el-text>
<el-text size="small" @click="ViewingTrajectories(slotProps.scope.row)"
>查看轨迹</el-text
>
</template>
</tablecmt>
<!-- 库存品列表 -->
<template v-if="activeTab === 'tab4'">
<!-- 列表模块 -->
<tablecmt
class="tableNode"
:columnList="inventoryoptioncolumn"
:tableData="inventorydata"
:loading="loading"
@inputTxt="inputscInventory"
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionChange"
>
<template #default="slotProps">
<el-text size="small" @click="handleInventoryQRCode(slotProps.scope.row)"
>查看二维码</el-text
<div class="avue-crud__pagination" style="width: 100%">
<!-- 分页模块 -->
<el-pagination
align="right"
background
@size-change="psizeChange"
@current-change="pcurrentChange"
:current-page="packpage.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-size="packpage.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="packpage.total"
>
</template>
</tablecmt>
</template>
</el-pagination>
</div>
</template>
<!-- 库存品列表 -->
<template v-if="activeTab === 'tab4'">
<!-- 列表模块 -->
<tablecmt
class="tableNode"
:columnList="inventoryoptioncolumn"
:tableData="inventorydata"
:loading="loading"
@inputTxt="inputscInventory"
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionChange"
>
<template #default="slotProps">
<el-text size="small" @click="handleInventoryQRCode(slotProps.scope.row)"
>查看二维码</el-text
>
</template>
</tablecmt>
</template>
</div>
<el-dialog v-model="dialogFormCustomer" title="修改客户信息">
<el-form :model="formCustomer" ref="formCustomer" :rules="formCustomerRolus">
<el-row>
@ -660,6 +654,15 @@
multiple
drag
>
<template #file="{ file }">
<el-tooltip :content="getTooltipContent(file)" placement="top">
<img
:src="file.url"
alt="photo"
style="width: 100%; height: 100%; cursor: pointer"
/>
</el-tooltip>
</template>
<el-icon><Plus /></el-icon>
</el-upload>
<el-dialog v-model="dialogVisibleA">
@ -681,6 +684,15 @@
multiple
drag
>
<template #file="{ file }">
<el-tooltip :content="getTooltipContent(file)" placement="top">
<img
:src="file.url"
alt="photo"
style="width: 100%; height: 100%; cursor: pointer"
/>
</el-tooltip>
</template>
<el-icon><Plus /></el-icon>
</el-upload>
<el-dialog v-model="dialogVisibleB">
@ -702,6 +714,15 @@
multiple
drag
>
<template #file="{ file }">
<el-tooltip :content="getTooltipContent(file)" placement="top">
<img
:src="file.url"
alt="photo"
style="width: 100%; height: 100%; cursor: pointer"
/>
</el-tooltip>
</template>
<el-icon><Plus /></el-icon>
</el-upload>
<el-dialog v-model="dialogVisibleC">
@ -723,6 +744,15 @@
multiple
drag
>
<template #file="{ file }">
<el-tooltip :content="getTooltipContent(file)" placement="top">
<img
:src="file.url"
alt="photo"
style="width: 100%; height: 100%; cursor: pointer"
/>
</el-tooltip>
</template>
<el-icon><Plus /></el-icon>
</el-upload>
<el-dialog v-model="dialogVisibleD">
@ -744,6 +774,15 @@
multiple
drag
>
<template #file="{ file }">
<el-tooltip :content="getTooltipContent(file)" placement="top">
<img
:src="file.url"
alt="photo"
style="width: 100%; height: 100%; cursor: pointer"
/>
</el-tooltip>
</template>
<el-icon><Plus /></el-icon>
</el-upload>
<el-dialog v-model="dialogVisibleE">
@ -3811,6 +3850,10 @@ export default {
this.loadingObj.pageLoading = false;
}
},
getTooltipContent(file) {
console.log(file, 'file');
return `该图片由${file.driverName || '文员'}上传`;
},
/** 打印库存存品 */
async handleInventoryQRCode(row) {
try {
@ -4804,6 +4847,7 @@ export default {
reservationId: this.reservationId,
type: photoType,
urlRoute: item.response && item.response.data ? item.response.data.link : item.url,
driverName: item.driverName || '',
});
});
};
@ -5051,41 +5095,32 @@ export default {
this.form = res.data.data;
this.TcForm = res.data.data;
//
this.DoorstepPhoto = [];
this.StackingPhoto = [];
this.FragilePhotos = [];
this.HomePhotos = [];
this.SignForPhotos = [];
if (res.data.data.printVOList) {
// DoorstepPhoto
// StackingPhoto
// FragilePhotos
// HomePhotos
// SignForPhotos
this.DoorstepPhoto = [];
this.StackingPhoto = [];
this.FragilePhotos = [];
this.HomePhotos = [];
this.SignForPhotos = [];
this.DoorstepPhoto = []; //
this.StackingPhoto = []; //
this.FragilePhotos = []; //
this.HomePhotos = []; //
this.SignForPhotos = []; //
if (res.data.data.printVOList?.length) {
const photoTypes = {
photo_1: 'DoorstepPhoto',
photo_2: 'StackingPhoto',
photo_3: 'FragilePhotos',
photo_4: 'HomePhotos',
photo_5: 'SignForPhotos',
};
res.data.data.printVOList.forEach(item => {
if (item.type == 'photo_1') {
this.DoorstepPhoto.push({ name: '', url: item.urlRoute });
}
if (item.type == 'photo_2') {
this.StackingPhoto.push({ name: '', url: item.urlRoute });
}
if (item.type == 'photo_3') {
this.FragilePhotos.push({ name: '', url: item.urlRoute });
}
if (item.type == 'photo_4') {
this.HomePhotos.push({ name: '', url: item.urlRoute });
}
if (item.type == 'photo_5') {
this.SignForPhotos.push({ name: '', url: item.urlRoute });
const photoCategory = photoTypes[item.type];
if (photoCategory) {
this[photoCategory].push({
name: '',
url: item.urlRoute,
driverName: item.driverName,
});
}
});
}
console.log('签收>>>>>>>>>>', row);
console.log(row.signId, '复合签收');
this.signtitle = '复核签收';

1
src/views/distribution/signfor/distributionSignfortreat.vue

@ -1884,6 +1884,7 @@ export default {
reservationId: reservationId,
type: photoType,
urlRoute: item.response && item.response.data ? item.response.data.link : item.url,
driverName: item.driverName || '',
});
});
return photoArray;

Loading…
Cancel
Save