Browse Source

修复部分bug

dev-xx
qb 11 months ago
parent
commit
c9fa6a0ef4
  1. 3
      src/views/Pricesystem/Price/PriceTrunkLine.vue
  2. 11
      src/views/distribution/artery/truckLoadingDetails.vue
  3. 13
      src/views/distribution/inventory/CreateOrder.vue
  4. 49
      src/views/financialsector/Financialse/FinancialBill.vue
  5. 37
      src/views/financialsector/Financialse/FinancialTrunkLine.vue
  6. 13
      src/views/waybill/CreateZeroOrder.vue
  7. 208
      src/views/waybill/orderPackageList.vue

3
src/views/Pricesystem/Price/PriceTrunkLine.vue

@ -168,7 +168,8 @@
<template <template
v-if=" v-if="
details.form.trunklineIsMinCost === '1' && details.form.trunklineIsPeculiarSetup === '0' Number(details.form.trunklineIsMinCost) === 1 &&
Number(details.form.trunklineIsPeculiarSetup) === 1
" "
> >
<!-- 最低计费 --> <!-- 最低计费 -->

11
src/views/distribution/artery/truckLoadingDetails.vue

@ -673,7 +673,7 @@ const handleBatchUnLoad = async () => {
if (Number(iterator.scanStatus) === 1) { if (Number(iterator.scanStatus) === 1) {
// //
if (Number(iterator.type) === 1) { if (Number(iterator.type) === 1) {
_orderArr.push({ orderPackageCode: iterator.scanCode }); _orderArr.push({ orderPackageCode: iterator.scanCode, carsLoadScanId: iterator.id });
} else { } else {
_zeroArr.push({ _zeroArr.push({
waybillNo: iterator.waybillNo, waybillNo: iterator.waybillNo,
@ -795,7 +795,10 @@ const handleBatchUnLoad = async () => {
if (Number(iterator.scanStatus) === 1) { if (Number(iterator.scanStatus) === 1) {
// //
if (Number(iterator.type) === 1) { if (Number(iterator.type) === 1) {
_orderArr.push({ orderPackageCode: iterator.scanCode }); _orderArr.push({
orderPackageCode: iterator.scanCode,
carsLoadScanId: iterator.id,
});
} else { } else {
_zeroArr.push({ _zeroArr.push({
waybillNo: iterator.waybillNo, waybillNo: iterator.waybillNo,
@ -879,7 +882,7 @@ const handleOrderUnLoad = async ({ row }) => {
const submitData = { const submitData = {
loadId: details.pageInfo.loadId, loadId: details.pageInfo.loadId,
unloadPackageList: [{ orderPackageCode: row.scanCode }], unloadPackageList: [{ orderPackageCode: row.scanCode, carsLoadScanId: row.id }],
unloadZeroList: [], unloadZeroList: [],
incomingType: '7', incomingType: '7',
}; };
@ -910,7 +913,7 @@ const handleOrderUnLoad = async ({ row }) => {
const submitData = { const submitData = {
loadId: details.pageInfo.loadId, loadId: details.pageInfo.loadId,
unloadPackageList: [{ orderPackageCode: row.scanCode }], unloadPackageList: [{ orderPackageCode: row.scanCode, carsLoadScanId: row.id }],
unloadZeroList: [], unloadZeroList: [],
incomingType: '7', incomingType: '7',
}; };

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

@ -381,7 +381,9 @@
<el-radio-group <el-radio-group
@change=" @change="
() => { () => {
if (!details.query.isPickUp) details.query.pickupFee = 0; details.query.pickupFee = 0;
if (!details.query.isPickUp) return;
handlePrice();
} }
" "
v-model="query.isPickUp" v-model="query.isPickUp"
@ -991,9 +993,9 @@
@click="handleSubmit(ruleFormRef)" @click="handleSubmit(ruleFormRef)"
>提交</el-button >提交</el-button
> >
<el-button type="primary" icon="Refresh" @click="resetForm(ruleFormRef)" <!-- <el-button type="primary" icon="Refresh" @click="resetForm(ruleFormRef)">
>重置</el-button 重置
> </el-button> -->
</div> </div>
</div> </div>
</el-form> </el-form>
@ -2429,7 +2431,8 @@ const handleComputed = (row: any) => {
console.log('row :>> ', row); console.log('row :>> ', row);
handleTrunkLinePrice(details.priceTemplate.trunkLine, details.priceTemplate.template); // handleTrunkLinePrice(details.priceTemplate.trunkLine, details.priceTemplate.template);
handlePrice();
}; };
/** 查询客户信息 */ /** 查询客户信息 */

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

@ -105,6 +105,7 @@
:key="val.goodsId" :key="val.goodsId"
:label="val.goodsName" :label="val.goodsName"
:value="val.goodsId" :value="val.goodsId"
:disabled="goodsIds.includes(val.goodsId)"
/> />
</el-select> </el-select>
<div class="el_table_operation"> <div class="el_table_operation">
@ -130,12 +131,7 @@
</template> </template>
<!-- 是否最低计费 --> <!-- 是否最低计费 -->
<el-form-item <el-form-item label-width="150px" label="是否最低计费">
label-width="150px"
label="是否最低计费"
prop="pickupIsMinCost"
:rules="[{ required: true, message: '请选择是否最低计费', trigger: ['blur', 'change'] }]"
>
<el-radio-group v-model="details.form.pickupIsMinCost" class="ml-4"> <el-radio-group v-model="details.form.pickupIsMinCost" class="ml-4">
<el-radio v-for="item in details.isType" :key="item.value" :label="item.value" size="large" <el-radio v-for="item in details.isType" :key="item.value" :label="item.value" size="large"
>{{ item.label }} >{{ item.label }}
@ -148,8 +144,6 @@
v-if="details.form.pickupIsMinCost === '1'" v-if="details.form.pickupIsMinCost === '1'"
label-width="150px" label-width="150px"
label="最低计费类型" label="最低计费类型"
prop="pickupMinCostType"
:rules="[{ required: true, message: '请选择最低计费类型', trigger: ['blur', 'change'] }]"
> >
<el-radio-group v-model="details.form.pickupMinCostType" class="ml-4"> <el-radio-group v-model="details.form.pickupMinCostType" class="ml-4">
<template v-for="item in details.lowestType" :key="item.value"> <template v-for="item in details.lowestType" :key="item.value">
@ -176,8 +170,16 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { ref, reactive, getCurrentInstance, nextTick, defineEmits, defineComponent } from 'vue'; import {
import { debounce, deepClone } from '@/utils/util'; ref,
reactive,
getCurrentInstance,
nextTick,
defineEmits,
defineComponent,
computed,
} from 'vue';
import { debounce, deepClone, getObjType } from '@/utils/util';
import { ElMessage, ElMessageBox } from 'element-plus'; import { ElMessage, ElMessageBox } from 'element-plus';
import { getDictionaryBiz } from '@/api/system/dict'; import { getDictionaryBiz } from '@/api/system/dict';
import { postFindCategoryInfo } from '@/api/distribution/CreateOrder.js'; import { postFindCategoryInfo } from '@/api/distribution/CreateOrder.js';
@ -307,6 +309,31 @@ const details = reactive({
}, },
}); });
const goodsIds = computed(() => {
const ids = [];
try {
if (getObjType(details.form.billTemplateDetail) !== 'array') return;
for (let i = 0; i < details.form.billTemplateDetail.length; i++) {
const value = details.form.billTemplateDetail[i];
if (getObjType(value.categories) !== 'array') continue;
for (let j = 0; j < value.categories.length; j++) {
const element = value.categories[j];
if (element.goodsId || element.goodsId === 0) ids.push(element.goodsId);
}
}
} catch (error) {
console.log('error :>> ', error);
}
console.log('ids :>> ', ids);
return ids;
});
const goriesloading = ref(false); const goriesloading = ref(false);
/** 计价方式改变时 */ /** 计价方式改变时 */
@ -321,7 +348,7 @@ const handleChangePrcieMethod = value => {
if (!activeItem.MappingOrNot) return; if (!activeItem.MappingOrNot) return;
if (!details.form.pickupPricingType.includes(activeItem.mapValue)) if (!details.form.pickupPricingType.includes(activeItem.mapValue))
details.form.pickupMinCostType = '0'; details.form.pickupMinCostType = '1';
}; };
/** 处理干线计费模式 */ /** 处理干线计费模式 */

37
src/views/financialsector/Financialse/FinancialTrunkLine.vue

@ -102,6 +102,7 @@
:key="val.goodsId" :key="val.goodsId"
:label="val.goodsName" :label="val.goodsName"
:value="val.goodsId" :value="val.goodsId"
:disabled="goodsIds.includes(val.goodsId)"
/> />
</el-select> </el-select>
<div class="el_table_operation"> <div class="el_table_operation">
@ -204,7 +205,15 @@
</template> </template>
<script setup lang="ts"> <script setup lang="ts">
import { ref, reactive, getCurrentInstance, nextTick, defineEmits, defineComponent } from 'vue'; import {
ref,
reactive,
getCurrentInstance,
nextTick,
defineEmits,
defineComponent,
computed,
} from 'vue';
import { debounce, deepClone } from '@/utils/util'; import { debounce, deepClone } from '@/utils/util';
import { ElMessage, ElMessageBox } from 'element-plus'; import { ElMessage, ElMessageBox } from 'element-plus';
import { getDictionaryBiz } from '@/api/system/dict'; import { getDictionaryBiz } from '@/api/system/dict';
@ -337,6 +346,32 @@ const details = reactive({
}, },
}); });
/** 被选择的货物 */
const goodsIds = computed(() => {
const ids = [];
try {
if (getObjType(details.form.billTemplateDetail) !== 'array') return;
for (let i = 0; i < details.form.billTemplateDetail.length; i++) {
const value = details.form.billTemplateDetail[i];
if (getObjType(value.categories) !== 'array') continue;
for (let j = 0; j < value.categories.length; j++) {
const element = value.categories[j];
if (element.goodsId || element.goodsId === 0) ids.push(element.goodsId);
}
}
} catch (error) {
console.log('error :>> ', error);
}
console.log('ids :>> ', ids);
return ids;
});
const goriesloading = ref(false); const goriesloading = ref(false);
/** 计价方式改变时 */ /** 计价方式改变时 */

13
src/views/waybill/CreateZeroOrder.vue

@ -345,7 +345,9 @@
<el-radio-group <el-radio-group
@change=" @change="
() => { () => {
if (!details.query.isPickUp) details.query.pickupFee = 0; details.query.pickupFee = 0;
if (!details.query.isPickUp) return;
handlePrice();
} }
" "
v-model="query.isPickUp" v-model="query.isPickUp"
@ -963,9 +965,9 @@
<el-button type="primary" icon="Position" @click="handleSubmit(ruleFormRef)" <el-button type="primary" icon="Position" @click="handleSubmit(ruleFormRef)"
>提交</el-button >提交</el-button
> >
<el-button type="primary" icon="Refresh" @click="resetForm(ruleFormRef)" <!-- <el-button type="primary" icon="Refresh" @click="resetForm(ruleFormRef)">
>重置</el-button 重置
> </el-button> -->
</div> </div>
</div> </div>
</el-form> </el-form>
@ -1968,7 +1970,8 @@ const handleComputed = (row: any) => {
console.log('row :>> ', row); console.log('row :>> ', row);
handleTrunkLinePrice(details.priceTemplate.trunkLine, details.priceTemplate.template); // handleTrunkLinePrice(details.priceTemplate.trunkLine, details.priceTemplate.template);
handlePrice();
}; };
/** 查询客户信息 */ /** 查询客户信息 */

208
src/views/waybill/orderPackageList.vue

@ -71,7 +71,15 @@
<div class="avue-crud__header"> <div class="avue-crud__header">
<!-- 头部左侧按钮模块 --> <!-- 头部左侧按钮模块 -->
<div class="avue-crud__left"> <div class="avue-crud__left">
<el-button type="primary" icon="Printer" @click="editClientInfo">批量打印</el-button> <!-- 批量打印 -->
<el-button type="primary" icon="Printer" @click="handleBatchBarcode">
批量打印
</el-button>
<!-- 批量入库 -->
<el-button type="primary" icon="Position" @click="handleBatchPutInStorage">
批量入库
</el-button>
<!-- <el-button type="primary" icon="Upload" @click="editClientInfo">定制品导入</el-button> <!-- <el-button type="primary" icon="Upload" @click="editClientInfo">定制品导入</el-button>
<el-button type="primary" icon="Upload" @click="editClientInfo">标准品导入</el-button> <el-button type="primary" icon="Upload" @click="editClientInfo">标准品导入</el-button>
<el-button type="primary" icon="Upload" @click="editClientInfo"> <el-button type="primary" icon="Upload" @click="editClientInfo">
@ -88,34 +96,31 @@
</el-row> </el-row>
<!-- 表格 --> <!-- 表格 -->
<el-row> <!-- 列表模块 -->
<!-- 列表模块 --> <tablecmt
<tablecmt :columnList="details.packageListColumnList"
:columnList="details.packageListColumnList" :tableData="details.packageListData"
:tableData="details.packageListData" :loading="loadingObj.list"
:loading="loadingObj.list" @inputTxt="inputsc"
@inputTxt="inputsc" @timeCheck="timesc"
@timeCheck="timesc" @btnCheck="btnsc"
@btnCheck="btnsc" @selectCheck="selectsc"
@selectCheck="selectsc" @selection="selectionChange"
@selection="selectionChange" >
> <template #default="slotProps">
<template #default="slotProps"> <template v-if="slotProps.scope.column.label === '操作'">
<template v-if="slotProps.scope.column.label === '操作'"> <el-text @click="handleShowPackageOrderList(slotProps.scope)"> 包内产品 </el-text>
<el-button type="text" @click="handleShowPackageOrderList(slotProps.scope)"> <el-text @click="handleShowFlowNode(slotProps.scope)"> 流转节点 </el-text>
包内产品 <el-text
</el-button> v-if="Number(slotProps.scope.row.packageStatus) === 0"
<el-button type="text" @click="handleShowFlowNode(slotProps.scope)"> @click="handlePutInStorage(slotProps.scope)"
流转节点 >
</el-button> 直接入库
<el-button type="text" @click="handlePutInStorage(slotProps.scope)"> </el-text>
直接入库 <el-text @click="printOrder(slotProps.scope)"> 查看二维码 </el-text>
</el-button>
<el-button type="text" @click="printOrder(slotProps.scope)"> 查看二维码 </el-button>
</template>
</template> </template>
</tablecmt> </template>
</el-row> </tablecmt>
<!-- 分页模块 --> <!-- 分页模块 -->
<el-row class="el-fy"> <el-row class="el-fy">
@ -301,22 +306,7 @@
</el-dialog> </el-dialog>
<!-- 打印二维码 --> <!-- 打印二维码 -->
<el-dialog <MyPrint v-model="details.popUpShow.QRCodeVisible" width="780px" :html="details.html" />
class="el-dialog-QRCode"
title="二维码"
:visible.sync="details.popUpShow.QRCodeVisible"
width="780px"
v-model="details.popUpShow.QRCodeVisible"
>
<div>
<div v-html="html"></div>
</div>
<span slot="footer" class="dialog-footer">
<!-- <el-button type="primary" @click="ddd"> </el-button>-->
<el-button type="primary" @click="printTemplate"> </el-button>
<el-button @click="details.popUpShow.QRCodeVisible = false"> </el-button>
</span>
</el-dialog>
<!-- 列表配置显示 --> <!-- 列表配置显示 -->
<edittablehead <edittablehead
@ -335,14 +325,15 @@ import { mapGetters } from 'vuex';
/** 获取字典 */ /** 获取字典 */
import { getDictionaryBiz } from '@/api/system/dict'; import { getDictionaryBiz } from '@/api/system/dict';
import { getopenOrderAdvancePageList } from '@/api/waybill/TemporaryStorageList'; import { getopenOrderAdvancePageList } from '@/api/waybill/TemporaryStorageList';
import { postFindOrderDetails } from '@/api/waybill/orderPackageListDetails.js'; import {
postFindOrderDetails,
postFinaPackageTrackLogList,
getopenOrderIncomingPackage,
} from '@/api/waybill/orderPackageListDetails.js';
import { showOrderPackgeCode } from '@/api/distribution/distributionStockArticle'; import { showOrderPackgeCode } from '@/api/distribution/distributionStockArticle';
import { downloadXls, setNodeHeight, getHtmls, deepClone, getObjType } from '@/utils/util'; import { downloadXls, setNodeHeight, getHtmls, deepClone, getObjType } from '@/utils/util';
import { import { packageListColumnList, packageDetailColumnList } from '@/option/waybill/orderPackageList';
packageListColumnList, import { flowNodeColumnList } from '@/option/waybill/orderPackageListDetails.js';
packageDetailColumnList,
flowNodeColumnList,
} from '@/option/waybill/orderPackageList';
import { useRouter } from 'vue-router'; import { useRouter } from 'vue-router';
import print from '@/utils/print'; import print from '@/utils/print';
import { ElMessage, ElMessageBox } from 'element-plus'; import { ElMessage, ElMessageBox } from 'element-plus';
@ -750,7 +741,18 @@ const handlePutInStorage = row => {
cancelButtonText: '取消', cancelButtonText: '取消',
type: 'warning', type: 'warning',
}) })
.then(() => { .then(async () => {
const submitData = {
orderPackageCode: row.orderPackageCode,
/** 直接入库 */
incomingType: '3',
};
const res = await getopenOrderIncomingPackage(submitData);
const { code } = res.data;
if (code !== 200) return;
initPage();
ElMessage({ ElMessage({
type: 'success', type: 'success',
message: '入库成功', message: '入库成功',
@ -759,17 +761,103 @@ const handlePutInStorage = row => {
.catch(() => {}); .catch(() => {});
}; };
/** 显示流转节点 */ /** 批量入库 */
const handleShowFlowNode = ({ row }) => { const handleBatchPutInStorage = () => {
details.popUpShow.flowNodeColumnListVisited = true; if (details.selectionList.length === 0) return ElMessage.error('最少选择一条数据');
nextTick(() => { let orderPackageCodes = [];
// , const _flag = details.selectionList.every(val => {
const _node: any = document.querySelector('.flowNodeColumnListVisited .maboxhi'); if (Number(val.packageStatus) === 1) {
if (!_node) return; return false;
_node.style.height = '550px'; }
console.log('_node :>> ', _node); orderPackageCodes.push(val.orderPackageCode);
return true;
}); });
if (!_flag) return ElMessage.error('请选择未入库的数据');
ElMessageBox.confirm('确认直接入库吗?', '警告', {
confirmButtonText: '确认',
cancelButtonText: '取消',
type: 'warning',
})
.then(async () => {
try {
details.loadingObj.pageLaoding = true;
const submitData = {
orderPackageCode: orderPackageCodes.join(','),
/** 直接入库 */
incomingType: '3',
};
const res = await getopenOrderIncomingPackage(submitData);
const { code } = res.data;
if (code !== 200) return;
initPage();
ElMessage({
type: 'success',
message: '入库成功',
});
} catch (error) {
console.log('error :>> ', error);
} finally {
details.loadingObj.pageLaoding = false;
}
})
.catch(() => {});
};
/** 批量查看二维码 */
const handleBatchBarcode = async () => {
if (details.selectionList.length === 0)
return ElMessage.warning({ message: '请选择需要查看的数据' });
try {
details.loadingObj.pageLaoding = true;
let qr = {
orderPackageCodes: details.selectionList.map(val => val.orderPackageCode).join(','),
};
const res = await getShowAdvancePackgeCode(qr);
if (res.data.code !== 200) return;
details.popUpShow.QRCodeVisible = true;
console.log(res.data);
details.html = '';
details.html = getHtmls(res.data.data.dataList, res.data.data.templateHtml);
} catch (error) {
console.log('error :>> ', error);
} finally {
details.loadingObj.pageLaoding = false;
}
};
/** 显示流转节点 */
const handleShowFlowNode = async ({ row }) => {
try {
details.loadingObj.pageLaoding = true;
const response = await postFinaPackageTrackLogList({ orderPackageCode: row.orderPackageCode });
const { code, data } = response.data;
if (code !== 200) return;
details.flowNodeData = data;
details.popUpShow.flowNodeColumnListVisited = true;
nextTick(() => {
// ,
const _node: any = document.querySelector('.flowNodeColumnListVisited .maboxhi');
if (!_node) return;
_node.style.height = '550px';
console.log('_node :>> ', _node);
});
} catch (error) {
console.log('error :>> ', error);
} finally {
details.loadingObj.pageLaoding = false;
}
}; };
</script> </script>

Loading…
Cancel
Save