diff --git a/components.d.ts b/components.d.ts index dda2a50..433e700 100644 --- a/components.d.ts +++ b/components.d.ts @@ -19,8 +19,10 @@ declare module 'vue' { ElConfigProvider: typeof import('element-plus/es')['ElConfigProvider'] ElDatePicker: typeof import('element-plus/es')['ElDatePicker'] ElDialog: typeof import('element-plus/es')['ElDialog'] + ElEmpty: typeof import('element-plus/es')['ElEmpty'] ElForm: typeof import('element-plus/es')['ElForm'] ElFormItem: typeof import('element-plus/es')['ElFormItem'] + ElHeader: typeof import('element-plus/es')['ElHeader'] ElIcon: typeof import('element-plus/es')['ElIcon'] ElImage: typeof import('element-plus/es')['ElImage'] ElInput: typeof import('element-plus/es')['ElInput'] @@ -33,8 +35,12 @@ declare module 'vue' { ElProgress: typeof import('element-plus/es')['ElProgress'] ElRow: typeof import('element-plus/es')['ElRow'] ElSelect: typeof import('element-plus/es')['ElSelect'] + ElStep: typeof import('element-plus/es')['ElStep'] + ElSteps: typeof import('element-plus/es')['ElSteps'] ElTable: typeof import('element-plus/es')['ElTable'] ElTableColumn: typeof import('element-plus/es')['ElTableColumn'] + ElTabPane: typeof import('element-plus/es')['ElTabPane'] + ElTabs: typeof import('element-plus/es')['ElTabs'] ElTag: typeof import('element-plus/es')['ElTag'] ElUpload: typeof import('element-plus/es')['ElUpload'] EquipCard: typeof import('./src/components/equipCard.vue')['default'] diff --git a/src/http/api/usercenter/seekorder.ts b/src/http/api/usercenter/seekorder.ts index 6a7a9f2..dbed1b0 100644 --- a/src/http/api/usercenter/seekorder.ts +++ b/src/http/api/usercenter/seekorder.ts @@ -11,3 +11,13 @@ export const getOrderListApi = (data: any) => { export const getOrderListInfoApi = (data: any) => { return get('/material-mall/order/getOrderDetailsById',data) } + +//出库 +export const passApi = (data: any) => { + return post('/material-mall/order/updateOrderStatus',data) +} + +//驳回 +export const failApi = (data: any) => { + return post('/material-mall/order/updateOrderStatus',data) +} \ No newline at end of file diff --git a/src/router/index.ts b/src/router/index.ts index 5cca330..7703969 100644 --- a/src/router/index.ts +++ b/src/router/index.ts @@ -216,7 +216,7 @@ const routes: Array = [ }, }, - /* 订单管理(求租方) */ + /* 订单管理(承租方) */ { path: 'orderManagement', name: 'orderManagement', @@ -228,7 +228,31 @@ const routes: Array = [ isLogin: true }, }, - /* 订单管理(订单详情) */ + /* 订单管理(出租方) */ + { + path: 'orderManagementBuy', + name: 'orderManagementBuy', + component: () => import('@/views/user/orderManagementCz/index.vue'), + meta: { + title: '订单管理(求租)', + keepAlive: true, + AuthFlag: false, + isLogin: true + }, + }, + /* 订单管理(订单详情出租) */ + { + path: 'orderManagementInfoBuy', + name: 'orderManagementInfoBuy', + component: () => import('@/views/user/orderManagementCz/detail.vue'), + meta: { + title: '订单详情', + keepAlive: true, + AuthFlag: false, + isLogin: false + }, + }, + /* 订单管理(订单详情承租) */ { path: 'orderManagementInfo', name: 'orderManagementInfo', diff --git a/src/views/user/orderManagement/detail.vue b/src/views/user/orderManagement/detail.vue index 3c9dfd6..8eef986 100644 --- a/src/views/user/orderManagement/detail.vue +++ b/src/views/user/orderManagement/detail.vue @@ -6,39 +6,62 @@ import { getOrderListInfoApi } from 'http/api/usercenter/seekorder' const route = useRoute() /* 查询参数 */ const cardList = ref({}) -const orderStatusTemp = ref(0) +const orderStatusTemp = ref(0) const idTemp = ref('') const titleStaus = ref('') -// 获取数据列表 -// const getList = async () => { -// const res: any = await getOrderListApi() -// console.log('获取数据列表***', res) -// tableData.value = res.rows -// total.value = res.total -// } - +//描述信息 +const operationDetails = ref({ + 1: { title: '已出库', preOutboundUser: '', preOutboundTime: '' }, + 2: { title: '已收货', takeOverUser: '', takeOverTime: '' }, + 3: { title: '租赁结束', rentOverUser: '', rentOverTime: '' }, + }) // 根据步骤的 Id 返回对应的标题 const getStepTitle = (stepId:number)=> { - if (orderStatusTemp.value === 1) { + if (orderStatusTemp.value === 2) { titleStaus.value= '待出库' ; return stepId === 1 ? '待出库' : ''; - } else if (orderStatusTemp.value === 2) { + } else if (orderStatusTemp.value === 3) { titleStaus.value= '待收货' ; return stepId === 1 ? '已出库' : stepId === 2 ? '待收货' : ''; - } else if (orderStatusTemp.value === 3) { + } else if (orderStatusTemp.value === 4) { titleStaus.value= '租赁中' ; return stepId === 1 ? '已出库' : stepId === 2 ? '已收货' : stepId === 3 ? '租赁中' : ''; - } else if (orderStatusTemp.value === 4) { - titleStaus.value= '发起费用结算' ; - return stepId === 1 ? '已出库' : stepId === 2 ? '已收货' : stepId === 3 ? '租赁结束' : stepId === 4 ? '发起费用结算' : ''; } else if (orderStatusTemp.value === 5) { + titleStaus.value= '已退租' ; + return stepId === 1 ? '已出库' : stepId === 2 ? '已收货' : stepId === 3 ? '租赁结束' : stepId === 4 ? '已退租' : ''; + } else if (orderStatusTemp.value === 6) { titleStaus.value= '已完成' ; return stepId === 1 ? '已出库' : stepId === 2 ? '已收货' : stepId === 3 ? '租赁结束' : stepId === 4 ? '已退租' : stepId === 5 ? '已完成' : ''; + } else if(orderStatusTemp.value === 7) { + titleStaus.value= '已驳回' ; + return stepId === 1 ? '已驳回' : ''; } titleStaus.value='' return ''; // 默认返回空字符串 } + // 根据步骤的 Id 返回对应的描述 + const getDescription=(desId:number)=>{ + const operation = operationDetails.value[desId]; + if (operation.title=="已出库" && titleStaus.value!= "待出库" ) { + return ` + 操作人:${operation.preOutboundUser==null ? ' ': operation.preOutboundUser} + 操作时间:${operation.preOutboundTime==null ? ' ': operation.preOutboundTime} + `; + }else if(operation.title=="已收货" && titleStaus.value!= "待收货" && titleStaus.value!= "待出库"){ + return ` + 操作人:${operation.takeOverUser==null ? ' ': operation.takeOverUser} + 操作时间:${operation.takeOverTime==null ? ' ': operation.takeOverTime} + `; + }else if(operation.title=="租赁结束" && (titleStaus.value!= "待收货" && titleStaus.value!= "待出库" && titleStaus.value!= "租赁中")){ + return ` + 操作人:${operation.rentOverUser==null ? ' ': operation.rentOverUser} + 操作时间:${operation.rentOverTime==null ? ' ': operation.rentOverTime} + `; + } + return ''; // 默认返回空描述 + } + const getId = ()=>{ orderStatusTemp.value = Number(route.query.orderStatusTemp) idTemp.value = String(route.query.idTemp) @@ -52,6 +75,13 @@ const getList = async () => { const res: any = await getOrderListInfoApi(params) cardList.value = res.data + operationDetails.value[1].preOutboundUser = res.data.detailsList[0].preOutboundUser + operationDetails.value[1].preOutboundTime = res.data.detailsList[0].preOutboundTime + operationDetails.value[2].takeOverUser = res.data.detailsList[0].takeOverUser + operationDetails.value[2].takeOverTime = res.data.detailsList[0].takeOverTime + operationDetails.value[3].rentOverUser = res.data.detailsList[0].rentOverUser + operationDetails.value[3].rentOverTime = res.data.detailsList[0].rentOverTime + } onBeforeMount(()=>{ @@ -70,7 +100,7 @@ const time = ref([])
- 订单管理 + 订单管理 订单明细
@@ -85,12 +115,12 @@ const time = ref([]) - - - - + + + + - +
@@ -179,8 +209,9 @@ const time = ref([])
{{"租赁中"}}
{{"已退租"}}
{{"已完成"}}
+
{{"已驳回"}}
- +
@@ -210,7 +241,7 @@ const time = ref([]) diff --git a/src/views/user/orderManagementCz/index.vue b/src/views/user/orderManagementCz/index.vue index 5fd0b43..a6e4052 100644 --- a/src/views/user/orderManagementCz/index.vue +++ b/src/views/user/orderManagementCz/index.vue @@ -1,147 +1,1957 @@ -