Browse Source

Merge branch 'dev' of http://47.108.105.48:3000/java_project/logpm_page into dev

pre-production
马远东 1 year ago
parent
commit
1e6851b8cd
  1. 11
      src/components/tablecmt/tablecmt.vue
  2. 1
      src/router/views/index.js
  3. 12
      src/views/distribution/checkInventoryTask/createTask2.vue
  4. 2
      src/views/distribution/inventory/BookingNote.vue
  5. 38
      src/views/distribution/inventory/CreateOrder.vue
  6. 375
      src/views/distribution/signfor/distributionSignfor.vue
  7. 343
      src/views/distribution/signfor/distributionSignfortreat.vue
  8. 400
      src/views/financialsector/Financialse/FinancialBill.vue
  9. 166
      src/views/warehouse/warehousesignedorder/distributionStockArticle.vue
  10. 1
      src/views/waybill/CreateZeroOrder.vue
  11. 1
      src/views/waybill/TemporaryStorageList.vue
  12. 6
      src/views/waybill/WaybillOrderList.vue
  13. 5
      src/views/waybill/orderPackageList.vue
  14. 5
      src/views/waybill/orderPackageListDetails.vue

11
src/components/tablecmt/tablecmt.vue

@ -54,6 +54,7 @@
clearable
:placeholder="`请输入${column.label}`"
@change="inputchange($event, column)"
@keyup.enter="handleInput($event, column)"
/>
<el-select
v-if="column.type == 3 || column.type == 14"
@ -354,6 +355,11 @@ let props = defineProps({
required: false,
default: false,
},
initFn: {
type: Function as PropType<Function>,
required: false,
default: false,
},
});
/** 勾选数据统计 */
const selectCount = ref([]);
@ -702,6 +708,11 @@ const handleRefresh = () => {
}
};
/** 回车键执行 */
const handleInput = () => {
props.initFn && props.initFn();
};
defineExpose({ handleCheckSelect, handleClearSelect });
</script>
<style lang="scss">

1
src/router/views/index.js

