feat(rental): 添加退还格口功能并扩展格口实体
- 在租赁页面添加退还格口按钮及处理函数 - 扩展 RetingCellEntity 接口添加 orderId 和 orderGoodsId 字段 - 更新 LockerItem 接口和格口列表映射逻辑
This commit is contained in:
parent
32f90300c8
commit
602c6b6b82
|
@ -14,7 +14,12 @@ export interface RentingCabinetDetailDTO {
|
|||
/** 锁控编号 */
|
||||
lockControlNo: number
|
||||
/** 柜格列表 */
|
||||
cells: CabinetCellEntity[]
|
||||
cells: RetingCellEntity[]
|
||||
}
|
||||
|
||||
export interface RetingCellEntity extends CabinetCellEntity {
|
||||
orderId: number;
|
||||
orderGoodsId: number;
|
||||
}
|
||||
|
||||
/** 智能柜格口实体类 */
|
||||
|
|
|
@ -28,6 +28,10 @@
|
|||
</div>
|
||||
</div>
|
||||
<div class="button-group">
|
||||
<van-button size="small" plain hairline :loading="openingLockerId === locker.lockerId"
|
||||
@click="handleRefund(locker.orderId, locker.orderGoodsId)">
|
||||
退还格口
|
||||
</van-button>
|
||||
<van-button size="small" plain hairline :loading="openingLockerId === locker.lockerId"
|
||||
@click="handleOpenLocker(locker)">
|
||||
开启格口
|
||||
|
@ -51,6 +55,7 @@ import { publicPath } from "@/common/utils/path";
|
|||
import { showDialog, showToast } from 'vant';
|
||||
import { useAb98UserStore } from '@/pinia/stores/ab98-user';
|
||||
|
||||
const router = useRouter();
|
||||
const wxStore = useWxStore();
|
||||
const { userid: userid, qyUserId: qyUserId, name: qyName, corpid, ab98User } = storeToRefs(wxStore);
|
||||
|
||||
|
@ -79,6 +84,8 @@ interface LockerItem {
|
|||
goodsName?: string
|
||||
price?: number
|
||||
coverImg?: string
|
||||
orderId: number;
|
||||
orderGoodsId: number;
|
||||
}
|
||||
|
||||
// 获取用户租用的机柜列表
|
||||
|
@ -116,7 +123,9 @@ const updateLockerList = (cabinet: RentingCabinetDetailDTO) => {
|
|||
// 这里假设商品信息可能在其他字段中,根据实际情况调整
|
||||
goodsName: '',
|
||||
price: cell.cellPrice,
|
||||
coverImg: `${publicPath}img/product-image.svg`
|
||||
coverImg: `${publicPath}img/product-image.svg`,
|
||||
orderId: cell.orderId,
|
||||
orderGoodsId: cell.orderGoodsId,
|
||||
}))
|
||||
}
|
||||
|
||||
|
@ -147,6 +156,17 @@ const handleOpenLocker = async (locker: LockerItem) => {
|
|||
}
|
||||
}
|
||||
|
||||
const handleRefund = (orderId: number, orderGoodsId: number) => {
|
||||
router.push({
|
||||
path: '/approval/submit',
|
||||
query: {
|
||||
orderGoodsId,
|
||||
orderId,
|
||||
}
|
||||
})
|
||||
}
|
||||
|
||||
|
||||
// 初始化方法
|
||||
const init = async () => {
|
||||
await loadUserRentedCabinetDetail();
|
||||
|
|
Loading…
Reference in New Issue