diff --git a/pagesA/verification/historyDetail.vue b/pagesA/verification/historyDetail.vue index cf67c54..bb35c79 100644 --- a/pagesA/verification/historyDetail.vue +++ b/pagesA/verification/historyDetail.vue @@ -23,61 +23,65 @@ - 入库成功 + {{historyType=='1'?'入库成功':'核销成功'}} - 2025-03-05 12:34:56 + {{codeInfo?.status == 2? codeInfo?.create_time: codeInfo?.distribute_time}} - JD202503050001 + {{codeInfo.order_no}} - 操作人员:张三 - 负责仓库:北京仓 + 操作人员:{{userInfo.realname}} + 负责仓库:{{codeInfo.distribute_name}} - - - 商品信息 + + + + 商品信息 + + 共{{codeInfo?.product?.length}}件商品 - - - - 示例商品名称 - 商品编码:SP202505126 - - 规格:默认 - - 数量: - 1 + + + + + {{product.product_name}} + + + 规格:{{product.spec_name || '默认'}} + + 数量: + {{product.num}} + + + + 单价: + ¥{{product.price}} - - - 商品分类 - 电子产品 + + + 商品总数 + {{getTotalQuantity()}}件 - - 供应商 - 京东自营 - - - 单价 - ¥299.00 - - - 库存状态 - 正常 + + 合计金额 + ¥{{getTotalAmount()}} @@ -92,19 +96,16 @@ 入库单号 - RK202503050001 - - - 入库方式 - 扫码入库 + {{codeInfo.order_no}} 入库类型 普通入库 - 所属库位 - A-12-03 + 商品类型 + {{codeInfo?.type==1?'普通订单':(codeInfo?.type==2?'秒杀订单':'拼团订单')}} 入库备注 @@ -158,6 +159,7 @@ 分享详情 + @@ -166,6 +168,9 @@ import { onLoad } from '@dcloudio/uni-app' import { scanCodeGet } from '@/api/ticket' import { useNavigation } from '@/hooks/useNavigation' + import { useToast } from '@/uni_modules/wot-design-uni' + const Toast = useToast() + // 使用导航 composable const { hasMultiplePages, // 是否有多个页面在路由栈中 @@ -176,13 +181,48 @@ const loading = ref(false) const order_no = ref('') const historyType = ref('1') + const codeInfo = ref({}) + const userInfo = ref(uni.getStorageSync('userInfo')) + + + // 商品列表数据 + const productList = ref([ + { + id: 1, + name: '示例商品名称1', + code: 'SP202505126', + spec: '默认', + quantity: 2, + price: '299.00', + image: '../../static/swiper/1.png' + }, + { + id: 2, + name: '示例商品名称2', + code: 'SP202505127', + spec: '大号', + quantity: 1, + price: '399.00', + image: '../../static/swiper/1.png' + } + ]) + + // 计算商品总数 + const getTotalQuantity = () => { + return codeInfo?.value?.product?.reduce((total, product) => total + product.num, 0) + } + + // 计算合计金额 + const getTotalAmount = () => { + const total = codeInfo?.value?.product?.reduce((sum, product) => { + return sum + (Number(product.price) * product.num) + }, 0) + return total?.toFixed(2) + } // 打印详情 const printDetail = () => { - uni.showToast({ - title: '打印功能开发中', - icon: 'none' - }) + Toast.info('打印功能开发中') } // 分享详情 @@ -214,9 +254,14 @@ const getScanCodeGet = async () => { loading.value = true try { - const res = await scanCodeGet({ order_no: order_no.value }) - + const res = await scanCodeGet({ code: order_no.value }) + if (res.code == 200) { + codeInfo.value = res.data + } else { + Toast.error(res.msg) + } } catch (error) { + Toast.error(error?.msg) } finally { loading.value = false } @@ -227,7 +272,6 @@ historyType.value = options.type checkRouteStack() getScanCodeGet() - console.log('入库详情页参数:', options) }) @@ -297,20 +341,44 @@ } } - .product-card { - .product-image { - width: 180rpx; - height: 180rpx; - border-radius: 16rpx; - background-color: #f5f5f5; - box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.05); + .product-section { + .product-list { + max-height: 800rpx; + overflow-y: auto; } - .product-info { - flex: 1; - display: flex; - flex-direction: column; - justify-content: space-between; + .product-card { + position: relative; + + &.li-border-b { + border-bottom: 2rpx solid rgba(0, 0, 0, 0.05); + } + + .product-image { + width: 180rpx; + height: 180rpx; + border-radius: 16rpx; + background-color: #f5f5f5; + box-shadow: 0 4rpx 12rpx rgba(0, 0, 0, 0.05); + } + + .product-info { + flex: 1; + display: flex; + flex-direction: column; + justify-content: space-between; + + .product-name { + display: -webkit-box; + -webkit-box-orient: vertical; + -webkit-line-clamp: 2; + overflow: hidden; + } + } + } + + .product-summary { + border-top-color: rgba(0, 0, 0, 0.05); } } diff --git a/pagesA/warehousing/index.vue b/pagesA/warehousing/index.vue index b78cce4..817d4d8 100644 --- a/pagesA/warehousing/index.vue +++ b/pagesA/warehousing/index.vue @@ -389,7 +389,7 @@ const recordetail = (item) => { uni.navigateTo({ - url: '/pagesA/verification/historyDetail?order_no=' + item.order_no + '&type=2' + url: '/pagesA/verification/historyDetail?order_no=' + item.order_no + '&type=1' }) } diff --git a/unocss/a-hua-unocss/index.scss b/unocss/a-hua-unocss/index.scss index ed43c87..e3f8fbc 100644 --- a/unocss/a-hua-unocss/index.scss +++ b/unocss/a-hua-unocss/index.scss @@ -1,15 +1,72 @@ -.li-items-center{align-items:center} -.items-center{align-items:center} -.li-justify-center{justify-content:center} -.justify-end{justify-content:end} -.justify-center{justify-content:center} -.li-justify-between{justify-content:space-between} -.justify-between{justify-content:space-between} .li-bg-white{background-color:rgb(255,255,255)} .li-flex{display:flex} +.li-items-center{align-items:center} +.li-justify-between{justify-content:space-between} +.li-mb-10{margin-bottom:10rpx} +.li-mb-15{margin-bottom:15rpx} +.li-mb-20{margin-bottom:20rpx} +.li-mb-30{margin-bottom:30rpx} +.li-mb-40{margin-bottom:40rpx} +.li-mb-8{margin-bottom:8rpx} +.li-ml-15{margin-left:15rpx} +.li-ml-20{margin-left:20rpx} +.li-mr-10{margin-right:10rpx} +.li-mt-10{margin-top:10rpx} +.li-mt-20{margin-top:20rpx} +.li-mt-30{margin-top:30rpx} +.li-mx-auto{margin-left:auto;margin-right:auto} +.li-my-20{margin-top:20rpx;margin-bottom:20rpx} +.li-p-30{padding:30rpx} +.li-px-30{padding-left:30rpx;padding-right:30rpx} +.li-py-30{padding-top:30rpx;padding-bottom:30rpx} +.li-rd-20{border-radius:20rpx} +.li-text-0070F0-color{color:rgb(0,112,240)} +.li-text-07c160-color{color:rgb(7,193,96)} +.li-text-26{font-size:26rpx} +.li-text-28{font-size:28rpx} +.li-text-30{font-size:30rpx} +.li-text-32{font-size:32rpx} +.li-text-333-color{color:rgb(51,51,51)} +.li-text-36{font-size:36rpx} +.li-text-38{font-size:38rpx} +.li-text-42{font-size:42rpx} +.li-text-55{font-size:55rpx} +.li-text-666-color{color:rgb(102,102,102)} +.li-text-70{font-size:70rpx} +.li-text-999-color{color:rgb(153,153,153)} +.li-w-full-92{width:92%} .li-flex-center{display:flex;align-items:center;justify-content:center} .li-flex-col{flex-direction:column} +.li-items-end{align-items:end} +.li-justify-center{justify-content:center} +.li-ml-10{margin-left:10rpx} +.li-mr-25{margin-right:25rpx} +.li-mr-4{margin-right:4rpx} +.li-mt-100{margin-top:100rpx} +.li-mt-100-important{margin-top:100rpx !important} +.li-mt-15{margin-top:15rpx} +.li-mt-4{margin-top:4rpx} +.li-mt-40{margin-top:40rpx} +.li-mt-50{margin-top:50rpx} +.li-mt-8{margin-top:8rpx} +.li-pb-10{padding-bottom:10rpx} +.li-px-40{padding-left:40rpx;padding-right:40rpx} +.li-py-25{padding-top:25rpx;padding-bottom:25rpx} +.li-py-40{padding-top:40rpx;padding-bottom:40rpx} +.li-text-009aff-color{color:rgb(0,154,255)} +.li-text-24{font-size:24rpx} +.li-text-34{font-size:34rpx} +.li-text-44{font-size:44rpx} +.li-text-48{font-size:48rpx} +.li-text-90{font-size:90rpx} +.li-text-center{text-align:center} +.li-text-white{color:rgb(255,255,255)} +.li-w-500{width:500rpx} +.li-w-full-90{width:90%} +.items-center{align-items:center} +.justify-center{justify-content:center} +.justify-between{justify-content:space-between} .li-font-bold{font-weight:bold} .li-h-130{height:130rpx} .li-h-160{height:160rpx} @@ -20,27 +77,15 @@ .li-ml-25{margin-left:25rpx} .li-ml-35{margin-left:35rpx} .li-mr-5{margin-right:5rpx} -.li-mt-10{margin-top:10rpx} .li-mt-12{margin-top:12rpx} .li-mt-14{margin-top:14rpx} -.li-mt-15{margin-top:15rpx} -.li-mt-20{margin-top:20rpx} -.li-mt-30{margin-top:30rpx} -.li-mx-auto{margin-left:auto;margin-right:auto} .li-pt-15{padding-top:15rpx} .li-px-25{padding-left:25rpx;padding-right:25rpx} -.li-px-30{padding-left:30rpx;padding-right:30rpx} -.li-px-40{padding-left:40rpx;padding-right:40rpx} .li-px-50{padding-left:50rpx;padding-right:50rpx} -.li-py-25{padding-top:25rpx;padding-bottom:25rpx} .li-rd-10{border-radius:10rpx} .li-rd-15{border-radius:15rpx} .li-text-010B3E-color{color:rgb(1,11,62)} .li-text-22{font-size:22rpx} -.li-text-24{font-size:24rpx} -.li-text-26{font-size:26rpx} -.li-text-28{font-size:28rpx} -.li-text-30{font-size:30rpx} .li-text-343333-color{color:rgb(52,51,51)} .li-text-43{font-size:43rpx} .li-text-AFB2B8-color{color:rgb(175,178,184)} @@ -51,201 +96,5 @@ .li-w-58{width:58rpx} .li-w-full-70{width:70%} .li-w-full-88{width:88%} -.bg-f9f9f9{background-color:rgb(249,249,249)} -.bg-FFFFFF{background-color:rgb(255,255,255)} -.border-4-white{border-style:solid;border-color:rgb(255,255,255);border-width:4rpx} -.li-h-100{height:100rpx} -.li-h-240{height:240rpx} -.li-h-250{height:250rpx} -.li-h-50{height:50rpx} -.li-h-60{height:60rpx} -.li-items-end{align-items:end} -.li-justify-start{justify-content:start} -.li-mb-2{margin-bottom:2rpx} -.li-ml-4{margin-left:4rpx} -.li-ml-50{margin-left:50rpx} -.li-mr-20{margin-right:20rpx} -.li-mr-50{margin-right:50rpx} -.li-mt-26{margin-top:26rpx} -.li-mt-6{margin-top:6rpx} -.li-mt-60{margin-top:60rpx} -.li-mx-20{margin-left:20rpx;margin-right:20rpx} -.li-mx-40{margin-left:40rpx;margin-right:40rpx} -.li-pb-10{padding-bottom:10rpx} -.li-pb-14{padding-bottom:14rpx} -.li-pb-20{padding-bottom:20rpx} -.li-pt-20{padding-top:20rpx} -.li-pt-8{padding-top:8rpx} -.li-py-20{padding-top:20rpx;padding-bottom:20rpx} -.li-rd-20{border-radius:20rpx} -.li-rd-full-50{border-radius:50%} -.li-rd-tl-30-important{border-top-left-radius:30rpx !important} -.li-rd-tr-30-important{border-top-right-radius:30rpx !important} -.li-text-000000-color{color:rgb(0,0,0)} -.li-text-19171B-color{color:rgb(25,23,27)} -.li-text-20{font-size:20rpx} -.li-text-32{font-size:32rpx} -.li-text-34{font-size:34rpx} -.li-text-38{font-size:38rpx} -.li-text-706e70-color{color:rgb(112,110,112)} -.li-text-B2B2B2-color{color:rgb(178,178,178)} -.li-text-BBBDDA-color{color:rgb(187,189,218)} -.li-text-F2F7FD-color{color:rgb(242,247,253)} -.li-text-F8C883-color{color:rgb(248,200,131)} -.li-text-FFFFFF-color{color:rgb(255,255,255)} -.li-text-b1bbc7-color{color:rgb(177,187,199)} -.li-w-100{width:100rpx} -.li-w-240{width:240rpx} -.li-w-50{width:50rpx} -.li-w-60{width:60rpx} -.li-w-full-94{width:94%} -.li-ml-20{margin-left:20rpx} -.li-ml-200{margin-left:200rpx} -.li-ml-30{margin-left:30rpx} -.li-mr-10{margin-right:10rpx} -.li-mr-30{margin-right:30rpx} -.li-mt-300-important{margin-top:300rpx !important} -.li-pt-2{padding-top:2rpx} -.li-text-25{font-size:25rpx} -.li-text-35{font-size:35rpx} -.li-text-42{font-size:42rpx} -.li-text-46{font-size:46rpx} -.li-w-full-80{width:80%} -.li-font-550{font-weight:550} -.li-h-68{height:68rpx} -.li-mt-100{margin-top:100rpx} -.li-mt-28{margin-top:28rpx} -.li-mt-32{margin-top:32rpx} -.li-mt-90{margin-top:90rpx} -.li-mx-10{margin-left:10rpx;margin-right:10rpx} -.li-pt-270{padding-top:270rpx} -.li-rd-40{border-radius:40rpx} -.li-text-2EA1EA-color{color:rgb(46,161,234)} -.li-text-a5a5a5-color{color:rgb(165,165,165)} -.li-w-150{width:150rpx} -.li-w-420{width:420rpx} -.li-w-full-85{width:85%} -.li-w-full-90{width:90%} - -.li-h-110{height:110rpx} -.li-items-start{align-items:start} -.li-mb-12{margin-bottom:12rpx} -.li-mb-20{margin-bottom:20rpx} -.li-mb-8{margin-bottom:8rpx} -.li-ml-15{margin-left:15rpx} -.li-mr-12{margin-right:12rpx} -.li-mr-3{margin-right:3rpx} -.li-mr-6{margin-right:6rpx} -.li-mt-40{margin-top:40rpx} -.li-pb-25{padding-bottom:25rpx} -.li-pb-30{padding-bottom:30rpx} -.li-pl-20{padding-left:20rpx} -.li-pl-30{padding-left:30rpx} -.li-pr-30{padding-right:30rpx} -.li-pt-30{padding-top:30rpx} -.li-py-6{padding-top:6rpx;padding-bottom:6rpx} -.li-text-009aff-color{color:rgb(0,154,255)} -.li-text-40{font-size:40rpx} -.li-text-55{font-size:55rpx} -.li-text-5f5f5f-color{color:rgb(95,95,95)} -.li-text-666-color{color:rgb(102,102,102)} -.li-text-70{font-size:70rpx} -.li-text-9a9a9a-color{color:rgb(154,154,154)} -.li-text-right{text-align:right} -.li-w-110{width:110rpx} -.li-w-400{width:400rpx} -.li-w-full-92{width:92%} -.overflow-hidden{overflow:hidden} - - -.li-ml-6{margin-left:6rpx} -.li-p-15{padding:15rpx} -.li-pb-15{padding-bottom:15rpx} -.li-pt-25{padding-top:25rpx} -.li-pt-4{padding-top:4rpx} -.li-text-333333-color{color:rgb(51,51,51)} -.li-text-36{font-size:36rpx} -.li-text-ff0000-color{color:rgb(255,0,0)} -.li-w-full-100{width:100%} - -.li-font-400{font-weight:400} -.li-m-30{margin:30rpx} -.li-text-595959-color{color:rgb(89,89,89)} - -.li-mb-25{margin-bottom:25rpx} - - -.li-mb-30{margin-bottom:30rpx} -.li-ml-10{margin-left:10rpx} -.li-mr-200{margin-right:200rpx} -.li-mr-4{margin-right:4rpx} -.li-mt-100-important{margin-top:100rpx !important} -.li-mt-4{margin-top:4rpx} -.li-mt-50{margin-top:50rpx} -.li-mt-8{margin-top:8rpx} -.li-py-40{padding-top:40rpx;padding-bottom:40rpx} -.li-text-0070F0-color{color:rgb(0,112,240)} -.li-text-333-color{color:rgb(51,51,51)} -.li-text-44{font-size:44rpx} -.li-text-48{font-size:48rpx} -.li-text-90{font-size:90rpx} -.li-text-999-color{color:rgb(153,153,153)} -.li-text-center{text-align:center} -.li-text-white{color:rgb(255,255,255)} -.li-w-500{width:500rpx} - - -.li-mb-10{margin-bottom:10rpx} -.li-mb-15{margin-bottom:15rpx} -.li-mb-40{margin-bottom:40rpx} -.li-my-20{margin-top:20rpx;margin-bottom:20rpx} -.li-p-30{padding:30rpx} -.li-py-30{padding-top:30rpx;padding-bottom:30rpx} -.li-text-07c160-color{color:rgb(7,193,96)} - - -.li-h-90{height:90rpx} -.li-text-47{font-size:47rpx} -.li-w-90{width:90rpx} - -.li-block{display:block} -.li-border-b{border-style:solid;border-color:b;border-width:1rpx} -.li-items-baseline{align-items:baseline} -.li-mr-15{margin-right:15rpx} -.li-mt-5{margin-top:5rpx} -.li-opacity-100{undefined:1} -.li-py-60{padding-top:60rpx;padding-bottom:60rpx} -.li-rd-12{border-radius:12rpx} -.li-rd-16{border-radius:16rpx} -.li-text-0a4696-color{color:rgb(10,70,150)} - -.li-flex-1{flex:1} -.li-flex-wrap{flex-wrap:wrap} -.li-mt-25{margin-top:25rpx} -.li-text-999999-color{color:rgb(153,153,153)} -.li-w-160{width:160rpx} - -.li-line-clamp-2{overflow:hidden;display:-webkit-box;line-clamp:2;-webkit-box-orient:vertical;-webkit-line-clamp:2} -.li-w-full-96{width:96%} - -.li-px-15{padding-left:15rpx;padding-right:15rpx} -.li-text-52{font-size:52rpx} - - -.li-opacity-80{undefined:0.8} -.li-pb-40{padding-bottom:40rpx} -.li-px-20{padding-left:20rpx;padding-right:20rpx} -.li-py-10{padding-top:10rpx;padding-bottom:10rpx} -.li-py-100{padding-top:100rpx;padding-bottom:100rpx} -.li-py-15{padding-top:15rpx;padding-bottom:15rpx} -.li-rd-30{border-radius:30rpx} -.li-text-100{font-size:100rpx} -.li-text-3e9bff-color{color:rgb(62,155,255)} -.li-text-50{font-size:50rpx} -.li-text-52c41a-color{color:rgb(82,196,26)} -.li-text-60{font-size:60rpx} -.li-text-ccc-color{color:rgb(204,204,204)} -.li-text-ff4d4f-color{color:rgb(255,77,79)} - - +.pt-10{padding-top:10rpx}