Merge branch 'master' of gitee.com:beijing_hongye_huicheng/lilishop-ui

master
Chopper711 2023-10-13 11:14:19 +08:00
commit 709a3f71fd
12 changed files with 854 additions and 406 deletions

View File

@ -490,4 +490,24 @@ export const getHotWordsHistory = (params) => {
return getRequest(`/hotwords/hotwords/history`,params);
};
// 获取文件目录列表
export const getFileDirectory = () => {
return getRequest(commonUrl+`/common/resource/fileDirectory`);
};
// 添加文件目录
export const addFileDirectory = (params) => {
return postRequestWithNoForm(commonUrl+`/common/resource/fileDirectory`,params);
};
// 修改文件目录
export const updateFileDirectory = (params) => {
return putRequestWithNoForm(commonUrl+`/common/resource/fileDirectory`,params);
};
// 删除文件目录
export const delFileDirectory = (id) => {
return deleteRequest(commonUrl+`/common/resource/fileDirectory/${id}`);
};

View File

@ -1,20 +1,20 @@
<template>
<div>
<div class="breadcrumb">
<span @click="clickBreadcrumb(item,index)" :class="{'active':item.selected}" v-for="(item,index) in dateList"
:key="index"> {{item.title}}</span>
<span @click="clickBreadcrumb(item, index)" :class="{ 'active': item.selected }" v-for="(item, index) in dateList"
:key="index"> {{ item.title }}</span>
<div class="date-picker">
<Select @on-change="changeSelect(selectedWay)" v-model="month" placeholder="年月查询" clearable
<Select @on-change="changeSelect($event, selectedWay)" :value="month" placeholder="年月查询" clearable
style="width:200px;margin-left:10px;">
<Option v-for="(item,index) in dates" :value="item.year+'-'+item.month" :key="index" clearable>
{{ item.year+'年'+item.month+'月' }}</Option>
<Option v-for="(item, i) in dates" :value="item.year + '-' + item.month" :key="i" clearable>
{{ item.year + '年' + item.month + '月' }}</Option>
</Select>
</div>
<div class="shop-list" v-if="!closeShop">
<Select clearable @on-change="changeshop(selectedWay)" v-model="storeId" placeholder="店铺查询"
style="width:200px;margin-left:10px;">
<Scroll :on-reach-bottom="handleReachBottom">
<Option v-for="(item,index) in shopsData" :value="item.id" :key="index">{{ item.storeName }}</Option>
<Option v-for="(item, index) in shopsData" :value="item.id" :key="index">{{ item.storeName }}</Option>
</Scroll>
</Select>
</div>
@ -31,7 +31,7 @@ export default {
selectedWay: {
//
title: "最近7天",
title: "过去7天",
selected: true,
searchType: "LAST_SEVEN",
},
@ -56,12 +56,35 @@ export default {
searchType: "YESTERDAY",
},
{
title: "最近7天",
title: "过去7天",
selected: true,
searchType: "LAST_SEVEN",
},
{
title: "最近30天",
title: "过去30天",
selected: false,
searchType: "LAST_THIRTY",
},
],
originDateList: [
//
{
title: "今天",
selected: false,
searchType: "TODAY",
},
{
title: "昨天",
selected: false,
searchType: "YESTERDAY",
},
{
title: "过去7天",
selected: true,
searchType: "LAST_SEVEN",
},
{
title: "过去30天",
selected: false,
searchType: "LAST_THIRTY",
},
@ -126,8 +149,8 @@ export default {
this.dates = dates.reverse();
},
//
changeSelect() {
console.log(this.month);
changeSelect(e) {
this.month = e
if (this.month) {
this.dateList.forEach((res) => {
res.selected = false;
@ -138,29 +161,36 @@ export default {
this.$emit("selected", this.selectedWay);
} else {
const current = this.dateList.find(item => { return item.selected })
this.selectedWay = current
this.clickBreadcrumb(current)
this.$emit("selected", this.selectedWay);
}
},
//
clickBreadcrumb(item) {
this.dateList.forEach((res) => {
let currentIndex;
this.dateList.forEach((res,index) => {
res.selected = false;
if(res.title === item.title){
currentIndex = index
}
});
item.selected = true;
item.storeId = this.storeId;
this.month = "";
if (item.searchType == "") {
if (
dateList.some((date) => {
return date.title == item.title;
})
) {
item.searchType = date.searchType;
let currentDate = this.originDateList[currentIndex].searchType
if (currentDate) {
item.searchType = currentDate
} else {
item.searchType = "LAST_SEVEN";
}
}
this.selectedWay = item;
this.selectedWay.year = new Date().getFullYear();
this.selectedWay.month = "";
@ -174,17 +204,19 @@ export default {
.breadcrumb {
display: flex;
align-items: center;
> span {
>span {
margin-right: 15px;
cursor: pointer;
}
}
.active {
color: $theme_color;
position: relative;
}
.date-picker {
}
.date-picker {}
.active:before {
content: "";
position: absolute;

View File

@ -5,6 +5,19 @@
<div class="div-flow-left">
<div class="div-form-default">
<h3>退货申请</h3>
<dl>
<dt>退货商品</dt>
<dd>
<div>
<img :src="afterSaleInfo.goodsImage" style="height: 60px">
</div>
<a @click="linkTo(afterSaleInfo.goodsId, afterSaleInfo.skuId)">{{ afterSaleInfo.goodsName }}
</a><br>
<span>{{ afterSaleInfo.num }}(数量)</span>
</dd>
</dl>
<dl>
<dt>退货状态</dt>
<dd>{{ afterSaleInfo.serviceName }}</dd>
@ -155,43 +168,6 @@
</div>
<div class="div-flow-center"></div>
<div class="div-flow-right">
<div class="div-form-default">
<h3>相关商品交易信息</h3>
<dl>
<dt>
<img :src="afterSaleInfo.goodsImage" height="60px" />
</dt>
<dd>
<div class="div-zoom">
<a @click="linkTo(afterSaleInfo.goodsId, afterSaleInfo.skuId)">{{
afterSaleInfo.goodsName
}}</a>
<Poptip trigger="hover" title="扫码在手机中查看" transfer>
<div slot="content">
<vue-qr
:text="wapLinkTo(afterSaleInfo.goodsId, afterSaleInfo.skuId)"
:margin="0"
colorDark="#000"
colorLight="#fff"
:size="150"
></vue-qr>
</div>
<img
src="../../../assets/qrcode.svg"
style="vertical-align: middle"
class="hover-pointer ml_10"
width="20"
height="20"
alt=""
/>
</Poptip>
</div>
<div style="color: #999; font-size: 10px">
数量x{{ afterSaleInfo.num }}
</div>
</dd>
</dl>
</div>
<div class="div-form-default">
<h3>订单相关信息</h3>
<dl>

View File

@ -8,6 +8,13 @@
<dl>
<dt>投诉商品</dt>
<dd>{{complaintInfo.goodsName}}</dd>
<dd>
<div>
<img :src="complaintInfo.goodsImage" style="height: 60px">
</div>
<a>{{ complaintInfo.goodsName }}</a><br>
<span>{{ complaintInfo.num }}(数量)</span>
</dd>
</dl>
<dl>
<dt>投诉状态</dt>
@ -144,19 +151,6 @@
</div>
<div class="div-flow-right">
<div class="div-form-default">
<h3>相关商品交易信息</h3>
<dl>
<dt>
<img :src="complaintInfo.goodsImage" height="60px">
</dt>
<dd>
<a @click="linkTo(complaintInfo.goodsId, complaintInfo.skuId)">{{complaintInfo.goodsName}}</a><br>
<span>{{complaintInfo.goodsPrice}} * {{complaintInfo.num}}(数量)</span>
</dd>
</dl>
</div>
<div class="div-form-default">
<h3>订单相关信息</h3>
<dl>

View File

@ -66,6 +66,13 @@
>
</div>
</div>
<div class="decorate-view">
<div class="decorate-view-title">当前页面状态</div>
<div>
<Tag :type="result.pageShow === 'OPEN' ? 'green' : 'red'">{{result.pageShow === 'OPEN' ? '开启' : '关闭'}}</Tag>
</div>
</div>
</div>
</div>
</div>
@ -87,6 +94,7 @@ export default {
},
data() {
return {
result:"",
picModelFlag: false, //
type: "full", //
@ -131,6 +139,7 @@ export default {
res.result.pageData
? this.$set(this, "advertising", [JSON.parse(res.result.pageData)])
: "";
this.result = res.result
});
},
//

View File

@ -66,6 +66,13 @@
>
</div>
</div>
<div class="decorate-view">
<div class="decorate-view-title">当前页面状态</div>
<div>
<Tag :type="result.pageShow === 'OPEN' ? 'green' : 'red'">{{result.pageShow === 'OPEN' ? '开启' : '关闭'}}</Tag>
</div>
</div>
</div>
</div>
</div>
@ -90,6 +97,7 @@ export default {
},
data() {
return {
result:"",
picModelFlag: false, //
type: "full", //
//广
@ -140,6 +148,7 @@ export default {
res.result.pageData
? this.$set(this, "advertising", [JSON.parse(res.result.pageData)])
: "";
this.result = res.result
});
},
//

View File

@ -172,18 +172,20 @@
<div>
<Table stripe :columns="columns" :data="data"></Table>
</div>
<!-- (index) => {
refundParams.pageNumber = index;
} -->
<!-- (size) => {
(refundParams.pageSize = size), (refundParams.pageNumber = 1);
} -->
<Page
v-if="showRecords"
size="small"
@on-change="
(index) => {
refundParams.pageNumber = index;
}
pageNumberChange
"
@on-page-size-change="
(size) => {
(refundParams.pageSize = size), (refundParams.pageNumber = 1);
}
pageSizeChange
"
class="mt_10"
show-total
@ -523,6 +525,14 @@ export default {
},
},
methods: {
pageNumberChange(val){
this.refundParams.pageNumber = val
this.getOrderList();
},
pageSizeChange(val){
this.refundParams.pageSize = val
this.getOrderList();
},
//
initOrderChart() {
// legend-filter
@ -563,11 +573,13 @@ export default {
clickBreadcrumb(item, index) {
let callback = JSON.parse(JSON.stringify(item));
console.log("callback",callback)
this.orderParams = callback;
this.overViewParams = callback;
this.refundParams = callback;
this.refundParams.pageNumber = 1
this.refundParams.pageSize = 10
},
//

File diff suppressed because it is too large Load Diff

View File

@ -1,45 +1,42 @@
<template>
<div>
<div class="breadcrumb">
<span @click="clickBreadcrumb(item,index)" :class="{'active':item.selected}" v-for="(item,index) in dateList" :key="index"> {{item.title}}</span>
<span @click="clickBreadcrumb(item, index)" :class="{ 'active': item.selected }" v-for="(item, index) in dateList"
:key="index"> {{ item.title }}</span>
<div class="date-picker">
<Select @on-change="changeSelect(selectedWay)" v-model="month" placeholder="年月查询" style="width:200px;margin-left:10px;">
<Option v-for="(item,index) in dates" :value="item.year+'-'+item.month" :key="index">{{ item.year+''+item.month+'' }}</Option>
<Select @on-change="changeSelect($event, selectedWay)" :value="month" placeholder="年月查询"
style="width:200px;margin-left:10px;">
<Option v-for="(item, index) in dates" :value="item.year + '-' + item.month" :key="index">{{
item.year + '年' + item.month + '月' }}</Option>
</Select>
</div>
</div>
</div>
</template>
<script>
import Cookies from "js-cookie";
import { getShopListData } from "@/api/shops.js";
export default {
props: ["closeShop"],
data() {
return {
month: "", //
defuaultWay: {
title: "最近7天",
selected: true,
searchType: "LAST_SEVEN",
},
month: "", //
selectedWay: {
title: "最近7天",
//
title: "过去7天",
selected: true,
searchType: "LAST_SEVEN",
},
storeId: "", // id
dates: [], //
params: { //
params: {
//
pageNumber: 1,
pageSize: 10,
storeName: "",
storeId: "",
},
dateList: [
//
{
title: "今天",
selected: false,
@ -51,23 +48,77 @@ export default {
searchType: "YESTERDAY",
},
{
title: "最近7天",
title: "过去7天",
selected: true,
searchType: "LAST_SEVEN",
},
{
title: "最近30天",
title: "过去30天",
selected: false,
searchType: "LAST_THIRTY",
},
],
originDateList: [
//
{
title: "今天",
selected: false,
searchType: "TODAY",
},
{
title: "昨天",
selected: false,
searchType: "YESTERDAY",
},
{
title: "过去7天",
selected: true,
searchType: "LAST_SEVEN",
},
{
title: "过去30天",
selected: false,
searchType: "LAST_THIRTY",
},
],
shopTotal: "", //
shopsData: [], //
};
},
mounted() {
this.storeId = JSON.parse(Cookies.get("userInfoSeller")).id;
this.getFiveYears();
this.getShopList();
},
methods: {
//
handleReachBottom() {
setTimeout(() => {
if (this.params.pageNumber * this.params.pageSize <= this.shopTotal) {
this.params.pageNumber++;
this.getShopList();
}
}, 1500);
},
//
getShopList() {
getShopListData(this.params).then((res) => {
if (res.success) {
/**
* 解决数据请求中滚动栏会一直上下跳动
*/
this.shopTotal = res.result.total;
this.shopsData.push(...res.result.records);
}
});
},
//
changeshop(val) {
this.selectedWay.storeId = this.storeId;
this.$emit("selected", this.selectedWay);
},
// 5
getFiveYears() {
let getYear = new Date().getFullYear();
@ -89,8 +140,9 @@ export default {
}
this.dates = dates.reverse();
},
//
changeSelect() {
//
changeSelect(e) {
this.month = e
if (this.month) {
this.dateList.forEach((res) => {
res.selected = false;
@ -101,29 +153,36 @@ export default {
this.$emit("selected", this.selectedWay);
} else {
const current = this.dateList.find(item => { return item.selected })
this.selectedWay = current
this.clickBreadcrumb(current)
this.$emit("selected", this.selectedWay);
}
},
//
//
clickBreadcrumb(item) {
this.dateList.forEach((res) => {
let currentIndex;
this.dateList.forEach((res,index) => {
res.selected = false;
if(res.title === item.title){
currentIndex = index
}
});
item.selected = true;
item.storeId = this.storeId;
this.month = "";
if (item.searchType == "") {
if (
dateList.some((date) => {
return date.title == item.title;
})
) {
item.searchType = date.searchType;
if (item.searchType == "") {
let currentDate = this.originDateList[currentIndex].searchType
if (currentDate) {
item.searchType = currentDate
} else {
item.searchType = "LAST_SEVEN";
}
}
this.selectedWay = item;
this.selectedWay.year = new Date().getFullYear();
this.selectedWay.month = "";
@ -137,17 +196,20 @@ export default {
.breadcrumb {
display: flex;
align-items: center;
> span {
>span {
margin-right: 15px;
cursor: pointer;
}
}
.active {
color: $theme_color;
position: relative;
}
.date-picker {
}
.date-picker {}
.active:before {
content: "";
position: absolute;

View File

@ -7,7 +7,13 @@
<h3>投诉信息</h3>
<dl>
<dt>投诉商品</dt>
<dd>{{ complaintInfo.goodsName }}</dd>
<dd>
<div>
<img :src="complaintInfo.goodsImage" style="height: 60px">
</div>
<a>{{ complaintInfo.goodsName }}</a><br>
<span>{{ complaintInfo.goodsPrice | unitPrice }} * {{ complaintInfo.num }}(数量)</span>
</dd>
</dl>
<dl>
<dt>投诉状态</dt>
@ -160,19 +166,6 @@
</div>
<div class="div-flow-right">
<div class="div-form-default">
<h3>相关商品交易信息</h3>
<dl>
<dt>
<img :src="complaintInfo.goodsImage" height="60px">
</dt>
<dd>
<a>{{ complaintInfo.goodsName }}</a><br>
<span>{{ complaintInfo.goodsPrice | unitPrice }} * {{ complaintInfo.num }}(数量)</span>
</dd>
</dl>
</div>
<div class="div-form-default">
<h3>订单相关信息</h3>
<dl>

View File

@ -8,8 +8,15 @@
<div class="div-form-default">
<h3>售后申请</h3>
<dl>
<dt>售后状态</dt>
<dd>{{filterStatus(afterSaleInfo.serviceStatus)}}</dd>
<dt>售后商品</dt>
<dd>
<div>
<img :src="afterSaleInfo.goodsImage" style="height: 60px">
</div>
<a>{{ afterSaleInfo.goodsName }}</a><br>
<span>{{ afterSaleInfo.num }}(数量)</span>
</dd>
</dl>
<dl>
@ -155,20 +162,6 @@
</div>
<div class="div-flow-right">
<div class="div-form-default">
<h3>相关商品交易信息</h3>
<dl>
<dt>
<img :src="afterSaleInfo.goodsImage" height="60px">
</dt>
<dd>
<a>{{ afterSaleInfo.goodsName }}</a><br>
<span>{{ afterSaleInfo.num }}(数量)</span><br>
</dd>
</dl>
</div>
<div class="div-form-default">
<h3>订单相关信息</h3>
<dl>

View File

@ -152,7 +152,7 @@
<div>
<Table stripe :columns="columns" :data="data"></Table>
</div>
<Page @on-change="(index)=>{refundParams.pageNumber = index}" @on-page-size-change="(size)=>{refundParams.pageSize= size}" class="mt_10" show-total show-elevator :total="total" />
<Page @on-change="pageNumberChange" @on-page-size-change="pageSizeChange" class="mt_10" show-total show-elevator :total="total" />
</div>
</Card>
@ -459,6 +459,14 @@ export default {
},
},
methods: {
pageNumberChange(val){
this.refundParams.pageNumber = val
this.getOrderList();
},
pageSizeChange(val){
this.refundParams.pageSize = val
this.getOrderList();
},
//
initOrderChart() {
// legend-filter