This commit is contained in:
gboy 2024-04-11 14:33:11 +08:00
commit 4eb2108e4d
10 changed files with 154 additions and 61 deletions

View File

@ -3,11 +3,11 @@ ENV = 'development'
# http://192.168.1.43:8324/admin
# http://mer.crmeb.net/admin
# base api
VUE_APP_BASE_API = 'http://192.168.1.199:8080'
VUE_APP_BASE_API = 'http://192.168.1.131:8080'
# VUE_APP_BASE_API = 'https://plus.hwms.shop'
# socket 连接地址
VUE_APP_WS_URL = 'ws://192.168.1.199:8080'
VUE_APP_WS_URL = 'ws://192.168.1.131:8080'
# VUE_APP_WS_URL = 'ws://plus.hwms.shop'
# vue-cli uses the VUE_CLI_BABEL_TRANSPILE_MODULES environment variable,

View File

@ -195,6 +195,12 @@ export function productStatusSecondApi(data) {
export function productStatusApi(data) {
return request.post(`store/product/status`, data)
}
/**
* @description 商品审核 -- 最终审核
*/
export function productStatusUnlockApi(data) {
return request.post(`store/product/status_unlock`, data)
}
/**
* @description 秒杀商品审核 -- 表单提交
*/

View File

@ -1,7 +1,7 @@
<template>
<div class="divBox">
<div class="selCard">
<el-form :model="tableFrom" ref="searchForm" size="small" label-width="85px" :inline="true">
<el-form :model="tableFrom" ref="searchForm" size="small" label-width="90px" :inline="true">
<el-form-item label="状态:" prop="status">
<el-select
v-model="tableFrom.status"
@ -60,11 +60,11 @@
/>
</el-select>
</el-form-item>
<el-form-item label="关键字:" prop="keyword">
<el-form-item label="商户关键字:" prop="keyword">
<el-input
v-model="tableFrom.keyword"
@keyup.enter.native="getList(1)"
placeholder="请输入商户名称关键字/联系电话"
placeholder="请输入商户名称/企业名称的关键字"
class="selWidth"
clearable
/>
@ -84,13 +84,18 @@
class="switchTable"
>
<el-table-column prop="mer_intention_id" label="ID" min-width="60" />
<el-table-column prop="mer_name" label="商户名称" min-width="150" />
<el-table-column prop="category_name" label="商户分类" min-width="150" />
<el-table-column prop="mer_name" label="店铺名称" min-width="150" />
<el-table-column prop="mer_name" label="企业名称" min-width="150" />
<!-- <el-table-column prop="category_name" label="商户分类" min-width="150" /> -->
<el-table-column prop="type_name" label="店铺类型" min-width="150" />
<el-table-column prop="name" label="商户姓名" min-width="100" />
<el-table-column prop="phone" label="联系方式" min-width="100" />
<el-table-column prop="com.contact" label="对接人姓名" min-width="100" />
<el-table-column prop="com.mobile" label="对接人电话" min-width="100" />
<el-table-column prop="com.number" label="对接人编号" min-width="100" />
<el-table-column prop="com.initiator" label="发起人姓名" min-width="100" />
<el-table-column prop="com.inti_numbe" label="发起人编号" min-width="100" />
<el-table-column prop="com.inti_mobile" label="发起人编号" min-width="100" />
<el-table-column prop="create_time" label="申请时间" min-width="150" />
<el-table-column prop="create_time" label="资质图片" min-width="150">
<!-- <el-table-column prop="create_time" label="资质图片" min-width="150">
<template slot-scope="scope">
<div class="demo-image__preview">
<el-image
@ -102,7 +107,7 @@
/>
</div>
</template>
</el-table-column>
</el-table-column> -->
<el-table-column label="状态" min-width="150">
<template slot-scope="scope">
<el-tag v-if="scope.row.status == 1" type="success">通过</el-tag>

View File

@ -143,7 +143,7 @@ export default {
this.$refs.editForm.resetData();
this.$refs.editForm.activeName = 'detail';
}else{
this.$refs.merInfo.activeName = 'detail';
this.$refs.merInfo.activeName = 'business';
}
this.$emit('closeDrawer');
},

View File

