diff --git a/App.vue b/App.vue index 043e271..76b2358 100644 --- a/App.vue +++ b/App.vue @@ -89,4 +89,46 @@ page { word-break: break-all; overflow: hidden; } + + + +@keyframes warn { + 0% { + transform: scale(.5); + opacity: 1 + } + + 30% { + opacity: .7 + } + + to { + transform: scale(2.5); + opacity: 0 + } +} + +.warn-state { + display: inline-block; + width: 8px; + height: 8px; + border-radius: 50%; + vertical-align: middle +} + +.warn-status-processing { + position: relative +} + +.warn-status-processing:after { + position: absolute; + top: 0; + left: 0; + width: 100%; + height: 100%; + border-radius: 50%; + background: inherit; + content: ""; + animation: warn 1.2s ease-in-out infinite +} diff --git a/api/mall/goods.js b/api/mall/goods.js index 0797a2d..543b7c5 100644 --- a/api/mall/goods.js +++ b/api/mall/goods.js @@ -8,6 +8,7 @@ export default { url: "/shop/shopGoods/goodsList", method: "POST", data, + type: "mall", }); }, @@ -16,6 +17,16 @@ export default { url: "/shop/shopGoods/goodsEditAttribute", method: "POST", data, + type: "mall", + }); + }, + + goodsDel(data) { + return request({ + url: "/shop/shopGoods/goodsDel", + method: "POST", + data, + type: "mall", }); }, @@ -25,6 +36,15 @@ export default { url: "/shop/shopClassify/list", method: "POST", data, + type: "mall", + }); + }, + Slist(data) { + return request({ + url: "/admin/classify/list", + method: "POST", + data, + type: "mall", }); }, @@ -33,6 +53,7 @@ export default { url: "/shop/shopClassify/createItem", method: "POST", data, + type: "mall", }); }, @@ -43,6 +64,7 @@ export default { url: "/shop/freightRules/list", method: "POST", data, + type: "mall", }); }, @@ -51,6 +73,7 @@ export default { url: "/shop/shopGoods/goodsItem", method: "POST", data, + type: "mall", }); }, @@ -59,6 +82,7 @@ export default { url: "/shop/shopGoods/goodsEdit", method: "POST", data, + type: "mall", }); }, diff --git a/api/mall/index.js b/api/mall/index.js index 290068f..b5ed97c 100644 --- a/api/mall/index.js +++ b/api/mall/index.js @@ -9,6 +9,7 @@ export default { url: "/shop/dataCount/oneLine", method: "POST", data, + type: "mall", }); }, orderProfit(data) { @@ -16,6 +17,7 @@ export default { url: "/shop/dataCount/orderProfit", method: "POST", data, + type: "mall", }); }, orderGood(data) { @@ -23,24 +25,27 @@ export default { url: "/shop/dataCount/orderGood", method: "POST", data, + type: "mall", }); }, }, - getStoreSetting(data) { + getShopSetting(data) { return request({ - url: "/shop/store/getStoreSetting", + url: "/shop/shop/item", method: "POST", data, + type: "mall", }) }, setStoreSetting(data) { return request({ - url: "/shop/store/setStoreSetting", + url: "/shop/shop/edit", method: "POST", data, + type: "mall", }) } diff --git a/api/mall/order.js b/api/mall/order.js index 2db8022..43d82c8 100644 --- a/api/mall/order.js +++ b/api/mall/order.js @@ -8,6 +8,7 @@ export default { url: "/shop/order/orderList", method: "POST", data, + type: "mall", }); }, @@ -16,6 +17,7 @@ export default { url: "/shop/order/orderSend", method: "POST", data, + type: "mall", }); }, @@ -24,6 +26,7 @@ export default { url: "/admin/order/GetExpressList", method: "POST", data, + type: "mall", }); }, @@ -32,6 +35,7 @@ export default { url: "/shop/order/printOrder", method: "POST", data, + type: "mall", }); }, @@ -40,6 +44,7 @@ export default { url: "/shop/order/updateNotes", method: "POST", data, + type: "mall", }); }, @@ -49,6 +54,7 @@ export default { url: "/shop/shop/checkLog", method: "POST", data, + type: "mall", }); }, @@ -57,6 +63,7 @@ export default { url: "/shop/order/confirmCancel", method: "POST", data, + type: "mall", }); }, @@ -66,6 +73,7 @@ export default { url: "/shop/after_sale/index", method: "POST", data, + type: "mall", }); }, @@ -75,6 +83,7 @@ export default { url: "/shop/after_sale/update", method: "POST", data, + type: "mall", }); }, @@ -83,6 +92,7 @@ export default { url: "/shop/after_sale/show", method: "POST", data, + type: "mall", }); }, @@ -91,6 +101,7 @@ export default { url: "/client/common/express", method: "POST", data, + type: "mall", }); }, enums(data) { @@ -98,9 +109,30 @@ export default { url: "/client/after_sale/enums", method: "POST", data, + type: "mall", }); }, }, + OrderInpersonPayment: { + orderList(data) { + return request({ + url: "/shop/OrderInpersonPayment/orderList", + method: "POST", + data, + type: "mall", + }); + }, + + GetQrItem(data) { + return request({ + url: "/shop/OrderInpersonPayment/GetQrItem", + method: "POST", + data, + type: "mall", + }); + }, + } + }; \ No newline at end of file diff --git a/api/mall/orderPickUp.js b/api/mall/orderPickUp.js new file mode 100644 index 0000000..99b78e0 --- /dev/null +++ b/api/mall/orderPickUp.js @@ -0,0 +1,70 @@ +import { + request +} from "@/utils/request"; + +export default { + orderList(data) { + return request({ + url: "/shop/orderPickUp/orderList", + method: "POST", + data, + type: "mall", + }); + }, + + orderSend(data) { + return request({ + url: "/shop/orderPickUp/orderSend", + method: "POST", + data, + type: "mall", + }); + }, + + GetExpressList(data) { + return request({ + url: "/admin/orderPickUp/GetExpressList", + method: "POST", + data, + type: "mall", + }); + }, + + printOrder(data) { + return request({ + url: "/shop/orderPickUp/printOrder", + method: "POST", + data, + type: "mall", + }); + }, + + updateNotes(data) { + return request({ + url: "/shop/orderPickUp/updateNotes", + method: "POST", + data, + type: "mall", + }); + }, + + // 核销记录 + checkLog(data) { + return request({ + url: "/shop/shop/checkLog", + method: "POST", + data, + type: "mall", + }); + }, + + confirmCancel(data) { + return request({ + url: "/shop/orderPickUp/confirmCancel", + method: "POST", + data, + type: "mall", + }); + }, + +}; \ No newline at end of file diff --git a/api/mall/shop.js b/api/mall/shop.js index cd040f2..ec25c72 100644 --- a/api/mall/shop.js +++ b/api/mall/shop.js @@ -9,6 +9,7 @@ export default { url: "/shop/shop/List", method: "POST", data, + type: "mall", }) }, @@ -17,6 +18,7 @@ export default { url: "/shop/shop/edit", method: "POST", data, + type: "mall", }) }, @@ -25,6 +27,7 @@ export default { url: "/shop/shop/editStatus", method: "POST", data, + type: "mall", }) }, @@ -33,6 +36,7 @@ export default { url: "/shop/shop/synchronousGoods", method: "POST", data, + type: "mall", }) }, diff --git a/api/mall/user.js b/api/mall/user.js deleted file mode 100644 index 0afaa74..0000000 --- a/api/mall/user.js +++ /dev/null @@ -1,51 +0,0 @@ -import { - request -} from "@/utils/request"; - -export default { - - userList(data) { - return request({ - url: "/shop/user/userList", - method: "GET", - data, - }) - }, - - userItem(data) { - return request({ - url: "/shop/user/userItem", - method: "GET", - data, - }) - }, - - - getLog(data) { - return request({ - url: "/shop/user/getLog", - method: "GET", - data, - }) - }, - - changeInformation(data) { - return request({ - url: "/shop/user/changeInformation", - method: "GET", - data, - }) - }, - - UpdateLevel(data) { - return request({ - url: "/shop/user/UpdateLevel", - method: "GET", - data, - }) - }, - - - - -}; \ No newline at end of file diff --git a/api/mall/userMembers.js b/api/mall/userMembers.js index fef7a7f..1cea01a 100644 --- a/api/mall/userMembers.js +++ b/api/mall/userMembers.js @@ -9,6 +9,7 @@ export default { url: "/shop/UserMembers/LevelShow", method: "GET", data, + type: "mall", }) }, @@ -17,6 +18,7 @@ export default { url: "/shop/UserMembers/LevelSave", method: "GET", data, + type: "mall", }) }, @@ -25,6 +27,7 @@ export default { url: "/shop/UserMembers/SetList", method: "GET", data, + type: "mall", }) }, @@ -33,6 +36,7 @@ export default { url: "/shop/UserMembers/SetSave", method: "GET", data, + type: "mall", }) }, @@ -41,6 +45,7 @@ export default { url: "/shop/UserMembers/DiscountList", method: "GET", data, + type: "mall", }) }, @@ -49,6 +54,7 @@ export default { url: "/shop/UserMembers/CreateDiscount", method: "POST", data, + type: "mall", }) }, diff --git a/api/modules/system.js b/api/modules/system.js index 521c9f3..2342c37 100644 --- a/api/modules/system.js +++ b/api/modules/system.js @@ -28,5 +28,13 @@ export default { }, + loginShop(data) { + return request({ + url: "/admin/system/loginShop", + method: "GET", + data, + }) + }, + }; \ No newline at end of file diff --git a/api/store/coupon.js b/api/store/coupon.js new file mode 100644 index 0000000..529d4e9 --- /dev/null +++ b/api/store/coupon.js @@ -0,0 +1,41 @@ +import { + request +} from "@/utils/request"; + +export default { + List(data) { + return request({ + url: "/admin/Coupon/List", + method: "GET", + data, + type: 'store' + }); + }, + GetItem(data) { + return request({ + url: "/admin/Coupon/GetItem", + method: "GET", + data, + type: 'store' + }); + }, + Create(data) { + return request({ + url: "/admin/Coupon/Create", + method: "POST", + data, + type: 'store' + }); + }, + + + UserGetList(data) { + return request({ + url: "/admin/Coupon/UserGetList", + method: "POST", + data, + type: 'store' + }); + }, + +}; \ No newline at end of file diff --git a/api/store/discount.js b/api/store/discount.js new file mode 100644 index 0000000..52561b9 --- /dev/null +++ b/api/store/discount.js @@ -0,0 +1,91 @@ +import { + request +} from "@/utils/request"; + +export default { + + SalesDiscounts: { + + List(data) { + return request({ + url: "/admin/SalesDiscounts/List", + method: "GET", + data, + type: 'store' + }); + }, + GetItem(data) { + return request({ + url: "/admin/SalesDiscounts/GetItem", + method: "GET", + data, + type: 'store' + }); + }, + Create(data) { + return request({ + url: "/admin/SalesDiscounts/Create", + method: "POST", + data, + type: 'store' + }); + }, + }, + + SalesFullDiscounts: { + + List(data) { + return request({ + url: "/admin/SalesFullDiscounts/List", + method: "GET", + data, + type: 'store' + }); + }, + GetItem(data) { + return request({ + url: "/admin/SalesFullDiscounts/GetItem", + method: "GET", + data, + type: 'store' + }); + }, + Create(data) { + return request({ + url: "/admin/SalesFullDiscounts/Create", + method: "POST", + data, + type: 'store' + }); + }, + }, + + SalesFullSetRedution: { + + List(data) { + return request({ + url: "/admin/SalesFullSetRedution/List", + method: "GET", + data, + type: 'store' + }); + }, + GetItem(data) { + return request({ + url: "/admin/SalesFullSetRedution/GetItem", + method: "GET", + data, + type: 'store' + }); + }, + Create(data) { + return request({ + url: "/admin/SalesFullSetRedution/Create", + method: "POST", + data, + type: 'store' + }); + }, + } + +}; \ No newline at end of file diff --git a/api/store/goods.js b/api/store/goods.js index 49a3922..1bcd5a4 100644 --- a/api/store/goods.js +++ b/api/store/goods.js @@ -8,6 +8,7 @@ export default { url: "/admin/goods/goodsList", method: "POST", data, + type: 'store' }); }, @@ -16,6 +17,16 @@ export default { url: "/admin/goods/goodsEditAttribute", method: "POST", data, + type: 'store' + }); + }, + + goodsDel(data) { + return request({ + url: "/admin/goods/goodsDel", + method: "POST", + data, + type: 'store' }); }, @@ -25,6 +36,7 @@ export default { url: "/admin/classify/list", method: "POST", data, + type: 'store' }); }, @@ -33,6 +45,7 @@ export default { url: "/admin/classify/createItem", method: "POST", data, + type: 'store' }); }, @@ -43,6 +56,7 @@ export default { url: "/admin/freightRules/list", method: "POST", data, + type: 'store' }); }, @@ -51,6 +65,7 @@ export default { url: "/admin/goods/goodsItem", method: "POST", data, + type: 'store' }); }, @@ -59,6 +74,7 @@ export default { url: "/admin/goods/goodsEdit", method: "POST", data, + type: 'store' }); }, diff --git a/api/store/index.js b/api/store/index.js index 2390ffe..2ea3098 100644 --- a/api/store/index.js +++ b/api/store/index.js @@ -9,6 +9,7 @@ export default { url: "/admin/dataCount/oneLine", method: "POST", data, + type: 'store' }); }, orderProfit(data) { @@ -16,6 +17,7 @@ export default { url: "/admin/dataCount/orderProfit", method: "POST", data, + type: 'store' }); }, orderGood(data) { @@ -23,6 +25,7 @@ export default { url: "/admin/dataCount/orderGood", method: "POST", data, + type: 'store' }); }, @@ -33,6 +36,7 @@ export default { url: "/admin/store/getStoreSetting", method: "POST", data, + type: 'store' }) }, @@ -41,6 +45,7 @@ export default { url: "/admin/store/setStoreSetting", method: "POST", data, + type: 'store' }) } diff --git a/api/store/order.js b/api/store/order.js index 924ce93..cc2636c 100644 --- a/api/store/order.js +++ b/api/store/order.js @@ -8,6 +8,7 @@ export default { url: "/admin/order/orderList", method: "POST", data, + type: 'store' }); }, @@ -16,6 +17,7 @@ export default { url: "/admin/order/orderSend", method: "POST", data, + type: 'store' }); }, @@ -24,6 +26,7 @@ export default { url: "/admin/order/GetExpressList", method: "POST", data, + type: 'store' }); }, @@ -32,6 +35,7 @@ export default { url: "/admin/order/printOrder", method: "POST", data, + type: 'store' }); }, @@ -40,6 +44,7 @@ export default { url: "/admin/order/updateNotes", method: "POST", data, + type: 'store' }); }, @@ -49,6 +54,7 @@ export default { url: "/admin/shop/checkLog", method: "POST", data, + type: 'store' }); }, @@ -57,6 +63,7 @@ export default { url: "/admin/order/confirmCancel", method: "POST", data, + type: 'store' }); }, @@ -66,6 +73,7 @@ export default { url: "/admin/after_sale/index", method: "POST", data, + type: 'store' }); }, @@ -75,6 +83,7 @@ export default { url: "/admin/after_sale/update", method: "POST", data, + type: 'store' }); }, @@ -83,6 +92,7 @@ export default { url: "/admin/after_sale/show", method: "POST", data, + type: 'store' }); }, @@ -91,6 +101,7 @@ export default { url: "/client/common/express", method: "POST", data, + type: 'store' }); }, enums(data) { @@ -98,6 +109,7 @@ export default { url: "/client/after_sale/enums", method: "POST", data, + type: 'store' }); }, @@ -110,6 +122,7 @@ export default { url: "/admin/OrderInpersonPayment/orderList", method: "POST", data, + type: 'store' }); }, @@ -118,6 +131,7 @@ export default { url: "/admin/OrderInpersonPayment/GetQrItem", method: "POST", data, + type: 'store' }); }, } diff --git a/api/store/recharge.js b/api/store/recharge.js new file mode 100644 index 0000000..46c1e6a --- /dev/null +++ b/api/store/recharge.js @@ -0,0 +1,52 @@ +import { + request +} from "@/utils/request"; + +export default { + List(data) { + return request({ + url: "/admin/recharge/List", + method: "GET", + data, + type: 'store' + }); + }, + + save(data) { + return request({ + url: "/admin/recharge/save", + method: "GET", + data, + type: 'store' + }); + }, + + recharge_list(data) { + return request({ + url: "/admin/recharge/recharge_list", + method: "GET", + data, + type: 'store' + }); + }, + + rechargeSet: { + list(data) { + return request({ + url: "/admin/rechargeSet/list", + method: "GET", + data, + type: 'store' + }); + }, + save(data) { + return request({ + url: "/admin/rechargeSet/save", + method: "GET", + data, + type: 'store' + }); + }, + } + +}; \ No newline at end of file diff --git a/api/store/shop.js b/api/store/shop.js index cd656c2..86bde72 100644 --- a/api/store/shop.js +++ b/api/store/shop.js @@ -9,6 +9,7 @@ export default { url: "/admin/shop/List", method: "POST", data, + type: 'store' }) }, @@ -17,6 +18,7 @@ export default { url: "/admin/shop/edit", method: "POST", data, + type: 'store' }) }, @@ -25,6 +27,7 @@ export default { url: "/admin/shop/editStatus", method: "POST", data, + type: 'store' }) }, @@ -33,6 +36,7 @@ export default { url: "/admin/shop/synchronousGoods", method: "POST", data, + type: 'store' }) }, diff --git a/api/store/user.js b/api/store/user.js index 04e3bfa..01fa152 100644 --- a/api/store/user.js +++ b/api/store/user.js @@ -9,6 +9,7 @@ export default { url: "/admin/user/userList", method: "GET", data, + type: 'store' }) }, @@ -17,6 +18,7 @@ export default { url: "/admin/user/userItem", method: "GET", data, + type: 'store' }) }, @@ -26,6 +28,7 @@ export default { url: "/admin/user/getLog", method: "GET", data, + type: 'store' }) }, @@ -34,6 +37,7 @@ export default { url: "/admin/user/changeInformation", method: "GET", data, + type: 'store' }) }, @@ -42,6 +46,7 @@ export default { url: "/admin/user/UpdateLevel", method: "GET", data, + type: 'store' }) }, diff --git a/api/store/userMembers.js b/api/store/userMembers.js index 4177987..aa97a73 100644 --- a/api/store/userMembers.js +++ b/api/store/userMembers.js @@ -9,6 +9,7 @@ export default { url: "/admin/UserMembers/LevelShow", method: "GET", data, + type: 'store' }) }, @@ -17,6 +18,7 @@ export default { url: "/admin/UserMembers/LevelSave", method: "GET", data, + type: 'store' }) }, @@ -25,6 +27,7 @@ export default { url: "/admin/UserMembers/SetList", method: "GET", data, + type: 'store' }) }, @@ -33,6 +36,7 @@ export default { url: "/admin/UserMembers/SetSave", method: "GET", data, + type: 'store' }) }, @@ -41,6 +45,7 @@ export default { url: "/admin/UserMembers/DiscountList", method: "GET", data, + type: 'store' }) }, @@ -49,6 +54,7 @@ export default { url: "/admin/UserMembers/CreateDiscount", method: "POST", data, + type: 'store' }) }, diff --git a/components/yGoods/index.vue b/components/yGoods/index.vue index 78086d6..10dc9ec 100644 --- a/components/yGoods/index.vue +++ b/components/yGoods/index.vue @@ -110,6 +110,9 @@ const open = (O) => { } if (props.modelValue) { + console.clear(props.modelValue); + console.log(props.modelValue); + if (Array.isArray(props.modelValue)) { LArr.value = JSON.parse(JSON.stringify(props.modelValue)) } else { diff --git a/components/yList/index.vue b/components/yList/index.vue index 8be3820..12a4829 100644 --- a/components/yList/index.vue +++ b/components/yList/index.vue @@ -5,7 +5,7 @@ - + @@ -56,6 +56,10 @@ const props = defineProps({ height: { type: String, default: "100vh" + }, + noPageSize: { + type: Boolean, + default: false } }); @@ -86,14 +90,23 @@ const getData = async () => { ...props.params }); - if (res.data.rows.length) { - query.value.pageSize = res.data.pageSize; - total.value = res.data.total; - list.value = [...list.value, ...res.data.rows]; + if (props.noPageSize) { + if (res.data?.length) { + list.value = res.data + } else { + toast.success('全部加载完了'); + } } else { - toast.success('全部加载完了'); + if (res.data.rows.length) { + query.value.pageSize = res.data.pageSize; + total.value = res.data.total; + list.value = [...list.value, ...res.data.rows]; + } else { + toast.success('全部加载完了'); + } } + loading.value = false; firstLoading.value = true; }; @@ -111,15 +124,29 @@ const upData = async (upParams = {}) => { query.value.page = 1; query.value.pageSize = 20; + list.value = [] + const res = await props.apiObj({ ...query.value, ...props.params, ...upParams }); - query.value.pageSize = res.data.pageSize; - total.value = res.data.total; - list.value = res.data.rows; + if (props.noPageSize) { + if (res.data?.length) { + list.value = res.data + } else { + toast.success('全部加载完了'); + } + } else { + if (res.data.rows.length) { + query.value.pageSize = res.data.pageSize; + total.value = res.data.total; + list.value = res.data.rows; + } else { + toast.success('全部加载完了'); + } + } loading.value = false; }; diff --git a/mall/components/myTabbar/index.vue b/mall/components/myTabbar/index.vue index 5f50bf1..1c0b6e7 100644 --- a/mall/components/myTabbar/index.vue +++ b/mall/components/myTabbar/index.vue @@ -1,10 +1,12 @@ @@ -65,6 +67,7 @@ + @@ -74,6 +77,8 @@ import { useToast } from '@/uni_modules/wot-design-uni' import yList from "/components/yList/index.vue" import goods from '@/api/mall/goods.js' import utils from '@/utils/utils.js' +import { useMessage } from '@/uni_modules/wot-design-uni'; +import { useApi } from "@/hooks/useApi.js" import { onLoad, @@ -81,6 +86,7 @@ import { } from "@dcloudio/uni-app"; const toast = useToast() +const message = useMessage(); const classify_id = ref(0) @@ -149,6 +155,31 @@ const changeS = (row) => { }) } +const delGoods = (row) => { + message + .confirm({ + title: '删除商品', + }) + .then(async (resp) => { + const { fetchData } = await useApi(goods.goodsDel) + + fetchData({ + id: row.id, + }).then(res => { + if (res.code == 0) { + toast.success('操作成功') + search({ value: params.value.keywords }) + } else { + toast.error('出错了') + } + + }) + }) + .catch((error) => { + console.log(error); + }); +} + const classifyList = ref([]) const getClassify = () => { goods.classify.list().then(res => { diff --git a/mall/index/index.vue b/mall/index/index.vue index 2a64e6e..0c6a6ba 100644 --- a/mall/index/index.vue +++ b/mall/index/index.vue @@ -3,7 +3,7 @@ - + @@ -49,6 +49,31 @@ + + 自提订单 + + + +
+ +
+
+
+ + + 当面付订单 + + + +
+ +
+
+
+ - - - - - - @@ -112,14 +131,6 @@ {{ orderProfit.series[0].data[index] }} - -
- 售后订单 - -
- - @@ -176,7 +187,7 @@ const loading = ref(false); /** * 从本地存储中获取用户信息 */ -const user_info = uni.getStorageSync("user_info"); +const mall_info = uni.getStorageSync("mall_info"); /** * @type {Ref} diff --git a/mall/inpersonPay/index.vue b/mall/inpersonPay/index.vue new file mode 100644 index 0000000..34ad815 --- /dev/null +++ b/mall/inpersonPay/index.vue @@ -0,0 +1,289 @@ + + + + + diff --git a/mall/order/index.vue b/mall/order/index.vue index 73a73c1..ed8bed4 100644 --- a/mall/order/index.vue +++ b/mall/order/index.vue @@ -82,7 +82,7 @@ - + joy diff --git a/mall/pickUp/index.vue b/mall/pickUp/index.vue new file mode 100644 index 0000000..e4a9fef --- /dev/null +++ b/mall/pickUp/index.vue @@ -0,0 +1,511 @@ + + + + + diff --git a/mall/setup/index.vue b/mall/setup/index.vue new file mode 100644 index 0000000..f6e31f5 --- /dev/null +++ b/mall/setup/index.vue @@ -0,0 +1,229 @@ + + + + + diff --git a/pages.json b/pages.json index feaeb21..4a07f09 100644 --- a/pages.json +++ b/pages.json @@ -29,6 +29,18 @@ } } }, + { + "path": "function/index", + "style": { + "navigationBarTitleText": "应用中心", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, { "path": "goods/index", "style": { @@ -65,6 +77,162 @@ } } }, + { + "path": "coupon/index", + "style": { + "navigationBarTitleText": "优惠券列表", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "coupon/edit", + "style": { + "navigationBarTitleText": "优惠券编辑", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "coupon/userCoupon", + "style": { + "navigationBarTitleText": "领取记录", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "discount/discount/index", + "style": { + "navigationBarTitleText": "限时折扣", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "discount/discount/edit", + "style": { + "navigationBarTitleText": "限时折扣", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "discount/full_discount/index", + "style": { + "navigationBarTitleText": "梯度折扣", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "discount/full_discount/edit", + "style": { + "navigationBarTitleText": "梯度折扣", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "discount/full_set_redution/index", + "style": { + "navigationBarTitleText": "满额立减", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "discount/full_set_redution/edit", + "style": { + "navigationBarTitleText": "满额立减", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "recharge/index", + "style": { + "navigationBarTitleText": "充值管理", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "recharge/edit", + "style": { + "navigationBarTitleText": "充值方案", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "recharge/userRecharge", + "style": { + "navigationBarTitleText": "充值记录", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "recharge/setUp", + "style": { + "navigationBarTitleText": "设置", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, { "path": "inpersonPay/index", "style": { @@ -161,6 +329,18 @@ } } }, + { + "path": "shop/to", + "style": { + "navigationBarTitleText": "门店登录", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, { "path": "user/list", "style": { @@ -333,6 +513,42 @@ "gestureBack": "YES" } } + }, + { + "path": "setup/index", + "style": { + "navigationBarTitleText": "设置", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "pickUp/index", + "style": { + "navigationBarTitleText": "自提订单", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } + }, + { + "path": "inpersonPay/index", + "style": { + "navigationBarTitleText": "当面付订单", + "enablePullDownRefresh": false, + "mp-alipay": { + "transparentTitle": "always", + "titlePenetrate": "YES", + "gestureBack": "YES" + } + } } ] } diff --git a/pages/login/index.vue b/pages/login/index.vue index e9a3318..86123b3 100644 --- a/pages/login/index.vue +++ b/pages/login/index.vue @@ -19,6 +19,7 @@ import { ref } from 'vue' import user from '@/api/modules/user.js' import utils from '@/utils/utils.js' import md5 from 'js-md5'; +uni.clearStorage(); // 预防本地数据错误 const model = ref({ username: "", @@ -52,6 +53,7 @@ function handleSubmit() { if (res.code == 0) { uni.setStorageSync("token", res.data.access_token); uni.setStorageSync("user_info", res.data.user_info); + uni.showToast({ icon: "none", title: "登录成功", @@ -59,7 +61,10 @@ function handleSubmit() { if (res.data.user_info.type == 1) { utils.toUrl("/store/index/index", "redirectTo") + uni.setStorageSync("store_info", res.data.user_info); } else if (res.data.user_info.type == 3) { + uni.setStorageSync("mall_token", res.data.access_token); + uni.setStorageSync("mall_info", res.data.user_info); utils.toUrl("/mall/index/index", "redirectTo") } else { uni.showToast({ diff --git a/store/components/myTabbar/index.vue b/store/components/myTabbar/index.vue index 5f50bf1..d4a6a4f 100644 --- a/store/components/myTabbar/index.vue +++ b/store/components/myTabbar/index.vue @@ -3,7 +3,9 @@ - + + diff --git a/store/coupon/edit.vue b/store/coupon/edit.vue new file mode 100644 index 0000000..6f34883 --- /dev/null +++ b/store/coupon/edit.vue @@ -0,0 +1,277 @@ + + + + + diff --git a/store/coupon/index.vue b/store/coupon/index.vue new file mode 100644 index 0000000..1a85d8a --- /dev/null +++ b/store/coupon/index.vue @@ -0,0 +1,302 @@ + + + + + diff --git a/store/coupon/userCoupon.vue b/store/coupon/userCoupon.vue new file mode 100644 index 0000000..e767bd0 --- /dev/null +++ b/store/coupon/userCoupon.vue @@ -0,0 +1,211 @@ + + + + + diff --git a/store/discount/discount/edit.vue b/store/discount/discount/edit.vue new file mode 100644 index 0000000..4b1b893 --- /dev/null +++ b/store/discount/discount/edit.vue @@ -0,0 +1,186 @@ + + + + + diff --git a/store/discount/discount/index.vue b/store/discount/discount/index.vue new file mode 100644 index 0000000..523ec4f --- /dev/null +++ b/store/discount/discount/index.vue @@ -0,0 +1,247 @@ + + + + + diff --git a/store/discount/full_discount/edit.vue b/store/discount/full_discount/edit.vue new file mode 100644 index 0000000..207eab2 --- /dev/null +++ b/store/discount/full_discount/edit.vue @@ -0,0 +1,136 @@ + + + + + diff --git a/store/discount/full_discount/index.vue b/store/discount/full_discount/index.vue new file mode 100644 index 0000000..bf8e04a --- /dev/null +++ b/store/discount/full_discount/index.vue @@ -0,0 +1,237 @@ + + + + + diff --git a/store/discount/full_set_redution/edit.vue b/store/discount/full_set_redution/edit.vue new file mode 100644 index 0000000..a8fa935 --- /dev/null +++ b/store/discount/full_set_redution/edit.vue @@ -0,0 +1,193 @@ + + + + + diff --git a/store/discount/full_set_redution/index.vue b/store/discount/full_set_redution/index.vue new file mode 100644 index 0000000..1f4a273 --- /dev/null +++ b/store/discount/full_set_redution/index.vue @@ -0,0 +1,247 @@ + + + + + diff --git a/store/function/index.vue b/store/function/index.vue new file mode 100644 index 0000000..7e0e4b7 --- /dev/null +++ b/store/function/index.vue @@ -0,0 +1,187 @@ + + + + + diff --git a/store/goods/index.vue b/store/goods/index.vue index 37a44bd..2ecd532 100644 --- a/store/goods/index.vue +++ b/store/goods/index.vue @@ -19,7 +19,7 @@
- + @@ -65,6 +67,7 @@
+
@@ -72,8 +75,11 @@ import { ref } from 'vue' import { useToast } from '@/uni_modules/wot-design-uni' import yList from "/components/yList/index.vue" -import goods from '@/api/store/goods.js' +import goodsApi from '@/api/store/goods.js' import utils from '@/utils/utils.js' +import { useMessage } from '@/uni_modules/wot-design-uni'; +import { useApi } from "@/hooks/useApi.js" +const message = useMessage(); import { onLoad, @@ -132,8 +138,10 @@ function changeSearchType({ item, index }) { }) } -const changeS = (row) => { - goods.goodsEditAttribute({ +const changeS = async (row) => { + const { fetchData } = await useApi(goodsApi.goodsEditAttribute) + + fetchData({ id: row.id, value: [1, 0][row.status], type: "status" @@ -143,15 +151,41 @@ const changeS = (row) => { toast.success('操作成功') row.status = [1, 0][row.status] } else { - showNotify({ type: 'error', message: '出错了' }) + toast.error('出错了') } }) } + +const delGoods = (row) => { + message + .confirm({ + title: '删除商品', + }) + .then(async (resp) => { + const { fetchData } = await useApi(goodsApi.goodsDel) + + fetchData({ + id: row.id, + }).then(res => { + if (res.code == 0) { + toast.success('操作成功') + search({ value: params.value.keywords }) + } else { + toast.error('出错了') + } + + }) + }) + .catch((error) => { + console.log(error); + }); +} + const classifyList = ref([]) const getClassify = () => { - goods.classify.list().then(res => { + goodsApi.classify.list().then(res => { classifyList.value = res.data classifyList.value.unshift({ id: 0, diff --git a/store/index/index.vue b/store/index/index.vue index 3b3c1ce..52407dd 100644 --- a/store/index/index.vue +++ b/store/index/index.vue @@ -3,10 +3,20 @@ - + + + + + @@ -14,7 +24,7 @@ - 用户管理 + 会员管理 @@ -24,31 +34,6 @@ - - - - 分类管理 - - - -
- -
-
-
- 商品管理 @@ -61,18 +46,6 @@
- - 订单管理 - - - -
- -
-
-
- 核销记录 @@ -80,45 +53,14 @@
- -
-
-
- - - 当面付订单 - - - -
- +
- - - - - - - - - + @@ -214,7 +156,7 @@ const loading = ref(false); /** * 从本地存储中获取用户信息 */ -const user_info = uni.getStorageSync("user_info"); +const store_info = uni.getStorageSync("store_info"); /** * @type {Ref} diff --git a/store/order/index.vue b/store/order/index.vue index 7255306..0009c22 100644 --- a/store/order/index.vue +++ b/store/order/index.vue @@ -82,7 +82,7 @@ - + joy diff --git a/store/recharge/edit.vue b/store/recharge/edit.vue new file mode 100644 index 0000000..ef6a4bf --- /dev/null +++ b/store/recharge/edit.vue @@ -0,0 +1,121 @@ + + + + + diff --git a/store/recharge/index.vue b/store/recharge/index.vue new file mode 100644 index 0000000..cb310f4 --- /dev/null +++ b/store/recharge/index.vue @@ -0,0 +1,252 @@ + + + + + diff --git a/store/recharge/setUp.vue b/store/recharge/setUp.vue new file mode 100644 index 0000000..efea0d6 --- /dev/null +++ b/store/recharge/setUp.vue @@ -0,0 +1,137 @@ + + + + + diff --git a/store/recharge/userRecharge.vue b/store/recharge/userRecharge.vue new file mode 100644 index 0000000..3bfde84 --- /dev/null +++ b/store/recharge/userRecharge.vue @@ -0,0 +1,162 @@ + + + + + diff --git a/store/setup/index.vue b/store/setup/index.vue index 4c1bfde..ac9f93a 100644 --- a/store/setup/index.vue +++ b/store/setup/index.vue @@ -3,7 +3,7 @@ - +