This commit is contained in:
faiz 2024-04-13 18:17:12 +08:00
parent 6f9b4285bb
commit d2919817e6
15 changed files with 333 additions and 101 deletions

View File

@ -340,10 +340,10 @@ export function marginGoodsLstApi(data) {
return request.get(`margin/goods_lst`, data)
}
/**
* @description 待缴保证金 -- 列表
* @description 线下转账 -- 列表
*/
export function marginDepositLstApi(data) {
return request.get(`margin/make_up`, data)
return request.get(`margin/make_offline`, data)
}
/**
* @description 待缴服务费 -- 列表
@ -361,7 +361,7 @@ export function marginGoodsDepositLstApi(data) {
* @description 待缴保证金 -- 线下付款
*/
export function marginPaymentApi(id) {
return request.get(`margin/local/${id}/form`)
return request.get(`margin/offline/${id}/form`)
}
/**
* @description 待缴服务费 -- 财务审核

View File

@ -53,7 +53,7 @@ export function getMenusApi() {
/**
* @description 创建用户
*/
export function createUserApi() {
export function createUserApi() {
return request.get(`user/create`)
}
/**
@ -134,7 +134,7 @@ export function changelabelApi(id) {
/**
* @description 用户列表 -- 编辑会员等级
*/
export function changeMemberApi(id) {
export function changeMemberApi(id) {
return request.get(`user/member/${id}/form`)
}
/**
@ -147,7 +147,7 @@ export function changeNowMoneyApi(id) {
* @description 用户列表 -- 修改积分
*/
export function changeNowIntegralApi(id) {
return request.get(`user/change_integral/form/${id}`)
return request.get(`user/change_integral/form/${id}`)
}
/**
* @description 用户列表 -- 批量设置分组
@ -237,102 +237,102 @@ export function cityListApi(uid) {
* @description 用户 -- 修改用户推荐人(表单)
*/
export function modifyUserReferrer(uid) {
return request.get(`user/change_spread_form/${uid}`)
return request.get(`user/change_spread_form/${uid}`)
}
/**
* @description 用户 -- 推荐人修改记录
*/
export function modifyUserRefLog(uid, data) {
return request.get(`user/spread_log/${uid}`, data)
return request.get(`user/spread_log/${uid}`, data)
}
/**
* @description 用户 -- 获取协议
*/
export function getAgreementApi(key) {
return request.get(`agreement/${key}`)
return request.get(`agreement/${key}`)
}
/**
* @description 用户 -- 编辑协议
*/
export function updateAgreementApi(type, data) {
return request.post(`agreement/${type}`, data)
return request.post(`agreement/${type}`, data)
}
/**
* @description 用户搜索信息 -- 列表
*/
export function userSearchLstApi(data) {
return request.get("user/search_log", data)
return request.get("user/search_log", data)
}
/**
* @description 用户搜索信息 -- 导出
*/
export function recordListImportApi(data) {
return request.get("user/search_log/export", data)
return request.get("user/search_log/export", data)
}
/**
* @description 会员管理 -- 添加会员
*/
export function addInterestsApi() {
export function addInterestsApi() {
return request.get('user/member/create/form')
}
/**
* @description 会员管理 -- 列表
*/
export function interestsLstApi(data) {
export function interestsLstApi(data) {
return request.get('user/member/lst', data)
}
/**
* @description 会员管理 -- 编辑
*/
export function interestsUpdateApi(id) {
export function interestsUpdateApi(id) {
return request.get(`user/member/update/${id}/form`)
}
/**
* @description 会员管理 -- 删除
*/
export function interestsDeleteApi(id) {
export function interestsDeleteApi(id) {
return request.delete(`user/member/delete/${id}`)
}
/**
* @description 会员 -- 说明
*/
export function interestsInfo(key) {
export function interestsInfo(key) {
return request.get(`agreement/${key}`)
}
/**
* @description 会员管理 -- 编辑
*/
export function interestsUpdate(key,data) {
export function interestsUpdate(key, data) {
return request.post(`agreement/${key}`, data)
}
/**
* @description 会员 -- 配置
*/
export function interestsConfig(key) {
export function interestsConfig(key) {
return request.get(`config/${key}`)
}
/**
* @description 会员权益 -- 添加
*/
export function addBenefitsApi() {
export function addBenefitsApi() {
return request.get('member/interests/create/form')
}
/**
* @description 会员权益 -- 列表
*/
export function benefitsLstApi(data) {
export function benefitsLstApi(data) {
return request.get('member/interests/lst', data)
}
/**
* @description 会员权益 -- 编辑
*/
export function benefitsUpdateApi(id) {
export function benefitsUpdateApi(id) {
return request.get(`/member/interests/update/${id}/form`)
}
/**
* @description 会员权益 -- 删除
*/
export function benefitsDeleteApi(id) {
export function benefitsDeleteApi(id) {
return request.delete(`member/interests/delete/${id}`)
}
/**
@ -345,61 +345,61 @@ export function getVersion() {
/**
* @description 会员类型 -- 添加
*/
export function levelCreateApi() {
export function levelCreateApi() {
return request.get('user/svip/type/form')
}
/**
* @description 会员类型 -- 编辑
*/
export function levelUpdateApi(id) {
export function levelUpdateApi(id) {
return request.get(`user/svip/type/${id}/form`)
}
/**
* @description 会员类型 -- 删除
*/
export function levelDeteleApi(id) {
export function levelDeteleApi(id) {
return request.delete(`user/svip/type/delete/${id}`)
}
/**
* @description 付费会员权益 -- 权益状态
*/
export function levelStatusApi(id, status) {
export function levelStatusApi(id, status) {
return request.post(`user/svip/type/status/${id}`, { status })
}
/**
* @description 付费会员类型 -- 列表
*/
export function levelListApi() {
export function levelListApi() {
return request.get('user/svip/type/lst')
}
/**
* @description 付费会员权益 -- 列表
*/
export function memberEquityListApi() {
export function memberEquityListApi() {
return request.get('svip/interests/lst')
}
/**
* @description 付费会员权益 -- 编辑表单
*/
export function memberEquityUpdateApi(id) {
export function memberEquityUpdateApi(id) {
return request.get(`svip/interests/${id}/form`)
}
/**
* @description 付费会员权益 -- 权益状态
*/
export function memberEquityStatusApi(id, status) {
export function memberEquityStatusApi(id, status) {
return request.post(`svip/interests/status/${id}`, { status })
}
/**
* @description 付费会员记录 -- 列表
*/
export function memberRecordListApi(data) {
export function memberRecordListApi(data) {
return request.get('user/svip/order_lst', data)
}
/**
* @description 用户 -- 赠送付费会员
*/
export function giveMemberApi(id) {
export function giveMemberApi(id) {
return request.get(`user/svip/${id}/form`)
}
/**
@ -447,7 +447,7 @@ export function exportUserApi(data) {
/**
* @description 用户列表 -- 编辑
*/
export function userEditApi(id,data) {
export function userEditApi(id, data) {
return request.post(`user/update/${id}`, data)
}
/**
@ -466,7 +466,7 @@ export function userInfoSelectApi() {
* @description 付费会员记录 -- 数据统计
*/
export function memberRecordCard(data) {
return request.get(`user/svip/count_info`,data)
return request.get(`user/svip/count_info`, data)
}
/**
@ -474,4 +474,10 @@ export function memberRecordCard(data) {
*/
export function memberGrowthLog(data) {
return request.get(`user/member_log`, data)
}
/**
* @description 验证码 -- 查询
*/
export function sysVerifyCodeApi(data) {
return request.post(`verify_code`, data)
}

View File

@ -93,7 +93,8 @@
<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="com.inti_mobile" label="发起人电话" min-width="100" />
<el-table-column prop="biz.city" label="所属城市" min-width="100" />
<el-table-column prop="create_time" label="申请时间" min-width="150" />
<!-- <el-table-column prop="create_time" label="资质图片" min-width="150">
<template slot-scope="scope">
@ -116,6 +117,7 @@
<div v-if="scope.row.status == 2">原因{{ scope.row.fail_msg }}</div>
</template>
</el-table-column>
<el-table-column prop="audit_name" label="审核人" min-width="80" />
<el-table-column prop="mark" label="备注" min-width="150" />
<el-table-column label="操作" min-width="150" fixed="right">
<template slot-scope="scope">

View File

@ -26,13 +26,13 @@
<div class="section" v-if="merData.com">
<ul class="list">
<li class="item">
<div>企业名称</div>
<div>企业名称</div>
<div class="value">
{{merData.com.name}}
</div>
</li>
<li class="item">
<div>企业类型</div>
<div>企业类型</div>
<div class="value">
{{merData.com.type}}
</div>

View File

@ -57,7 +57,7 @@
/>
</el-select>
</el-form-item>
<el-form-item label="店铺类型:" prop="type_id">
<!-- <el-form-item label="店铺类型:" prop="type_id">
<el-select
v-model="tableFrom.type_id"
clearable
@ -72,7 +72,7 @@
:value="item.value"
/>
</el-select>
</el-form-item>
</el-form-item> -->
<el-form-item v-if="type == 0" label="退回状态:" prop="status">
<el-select
v-model="tableFrom.status"
@ -134,7 +134,17 @@
<span>{{(scope.row.merchant&&scope.row.merchant.mer_name) || scope.row.mer_name}}</span>
</template>
</el-table-column>
<el-table-column v-if="type!=0" key="10" label="店铺类型" min-width="120">
<el-table-column
v-if="type == 2"
key="18"
label="转账类型"
min-width="100"
>
<template slot-scope="scope">
<span>{{ scope.row.type==10?'保证金':scope.row.type==30?'技术服务费':'上架费' }}</span>
</template>
</el-table-column>
<!-- <el-table-column v-if="type!=0" key="10" label="店铺类型" min-width="120">
<template slot-scope="scope">
<span v-if="type != 2" class="spBlock">{{
scope.row.merchantType &&
@ -149,7 +159,7 @@
: ""
}}</span>
</template>
</el-table-column>
</el-table-column> -->
<el-table-column
label="商户姓名"
min-width="100"
@ -231,11 +241,11 @@
<el-table-column
v-if="type == 2"
key="15"
label="待缴金额"
label="转账金额"
min-width="100"
>
<template slot-scope="scope">
<span>{{ scope.row.is_margin == 1 ? scope.row.margin : (scope.row.ot_margin-scope.row.margin).toFixed(2) }}</span>
<span>{{ scope.row.pay_price }}</span>
</template>
</el-table-column>
<el-table-column
@ -258,7 +268,7 @@
<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
<!-- <el-table-column
v-if="type == 2"
key="18"
label="保证金额度"
@ -267,12 +277,24 @@
<template slot-scope="scope">
<span>{{ scope.row.ot_margin }}</span>
</template>
</el-table-column>
</el-table-column> -->
<el-table-column label="备注" min-width="120">
<template slot-scope="scope">
<span>{{ type == 0 ? scope.row.admin_mark : scope.row.mark }}</span>
</template>
</el-table-column>
<el-table-column
v-if="type == 2"
key="18"
label="缴费凭证"
min-width="100"
>
<template slot-scope="scope">
<div class="demo-image__preview">
<el-image :src="scope.row.image" :preview-src-list="[scope.row.image]" />
</div>
</template>
</el-table-column>
<el-table-column
label="操作"
min-width="150"
@ -323,7 +345,7 @@
v-if="type == 2 || type == 3 || type == 4"
type="text"
size="small"
@click="offline(scope.row.mer_id)"
@click="offline(scope.row.order_id)"
>财务审核</el-button>
</template>
</el-table-column>
@ -517,18 +539,18 @@ export default {
{
count: "",
type: "2",
title: "待缴保证金",
},
{
count: "",
type: "3",
title: "待缴服务费",
},
{
count: "",
type: "4",
title: "待缴上架费",
title: "线下转账",
},
// {
// count: "",
// type: "3",
// title: "",
// },
// {
// count: "",
// type: "4",
// title: "",
// },
{
count: "",
type: "1",

View File

@ -13,17 +13,17 @@
<div class="title">基础信息</div>
<el-row :gutter="24" class="mt20">
<el-col :span="12">
<el-form-item label="商户名称:" prop="mer_name">
<el-form-item label="店铺名称:" prop="mer_name">
<el-input
size="small"
v-model="merData.mer_name"
placeholder="请填写商户名称"
placeholder="请填写店铺名称"
class="selWidth"
/>
</el-form-item>
</el-col>
<el-col :span="12">
<el-form-item label="商户地址:" prop="mer_address">
<el-form-item label="店铺地址:" prop="mer_address">
<el-input
size="small"
v-model="merData.mer_address"
@ -33,6 +33,18 @@
</el-form-item>
</el-col>
</el-row>
<el-row :gutter="24" class="mt20">
<el-col :span="12">
<el-form-item label="企业名称:" prop="ext.com.contact" v-if="merData.ext.com">
<el-input
size="small"
v-model="merData.ext.com.contact"
placeholder="请填写企业名称"
class="selWidth"
/>
</el-form-item>
</el-col>
</el-row>
<el-row>
<el-col :span="12">
<el-form-item label="商户分类:" prop="category_id">
@ -207,7 +219,7 @@
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="产品服务费保证金" label-width="146px">
<el-form-item label="技术服务费" label-width="146px">
<el-radio-group v-model="merData.is_service">
<el-radio :label="0" class="radio"></el-radio>
<el-radio :label="1"></el-radio>
@ -215,7 +227,7 @@
<span v-if="merData.is_service == 1">
<el-input
v-model="merData.service_cost"
placeholder="请填写保证金"
placeholder="请填写技术服务费"
style="width:120px;margin-left: 8px;"
/> ,
</span>
@ -230,7 +242,7 @@
</el-form-item>
</el-col>
<el-col :span="24">
<el-form-item label="上架费保证金" label-width="146px">
<el-form-item label="上架费" label-width="146px">
<el-radio-group v-model="merData.is_goods">
<el-radio :label="0" class="radio"></el-radio>
<el-radio :label="1"></el-radio>
@ -238,7 +250,7 @@
<span v-if="merData.is_goods == 1">
<el-input
v-model="merData.goods_cost"
placeholder="请填写保证金"
placeholder="请填写上架费"
style="width:120px;margin-left: 8px;"
/> ,
</span>
@ -274,7 +286,7 @@
</el-form-item>
</el-col>
<el-col v-if="!isAdd" :span="8">
<el-form-item label="产品服务费支付状态:" label-width="142px">
<el-form-item label="技术服务费支付状态:" label-width="142px">
<span>{{merData.is_service == 1 ? '待缴' : merData.is_service == 0 ? '无' : '已缴' }}</span>
</el-form-item>
</el-col>
@ -291,7 +303,7 @@
</el-form-item>
</el-col>
<el-col v-if="!isAdd" :span="8">
<el-form-item label="产品服务费余额:">
<el-form-item label="技术服务费余额:">
<span>{{merData.service_cost}}</span>
</el-form-item>
</el-col>

View File

@ -11,6 +11,12 @@
{{merData.mer_name}}
</div>
</li>
<li class="item" v-if="merData.ext">
<div>企业名称</div>
<div class="value">
{{merData.ext.com?merData.ext.com.contact:'无'}}
</div>
</li>
<li class="item">
<div>商户类型</div>
<div class="value">{{merData.is_trader == 1 ? "自营" : "非自营"}}</div>
@ -122,11 +128,35 @@
</div>
</li>
<li class="item">
<div>产品服务费</div>
<div>技术服务费</div>
<div class="value">
{{merData.is_service == 0 ? '无' : merData.service_cost}}
</div>
</li>
<li class="item">
<div>上架费支付状态</div>
<div class="value">
{{merData.is_goods == 1 ? '待缴' : merData.is_goods == 0 ? '无' : '已缴' }}
</div>
</li>
<li class="item">
<div>技术服务费支付状态</div>
<div class="value">
{{merData.is_service == 1 ? '待缴' : merData.is_service == 0 ? '无' : '已缴' }}
</div>
</li>
<li class="item">
<div>上架费余额</div>
<div class="value">
{{merData.goods_cost == 0 ? '无' : merData.goods_cost}}
</div>
</li>
<li class="item">
<div>技术服务费余额</div>
<div class="value">
{{merData.service_cost == 0 ? '无' : merData.service_cost}}
</div>
</li>
<li v-if="merData.is_margin != 0" class="item">
<div>保证金支付状态</div>
<div class="value">{{merData.is_margin == 1 ? '待缴' : merData.is_margin == 0 ? '无' : '已缴' }}

View File

@ -118,7 +118,7 @@
>
<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="ext.com.contact" 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">
@ -162,7 +162,8 @@
<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="ext.com.inti_mobile" label="发起人电话" min-width="100" />
<el-table-column prop="ext.biz.city" 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

@ -146,7 +146,7 @@
<el-input
v-model="tableFrom.keywords"
@keyup.enter.native="getList(1),getCardList()"
placeholder="请输入订单号/收货人/联系方式"
placeholder="请输入订单号/收货人/联系方式/ID/商品编号"
class="selWidth"
clearable
/>
@ -169,6 +169,24 @@
clearable
/>
</el-form-item>
<!-- <el-form-item label="商品ID" prop="product_id">
<el-input
v-model="tableFrom.product_id"
@keyup.enter.native="getList(1),getCardList()"
placeholder="请输入商品ID"
class="selWidth"
clearable
/>
</el-form-item>
<el-form-item label="商品编号:" prop="bar_code">
<el-input
v-model="tableFrom.bar_code"
@keyup.enter.native="getList(1),getCardList()"
placeholder="请输入商品编号"
class="selWidth"
clearable
/>
</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>
@ -388,7 +406,9 @@ export default {
pay_type: "",
filter_delivery: '',
filter_product : '',
activity_type: ''
activity_type: '',
product_id:'',
bar_code:''
},
dliveryWayList: [
{ value: 1, label: '快递订单' },

View File

@ -194,6 +194,24 @@
<el-tab-pane label="商品信息" name="goods">
<template v-if="activeName == 'goods'">
<el-table :data="orderDetailList.orderProduct" size="small">
<el-table-column label="ID" min-width="90">
<template slot-scope="scope">
<div class="tab">
<div class="line1">
{{ scope.row.cart_info.productAttr.product_id ? scope.row.cart_info.productAttr.product_id : '-' }}
</div>
</div>
</template>
</el-table-column>
<el-table-column label="商品编号" min-width="90">
<template slot-scope="scope">
<div class="tab">
<div class="line1">
{{ scope.row.cart_info.productAttr.bar_code ? scope.row.cart_info.productAttr.bar_code : '-' }}
</div>
</div>
</template>
</el-table-column>
<el-table-column label="商品信息" min-width="300">
<template slot-scope="scope">
<div class="tab">

View File

@ -50,7 +50,7 @@
</el-table-column>
<el-table-column label="成本价" min-width="100" align="center">
<template slot-scope="scope">
<el-input-number :disabled="true" v-model="oneFormBatch[0].cost" :min="0" class="priceBox" controls-position="right"/>
<el-input @input="handleOnform('cost')" v-model="oneFormBatch[0].cost" class="priceBox" controls-position="right"/>
</template>
</el-table-column>
<el-table-column label="市场价" min-width="100" align="center">
@ -111,7 +111,7 @@
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="120">
<template slot-scope="scope">
<el-input v-if="formThead[iii].title==='商品编号'" v-model="scope.row[iii]" type="text" class="priceBox" />
<el-input v-else @input="handleCost(scope.row,iii,$event)" :disabled="formThead[iii].title === '成本价'||formThead[iii].title === '占比'||formThead[iii].title === '成长值'" v-model="scope.row[iii]" class="priceBox" controls-position="right"/>
<el-input v-else @input="handleCost(scope.row,iii)" :disabled="formThead[iii].title === '占比'||formThead[iii].title === '成长值'" v-model="scope.row[iii]" class="priceBox" controls-position="right"/>
</template>
</el-table-column>
<template v-if="formValidate.extension_type === 1">
@ -150,7 +150,7 @@
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="120">
<template slot-scope="scope">
<el-input v-if="formThead[iii].title==='商品编号'" v-model="scope.row[iii]" type="text" class="priceBox" />
<el-input v-else @input="handleCost(scope.row,iii,$event)" :disabled="formThead[iii].title === '成本价'||formThead[iii].title === '占比'||formThead[iii].title === '成长值'" v-model="scope.row[iii]" class="priceBox" controls-position="right"/>
<el-input v-else @input="handleCost(scope.row,iii)" :disabled="formThead[iii].title === '占比'||formThead[iii].title === '成长值'" v-model="scope.row[iii]" class="priceBox" controls-position="right"/>
</template>
</el-table-column>
<template v-if="formValidate.extension_type === 1">
@ -353,21 +353,36 @@ export default {
handleOnform(type){
if(type=='ot_price'){
this.oneFormBatch[0].ot_price = this.oneFormBatch[0].ot_price.replace(/^([0-9-]\d*\.?\d{0,2})?.*$/,'$1')
}else if(type=='cost'){
this.oneFormBatch[0].cost = this.oneFormBatch[0].cost.replace(/^([0-9-]\d*\.?\d{0,2})?.*$/,'$1')
this.oneFormBatch[0].growth = parseInt( this.oneFormBatch[0].price*(0.9-( this.oneFormBatch[0].cost/ this.oneFormBatch[0].price)))
this.oneFormBatch[0].proportion = (this.oneFormBatch[0].cost/this.oneFormBatch[0].price).toFixed(2)
}else{
this.oneFormBatch[0].price = this.oneFormBatch[0].price.replace(/^([0-9-]\d*\.?\d{0,2})?.*$/,'$1')
this.oneFormBatch[0].cost = (this.oneFormBatch[0].price * 0.6).toFixed(2)
this.oneFormBatch[0].growth = parseInt(this.oneFormBatch[0].price * 0.3)
this.oneFormBatch[0].growth = parseInt( this.oneFormBatch[0].price*(0.9-( this.oneFormBatch[0].cost/ this.oneFormBatch[0].price)))
this.oneFormBatch[0].proportion = (this.oneFormBatch[0].cost/this.oneFormBatch[0].price).toFixed(2)
}
},
handleCost(val,i,e){
handleCost(val,i){
console.log(val);
if(i=='price'){
val.price=val.price.replace(/^([0-9-]\d*\.?\d{0,2})?.*$/,'$1')
val.cost = (e * 0.6).toFixed(2)
val.growth = parseInt(e*0.3)
// val.cost = (e * 0.6).toFixed(2)
// val.growth = parseInt(e*0.3)
val.growth = parseInt(val.price*(0.9-(val.cost/val.price)))
val.proportion = (val.cost/val.price).toFixed(2)
}
if(i=='cost'){
val.cost=val.cost.replace(/^([0-9-]\d*\.?\d{0,2})?.*$/,'$1')
val.growth = parseInt(val.price*(0.9-(val.cost/val.price)))
val.proportion = (val.cost/val.price).toFixed(2)
}
if(i=='ot_price'){
val.ot_price=val.ot_price.replace(/^([0-9-]\d*\.?\d{0,2})?.*$/,'$1')
// val.proportion = (val.cost/val.price).toFixed(2)
// val.growth = parseInt(val.price*(0.9-(val.cost/val.price)))
if(!val.price){
this.$message.error('成本价低于0')
}
@ -528,18 +543,25 @@ export default {
content: info.content,
store_info: info.store_info
}
let oneFormBatch= [
{
image: '',
price: 0,
proportion:0.6,
growth:0,
cost: 0,
ot_price: 0,
stock: 0,
bar_code: '',
weight: 0,
volume: 0
}
]
this.oneFormBatch = oneFormBatch
if (this.formValidate.spec_type === 0) {
this.OneattrValue = info.attrValue.map((item) => {
item.growth = (item.price * 0.3).toFixed(2)
item.proportion = '0.6'
return item
})
this.OneattrValue = info.attrValue
} else {
this.ManyAttrValue = info.attrValue.map((item) => {
item.growth = (item.price * 0.3).toFixed(2)
item.proportion = '0.6'
return item
})
this.ManyAttrValue = info.attrValue
console.log(this.ManyAttrValue);
this.ManyAttrValue.forEach(val => {
if (val.detail !== 'undefined' && val.detail !== null) {

View File

@ -155,6 +155,11 @@
</template>
</el-table-column>
<el-table-column prop="remark" label="商家备注" min-width="100" />
<el-table-column label="是否惠美乡村店铺" min-width="100">
<template slot-scope="scope">
<span>{{ scope.row.merchant.is_huimei ? '是' : '否' }}</span>
</template>
</el-table-column>
<el-table-column label="是否惠美乡村产品" min-width="100">
<template slot-scope="scope">
<span>{{ scope.row.is_huimei ? '是' : '否' }}</span>
@ -188,7 +193,7 @@
</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">
<el-table-column 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)">审核</el-button>
@ -221,6 +226,9 @@
<info-from ref="infoFrom" :is-show="isShow" :ids="OffId" @subSuccess="subSuccess" />
<el-dialog title="商品编辑" :visible.sync="dialogVisible" width="960px" :before-close="handleClose" :append-to-body='append'>
<el-form ref="formValidate" v-loading="fullscreenLoading" class="formValidate mt20" :rules="ruleValidate" :model="formValidate" size="small" label-width="100px" @submit.native.prevent>
<el-form-item label="品牌名称:" prop="store_name">
<el-input :disabled='true' :value="formValidate.qualification&&formValidate.qualification.brands_name" size="small" placeholder="请输入商品名称" />
</el-form-item>
<el-form-item label="商品名称:" prop="store_name">
<el-input v-model="formValidate.store_name" size="small" placeholder="请输入商品名称" />
</el-form-item>
@ -474,6 +482,7 @@ export default {
keyword:'',
cate_id:0,
slider_image: [],
qualification:{}
},
productStatusList: [
{ label: "上架显示", value: 1 },
@ -741,7 +750,8 @@ export default {
star: info.star,
keyword:info.keyword,
cate_id:info.cate_id,
slider_image: info.slider_image
slider_image: info.slider_image,
qualification:info.qualification
}
if(info.is_benefit === 1) this.checkboxGroup.push('is_benefit')
if(info.is_hot === 1) this.checkboxGroup.push('is_hot')

View File

@ -332,7 +332,7 @@
</div>
</template>
</el-table-column>
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="120">
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="80">
<template slot-scope="scope">
<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]" />
@ -492,7 +492,9 @@ const defaultObj = {
svip_price: null,
cost: null,
ot_price: null,
stock: null,
proportion:0.6,
stock: 0,
growth:0,
bar_code: '',
weight: null,
volume: null,
@ -517,9 +519,15 @@ const objTitle = {
ot_price: {
title: '市场价'
},
proportion: {
title: '占比'
},
stock: {
title: '库存'
},
growth: {
title: '成长值'
},
bar_code: {
title: '商品编号'
},

View File

@ -67,11 +67,19 @@
<!-- <img v-for="(pic,idx) in productData.slider_image" :key="idx" :src="pic" style="width:40px;height:40px;margin-right:12px;"/> -->
</li>
</ul>
<li class="item item100">
<ul class="list">
<li class="item">
<div class="item-title">商品简介</div>
<div class="value">{{productData.store_info}}</div>
</li>
<ul class="list">
<li class="item">
<div class="item-title">商品名称</div>
<div class="value">{{productData.store_name}}</div>
</li>
<li class="item">
<div class="item-title">品牌名称</div>
<div class="value">{{productData.qualification&&productData.qualification.brands_name}}</div>
</li>
<li class="item">
<div class="item-title">平台分类</div>
<div class="value">{{productData.storeCategory&&productData.storeCategory.cate_name || '-'}}</div>
@ -173,7 +181,7 @@
</div>
</template>
</el-table-column>
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="120">
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="80">
<template slot-scope="scope">
<span class="priceBox" v-text="scope.row[iii]" />
</template>
@ -208,7 +216,7 @@
</div>
</template>
</el-table-column>
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="100">
<el-table-column v-for="(item,iii) in attrValue" :key="iii" :label="formThead[iii].title" align="center" min-width="80">
<template slot-scope="scope">
<span class="priceBox">{{ scope.row[iii] }}</span>
</template>
@ -777,7 +785,9 @@ const defaultObj = {
svip_price: null,
cost: null,
ot_price: null,
stock: null,
proportion:0.6,
stock: 0,
growth:0,
bar_code: '',
weight: null,
volume: null
@ -801,9 +811,15 @@ const objTitle = {
ot_price: {
title: '市场价'
},
proportion: {
title: '占比'
},
stock: {
title: '库存'
},
growth: {
title: '成长值'
},
bar_code: {
title: '商品编号'
},

View File

@ -19,6 +19,9 @@
<el-option v-for="(item, index) in groupList" :key="index" :value="item.group_id" :label="item.group_name" />
</el-select>
</el-form-item>
<el-form-item label="身份证号码:" prop="card_id" label-width="100px">
<el-input placeholder="请输入身份证号码" v-model="userFrom.card_id" clearable></el-input>
</el-form-item>
<el-form-item label="用户标签:" prop="label_id">
<el-select v-model="userFrom.label_id" placeholder="请选择" class="selWidth" clearable filterable @change="changeSearch(1)">
<el-option v-for="(item, index) in labelLists" :key="index" :value="item.label_id" :label="item.label_name" />
@ -144,6 +147,7 @@
</el-tabs>
<div class="mb20">
<el-button type="primary" size="small" @click="createUser">创建用户</el-button>
<el-button type="primary" size="small" @click="GetverifyCode">验证码查询</el-button>
<el-button v-show="user_type === 'wechat'" size="small" @click="sendNews">发送图文消息</el-button>
<el-button :disabled="checkedIds.length == 0" size="small" @click="batchGroup">批量设置分组</el-button>
<el-button :disabled="checkedIds.length == 0" size="small" @click="batchlabel">批量设置标签</el-button>
@ -224,6 +228,8 @@
</template>
</el-table-column>
<el-table-column prop="phone" label="手机号" min-width="120" />
<el-table-column prop="real_name" label="真实姓名" min-width="120" />
<el-table-column prop="card_id" label="身份证号码" min-width="120" />
<el-table-column label="等级" min-width="100">
<template slot-scope="{row}">
<span>{{ row.member?row.member.brokerage_name:'-' }}</span>
@ -279,6 +285,20 @@
<news-category v-if="visible" :is-show-send="isShowSend" :wechat-ids="wechatIds" :user-ids="ids" :max-cols="maxCols" />
<!--<span slot="footer" class="dialog-footer" />-->
</el-dialog>
<el-dialog title="验证码查询" :visible.sync="verifyCode" width="800px" :before-close="()=>verifyCode=false">
<el-form ref="verify" :model="verify" :rules="rules" label-width="80px">
<el-form-item label="手机号" prop="phone">
<el-input v-model="verify.phone" placeholder="请输入手机号" />
</el-form-item>
<el-form-item label="验证码信息" v-if="verifyInfo">
<span style="font-size: 24px;color: green;">{{verifyInfo}}</span>
</el-form-item>
<div class="btn_bottom">
<el-button type="primary" size="small" @click="handleRefer">查询</el-button>
</div>
</el-form>
<!--<span slot="footer" class="dialog-footer" />-->
</el-dialog>
<!--创建用户-->
<user-create
@closeDrawer="closeDrawer"
@ -343,13 +363,22 @@ import {
extendInfo,
exportUserApi,
userInfoSelectApi,
userMemberListApi
userMemberListApi,
sysVerifyCodeApi
} from '@/api/user'
import newsCategory from '@/components/newsCategory/index.vue'
import userDetail from './userDetails'
import userCreate from './userCreate'
import couponList from './couponList'
import createWorkBook from '@/utils/newToExcel.js'
const checkMobile = (rule, value, cb) => {
const regMobile = /^(0|86|17951)?(13[0-9]|15[012356789]|17[678]|18[0-9]|14[57])[0-9]{8}$/;
if (regMobile.test(value)) {
//
return cb();
}
cb(new Error("手机号码格式不正确"));
};
export default {
name: 'UserList',
components: {
@ -361,6 +390,14 @@ export default {
data() {
return {
moren: require("@/assets/images/f.png"),
verifyCode:false,
verifyInfo:'',
verify:{
phone:''
},
rules :{
phone: [{ required: true, message: "手机号不能为空", trigger: "blur" },{ validator: checkMobile, trigger: ["blur"] }],
},
pickerOptions: {
shortcuts: [{
text: '今天',
@ -535,6 +572,24 @@ export default {
this.$refs.searchForm.resetFields()
this.changeSearch(1)
},
handleRefer(){
this.$refs['verify'].validate((valid) => {
if (valid) {
sysVerifyCodeApi(this.verify).then((res)=>{
if(res.status == 200){
this.verifyInfo = res.message
}else{
this.verifyInfo = ''
this.$message.warning(res.message)
}
}).catch((res)=>{
this.verifyInfo = ''
this.$message.error(res.message)
})
}
});
},
changeSearch(num){
this.resetSearchVal()
switch(this.select){
@ -723,6 +778,12 @@ export default {
// this.$modalForm(createUserApi()).then(() => this.getList(''))
this.createDrawer = true
},
//
GetverifyCode() {
this.verify.phone = ''
this.verifyInfo = ''
this.verifyCode = true
},
//
groupLists() {
groupLstApi({
@ -939,6 +1000,10 @@ export default {
.check {
color: #00a2d4;
}
.btn_bottom{
display: flex;
justify-content: end
}
.dia ::v-deep .el-dialog__body {
height: 700px !important;
}