@ -1,7 +1,8 @@
<template>
<div>
<el-tabs type="border-card" v-model="activeName">
<el-tab-pane label="基本信息" name="detail">
<el-tab-pane label="企业信息" name="business">
<div class="section">
<div class="title">基础信息</div>
<ul class="list">
@ -11,33 +12,18 @@
{{merData.mer_name}}
</div>
</li>
<li class="item">
<div>商户分类</div>
<div class="value">
{{merData.category_name}}
</div>
</li>
<li class="item">
<div>店铺类型</div>
<div class="value">{{merData.type_name}}</div>
</li>
<li class="item">
<div>商户状态</div>
<div class="value">{{merData.status == 1 ? "开启" : "关闭"}}</div>
</li>
<li class="item">
<div>更新时间</div>
<div class="value">{{merData.update_time}}</div>
</li>
<li class="item">
<div>备注</div>
<div class="value">{{merData.mark}}</div>
</li>
</ul>
</div>
</el-tab-pane>
<el-tab-pane label="企业信息" name="business">
<div class="section">
<div class="section" v-if="merData.com">
<ul class="list">
<li class="item">
<div>企业名称</div>
@ -93,7 +79,7 @@
{{ merData.com.inti_number}}
</div>
</li>
<li class="item item100">
<li class="item">
<div>发起人手持介绍信照片:</div>
<div class="value">
<el-image v-for="(url,i) in merData.com.init_image"
@ -104,6 +90,26 @@
</el-image>
</div>
</li>
<li class="item">
<div>资质图片:</div>
<div class="value">
<el-image
v-for="(item, index) in merData.images"
:key="index"
style="width: 100px; height: 100px"
:src="item"
:preview-src-list="merData.images"
/>
</div>
<!-- <div class="value">
<el-image v-for="(url,i) in merData.com.init_image"
:key="i"
style="width: 100px; height: 100px"
:src="url"
:preview-src-list="merData.com.init_image">
</el-image>
</div> -->
</li>
<li class="item item100">
<div>是否惠美乡村店铺:</div>
<div class="value">
@ -142,7 +148,7 @@
</div>
</el-tab-pane>
<el-tab-pane label="身份证信息" name="account">
<div class="section">
<div class="section" v-if="merData.idcard">
<div class="title">身份证信息</div>
<ul class="list">
<li class="item">
@ -185,7 +191,7 @@
</div>
</el-tab-pane>
<el-tab-pane label="营业执照信息" name="biz">
<div class="section">
<div class="section" v-if="merData.biz">
<div class="title">营业执照信息</div>
<ul class="list">
<li class="item">
@ -219,11 +225,15 @@
<div>实际经营地址</div>
<div class="value">{{merData.biz.address_true}}</div>
</li>
<li class="item">
<div>实际经营范围</div>
<div class="value">{{merData.biz.businessScope}}</div>
</li>
</ul>
</div>
</el-tab-pane>
<el-tab-pane label="银行卡信息" name="bank">
<div class="section">
<div class="section" v-if="merData.bank">
<div class="title">银行卡信息</div>
<ul class="list">
<li class="item">
@ -245,7 +255,11 @@
<div class="value">{{merData.bank.bankBranchName}}</div>
</li>
<li class="item">
<div>营业执照地址</div>
<div>联行号</div>
<div class="value">{{merData.bank.CNAPS}}</div>
</li>
<li class="item">
<div>银行卡照片</div>
<div class="value">
<el-image v-for="(url,i) in merData.bank.bankCardImg"
:key="i"
@ -287,7 +301,7 @@ export default {
loading: true,
merId: '',
direction: 'rtl',
activeName: 'detail',
activeName: 'business',
timeVal: [],
tableDataLog: {
data: [],

View File

@ -1,7 +1,7 @@
<template>
<div class="divBox">
<div class="selCard">
<el-form :model="tableFrom" ref="searchForm" size="small" label-width="85px" :inline="true">
<el-form :model="tableFrom" ref="searchForm" size="small" label-width="105px" :inline="true">
<el-form-item label="选择时间:">
<el-date-picker
v-model="timeVal"
@ -27,7 +27,7 @@
<el-option label="非自营" value="0" />
</el-select>
</el-form-item>
<el-form-item label="商户分类:" prop="category_id">
<!-- <el-form-item label="商户分类:" prop="category_id">
<el-select
v-model="tableFrom.category_id"
clearable
@ -42,6 +42,18 @@
:value="item.value"
/>
</el-select>
</el-form-item> -->
<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_soldier">
<el-select v-model="tableFrom.is_soldier" 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="type_id">
<el-select
@ -106,6 +118,8 @@
>
<el-table-column prop="mer_id" label="ID" min-width="60" />
<el-table-column prop="mer_name" label="店铺名称" min-width="150" />
<el-table-column prop="mer_name" label="企业名称" min-width="150" />
<el-table-column prop="type_name" label="店铺类型" min-width="150" />
<el-table-column prop="is_huimei" label="是否惠美乡村" min-width="100">
<template slot-scope="scope">
<span>{{scope.row.is_huimei == 1 ? '是' : '否'}}</span>
@ -143,6 +157,12 @@
/>
</template>
</el-table-column>
<el-table-column prop="ext.com.contact" label="对接人姓名" min-width="100" />
<el-table-column prop="ext.com.mobile" label="对接人电话" min-width="100" />
<el-table-column prop="ext.com.number" label="对接人编号" min-width="100" />
<el-table-column prop="ext.com.initiator" label="发起人姓名" min-width="100" />
<el-table-column prop="ext.com.inti_numbe" label="发起人编号" min-width="100" />
<el-table-column prop="ext.com.inti_mobile" label="发起人编号" min-width="100" />
<el-table-column prop="create_time" label="创建时间" min-width="150" />
<el-table-column prop="margin" label="保证金" min-width="150">
<template slot-scope="scope">

View File

@ -76,7 +76,7 @@
<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="1" />
<el-option label="首次修改" value="2" />
</el-select>
</el-form-item>
@ -185,11 +185,13 @@
<span>{{ scope.row.us_status | productStatusFilter }}</span>
</template>
</el-table-column>
<el-table-column prop="refusal" label="拒绝/锁定原因" min-width="110" />
<el-table-column prop="create_time" label="创建时间" min-width="120" />
<el-table-column v-if="Number(tableFrom.type) != 7" key="8" label="操作" min-width="210" fixed="right">
<template slot-scope="scope">
<el-button type="text" size="small" @click="onDetails(scope.row.product_id)">详情</el-button>
<el-button v-if="tableFrom.type === '6' || tableFrom.type === '10' || tableFrom.type === '11'" type="text" size="small" @click.native="toExamine(scope.row.product_id)">{{ getStatusName(scope.row.status) }}</el-button>
<el-button v-if="tableFrom.type === '6' || tableFrom.type === '10' || tableFrom.type === '11'" type="text" size="small" @click.native="toExamine(scope.row.product_id)">审核</el-button>
<el-button v-if="scope.row.status == 15" type="text" size="small" @click.native="toExamine(scope.row.product_id)">解锁</el-button>
<el-button type="text" size="small" class="mr10" @click="handlePreview(scope.row.product_id)">预览</el-button>
<el-dropdown>
<span class="el-dropdown-link">
@ -435,7 +437,7 @@ export default {
{ label: "2星", value: 2 },
{ label: "1星", value: 1 }
],
auditedList:['首次提报','非首次提报','首次修改'],
auditedList:['首次提报','已上架提报','首次修改'],
recommend: proOptions,
recommendList: [{
name: '热门榜单',
@ -532,16 +534,6 @@ export default {
this.getLabelLst()
},
methods: {
getStatusName(val){
switch (val) {
case 0:
return '初始审核';
case 10:
return '二次审核';
case 11:
return '最终审核';
}
},
//
onchangeTime(e) {
this.timeVal = e

View File

@ -32,7 +32,7 @@
<span class="sp">商品id{{ projectData.product_id }}</span>
<span class="sp">商品名称{{ projectData.store_name }}</span>
<span class="sp">平台分类{{ projectData.storeCategory?projectData.storeCategory.cate_name:'' }}</span>
<span class="sp">品牌{{ projectData.brand?projectData.brand.brand_name:'其他' }}</span>
<!-- <span class="sp">品牌{{ projectData.brand?projectData.brand.brand_name:'其他' }}</span> -->
<span class="sp">商品关键字{{ projectData.keyword }}</span>
<span class="sp">商品单位{{ projectData.unit_name }}</span>
<span class="sp">
@ -110,6 +110,24 @@
</div>
</div>
</span>
<span class="upload">
<div class="upload_left">生产许可证</div>
<div class="upload_right">
<div
v-for="(item,index) in qualification.licenceList"
:key="index"
>
<a class="txt" v-if="getType(item)" :href="item.url" target="downloadFile" download>{{ item.name }}</a>
<div class="pictrue" v-else>
<el-image
style="width: 60px; height: 60px;"
:src="item.url"
:preview-src-list="[item.url]"
/>
</div>
</div>
</div>
</span>
<span class="upload">
<div class="upload_left">商标注册证</div>
<div class="upload_right">
@ -316,7 +334,8 @@
</el-table-column>
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="120">
<template slot-scope="scope">
<span class="priceBox" v-text="scope.row[iii]" />
<a v-if="iii==='gist_url'" :href="scope.row[iii]" target="_blank">{{ scope.row[iii] }}</a>
<span v-else class="priceBox" v-text="scope.row[iii]" />
</template>
</el-table-column>
<template v-if="projectData.extension_type === 1">
@ -372,10 +391,11 @@
</el-tab-pane>
</el-tabs>
<el-form ref="ruleForm" :model="ruleForm" :rules="rules" label-width="80px" class="demo-ruleForm">
<el-form-item label="审核状态" prop="status">
<el-form-item :label="projectData.status == 15?'解锁状态':'审核状态'" prop="status">
<el-radio-group v-model="ruleForm.status">
<el-radio :label="1">通过</el-radio>
<el-radio :label="-1">拒绝</el-radio>
<el-radio v-if="projectData.status == 0" :label="-1">拒绝</el-radio>
<el-radio v-if="projectData.status == 10 || projectData.status == 11" :label="15">锁定</el-radio>
</el-radio-group>
</el-form-item>
<el-form-item label="佐证图片" prop="status_img" label-width="80px">
@ -428,7 +448,7 @@
</div>
</div>
</el-form-item> -->
<el-form-item v-if="ruleForm.status===-1" label="原因" prop="refusal">
<el-form-item v-if="ruleForm.status===-1 || ruleForm.status===15" :label="projectData.status != 0 ?'锁定原因':'拒绝原因'" prop="refusal">
<el-input v-model="ruleForm.refusal" type="textarea" placeholder="请输入原因" />
</el-form-item>
</el-form>
@ -449,7 +469,7 @@
// +----------------------------------------------------------------------
// | Author: CRMEB Team <admin@crmeb.com>
// +----------------------------------------------------------------------
import { productDetailApi, productStatusApi,productStatusFirstApi,productStatusSecondApi } from '@/api/product'
import { productStatusUnlockApi,productDetailApi, productStatusApi,productStatusFirstApi,productStatusSecondApi } from '@/api/product'
const defaultObj = {
image: '',
slider_image: [],
@ -656,6 +676,10 @@ export default {
11: {
'api': productStatusApi,
'status':1
},
'15': {
'api': productStatusUnlockApi,
'status':10
}
}
this.$refs.ruleForm.validate(valid=>{
@ -663,7 +687,7 @@ export default {
this.isShow ? this.ruleForm.id = this.proId : this.ruleForm.id = this.ids
let params = {
...this.ruleForm,
status: this.ruleForm.status==-1?-1:mode[this.projectData.status].status,
status: this.ruleForm.status==-1?-1:this.ruleForm.status ==15?15:mode[this.projectData.status].status,
}
mode[this.projectData.status].api(params).then(res => {
this.$message.success(res.message)

View File

@ -145,7 +145,7 @@
</li>
</ul>
</div>
<div class="section">
<!-- <div class="section">
<ul class="list">
<li class="item" v-if="productData.refusal">
<div class="item-title">审核拒绝原因</div>
@ -156,7 +156,7 @@
<el-image v-for="(item,index) in productData.status_img" :key="index" :src="item" style="width:40px;height:40px;margin-right:12px;" :preview-src-list="productData.status_img" />
</li>
</ul>
</div>
</div> -->
<div class="section" style="margin-top: 50px;">
<div class="title">规格列表</div>
<div class="list">
@ -510,6 +510,20 @@
</div>
</div>
</el-tab-pane>
<el-tab-pane label="审核回复栏" name="audit">
<div class="section">
<ul class="list">
<li class="item" v-if="productData.refusal">
<div class="item-title">审核拒绝原因</div>
<div class="value">{{productData.refusal || ''}}</div>
</li>
<li class="item item100">
<div class="item-title">佐证图片</div>
<el-image v-for="(item,index) in productData.status_img" :key="index" :src="item" style="width:40px;height:40px;margin-right:12px;" :preview-src-list="productData.status_img" />
</li>
</ul>
</div>
</el-tab-pane>
<el-tab-pane label="资质信息" name="aptitude">
<span class="sp">商品名称
<el-radio-group v-model="qualification.commodity_type">
@ -537,6 +551,24 @@
</div>
</div>
</span>
<span class="upload">
<div class="upload_left">生产许可证</div>
<div class="upload_right">
<div
v-for="(item,index) in qualification.licenceList"
:key="index"
>
<a class="txt" v-if="getType(item)" :href="item.url" target="downloadFile" download>{{ item.name }}</a>
<div class="pictrue" v-else>
<el-image
style="width: 60px; height: 60px;"
:src="item.url"
:preview-src-list="[item.url]"
/>
</div>
</div>
</div>
</span>
<span class="upload">
<div class="upload_left">商标注册证</div>
<div class="upload_right">

View File

@ -109,7 +109,7 @@ module.exports = {
.plugin('ScriptExtHtmlWebpackPlugin')
.after('html')
.use('script-ext-html-webpack-plugin', [{
// `runtime` must same as runtimeChunk name. default is `runtime`
// `runtime` must same as runtimeChunk name. default is `runtime`
inline: /runtime\..*\.js$/
}])
.end()