update 部分退款 取消订单 拣货完成
This commit is contained in:
parent
adbe417bd2
commit
3ac04df21a
@ -4,20 +4,24 @@
|
|||||||
"version" : "0.0",
|
"version" : "0.0",
|
||||||
"configurations" : [
|
"configurations" : [
|
||||||
{
|
{
|
||||||
"app-plus" : {
|
"app-plus" :
|
||||||
"launchtype" : "remote"
|
{
|
||||||
},
|
"launchtype" : "remote"
|
||||||
"default" : {
|
},
|
||||||
"launchtype" : "local"
|
"default" :
|
||||||
},
|
{
|
||||||
"h5" : {
|
"launchtype" : "local"
|
||||||
"launchtype" : "local"
|
},
|
||||||
},
|
"h5" :
|
||||||
"mp-weixin" : {
|
{
|
||||||
"launchtype" : "local"
|
"launchtype" : "local"
|
||||||
},
|
},
|
||||||
"provider" : "aliyun",
|
"mp-weixin" :
|
||||||
"type" : "uniCloud"
|
{
|
||||||
|
"launchtype" : "local"
|
||||||
|
},
|
||||||
|
"provider" : "aliyun",
|
||||||
|
"type" : "uniCloud"
|
||||||
},
|
},
|
||||||
{
|
{
|
||||||
"playground" : "custom",
|
"playground" : "custom",
|
||||||
|
|||||||
@ -32,7 +32,7 @@ export default {
|
|||||||
},
|
},
|
||||||
onShow: function () {
|
onShow: function () {
|
||||||
this.globalData.isAppActive = true;
|
this.globalData.isAppActive = true;
|
||||||
|
webSocketManager.closeAllGlobalConnections();
|
||||||
setTimeout(() => {
|
setTimeout(() => {
|
||||||
if (this.userInfo && Object.keys(this.userInfo).length > 0) {
|
if (this.userInfo && Object.keys(this.userInfo).length > 0) {
|
||||||
this.connectSocket(this.userInfo);
|
this.connectSocket(this.userInfo);
|
||||||
|
|||||||
@ -115,6 +115,36 @@ export function GetSalesReturnOrderPass(params) {
|
|||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
export function GetInitiativeOrderRefund(params) {
|
||||||
|
return http({
|
||||||
|
url: "/shop/shop-order-return/mch/order/doRefund",
|
||||||
|
method: "post",
|
||||||
|
data: params,
|
||||||
|
baseURL: config.adminApi,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 拣货完成
|
||||||
|
* @author Seven
|
||||||
|
* @data 2025-3-28
|
||||||
|
* @param {
|
||||||
|
* order_id : "DD-20241206-13"
|
||||||
|
* store_id : 3
|
||||||
|
* }
|
||||||
|
* @returns { }
|
||||||
|
* @see https://mall.gpxscs.cn/api/admin/shop/shop-order-info/picking/completed
|
||||||
|
*/
|
||||||
|
|
||||||
|
export function GetOrderPicking(params) {
|
||||||
|
return http({
|
||||||
|
url: "/shop/shop-order-info/picking/completed",
|
||||||
|
method: "post",
|
||||||
|
params,
|
||||||
|
baseURL: config.adminApi,
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 获取订单列表 模拟数据
|
* 获取订单列表 模拟数据
|
||||||
**/
|
**/
|
||||||
|
|||||||
@ -12,15 +12,15 @@ import config from "../../config/config";
|
|||||||
* @see https://mall.gpxscs.cn/api/admin/shop/shop-product-base/saveProduct
|
* @see https://mall.gpxscs.cn/api/admin/shop/shop-product-base/saveProduct
|
||||||
*/
|
*/
|
||||||
|
|
||||||
export function UpdateCommodityInfo(params) {
|
export function UpdateCommodityInfo(data) {
|
||||||
return http({
|
return http({
|
||||||
url: "/shop/shop-product-base/saveProduct",
|
url: "/shop/shop-product-base/saveProduct",
|
||||||
method: "post",
|
method: "post",
|
||||||
baseURL: config.adminApi,
|
baseURL: config.adminApi,
|
||||||
headers: {
|
headers: {
|
||||||
"content-type": "application/x-www-form-urlencoded;charset=UTF-8",
|
"Content-Type": "application/x-www-form-urlencoded;charset=UTF-8",
|
||||||
},
|
},
|
||||||
params,
|
data,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -42,10 +42,7 @@ export function UpdateCommodityPriceAndQuantity(params) {
|
|||||||
url: "/shop/shop-product-item/editQuantity",
|
url: "/shop/shop-product-item/editQuantity",
|
||||||
method: "post",
|
method: "post",
|
||||||
baseURL: config.adminApi,
|
baseURL: config.adminApi,
|
||||||
headers: {
|
data: params,
|
||||||
"content-type": "application/x-www-form-urlencoded;charset=UTF-8",
|
|
||||||
},
|
|
||||||
params,
|
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
537
java-mall-app-shop-admin/components/tui-select/tui-select.vue
Normal file
537
java-mall-app-shop-admin/components/tui-select/tui-select.vue
Normal file
@ -0,0 +1,537 @@
|
|||||||
|
<template>
|
||||||
|
<view>
|
||||||
|
<view class="tui-select--mask" :class="{'tui-select--mask-show':show}" :style="getStyles" @tap.stop="maskClose">
|
||||||
|
</view>
|
||||||
|
<view class="tui-select--wrap" :class="{'tui-select--wrap-show':show}"
|
||||||
|
:style="{borderTopLeftRadius:radius+'rpx',borderTopRightRadius:radius+'rpx',background:background,zIndex:zIndex}">
|
||||||
|
<view class="tui-select--header"
|
||||||
|
:style="{background:background,borderTopLeftRadius:radius+'rpx',borderTopRightRadius:radius+'rpx'}">
|
||||||
|
<text class="tui-select--header-text"
|
||||||
|
:style="{fontSize:titleSize+'rpx',color:titleColor,fontWeight:fontWeight}">{{title}}</text>
|
||||||
|
<view class="tui-select--header-close" @tap.stop="handleClose">
|
||||||
|
<icon type="clear" color="#ccc" :size="16"></icon>
|
||||||
|
</view>
|
||||||
|
<view class="tui-select--header-line" :style="{background:dividerColor}"></view>
|
||||||
|
</view>
|
||||||
|
<scroll-view scroll-y class="tui-select--scroll" :show-scrollbar="false" :style="{height:height+'rpx'}">
|
||||||
|
<view class="tui-select--list">
|
||||||
|
<view class="tui-select--item" :style="{padding:padding}" @tap="itemClick(index)"
|
||||||
|
v-for="(model,index) in itemList" :key="index"
|
||||||
|
:class="{'tui-select--reverse':reverse,'tui-select--item-active':highlight && !model.disabled,'tui-select--disabled':model.disabled}">
|
||||||
|
<view class="tui-select--checkbox" :class="{'tui-select--is-checkmark ':isCheckMark}"
|
||||||
|
:style="{background:model[checkedField] && !isCheckMark ?getCheckboxColor:'transparent',borderColor:model[checkedField] && !isCheckMark ?getCheckboxColor:borderColor}">
|
||||||
|
<view class="tui-select--checkmark"
|
||||||
|
:style="{borderBottomColor:checkmarkColor,borderRightColor:checkmarkColor}"
|
||||||
|
v-if="model[checkedField]"></view>
|
||||||
|
</view>
|
||||||
|
<view class="tui-select--flex">
|
||||||
|
<view class="tui-select--icon-box"
|
||||||
|
:class="{'tui-select--icon-ml':!reverse,'tui-select--icon-mr':reverse}"
|
||||||
|
:style="{width:iconWidth+'rpx',height:iconWidth+'rpx',background:iconBgColor}"
|
||||||
|
v-if="model[srcField]">
|
||||||
|
<image :src="model[srcField]" :style="{width:iconWidth+'rpx',height:iconWidth+'rpx'}"
|
||||||
|
mode="scaleToFill"></image>
|
||||||
|
</view>
|
||||||
|
<text class="tui-select--item-text"
|
||||||
|
:class="{'tui-select--text-pl':!reverse,'tui-select--text-pr':reverse}"
|
||||||
|
:style="{fontSize:size+'rpx',color:color}">{{model[textField]}}</text>
|
||||||
|
</view>
|
||||||
|
<view v-if="dividerLine" class="tui-select--item-line"
|
||||||
|
:style="{background:dividerColor,left:reverse?0:bottomLeft+'rpx',right:reverse?bottomLeft+'rpx':0}">
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
<view class="tui-select--btn-wrap">
|
||||||
|
<view class="tui-select--btn" :style="{background:getBtnBackground}">
|
||||||
|
<text class="tui-select--btn" :class="['tui-select--btn-text']" :style="{color:btnColor}"
|
||||||
|
@tap.stop="handleClick">{{btnText}}</text>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</template>
|
||||||
|
|
||||||
|
<script>
|
||||||
|
export default {
|
||||||
|
name: "tui-select",
|
||||||
|
emits: ['confirm', 'close'],
|
||||||
|
props: {
|
||||||
|
show: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
list: {
|
||||||
|
type: Array,
|
||||||
|
default () {
|
||||||
|
return []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
textField: {
|
||||||
|
type: String,
|
||||||
|
default: 'text'
|
||||||
|
},
|
||||||
|
valueField: {
|
||||||
|
type: String,
|
||||||
|
default: 'value'
|
||||||
|
},
|
||||||
|
srcField: {
|
||||||
|
type: String,
|
||||||
|
default: 'src'
|
||||||
|
},
|
||||||
|
checkedField: {
|
||||||
|
type: String,
|
||||||
|
default: 'checked'
|
||||||
|
},
|
||||||
|
height: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 600
|
||||||
|
},
|
||||||
|
radius: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 24
|
||||||
|
},
|
||||||
|
title: {
|
||||||
|
type: String,
|
||||||
|
default: '请选择'
|
||||||
|
},
|
||||||
|
titleSize: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 32
|
||||||
|
},
|
||||||
|
titleColor: {
|
||||||
|
type: String,
|
||||||
|
default: '#333'
|
||||||
|
},
|
||||||
|
fontWeight: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 400
|
||||||
|
},
|
||||||
|
multiple: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
background: {
|
||||||
|
type: String,
|
||||||
|
default: '#fff'
|
||||||
|
},
|
||||||
|
padding: {
|
||||||
|
type: String,
|
||||||
|
default: '30rpx'
|
||||||
|
},
|
||||||
|
//选择框选中后颜色
|
||||||
|
checkboxColor: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
borderColor: {
|
||||||
|
type: String,
|
||||||
|
default: '#ccc'
|
||||||
|
},
|
||||||
|
isCheckMark: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
checkmarkColor: {
|
||||||
|
type: String,
|
||||||
|
default: '#fff'
|
||||||
|
},
|
||||||
|
reverse: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
dividerLine: {
|
||||||
|
type: Boolean,
|
||||||
|
default: true
|
||||||
|
},
|
||||||
|
dividerColor: {
|
||||||
|
type: String,
|
||||||
|
default: '#EEEEEE'
|
||||||
|
},
|
||||||
|
bottomLeft: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 30
|
||||||
|
},
|
||||||
|
highlight: {
|
||||||
|
type: Boolean,
|
||||||
|
default: true
|
||||||
|
},
|
||||||
|
iconWidth: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 48
|
||||||
|
},
|
||||||
|
//v2.9.0+
|
||||||
|
iconBgColor: {
|
||||||
|
type: String,
|
||||||
|
default: '#F8F8F8'
|
||||||
|
},
|
||||||
|
size: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 30
|
||||||
|
},
|
||||||
|
color: {
|
||||||
|
type: String,
|
||||||
|
default: '#333'
|
||||||
|
},
|
||||||
|
btnText: {
|
||||||
|
type: String,
|
||||||
|
default: '确定'
|
||||||
|
},
|
||||||
|
btnBackground: {
|
||||||
|
type: String,
|
||||||
|
default: ''
|
||||||
|
},
|
||||||
|
btnColor: {
|
||||||
|
type: String,
|
||||||
|
default: '#fff'
|
||||||
|
},
|
||||||
|
maskBackground: {
|
||||||
|
type: String,
|
||||||
|
default: 'rgba(0,0,0,.6)'
|
||||||
|
},
|
||||||
|
maskClosable: {
|
||||||
|
type: Boolean,
|
||||||
|
default: false
|
||||||
|
},
|
||||||
|
zIndex: {
|
||||||
|
type: [Number, String],
|
||||||
|
default: 1000
|
||||||
|
}
|
||||||
|
},
|
||||||
|
computed: {
|
||||||
|
getStyles() {
|
||||||
|
return `background:${this.maskBackground};z-index:${Number(this.zIndex)-1};`
|
||||||
|
},
|
||||||
|
getCheckboxColor() {
|
||||||
|
return this.checkboxColor || (uni && uni.$tui && uni.$tui.color.primary) || '#5677fc'
|
||||||
|
},
|
||||||
|
getBtnBackground() {
|
||||||
|
return this.btnBackground || (uni && uni.$tui && uni.$tui.color.primary) || '#5677fc'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
watch: {
|
||||||
|
list(newVal) {
|
||||||
|
this.initData(newVal)
|
||||||
|
}
|
||||||
|
},
|
||||||
|
data() {
|
||||||
|
return {
|
||||||
|
itemList: [],
|
||||||
|
index: -1
|
||||||
|
};
|
||||||
|
},
|
||||||
|
created() {
|
||||||
|
this.initData(this.list)
|
||||||
|
},
|
||||||
|
methods: {
|
||||||
|
initData(vals) {
|
||||||
|
vals = JSON.parse(JSON.stringify(vals))
|
||||||
|
if (vals && vals.length > 0) {
|
||||||
|
if (typeof vals[0] !== 'object') {
|
||||||
|
vals = vals.map(item => {
|
||||||
|
return {
|
||||||
|
[this.textField]: item,
|
||||||
|
[this.checkedField]: false,
|
||||||
|
disabled: false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
vals.map((item, index) => {
|
||||||
|
item[this.checkedField] = item[this.checkedField] || false
|
||||||
|
if (!this.multiple && item[this.checkedField]) {
|
||||||
|
this.index = index
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
this.itemList = vals;
|
||||||
|
}
|
||||||
|
},
|
||||||
|
itemClick(index) {
|
||||||
|
let vals = [...this.itemList]
|
||||||
|
let item = vals[index]
|
||||||
|
if (item && item.disabled) return;
|
||||||
|
if (this.multiple) {
|
||||||
|
item[this.checkedField] = !item[this.checkedField];
|
||||||
|
} else {
|
||||||
|
vals.forEach((item, idx) => {
|
||||||
|
if (index === idx) {
|
||||||
|
item[this.checkedField] = true
|
||||||
|
} else {
|
||||||
|
item[this.checkedField] = false
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.index = index
|
||||||
|
}
|
||||||
|
this.itemList = vals;
|
||||||
|
},
|
||||||
|
handleClick() {
|
||||||
|
if (this.multiple) {
|
||||||
|
let items = []
|
||||||
|
this.itemList.forEach((item, idx) => {
|
||||||
|
if (item[this.checkedField]) {
|
||||||
|
items.push(item)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
this.$emit('confirm', {
|
||||||
|
options: items
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
let index = this.index;
|
||||||
|
this.$emit('confirm', {
|
||||||
|
index: index,
|
||||||
|
options: index === -1 ? '' : this.list[index]
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
maskClose() {
|
||||||
|
if (!this.maskClosable) return;
|
||||||
|
this.handleClose()
|
||||||
|
},
|
||||||
|
handleClose() {
|
||||||
|
this.$emit('close', {})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
</script>
|
||||||
|
|
||||||
|
<style scoped>
|
||||||
|
.tui-select--mask {
|
||||||
|
position: fixed;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
top: 0;
|
||||||
|
bottom: 0;
|
||||||
|
transition: all ease-in-out .3s;
|
||||||
|
visibility: hidden;
|
||||||
|
opacity: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--mask-show {
|
||||||
|
opacity: 1;
|
||||||
|
visibility: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--wrap {
|
||||||
|
position: fixed;
|
||||||
|
left: 0;
|
||||||
|
right: 0;
|
||||||
|
bottom: 0;
|
||||||
|
width: 100%;
|
||||||
|
transform: translate3d(0, 100%, 0);
|
||||||
|
transition: all 0.3s ease-in-out;
|
||||||
|
min-height: 20rpx;
|
||||||
|
opacity: 0;
|
||||||
|
visibility: hidden;
|
||||||
|
padding-bottom: constant(safe-area-inset-bottom);
|
||||||
|
padding-bottom: env(safe-area-inset-bottom);
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--wrap-show {
|
||||||
|
transform: translate3d(0, 0, 0);
|
||||||
|
opacity: 1;
|
||||||
|
visibility: visible;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--scroll {
|
||||||
|
width: 100%;
|
||||||
|
flex: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--list {
|
||||||
|
width: 100%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--item {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
box-sizing: border-box;
|
||||||
|
flex: 1;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
position: relative;
|
||||||
|
/* #ifdef H5 */
|
||||||
|
cursor: pointer;
|
||||||
|
/* #endif */
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--disabled {
|
||||||
|
opacity: .5;
|
||||||
|
/* #ifdef H5 */
|
||||||
|
cursor: not-allowed;
|
||||||
|
/* #endif */
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--item-line {
|
||||||
|
position: absolute;
|
||||||
|
bottom: 0;
|
||||||
|
height: 1px;
|
||||||
|
-webkit-transform: scaleY(0.5);
|
||||||
|
transform: scaleY(0.5);
|
||||||
|
transform-origin: 0 100%;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--item-active:active {
|
||||||
|
background: rgba(0, 0, 0, .2);
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--flex {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
box-sizing: border-box;
|
||||||
|
flex: 1;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--reverse {
|
||||||
|
justify-content: space-between;
|
||||||
|
flex-direction: row-reverse;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--checkbox {
|
||||||
|
font-size: 0;
|
||||||
|
color: rgba(0, 0, 0, 0);
|
||||||
|
width: 40rpx;
|
||||||
|
height: 40rpx;
|
||||||
|
border-width: 1px;
|
||||||
|
border-style: solid;
|
||||||
|
display: inline-flex;
|
||||||
|
box-sizing: border-box;
|
||||||
|
border-radius: 50%;
|
||||||
|
vertical-align: top;
|
||||||
|
flex-shrink: 0;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
overflow: hidden;
|
||||||
|
position: relative;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--is-checkmark {
|
||||||
|
border-width: 0 !important;
|
||||||
|
background: transparent !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--checkmark {
|
||||||
|
width: 20rpx;
|
||||||
|
height: 40rpx;
|
||||||
|
border-bottom-style: solid;
|
||||||
|
border-bottom-width: 3px;
|
||||||
|
border-bottom-color: #FFFFFF;
|
||||||
|
border-right-style: solid;
|
||||||
|
border-right-width: 3px;
|
||||||
|
border-right-color: #FFFFFF;
|
||||||
|
box-sizing: border-box;
|
||||||
|
transform: rotate(45deg) scale(0.5) translateZ(0);
|
||||||
|
transform-origin: 54% 48%;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--item-text {
|
||||||
|
word-break: break-all;
|
||||||
|
font-weight: normal;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--text-pl {
|
||||||
|
padding-left: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--text-pr {
|
||||||
|
padding-right: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--icon-box {
|
||||||
|
overflow: hidden;
|
||||||
|
background-color: #F8F8F8;
|
||||||
|
flex-shrink: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--icon-ml {
|
||||||
|
margin-left: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--icon-mr {
|
||||||
|
margin-right: 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--header {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex: 1;
|
||||||
|
height: 98rpx;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--header-line {
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
bottom: 0;
|
||||||
|
right: 0;
|
||||||
|
height: 1px;
|
||||||
|
-webkit-transform: scaleY(0.5);
|
||||||
|
transform: scaleY(0.5);
|
||||||
|
transform-origin: 0 100%;
|
||||||
|
z-index: 1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--header-text {
|
||||||
|
text-align: center;
|
||||||
|
width: 100%;
|
||||||
|
white-space: nowrap;
|
||||||
|
overflow: hidden;
|
||||||
|
box-sizing: border-box;
|
||||||
|
text-overflow: ellipsis;
|
||||||
|
flex: 1;
|
||||||
|
padding: 0 88rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--header-close {
|
||||||
|
width: 50rpx;
|
||||||
|
height: 50rpx;
|
||||||
|
position: absolute;
|
||||||
|
right: 32rpx;
|
||||||
|
top: 24rpx;
|
||||||
|
text-align: right;
|
||||||
|
/* #ifdef H5 */
|
||||||
|
cursor: pointer;
|
||||||
|
/* #endif */
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--btn-wrap {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
box-sizing: border-box;
|
||||||
|
flex: 1;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
padding: 32rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--btn {
|
||||||
|
width: 100%;
|
||||||
|
display: flex;
|
||||||
|
flex: 1;
|
||||||
|
flex-direction: row;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
height: 84rpx;
|
||||||
|
border-radius: 44rpx;
|
||||||
|
/* #ifdef H5 */
|
||||||
|
cursor: pointer;
|
||||||
|
/* #endif */
|
||||||
|
font-size: 30rpx;
|
||||||
|
font-weight: normal;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.tui-select--btn-text:active {
|
||||||
|
background: rgba(0, 0, 0, .2);
|
||||||
|
}
|
||||||
|
</style>
|
||||||
@ -23,7 +23,8 @@
|
|||||||
"Camera" : {},
|
"Camera" : {},
|
||||||
"Record" : {},
|
"Record" : {},
|
||||||
"VideoPlayer" : {},
|
"VideoPlayer" : {},
|
||||||
"UIWebview" : {}
|
"UIWebview" : {},
|
||||||
|
"Push" : {}
|
||||||
},
|
},
|
||||||
/* 应用发布信息 */
|
/* 应用发布信息 */
|
||||||
"distribute" : {
|
"distribute" : {
|
||||||
@ -62,7 +63,15 @@
|
|||||||
},
|
},
|
||||||
/* SDK配置 */
|
/* SDK配置 */
|
||||||
"sdkConfigs" : {
|
"sdkConfigs" : {
|
||||||
"maps" : {}
|
"maps" : {},
|
||||||
|
"push" : {
|
||||||
|
"unipush" : {
|
||||||
|
"version" : "2",
|
||||||
|
"offline" : false,
|
||||||
|
"appid": "rQxaGAKl7t83KlTubAaKC3",
|
||||||
|
"appkey": "QSElTn6ttq5nmrIZtFhCT"
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
"icons" : {
|
"icons" : {
|
||||||
"android" : {
|
"android" : {
|
||||||
|
|||||||
404
java-mall-app-shop-admin/package-lock.json
generated
404
java-mall-app-shop-admin/package-lock.json
generated
@ -7,7 +7,8 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"axios": "^0.27.2",
|
"axios": "^0.27.2",
|
||||||
"axios-adapter-uniapp": "^0.1.4",
|
"axios-adapter-uniapp": "^0.1.4",
|
||||||
"lodash": "^4.17.21"
|
"lodash": "^4.17.21",
|
||||||
|
"qs": "^6.14.0"
|
||||||
},
|
},
|
||||||
"devDependencies": {
|
"devDependencies": {
|
||||||
"sass": "^1.80.6",
|
"sass": "^1.80.6",
|
||||||
@ -345,6 +346,33 @@
|
|||||||
"node": ">=8"
|
"node": ">=8"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/call-bind-apply-helpers": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
|
||||||
|
"integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"function-bind": "^1.1.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/call-bound": {
|
||||||
|
"version": "1.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
|
||||||
|
"integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
|
||||||
|
"dependencies": {
|
||||||
|
"call-bind-apply-helpers": "^1.0.2",
|
||||||
|
"get-intrinsic": "^1.3.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/chokidar": {
|
"node_modules/chokidar": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/chokidar/-/chokidar-4.0.1.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/chokidar/-/chokidar-4.0.1.tgz",
|
||||||
@ -392,6 +420,46 @@
|
|||||||
"node": ">=0.10"
|
"node": ">=0.10"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/dunder-proto": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
|
||||||
|
"dependencies": {
|
||||||
|
"call-bind-apply-helpers": "^1.0.1",
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"gopd": "^1.2.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/es-define-property": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/es-errors": {
|
||||||
|
"version": "1.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
|
||||||
|
"integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/es-object-atoms": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
|
||||||
|
"dependencies": {
|
||||||
|
"es-errors": "^1.3.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/fill-range": {
|
"node_modules/fill-range": {
|
||||||
"version": "7.1.1",
|
"version": "7.1.1",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/fill-range/-/fill-range-7.1.1.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/fill-range/-/fill-range-7.1.1.tgz",
|
||||||
@ -437,6 +505,82 @@
|
|||||||
"node": ">= 6"
|
"node": ">= 6"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/function-bind": {
|
||||||
|
"version": "1.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
|
||||||
|
"integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==",
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/get-intrinsic": {
|
||||||
|
"version": "1.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
|
||||||
|
"integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"call-bind-apply-helpers": "^1.0.2",
|
||||||
|
"es-define-property": "^1.0.1",
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"es-object-atoms": "^1.1.1",
|
||||||
|
"function-bind": "^1.1.2",
|
||||||
|
"get-proto": "^1.0.1",
|
||||||
|
"gopd": "^1.2.0",
|
||||||
|
"has-symbols": "^1.1.0",
|
||||||
|
"hasown": "^2.0.2",
|
||||||
|
"math-intrinsics": "^1.1.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/get-proto": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
|
||||||
|
"dependencies": {
|
||||||
|
"dunder-proto": "^1.0.1",
|
||||||
|
"es-object-atoms": "^1.0.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/gopd": {
|
||||||
|
"version": "1.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
|
||||||
|
"integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/has-symbols": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/hasown": {
|
||||||
|
"version": "2.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
|
||||||
|
"integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
|
||||||
|
"dependencies": {
|
||||||
|
"function-bind": "^1.1.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/immutable": {
|
"node_modules/immutable": {
|
||||||
"version": "4.3.7",
|
"version": "4.3.7",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/immutable/-/immutable-4.3.7.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/immutable/-/immutable-4.3.7.tgz",
|
||||||
@ -482,6 +626,14 @@
|
|||||||
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
|
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==",
|
||||||
"license": "MIT"
|
"license": "MIT"
|
||||||
},
|
},
|
||||||
|
"node_modules/math-intrinsics": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/micromatch": {
|
"node_modules/micromatch": {
|
||||||
"version": "4.0.8",
|
"version": "4.0.8",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/micromatch/-/micromatch-4.0.8.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/micromatch/-/micromatch-4.0.8.tgz",
|
||||||
@ -528,6 +680,17 @@
|
|||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
"node_modules/object-inspect": {
|
||||||
|
"version": "1.13.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
|
||||||
|
"integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew==",
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/picomatch": {
|
"node_modules/picomatch": {
|
||||||
"version": "2.3.1",
|
"version": "2.3.1",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/picomatch/-/picomatch-2.3.1.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/picomatch/-/picomatch-2.3.1.tgz",
|
||||||
@ -541,6 +704,20 @@
|
|||||||
"url": "https://github.com/sponsors/jonschlinkert"
|
"url": "https://github.com/sponsors/jonschlinkert"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/qs": {
|
||||||
|
"version": "6.14.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz",
|
||||||
|
"integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==",
|
||||||
|
"dependencies": {
|
||||||
|
"side-channel": "^1.1.0"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">=0.6"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/readdirp": {
|
"node_modules/readdirp": {
|
||||||
"version": "4.0.2",
|
"version": "4.0.2",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/readdirp/-/readdirp-4.0.2.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/readdirp/-/readdirp-4.0.2.tgz",
|
||||||
@ -614,6 +791,74 @@
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"node_modules/side-channel": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==",
|
||||||
|
"dependencies": {
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"object-inspect": "^1.13.3",
|
||||||
|
"side-channel-list": "^1.0.0",
|
||||||
|
"side-channel-map": "^1.0.1",
|
||||||
|
"side-channel-weakmap": "^1.0.2"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/side-channel-list": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==",
|
||||||
|
"dependencies": {
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"object-inspect": "^1.13.3"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/side-channel-map": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
|
||||||
|
"dependencies": {
|
||||||
|
"call-bound": "^1.0.2",
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"get-intrinsic": "^1.2.5",
|
||||||
|
"object-inspect": "^1.13.3"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"node_modules/side-channel-weakmap": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
|
||||||
|
"integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
|
||||||
|
"dependencies": {
|
||||||
|
"call-bound": "^1.0.2",
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"get-intrinsic": "^1.2.5",
|
||||||
|
"object-inspect": "^1.13.3",
|
||||||
|
"side-channel-map": "^1.0.1"
|
||||||
|
},
|
||||||
|
"engines": {
|
||||||
|
"node": ">= 0.4"
|
||||||
|
},
|
||||||
|
"funding": {
|
||||||
|
"url": "https://github.com/sponsors/ljharb"
|
||||||
|
}
|
||||||
|
},
|
||||||
"node_modules/source-map-js": {
|
"node_modules/source-map-js": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.1",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/source-map-js/-/source-map-js-1.2.1.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/source-map-js/-/source-map-js-1.2.1.tgz",
|
||||||
@ -787,6 +1032,24 @@
|
|||||||
"fill-range": "^7.1.1"
|
"fill-range": "^7.1.1"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"call-bind-apply-helpers": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/call-bind-apply-helpers/-/call-bind-apply-helpers-1.0.2.tgz",
|
||||||
|
"integrity": "sha512-Sp1ablJ0ivDkSzjcaJdxEunN5/XvksFJ2sMBFfq6x0ryhQV/2b/KwFe21cMpmHtPOSij8K99/wSfoEuTObmuMQ==",
|
||||||
|
"requires": {
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"function-bind": "^1.1.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"call-bound": {
|
||||||
|
"version": "1.0.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/call-bound/-/call-bound-1.0.4.tgz",
|
||||||
|
"integrity": "sha512-+ys997U96po4Kx/ABpBCqhA9EuxJaQWDQg7295H4hBphv3IZg0boBKuwYpt4YXp6MZ5AmZQnU/tyMTlRpaSejg==",
|
||||||
|
"requires": {
|
||||||
|
"call-bind-apply-helpers": "^1.0.2",
|
||||||
|
"get-intrinsic": "^1.3.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"chokidar": {
|
"chokidar": {
|
||||||
"version": "4.0.1",
|
"version": "4.0.1",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/chokidar/-/chokidar-4.0.1.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/chokidar/-/chokidar-4.0.1.tgz",
|
||||||
@ -816,6 +1079,34 @@
|
|||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
"dunder-proto": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/dunder-proto/-/dunder-proto-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-KIN/nDJBQRcXw0MLVhZE9iQHmG68qAVIBg9CqmUYjmQIhgij9U5MFvrqkUL5FbtyyzZuOeOt0zdeRe4UY7ct+A==",
|
||||||
|
"requires": {
|
||||||
|
"call-bind-apply-helpers": "^1.0.1",
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"gopd": "^1.2.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"es-define-property": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/es-define-property/-/es-define-property-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g=="
|
||||||
|
},
|
||||||
|
"es-errors": {
|
||||||
|
"version": "1.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/es-errors/-/es-errors-1.3.0.tgz",
|
||||||
|
"integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw=="
|
||||||
|
},
|
||||||
|
"es-object-atoms": {
|
||||||
|
"version": "1.1.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/es-object-atoms/-/es-object-atoms-1.1.1.tgz",
|
||||||
|
"integrity": "sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==",
|
||||||
|
"requires": {
|
||||||
|
"es-errors": "^1.3.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"fill-range": {
|
"fill-range": {
|
||||||
"version": "7.1.1",
|
"version": "7.1.1",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/fill-range/-/fill-range-7.1.1.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/fill-range/-/fill-range-7.1.1.tgz",
|
||||||
@ -841,6 +1132,55 @@
|
|||||||
"mime-types": "^2.1.12"
|
"mime-types": "^2.1.12"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"function-bind": {
|
||||||
|
"version": "1.1.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz",
|
||||||
|
"integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA=="
|
||||||
|
},
|
||||||
|
"get-intrinsic": {
|
||||||
|
"version": "1.3.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/get-intrinsic/-/get-intrinsic-1.3.0.tgz",
|
||||||
|
"integrity": "sha512-9fSjSaos/fRIVIp+xSJlE6lfwhES7LNtKaCBIamHsjr2na1BiABJPo0mOjjz8GJDURarmCPGqaiVg5mfjb98CQ==",
|
||||||
|
"requires": {
|
||||||
|
"call-bind-apply-helpers": "^1.0.2",
|
||||||
|
"es-define-property": "^1.0.1",
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"es-object-atoms": "^1.1.1",
|
||||||
|
"function-bind": "^1.1.2",
|
||||||
|
"get-proto": "^1.0.1",
|
||||||
|
"gopd": "^1.2.0",
|
||||||
|
"has-symbols": "^1.1.0",
|
||||||
|
"hasown": "^2.0.2",
|
||||||
|
"math-intrinsics": "^1.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"get-proto": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/get-proto/-/get-proto-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-sTSfBjoXBp89JvIKIefqw7U2CCebsc74kiY6awiGogKtoSGbgjYE/G/+l9sF3MWFPNc9IcoOC4ODfKHfxFmp0g==",
|
||||||
|
"requires": {
|
||||||
|
"dunder-proto": "^1.0.1",
|
||||||
|
"es-object-atoms": "^1.0.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"gopd": {
|
||||||
|
"version": "1.2.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/gopd/-/gopd-1.2.0.tgz",
|
||||||
|
"integrity": "sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg=="
|
||||||
|
},
|
||||||
|
"has-symbols": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/has-symbols/-/has-symbols-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ=="
|
||||||
|
},
|
||||||
|
"hasown": {
|
||||||
|
"version": "2.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz",
|
||||||
|
"integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==",
|
||||||
|
"requires": {
|
||||||
|
"function-bind": "^1.1.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
"immutable": {
|
"immutable": {
|
||||||
"version": "4.3.7",
|
"version": "4.3.7",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/immutable/-/immutable-4.3.7.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/immutable/-/immutable-4.3.7.tgz",
|
||||||
@ -876,6 +1216,11 @@
|
|||||||
"resolved": "http://npm.ifengqun.com:4873/lodash/-/lodash-4.17.21.tgz",
|
"resolved": "http://npm.ifengqun.com:4873/lodash/-/lodash-4.17.21.tgz",
|
||||||
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
|
"integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg=="
|
||||||
},
|
},
|
||||||
|
"math-intrinsics": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/math-intrinsics/-/math-intrinsics-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-/IXtbwEk5HTPyEwyKX6hGkYXxM9nbj64B+ilVJnC/R6B0pH5G4V3b0pVbL7DBj4tkhBAppbQUlf6F6Xl9LHu1g=="
|
||||||
|
},
|
||||||
"micromatch": {
|
"micromatch": {
|
||||||
"version": "4.0.8",
|
"version": "4.0.8",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/micromatch/-/micromatch-4.0.8.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/micromatch/-/micromatch-4.0.8.tgz",
|
||||||
@ -913,6 +1258,11 @@
|
|||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
"object-inspect": {
|
||||||
|
"version": "1.13.4",
|
||||||
|
"resolved": "https://registry.npmjs.org/object-inspect/-/object-inspect-1.13.4.tgz",
|
||||||
|
"integrity": "sha512-W67iLl4J2EXEGTbfeHCffrjDfitvLANg0UlX3wFUUSTx92KXRFegMHUVgSqE+wvhAbi4WqjGg9czysTV2Epbew=="
|
||||||
|
},
|
||||||
"picomatch": {
|
"picomatch": {
|
||||||
"version": "2.3.1",
|
"version": "2.3.1",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/picomatch/-/picomatch-2.3.1.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/picomatch/-/picomatch-2.3.1.tgz",
|
||||||
@ -920,6 +1270,14 @@
|
|||||||
"dev": true,
|
"dev": true,
|
||||||
"optional": true
|
"optional": true
|
||||||
},
|
},
|
||||||
|
"qs": {
|
||||||
|
"version": "6.14.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/qs/-/qs-6.14.0.tgz",
|
||||||
|
"integrity": "sha512-YWWTjgABSKcvs/nWBi9PycY/JiPJqOD4JA6o9Sej2AtvSGarXxKC3OQSk4pAarbdQlKAh5D4FCQkJNkW+GAn3w==",
|
||||||
|
"requires": {
|
||||||
|
"side-channel": "^1.1.0"
|
||||||
|
}
|
||||||
|
},
|
||||||
"readdirp": {
|
"readdirp": {
|
||||||
"version": "4.0.2",
|
"version": "4.0.2",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/readdirp/-/readdirp-4.0.2.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/readdirp/-/readdirp-4.0.2.tgz",
|
||||||
@ -947,6 +1305,50 @@
|
|||||||
"neo-async": "^2.6.2"
|
"neo-async": "^2.6.2"
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
|
"side-channel": {
|
||||||
|
"version": "1.1.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/side-channel/-/side-channel-1.1.0.tgz",
|
||||||
|
"integrity": "sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==",
|
||||||
|
"requires": {
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"object-inspect": "^1.13.3",
|
||||||
|
"side-channel-list": "^1.0.0",
|
||||||
|
"side-channel-map": "^1.0.1",
|
||||||
|
"side-channel-weakmap": "^1.0.2"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"side-channel-list": {
|
||||||
|
"version": "1.0.0",
|
||||||
|
"resolved": "https://registry.npmjs.org/side-channel-list/-/side-channel-list-1.0.0.tgz",
|
||||||
|
"integrity": "sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==",
|
||||||
|
"requires": {
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"object-inspect": "^1.13.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"side-channel-map": {
|
||||||
|
"version": "1.0.1",
|
||||||
|
"resolved": "https://registry.npmjs.org/side-channel-map/-/side-channel-map-1.0.1.tgz",
|
||||||
|
"integrity": "sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==",
|
||||||
|
"requires": {
|
||||||
|
"call-bound": "^1.0.2",
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"get-intrinsic": "^1.2.5",
|
||||||
|
"object-inspect": "^1.13.3"
|
||||||
|
}
|
||||||
|
},
|
||||||
|
"side-channel-weakmap": {
|
||||||
|
"version": "1.0.2",
|
||||||
|
"resolved": "https://registry.npmjs.org/side-channel-weakmap/-/side-channel-weakmap-1.0.2.tgz",
|
||||||
|
"integrity": "sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==",
|
||||||
|
"requires": {
|
||||||
|
"call-bound": "^1.0.2",
|
||||||
|
"es-errors": "^1.3.0",
|
||||||
|
"get-intrinsic": "^1.2.5",
|
||||||
|
"object-inspect": "^1.13.3",
|
||||||
|
"side-channel-map": "^1.0.1"
|
||||||
|
}
|
||||||
|
},
|
||||||
"source-map-js": {
|
"source-map-js": {
|
||||||
"version": "1.2.1",
|
"version": "1.2.1",
|
||||||
"resolved": "https://mirrors.tencent.com/npm/source-map-js/-/source-map-js-1.2.1.tgz",
|
"resolved": "https://mirrors.tencent.com/npm/source-map-js/-/source-map-js-1.2.1.tgz",
|
||||||
|
|||||||
@ -6,6 +6,7 @@
|
|||||||
"dependencies": {
|
"dependencies": {
|
||||||
"axios": "^0.27.2",
|
"axios": "^0.27.2",
|
||||||
"axios-adapter-uniapp": "^0.1.4",
|
"axios-adapter-uniapp": "^0.1.4",
|
||||||
"lodash": "^4.17.21"
|
"lodash": "^4.17.21",
|
||||||
|
"qs": "^6.14.0"
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@ -257,7 +257,13 @@
|
|||||||
<view class="time" v-if="auditInfo.approval_status != 4">
|
<view class="time" v-if="auditInfo.approval_status != 4">
|
||||||
申请时间:{{ auditInfo.created_at }}
|
申请时间:{{ auditInfo.created_at }}
|
||||||
</view>
|
</view>
|
||||||
<u-form :model="form" class="form" ref="uForm" label-width="70">
|
<u-form
|
||||||
|
:model="form"
|
||||||
|
class="form"
|
||||||
|
ref="uForm"
|
||||||
|
label-width="70"
|
||||||
|
v-if="auditInfo.approval_invalid_col.length > 0"
|
||||||
|
>
|
||||||
<u-form-item
|
<u-form-item
|
||||||
:label="item.label"
|
:label="item.label"
|
||||||
:prop="item.key"
|
:prop="item.key"
|
||||||
@ -1374,6 +1380,10 @@ export default {
|
|||||||
});
|
});
|
||||||
},
|
},
|
||||||
loginOut() {
|
loginOut() {
|
||||||
|
// uni.switchTab({
|
||||||
|
// url: "/pages/order/order",
|
||||||
|
// });
|
||||||
|
|
||||||
this.$store.dispatch("user/LoginOut");
|
this.$store.dispatch("user/LoginOut");
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
|
|||||||
@ -52,11 +52,12 @@
|
|||||||
shopStatus == 1 ? '#D8F1EC' : shopStatus == 2 ? '#ffecf2' : '#eee',
|
shopStatus == 1 ? '#D8F1EC' : shopStatus == 2 ? '#ffecf2' : '#eee',
|
||||||
}"
|
}"
|
||||||
>
|
>
|
||||||
<u-cell-group :border="false">
|
<u-cell-group :border="false" handleShowTime="">
|
||||||
<u-cell
|
<u-cell
|
||||||
@click="handleShowTime"
|
@click=""
|
||||||
iconStyle="marginRight:6px; color: #279B8B;"
|
iconStyle="marginRight:6px; color: #279B8B;"
|
||||||
:border="false"
|
:border="false"
|
||||||
|
url="/pages/my/storeBusinessStatus/businessStatus"
|
||||||
isLink
|
isLink
|
||||||
icon="hourglass-half-fill"
|
icon="hourglass-half-fill"
|
||||||
title="营业中"
|
title="营业中"
|
||||||
@ -66,7 +67,7 @@
|
|||||||
iconStyle="marginRight:6px; color: #fe411b"
|
iconStyle="marginRight:6px; color: #fe411b"
|
||||||
:border="false"
|
:border="false"
|
||||||
isLink
|
isLink
|
||||||
url="/pages/my/shopQRcode/shopQRcode"
|
url="/pages/my/storeBusinessStatus/businessStatus"
|
||||||
icon="hourglass-half-fill"
|
icon="hourglass-half-fill"
|
||||||
title="已停业"
|
title="已停业"
|
||||||
v-if="shopStatus == 2"
|
v-if="shopStatus == 2"
|
||||||
@ -75,7 +76,7 @@
|
|||||||
iconStyle="marginRight:6px; color: #666"
|
iconStyle="marginRight:6px; color: #666"
|
||||||
:border="false"
|
:border="false"
|
||||||
isLink
|
isLink
|
||||||
url="/pages/my/shopQRcode/shopQRcode"
|
url="/pages/my/storeBusinessStatus/businessStatus"
|
||||||
icon="hourglass-half-fill"
|
icon="hourglass-half-fill"
|
||||||
title="已打烊"
|
title="已打烊"
|
||||||
v-if="shopStatus == 3"
|
v-if="shopStatus == 3"
|
||||||
@ -277,11 +278,32 @@ export default {
|
|||||||
url: "/pages/my/shopInfo",
|
url: "/pages/my/shopInfo",
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
|
|
||||||
toServices() {
|
toServices() {
|
||||||
// uni.navigateTo({
|
let item = {
|
||||||
// url: "/pages/my/shopInfo",
|
user_friend_id: 36,
|
||||||
// });
|
user_id: 10001,
|
||||||
|
friend_id: 10001,
|
||||||
|
friend_note: "",
|
||||||
|
user_friend_addtime: "2025-05-09 10:03:33",
|
||||||
|
friend_state: 2,
|
||||||
|
friend_invite: 2,
|
||||||
|
username: "系统客服",
|
||||||
|
avatar:
|
||||||
|
"https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/media/media/plantform/20250307/c4cab676e06a49b282c2cbbe481f0fa1.png",
|
||||||
|
sign: "",
|
||||||
|
level_name: "v1",
|
||||||
|
user_nickname: "系统客服",
|
||||||
|
user_avatar:
|
||||||
|
"https://media-mall-prod-1259811287.cos.ap-guangzhou.myqcloud.com/media/media/plantform/20250307/c4cab676e06a49b282c2cbbe481f0fa1.png",
|
||||||
|
user_sign: "",
|
||||||
|
user_level_name: "v1",
|
||||||
|
rid: 2,
|
||||||
|
id: 776395489,
|
||||||
|
};
|
||||||
|
|
||||||
|
uni.navigateTo({
|
||||||
|
url: `/pages/IM/IMmsgContent?item=${JSON.stringify(item)}`,
|
||||||
|
});
|
||||||
},
|
},
|
||||||
outLogin() {
|
outLogin() {
|
||||||
this.$store.dispatch("user/LoginOut");
|
this.$store.dispatch("user/LoginOut");
|
||||||
|
|||||||
@ -29,7 +29,15 @@
|
|||||||
dashboardInfo.store_info.store_biz_state == 1 ? "营业中" : "停业中"
|
dashboardInfo.store_info.store_biz_state == 1 ? "营业中" : "停业中"
|
||||||
}}
|
}}
|
||||||
</view>
|
</view>
|
||||||
<view class="tips">本店停业中,不会自动恢复营业。</view>
|
<view class="tips" v-if="dashboardInfo.store_info.store_biz_state != 1">
|
||||||
|
本店停业中,不会自动恢复营业。
|
||||||
|
</view>
|
||||||
|
<view
|
||||||
|
class="tips"
|
||||||
|
v-else="dashboardInfo.store_info.store_biz_state != 1"
|
||||||
|
>
|
||||||
|
本店目前正常营业中。
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="business-box">
|
<view class="business-box">
|
||||||
<u-cell-group :border="false" class="business-time-content">
|
<u-cell-group :border="false" class="business-time-content">
|
||||||
|
|||||||
@ -122,7 +122,7 @@
|
|||||||
<view class="order-num-block">
|
<view class="order-num-block">
|
||||||
<view class="order-serial-num">
|
<view class="order-serial-num">
|
||||||
#
|
#
|
||||||
<text
|
<block
|
||||||
style="
|
style="
|
||||||
font-size: 46rpx;
|
font-size: 46rpx;
|
||||||
padding-left: 4rpx;
|
padding-left: 4rpx;
|
||||||
@ -130,7 +130,7 @@
|
|||||||
"
|
"
|
||||||
>
|
>
|
||||||
{{ item.orderNum }}
|
{{ item.orderNum }}
|
||||||
</text>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
<view class="delivery-status">
|
<view class="delivery-status">
|
||||||
{{ sfFormatStatus(item.order_state_id) }}
|
{{ sfFormatStatus(item.order_state_id) }}
|
||||||
@ -163,9 +163,16 @@
|
|||||||
<view class="picking-info">
|
<view class="picking-info">
|
||||||
<view class="picking-status">
|
<view class="picking-status">
|
||||||
<view class="picking-name">拣货中</view>
|
<view class="picking-name">拣货中</view>
|
||||||
<view class="picking-time">已用时 03:54</view>
|
<view class="picking-time">
|
||||||
|
{{ getRemainingTime(item.arrival_time) }}
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<u-button class="picking-btn">拣货完成</u-button>
|
<u-button
|
||||||
|
class="picking-btn"
|
||||||
|
@click="handerShowOrderPickingPopup(item)"
|
||||||
|
>
|
||||||
|
拣货完成
|
||||||
|
</u-button>
|
||||||
</view>
|
</view>
|
||||||
<view class="delivery-status-info">
|
<view class="delivery-status-info">
|
||||||
<view class="delivery-status">
|
<view class="delivery-status">
|
||||||
@ -174,17 +181,17 @@
|
|||||||
<view class="delivery-num">{{ item.order_pickup_num_str }}</view>
|
<view class="delivery-num">{{ item.order_pickup_num_str }}</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="order-remark">
|
<view class="order-remark">
|
||||||
<text style="color: #fff; font-weight: bold">备注:</text>
|
<block style="color: #fff; font-weight: bold">备注:</block>
|
||||||
<text style="color: #fff">
|
<block style="color: #fff">
|
||||||
{{ item.buyer_info.order_message }}
|
{{ item.buyer_info.order_message }}
|
||||||
</text>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
<view class="commodity-info-block">
|
<view class="commodity-info-block">
|
||||||
<view class="commodity-num">
|
<view class="commodity-num">
|
||||||
<text style="font-size: 36rpx">
|
<block style="font-size: 36rpx">
|
||||||
{{ item.order_items.length || 0 }}
|
{{ item.order_items.length || 0 }}
|
||||||
</text>
|
</block>
|
||||||
<text>件商品</text>
|
<block>件商品</block>
|
||||||
</view>
|
</view>
|
||||||
<view
|
<view
|
||||||
class="commodity-info"
|
class="commodity-info"
|
||||||
@ -199,22 +206,24 @@
|
|||||||
<view class="commodity-name">{{ group.item_name || 0 }}</view>
|
<view class="commodity-name">{{ group.item_name || 0 }}</view>
|
||||||
<view class="commodity-barcode">
|
<view class="commodity-barcode">
|
||||||
条码
|
条码
|
||||||
<text style="padding-left: 8rpx">
|
<block style="padding-left: 8rpx">
|
||||||
{{ group.item_barcode || 0 }}
|
{{ group.item_barcode || 0 }}
|
||||||
</text>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
<view class="commodity-specification">
|
<view class="commodity-specification">
|
||||||
规格
|
规格
|
||||||
<text style="padding-left: 8rpx">
|
<block style="padding-left: 8rpx">
|
||||||
{{ group.specification || 0 }}
|
{{ group.specification || 0 }}
|
||||||
</text>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="commodity-num">
|
<view class="commodity-num">
|
||||||
X
|
<view class="">
|
||||||
<text style="padding-left: 8rpx">
|
X
|
||||||
{{ group.order_item_quantity || 0 }}
|
<text style="padding-left: 8rpx">
|
||||||
</text>
|
{{ group.order_item_quantity || 0 }}
|
||||||
|
</text>
|
||||||
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="commodity-price">
|
<view class="commodity-price">
|
||||||
¥{{ group.order_item_amount || 0 }}
|
¥{{ group.order_item_amount || 0 }}
|
||||||
@ -238,14 +247,14 @@
|
|||||||
style="color: #333333; font-weight: 700"
|
style="color: #333333; font-weight: 700"
|
||||||
>
|
>
|
||||||
商家活动支付
|
商家活动支付
|
||||||
<text>
|
<block>
|
||||||
<u-icon
|
<u-icon
|
||||||
style="display: inline-block; margin-left: 8rpx"
|
style="display: inline-block; margin-left: 8rpx"
|
||||||
name="question-circle"
|
name="question-circle"
|
||||||
size="12"
|
size="12"
|
||||||
color="aaaaaa"
|
color="aaaaaa"
|
||||||
></u-icon>
|
></u-icon>
|
||||||
</text>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
<view class="cost-info-num">
|
<view class="cost-info-num">
|
||||||
¥{{ item.order_discount_amount }}
|
¥{{ item.order_discount_amount }}
|
||||||
@ -257,14 +266,14 @@
|
|||||||
style="color: #333333; font-weight: 700"
|
style="color: #333333; font-weight: 700"
|
||||||
>
|
>
|
||||||
平台服务费
|
平台服务费
|
||||||
<text>
|
<block>
|
||||||
<u-icon
|
<u-icon
|
||||||
style="display: inline-block; margin-left: 8rpx"
|
style="display: inline-block; margin-left: 8rpx"
|
||||||
name="question-circle"
|
name="question-circle"
|
||||||
size="12"
|
size="12"
|
||||||
color="#aaaaaa"
|
color="#aaaaaa"
|
||||||
></u-icon>
|
></u-icon>
|
||||||
</text>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
<view class="cost-info-num">¥{{ item.platform_fee }}</view>
|
<view class="cost-info-num">¥{{ item.platform_fee }}</view>
|
||||||
</view>
|
</view>
|
||||||
@ -274,40 +283,47 @@
|
|||||||
style="color: #333333; font-weight: 700"
|
style="color: #333333; font-weight: 700"
|
||||||
>
|
>
|
||||||
配送费用
|
配送费用
|
||||||
<text>
|
<block>
|
||||||
<u-icon
|
<u-icon
|
||||||
style="display: inline-block; margin-left: 8rpx"
|
style="display: inline-block; margin-left: 8rpx"
|
||||||
name="question-circle"
|
name="question-circle"
|
||||||
size="12"
|
size="12"
|
||||||
color="#aaaaaa"
|
color="#aaaaaa"
|
||||||
></u-icon>
|
></u-icon>
|
||||||
</text>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
<view class="cost-info-num">
|
<view class="cost-info-num">
|
||||||
¥{{ item.order_shipping_fee }}
|
¥{{ item.order_shipping_fee }}
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="cost-info-income">
|
<!-- <view class="cost-info-income">
|
||||||
<view class="predict-income">
|
<view class="predict-income">
|
||||||
预计收入
|
预计收入
|
||||||
<text
|
<block
|
||||||
style="font-size: 40rpx; color: #333333; font-weight: 700"
|
style="font-size: 40rpx; color: #333333; font-weight: 700"
|
||||||
>
|
>
|
||||||
¥24.95
|
¥24.95
|
||||||
</text>
|
</block>
|
||||||
</view>
|
</view>
|
||||||
<view class="customer-actual-payment">
|
<view class="customer-actual-payment">
|
||||||
顾客实际支付 ¥30.50
|
顾客实际支付 ¥30.50
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view> -->
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
<view class="order-btn-block">
|
<view class="order-btn-block">
|
||||||
<!-- <view class="btn-list">
|
<view class="btn-list">
|
||||||
<u-button class="btn-item">取消订单</u-button>
|
<u-button class="btn-item" @click="handerShowCancelOrder(item)">
|
||||||
<u-button class="btn-item">退差价</u-button>
|
取消订单
|
||||||
<u-button class="btn-item">部分退款</u-button>
|
</u-button>
|
||||||
</view> -->
|
<!-- <u-button class="btn-item">退差价</u-button> -->
|
||||||
|
<u-button
|
||||||
|
class="btn-item"
|
||||||
|
@click="handerShowPartOrderRefund(item)"
|
||||||
|
>
|
||||||
|
部分退款
|
||||||
|
</u-button>
|
||||||
|
</view>
|
||||||
<view class="arrow-item" @click="showRefundOrderInfo(item, index)">
|
<view class="arrow-item" @click="showRefundOrderInfo(item, index)">
|
||||||
{{ item.showRefundOrderInfo ? "收起订单" : "展开订单" }}
|
{{ item.showRefundOrderInfo ? "收起订单" : "展开订单" }}
|
||||||
<u-icon
|
<u-icon
|
||||||
@ -383,7 +399,7 @@
|
|||||||
font-weight: bold;
|
font-weight: bold;
|
||||||
"
|
"
|
||||||
>
|
>
|
||||||
{{ item.orderNum }}
|
{{ item.order_pickup_num }}
|
||||||
</text>
|
</text>
|
||||||
</view>
|
</view>
|
||||||
<view class="delivery-status" style="color: red">
|
<view class="delivery-status" style="color: red">
|
||||||
@ -950,13 +966,219 @@
|
|||||||
:hairline="true"
|
:hairline="true"
|
||||||
:plain="true"
|
:plain="true"
|
||||||
shape="circle"
|
shape="circle"
|
||||||
@click="handerRetrunOrder()"
|
@click="getInitiativeOrderRefund()"
|
||||||
>
|
>
|
||||||
确认
|
确认
|
||||||
</u-button>
|
</u-button>
|
||||||
</view>
|
</view>
|
||||||
</view>
|
</view>
|
||||||
</u-popup>
|
</u-popup>
|
||||||
|
<u-popup
|
||||||
|
class="affirm-popup"
|
||||||
|
zIndex="10077"
|
||||||
|
:show="showCancelOrderPopup"
|
||||||
|
mode="center"
|
||||||
|
@close="showCancelOrderPopup = false"
|
||||||
|
>
|
||||||
|
<view class="affirm-popup-content">
|
||||||
|
<view class="affirm-popup-title">取消订单</view>
|
||||||
|
<view class="affirm-popup-tips">
|
||||||
|
取消订单后,金额将原路退回给用户,确定取消?
|
||||||
|
</view>
|
||||||
|
<view class="affirm-popup-form">
|
||||||
|
<u--form
|
||||||
|
labelPosition="left"
|
||||||
|
:model="form"
|
||||||
|
ref="uForm"
|
||||||
|
label-width="100"
|
||||||
|
:rules="rules"
|
||||||
|
>
|
||||||
|
<u-form-item
|
||||||
|
label="退款原因"
|
||||||
|
prop="reason"
|
||||||
|
class="form-item"
|
||||||
|
required
|
||||||
|
>
|
||||||
|
<u--textarea
|
||||||
|
class="u-textarea"
|
||||||
|
v-model="form.reason"
|
||||||
|
count
|
||||||
|
autoHeight
|
||||||
|
maxlength="100"
|
||||||
|
placeholder="请输入取消订单原因"
|
||||||
|
></u--textarea>
|
||||||
|
</u-form-item>
|
||||||
|
</u--form>
|
||||||
|
</view>
|
||||||
|
<view class="popup-btn-list">
|
||||||
|
<u-button
|
||||||
|
class="btn-item"
|
||||||
|
:hairline="true"
|
||||||
|
:plain="true"
|
||||||
|
shape="circle"
|
||||||
|
@click="showCancelOrderPopup = false"
|
||||||
|
>
|
||||||
|
取消
|
||||||
|
</u-button>
|
||||||
|
<u-button
|
||||||
|
class="btn-item btn-item-2"
|
||||||
|
:hairline="true"
|
||||||
|
:plain="true"
|
||||||
|
shape="circle"
|
||||||
|
@click="getInitiativeOrderRefund"
|
||||||
|
>
|
||||||
|
确定
|
||||||
|
</u-button>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</u-popup>
|
||||||
|
<u-popup
|
||||||
|
class="part-order-refund-popup"
|
||||||
|
zIndex="10080"
|
||||||
|
:show="showPartOrderRefundPopup"
|
||||||
|
mode="bottom"
|
||||||
|
closeable
|
||||||
|
@close="showPartOrderRefundPopup = false"
|
||||||
|
>
|
||||||
|
<view class="part-order-refund-popup-content">
|
||||||
|
<view class="part-order-refund-popup-title">部分退款</view>
|
||||||
|
<scroll-view
|
||||||
|
scroll-y
|
||||||
|
class="specification-type-search-scroll"
|
||||||
|
:show-scrollbar="false"
|
||||||
|
:style="{
|
||||||
|
maxHeight: currOrderItem.order_items.length >= 5 ? '500px' : 'none',
|
||||||
|
overflowY:
|
||||||
|
currOrderItem.order_items.length >= 5 ? 'auto' : 'visible',
|
||||||
|
}"
|
||||||
|
>
|
||||||
|
<view class="affirm-popup-form">
|
||||||
|
<u--form
|
||||||
|
labelPosition="left"
|
||||||
|
:model="form"
|
||||||
|
ref="uForm"
|
||||||
|
label-width="100"
|
||||||
|
:rules="rules"
|
||||||
|
>
|
||||||
|
<u-form-item
|
||||||
|
label="退款原因"
|
||||||
|
prop="reason"
|
||||||
|
class="form-item"
|
||||||
|
required
|
||||||
|
>
|
||||||
|
<u--textarea
|
||||||
|
class="u-textarea"
|
||||||
|
v-model="form.reason"
|
||||||
|
count
|
||||||
|
autoHeight
|
||||||
|
maxlength="100"
|
||||||
|
placeholder="请输入取消订单原因"
|
||||||
|
></u--textarea>
|
||||||
|
</u-form-item>
|
||||||
|
</u--form>
|
||||||
|
</view>
|
||||||
|
<view class="radio-list" v-if="currOrderItem.order_items.length > 0">
|
||||||
|
<u-checkbox-group
|
||||||
|
v-model="commodityCheckBoxList"
|
||||||
|
placement="column"
|
||||||
|
>
|
||||||
|
<view
|
||||||
|
class="commodity-info-item"
|
||||||
|
v-for="(item, index) of currOrderItem.order_items"
|
||||||
|
:key="index"
|
||||||
|
>
|
||||||
|
<view class="commodity-info-box">
|
||||||
|
<image
|
||||||
|
class="commodity-info-img"
|
||||||
|
:src="item.order_item_image"
|
||||||
|
></image>
|
||||||
|
|
||||||
|
<view class="commodity-content">
|
||||||
|
<view class="commodity-name">
|
||||||
|
{{ item.item_name || 0 }}
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view style="padding-left: 8rpx">
|
||||||
|
X{{ item.order_item_quantity || 0 }}
|
||||||
|
</view>
|
||||||
|
<view class="commodity-price">
|
||||||
|
¥{{
|
||||||
|
item.order_item_quantity * item.item_unit_price || 0
|
||||||
|
}}
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<u-number-box
|
||||||
|
:min="1"
|
||||||
|
:max="item.order_item_quantity_2"
|
||||||
|
v-model="item.order_item_quantity"
|
||||||
|
></u-number-box>
|
||||||
|
<u-checkbox
|
||||||
|
:customStyle="{ marginBottom: '8px' }"
|
||||||
|
:key="index"
|
||||||
|
:name="item.item_id"
|
||||||
|
></u-checkbox>
|
||||||
|
</view>
|
||||||
|
</u-checkbox-group>
|
||||||
|
</view>
|
||||||
|
</scroll-view>
|
||||||
|
<view class="popup-btn-list">
|
||||||
|
<u-button
|
||||||
|
class="btn-item"
|
||||||
|
:hairline="true"
|
||||||
|
:plain="true"
|
||||||
|
shape="circle"
|
||||||
|
@click="showPartOrderRefundPopup = false"
|
||||||
|
>
|
||||||
|
取消
|
||||||
|
</u-button>
|
||||||
|
<u-button
|
||||||
|
class="btn-item btn-item-2"
|
||||||
|
:hairline="true"
|
||||||
|
:plain="true"
|
||||||
|
shape="circle"
|
||||||
|
@click="getInitiativeOrderRefund"
|
||||||
|
>
|
||||||
|
确认
|
||||||
|
</u-button>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</u-popup>
|
||||||
|
<u-popup
|
||||||
|
class="affirm-popup"
|
||||||
|
zIndex="10077"
|
||||||
|
:show="showOrderPickingPopup"
|
||||||
|
mode="center"
|
||||||
|
@close="showOrderPickingPopup = false"
|
||||||
|
>
|
||||||
|
<view class="affirm-popup-content">
|
||||||
|
<view class="affirm-popup-title">取消订单</view>
|
||||||
|
<view class="affirm-popup-tips">
|
||||||
|
确定将取货号“ {{ currOrderItem.order_pickup_num }} ”提前拣货完成?
|
||||||
|
</view>
|
||||||
|
<view class="popup-btn-list">
|
||||||
|
<u-button
|
||||||
|
class="btn-item"
|
||||||
|
:hairline="true"
|
||||||
|
:plain="true"
|
||||||
|
shape="circle"
|
||||||
|
@click="showOrderPickingPopup = false"
|
||||||
|
>
|
||||||
|
取消
|
||||||
|
</u-button>
|
||||||
|
<u-button
|
||||||
|
class="btn-item btn-item-2"
|
||||||
|
:hairline="true"
|
||||||
|
:plain="true"
|
||||||
|
shape="circle"
|
||||||
|
@click="getOrderPicking"
|
||||||
|
>
|
||||||
|
确定
|
||||||
|
</u-button>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</u-popup>
|
||||||
|
<u-toast ref="uToast"></u-toast>
|
||||||
</view>
|
</view>
|
||||||
</template>
|
</template>
|
||||||
|
|
||||||
@ -969,6 +1191,8 @@ import {
|
|||||||
GetSalesReturnOrderDetails,
|
GetSalesReturnOrderDetails,
|
||||||
GetSalesReturnOrderNoPass,
|
GetSalesReturnOrderNoPass,
|
||||||
GetSalesReturnOrderPass,
|
GetSalesReturnOrderPass,
|
||||||
|
GetInitiativeOrderRefund,
|
||||||
|
GetOrderPicking,
|
||||||
} from "../../api/order";
|
} from "../../api/order";
|
||||||
import { mapState } from "vuex";
|
import { mapState } from "vuex";
|
||||||
import { GetAuditInfo } from "../../api/audit";
|
import { GetAuditInfo } from "../../api/audit";
|
||||||
@ -979,6 +1203,7 @@ import tabbar from "@/components/tabbar/tabbar.vue";
|
|||||||
import tuiGallery from "@/components/tui-gallery/tui-gallery.vue";
|
import tuiGallery from "@/components/tui-gallery/tui-gallery.vue";
|
||||||
import tuiRadio from "@/components/tui-radio/tui-radio.vue";
|
import tuiRadio from "@/components/tui-radio/tui-radio.vue";
|
||||||
import tuiRadioGroup from "@/components/tui-radio-group/tui-radio-group.vue";
|
import tuiRadioGroup from "@/components/tui-radio-group/tui-radio-group.vue";
|
||||||
|
import tuiSelect from "@/components/tui-select/tui-select.vue";
|
||||||
export default {
|
export default {
|
||||||
components: {
|
components: {
|
||||||
tuiTabs,
|
tuiTabs,
|
||||||
@ -989,6 +1214,7 @@ export default {
|
|||||||
tuiGallery,
|
tuiGallery,
|
||||||
tuiRadio,
|
tuiRadio,
|
||||||
tuiRadioGroup,
|
tuiRadioGroup,
|
||||||
|
tuiSelect,
|
||||||
},
|
},
|
||||||
data() {
|
data() {
|
||||||
return {
|
return {
|
||||||
@ -1199,6 +1425,28 @@ export default {
|
|||||||
],
|
],
|
||||||
retrunOrderMsg: "",
|
retrunOrderMsg: "",
|
||||||
currReturnId: "",
|
currReturnId: "",
|
||||||
|
currOrderItem: {
|
||||||
|
order_items: [],
|
||||||
|
},
|
||||||
|
isCancelOrder: false,
|
||||||
|
showCancelOrderPopup: false,
|
||||||
|
showPartOrderRefundPopup: false,
|
||||||
|
form: {
|
||||||
|
reason: "",
|
||||||
|
},
|
||||||
|
rules: {
|
||||||
|
reason: [
|
||||||
|
{
|
||||||
|
required: true,
|
||||||
|
message: "请输入取消订单原因",
|
||||||
|
// 可以单个或者同时写两个触发验证方式
|
||||||
|
trigger: ["change", "blur"],
|
||||||
|
},
|
||||||
|
],
|
||||||
|
},
|
||||||
|
commodityCheckBoxList: [],
|
||||||
|
refreshInterval: null, // 全局定时器
|
||||||
|
showOrderPickingPopup: false,
|
||||||
};
|
};
|
||||||
},
|
},
|
||||||
computed: {
|
computed: {
|
||||||
@ -1234,6 +1482,19 @@ export default {
|
|||||||
this.keyword = "";
|
this.keyword = "";
|
||||||
this.getOrderList();
|
this.getOrderList();
|
||||||
},
|
},
|
||||||
|
mounted() {
|
||||||
|
// 每1秒刷新一次数据(触发界面更新)
|
||||||
|
this.refreshInterval = setInterval(() => {
|
||||||
|
this.$forceUpdate(); // 强制更新视图
|
||||||
|
}, 1000);
|
||||||
|
},
|
||||||
|
|
||||||
|
beforeDestroy() {
|
||||||
|
// 组件销毁时清除定时器
|
||||||
|
if (this.refreshInterval) {
|
||||||
|
clearInterval(this.refreshInterval);
|
||||||
|
}
|
||||||
|
},
|
||||||
// onReachBottom() {
|
// onReachBottom() {
|
||||||
// clearTimeout(this.time);
|
// clearTimeout(this.time);
|
||||||
// this.loadingDownOnlinData = true;
|
// this.loadingDownOnlinData = true;
|
||||||
@ -1265,7 +1526,6 @@ export default {
|
|||||||
this.showOrderLoading = true;
|
this.showOrderLoading = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
this.params = {
|
this.params = {
|
||||||
storeId: this.dashboardInfo.store_info.store_id,
|
storeId: this.dashboardInfo.store_info.store_id,
|
||||||
keyword: this.keyword,
|
keyword: this.keyword,
|
||||||
@ -1296,7 +1556,10 @@ export default {
|
|||||||
}
|
}
|
||||||
|
|
||||||
if (this.orderInfo.order_count) {
|
if (this.orderInfo.order_count) {
|
||||||
this.tabs[0].num = this.orderInfo.order_count.same_city_order_count; // 同城订单总数
|
this.tabs[0].num =
|
||||||
|
this.orderInfo.order_count.same_city_order.progress_count +
|
||||||
|
this.orderInfo.order_count.same_city_order.overtime_count +
|
||||||
|
this.orderInfo.order_count.same_city_order.refund_count; // 同城订单总数
|
||||||
// this.tabs[2].num = this.orderInfo.order_count.logistics_order_count; // 物流订单总数
|
// this.tabs[2].num = this.orderInfo.order_count.logistics_order_count; // 物流订单总数
|
||||||
// this.tabs[3].num = this.orderInfo.order_count.all_order_count; //所有订单总数
|
// this.tabs[3].num = this.orderInfo.order_count.all_order_count; //所有订单总数
|
||||||
|
|
||||||
@ -1328,6 +1591,21 @@ export default {
|
|||||||
this.loadingDownOnlinData = false;
|
this.loadingDownOnlinData = false;
|
||||||
// uni.stopPullDownRefresh();
|
// uni.stopPullDownRefresh();
|
||||||
},
|
},
|
||||||
|
getRemainingTime(arrivalTime) {
|
||||||
|
if (!arrivalTime) return "时间未设定";
|
||||||
|
|
||||||
|
const now = Date.now();
|
||||||
|
const remainingMs = arrivalTime - now;
|
||||||
|
|
||||||
|
if (remainingMs <= 0) return "已超时";
|
||||||
|
|
||||||
|
// 计算分钟和秒
|
||||||
|
const minutes = Math.floor(remainingMs / (1000 * 60));
|
||||||
|
const seconds = Math.floor((remainingMs % (1000 * 60)) / 1000);
|
||||||
|
|
||||||
|
// 格式化为 MM:SS(补零)
|
||||||
|
return `${minutes}:${seconds.toString().padStart(2, "0")}`;
|
||||||
|
},
|
||||||
handelSalesReturnSearch(item) {
|
handelSalesReturnSearch(item) {
|
||||||
if (item.value == this.salesReturnBtnSearchAcitve) return;
|
if (item.value == this.salesReturnBtnSearchAcitve) return;
|
||||||
this.pageNum = 1;
|
this.pageNum = 1;
|
||||||
@ -1607,7 +1885,93 @@ export default {
|
|||||||
this.getSalesReturnOrderList();
|
this.getSalesReturnOrderList();
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
this.showReturnOrderPopup = false;
|
},
|
||||||
|
handerShowCancelOrder(item) {
|
||||||
|
this.currOrderItem = JSON.parse(JSON.stringify(item));
|
||||||
|
this.showCancelOrderPopup = true;
|
||||||
|
this.isCancelOrder = true;
|
||||||
|
},
|
||||||
|
handerShowPartOrderRefund(item) {
|
||||||
|
let _item = JSON.parse(JSON.stringify(item));
|
||||||
|
|
||||||
|
_item.order_items.forEach((group) => {
|
||||||
|
group.order_item_quantity_2 = group.order_item_quantity;
|
||||||
|
});
|
||||||
|
|
||||||
|
this.currOrderItem = _item;
|
||||||
|
|
||||||
|
this.showPartOrderRefundPopup = true;
|
||||||
|
this.isCancelOrder = false;
|
||||||
|
},
|
||||||
|
getInitiativeOrderRefund() {
|
||||||
|
var params = {
|
||||||
|
order_id: this.currOrderItem.order_id,
|
||||||
|
reason: this.form.reason,
|
||||||
|
};
|
||||||
|
|
||||||
|
if (!this.isCancelOrder) {
|
||||||
|
if (this.commodityCheckBoxList.length <= 0) {
|
||||||
|
this.$refs.uToast.show({
|
||||||
|
message: "请先选择你要退的商品",
|
||||||
|
type: "error",
|
||||||
|
duration: 1000,
|
||||||
|
zIndex: 12000,
|
||||||
|
position: "top",
|
||||||
|
});
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const matchedItems = this.currOrderItem.order_items.filter((item) =>
|
||||||
|
this.commodityCheckBoxList.includes(item.item_id)
|
||||||
|
);
|
||||||
|
|
||||||
|
params.order_return_vo = {
|
||||||
|
order_id: this.currOrderItem.order_id,
|
||||||
|
return_items: matchedItems.map((item) => {
|
||||||
|
return {
|
||||||
|
order_item_id: item.item_id,
|
||||||
|
return_item_num: item.order_item_quantity,
|
||||||
|
return_refund_amount:
|
||||||
|
item.order_item_quantity * item.item_unit_price,
|
||||||
|
};
|
||||||
|
}),
|
||||||
|
};
|
||||||
|
}
|
||||||
|
|
||||||
|
this.$refs.uForm.validate().then(async (valid) => {
|
||||||
|
let res = await GetInitiativeOrderRefund(params);
|
||||||
|
if (res && res.status == 200) {
|
||||||
|
this.showCancelOrderPopup = false;
|
||||||
|
this.showPartOrderRefundPopup = false;
|
||||||
|
if (!this.isCancelOrder) {
|
||||||
|
uni.$u.toast("部分订单退款成功");
|
||||||
|
} else {
|
||||||
|
uni.$u.toast("取消订单成功");
|
||||||
|
}
|
||||||
|
this.form.reason = "";
|
||||||
|
this.pageNum = 1;
|
||||||
|
this.commodityCheckBoxList = [];
|
||||||
|
this.getOrderList();
|
||||||
|
}
|
||||||
|
this.showCancelOrderPopup = false;
|
||||||
|
this.showPartOrderRefundPopup = false;
|
||||||
|
});
|
||||||
|
},
|
||||||
|
handerShowOrderPickingPopup(item) {
|
||||||
|
this.currOrderItem = item;
|
||||||
|
this.showOrderPickingPopup = true;
|
||||||
|
},
|
||||||
|
async getOrderPicking(item) {
|
||||||
|
let params = {
|
||||||
|
order_id: this.currOrderItem.order_id,
|
||||||
|
store_id: this.currOrderItem.store_info.store_id,
|
||||||
|
};
|
||||||
|
|
||||||
|
let res = await GetOrderPicking(params);
|
||||||
|
if (res && res.status == 200) {
|
||||||
|
this.showOrderPickingPopup = false;
|
||||||
|
uni.$u.toast("操作成功");
|
||||||
|
}
|
||||||
|
this.showOrderPickingPopup = false;
|
||||||
},
|
},
|
||||||
},
|
},
|
||||||
};
|
};
|
||||||
@ -2072,6 +2436,123 @@ export default {
|
|||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.part-order-refund-popup {
|
||||||
|
::v-deep.u-popup__content {
|
||||||
|
border-top-left-radius: 16rpx;
|
||||||
|
border-top-right-radius: 16rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep.u-fade-enter-to {
|
||||||
|
z-index: 10079 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.part-order-refund-popup-content {
|
||||||
|
.part-order-refund-popup-title {
|
||||||
|
padding: 40rpx;
|
||||||
|
text-align: center;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.affirm-popup-form {
|
||||||
|
padding: 20rpx 60rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.radio-list {
|
||||||
|
.commodity-info-item {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
padding: 0 28rpx;
|
||||||
|
|
||||||
|
.commodity-info-box {
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-between;
|
||||||
|
|
||||||
|
.commodity-info-img {
|
||||||
|
margin-right: 20rpx;
|
||||||
|
width: 120rpx;
|
||||||
|
height: 120rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.popup-btn-list {
|
||||||
|
display: flex;
|
||||||
|
margin: 50rpx;
|
||||||
|
|
||||||
|
.btn-item {
|
||||||
|
width: 46%;
|
||||||
|
height: 64rpx;
|
||||||
|
border-color: #909193;
|
||||||
|
|
||||||
|
&::after {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-item-2 {
|
||||||
|
background: $base-color;
|
||||||
|
color: #fff;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.affirm-popup {
|
||||||
|
::v-deep.u-popup__content {
|
||||||
|
border-radius: 16rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
::v-deep.u-fade-enter-to {
|
||||||
|
z-index: 10076 !important;
|
||||||
|
}
|
||||||
|
|
||||||
|
.affirm-popup-content {
|
||||||
|
width: 600rpx;
|
||||||
|
|
||||||
|
.affirm-popup-title {
|
||||||
|
padding: 60rpx 0 20rpx;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 28rpx;
|
||||||
|
font-weight: bold;
|
||||||
|
}
|
||||||
|
|
||||||
|
.affirm-popup-tips {
|
||||||
|
padding: 0 32rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.u-form {
|
||||||
|
padding: 0 60rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.popup-btn-list {
|
||||||
|
display: flex;
|
||||||
|
margin: 50rpx;
|
||||||
|
|
||||||
|
.btn-item {
|
||||||
|
width: 46%;
|
||||||
|
height: 64rpx;
|
||||||
|
border-color: #909193;
|
||||||
|
|
||||||
|
&::after {
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn-item-2 {
|
||||||
|
background: $base-color;
|
||||||
|
color: #fff;
|
||||||
|
border: none;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
.tui-animation {
|
.tui-animation {
|
||||||
display: inline-block;
|
display: inline-block;
|
||||||
transform: rotate(0deg);
|
transform: rotate(0deg);
|
||||||
|
|||||||
@ -236,6 +236,9 @@
|
|||||||
v-if="currSpecificationList.length > 0"
|
v-if="currSpecificationList.length > 0"
|
||||||
>
|
>
|
||||||
<view class="productList-price-popup-title">价格/库存修改</view>
|
<view class="productList-price-popup-title">价格/库存修改</view>
|
||||||
|
<view class="productList-price-popup-tips">
|
||||||
|
注意:修改这里的价格,外面列表价格只会显示最低价
|
||||||
|
</view>
|
||||||
<view class="select-commodity-price-list">
|
<view class="select-commodity-price-list">
|
||||||
<scroll-view
|
<scroll-view
|
||||||
scroll-y
|
scroll-y
|
||||||
@ -464,57 +467,66 @@ export default {
|
|||||||
|
|
||||||
// 1. 解析产品规格模板
|
// 1. 解析产品规格模板
|
||||||
let productSpec = JSON.parse(JSON.stringify(item.product_spec));
|
let productSpec = JSON.parse(JSON.stringify(item.product_spec));
|
||||||
|
if (productSpec.length > 0) {
|
||||||
productSpec = JSON.parse(productSpec);
|
productSpec = JSON.parse(productSpec);
|
||||||
if (!Array.isArray(productSpec)) {
|
if (!Array.isArray(productSpec)) {
|
||||||
productSpec = [productSpec]; // 确保是数组格式
|
productSpec = [productSpec]; // 确保是数组格式
|
||||||
}
|
|
||||||
|
|
||||||
const specItemMap = [];
|
|
||||||
|
|
||||||
productSpec.forEach((specGroup) => {
|
|
||||||
if (specGroup.item && Array.isArray(specGroup.item)) {
|
|
||||||
specGroup.item.forEach((item) => {
|
|
||||||
specItemMap.push(item.id);
|
|
||||||
});
|
|
||||||
}
|
}
|
||||||
});
|
const specItemMap = [];
|
||||||
|
|
||||||
this.currSpecificationList = this.selectCommodisItems
|
productSpec.forEach((specGroup) => {
|
||||||
.map((item) => {
|
if (specGroup.item && Array.isArray(specGroup.item)) {
|
||||||
try {
|
specGroup.item.forEach((item) => {
|
||||||
// 解析规格数据(兼容字符串和对象)
|
specItemMap.push(item.id);
|
||||||
const itemSpec =
|
});
|
||||||
typeof item.item_spec === "string"
|
}
|
||||||
? JSON.parse(item.item_spec)
|
});
|
||||||
: item.item_spec;
|
this.currSpecificationList = this.selectCommodisItems
|
||||||
|
.map((item) => {
|
||||||
|
try {
|
||||||
|
// 解析规格数据(兼容字符串和对象)
|
||||||
|
const itemSpec =
|
||||||
|
typeof item.item_spec === "string"
|
||||||
|
? JSON.parse(item.item_spec)
|
||||||
|
: item.item_spec;
|
||||||
|
|
||||||
if (Array.isArray(itemSpec) && itemSpec.length > 0) {
|
if (Array.isArray(itemSpec) && itemSpec.length > 0) {
|
||||||
const firstSpec = itemSpec[0];
|
const firstSpec = itemSpec[0];
|
||||||
|
|
||||||
// 匹配规格逻辑
|
// 匹配规格逻辑
|
||||||
if (firstSpec.item && firstSpec.item.id) {
|
if (firstSpec.item && firstSpec.item.id) {
|
||||||
const matchedSpec = specItemMap.find(
|
const matchedSpec = specItemMap.find(
|
||||||
(id) => id == firstSpec.item.id
|
(id) => id == firstSpec.item.id
|
||||||
);
|
);
|
||||||
|
|
||||||
if (matchedSpec) {
|
if (matchedSpec) {
|
||||||
return {
|
return {
|
||||||
...item,
|
...item,
|
||||||
spec_item_id: matchedSpec,
|
spec_item_id: matchedSpec,
|
||||||
item_is_default: Boolean(item.item_is_default),
|
item_is_default: Boolean(item.item_is_default),
|
||||||
// 保留原始数据(调试用)
|
// 保留原始数据(调试用)
|
||||||
};
|
};
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
} catch (e) {
|
||||||
|
console.error(`处理商品 ${item.item_id} 时出错:`, e);
|
||||||
}
|
}
|
||||||
} catch (e) {
|
})
|
||||||
console.error(`处理商品 ${item.item_id} 时出错:`, e);
|
.filter((item) => item != undefined);
|
||||||
}
|
} else {
|
||||||
})
|
this.currSpecificationList = [
|
||||||
.filter((item) => item != undefined);
|
{
|
||||||
console.log(this.currSpecificationList);
|
...item,
|
||||||
|
item_quantity: item.itemQuantity,
|
||||||
|
item_quantity_2: "",
|
||||||
|
item_unit_price: item.product_unit_price,
|
||||||
|
item_quantity_2: "",
|
||||||
|
},
|
||||||
|
];
|
||||||
|
}
|
||||||
this.showBottomPopup = true;
|
this.showBottomPopup = true;
|
||||||
|
console.log(this.currSpecificationList);
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
async getProductCategoryTree() {
|
async getProductCategoryTree() {
|
||||||
@ -722,8 +734,15 @@ export default {
|
|||||||
url: "../../news/search/search",
|
url: "../../news/search/search",
|
||||||
});
|
});
|
||||||
},
|
},
|
||||||
async updateCommodityPriceAndQuantity(item) {
|
async updateCommodityPriceAndQuantity() {
|
||||||
let params = {};
|
let params = this.currSpecificationList.map((item) => {
|
||||||
|
return {
|
||||||
|
item_id: item.item_id,
|
||||||
|
product_id: item.product_id,
|
||||||
|
item_quantity: item.item_quantity_2 || item.item_quantity,
|
||||||
|
item_unit_price: item.item_quantity_2 || item.item_unit_price,
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
let res = await UpdateCommodityPriceAndQuantity(params);
|
let res = await UpdateCommodityPriceAndQuantity(params);
|
||||||
if (res && res.status) {
|
if (res && res.status) {
|
||||||
@ -731,6 +750,8 @@ export default {
|
|||||||
message: "修改成功",
|
message: "修改成功",
|
||||||
type: "succeed",
|
type: "succeed",
|
||||||
duration: 1000,
|
duration: 1000,
|
||||||
|
zIndex: 12000,
|
||||||
|
position: "top",
|
||||||
});
|
});
|
||||||
|
|
||||||
// 静默更新数组
|
// 静默更新数组
|
||||||
@ -1218,6 +1239,13 @@ page {
|
|||||||
border-top-right-radius: 16rpx;
|
border-top-right-radius: 16rpx;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
.productList-price-popup-tips {
|
||||||
|
padding: 20rpx;
|
||||||
|
text-align: center;
|
||||||
|
background: #fff;
|
||||||
|
color: red;
|
||||||
|
}
|
||||||
|
|
||||||
.select-commodity-price-list {
|
.select-commodity-price-list {
|
||||||
background: #f8f8f8;
|
background: #f8f8f8;
|
||||||
}
|
}
|
||||||
|
|||||||
BIN
java-mall-app-shop-admin/static/mp3/您有新的小发同城订单.MP3
Normal file
BIN
java-mall-app-shop-admin/static/mp3/您有新的小发同城订单.MP3
Normal file
Binary file not shown.
BIN
java-mall-app-shop-admin/static/mp3/您有新的消息,请尽快回复.MP3
Normal file
BIN
java-mall-app-shop-admin/static/mp3/您有新的消息,请尽快回复.MP3
Normal file
Binary file not shown.
BIN
java-mall-app-shop-admin/static/mp3/您有新的预约订单.MP3
Normal file
BIN
java-mall-app-shop-admin/static/mp3/您有新的预约订单.MP3
Normal file
Binary file not shown.
BIN
java-mall-app-shop-admin/static/mp3/您有订单快超时了.MP3
Normal file
BIN
java-mall-app-shop-admin/static/mp3/您有订单快超时了.MP3
Normal file
Binary file not shown.
BIN
java-mall-app-shop-admin/static/mp3/您有退货订单,请注意查看.MP3
Normal file
BIN
java-mall-app-shop-admin/static/mp3/您有退货订单,请注意查看.MP3
Normal file
Binary file not shown.
BIN
java-mall-app-shop-admin/static/mp3/您有部分退款订单,请注意查看.MP3
Normal file
BIN
java-mall-app-shop-admin/static/mp3/您有部分退款订单,请注意查看.MP3
Normal file
Binary file not shown.
BIN
java-mall-app-shop-admin/static/mp3/您的预约订单快到时间了.MP3
Normal file
BIN
java-mall-app-shop-admin/static/mp3/您的预约订单快到时间了.MP3
Normal file
Binary file not shown.
@ -2,6 +2,7 @@ import axios from "axios";
|
|||||||
import config from "../config/config";
|
import config from "../config/config";
|
||||||
import axiosAdapterUniapp from "axios-adapter-uniapp";
|
import axiosAdapterUniapp from "axios-adapter-uniapp";
|
||||||
import $store from "../store/index";
|
import $store from "../store/index";
|
||||||
|
import qs from "qs";
|
||||||
|
|
||||||
const service = axios.create({
|
const service = axios.create({
|
||||||
baseURL: config.baseApi, // url = base url + request url
|
baseURL: config.baseApi, // url = base url + request url
|
||||||
@ -19,6 +20,13 @@ service.interceptors.request.use(
|
|||||||
if (uni.getStorageSync("ukey")) {
|
if (uni.getStorageSync("ukey")) {
|
||||||
config.headers["Authorization"] = "Bearer " + uni.getStorageSync("ukey");
|
config.headers["Authorization"] = "Bearer " + uni.getStorageSync("ukey");
|
||||||
}
|
}
|
||||||
|
if (
|
||||||
|
config.data &&
|
||||||
|
config.headers["Content-Type"] ===
|
||||||
|
"application/x-www-form-urlencoded;charset=UTF-8"
|
||||||
|
) {
|
||||||
|
config.data = qs.stringify(config.data);
|
||||||
|
}
|
||||||
|
|
||||||
return config;
|
return config;
|
||||||
},
|
},
|
||||||
@ -34,7 +42,7 @@ service.interceptors.response.use(
|
|||||||
(response) => {
|
(response) => {
|
||||||
const res = response.data;
|
const res = response.data;
|
||||||
|
|
||||||
if (res.status == 250) {
|
if (res && res.status == 250) {
|
||||||
uni.$u.toast(`提示:${res.msg}`);
|
uni.$u.toast(`提示:${res.msg}`);
|
||||||
|
|
||||||
// uni.showToast({
|
// uni.showToast({
|
||||||
@ -44,7 +52,9 @@ service.interceptors.response.use(
|
|||||||
// });
|
// });
|
||||||
}
|
}
|
||||||
|
|
||||||
if (res.code == 30) {
|
console.log(res);
|
||||||
|
|
||||||
|
if (res && res.code == 30) {
|
||||||
uni.$u.toast(`token已经过期需要重新登录`);
|
uni.$u.toast(`token已经过期需要重新登录`);
|
||||||
|
|
||||||
// uni.showToast({
|
// uni.showToast({
|
||||||
|
|||||||
Loading…
Reference in New Issue
Block a user