From 988db994dbd0a4899090c0e6e90a2554debd86f2 Mon Sep 17 00:00:00 2001 From: hongchao <3228015117@qq.com> Date: Mon, 24 Feb 2025 18:03:52 +0800 Subject: [PATCH] =?UTF-8?q?=E8=AE=A2=E5=8D=95=E7=AE=A1=E7=90=86=E5=8A=9F?= =?UTF-8?q?=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- components.d.ts | 4 + src/http/api/usercenter/seekorder.ts | 8 +- src/views/equip/list.vue | 4 +- src/views/user/goodsManagement/index.vue | 24 ++- .../orderManagement/components/order-home.vue | 154 ++++++++++++++++-- .../components/order-home.vue | 138 ++++++++++++++-- 6 files changed, 301 insertions(+), 31 deletions(-) diff --git a/components.d.ts b/components.d.ts index e2fca0a..4d8a23e 100644 --- a/components.d.ts +++ b/components.d.ts @@ -14,11 +14,14 @@ declare module 'vue' { ElBreadcrumb: typeof import('element-plus/es')['ElBreadcrumb'] ElBreadcrumbItem: typeof import('element-plus/es')['ElBreadcrumbItem'] ElButton: typeof import('element-plus/es')['ElButton'] + ElCard: typeof import('element-plus/es')['ElCard'] ElCarousel: typeof import('element-plus/es')['ElCarousel'] ElCarouselItem: typeof import('element-plus/es')['ElCarouselItem'] ElCascader: typeof import('element-plus/es')['ElCascader'] ElCheckbox: typeof import('element-plus/es')['ElCheckbox'] ElCol: typeof import('element-plus/es')['ElCol'] + ElCollapse: typeof import('element-plus/es')['ElCollapse'] + ElCollapseItem: typeof import('element-plus/es')['ElCollapseItem'] ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider'] ElCountdown: typeof import('element-plus/es')['ElCountdown'] ElDatePicker: typeof import('element-plus/es')['ElDatePicker'] @@ -42,6 +45,7 @@ declare module 'vue' { ElSelect: typeof import('element-plus/es')['ElSelect'] ElStep: typeof import('element-plus/es')['ElStep'] ElSteps: typeof import('element-plus/es')['ElSteps'] + ElSwitch: typeof import('element-plus/es')['ElSwitch'] ElTable: typeof import('element-plus/es')['ElTable'] ElTableColumn: typeof import('element-plus/es')['ElTableColumn'] ElTag: typeof import('element-plus/es')['ElTag'] diff --git a/src/http/api/usercenter/seekorder.ts b/src/http/api/usercenter/seekorder.ts index ffb91df..4769ca4 100644 --- a/src/http/api/usercenter/seekorder.ts +++ b/src/http/api/usercenter/seekorder.ts @@ -29,4 +29,10 @@ export const confirmPriceApi = (data: any) => { //获取租赁协议详情 export const getContractDetailApi = (data: any) => { return get('/material-mall/order/leaseAgreement', data) -} \ No newline at end of file +} + +//获取取件码 +export const getOrderCodeApi = (data: any) => { + return get('/material-mall/order/getOrderCode',data) +} + diff --git a/src/views/equip/list.vue b/src/views/equip/list.vue index c7bd1d4..2f504a0 100644 --- a/src/views/equip/list.vue +++ b/src/views/equip/list.vue @@ -6,7 +6,7 @@ {{ item.title }}{{ currentIndex == 1 @@ -35,7 +35,7 @@ active: val.isChecked, }" > - {{ val.name }} + {{ val.name }} + + 查看取件码 + + 确认收货 {
+ + + + + + + + + + + + + + + + + + + + + + + + +
+ + 关闭 + + + 收货 + +
+
diff --git a/src/views/user/orderManagementCz/components/order-home.vue b/src/views/user/orderManagementCz/components/order-home.vue index b492bee..9c49feb 100644 --- a/src/views/user/orderManagementCz/components/order-home.vue +++ b/src/views/user/orderManagementCz/components/order-home.vue @@ -10,6 +10,7 @@ import { passApi, failApi, getContractDetailApi, + getOrderCodeApi, } from 'http/api/usercenter/seekorder' import uploadComponent from 'components/uploadComponent/index.vue' import previewImg from './previewImg/index.vue' @@ -157,25 +158,52 @@ const onAcceptOrders = (item: any) => { cancelButtonText: '取消', type: 'warning', }) - .then(() => { - return passApi({ orderId: item.orderId, orderStatus: 2 }) - // return removeDeviceApi([row.maId]) - }) - .then((res) => { - if (res.code === 200) { - ElMessage({ - type: 'success', - message: '接单成功', - duration: 1000, - }) - numberTemp.value = numberTemp.value + 1 - getList() + .then(async() => { + const passApiRes = await passApi({ orderId: item.orderId, orderStatus: 2 }); + // 检查 passApi 是否成功 + if (passApiRes && passApiRes.code === 200) { + // 如果 passApi 成功,调用 passApi(原代码中的 passApiTwo 可能是拼写错误) + const passApiTwoRes = await passApi({ orderId: item.orderId, orderStatus: 3 }); + if (passApiTwoRes && passApiTwoRes.code === 200) { + ElMessage({ + type: 'success', + message: '接单成功', + duration: 1000, + }); + numberTemp.value = numberTemp.value + 1; + getList(); + } } }) .catch(() => {}) } -// 出库按钮 + +//出库弹窗参数 +const dialogVisiblePickUpCodeOut = ref(false); +// 新增变量来存储取件码 +const pickUpCodeOut = ref(''); +const pickUpViewOut = (index: Number) => { + pickUpCodeForm.pickUpCode = ''; + dialogVisiblePickUpCodeOut.value = true; +}; +const pickUpCodeFormRef = ref() +//取件码表单校验规则 +const pickUpCodeRules = ref({ + pickUpCode: [ + { + required: true, + message: '请输入取件码', + trigger: 'blur', + }, + ], +}) +const pickUpCodeForm = reactive({ + pickUpCode: '', +}) + + +//出库按钮 const confirmPass = async (index: number) => { ElMessageBox.confirm('是否确定出库?', { confirmButtonText: '确定', @@ -703,6 +731,19 @@ const downloadContract = () => { } const wordUrl = ref('') + +//取件码弹窗参数 +const dialogVisiblePickUpCode = ref(false); +// 新增变量来存储取件码 +const pickUpCode = ref(''); +const pickUpView = async(item: any) => { + console.log('item',item) + const res: any = await getOrderCodeApi({orderId:item.orderId}) + console.log('res',res) + pickUpCode.value = res.data + dialogVisiblePickUpCode.value = true; +}; +