This commit is contained in:
gboy 2024-04-09 20:29:43 +08:00
commit 730ece5ec6
7 changed files with 266 additions and 56 deletions

View File

@ -67,8 +67,8 @@ export function merchantUpdateApi(id) {
/**
* @description 商户列表 -- 编辑
*/
export function merchantUpdate(id,data) {
return request.post(`system/merchant/update/${id}`,data)
export function merchantUpdate(id, data) {
return request.post(`system/merchant/update/${id}`, data)
}
/**
* @description 商户列表 -- 删除
@ -198,19 +198,19 @@ export function intentionAgreeInfo() {
* @description 申请管理 -- 入驻协议保存
*/
export function intentionAgreeUpdate(data) {
return request.post(`agreement/sys_intention_agree`,data)
return request.post(`agreement/sys_intention_agree`, data)
}
/**
* @description 店铺类型 -- 获取说明
*/
export function getStoreTypeApi(key) {
return request.get(`agreement/${key}`)
export function getStoreTypeApi(key) {
return request.get(`agreement/${key}`)
}
/**
* @description 店铺类型 -- 编辑说明
*/
export function updateStoreTypeApi(type, data) {
return request.post(`agreement/${type}`, data)
return request.post(`agreement/${type}`, data)
}
/**
* @description 商户列表 -- 开启关闭
@ -229,150 +229,186 @@ export function merchantCountApi() {
* @description 店铺类型 -- 创建店铺类型
*/
export function storeTypeCreateApi(data) {
return request.post(`merchant/type/create`, data)
return request.post(`merchant/type/create`, data)
}
/**
* @description 店铺类型 -- 列表
*/
export function storeTypeLstApi(data) {
export function storeTypeLstApi(data) {
return request.get(`merchant/type/lst`, data)
}
/**
* @description 店铺类型 -- 店铺权限
*/
export function storeJurisdictionApi() {
export function storeJurisdictionApi() {
return request.get(`merchant/mer_auth`)
}
/**
* @description 店铺类型 -- 创建店铺类型
*/
export function storeTypeUpdateApi(id, data) {
return request.post(`merchant/type/update/${id}`, data)
return request.post(`merchant/type/update/${id}`, data)
}
/**
* @description 店铺类型列表 -- 删除
*/
export function storeTypeDeleteApi(id) {
return request.delete(`merchant/type/delete/${id}`)
return request.delete(`merchant/type/delete/${id}`)
}
/**
* @description 店铺类型列表 -- 备注
*/
export function merchantTypeMarkForm(id) {
return request.get(`merchant/type/mark/${id}`)
return request.get(`merchant/type/mark/${id}`)
}
/**
* @description 店铺类型列表 -- 详情
*/
export function merchantTypeDetailApi(id) {
export function merchantTypeDetailApi(id) {
return request.get(`/merchant/type/detail/${id}`)
}
/**
* @description 店铺类型 -- 获取选择项
*/
export function getstoreTypeApi() {
return request.get(`merchant/type/options`)
return request.get(`merchant/type/options`)
}
/**
* @description 商户分类 -- 获取选择项
*/
export function getMerCateApi() {
return request.get(`system/merchant/category/options`)
return request.get(`system/merchant/category/options`)
}
/**
* @description 服务申请 -- 列表
*/
export function getApplymentLst(data) {
return request.get(`system/applyments/lst`, data)
return request.get(`system/applyments/lst`, data)
}
/**
* @description 服务申请 -- 审核
*/
export function applymentStatusApi(id, data) {
return request.post(`system/applyments/status/${id}`, data)
return request.post(`system/applyments/status/${id}`, data)
}
/**
* @description 服务申请 -- 详情
*/
export function applymentDetailApi(id) {
return request.get(`system/applyments/detail/${id}`)
return request.get(`system/applyments/detail/${id}`)
}
/**
* @description 商户 -- 分账列表
*/
export function applymentLstApi(data) {
return request.get(`profitsharing/lst`, data)
export function applymentLstApi(data) {
return request.get(`profitsharing/lst`, data)
}
/**
* @description 商户 -- 分账立即分账
*/
export function splitAccountApi(id) {
return request.post(`profitsharing/again/${id}`)
export function splitAccountApi(id) {
return request.post(`profitsharing/again/${id}`)
}
/**
* @description 分账申请 -- 备注
*/
export function splitAccountMark(id) {
return request.get(`system/applyments/mark/${id}/form`)
return request.get(`system/applyments/mark/${id}/form`)
}
/**
* @description 分账管理 -- 导出
*/
export function ledgerManageExportApi(data) {
export function ledgerManageExportApi(data) {
return request.get(`profitsharing/export`, data)
}
/**
* @description 缴存保证金 -- 列表
*/
export function marginLstApi(data) {
export function marginLstApi(data) {
return request.get(`margin/lst`, data)
}
/**
* @description 缴存服务费 -- 列表
*/
export function marginServiceLstApi(data) {
return request.get(`margin/service_lst`, data)
}
/**
* @description 缴存上架费 -- 列表
*/
export function marginGoodsLstApi(data) {
return request.get(`margin/goods_lst`, data)
}
/**
* @description 待缴保证金 -- 列表
*/
export function marginDepositLstApi(data) {
return request.get(`margin/make_up`, data)
}
/**
* @description 待缴服务费 -- 列表
*/
export function marginServiceDepositLstApi(data) {
return request.get(`margin/make_service_up`, data)
}
/**
* @description 待缴上架费 -- 列表
*/
export function marginGoodsDepositLstApi(data) {
return request.get(`margin/make_goods_up`, data)
}
/**
* @description 待缴保证金 -- 线下付款
*/
export function marginPaymentApi(id) {
return request.get(`margin/local/${id}/form`)
}
/**
* @description 待缴服务费 -- 财务审核
*/
export function marginServicePaymentApi(id) {
return request.get(`margin/local_service/${id}/form`)
}
/**
* @description 待缴上架费 -- 财务审核
*/
export function marginGoodsPaymentApi(id) {
return request.get(`margin/local_goods/${id}/form`)
}
/**
* @description 退回保证金 -- 列表
*/
export function marginRefundLstApi(data) {
export function marginRefundLstApi(data) {
return request.get(`margin/refund/lst`, data)
}
/**
* @description 退回保证金 -- 审核
*/
export function marginRefundStatus(id) {
export function marginRefundStatus(id) {
return request.get(`margin/refund/status/${id}/form`)
}
/**
* @description 退回保证金 -- 备注
*/
export function marginRefundMark(id) {
export function marginRefundMark(id) {
return request.get(`margin/refund/mark/${id}/form`)
}
/**
* @description 退回保证金 -- 退回信息
*/
export function marginRefundInfo(id) {
export function marginRefundInfo(id) {
return request.get(`margin/refund/show/${id}`)
}
/**
* @description 退回保证金 -- 扣费记录
*/
export function marginDeductionRecord(id, data) {
export function marginDeductionRecord(id, data) {
return request.get(`margin/list/${id}`, data)
}
/**
* @description 退回保证金 -- 保证金扣费
*/
export function marginDeductionForm(id) {
export function marginDeductionForm(id) {
return request.get(`margin/set/${id}/form`)
}
/**

View File

@ -14,7 +14,12 @@ import request from './request'
export function feedbackListApi(data) {
return request.get(`user/feedback/lst`, data)
}
/**
* @description 导出订单
*/
export function exportOrderApi(data) {
return request.get(`user/feedback/export`, data)
}
/**
* @description 备注
*/
@ -72,6 +77,6 @@ export function changeFeedbackStatus(id, status) {
/**
* @description 反馈回复
*/
export function replyFeedbackApi(id) {
export function replyFeedbackApi(id) {
return request.get(`user/feedback/reply/${id}/form`)
}

View File

@ -18,14 +18,14 @@ const uniqueId = () => ++unique
export default function modalForm(formRequestPromise, config = {}) {
const h = this.$createElement
return new Promise((resolve) => {
formRequestPromise.then(({data}) => {
formRequestPromise.then(({ data }) => {
data.config.submitBtn = false
data.config.resetBtn = false
if (!data.config.form) data.config.form = {}
if (!data.config.formData) data.config.formData = {}
data.config.formData = {...data.config.formData, ...config.formData}
data.config.form.labelWidth = '110px'
data.config.form.size="small"
data.config.formData = { ...data.config.formData, ...config.formData }
// data.config.form.labelWidth = '110px'
data.config.form.size = "small"
data.config.global = {
upload: {
props: {
@ -41,7 +41,7 @@ export default function modalForm(formRequestPromise, config = {}) {
this.$msgbox({
title: data.title,
customClass: config.class || 'modal-form',
message: h('div', {class: 'common-form-create', key: uniqueId()}, [
message: h('div', { class: 'common-form-create', key: uniqueId() }, [
h('formCreate', {
props: {
rule: data.rule,

View File

@ -238,6 +238,26 @@
<span>{{ scope.row.is_margin == 1 ? scope.row.margin : (scope.row.ot_margin-scope.row.margin).toFixed(2) }}</span>
</template>
</el-table-column>
<el-table-column
v-if="type == 3"
key="15"
label="待缴金额"
min-width="100"
>
<template slot-scope="scope">
<span>{{ scope.row.is_service == 1 ? scope.row.service_cost : (scope.row.ot_service_cost-scope.row.service_cost).toFixed(2) }}</span>
</template>
</el-table-column>
<el-table-column
v-if="type == 4"
key="15"
label="待缴金额"
min-width="100"
>
<template slot-scope="scope">
<span>{{ scope.row.is_goods == 1 ? scope.row.goods_cost : (scope.row.ot_goods_cost-scope.row.goods_cost).toFixed(2) }}</span>
</template>
</el-table-column>
<el-table-column
v-if="type == 2"
key="18"
@ -257,6 +277,7 @@
label="操作"
min-width="150"
fixed="right"
v-if="type != 5 && type !=6"
>
<template slot-scope="scope">
<el-button
@ -292,19 +313,18 @@
>退回信息</el-button
>
<el-button
v-if="type != 2"
v-if="type != 2 && type != 3 && type != 4"
type="text"
size="small"
@click="handleRecord(scope.row.mer_id)"
>操作记录</el-button
>
<el-button
v-if="type == 2"
v-if="type == 2 || type == 3 || type == 4"
type="text"
size="small"
@click="offline(scope.row.mer_id)"
>财务审核</el-button
>
>财务审核</el-button>
</template>
</el-table-column>
</el-table>
@ -456,11 +476,17 @@
// +----------------------------------------------------------------------
import {
marginLstApi,
marginServiceLstApi,
marginGoodsLstApi,
marginRefundLstApi,
marginRefundStatus,
marginRefundMark,
marginDepositLstApi,
marginServiceDepositLstApi,
marginGoodsDepositLstApi,
marginPaymentApi,
marginServicePaymentApi,
marginGoodsPaymentApi,
getstoreTypeApi,
marginDeductionForm,
getMerCateApi,
@ -493,11 +519,31 @@ export default {
type: "2",
title: "待缴保证金",
},
{
count: "",
type: "3",
title: "待缴服务费",
},
{
count: "",
type: "4",
title: "待缴上架费",
},
{
count: "",
type: "1",
title: "缴存保证金",
},
{
count: "",
type: "5",
title: "缴存服务费",
},
{
count: "",
type: "6",
title: "缴存上架费",
},
{
count: "",
type: "0",
@ -599,6 +645,46 @@ export default {
this.listLoading = false;
this.$message.error(res.message);
})
: this.type == 3 ? marginServiceDepositLstApi(this.tableFrom) //
.then((res) => {
this.tableData.data = res.data.list;
this.tableData.total = res.data.count;
this.listLoading = false;
})
.catch((res) => {
this.listLoading = false;
this.$message.error(res.message);
})
: this.type == 4 ? marginGoodsDepositLstApi(this.tableFrom) //
.then((res) => {
this.tableData.data = res.data.list;
this.tableData.total = res.data.count;
this.listLoading = false;
})
.catch((res) => {
this.listLoading = false;
this.$message.error(res.message);
})
: this.type == 5 ? marginServiceLstApi(this.tableFrom) //
.then((res) => {
this.tableData.data = res.data.list;
this.tableData.total = res.data.count;
this.listLoading = false;
})
.catch((res) => {
this.listLoading = false;
this.$message.error(res.message);
})
: this.type == 6 ? marginGoodsLstApi(this.tableFrom) //
.then((res) => {
this.tableData.data = res.data.list;
this.tableData.total = res.data.count;
this.listLoading = false;
})
.catch((res) => {
this.listLoading = false;
this.$message.error(res.message);
})
: marginRefundLstApi(this.tableFrom) //退
.then((res) => {
this.tableData.data = res.data.list;
@ -667,7 +753,11 @@ export default {
},
// 线
offline(id) {
this.$modalForm(marginPaymentApi(id)).then(() => this.getList(""));
this.type == 2?
this.$modalForm(marginPaymentApi(id)).then(() => this.getList(""))
: this.type == 3 ?
this.$modalForm(marginServicePaymentApi(id)).then(() => this.getList(""))
:this.$modalForm(marginGoodsPaymentApi(id)).then(() => this.getList(""))
},
// 退
handleRecord(id) {

View File

@ -67,12 +67,19 @@
clearable
/>
</el-form-item>
<el-form-item label="是否惠美乡村:" prop="us_status">
<el-form-item label="是否惠美乡村:" prop="is_huimei">
<el-select v-model="tableFrom.is_huimei" placeholder="请选择" class="filter-item selWidth" clearable @change="getList(1)">
<el-option label="是" value="1" />
<el-option label="否" value="0" />
</el-select>
</el-form-item>
<el-form-item label="审核状态:" prop="is_audited">
<el-select v-model="tableFrom.is_audited" placeholder="请选择" class="filter-item selWidth" clearable @change="getList(1)">
<el-option label="首次提报" value="0" />
<el-option label="非首次提报" value="1" />
<el-option label="首次修改" value="2" />
</el-select>
</el-form-item>
<el-form-item>
<el-button type="primary" size="small" @click="getList(1)">搜索</el-button>
<el-button size="small" @click="searchReset()">重置</el-button>
@ -493,6 +500,8 @@ export default {
hot_type: '',
star: '',
svip_price_type: '',
is_audited:'',
is_huimei:'',
product_id: this.$route.query.id ? this.$route.query.id : ""
},
categoryList: [],

View File

@ -378,7 +378,7 @@
<el-radio :label="-1">拒绝</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="佐证图片" prop="status_img" label-width="80px" v-if="ruleForm.status===1">
<el-form-item label="佐证图片" prop="status_img" label-width="80px">
<div class="acea-row">
<div
v-for="(item, index) in ruleForm.status_img"
@ -390,7 +390,12 @@
@dragenter="handleDragEnter($event, item)"
@dragend="handleDragEnd($event, item)"
>
<img :src="item">
<!-- <img :src="item"> -->
<el-image
style="width: 60px; height: 60px"
:src="item"
:preview-src-list="[item]"
/>
<i
class="el-icon-error btndel"
@click="handleRemove(index)"
@ -470,7 +475,8 @@ const defaultObj = {
stock: null,
bar_code: '',
weight: null,
volume: null
volume: null,
gist_url:null
}],
attr: [],
selectRule: '',
@ -502,6 +508,9 @@ const objTitle = {
},
volume: {
title: '体积(m³)'
},
gist_url: {
title: '依据链接'
}
}
const proOptions = [{ name: '是否热卖', value: 'is_hot' }, { name: '优品推荐', value: 'is_good' }, { name: '促销单品', value: 'is_benefit' }, { name: '是否精品', value: 'is_best' }, { name: '是否新品', value: 'is_new' }]
@ -526,9 +535,9 @@ export default {
refusal: [
{ required: true, message: '请填写拒绝原因', trigger: 'blur' }
],
status_img: [
{type: 'array', required: true, message: '请上传佐证图片', trigger: 'blur' }
]
// status_img: [
// {type: 'array', required: true, message: '', trigger: 'blur' }
// ]
},
isAppend: true,
proId: 0,
@ -676,6 +685,8 @@ export default {
this.proId = id
this.loading = true
this.ruleForm.status_img = []
this.ruleForm.status = 1
this.ruleForm.refusal = ''
productDetailApi(id).then(res => {
this.projectData = res.data,
this.ruleForm.status_img = res.data.status_img

View File

@ -1,7 +1,7 @@
<template>
<div class="divBox">
<div class="selCard">
<el-form :model="tableFrom" ref="searchForm" inline size="small" label-width="75px" @submit.native.prevent>
<el-form :model="tableFrom" ref="searchForm" inline size="small" label-width="80px" @submit.native.prevent>
<el-form-item label="关键字:" prop="keyword">
<el-input
v-model="tableFrom.keyword"
@ -10,6 +10,28 @@
class="selWidth"
/>
</el-form-item>
<el-form-item label="回复状态:" prop="status">
<el-select v-model="tableFrom.status" placeholder="请选择" class="filter-item selWidth" clearable @change="getList(1)">
<el-option label="已回复" value="1" />
<el-option label="未回复" value="0" />
</el-select>
</el-form-item>
<el-form-item label="时间选择:" prop="time">
<el-date-picker
v-model="timeVal"
value-format="yyyy/MM/dd"
format="yyyy/MM/dd"
type="daterange"
placement="bottom-end"
placeholder="自定义时间"
start-placeholder="开始日期"
end-placeholder="结束日期"
style="width: 280px;"
:picker-options="pickerOptions"
@change="onchangeTime"
clearable
/>
</el-form-item>
<el-form-item>
<el-button type="primary" size="small" @click="getList(1)">搜索</el-button>
<el-button size="small" @click="searchReset(1)">重置</el-button>
@ -17,7 +39,7 @@
</el-form>
</div>
<el-card class="mt14">
<el-button size="small" type="primary" class="mb20" @click="exports">导出记录</el-button>
<el-table v-loading="listLoading" :data="tableData.data" size="small">
<el-table-column prop="feedback_id" label="ID" min-width="60" />
<el-table-column prop="uid" label="用户ID" min-width="100" />
@ -47,6 +69,7 @@
</template>
</el-table-column>
<el-table-column prop="create_time" label="反馈时间" min-width="150" />
<el-table-column prop="update_time" label="回复时间" min-width="150" />
<el-table-column label="操作" min-width="100" fixed="right">
<template slot-scope="scope">
<!--<el-button type="text" size="small" @click="onEdit(scope.row.feedback_id)">备注</el-button>-->
@ -56,7 +79,6 @@
@click="handleDelete(scope.row.feedback_id, scope.$index)"
>删除</el-button>
<el-button
v-if="scope.row.status != 1"
type="text"
size="small"
@click="handleReply(scope.row.feedback_id)"
@ -93,9 +115,11 @@ import {
feedbackListApi,
feedbackReplyApi,
feedbackDeleteApi,
replyFeedbackApi
replyFeedbackApi,
exportOrderApi
} from "@/api/userFeedback";
import createWorkBook from '@/utils/newToExcel.js';
import timeOptions from '@/utils/timeOptions';
export default {
name: "Classify",
data() {
@ -104,10 +128,13 @@ export default {
data: [],
total: 0
},
pickerOptions: timeOptions,
timeVal: [],
tableFrom: {
page: 1,
limit: 20,
keyword: ""
keyword: "",
status: ""
},
listLoading: true
};
@ -116,11 +143,43 @@ export default {
this.getList();
},
methods: {
//
onchangeTime(e) {
this.timeVal = e
this.tableFrom.time = e ? this.timeVal.join('-') : ''
this.getList(1)
},
/**重置 */
searchReset(){
this.timeVal = []
this.tableFrom.time = ""
this.$refs.searchForm.resetFields()
this.getList(1)
},
async exports() {
let excelData = JSON.parse(JSON.stringify(this.tableFrom)), data = []
excelData.page = 1
let pageCount = 1
let lebData = {};
for (let i = 0; i < pageCount; i++) {
lebData = await this.downData(excelData)
pageCount = Math.ceil(lebData.count/excelData.limit)
if (lebData.export.length) {
data = data.concat(lebData.export)
excelData.page++
}
}
createWorkBook(lebData.header, lebData.title, data, lebData.foot,lebData.filename);
return
},
/**订单列表 */
downData(excelData) {
return new Promise((resolve, reject) => {
exportOrderApi(excelData).then((res) => {
return resolve(res.data)
})
})
},
//
getList(num) {
this.tableFrom.page = num || this.tableFrom.page;