Browse Source

Merge branch 'dev' into pre-production

pre-production
pref_mail@163.com 4 months ago
parent
commit
82801cd180
  1. 39
      src/api/finance/ReconciliationDepositSlip.js
  2. 21
      src/api/storagecost/index.js
  3. 37
      src/components/tablecmt/tablecmt.vue
  4. 42
      src/option/finance/ReconciliationDepositSlip.js
  5. 30
      src/option/finance/WaybillAudit.js
  6. 117
      src/option/storagecost/OrderTotalWarehouse.js
  7. 150
      src/option/storagecost/WarehouseMonthly.js
  8. 630
      src/option/storagecost/Warehousedaily.js
  9. 72
      src/option/waybill/WaybillOrderList.js
  10. 85
      src/views/cost/storagecost/OrderTotalWarehouse.vue
  11. 99
      src/views/cost/storagecost/WarehouseMonthly.vue
  12. 79
      src/views/cost/storagecost/Warehousedaily.vue
  13. 4
      src/views/cost/storagecost/Warehouserentalmanagement.vue
  14. 25
      src/views/distribution/artery/AddVehicleStowage.vue
  15. 25
      src/views/distribution/artery/addTripartiteTransfer.vue
  16. 2
      src/views/distribution/deliverylist/distributionDeliveryList.vue
  17. 2
      src/views/distribution/deliverylist/distributionDeliveryListdis.vue
  18. 2
      src/views/distribution/deliverylist/distributionDeliveryListmar.vue
  19. 1
      src/views/distribution/inventory/CreateOrder.vue
  20. 25
      src/views/distribution/inventory/delivery/OrderInTransit.vue
  21. 2
      src/views/distribution/inventory/delivery/distributionStockArticle.vue
  22. 20
      src/views/distribution/inventory/delivery/distributionStockArticleDiscuss.vue
  23. 2
      src/views/distribution/inventory/delivery/distributionStockArticleMarket.vue
  24. 27
      src/views/distribution/inventory/delivery/distributionStockArticleSelf.vue
  25. 2
      src/views/distribution/inventory/distributionStockListDetails.vue
  26. 2
      src/views/distribution/inventory/distrilbutionBillLadingList.vue
  27. 6
      src/views/distribution/inventory/distrilbutionBillLadingView.vue
  28. 196
      src/views/distribution/signfor/distributionSignfortreat.vue
  29. 116
      src/views/finance/ReconciliationDepositSlip.vue
  30. 7
      src/views/finance/WaybillAudit.vue
  31. 6
      src/views/reportforms/Stockordertable.vue
  32. 1
      src/views/waybill/CreateZeroOrder.vue
  33. 21
      src/views/waybill/TemporaryStorageList.vue
  34. 1
      src/views/waybill/WaybillOrderList.vue

39
src/api/finance/ReconciliationDepositSlip.js

@ -50,6 +50,19 @@ export const postReal = data => {
});
};
/**
* toB 计算仓储&配送费用
* @param {*} data
* @returns
*/
export const postCalculateRealCostByWaybillId = data => {
return request({
url: `/api/logpm-statisticsdata/merchantStatistics/calculateRealCostByWaybillId/${data}`,
method: 'patch',
});
};
/**
* 生成对账单
* @param {*} data
@ -62,3 +75,29 @@ export const postCreateReconciliationOrder = data => {
data,
});
};
/**
* toB 批量结算完成
* @param {*} data
* @returns
*/
export const postCreateFinishWaybillId = data => {
return request({
url: '/api/logpm-statisticsdata/merchantStatistics/createFinishWaybillId',
method: 'post',
data,
});
};
/**
* toB 生成对账单
* @param {*} data
* @returns
*/
export const postCreateReconciliationwWaybillId = data => {
return request({
url: '/api/logpm-statisticsdata/merchantStatistics/createReconciliationwWaybillId',
method: 'post',
data,
});
};

21
src/api/storagecost/index.js

