一些修改
This commit is contained in:
parent
51d6220271
commit
2e09cd299b
@ -116,6 +116,7 @@ public class GoodsMainController extends BaseController {
|
||||
@PostMapping
|
||||
public AjaxResult add(UsernamePasswordAuthenticationToken token, @RequestBody GoodsMain goodsMain) {
|
||||
goodsMain.setDeptId(getDeptId());
|
||||
goodsMain.setCreateBy(getUsername());
|
||||
String richText = goodsMain.getGoodsDesc();
|
||||
if (richText != null && StringUtils.isNotEmpty(richText)) {
|
||||
Document doc = RichTextUtil.setImgStyle(richText, "width: 100%");
|
||||
|
@ -17,7 +17,7 @@ import com.ruoyi.common.core.domain.BaseEntity;
|
||||
|
||||
/**
|
||||
* 商户对象 app_merchant
|
||||
*
|
||||
*
|
||||
* @author ruoyi
|
||||
* @date 2021-01-19
|
||||
*/
|
||||
@ -48,6 +48,14 @@ private static final long serialVersionUID=1L;
|
||||
@Excel(name = "图标")
|
||||
private String avatar;
|
||||
|
||||
/** 封面图 */
|
||||
@Excel(name = "封面图")
|
||||
private String faceImage;
|
||||
|
||||
/** 奖项信息 */
|
||||
@Excel(name = "奖项信息")
|
||||
private String award;
|
||||
|
||||
/** 介绍 */
|
||||
@Excel(name = "介绍")
|
||||
private String mchDesc;
|
||||
|
@ -56,6 +56,9 @@ private static final long serialVersionUID=1L;
|
||||
@Excel(name = "关联规格")
|
||||
private String goodsSpec;
|
||||
|
||||
@Excel(name = "库存")
|
||||
private String goodsStock;
|
||||
|
||||
/** 商品说明 */
|
||||
@Excel(name = "商品说明")
|
||||
private String goodsDesc;
|
||||
|
@ -69,38 +69,21 @@ module.exports.parseImage = parseImage;
|
||||
</wxs>
|
||||
<template>
|
||||
|
||||
<van-nav-bar
|
||||
bind:click-left="onBack"
|
||||
border="{{false}}"
|
||||
fixed
|
||||
z-index="100"
|
||||
custom-style="background:#AC1630;color:#FFF;"
|
||||
>
|
||||
<van-icon name="arrow-left" slot="left" color="#fff" />
|
||||
<span style="color: #fff;" slot="title">了解酒庄</span>
|
||||
</van-nav-bar>
|
||||
<div class="bg" />
|
||||
<div class="container" style="margin-top: 66px;">
|
||||
|
||||
<nav-bar title="酒庄信息" />
|
||||
<van-loading v-if="!wineryItem" style="margin-top: 20px;" />
|
||||
<div v-else style="margin-bottom: 80px;">
|
||||
<image :src="filters.parseImage(wineryItem.avatar)" style="width: 100%;height: 750rpx;" mode="aspectFit" />
|
||||
<div style="margin: 10px 15px;display: flex;flex-direction: column;">
|
||||
<div style="font-size: 20px;font-weight: bold;">{{wineryItem.mchName}}</div>
|
||||
<div style="font-size: 14px;color: #999999;">{{wineryItem.subtitle}}</div>
|
||||
|
||||
<div style="display: flex;" v-for="(item,index) in wineryDefine.WINERY_LIST" @tap="onTap(item)">
|
||||
<div class="winery-item-icon">
|
||||
<van-image style="margin-top: 5px;" round width="50px" height="50px" :src="userInfo.avatarUrl" />
|
||||
</div>
|
||||
|
||||
<div class="winery-item">
|
||||
<div class="fxc" style="margin-left: 20px;">
|
||||
<span style="font-size: 20px;font-weight: bold;">{{item.name}}</span>
|
||||
<span style="color: #999;">{{item.desc}}</span>
|
||||
</div>
|
||||
</div>
|
||||
|
||||
<div class="winery-item-arrow">
|
||||
<van-icon name="arrow" />
|
||||
<span style="margin-top: 20px;font-weight: bold;">酒庄简介</span>
|
||||
<div style="margin-top: 10px;width:100%;">
|
||||
<rich-text :nodes="wineryItem.mchDesc" />
|
||||
</div>
|
||||
</div>
|
||||
|
||||
|
||||
</div>
|
||||
|
||||
</template>
|
||||
@ -110,6 +93,7 @@ import wepy from '@wepy/core'
|
||||
import store from '@/store'
|
||||
import { mapActions, mapState } from '@wepy/x'
|
||||
import defaultMix from '../../mixins/defaultMix'
|
||||
import merchanApis from '../../apis/merchanApis'
|
||||
|
||||
wepy.page({
|
||||
store,
|
||||
@ -117,34 +101,21 @@ wepy.page({
|
||||
|
||||
mixins: [defaultMix],
|
||||
data: {
|
||||
pageIndex: 0
|
||||
wineryItem: null
|
||||
},
|
||||
|
||||
computed: {
|
||||
...mapState({
|
||||
'imageDefine': state => state.imageDefine,
|
||||
'userInfo': state => state.user.userInfo,
|
||||
'wineryDefine': state => state.wineryDefine
|
||||
'imageDefine': state => state.imageDefine
|
||||
})
|
||||
},
|
||||
|
||||
methods: {
|
||||
...mapActions([
|
||||
'setUserAction'
|
||||
]),
|
||||
handleViewTap() {
|
||||
console.log('handleVieTap clicked')
|
||||
},
|
||||
onTap(item) {
|
||||
console.log(item)
|
||||
|
||||
},
|
||||
onBack() {
|
||||
wx.navigateBack()
|
||||
},
|
||||
|
||||
...mapActions([]),
|
||||
async init(id) {
|
||||
|
||||
merchanApis.getMerchantInfo(id).then(r => {
|
||||
this.wineryItem = r.data
|
||||
})
|
||||
}
|
||||
},
|
||||
|
||||
|
@ -153,6 +153,8 @@ import store from '@/store'
|
||||
import { mapActions, mapState } from '@wepy/x'
|
||||
import defaultMix from '../../mixins/defaultMix'
|
||||
import merchanApis from '../../apis/merchanApis'
|
||||
import appManager from '../../appManager'
|
||||
import { wineryDetailPage } from '../../store/constant/nav/pages'
|
||||
|
||||
wepy.page({
|
||||
store,
|
||||
@ -180,7 +182,7 @@ wepy.page({
|
||||
console.log('handleVieTap clicked')
|
||||
},
|
||||
onTap(item) {
|
||||
console.log(item)
|
||||
appManager.navigateTo(wineryDetailPage + '?id=' + item.id)
|
||||
},
|
||||
onBack() {
|
||||
wx.navigateBack()
|
||||
|
@ -1,6 +1,18 @@
|
||||
<template>
|
||||
<div class="app-container">
|
||||
<el-form :model="queryParams" ref="queryForm" :inline="true" v-show="showSearch" label-width="68px">
|
||||
|
||||
<el-form-item label="商品类型" prop="goodsType">
|
||||
<el-select v-model="queryParams.deptId" placeholder="请选择商品商户" clearable size="small">
|
||||
<el-option
|
||||
v-for="dict in goodsTypeOptions"
|
||||
:key="dict.dictValue"
|
||||
:label="dict.dictLabel"
|
||||
:value="dict.dictValue"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="商品名称" prop="goodsName">
|
||||
<el-input
|
||||
v-model="queryParams.goodsName"
|
||||
@ -93,9 +105,13 @@
|
||||
<el-table v-loading="loading" :data="goodsList" @selection-change="handleSelectionChange">
|
||||
<el-table-column type="selection" width="55" align="center"/>
|
||||
<el-table-column label="商品ID" align="center" prop="id" v-if="false"/>
|
||||
<el-table-column label="商户名称" align="center" prop="deptId" :formatter="mchFormat" width="100px"/>
|
||||
<el-table-column label="商品名称" align="center" prop="goodsName"/>
|
||||
<el-table-column label="商品简称" align="center" prop="goodsAlias"/>
|
||||
<el-table-column label="商品价格" align="center" prop="goodsPrice"/>
|
||||
<el-table-column label="商品库存" align="center" prop="goodsStock"/>
|
||||
<el-table-column label="商品类型" align="center" prop="goodsType" :formatter="goodsTypeFormat" width="100px"/>
|
||||
|
||||
<!-- <el-table-column label="关联规格" align="center" prop="goodsSpec"/>-->
|
||||
<!-- <el-table-column label="商品说明" align="center" prop="goodsDesc"/>-->
|
||||
<el-table-column label="商品封面" align="center" prop="goodsFaceImg">
|
||||
@ -146,6 +162,17 @@
|
||||
<el-dialog :title="title" :visible.sync="open" width="1000px" append-to-body>
|
||||
<el-form ref="form" :model="form" :rules="rules" label-width="80px">
|
||||
|
||||
<el-form-item label="商户" prop="deptId">
|
||||
<el-select v-model="form.deptId" placeholder="请选择商户">
|
||||
<el-option
|
||||
v-for="dict in mchOptions"
|
||||
:key="dict.dictValue"
|
||||
:label="dict.dictLabel"
|
||||
:value="dict.dictValue"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="商品名称" prop="goodsName">
|
||||
<el-input v-model="form.goodsName" placeholder="请输入商品名称"/>
|
||||
</el-form-item>
|
||||
@ -153,8 +180,12 @@
|
||||
<el-input v-model="form.goodsAlias" placeholder="请输入商品简称"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="商品价格" prop="goodsPrice">
|
||||
<el-input type="number" v-model="form.goodsPrice" placeholder="请输入商品价格"/>
|
||||
</el-form-item>
|
||||
<el-input type="number" v-model="form.goodsPrice" placeholder="请输入商品价格"/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="库存" prop="goodsStock">
|
||||
<el-input type="number" v-model="form.goodsStock" placeholder="请输入商品库存"/>
|
||||
</el-form-item>
|
||||
<el-form-item label="商品封面" prop="goodsFaceImg">
|
||||
<upload-image :value="form.goodsFaceImg" @input="inputGoodsFaceImg"/>
|
||||
<!-- <el-input v-model="form.goodsFaceImg" placeholder="请输入商品封面" />-->
|
||||
@ -166,22 +197,29 @@
|
||||
<el-form-item label="状态" prop="state">
|
||||
|
||||
<el-radio-group v-model="form.state">
|
||||
<el-radio v-for="(dict, index) in stateOptions" :key="index" :label="parseInt(dict.dictValue)">{{dict.dictLabel}}</el-radio>
|
||||
<el-radio v-for="(dict, index) in stateOptions" :key="index" :label="parseInt(dict.dictValue)">
|
||||
{{dict.dictLabel}}
|
||||
</el-radio>
|
||||
</el-radio-group>
|
||||
</el-form-item>
|
||||
<el-form-item label="商品类型" prop="goodsType">
|
||||
<el-select v-model="form.goodsType" placeholder="请选择商品类型">
|
||||
<el-option label="请选择字典生成" value=""/>
|
||||
<el-option
|
||||
v-for="dict in goodsTypeOptions"
|
||||
:key="dict.dictValue"
|
||||
:label="dict.dictLabel"
|
||||
:value="dict.dictValue"
|
||||
/>
|
||||
</el-select>
|
||||
</el-form-item>
|
||||
<el-form-item label="关联规格" prop="goodsSpec">
|
||||
<!-- <el-input v-model="form.goodsSpec" type="textarea" placeholder="请输入内容"/>-->
|
||||
<el-transfer v-model="selectedSpecData" :data="specData" filterable
|
||||
:titles="['商品列表','已关联商品']"
|
||||
:button-texts="['取消关联', '关联商品']"
|
||||
@change="handleChangeSpec"
|
||||
></el-transfer>
|
||||
</el-form-item>
|
||||
<!-- <el-form-item label="关联规格" prop="goodsSpec">-->
|
||||
<!-- <!– <el-input v-model="form.goodsSpec" type="textarea" placeholder="请输入内容"/>–>-->
|
||||
<!-- <el-transfer v-model="selectedSpecData" :data="specData" filterable-->
|
||||
<!-- :titles="['商品列表','已关联商品']"-->
|
||||
<!-- :button-texts="['取消关联', '关联商品']"-->
|
||||
<!-- @change="handleChangeSpec"-->
|
||||
<!-- ></el-transfer>-->
|
||||
<!-- </el-form-item>-->
|
||||
<el-form-item label="商品说明" prop="goodsDesc">
|
||||
<!-- <el-input v-model="form.goodsDesc" placeholder="请输入商品说明"/>-->
|
||||
<editor :value="form.goodsDesc" :height="400" :min-height="400" @on-change="onChangeGoodsDesc"/>
|
||||
@ -249,6 +287,8 @@ export default {
|
||||
stateOptions: [],
|
||||
// 商品类型字典
|
||||
goodsTypeOptions: [],
|
||||
// 商户类型字典
|
||||
mchOptions: [],
|
||||
// 查询参数
|
||||
queryParams: {
|
||||
pageNum: 1,
|
||||
@ -261,7 +301,8 @@ export default {
|
||||
goodsFaceImg: undefined,
|
||||
goodsImg: undefined,
|
||||
goodsPrice: undefined,
|
||||
state: undefined
|
||||
goodsStock: undefined,
|
||||
state: 0
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
@ -289,6 +330,10 @@ export default {
|
||||
this.getDicts("goods_type").then(response => {
|
||||
this.goodsTypeOptions = response.data;
|
||||
});
|
||||
|
||||
this.getDicts("merchant_dept").then(response => {
|
||||
this.mchOptions = response.data;
|
||||
});
|
||||
},
|
||||
methods: {
|
||||
inputGoodsFaceImg(fileName) {
|
||||
@ -307,6 +352,11 @@ export default {
|
||||
goodsTypeFormat(row, column) {
|
||||
return this.selectDictLabel(this.goodsTypeOptions, row.goodsType);
|
||||
},
|
||||
|
||||
// 商户类型字典翻译
|
||||
mchFormat(row, column) {
|
||||
return this.selectDictLabel(this.mchOptions, row.deptId);
|
||||
},
|
||||
/** 查询商品信息列表 */
|
||||
getList() {
|
||||
this.loading = true;
|
||||
@ -329,6 +379,7 @@ export default {
|
||||
goodsAlias: undefined,
|
||||
goodsType: undefined,
|
||||
goodsSpec: undefined,
|
||||
goodsStock: undefined,
|
||||
goodsDesc: undefined,
|
||||
goodsFaceImg: undefined,
|
||||
goodsImg: undefined,
|
||||
@ -337,6 +388,7 @@ export default {
|
||||
createTime: undefined,
|
||||
updateBy: undefined,
|
||||
updateTime: undefined,
|
||||
state: 0,
|
||||
remark: undefined
|
||||
};
|
||||
this.resetForm("form");
|
||||
|
@ -136,6 +136,15 @@
|
||||
<el-form-item label="图标" prop="avatar">
|
||||
<uploadImage v-model="form.avatar"/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="封面大图" prop="faceImage">
|
||||
<uploadImage v-model="form.faceImage"/>
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="获奖信息" prop="award">
|
||||
<el-input v-model="form.award" placeholder="获奖信息(多条使用英文逗号分割)" />
|
||||
</el-form-item>
|
||||
|
||||
<el-form-item label="介绍" prop="mchDesc">
|
||||
<editor :value="form.mchDesc" :height="400" :min-height="400" @on-change="onChangeNewsBody"/>
|
||||
</el-form-item>
|
||||
@ -186,6 +195,8 @@ export default {
|
||||
subtitle: undefined,
|
||||
avatar: undefined,
|
||||
mchDesc: undefined,
|
||||
award: undefined,
|
||||
faceImage:undefined
|
||||
},
|
||||
// 表单参数
|
||||
form: {},
|
||||
@ -221,7 +232,9 @@ export default {
|
||||
avatar: undefined,
|
||||
mchDesc: undefined,
|
||||
createTime: undefined,
|
||||
updateTime: undefined
|
||||
updateTime: undefined,
|
||||
award: undefined,
|
||||
faceImage:undefined
|
||||
};
|
||||
this.resetForm("form");
|
||||
},
|
||||
|
Loading…
x
Reference in New Issue
Block a user