@ -344,6 +344,7 @@ export default [
name: '创建订单',
meta: {
data: 'data',
keepAlive: true,
},
component: () =>
import(/* webpackChunkName: "views" */ '@/views/distribution/inventory/CreateOrder.vue'),

12
src/views/distribution/checkInventoryTask/createTask2.vue

@ -1432,6 +1432,18 @@ initTableData();
const inputsc = (value, row) => {
console.log('value :>> ', value);
console.log('row :>> ', row);
details.query[row.prop] = value;
if (!value) delete details.query[row.prop];
initTableData();
};
/** 表头下拉搜索 */
const selectsc = (value, row) => {
const _key = row.prop.replace('Name', '');
details.query[_key] = value;
if (!value) delete details.query[_key];
initTableData();
};
/** 复选框勾选变化 */

2
src/views/distribution/inventory/BookingNote.vue

@ -1725,6 +1725,8 @@ const handleEdit = () => {
if (Number($route.query.waybillType) === 1) {
//
$store.commit('DEL_ONCE_TAG', '/distribution/inventory/CreateOrder');
$router.push({
path: '/distribution/inventory/CreateOrder',
query: {

38
src/views/distribution/inventory/CreateOrder.vue

@ -943,6 +943,12 @@
</div>
</template>
<script lang="ts">
export default {
name: '/distribution/inventory/CreateOrder',
};
</script>
<script setup lang="ts">
import {
ref,
@ -987,6 +993,8 @@ import {
postFindArrPrice,
} from '@/api/distribution/CreateOrder.js';
console.log('111 :>> ', 111);
// vue
const instance = getCurrentInstance();
@ -1000,6 +1008,8 @@ const $route = useRoute();
// vuex
let $store = useStore();
console.log('$store :>> ', $store);
const details = reactive<any>({
/** 页面数据 */
pageInfo: {},
@ -2583,19 +2593,25 @@ const handleChooseGoods = (item, val) => {
handleCloseSelcet();
};
watch(
$route,
async () => {
if ($route.path !== '/distribution/inventory/CreateOrder') return;
//
details.deepQuery = deepClone(details.query);
details.deepQuery = deepClone(details.query);
details.orderStatus = $route.query.orderStatus;
details.orderStatus = $route.query.orderStatus;
initPageInfo();
},
{ immediate: true }
);
initPageInfo();
// watch(
// $route,
// async () => {
// if ($route.path !== '/distribution/inventory/CreateOrder') return;
// //
// details.deepQuery = deepClone(details.query);
// details.orderStatus = $route.query.orderStatus;
// initPageInfo();
// },
// { immediate: true }
// );
</script>
<style scoped lang="scss">

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

@ -1,112 +1,114 @@
<template>
<basic-container>
<div class="avue-crud">
<el-row v-if="!search">
<div v-h5uShow="!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.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.driverName" placeholder="请输入司机名称"></el-input>
</el-form-item>
<el-form-item label="车牌:">
<el-input v-model="query.vehicleName" placeholder="请输入车牌号"></el-input>
</el-form-item>
<el-form :inline="true" :model="query" class="header_search">
<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 class="w100" 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.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.driverName" placeholder="请输入司机名称"></el-input>
</el-form-item>
<el-form-item label="车牌:">
<el-input v-model="query.vehicleName" placeholder="请输入车牌号"></el-input>
</el-form-item>
<el-form-item label="配送时间:">
<el-date-picker
v-model="query.taskTimeSection"
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="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="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="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>
</div>
<el-form-item label="配送时间:">
<el-date-picker
v-model="query.taskTimeSection"
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="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="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="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 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>
</div>
<el-row>
<div class="avue-crud__header">
@ -115,9 +117,9 @@
<el-button type="danger" icon="el-icon-download" @click="handleExportInfo" plain
>导出
</el-button>
<!-- v-loading.fullscreen.lock="fullscreenLoading"-->
<!-- v-loading.fullscreen.lock="fullscreenLoading"-->
<el-button type="danger" icon="el-icon-picture" @click="handlePictureInfo" plain
>导出图片
>导出图片
</el-button>
</div>
<!-- 头部右侧按钮模块 -->
@ -128,41 +130,38 @@
</div>
</div>
</el-row>
<el-row>
<!-- 列表模块 -->
<tablecmt
:columnList="columnList"
:tableData="data"
:loading="loading"
@inputTxt="inputsc"
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionChange"
<!-- 列表模块 -->
<tablecmt
ref="tableNodeRef"
:columnList="columnList"
:tableData="data"
:loading="loading"
@inputTxt="inputsc"
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionChange"
>
<template #default="slotProps">
<el-text size="small" @click="editsolt(slotProps.scope)"> </el-text>
</template>
</tablecmt>
<div class="avue-crud__pagination flex-c-sb" style="width: 100%">
<div style="font-size: 14px">勾选数量: {{ selectionList.length }}</div>
<!-- 分页模块 -->
<el-pagination
align="right"
background
@size-change="sizeChange"
@current-change="currentChange"
:current-page="page.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="page.total"
>
<template #default="slotProps">
<el-text size="small" @click="editsolt(slotProps.scope)"> </el-text>
</template>
</tablecmt>
</el-row>
<el-row class='el-fy'>
<div class="avue-crud__pagination flex-c-sb" style="width: 100%">
<div style="font-size: 14px">勾选数量: {{ selectionList.length }}</div>
<!-- 分页模块 -->
<el-pagination
align="right"
background
@size-change="sizeChange"
@current-change="currentChange"
:current-page="page.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="page.total"
>
</el-pagination>
</div>
</el-row>
</el-pagination>
</div>
<!-- 表单模块 -->
<el-dialog
:title="title"
@ -217,28 +216,18 @@
</template>
</el-dialog>
<el-dialog
title="提示"
v-model="dialogVisible"
width="15%"
:before-close="handleClose">
<el-dialog title="提示" v-model="dialogVisible" width="15%" :before-close="handleClose">
<div align="center">
<el-progress type="circle" :percentage="fileSize" status="success"></el-progress>
</div>
<span slot="footer" class="dialog-footer">
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="dialogVisible = false"> </el-button>
</span>
<el-button @click="dialogVisible = false"> </el-button>
<el-button type="primary" @click="dialogVisible = false"> </el-button>
</span>
</el-dialog>
</div>
</basic-container>
<edittablehead
@setcolum="setnewcolum"
@closce="showdrawer"
@ -268,7 +257,7 @@ import dayjs from 'dayjs';
import { getDriverList } from '@/api/basicdata/basicdataDriverArtery';
import { handlePicture } from '@/api/distribution/distributionSignfor';
// import { getDeliveryListExport } from '@/api/distribution/distributionDeliveryList';
import { downloadXls } from '@/utils/util';
import { downloadXls, setNodeHeight } from '@/utils/util';
export default {
data() {
return {
@ -454,6 +443,7 @@ export default {
checkarr: [],
fixed: false,
sortable: true,
isshowSummary: true,
},
{
prop: 'loadedNumber',
@ -464,6 +454,7 @@ export default {
checkarr: [],
fixed: false,
sortable: true,
isshowSummary: true,
},
{
prop: 'receivedQuantity',
@ -474,6 +465,7 @@ export default {
checkarr: [],
fixed: false,
sortable: true,
isshowSummary: true,
},
{
prop: 'withoutScanning',
@ -484,6 +476,7 @@ export default {
checkarr: [],
fixed: false,
sortable: true,
isshowSummary: true,
},
{
prop: 'unsigneds',
@ -494,6 +487,7 @@ export default {
checkarr: [],
fixed: false,
sortable: true,
isshowSummary: true,
},
// {
// prop: 'deliveryDriverName',
@ -614,7 +608,7 @@ export default {
signingStatusData: [],
//
deliveryTypeData: [],
fullscreenLoading:false,
fullscreenLoading: false,
//
orderSourceData: [],
//
@ -632,7 +626,7 @@ export default {
//
data: [],
driverData: [],
fileSize:0,
fileSize: 0,
};
},
mounted() {
@ -727,27 +721,27 @@ export default {
* 导出
* */
handleExportInfo() {
this.loading=true
this.loading = true;
let row = {};
// if (!!this.ids) {
// row.ids = this.ids;
// }
const ids = this.selectionList.map(item=>item.id).join(',');
const ids = this.selectionList.map(item => item.id).join(',');
row.ids = ids;
row.signingStatus = '2';
row = { ...row, ...this.query };
// console.log("<><><>>",ids);
getSignforExportOwn(row).then(res => {
getSignforExportOwn(row)
.then(res => {
// console.log(res.data);
// console.log(res.data);
downloadXls(res.data, '签收数据.xlsx');
}).catch(()=>{
}).finally(()=>{
this.loading=false
})
downloadXls(res.data, '签收数据.xlsx');
})
.catch(() => {})
.finally(() => {
this.loading = false;
});
},
handlePictureInfo() {
let row = {};
@ -756,37 +750,35 @@ export default {
// }
// const h = this.$createElement;
console.log("this.selectionList>>>>>>>>>>",this.selectionList);
if (this.selectionList.length < 1){
console.log('this.selectionList>>>>>>>>>>', this.selectionList);
if (this.selectionList.length < 1) {
this.$message({
type: 'warning',
message: '请选择签收记录!',
});
}
const idList= this.selectionList.map(item=>{
console.log('>>>>>>>>>',item);
const idList = this.selectionList.map(item => {
console.log('>>>>>>>>>', item);
return item.id;
})
console.log("ids-------------->",idList);
handlePicture(idList.join(",")).then(res=>{
if (res.data.size > 0){
// const _item = this.selectionList[index];
const blob = new Blob([res.data], {type: 'application/zip'});
let a = document.createElement("a");
a.href = window.URL.createObjectURL(blob);
// a.href = 'http://192.168.10.25:2888/D:/Test';
// a.download = _item.client +'-'+_item.reservationCode +".zip";
a.download = (new Date()).valueOf() + ".zip";
a.style.display = "none";
document.body.appendChild(a);
a.click(); // aahref
a.remove();
}
})
});
console.log('ids-------------->', idList);
handlePicture(idList.join(',')).then(res => {
if (res.data.size > 0) {
// const _item = this.selectionList[index];
const blob = new Blob([res.data], { type: 'application/zip' });
let a = document.createElement('a');
a.href = window.URL.createObjectURL(blob);
// a.href = 'http://192.168.10.25:2888/D:/Test';
// a.download = _item.client +'-'+_item.reservationCode +".zip";
a.download = new Date().valueOf() + '.zip';
a.style.display = 'none';
document.body.appendChild(a);
a.click(); // aahref
a.remove();
}
});
// const _arr = [];
// console.log(idList);
@ -841,12 +833,10 @@ export default {
// })
//
// 3
// 3
// }
// row.signingStatus = '2';
// row = { ...row, ...this.query };
// // console.log("<><><>>",ids);
@ -974,6 +964,8 @@ export default {
},
searchHide() {
this.search = !this.search;
setNodeHeight(this.$refs.tableNodeRef.$el, '', true);
},
searchChange() {
if (this.query.businessType) {
@ -1182,4 +1174,9 @@ export default {
display: flex;
align-items: center;
}
//
:deep(.el-date-editor.el-input__wrapper) {
height: 100% !important;
}
</style>

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

@ -1,112 +1,74 @@
<template>
<basic-container>
<div class="avue-crud">
<el-row v-if="!search">
<div v-h5uShow="!search">
<!-- 查询模块 -->
<el-form :inline="true" :model="query" class="el-fr-ro">
<div class="el-fr-zy">
<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.trainNumber" placeholder="请输入配送车次"></el-input>
</el-form-item>
<el-form-item label="司机签收状态:">
<el-select v-model="query.driverSigning" placeholder="请选择业务类型">
<el-option :value="1">未签收 </el-option>
<el-option :value="2">已签收 </el-option>
</el-select>
<!-- <el-input v-model="query.querySigningStatus" 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>
</div>
<!-- <el-form-item label="顾客姓名:">-->
<!-- <el-input v-model="query.customerName" placeholder="请输入服务类型"></el-input>-->
<!-- </el-form-item>-->
<el-form :inline="true" :model="query" class="header_search">
<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 class="w100" v-model="query.businessType" placeholder="请选择业务类型">
<el-option :key="'1'" :value="'商配'">商配 </el-option>
<el-option :key="'2'" :value="'市配'">市配 </el-option>
</el-select>
</el-form-item>
<el-form-item label="配送车次:">
<el-input v-model="query.trainNumber" placeholder="请输入配送车次"></el-input>
</el-form-item>
<el-form-item label="司机签收状态:">
<el-select class="w100" v-model="query.driverSigning" placeholder="请选择业务类型">
<el-option :value="1">未签收 </el-option>
<el-option :value="2">已签收 </el-option>
</el-select>
</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 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>
<!-- <tablecmt
:columnList="columnList"
:tableData="tableData"
@inputTxt='inputsc'
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionsc"
>
<template #default="slotProps">
<el-button
size="small"
@click="editsolt(slotProps.scope)"
>Edit</el-button
>
<el-button
size="small"
type="danger"
@click="delectsolt(slotProps.scope)"
>Delete</el-button
>
</template>
</tablecmt> -->
<!-- <el-row v-if="!search" style="padding: 6px 18px">-->
<!-- &lt;!&ndash; 查询模块 &ndash;&gt;-->
<!-- <el-form :inline="true" :model="query">-->
<!-- &lt;!&ndash; 查询按钮 &ndash;&gt;-->
<!-- <el-form-item>-->
<!-- <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>-->
</div>
<div class="el-zy-top">
<div class="order-info">
<ul>
@ -143,106 +105,82 @@
</div>
</el-row>
</div>
<el-row>
<!-- 列表模块 -->
<tablecmt
:columnList="columnList"
:tableData="data"
:loading="loading"
@inputTxt="inputsc"
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionsc"
>
<template #default="slotProps">
<template
v-if="
slotProps.scope.column.label === '配送件数' ||
'装车件数' ||
'签收数' ||
'未签收数' ||
'未装车件数' ||
'异常装车件数' ||
'异常签收件数'
"
>
<el-text @click="InformationViewing(slotProps.scope)">
<!-- {{slotProps.scope.row.reservationNum}} -->
{{
slotProps.scope.column.label === '计划配送件数'
? slotProps.scope.row.reservationNum
: slotProps.scope.column.label === '计划装车件数'
? slotProps.scope.row.loadedNumber
: slotProps.scope.column.label === '计划签收件数'
? slotProps.scope.row.receivedQuantity
: slotProps.scope.column.label === '计划未签收件数'
? slotProps.scope.row.unreceivedQuantity
: slotProps.scope.column.label === '计划未装车件数'
? slotProps.scope.row.unloadedNumber
: slotProps.scope.column.label === '异常装车件数'
? slotProps.scope.row.abnormalLoadedNumber
: slotProps.scope.column.label === '异常签收件数'
? slotProps.scope.row.abnormalReceivedQuantity
: ''
}}
</el-text>
</template>
<template v-if="slotProps.scope.column.label === '操作'">
<el-text size="small" @click="editsolt(slotProps.scope)"> </el-text>
<!-- 列表模块 -->
<tablecmt
ref="tableNodeRef"
:columnList="columnList"
:tableData="data"
:loading="loading"
@inputTxt="inputsc"
@timeCheck="timesc"
@btnCheck="btnsc"
@selectCheck="selectsc"
@selection="selectionsc"
>
<template #default="slotProps">
<template
v-if="
slotProps.scope.column.label === '配送件数' ||
'装车件数' ||
'签收数' ||
'未签收数' ||
'未装车件数' ||
'异常装车件数' ||
'异常签收件数'
"
>
<el-text @click="InformationViewing(slotProps.scope)">
<!-- {{slotProps.scope.row.reservationNum}} -->
{{
slotProps.scope.column.label === '计划配送件数'
? slotProps.scope.row.reservationNum
: slotProps.scope.column.label === '计划装车件数'
? slotProps.scope.row.loadedNumber
: slotProps.scope.column.label === '计划签收件数'
? slotProps.scope.row.receivedQuantity
: slotProps.scope.column.label === '计划未签收件数'
? slotProps.scope.row.unreceivedQuantity
: slotProps.scope.column.label === '计划未装车件数'
? slotProps.scope.row.unloadedNumber
: slotProps.scope.column.label === '异常装车件数'
? slotProps.scope.row.abnormalLoadedNumber
: slotProps.scope.column.label === '异常签收件数'
? slotProps.scope.row.abnormalReceivedQuantity
: ''
}}
</el-text>
</template>
<el-text
size="small"
v-if="slotProps.scope.row.abnormalLoadedNumber > 0"
@click="viewAbnormalLoading(slotProps.scope)"
> </el-text
>
<!-- v-if="
<template v-if="slotProps.scope.column.label === '操作'">
<el-text size="small" @click="editsolt(slotProps.scope)"> </el-text>
<el-text
size="small"
v-if="slotProps.scope.row.abnormalLoadedNumber > 0"
@click="viewAbnormalLoading(slotProps.scope)"
> </el-text
>
<!-- v-if="
slotProps.scope.row.sijiSigningStatus == '司机已签收' &&
slotProps.scope.row.wenyuanSigningStatus == '文员待审核'
" -->
<el-text
v-if="
slotProps.scope.row.sijiSigningStatus == '已完成' &&
slotProps.scope.row.wenyuanSigningStatus == '文员待审核'
"
size="small"
@click="handleSign(slotProps.scope.row)"
> </el-text
>
</template>
<!-- <el-button size="small" type="danger" @click="delectsolt(slotProps.scope)"-->
<!-- >Delete</el-button>-->
<el-text
v-if="
slotProps.scope.row.sijiSigningStatus == '已完成' &&
slotProps.scope.row.wenyuanSigningStatus == '文员待审核'
"
size="small"
@click="handleSign(slotProps.scope.row)"
> </el-text
>
</template>
</tablecmt>
<!-- <el-table ref="table" v-loading="loading"
@selection-change="selectionChange"
:data="data"
:height="height"
style="width: 100%"
:border="option.border">
<el-table-column type="selection" v-if="option.selection" width="55" align="center"></el-table-column>
<el-table-column type="expand" v-if="option.expand" align="center"></el-table-column>
<el-table-column v-if="option.index" label="#" type="index" width="50" align="center">
</el-table-column>
<template v-for="(item,index) in option.column">
<el-table-column v-if="item.hide!==true"
:prop="item.prop"
:label="item.label"
:width="item.width"
:key="index">
</el-table-column>
</template>
<el-table-column prop="menu" label="操作" :width="220" align="center">
<template #="{row}">
<el-button type="primary" text icon="el-icon-view" @click="handleView(row)">查看</el-button>
<el-button type="primary" text icon="el-icon-edit" @click="handleEdit(row)">签收</el-button>
</template>
</el-table-column>
</el-table> -->
</el-row>
<!-- <el-button size="small" type="danger" @click="delectsolt(slotProps.scope)"-->
<!-- >Delete</el-button>-->
</template>
</tablecmt>
<el-row class="el-fy">
<div class="avue-crud__pagination flex-c-sb" style="width: 100%">
<div style="font-size: 14px">勾选数量: {{ selectionList.length }}</div>
@ -563,7 +501,7 @@ import { mapGetters } from 'vuex';
import { getDictionaryBiz } from '@/api/system/dict';
import dayjs from 'dayjs';
import { getDeliveryListExport } from '@/api/distribution/distributionDeliveryList';
import { downloadXls } from '@/utils/util';
import { downloadXls, setNodeHeight } from '@/utils/util';
import { getToken } from '@/utils/auth';
import { ElMessage, ElMessageBox } from 'element-plus';
export default {
@ -1894,8 +1832,8 @@ export default {
ImgSuccessC(response, uploadFile) {},
//
ImgSuccessD(response, uploadFile) {
console.log(response,'response');
console.log(this.HomePhotos,'加配照片');
console.log(response, 'response');
console.log(this.HomePhotos, '加配照片');
},
//
ImgSuccessE(response, uploadFile) {},
@ -1948,8 +1886,7 @@ export default {
row.clerkSignPictures = this.signform.clerkSignPictures;
row.clerkSignRemarks = this.TcForm.clerkSignRemarks; //
row.signingStatus = '2'; //
row.deliveryId = this.signform.deliveryId;
row.deliveryId = this.signform.deliveryId;
//
const photoMap = {
@ -2000,7 +1937,7 @@ export default {
this.deduplicateByIdAndUpdate(row.map.photo_5);
console.log(row, '要提交的参数');
//
updatesign(row).then(res => {
console.log(res, '提交之后返回的参数');
this.signBox = false;
@ -2283,6 +2220,7 @@ export default {
},
searchHide() {
this.search = !this.search;
setNodeHeight(this.$refs.tableNodeRef.$el, '', true);
},
searchChange() {
console.log('this.query>>>>>>>>>>>>>>', this.query);
@ -2391,7 +2329,7 @@ export default {
done();
this.form = {};
this.view = false;
this.onLoad(this.page)
this.onLoad(this.page);
},
selectionChange(list) {
this.selectionList = list;
@ -2574,4 +2512,9 @@ export default {
:deep(.el-upload-list__item-thumbnail) {
object-fit: fill;
}
//
:deep(.el-date-editor.el-input__wrapper) {
height: 100% !important;
}
</style>

400
src/views/financialsector/Financialse/FinancialBill.vue

@ -1,32 +1,288 @@
<template>
<div>
<el-form>
<el-form-item label="计费类型">
<el-input />
<div v-loading="details.loadingObj.pageLoading">
<el-form label-width="150px">
<!-- 计价方式 -->
<el-form-item label="计价方式">
<el-select
v-model="details.form.priceMethod"
clearable
multiple
placeholder="请选择计价方式"
style="width: 20vw"
@change="handleChangePrcieMethod"
>
<el-option
v-for="item in details.priceMethodType"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
<!-- 是否统一区域计费 -->
<el-form-item label="是否统一区域计费">
<el-radio-group v-model="details.form.isUnify" class="ml-4">
<el-radio
v-for="item in details.isType"
:key="item.value"
:label="item.value"
size="large"
>{{ item.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<!-- 是否区分品类 -->
<el-form-item label="是否区分品类">
<el-radio-group v-model="details.form.isDistinguish" class="ml-4">
<el-radio
v-for="item in details.isType"
:key="item.value"
:label="item.value"
size="large"
>{{ item.label }}
</el-radio>
</el-radio-group>
</el-form-item>
</el-form>
<el-divider content-position="left">整车计费</el-divider>
<div class="flex">
<el-form inline>
<el-form-item label="车型"></el-form-item>
<el-form-item label="整车计费( 元/车 )">
<el-input-number :min="0" :controls="false" :precision="2" :value-on-clear="0" />
</el-form-item>
</el-form>
<div class="el_table_operation">
<span class="el_table_operation_span_a">-</span>
</div>
<el-divider content-position="left">品类管理</el-divider>
<!-- 附加费品类 -->
<el-form-item
v-for="value in details.form.billTemplateDetail"
label-width="150px"
:label="value.title"
:key="value.title"
>
<div class="el_Storagecategory" v-loading="goriesloading" element-loading-text="Loading...">
<div class="el_table_span">
<div class="el_table_id">序号</div>
<div class="el_table_title">产品品类</div>
</div>
<div class="el_table_operation">
<span class="el_table_operation_span_b">+</span>
<!-- 表格循环 -->
<div class="el_table_td" v-for="(item, index) in value.categories">
<div class="el_table_idNumber">{{ index }}</div>
<el-select
class="el_Cselect"
v-model="item.Additionalcategories"
filterable
clearable
placeholder="请选择品类"
style="width: 240px"
>
<el-option
v-for="item in Additionalcategories"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
<div class="el_table_operation">
<span v-if="item.reduce" class="el_table_operation_span_a">-</span>
<span v-if="item.plus" class="el_table_operation_span_b">+</span>
</div>
</div>
</div>
</el-form-item>
<!-- 是否最低计费 -->
<el-form-item label-width="150px" label="是否最低计费">
<el-radio-group v-model="details.form.isLowest" class="ml-4">
<el-radio v-for="item in details.isType" :key="item.value" :label="item.value" size="large"
>{{ item.label }}
</el-radio>
</el-radio-group>
</el-form-item>
<!-- 最低计费类型 -->
<el-form-item v-if="details.form.isLowest === '1'" label-width="150px" label="最低计费类型">
<el-radio-group v-model="details.form.lowestMethod" class="ml-4">
<template v-for="item in details.lowestType" :key="item.value">
<el-radio
v-if="!item.MappingOrNot || details.form.priceMethod.includes(item.mapValue)"
:label="item.value"
size="large"
>{{ item.label }}
</el-radio>
<el-radio v-else :label="item.value" size="large" disabled>{{ item.label }}</el-radio>
</template>
</el-radio-group>
</el-form-item>
<!-- 操作按钮 -->
<div class="flex-c-c">
<el-button type="primary" icon="Refresh" @click="resetFormData">重置</el-button>
<el-button type="primary" icon="Position" @click="resetFormData">保存</el-button>
</div>
</div>
</template>
<script setup lang="ts"></script>
<script setup lang="ts">
import { ref, reactive } from 'vue';
import { deepClone } from '@/utils/util';
import { ElMessage, ElMessageBox } from 'element-plus';
interface categories {
/** 品类名称 */
label: string;
/** 品类id */
value: string;
/** 显示新增 */
plus: boolean;
/** 显示删除 */
reduce: boolean;
}
interface BillTemplateDetail {
/** 标题 */
title: string;
/** 品类数组 */
categories: categories[];
}
/** 页面数据 */
const details = reactive({
/** 计价方式集合 */
priceMethodType: [
{
label: '按件',
value: '0',
},
{
label: '按整车',
value: '1',
},
{
label: '按方',
value: '2',
},
{
label: '按重量',
value: '3',
},
],
isType: [
{
label: '是',
value: '1',
},
{
label: '否',
value: '0',
},
],
/**
* mapValue 用于映射最低计费类型 当选择的计价方式内与该项中mapValue相同时, 显示其选项
* MappingOrNot 为false时, 不需要检测, 直接显示
*/
lowestType: [
{
label: '价格',
value: '0',
MappingOrNot: false,
},
{
label: '件',
value: '1',
mapValue: '0',
MappingOrNot: true,
},
{
label: '方数(m³)',
value: '2',
mapValue: '2',
MappingOrNot: true,
},
{
label: '重量(kg)',
value: '3',
mapValue: '3',
MappingOrNot: true,
},
],
/** 表单数据 */
form: {
/** 计价方式 */
priceMethod: [],
/** 是否统一区域计费 */
isUnify: '1',
/** 是否区分品类 */
isDistinguish: '1',
/** 是否最低计费 */
isLowest: '1',
/** 最低计费类型 */
lowestMethod: '0',
/** 计费模版详情 */
billTemplateDetail: [
{
/** 标题 */
title: '计费模版详情',
/** 品类数组 */
categories: [{ reduce: true, plus: true, label: '12', value: '11' }],
},
{
/** 标题 */
title: '计费模版详情',
/** 品类数组 */
categories: [{ reduce: true, plus: true, label: '12', value: '11' }],
},
] as BillTemplateDetail[],
},
/** 初始化form数据 */
initForm: {},
/** loading */
loadingObj: {
pageLoading: false,
},
});
const AdditionalcategoriesList = ref([{ reduce: true, plus: true }]);
const Additionalcategories = ref([{}]);
const goriesloading = ref(false);
/** 计价方式改变时 */
const handleChangePrcieMethod = value => {
console.log('value :>> ', value);
let activeItem: any = {};
for (let i = 0; i < details.lowestType.length; i++) {
const item = details.lowestType[i];
if (item.value !== details.form.lowestMethod) continue;
activeItem = item;
break;
}
if (!activeItem.MappingOrNot) return;
if (!details.form.priceMethod.includes(activeItem.mapValue)) details.form.lowestMethod = '0';
};
/** 复制form初始数据 */
const initFormData = () => {
details.initForm = deepClone(details.form);
};
// form
initFormData();
/** 重置数据 */
const resetFormData = () => {
ElMessageBox.confirm('是否重置数据?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}).then(() => {
details.loadingObj.pageLoading = true;
details.form = deepClone(details.initForm);
setTimeout(() => {
details.loadingObj.pageLoading = false;
}, 300);
});
};
</script>
<style lang="scss" scoped>
//
@ -40,38 +296,90 @@
text-align: left;
}
.el_table_operation {
width: 70px;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
.el_table_operation_span_a,
.el_table_operation_span_b {
font-size: 20px;
font-weight: bold;
width: 40%;
border: 2px solid #f00;
color: #f00;
border-radius: 6px;
cursor: pointer;
text-align: center;
line-height: 20px;
.el_Cselect {
margin-left: 10px;
}
.el_table_span {
font-size: 16px;
font-weight: 500;
display: inline-block;
width: 160px;
}
.el_Storagecategory {
border: 1px solid #ccc;
.el_table_span {
display: flex;
width: 100%;
background-color: #ebeef5;
padding: 4px;
box-sizing: border-box;
height: 100%;
}
.el_table_operation_span_b {
border: 2px solid #0d83b7;
color: #0d83b7;
.el_table_id {
width: 62px;
font-weight: 600;
color: #606266;
}
.el_table_title {
font-weight: 600;
color: #606266;
}
.el_table_td {
display: flex;
height: 40px;
align-items: center;
border-bottom: 1px solid #ccc;
position: relative;
.el_table_operation {
width: 70px;
height: 100%;
display: flex;
align-items: center;
justify-content: space-between;
position: absolute;
right: -80px;
.el_table_operation_span_a,
.el_table_operation_span_b {
font-size: 20px;
font-weight: bold;
width: 40%;
border: 2px solid #f00;
color: #f00;
height: 70%;
border-radius: 6px;
display: block;
line-height: 23px;
text-align: center;
cursor: pointer;
}
.el_table_operation_span_b {
border: 2px solid #0d83b7;
color: #0d83b7;
}
.el_table_operation_span_a:hover {
background-color: #f00;
color: #ccc;
.el_table_operation_span_a:hover {
background-color: #f00;
color: #ccc;
}
.el_table_operation_span_b:hover {
background-color: #0d83b7;
color: #ccc;
}
}
}
.el_table_idNumber {
width: 50px;
text-align: center;
font-size: 16px;
font-weight: 400;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
border-right: 1px solid #ccc;
}
.el_table_operation_span_b:hover {
background-color: #0d83b7;
color: #ccc;
:deep(.el-input__wrapper) {
box-shadow: none;
}
}
</style>

166
src/views/warehouse/warehousesignedorder/distributionStockArticle.vue

@ -3,59 +3,50 @@
<!-- 首页表格 -->
<div class="avue-crud">
<!-- 搜索模块 -->
<el-row v-if="search">
<div v-h5uShow="search">
<!-- 查询模块 -->
<!-- 查询模块 -->
<el-form :inline="true" :model="TopQuery" class="el-fr-d">
<!-- 查询按钮 -->
<el-form :inline="true" :model="TopQuery" class="header_search">
<el-form-item label="最新入库时间">
<el-date-picker
v-model="TopQuery.warehouseEntryTime"
type="datetimerange"
start-placeholder="开始日期"
end-placeholder="结束日期"
format="YYYY-MM-DD"
date-format="YYYY/MM/DD"
time-format="A"
@change="Toptiem"
/>
</el-form-item>
<div class="el_top_left">
<div>
<el-form-item label="最新入库时间">
<el-date-picker
v-model="TopQuery.warehouseEntryTime"
type="datetimerange"
start-placeholder="开始日期"
end-placeholder="结束日期"
format="YYYY-MM-DD"
date-format="YYYY/MM/DD"
time-format="A"
@change="Toptiem"
/>
</el-form-item>
<el-form-item label="文员复核时间">
<el-date-picker
v-model="TopQuery.signinTime"
type="datetimerange"
start-placeholder="开始日期"
end-placeholder="结束日期"
format="YYYY-MM-DD"
date-format="YYYY/MM/DD"
time-format="A"
@change="Toptiem"
/>
</el-form-item>
</div>
<el-form-item label="文员复核时间">
<el-date-picker
v-model="TopQuery.signinTime"
type="datetimerange"
start-placeholder="开始日期"
end-placeholder="结束日期"
format="YYYY-MM-DD"
date-format="YYYY/MM/DD"
time-format="A"
@change="Toptiem"
/>
</el-form-item>
<!-- 查询按钮 -->
<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>
</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>
</div>
<!-- 控件模块 -->
<el-row>
<div class="avue-crud__header">
<!-- 头部左侧按钮模块 -->
<div class="avue-crud__left">
<el-button type="primary" @click="AddInfo"><el-icon><Download /></el-icon></el-button
<el-button type="primary" @click="AddInfo"
><el-icon><Download /></el-icon></el-button
>
</div>
<!-- 头部右侧按钮模块 -->
@ -75,6 +66,7 @@
:columnList="columnList"
:tableData="data"
:loading="loadingObj.list"
:initFn="getrain"
@inputTxt="inputsc"
@timeCheck="timesc"
@btnCheck="btnsc"
@ -85,9 +77,7 @@
<template v-if="slotProps.scope.column.label === '订单自编号'">
<el-text class="el_textBtn" @click="OrdernumberClick(slotProps.scope.row)">
{{
slotProps.scope.column.label === '订单自编号'
? slotProps.scope.row.orderCode
: ''
slotProps.scope.column.label === '订单自编号' ? slotProps.scope.row.orderCode : ''
}}
</el-text>
</template>
@ -102,7 +92,6 @@
</el-text>
</template>
<template v-if="slotProps.scope.column.label === '操作'">
<div class="ElBtnClass">
<el-button @click="view(slotProps.scope)">查看</el-button>
@ -149,7 +138,7 @@ import { processRowProperty, setNodeHeight } from '@/utils/util';
import { $_signforList } from '@/api/distribution/distributionStockArticle.js';
import functions from '@/utils/functions.js';
import { ElMessageBox } from 'element-plus';
const $router = useRouter();//
const $router = useRouter(); //
import { useStore } from 'vuex';
import dayjs from 'dayjs';
const TopQuery = ref({});
@ -304,15 +293,21 @@ const selectionChange = list => {
const searchChange = () => {
//
if (TopQuery.value.warehouseEntryTime) {
queryCarn.value.startTaskTime = dayjs(TopQuery.value.warehouseEntryTime[0]).format('YYYY-MM-DD HH:mm:ss'); //
queryCarn.value.endTaskTime = dayjs(TopQuery.value.warehouseEntryTime[1]).format('YYYY-MM-DD HH:mm:ss'); //
queryCarn.value.startTaskTime = dayjs(TopQuery.value.warehouseEntryTime[0]).format(
'YYYY-MM-DD HH:mm:ss'
); //
queryCarn.value.endTaskTime = dayjs(TopQuery.value.warehouseEntryTime[1]).format(
'YYYY-MM-DD HH:mm:ss'
); //
} else {
delete queryCarn.value.warehouseEntryTimestartTaskTime;
delete queryCarn.value.warehouseEntryTimeendTaskTime;
}
if (TopQuery.value.signinTime) {
queryCarn.value.startTaskTime = dayjs(TopQuery.value.signinTime[0]).format('YYYY-MM-DD HH:mm:ss'); //
queryCarn.value.startTaskTime = dayjs(TopQuery.value.signinTime[0]).format(
'YYYY-MM-DD HH:mm:ss'
); //
queryCarn.value.endTaskTime = dayjs(TopQuery.value.signinTime[1]).format('YYYY-MM-DD HH:mm:ss'); //
} else {
delete queryCarn.value.signinTimestartTaskTime;
@ -394,6 +389,15 @@ function updateDictionary(targetArray, dictionaryType) {
//
const getrain = () => {
if (details.loadingObj.list) return;
if (Object.keys(details.query).length === 0 && Object.keys(queryCarn.value).length === 0) {
details.page.total = 0;
details.data = [];
return;
}
let data = {
current: details.page.currentPage,
size: details.page.pageSize,
@ -403,9 +407,13 @@ const getrain = () => {
details.loadingObj.list = true;
$_signforList(data)
.then(res => {
const { code, data } = res.data;
if (code !== 200) return;
console.log(res, '当前参数');
details.page.total = res.data.data.total;
details.data = res.data.data.records;
details.page.total = data ? data.total || 0 : 0;
details.data = data ? data.records || [] : 0;
})
.catch(() => {})
.finally(() => {
@ -414,40 +422,28 @@ const getrain = () => {
};
// getrain();
const removeParentheses=(str)=>{
const index = str.indexOf("("); //
if (index !== -1) {
return str.substring(0, index); //
}
return str;
}
const removeParentheses = str => {
const index = str.indexOf('('); //
if (index !== -1) {
return str.substring(0, index); //
}
return str;
};
//
const informationClick=(val)=>{
return
console.log(val,'预约信息');
let data= removeParentheses(val.reservationInfo)
console.log(data,'处理好的数据');
$router.push({
path: '/distribution/signfor/distributionSignforedt',
query: {
id:'1772931455518982145',
reservationId:'1772875103987769346',
name: '1772875103987769346' + '-预约单详情',
},
});
}
const informationClick = val => {
return;
};
const OrdernumberClick=(val)=>{
const OrdernumberClick = val => {
$router.push({
path: '/distribution/inventory/distributionStockArticleDetails',
query: {
id:val.id,
name: `${val.orderCode}预约单详情`,
isZero:0,
},
});
}
query: {
id: val.id,
name: `${val.orderCode}预约单详情`,
isZero: 0,
},
});
};
</script>
<style scoped lang="scss">
@ -475,4 +471,8 @@ const OrdernumberClick=(val)=>{
display: flex;
flex-direction: column;
}
:deep(.el-date-editor.el-input__wrapper) {
height: 100% !important;
}
</style>

1
src/views/waybill/CreateZeroOrder.vue

@ -2261,6 +2261,7 @@ const handleFindPrice = async (condition?: any) => {
watch(
() => $route.query,
() => {
if ($route.path !== '/waybill/CreateZeroOrder') return;
initPageInfo();
},
{ immediate: true }

1
src/views/waybill/TemporaryStorageList.vue

@ -1057,6 +1057,7 @@ const handleCreateOrder = () => {
});
}
$store.commit('DEL_ONCE_TAG', '/distribution/inventory/CreateOrder');
$router.push({
path: `/distribution/inventory/CreateOrder`,
query: {

6
src/views/waybill/WaybillOrderList.vue

@ -272,7 +272,7 @@
import { ref, reactive, toRefs, computed, onMounted, nextTick } from 'vue';
import functions from '@/utils/functions.js';
import dayjs from 'dayjs';
import { mapGetters } from 'vuex';
import { mapGetters, useStore } from 'vuex';
/** 获取字典 */
import { getDictionaryBiz } from '@/api/system/dict';
import {
@ -288,6 +288,8 @@ import { ElMessage } from 'element-plus';
import { getToken } from '@/utils/auth';
import type { UploadProps, UploadUserFile } from 'element-plus';
const $store = useStore();
//
const $router = useRouter();
@ -599,6 +601,8 @@ const editOrder = () => {
const _item = details.selectionList[0];
console.log('_item :>> ', _item);
if (Number(_item.waybillType) === 1 || _item.orderNo) {
$store.commit('DEL_ONCE_TAG', '/distribution/inventory/CreateOrder');
//
$router.push({

5
src/views/waybill/orderPackageList.vue

@ -619,10 +619,7 @@ const handleShowPackageOrderList = ({ row }) => {
});
};
/** 订单转运单 */
const handleCreateOrder = () => {
$router.push('/distribution/inventory/CreateOrder');
};
/** 修改客户信息 */
const editClientInfo = () => {

5
src/views/waybill/orderPackageListDetails.vue

@ -629,11 +629,6 @@ const handleShowPackageOrderList = ({ row }) => {
});
};
/** 订单转运单 */
const handleCreateOrder = () => {
$router.push('/distribution/inventory/CreateOrder');
};
/** 修改客户信息 */
const editClientInfo = () => {
if (details.selectionList.length !== 0) {

Loading…
Cancel
Save