@ -2,7 +2,7 @@ import request from '@/axios';
// 月度仓储成本统计表接口
export const $_Getlist = params => {
return request({
url: '/api/logpm-statisticsdata/expenseWarehouseMonth/page',
url: '/api/logpm-statisticsdata/expenseWarehouse/month',
method: 'get',
params,
});
@ -10,11 +10,22 @@ export const $_Getlist = params => {
// 日度仓储成本统计表接口
export const $_GetexpenseWarehouseDay = params => {
return request({
url: '/api/logpm-statisticsdata/expenseWarehouseDay/page',
url: '/api/logpm-statisticsdata/expenseWarehouse/day',
method: 'get',
params,
});
};
//日度仓储成本统计导出
export const $_exporDay = params => {
return request({
url: '/api/logpm-statisticsdata/expenseWarehouse/exporDay',
method: 'get',
params,
responseType: 'blob',
});
};
// 获取仓库
export const $_getMyWarehouseList = params => {
return request({
@ -27,7 +38,7 @@ export const $_getMyWarehouseList = params => {
//月度仓储成本统计导出
export const $_expenseWarehouseMonth = params => {
return request({
url: '/api/logpm-statisticsdata/expenseWarehouseMonth/export-expenseWarehouseMonth',
url: '/api/logpm-statisticsdata/expenseWarehouse/exporMonth',
method: 'get',
params,
responseType: 'blob',
@ -54,7 +65,7 @@ export const $_expenseOrderWarehouseMonth = params => {
// 订单总仓储成本明细列表
export const $_OrderTotalWarehouse = params => {
return request({
url: '/api/logpm-statisticsdata/expenseOrderWarehouseTotal/page',
url: '/api/logpm-statisticsdata/expenseWarehouse/order',
method: 'get',
params,
});
@ -62,7 +73,7 @@ export const $_OrderTotalWarehouse = params => {
// 订单总仓储成本明细导出
export const $_expenseOrderWarehouseTotal = params => {
return request({
url: '/api/logpm-statisticsdata/expenseOrderWarehouseTotal/export-expenseOrderWarehouseTotal',
url: '/api/logpm-statisticsdata/expenseWarehouse/exporOrder',
method: 'get',
params,
responseType: 'blob',

37
src/components/tablecmt/tablecmt.vue

@ -381,7 +381,7 @@ const isHaveSelection = ref(false);
let selectarr = ref([]);
/** 设置每行颜色 */
const tableRowClassName = ({ row, rowIndex }: { row: TableDataType; rowIndex: number }) => {
if (props.tableData.length === selectarr.value.length) return 'table-SelectedRow-bgcolor';
// if (props.tableData.length === selectarr.value.length) return 'table-SelectedRow-bgcolor';
for (let i = 0; i < selectarr.value.length; i++) {
if (selectarr.value[i] === row) return 'table-SelectedRow-bgcolor';
@ -931,4 +931,39 @@ defineExpose({ handleCheckSelect, handleClearSelect });
font-weight: initial;
font-size: 12px;
}
//
.el-table {
tr {
//
&.WarningTime {
color: #e6a23c !important;
background-color: #fff3e8;
.el-text {
color: #e6a23c !important;
// background-color: #fff3e8;
}
td {
border-color: #fff !important;
}
}
//
&.timeOut {
color: #f56c6c !important;
background-color: #feeded;
.el-text {
color: #f56c6c !important;
// background-color: #feeded;
}
td {
border-color: #fff !important;
}
}
}
}
</style>

42
src/option/finance/ReconciliationDepositSlip.js

@ -108,7 +108,7 @@ export const columnList = [
},
{
prop: 'typeServiceName',
label: '订单类型',
label: '配送类型',
type: 3,
values: '',
width: '150',
@ -130,6 +130,30 @@ export const columnList = [
sortable: true,
head: false,
},
// {
// prop: 'typeServiceName',
// label: '服务类型',
// type: 3,
// values: '',
// width: '150',
// checkarr: [
// {
// label: '商配',
// value: 1,
// },
// {
// label: '市配',
// value: 2,
// },
// {
// label: '自提',
// value: 3,
// },
// ],
// fixed: false,
// sortable: true,
// head: false,
// },
{
prop: 'openTime',
label: '开单时间',
@ -245,7 +269,7 @@ export const columnList = [
},
{
prop: 'sysTotalFee',
label: '订单开单价',
label: '订单预估总价',
type: 1,
values: '',
width: '130',
@ -268,7 +292,7 @@ export const columnList = [
},
{
prop: 'systemFreightPrice',
label: '开单运费',
label: '预估运费',
type: 1,
values: '',
width: '130',
@ -292,7 +316,7 @@ export const columnList = [
},
{
prop: 'systemPickupPrice',
label: '开单提货费',
label: '预估提货费',
type: 1,
values: '',
width: '130',
@ -388,7 +412,7 @@ export const columnList = [
},
{
prop: 'systemDeliveryFee',
label: '开单配送费',
label: '预估配送费',
type: 1,
values: '',
width: '150',
@ -1017,7 +1041,7 @@ export const columnListB = [
},
{
prop: 'sysTotalFee',
label: '订单开单价',
label: '订单预估总价',
type: 1,
values: '',
width: '130',
@ -1041,7 +1065,7 @@ export const columnListB = [
},
{
prop: 'systemFreightPrice',
label: '开单运费',
label: '预估运费',
type: 1,
values: '',
width: '130',
@ -1065,7 +1089,7 @@ export const columnListB = [
},
{
prop: 'systemPickupPrice',
label: '开单提货费',
label: '预估提货费',
type: 1,
values: '',
width: '130',
@ -1161,7 +1185,7 @@ export const columnListB = [
},
{
prop: 'systemDeliveryFee',
label: '开单配送费',
label: '预估配送费',
type: 1,
values: '',
width: '130',

30
src/option/finance/WaybillAudit.js

@ -876,6 +876,36 @@ export const columnList = [
sortable: true,
head: false,
},
{
prop: 'payStatusName',
label: '收款状态',
type: 1,
values: '',
width: '150',
checkarr: [
{label: '未收款', value: '10'},
// {label: '部分收款', value: '20'},
{label: '已收款', value: '30'},
],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'settlementStatusName',
label: '结算状态',
type: 1,
values: '',
width: '150',
checkarr: [
{label: '未结算', value: '10'},
// {label: '部分结算', value: '20'},
{label: '已结算', value: '30'},
],
fixed: false,
sortable: true,
head: false,
},
{
prop: '',
label: '操作',

117
src/option/storagecost/OrderTotalWarehouse.js

@ -38,18 +38,18 @@ export const columnList = [
},
{
prop: 'shipmentNumber',
label: '运单编号',
type: 1,
label: '运单编号 ',
type: 2,
values: '',
width: '150',
width: '200',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'receivingUnit',
label: '货单位',
prop: 'shippingUnit',
label: '货单位',
type: 1,
values: '',
width: '150',
@ -59,8 +59,8 @@ export const columnList = [
head: false,
},
{
prop: 'shippingUnit',
label: '货单位',
prop: 'receivingUnit',
label: '货单位',
type: 1,
values: '',
width: '150',
@ -70,9 +70,9 @@ export const columnList = [
head: false,
},
{
prop: 'shipmenttype',
prop: 'deliveryType',
label: '运单类型',
type: 3,
type: 1,
values: '',
width: '150',
checkarr: [
@ -90,63 +90,28 @@ export const columnList = [
head: false,
},
{
prop: 'servicetype',
label: '服务类型',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalQuantity',
label: '总件数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'originWarehouse',
label: '发站仓',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'consignmentInQuantity',
label: '代入库仓件数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'consignmentInTotalCost',
label: '代入库总成本',
type: 1,
prop: 'reviewStatus',
label: '复核完成状态',
type: 3,
values: '',
width: '150',
checkarr: [],
checkarr: [
{
label: '未完成',
value: '未完成',
},
{
label: '已完成',
value: '已完成',
},
],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'consignmentOutQuantity',
label: '代出库仓件数',
prop: 'totalNumber',
label: '订单总件数',
type: 1,
values: '',
width: '150',
@ -156,8 +121,8 @@ export const columnList = [
head: false,
},
{
prop: 'consignmentOutTotalCost',
label: '代出库总成本',
prop: 'outNumber',
label: '签收复核件数',
type: 1,
values: '',
width: '150',
@ -167,11 +132,11 @@ export const columnList = [
head: false,
},
{
prop: 'contractedOperaCost',
label: '代作业总成本',
type: 1,
prop: 'originWarehouse',
label: '发站仓 ',
type: 2,
values: '',
width: '150',
width: '200',
checkarr: [],
fixed: false,
sortable: true,
@ -188,28 +153,6 @@ export const columnList = [
sortable: true,
head: false,
},
{
prop: 'warehousingCost',
label: '仓储总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
// {
// prop: 'a17',
// label: '结算时间',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'createUserName',

150
src/option/storagecost/WarehouseMonthly.js

@ -26,7 +26,7 @@ export const columnList = [
head: false,
},
{
prop: 'costSettlementTime',
prop: 'statisticalTime',
label: '成本结算时间',
type: 1,
values: '',
@ -36,17 +36,6 @@ export const columnList = [
sortable: true,
head: false,
},
{
prop: 'totalArea',
label: '仓库总面积(㎡)',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'monthlyRent',
label: '仓库月租金',
@ -59,7 +48,7 @@ export const columnList = [
head: false,
},
{
prop: 'totalQuantityIssued',
prop: 'totalOutQuantity',
label: '出库总件数',
type: 1,
values: '',
@ -69,17 +58,6 @@ export const columnList = [
sortable: true,
head: false,
},
{
prop: 'customerLeasedArea',
label: '客户租用面积(㎡)',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'customerMonthlyRent',
label: '客户月租金',
@ -92,18 +70,7 @@ export const columnList = [
head: false,
},
{
prop: 'wholeVehicleCost',
label: '整车单价',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'rentedItemsDispatchedQuantity',
prop: 'customerRentalOutQuantity',
label: '租用出库件数',
type: 1,
values: '',
@ -114,7 +81,7 @@ export const columnList = [
head: false,
},
{
prop: 'customerRentedItemCostPerUnit',
prop: 'customerRentalUnitCost',
label: '客户租用单件成本',
type: 1,
values: '',
@ -125,7 +92,7 @@ export const columnList = [
head: false,
},
{
prop: 'customerTotalLeasingCost',
prop: 'customerTotalRentalCost',
label: '客户租用总成本',
type: 1,
values: '',
@ -135,17 +102,6 @@ export const columnList = [
sortable: true,
head: false,
},
{
prop: 'temporaryTurnoverArea',
label: '临时周转面积',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'temporaryTurnoverQuantity',
label: '临时周转件数',
@ -158,7 +114,7 @@ export const columnList = [
head: false,
},
{
prop: 'temporaryTurnoverCostPerItem',
prop: 'temporaryTurnoverUnitCost',
label: '临时周转单件成本',
type: 1,
values: '',
@ -169,7 +125,7 @@ export const columnList = [
head: false,
},
{
prop: 'totalTemporaryTurnoverCost',
prop: 'temporaryTurnoverTotalCost',
label: '临时周转总成本',
type: 1,
values: '',
@ -179,17 +135,6 @@ export const columnList = [
sortable: true,
head: false,
},
{
prop: 'drWareDisArea',
label: '干仓配仓储面积(㎡)',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'drWareDisNumber',
label: '干仓配件数',
@ -223,50 +168,43 @@ export const columnList = [
sortable: true,
head: false,
},
{
prop: 'totalCostOfConsignmentStorage',
label: '代入库总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalCostOfConsignmentWithdrawal',
label: '代出库总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalCostOfAgencyOperations',
label: '代作业总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalWarehouseCost',
label: '仓储总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
// {
// prop: 'statisticalMonth',
// label: '统计月',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'statisticalYear',
// label: '统计年',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'warehouseCost',
// label: '仓库租赁总成本',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: '',
// label: '操作',

630
src/option/storagecost/Warehousedaily.js

@ -1,281 +1,351 @@
export const columnList = [
{
prop: '',
label: '复选框',
type: 0,
width: 55,
fixed: true,
},
{
prop: '',
label: '序号',
type: 12,
values: '',
width: 55,
fixed: true,
},
{
prop: 'warehouseName',
label: '目的仓',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'costSettlement',
label: '成本结算时间',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalArea',
label: '仓库总面积(㎡)',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'monthlyRent',
label: '仓库日租金',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalQuantityIssued',
label: '出库总件数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'customerLeasedArea',
label: '客户租用面积(㎡)',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'customerMonthlyRent',
label: '客户日租金',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'rentedItemsDispatchedQuantity',
label: '租用出库件数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'customerRentedItemCostPerUnit',
label: '客户租用单件成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'wholeVehicleCost',
label: '整车单价',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'customerTotalLeasingCost',
label: '客户租用总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'temporaryTurnoverArea',
label: '临时周转面积',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'temporaryTurnoverQuantity',
label: '临时周转件数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'temporaryTurnoverCostPerItem',
label: '临时周转单件成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalTemporaryTurnoverCost',
label: '临时周转总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'drWareDisArea',
label: '干仓配仓储面积(㎡)',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'drWareDisNumber',
label: '干仓配件数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'drWareDisCostPerUnit',
label: '干仓配单件成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'drWareDisTotalCost',
label: '干仓配仓储总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalCostOfConsignmentStorage',
label: '代入库总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalCostOfConsignmentWithdrawal',
label: '代出库总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalCostOfAgencyOperations',
label: '代作业总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalWarehouseCost',
label: '仓储总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
// {
// prop: '',
// label: '操作',
// type: 6,
// values: '',
// width: '200',
// checkarr: [],
// fixed: 'right',
// sortable: false,
// },
];
{
prop: '',
label: '复选框',
type: 0,
width: 55,
fixed: true,
},
{
prop: '',
label: '序号',
type: 12,
values: '',
width: 55,
fixed: true,
},
{
prop: 'warehouseName',
label: '目的仓',
type: 2,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'statisticalTime',
label: '成本结算日期',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalArea',
label: '仓库总面积(㎡)',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'rent',
label: '仓库月租金',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'dailyRent',
label: '仓库日租金',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'totalOutQuantity',
label: '出库总件数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'customerDailyRent',
label: '客户租用日租金',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'customerRentalArea',
label: '客户租用面积(㎡)',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'customerRentalOutQuantity',
label: '租用出库件数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'customerRentalUnitCost',
label: '租用单件成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'customerTotalRentalCost',
label: '租用总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'temporaryTurnoverArea',
label: '临时周转面积',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'temporaryTurnoverQuantity',
label: '临时周转件数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'temporaryTurnoverUnitCost',
label: '临时周转单件成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'temporaryTurnoverTotalCost',
label: '临时周转总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'drWareDisArea',
label: '干仓配仓储面积(㎡)',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'drWareDisNumber',
label: '干仓配件数',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'drWareDisCostPerUnit',
label: '干仓配单件成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
{
prop: 'drWareDisTotalCost',
label: '干仓配仓储总成本',
type: 1,
values: '',
width: '150',
checkarr: [],
fixed: false,
sortable: true,
head: false,
},
// {
// prop: 'dayNumber',
// label: '当月天数',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'warehouseCost',
// label: '仓库租赁总成本',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'customerMonthlyRent',
// label: '客户租用月租金',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'rent',
// label: '仓库租金',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'statisticalDay',
// label: '统计日',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'statisticalYear',
// label: '统计年',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'drWareDisNumber',
// label: '干仓配件数',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'drWareDisCostPerUnit',
// label: '干仓配单件成本',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: 'drWareDisArea',
// label: '干仓配仓储面积',
// type: 1,
// values: '',
// width: '150',
// checkarr: [],
// fixed: false,
// sortable: true,
// head: false,
// },
// {
// prop: '',
// label: '操作',
// type: 6,
// values: '',
// width: '200',
// checkarr: [],
// fixed: 'right',
// sortable: false,
// },
];

72
src/option/waybill/WaybillOrderList.js

@ -19,7 +19,7 @@ export const columnList = [
label: '运单号',
type: 13,
values: '',
width: '150',
width: '120',
checkarr: [],
fixed: true,
sortable: true,
@ -30,7 +30,7 @@ export const columnList = [
label: '订单自编号',
type: 2,
values: '',
width: '200',
width: '160',
checkarr: [],
fixed: true,
sortable: true,
@ -40,7 +40,7 @@ export const columnList = [
label: '目的仓',
type: 2,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
sortable: true,
@ -50,7 +50,7 @@ export const columnList = [
label: '发站仓',
type: 2,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
sortable: true,
@ -60,7 +60,7 @@ export const columnList = [
label: '运单状态',
type: 3,
values: '',
width: '130',
width: '100',
checkarr: [
{ label: '未入库', value: '0' },
{ label: '部分入库', value: '10' },
@ -93,7 +93,7 @@ export const columnList = [
label: '品牌',
type: 2,
values: '',
width: '150',
width: '100',
checkarr: [],
fixed: false,
sortable: true,
@ -113,7 +113,7 @@ export const columnList = [
label: '发货人',
type: 2,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
sortable: true,
@ -133,7 +133,7 @@ export const columnList = [
label: '发货方地址',
type: 1,
values: '',
width: '180',
width: '130',
checkarr: [],
fixed: false,
sortable: true,
@ -163,7 +163,7 @@ export const columnList = [
label: '收货人',
type: 2,
values: '',
width: '150',
width: '100',
checkarr: [],
fixed: false,
sortable: true,
@ -193,7 +193,7 @@ export const columnList = [
label: '到站',
type: 2,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
sortable: true,
@ -296,7 +296,7 @@ export const columnList = [
label: '运费',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -307,7 +307,7 @@ export const columnList = [
label: '送货费',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -318,7 +318,7 @@ export const columnList = [
label: '提货费',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -329,7 +329,7 @@ export const columnList = [
label: '仓库管理费',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -340,7 +340,7 @@ export const columnList = [
label: '仓储费',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -351,7 +351,7 @@ export const columnList = [
label: '仓储操作费',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -362,7 +362,7 @@ export const columnList = [
label: '仓储分拣费',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -395,7 +395,7 @@ export const columnList = [
label: '申明价值',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -406,7 +406,7 @@ export const columnList = [
label: '回扣',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -417,7 +417,7 @@ export const columnList = [
label: '支付方式',
type: 3,
values: '',
width: '130',
width: '100',
checkarr: [
{ label: '现金', value: 1 },
{ label: '银行卡', value: 2 },
@ -434,7 +434,7 @@ export const columnList = [
label: '付款方式',
type: 3,
values: '',
width: '130',
width: '100',
checkarr: [
{ label: '现付', value: 1 },
{ label: '到付', value: 2 },
@ -450,7 +450,7 @@ export const columnList = [
label: '现付',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -461,7 +461,7 @@ export const columnList = [
label: '到付',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -472,7 +472,7 @@ export const columnList = [
label: '月付',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -483,7 +483,7 @@ export const columnList = [
label: '回付',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -494,7 +494,7 @@ export const columnList = [
label: '送货方式',
type: 3,
values: '',
width: '130',
width: '100',
checkarr: [
{ label: '自提', value: 1 },
{ label: '送货', value: 2 },
@ -512,7 +512,7 @@ export const columnList = [
label: '紧急度',
type: 3,
values: '',
width: '130',
width: '100',
checkarr: [
{ label: '正常', value: 1 },
{ label: '急', value: 2 },
@ -528,7 +528,7 @@ export const columnList = [
label: '回单数',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -539,7 +539,7 @@ export const columnList = [
label: '回单要求',
type: 3,
values: '',
width: '130',
width: '100',
checkarr: [
{ label: '签回单', value: 1 },
{ label: '签原单', value: 2 },
@ -561,7 +561,7 @@ export const columnList = [
label: '运输方式',
type: 3,
values: '',
width: '130',
width: '100',
checkarr: [
{ label: '公路快运', value: 1 },
{ label: '海运', value: 2 },
@ -588,7 +588,7 @@ export const columnList = [
label: '三方操作费',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: true,
@ -599,7 +599,7 @@ export const columnList = [
label: '经办人',
type: 2,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: false,
@ -882,7 +882,7 @@ export const columnList = [
label: '审核状态',
type: 3,
values: '',
width: '130',
width: '80',
checkarr: [
{ label: '待审核', value: '0' },
{ label: '已审核', value: '1' },
@ -907,7 +907,7 @@ export const columnList = [
label: '审核人',
type: 1,
values: '',
width: '130',
width: '100',
checkarr: [],
fixed: false,
isshowSummary: false,
@ -940,7 +940,7 @@ export const columnList = [
label: '备注',
type: 2,
values: '',
width: '180',
width: '130',
checkarr: [],
fixed: false,
isshowSummary: false,
@ -984,7 +984,7 @@ export const columnList = [
label: '操作',
type: 6,
values: '',
width: '250',
width: '150',
checkarr: [],
fixed: 'right',
sortable: false,

85
src/views/cost/storagecost/OrderTotalWarehouse.vue

@ -7,16 +7,24 @@
<!-- 查询模块 -->
<el-form :inline="true" :model="query" class="el-fr-d">
<div>
<el-form-item label="客户名称">
<el-input v-model="queryTop.orderNo" placeholder="请输入客户名称"></el-input>
</el-form-item>
<el-form-item label="目的仓">
<el-select
v-model="queryTop.warehouse"
multiple
placeholder="请选择仓库"
style="min-width: 340px"
collapse-tags
:max-collapse-tags="2"
>
<template #header>
<el-checkbox
v-model="warehousecheckAll"
:indeterminate="indeterminate"
@change="handleCheckAll"
>
全选
</el-checkbox>
</template>
<el-option
v-for="item in warehouseList"
:key="item.value"
@ -25,25 +33,6 @@
/>
</el-select>
</el-form-item>
<el-form-item label="结算年份">
<el-date-picker
v-model="queryTop.costSettlementYear"
type="year"
placeholder="请选择年份"
value-format="YYYY"
/>
</el-form-item>
<el-form-item label="结算月">
<el-select v-model="queryTop.costSettlementMonth" placeholder="请选择月份" style="min-width: 80px">
<el-option
v-for="item in monthList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item>
</div>
<!-- 查询按钮 -->
<el-form-item class="el-btn">
@ -58,9 +47,6 @@
<div class="avue-crud__header">
<!-- 头部左侧按钮模块 -->
<div class="avue-crud__left">
<el-button type="primary" @click="ImportExcel"
><el-icon><Upload /></el-icon></el-button
>
<el-button type="primary" @click="exportExcel"
><el-icon><Download /></el-icon></el-button
>
@ -136,8 +122,7 @@ import {
$_OrderTotalWarehouse,
$_expenseOrderWarehouseTotal,
} from '@/api/storagecost/index.js';
import { processRowProperty, setNodeHeight } from '@/utils/util';
import functions from '@/utils/functions.js';
import { processRowProperty, setNodeHeight,handleClearTableQuery } from '@/utils/util';
import { ElMessageBox, ElMessage } from 'element-plus';
import { downloadXls } from '@/utils/util';
import { useStore } from 'vuex';
@ -147,6 +132,8 @@ const $useStore = useStore(); //权限
const $route = useRoute(); //
const queryTop = ref({});
const monthList = ref([]);
const warehousecheckAll = ref(false);
const indeterminate = ref(false);
const warehouseList = ref([]);
const details = reactive({
/** 是否开启搜索 */
@ -270,6 +257,7 @@ const btnsc = val => {
/** 表格表头下拉框选择 */
const selectsc = (index, row) => {
processRowProperty(index, row, details);
onLoad();
};
/** 表格表头复选框选择 */
const selectionChange = list => {
@ -277,19 +265,19 @@ const selectionChange = list => {
details.selectionList = list;
};
//
const searchReset=()=>{
const searchReset = () => {
queryTop.value = {};
details.query={}
details.data=[]
details.query = {};
details.data = [];
handleClearTableQuery(details.columnList);
onLoad();
}
};
//
const searchChange = () => {
if (queryTop.value.warehouse?.length) {
queryTop.value.warehouseName = queryTop.value.warehouse.join(',');
} else {
delete details.query.warehouseName;
delete queryTop.value.warehouseName;
}
if (queryTop.value.costSettlementMonth) {
if (!queryTop.value.costSettlementYear) {
@ -315,6 +303,29 @@ const currentChange = val => {
details.page.currentPage = val;
onLoad();
};
watch(
() => queryTop.value.warehouse,
val => {
if (!val.length) {
warehousecheckAll.value = false;
indeterminate.value = false;
} else if (val.length === warehouseList.value.length) {
warehousecheckAll.value = true;
indeterminate.value = false;
} else {
indeterminate.value = true;
}
}
);
const handleCheckAll = val => {
indeterminate.value = false;
if (val) {
queryTop.value.warehouse = warehouseList.value.map(_ => _.value);
} else {
queryTop.value.warehouse = [];
}
};
//
const searchChangeS = () => {
details.search = false; //
@ -340,7 +351,6 @@ function updateDictionary(targetArray, dictionaryType) {
});
}
//
//
const onLoad = value => {
let data = {
current: details.page.currentPage,
@ -393,10 +403,9 @@ const PageOnload = () => {
};
PageOnload();
//
const ImportExcel=()=>{
return
}
const ImportExcel = () => {
return;
};
//
const exportExcel = () => {
ElMessageBox.confirm('是否导出数据?', {
@ -413,7 +422,7 @@ const exportExcel = () => {
console.log(data, '要提交的数据');
$_expenseOrderWarehouseTotal(data).then(res => {
details.loadingObj.list = false;
downloadXls(res.data, `月度订单仓储成本明细.xlsx`);
downloadXls(res.data, `订单仓储成本报表.xlsx`);
ElMessage({
message: '导出成功',
type: 'success',

99
src/views/cost/storagecost/WarehouseMonthly.vue

@ -1,5 +1,5 @@
<template>
<basic-container>
<basic-container v-loading="loadingObj.packageListLoading" element-loading-text="Loading...">
<!-- 首页表格 -->
<div class="avue-crud">
<!-- 搜索模块 -->
@ -46,26 +46,6 @@
:shortcuts="shortcuts"
/>
</el-form-item>
<!-- <el-form-item label="结算年份">
<el-date-picker
v-model="queryTop.costSettlementYear"
type="year"
placeholder="请选择年份"
value-format="YYYY"
/>
</el-form-item>
<el-form-item label="结算月">
<el-select v-model="queryTop.costSettlementMonth" placeholder="请选择月份"
style="width: 240px;">
<el-option
v-for="item in monthList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item> -->
</div>
<el-form-item class="el-btn">
<el-button type="primary" icon="el-icon-search" @click="searchChange"> </el-button>
@ -79,9 +59,7 @@
<div class="avue-crud__header">
<!-- 头部左侧按钮模块 -->
<div class="avue-crud__left">
<el-button type="primary" @click="exportExcel"
><el-icon><Plus /></el-icon></el-button
>
<el-button icon="Download" type="primary" @click="exportExcel">导出</el-button>
</div>
<!-- 头部右侧按钮模块 -->
<div class="avue-crud__right">
@ -154,8 +132,7 @@ import {
$_expenseWarehouseMonth,
} from '@/api/storagecost/index.js';
import { getDictionaryBiz } from '@/api/system/dict'; //
import { processRowProperty, setNodeHeight } from '@/utils/util';
import functions from '@/utils/functions.js';
import { processRowProperty, setNodeHeight, handleClearTableQuery } from '@/utils/util';
import { ElMessageBox, ElMessage } from 'element-plus';
import { downloadXls } from '@/utils/util';
import { useStore } from 'vuex';
@ -167,8 +144,7 @@ const warehouseList = ref([]); //仓库
const monthList = ref([]); //
const warehousecheckAll = ref(false);
const indeterminate = ref(false);
const queryTop = ref({
}); //
const queryTop = ref({}); //
const details = reactive({
/** 是否开启搜索 */
search: false,
@ -288,7 +264,7 @@ const timesc = (index, row) => {
watch(
() => queryTop.value.warehouse,
val => {
if (!val.length) {
if (!val?.length) {
warehousecheckAll.value = false;
indeterminate.value = false;
} else if (val.length === warehouseList.value.length) {
@ -322,30 +298,37 @@ const selectionChange = list => {
details.selectionList = list;
};
//
const deleteIfExists = (obj, key) => {
if (obj[key] !== undefined) {
delete obj[key];
}
};
const searchChange = () => {
console.log(queryTop.value.Settlementdate);
if (queryTop.value.Settlementdate) {
const [startDateQuery, endDateQuery] = queryTop.value.Settlementdate;
details.query.startDateQuery = startDateQuery;
details.query.endDateQuery = endDateQuery;
const { Settlementdate, warehouse } = queryTop.value;
// Settlementdate
if (Settlementdate) {
[details.query.startDate, details.query.endDate] = Settlementdate;
} else {
delete details.query.startDateQuery;
delete details.query.endDateQuery;
deleteIfExists(details.query, 'startDate');
deleteIfExists(details.query, 'endDate');
}
if (queryTop.value.warehouse?.length) {
details.query.warehouseNameQuery = queryTop.value.warehouse.join(',');
// warehouse
if (warehouse?.length) {
details.query.warehouseName = warehouse.join(',');
} else {
delete details.query.warehouseNameQuery;
deleteIfExists(details.query, 'warehouseName');
}
onLoad();
};
//
const searchReset = () => {
details.query = {};
queryTop.value = {};
details.columnList.forEach(item => {
item.values = '';
});
handleClearTableQuery(details.columnList);
onLoad();
};
//
@ -396,19 +379,27 @@ const MyWarehouseList = () => {
};
//
const onLoad = value => {
let data = {
current: details.page.currentPage,
size: details.page.pageSize,
...details.query,
...value,
};
$_Getlist(data).then(res => {
if (res.data.code == 200) {
details.data = res.data.data.records || [];
details.page.total = res.data.data.total; //
const onLoad = async value => {
try {
details.loadingObj.packageListLoading = true;
let submit = {
current: details.page.currentPage,
size: details.page.pageSize,
...details.query,
...value,
};
let res = await $_Getlist(submit);
const { code, data } = res.data;
if (code != 200) {
return;
}
});
details.data = data.records || [];
details.page.total = data.total;
} catch (e) {
console.log(e);
} finally {
details.loadingObj.packageListLoading = false;
}
};
const monthFn = () => {
for (let i = 0; i < 12; i++) {

79
src/views/cost/storagecost/Warehousedaily.vue

@ -1,5 +1,5 @@
<template>
<basic-container>
<basic-container v-loading="loadingObj.packageListLoading" element-loading-text="Loading...">
<!-- 首页表格 -->
<div class="avue-crud">
<!-- 搜索模块 -->
@ -34,26 +34,6 @@
/>
</el-select>
</el-form-item>
<!-- <el-form-item label="结算年份">
<el-date-picker
v-model="queryTop.costSettlementYear"
type="year"
placeholder="请选择年份"
value-format="YYYY"
/>
</el-form-item>
<el-form-item label="结算月">
<el-select v-model="queryTop.costSettlementMonth" placeholder="请选择月份">
<el-option
v-for="item in monthList"
:key="item.value"
:label="item.label"
:value="item.value"
/>
</el-select>
</el-form-item> -->
<el-form-item label="结算日期">
<el-date-picker
v-model="queryTop.costSettlementYear"
@ -63,6 +43,7 @@
start-placeholder="开始日期"
end-placeholder="结束如期"
:shortcuts="shortcuts"
value-format="YYYY-MM-DD HH:mm:ss"
/>
</el-form-item>
</div>
@ -78,9 +59,7 @@
<div class="avue-crud__header">
<!-- 头部左侧按钮模块 -->
<div class="avue-crud__left">
<!-- <el-button type="primary" @click="exportExcel"
><el-icon><Plus /></el-icon></el-button
> -->
<el-button icon="Download" type="primary" @click="exportExcel">导出</el-button>
</div>
<!-- 头部右侧按钮模块 -->
<div class="avue-crud__right">
@ -150,11 +129,10 @@ import { columnList } from '@/option/storagecost/Warehousedaily.js';
import {
$_GetexpenseWarehouseDay,
$_getMyWarehouseList,
$_expenseWarehouseMonth,
$_exporDay,
} from '@/api/storagecost/index.js';
import { getDictionaryBiz } from '@/api/system/dict'; //
import { processRowProperty, setNodeHeight } from '@/utils/util';
import functions from '@/utils/functions.js';
import { processRowProperty, setNodeHeight,handleClearTableQuery } from '@/utils/util';
import { ElMessageBox, ElMessage } from 'element-plus';
import { downloadXls } from '@/utils/util';
import { useStore } from 'vuex';
@ -323,16 +301,16 @@ const handleCheckAll = val => {
const searchChange = () => {
if (queryTop.value.costSettlementYear?.length) {
const [startDateQuery, endDateQuery] = queryTop.value.costSettlementYear;
details.query.startDateQuery = startDateQuery;
details.query.endDateQuery = endDateQuery;
details.query.startDate = startDateQuery;
details.query.endDate = endDateQuery;
} else {
delete details.query.startDateQuery;
delete details.query.endDateQuery;
}
if (queryTop.value.warehouse) {
details.query.warehouseNameQuery = queryTop.value.warehouse.join(',');
details.query.warehouseName = queryTop.value.warehouse.join(',');
} else {
delete details.query.warehouseNameQuery;
delete details.query.warehouseName;
}
onLoad();
};
@ -340,9 +318,7 @@ const searchChange = () => {
const searchReset = () => {
details.query = {};
queryTop.value = {};
details.columnList.forEach(item => {
item.values = '';
});
handleClearTableQuery(details.columnList)
onLoad();
};
//
@ -393,19 +369,26 @@ const MyWarehouseList = () => {
};
//
const onLoad = value => {
let data = {
current: details.page.currentPage,
size: details.page.pageSize,
...details.query,
...value,
};
$_GetexpenseWarehouseDay(data).then(res => {
if (res.data.code == 200) {
details.data = res.data.data.records || [];
details.page.total = res.data.data.total; //
const onLoad = async value => {
try {
details.loadingObj.packageListLoading = true;
let submit = {
current: details.page.currentPage,
size: details.page.pageSize,
...details.query,
...value,
};
let res = await $_GetexpenseWarehouseDay(submit);
const { code, data } = res.data;
if (code != 200) {
return;
}
});
details.data = data.records || [];
details.page.total = data.total;
} catch (e) {
} finally {
details.loadingObj.packageListLoading = false;
}
};
const monthFn = () => {
for (let i = 0; i < 12; i++) {
@ -437,9 +420,9 @@ const exportExcel = () => {
...details.query,
};
console.log(data, '要提交的数据');
$_expenseWarehouseMonth(data).then(res => {
$_exporDay(data).then(res => {
details.loadingObj.list = false;
downloadXls(res.data, `度仓储成本统计.xlsx`);
downloadXls(res.data, `度仓储成本统计.xlsx`);
ElMessage({
message: '导出成功',
type: 'success',

4
src/views/cost/storagecost/Warehouserentalmanagement.vue

@ -86,8 +86,8 @@
<template #default="slotProps">
<template v-if="slotProps.scope.column.label === '操作'">
<div class="ElBtnClass">
<el-button @click="edit(slotProps.scope.row)">编辑</el-button>
<el-button @click="Viewdelete(slotProps.scope.row)">删除</el-button>
<el-text @click="edit(slotProps.scope.row)">编辑</el-text>
<el-text @click="Viewdelete(slotProps.scope.row)">删除</el-text>
</div>
</template>
</template>

25
src/views/distribution/artery/AddVehicleStowage.vue

@ -2131,9 +2131,9 @@ const handleSubmitProblemData = () => {
const handleSetRowClassName = (row, rowIndex) => {
if (!row.warehouseEntryTimeStart) return 'timeOut';
// -- , 24, 2
// -- , 24, 2
// -
// -
const time = Date.now() - new Date(row.warehouseEntryTimeStart).getTime();
//
@ -2842,25 +2842,4 @@ onActivated(() => {
:deep(.el-form-item__content) {
width: 250px !important;
}
//
:deep(.el-table) {
tr {
&.WarningTime {
color: #e6a23c !important;
.el-text {
color: #e6a23c !important;
}
}
&.timeOut {
color: #f56c6c !important;
.el-text {
color: #f56c6c !important;
}
}
}
}
</style>

25
src/views/distribution/artery/addTripartiteTransfer.vue

@ -1302,9 +1302,9 @@ const handleSubmit = (formEl: FormInstance | undefined) => {
const handleSetRowClassName = (row, rowIndex) => {
if (!row.warehouseEntryTimeStart) return 'timeOut';
// -- , 24, 2
// -- , 24, 2
// -
// -
const time = Date.now() - new Date(row.warehouseEntryTimeStart).getTime();
//
@ -1489,25 +1489,4 @@ const handleSetRowClassName = (row, rowIndex) => {
background: #f5f7fa;
}
}
//
:deep(.el-table) {
tr {
&.WarningTime {
color: #e6a23c !important;
.el-text {
color: #e6a23c !important;
}
}
&.timeOut {
color: #f56c6c !important;
.el-text {
color: #f56c6c !important;
}
}
}
}
</style>

2
src/views/distribution/deliverylist/distributionDeliveryList.vue

@ -191,7 +191,7 @@
@size-change="sizeChange"
@current-change="currentChange"
:current-page="page.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120, 200]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="page.total"

2
src/views/distribution/deliverylist/distributionDeliveryListdis.vue

@ -195,7 +195,7 @@
@size-change="sizeChange"
@current-change="currentChange"
:current-page="page.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120,200]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="page.total"

2
src/views/distribution/deliverylist/distributionDeliveryListmar.vue

@ -188,7 +188,7 @@
@size-change="sizeChange"
@current-change="currentChange"
:current-page="page.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120,200]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="page.total"

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

@ -565,7 +565,6 @@
v-model="item.chargeType"
@change="() => handleAssignmentItemPrice(item, false, item.chargeType)"
style="display: flex"
:disabled="isDisabled"
>
<el-radio :label="1"></el-radio>
<el-radio :label="2"></el-radio>

25
src/views/distribution/inventory/delivery/OrderInTransit.vue

@ -428,9 +428,9 @@ const handleView = ({ row }) => {
const handleSetRowClassName = (row, rowIndex) => {
if (!row.warehouseEntryTime) return 'timeOut';
// -- , 24, 2
// -- , 24, 2
// -
// -
const time = Date.now() - new Date(row.warehouseEntryTime).getTime();
//
@ -471,25 +471,4 @@ const handleSetRowClassName = (row, rowIndex) => {
:deep(.el-overlay-dialog) {
position: absolute;
}
//
:deep(.el-table) {
tr {
&.WarningTime {
color: #e6a23c !important;
.el-text {
color: #e6a23c !important;
}
}
&.timeOut {
color: #f56c6c !important;
.el-text {
color: #f56c6c !important;
}
}
}
}
</style>

2
src/views/distribution/inventory/delivery/distributionStockArticle.vue

@ -210,7 +210,7 @@
@size-change="sizeChange"
@current-change="currentChange"
:current-page="page.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120,200]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="page.total"

20
src/views/distribution/inventory/delivery/distributionStockArticleDiscuss.vue

@ -102,6 +102,7 @@
:columnList="columnList"
:tableData="data"
:loading="loading"
:tableRowClassName="handleSetRowClassName"
@inputTxt="inputsc"
@timeCheck="timesc"
@btnCheck="btnsc"
@ -167,7 +168,7 @@
@size-change="sizeChange"
@current-change="currentChange"
:current-page="page.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120,200]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="page.total"
@ -1415,6 +1416,23 @@ export default {
console.log('error :>> ', error);
}
},
handleSetRowClassName(row, rowIndex) {
console.log('row.warehouseEntryTime :>> ', row.warehouseEntryTime);
if (!row.warehouseEntryTime) return 'timeOut';
// -- , 24, 2
// -
const time = Date.now() - new Date(row.warehouseEntryTime).getTime();
//
const WarningTime = 1000 * 60 * 60 * (24 * 2 - 2);
//
const timeOut = 1000 * 60 * 60 * 24 * 2;
if (time > timeOut) return 'timeOut';
else if (time > WarningTime && time < timeOut) return 'WarningTime';
},
},
};
</script>

2
src/views/distribution/inventory/delivery/distributionStockArticleMarket.vue

@ -203,7 +203,7 @@
@size-change="sizeChange"
@current-change="currentChange"
:current-page="page.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120,200]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="page.total"

27
src/views/distribution/inventory/delivery/distributionStockArticleSelf.vue

@ -186,7 +186,7 @@
@size-change="sizeChange"
@current-change="currentChange"
:current-page="page.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120,200]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="page.total"
@ -788,9 +788,9 @@ export default {
console.log('row.warehouseEntryTime :>> ', row.warehouseEntryTime);
if (!row.warehouseEntryTime) return 'timeOut';
// -- , 24, 2
// -- , 24, 2
// -
// -
const time = Date.now() - new Date(row.warehouseEntryTime).getTime();
//
const WarningTime = 1000 * 60 * 60 * (24 * 2 - 2);
@ -1844,25 +1844,4 @@ export default {
.el_textBtn {
font-weight: bold;
}
//
:deep(.el-table) {
tr {
&.WarningTime {
color: #e6a23c !important;
.el-text {
color: #e6a23c !important;
}
}
&.timeOut {
color: #f56c6c !important;
.el-text {
color: #f56c6c !important;
}
}
}
}
</style>

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

@ -120,7 +120,7 @@
</el-pagination>
</div>
</el-tab-pane>
<el-tab-pane label="出库明细" name="outbound">
<el-tab-pane label="备货明细" name="outbound">
<tablecmt
class="tableNode"
:columnList="columnListarrs.columnDetails"

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

@ -175,7 +175,7 @@
@size-change="sizeChange"
@current-change="currentChange"
:current-page="page.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120, 200]"
:page-size="page.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="page.total"

6
src/views/distribution/inventory/distrilbutionBillLadingView.vue

@ -107,7 +107,7 @@
@size-change="sizeOrderChange"
@current-change="currentOrderChange"
:current-page="ordpage.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120,200]"
:page-size="ordpage.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="ordpage.total"
@ -154,7 +154,7 @@
@size-change="psizeChange"
@current-change="pcurrentChange"
:current-page="packpage.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120,200]"
:page-size="packpage.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="packpage.total"
@ -193,7 +193,7 @@
@size-change="sizeInChange"
@current-change="currentInChange"
:current-page="inventorypage.currentPage"
:page-sizes="[30, 50, 80, 120]"
:page-sizes="[30, 50, 80, 120,200]"
:page-size="inventorypage.pageSize"
layout="total, sizes, prev, pager, next, jumper"
:total="inventorypage.total"

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

@ -108,101 +108,99 @@
</el-row>
</div>
<div style="height: 100%">
<!-- 列表模块 -->
<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>
<!-- 列表模块 -->
<tablecmt
ref="tableNodeRef"
:columnList="columnList"
:tableData="data"
:loading="loading"
:tableRowClassName="handleSetRowClassName"
@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>
<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="
<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
>
<el-text size="small" @click="asurcharge(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
>
<el-text size="small" @click="asurcharge(slotProps.scope.row)">附加费</el-text>
</template>
</tablecmt>
<!-- <el-button size="small" type="danger" @click="delectsolt(slotProps.scope)"-->
<!-- >Delete</el-button>-->
</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"
>
</el-pagination>
</div>
<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-dialog
@ -2571,6 +2569,28 @@ export default {
}
);
},
/** 设置表格行样式 */
handleSetRowClassName(row, rowIndex) {
try {
if (!row.taskTime) return 'timeOut';
// -- , ,
// -
const time = Date.now() - new Date(row.taskTime).getTime();
//
const WarningTime = 1000 * 60 * 60 * (24 - 2);
//
const timeOut = 1000 * 60 * 60 * 24;
if (time > timeOut) return 'timeOut';
else if (time > WarningTime && time < timeOut) return 'WarningTime';
} catch (error) {
console.log('error :>> ', error);
}
},
},
};
</script>

116
src/views/finance/ReconciliationDepositSlip.vue

@ -94,7 +94,23 @@
<!-- 头部左侧按钮模块 -->
<div class="avue-crud__left">
<!-- 审核 -->
<el-button type="primary" icon="Stamp" @click="handleConfirm">生成对账单</el-button>
<el-button
v-if="permissionObj.ReconciliationDepositSlip_handleConfirm"
type="primary"
icon="Stamp"
@click="handleConfirm"
>
生成对账单
</el-button>
<el-button
v-if="permissionObj.ReconciliationDepositSlip_handleBatchSettle"
type="primary"
icon="Stamp"
@click="handleBatchSettle"
>
批量结算
</el-button>
<!-- 导出 -->
<el-button type="primary" icon="Download" @click="handleExport"> </el-button>
@ -120,7 +136,11 @@
>
<template #default="slotProps">
<template v-if="slotProps.scope.column.label === '操作'">
<el-text @click="() => handleComputedPrice(slotProps.scope)">计算费用</el-text>
<el-text
v-if="permissionObj.ReconciliationDepositSlip_handleComputedPrice"
@click="() => handleComputedPrice(slotProps.scope)"
>计算费用</el-text
>
</template>
</template>
</tablecmt>
@ -215,7 +235,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 {
@ -224,6 +244,9 @@ import {
postReal,
postOrderInfoListExport,
postCreateReconciliationOrder,
postCreateFinishWaybillId,
postCreateReconciliationwWaybillId,
postCalculateRealCostByWaybillId,
} from '@/api/finance/ReconciliationDepositSlip';
import {
downloadXls,
@ -336,8 +359,32 @@ const tableNodeRef = ref();
const { search, shortcuts, selectionList, drawerShow, page, defaultTime2 } = toRefs(details);
/** vuex */
const permission = computed(() => mapGetters(['permission', 'tagWel', 'tagList']));
console.log('permission :>> ', permission);
const $store = useStore();
const { permission } = $store.getters;
const permissionObj = reactive({
//
ReconciliationDepositSlip_handleConfirm: computed(() => {
return details.pageStatus === 1
? permission.ReconciliationDepositSlip_handleConfirm_toB
: permission.ReconciliationDepositSlip_handleConfirm_toC;
}),
//
ReconciliationDepositSlip_handleBatchSettle: computed(() => {
return details.pageStatus === 1
? permission.ReconciliationDepositSlip_handleBatchSettle_toB
: //
permission.ReconciliationDepositSlip_handleBatchSettle_toC;
}),
//
ReconciliationDepositSlip_handleComputedPrice: computed(() => {
return details.pageStatus === 1
? //
permission.ReconciliationDepositSlip_handleComputedPrice_toB
: permission.ReconciliationDepositSlip_handleComputedPrice_toC;
}),
});
onMounted(async () => {
await nextTick();
@ -565,6 +612,42 @@ const handleFullScrean = (_type: 'open' | 'close', _name: string) => {
}
};
/** 批量结算 */
const handleBatchSettle = () => {
try {
if (details.selectionList.length === 0) return ElMessage.warning('请选择需要结算的数据');
ElMessageBox.confirm('是否批量结算?', '提示', {
confirmButtonText: '确定',
cancelButtonText: '取消',
type: 'warning',
}).then(async () => {
details.popUpShow.confirmVisited = false;
try {
details.loadingObj.pageLoading = true;
const submitData = {
waybillIds: details.selectionList.map(val => val.waybillId),
};
const res = await postCreateFinishWaybillId(submitData);
const { code, msg } = res.data;
if (code !== 200) return msg && ElMessage.warning(msg);
if (msg) ElMessage.success(msg);
} catch (error) {
console.log('error :>> ', error);
} finally {
onLoad();
details.loadingObj.pageLoading = false;
}
});
} catch (error) {
console.log('error :>> ', error);
} finally {
}
};
/** 生成对账单 */
const handleConfirm = async () => {
await nextTick();
@ -608,11 +691,25 @@ const handleSubmitConfrim = () => {
try {
details.loadingObj.pageLoading = true;
const submitData = {
orderInfoIds: details.selectionList.map(val => val.orderInfoId),
};
let res: any = {};
// toB
if (details.pageStatus === 1) {
const submitData = {
waybillIds: details.selectionList.map(val => val.waybillId),
};
res = await postCreateReconciliationwWaybillId(submitData);
}
// toC
else {
const submitData = {
orderInfoIds: details.selectionList.map(val => val.orderInfoId),
};
res = await postCreateReconciliationOrder(submitData);
}
const res = await postCreateReconciliationOrder(submitData);
const { code, msg } = res.data;
if (code !== 200) return msg && ElMessage.warning(msg);
@ -637,6 +734,7 @@ const handleComputedPrice = ({ row }) => {
details.loadingObj.pageLoading = true;
const res = await postReal(row.orderInfoId);
// const res = await postCalculateRealCostByWaybillId(row.waybillId);
const { code, msg } = res.data;
if (code !== 200) return msg && ElMessage.warning(msg);

7
src/views/finance/WaybillAudit.vue

@ -375,6 +375,13 @@ const onLoad = async () => {
if (code !== 200) return;
details.data = data.records;
for (let i = 0; i < details.data .length; i++) {
const value = details.data [i];
!value.payStatus && (value.payStatus = '10')
!value.settlementStatus && (value.settlementStatus = '10')
}
details.page.total = data.total;
handleTranslationDataSeclect(details.data, details.columnList);
return res.data;

6
src/views/reportforms/Stockordertable.vue

@ -167,7 +167,7 @@ import {
$_getstockOrder,
} from '@/api/reportforms/index.js';
import { ElMessageBox } from 'element-plus';
import { downloadXls, deepClone } from '@/utils/util';
import { downloadXls, deepClone,handleClearTableQuery } from '@/utils/util';
import dayjs from 'dayjs';
const indeterminate = ref(false);
const checkAll = ref(false);
@ -338,9 +338,7 @@ const searchReset = () => {
TopQuery.value.time = [];
queryCarn.value = {};
details.query = {};
columnList.forEach(item => {
item.values = '';
});
handleClearTableQuery(details.columnList);
details.page.total = 0;
details.data = [];
};

1
src/views/waybill/CreateZeroOrder.vue

@ -530,7 +530,6 @@
v-model="item.chargeType"
@change="() => handleAssignmentItemPrice(item, false, item.chargeType)"
style="display: flex"
:disabled="isDisabled"
>
<el-radio :label="1"></el-radio>
<el-radio :label="2"></el-radio>

21
src/views/waybill/TemporaryStorageList.vue

@ -1718,25 +1718,4 @@ onActivated(() => {
text-align: left !important;
}
}
//
:deep(.el-table) {
tr {
&.WarningTime {
color: #e6a23c !important;
.el-text {
color: #e6a23c !important;
}
}
&.timeOut {
color: #f56c6c !important;
.el-text {
color: #f56c6c !important;
}
}
}
}
</style>

1
src/views/waybill/WaybillOrderList.vue

@ -302,7 +302,6 @@
<script setup lang="ts">
import { ref, reactive, toRefs, computed, onMounted, nextTick } from 'vue';
import functions from '@/utils/functions.js';
import dayjs from 'dayjs';
import { mapGetters, useStore } from 'vuex';
/** 获取字典 */

Loading…
Cancel
Save