From c261cb7ff2e4cfce233d02c6aca9e8f85e8ba1ba Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期二, 20 一月 2026 18:05:08 +0800
Subject: [PATCH] 经销商管理
---
server/dmmall_service/src/main/java/com/doumee/service/business/impl/ActivityServiceImpl.java | 157 ++++--------
admin/src/components/business/OperaLabelKnowledgeWindow.vue | 73 ++++++
admin/src/components/business/OperaShopInfoWindow.vue | 2
admin/src/views/business/labelsKnowledge.vue | 120 ++++++++++
server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java | 4
admin/src/views/business/platformGoods.vue | 6
server/dmmall_service/src/main/java/com/doumee/service/business/ActivityService.java | 1
admin/src/views/business/information.vue | 175 +++++++++++---
server/dmmall_service/src/main/java/com/doumee/dao/business/model/Activity.java | 10
admin/src/components/business/OperaInformationWindow.vue | 110 ++++----
admin/src/api/business/activity.js | 4
server/dmmall_admin/src/main/java/com/doumee/api/business/ActivityController.java | 7
12 files changed, 462 insertions(+), 207 deletions(-)
diff --git a/admin/src/api/business/activity.js b/admin/src/api/business/activity.js
index 5ce9a0f..fb973a3 100644
--- a/admin/src/api/business/activity.js
+++ b/admin/src/api/business/activity.js
@@ -16,6 +16,10 @@
export function updateById (data) {
return request.post('/business/activity/updateById', data)
}
+// 淇敼
+export function updateStatusById (data) {
+ return request.post('/business/activity/updateStatusById', data)
+}
// 鍒犻櫎
export function deleteById (id) {
diff --git a/admin/src/components/business/OperaInformationWindow.vue b/admin/src/components/business/OperaInformationWindow.vue
index 23e103e..9268057 100644
--- a/admin/src/components/business/OperaInformationWindow.vue
+++ b/admin/src/components/business/OperaInformationWindow.vue
@@ -7,48 +7,47 @@
@confirm="confirm"
>
<el-form :model="form" ref="form" label-width="130px" label-suffix="锛�" :rules="rules" inline>
- <el-form-item label="璧勮鏍囬" prop="name">
- <el-input v-model="form.name" placeholder="璇疯緭鍏ヨ祫璁爣棰�" v-trim/>
- </el-form-item>
- <el-form-item label="璧勮鍒嗙被" prop="labelId">
- <el-select
- v-model="form.labelId"
- placeholder="璇烽�夋嫨璧勮鍒嗙被"
- filterable
- clearable
- >
- <el-option v-for="item in labels" :key="item.id" :value="item.id" :label="item.name" />
- </el-select>
- <!-- <el-input v-model="form.labelId" placeholder="璇疯緭鍏ラ�夋嫨" v-trim/> -->
+ <el-form-item label="鏍囬" prop="name">
+ <el-input v-model="form.name" placeholder="璇疯緭鍏ユ爣棰�" v-trim/>
</el-form-item>
<el-form-item label="璧勮灏侀潰鍥�" prop="imgurlfull">
<UploadAvatarImage
- :file="{ 'imgurlfull': form.imgurlfull, 'imgurl': form.imgurl }"
- @uploadSuccess="uploadAvatarSuccess"
- @uploadEnd="isUploading=false"
- @uploadBegin="isUploading = true"
+ :file="{ 'imgurlfull': form.imgurlfull, 'imgurl': form.imgurl }"
+ @uploadSuccess="uploadAvatarSuccess"
+ :uploadData="{folder:'activity'}"
+ @uploadEnd="isUploading=false"
+ @uploadBegin="isUploading = true"
/>
</el-form-item>
- <el-form-item label="鍏宠仈搴楅摵" prop="shopId">
+ <el-form-item label="鎵�灞炲垎绫�" prop="labelId">
<el-select
- v-model="form.shopId"
- placeholder="璇疯緭鍏ュ簵閾哄悕绉帮紝鍐嶉�夋嫨"
+ v-model="form.labelId"
+ placeholder="璇烽�夋嫨鎵�灞炲垎绫�"
filterable
- remote
- reserve-keyword
- :remote-method="remoteMethod"
- :loading="searchLoading"
+ clearable
>
- <el-option
- v-for="item in shops"
- :key="item.value"
- :label="item.label"
- :value="item.value">
- </el-option>
+ <el-option v-for="item in labels()" :key="item.id" :value="item.id" :label="item.name" />
</el-select>
</el-form-item>
- <el-form-item label="璇︽儏" prop="content">
- <RichEditor :content="{ content : form.content}" @edit="form.content=$event" />
+ <el-form-item label="鎵�灞炲搧鐗�" prop="brandId">
+ <el-select
+ v-model="form.brandId"
+ placeholder="璇烽�夋嫨鎵�灞炲搧鐗�"
+ filterable
+ clearable
+ >
+ <el-option v-for="item in brands()" :key="item.id" :value="item.id" :label="item.name" />
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鍐呭绫诲瀷" prop="contentType" >
+ <el-radio-group v-model="form.contentType">
+ <el-radio :label="0" value="0">瀵屾枃鏈�</el-radio>
+ <el-radio :label="1" value="1">澶栭摼</el-radio>
+ </el-radio-group>
+ </el-form-item>
+ <el-form-item label="璇︽儏" prop="content" required>
+ <el-input v-if="form.contentType == 1" v-model="form.content" placeholder="璇疯緭鍏ュ閾惧湴鍧�" v-trim/>
+ <RichEditor v-else :richData="form.content" :styleEditor="styleEditor" @getWangedditor="getWangedditor" :readonly="false"/>
</el-form-item>
</el-form>
</GlobalWindow>
@@ -60,7 +59,7 @@
import RichEditor from '@/components/common/RichEditor'
import UploadAvatarImage from '@/components/common/UploadAvatarImage'
-import { fetchList as shopList } from '@/api/business/shop'
+import { fetchList as shopList } from '@/api/business/shop'
export default {
name: 'OperaActivityWindow',
@@ -68,6 +67,7 @@
components: { GlobalWindow, RichEditor, UploadAvatarImage },
data () {
return {
+ styleEditor: 'border: 1px solid #ccc;display: inline-block;height:500px;',
isUploading: false,
searchLoading: false,
shops: [],
@@ -78,29 +78,35 @@
labelId: '',
imgurlfull: null,
imgurl: null,
- shopId: '',
+ brandId: '',
content: '',
+ contentType: 0,
type: 3 //璧勮
},
- labels: [
- { name: 'a', id: 1 },
- { name: 'b', id: 2 },
- { name: 'c', id: 3 },
- ],
// 楠岃瘉瑙勫垯
rules: {
name: [
- { required: true, message: '璇疯緭鍏ヨ祫璁爣棰�', tigger: 'blur' }
+ { required: true, message: '璇疯緭鍏ユ爣棰�', tigger: 'blur' }
+ ],
+ content: [
+ { required: true, message: '璇疯緭鍏ュ唴瀹�', tigger: 'blur' }
+ ],
+ contentType: [
+ { required: true, message: '璇烽�夋嫨鍐呭绫诲瀷' }
],
labelId: [
- { required: true, message: '璇烽�夋嫨璧勮鍒嗙被', tigger: 'change' }
+ { required: true, message: '璇烽�夋嫨鎵�灞炲垎绫�' }
+ ],
+ brandId: [
+ { required: true, message: '璇烽�夋嫨鎵�灞炲搧鐗�' }
],
imgurlfull: [
- { required: true, message: '璇蜂笂浼犺祫璁富鍥�', tigger: 'change' }
+ { required: true, message: '璇蜂笂浼犺祫璁富鍥�' }
],
}
}
},
+ inject: ['labels', 'brands'],
created () {
this.config({
api: '/business/activity',
@@ -113,24 +119,10 @@
this.form.imgurl = file.imgurl;
this.form.imgurlfull = file.imgurlfull;
},
- remoteMethod(query) {
- if (query !== '') {
- this.searchLoading = true
- shopList({
- capacity: 999,
- model: {
- name: query
- }
- })
- .then(res => {
- this.shops = res.records
- })
- .finally(() => {
- this.searchLoading = false
- })
- }
+ getWangedditor(val){
+ this.form.content =val
}
- },
+ }
}
</script>
diff --git a/admin/src/components/business/OperaLabelKnowledgeWindow.vue b/admin/src/components/business/OperaLabelKnowledgeWindow.vue
new file mode 100644
index 0000000..9ff4a42
--- /dev/null
+++ b/admin/src/components/business/OperaLabelKnowledgeWindow.vue
@@ -0,0 +1,73 @@
+<template>
+ <GlobalAlertWindow
+ :title="title"
+ :visible.sync="visible"
+ :confirm-working="isWorking"
+ @confirm="confirm"
+ >
+ <el-form :model="form" ref="form" :rules="rules" label-width="110px" label-suffix="锛�" inline>
+ <el-form-item label="鍚嶇О" prop="name">
+ <el-input v-model="form.name" placeholder="璇疯緭鍏ュ悕绉�" v-trim/>
+ </el-form-item>
+ <el-form-item label="鑹插��" prop="param" >
+ <div style="display: flex" class="paperview-input-text">
+ <span v-if="form.name" :title="form.param" :style="'padding:0px 10px; cursor:pointer;height:28px;line-height: 28px;display: inline-block;width:auto;border:1px solid '+form.param+'; color:'+form.param+';border-radius:5px;'">{{form.name}}</span>
+ <el-input style="width: 50px;border: none;outline:none; " type="color" v-model="form.param" placeholder="璇疯緭鍏ヨ壊鍊�" v-trim/>
+ </div>
+ </el-form-item>
+ <el-form-item label="鎺掑簭鐮�(鍗囧簭)" prop="sortnum">
+ <el-input v-model="form.sortnum" type="number" placeholder="璇疯緭鍏ユ帓搴忕爜" v-trim/>
+ </el-form-item>
+
+ </el-form>
+ </GlobalAlertWindow>
+</template>
+
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalAlertWindow from '@/components/common/GlobalAlertWindow'
+export default {
+ name: 'OperaLabelKnowledgeWindow',
+ extends: BaseOpera,
+ components: { GlobalAlertWindow },
+ data () {
+ return {
+ // 琛ㄥ崟鏁版嵁
+ form: {
+ id: null,
+ name: '',
+ module: 0,
+ type: 9,
+ sortnum: '',
+ param: '#000000'
+ },
+ // 楠岃瘉瑙勫垯
+ rules: {
+ name: [
+ { required: true, message: '璇疯緭鍏ュ悕绉�', tigger: 'blur' }
+ ]
+ }
+ }
+ },
+ created () {
+ this.config({
+ api: '/business/labels',
+ 'field.id': 'id'
+ })
+ }
+}
+</script>
+
+<style lang="scss" scoped>
+@import "@/assets/style/alertstyle.scss";
+::v-deep .el-select {
+ width: 100%;
+ .el-input__inner {
+ width: 100%;
+ }
+}
+::v-deep .paperview-input-text .el-input__inner {
+ -webkit-appearance: none;
+ border: 0px !important;//鏀规垚0锛岃竟妗嗗氨娑堝け浜嗭紒
+}
+</style>
diff --git a/admin/src/components/business/OperaShopInfoWindow.vue b/admin/src/components/business/OperaShopInfoWindow.vue
index ca299db..05c8b55 100644
--- a/admin/src/components/business/OperaShopInfoWindow.vue
+++ b/admin/src/components/business/OperaShopInfoWindow.vue
@@ -239,7 +239,7 @@
</div>
</div>
<div style="float: right; margin-bottom: 20px;">
- <el-select v-model="searchForm2.type" placeholder="鍏ㄩ儴" clearable @change="search" style="width: 120px;" >
+ <el-select v-model="searchForm2.type" placeholder="鍏ㄩ儴" clearable @change="handlePageChange2(1)" style="width: 120px;" >
<el-option :key="0" :value="0" label="鑾峰緱" ></el-option>
<el-option :key="1" :value="1" label="鎵i櫎" ></el-option>
</el-select>
diff --git a/admin/src/views/business/information.vue b/admin/src/views/business/information.vue
index f89cd4b..63886e8 100644
--- a/admin/src/views/business/information.vue
+++ b/admin/src/views/business/information.vue
@@ -2,23 +2,41 @@
<TableLayout :permissions="['business:activity:query']">
<!-- 鎼滅储琛ㄥ崟 -->
<el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
- <el-form-item label="璧勮鏍囬" prop="name">
- <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ヨ祫璁爣棰�" @keypress.enter.native="search"></el-input>
+ <el-form-item label="鏍囬" prop="name">
+ <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ユ爣棰�" @keypress.enter.native="search"></el-input>
</el-form-item>
<el-form-item label="鍙戝竷浜�" prop="realName">
<el-input v-model="searchForm.realName" placeholder="璇疯緭鍏ュ彂甯冧汉" @keypress.enter.native="search"></el-input>
</el-form-item>
- <el-form-item label="鐢ㄦ埛绫诲瀷" prop="userType">
+ <el-form-item label="鎵�灞炲垎绫�" prop="labelId">
<el-select
- v-model="searchForm.userType"
- placeholder="璇烽�夋嫨鐢ㄦ埛绫诲瀷"
+ v-model="searchForm.labelId"
+ placeholder="璇烽�夋嫨鎵�灞炲垎绫�"
+ style="width: 150px"
+ clearable
+ @change="search"
>
- <!-- 0绯荤粺绠$悊鍛� 1鏈烘瀯绠$悊鍛� 2鍒涗綔涓績绠$悊鍛� -->
<el-option
- v-for="item in userType"
- :key="item.id"
- :value="item.id"
- :label="item.label"
+ v-for="item in labels"
+ :key="item.id"
+ :value="item.id"
+ :label="item.name"
+ ></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="鎵�灞炲搧鐗�" prop="brandId">
+ <el-select
+ v-model="searchForm.brandId"
+ style="width: 150px"
+ placeholder="璇烽�夋嫨鎵�灞炲搧鐗�"
+ clearable
+ @change="search"
+ >
+ <el-option
+ v-for="item in brands"
+ :key="item.id"
+ :value="item.id"
+ :label="item.name"
></el-option>
</el-select>
</el-form-item>
@@ -42,28 +60,40 @@
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55" ></el-table-column>
- <el-table-column prop="imgurlfull" label="璧勮涓诲浘" align="center" min-width="100px">
+ <el-table-column prop="imgurlfull" label="涓诲浘" align="center" min-width="100px">
<template slot-scope="{row}">
- <el-image :scr="row.imgurlfull" :preview-src-list="[row.imgurlfull]"></el-image>
+ <el-image style="width: 50px;height: 50px;" v-if="row.imgurl && row.imgurl!=''" :src="row.imgurlfull" :preview-src-list="[row.imgurlfull]"></el-image>
</template>
</el-table-column>
- <el-table-column prop="name" label="璧勮鏍囬" align="center" min-width="100px">
+ <el-table-column prop="name" label="鏍囬" align="center" min-width="100px"></el-table-column>
+ <el-table-column prop="lablesName" label="鎵�灞炲垎绫�" align="center" min-width="100px"></el-table-column>
+ <el-table-column prop="brandName" label="鎵�灞炲搧鐗�" align="center" min-width="100px"></el-table-column>
+ <el-table-column prop="content" label="鏁版嵁鍊�" min-width="100px">
<template slot-scope="{row}">
- <el-button type="text" @click="shopDetail(row)">{{ row.name }}</el-button>
+ <div v-if="row.content">
+ <el-button v-if="row.contentType == 1" title="鐐瑰嚮璺宠浆澶栭摼鏌ョ湅" type="text" @click="openUrl(row)" >鐐瑰嚮璺宠浆</el-button>
+ <el-button v-else title="鐐瑰嚮鏌ョ湅璇︽儏" type="text" @click="showCode(row)" >鐐瑰嚮鏌ョ湅</el-button>
+ </div>
</template>
</el-table-column>
- <el-table-column prop="lablesName" label="璧勮鍒嗙被" align="center" min-width="100px"></el-table-column>
- <el-table-column prop="realName" label="鍙戝竷鐢ㄦ埛" align="center" min-width="100px"></el-table-column>
- <el-table-column prop="name" label="鐢ㄦ埛绫诲瀷" align="center" min-width="100px">
- <template slot-scope="{row}">
- {{ userTypeToStr(row.userType) }}
- </template>
- </el-table-column>
- <el-table-column prop="looknum" label="娴忚鏁�" align="center" min-width="100px"></el-table-column>
+ <el-table-column prop="looknum" label="娴忚閲�" align="center" min-width="100px"></el-table-column>
<el-table-column prop="zanCount" label="鐐硅禐鏁�" align="center" min-width="100px"></el-table-column>
- <el-table-column prop="commentCount" label="璇勮鏁�" align="center" min-width="100px"></el-table-column>
<el-table-column prop="collectCount" label="鏀惰棌鏁�" align="center" min-width="100px"></el-table-column>
- <el-table-column prop="createDate" label="鍙戝竷鏃堕棿" align="center" min-width="140px"></el-table-column>
+ <el-table-column prop="realName" label="鍙戝竷浜�" align="center" min-width="140px"></el-table-column>
+ <el-table-column prop="editDate" label="鍙戝竷鏃堕棿" align="center" min-width="140px"></el-table-column>
+ <el-table-column prop="status" label="鐘舵��" min-width="80px" align="center">
+ <template slot-scope="{row}">
+ <el-switch
+ v-model="row.status"
+ :active-value="1"
+ :inactive-value="0"
+ active-color="#13ce66"
+ fixed="right"
+ inactive-color="#ff4949"
+ @change="statusChange(row)"
+ ></el-switch>
+ </template>
+ </el-table-column>
<el-table-column
v-if="containPermissions(['business:activity:update', 'business:activity:delete'])"
label="鎿嶄綔"
@@ -85,6 +115,21 @@
</template>
<!-- 鏂板缓/淇敼 -->
<OperaInformationWindow ref="operaInformationWindow" @success="handlePageChange"/>
+ <el-dialog
+ class="center-title"
+ :title="'鍐呭璇︽儏銆�'+curTitle+'銆�'"
+ width="70%"
+ height="70%"
+ text="瀛楀吀鍊�"
+ :visible.sync="visible1"
+ append-to-body
+ >
+ <div class="agree-list" v-html="agreement">
+ </div>
+ <template v-slot:footer>
+ <el-button @click="visible1=false">杩斿洖</el-button>
+ </template>
+ </el-dialog>
</TableLayout>
</template>
@@ -93,6 +138,7 @@
import TableLayout from '@/layouts/TableLayout'
import Pagination from '@/components/common/Pagination'
import OperaInformationWindow from '@/components/business/OperaInformationWindow'
+import { findAll as labelList } from '@/api/business/labels'
export default {
name: 'Information',
extends: BaseTable,
@@ -103,18 +149,25 @@
searchForm: {
name: '',
realName: '',
- userType: '',
- type: 3 //绫诲瀷0鍟嗗娲诲姩 1骞冲彴娲诲姩 2鎺㈠簵 3璧勮
+ brandId: null,
+ labelId: null,
+ contentType: '',
+ type: 3 // 绫诲瀷0鍟嗗娲诲姩 1骞冲彴娲诲姩 2鎺㈠簵 3璧勮
},
- // 0绯荤粺绠$悊鍛� 1鏈烘瀯绠$悊鍛� 2鍒涗綔涓績绠$悊鍛�
- userType: [
- { label: '骞冲彴', id: 0 },
- { label: '鏈烘瀯', id: 1 },
- { label: '鍒涗綔鑰�', id: 2 }
- ]
+ agreement: null,
+ curTitle:'',
+ visible1: false,
+ labels: [],
+ brands: []
}
},
- created () {
+ provide () {
+ return {
+ labels: () => this.labels,
+ brands: () => this.brands
+ }
+ },
+ created: function () {
this.config({
module: '璧勮淇℃伅琛�',
api: '/business/activity',
@@ -122,15 +175,59 @@
'field.main': 'id'
})
this.search()
+ labelList({
+ type: 0 // 鍟嗗搧鍒嗙被
+ }).then(res => {
+ this.labels = res
+ })
+ labelList({
+ type: 1 // 鍟嗗搧鍝佺墝
+ })
+ .then(res => {
+ this.brands = res
+ })
},
methods: {
- userTypeToStr(type) {
- const temp = this.userType.find(item => item.id = type)
- return temp ? temp.label : '-'
+ showCode(row){
+ this.curTitle =row.name
+ this.agreement=row.content
+ this.visible1=true
},
- shopDetail(row) {
-
+ openUrl(row){
+ window.open(row.content)
+ },
+ statusChange (row) {
+ this.api.updateStatusById({ id: row.id, status: row.status })
+ .then(() => {
+ this.$message.success('鎿嶄綔鎴愬姛')
+ })
+ .catch(e => {
+ this.$message.error('鎿嶄綔鎴愬姛')
+ })
+ .then(() => {
+ this.handlePageChange()
+ })
}
- },
+ }
}
</script>
+
+<style scoped lang="scss">
+.agree-list{
+ height: 550px;
+ //max-height: 50%;
+ overflow: auto;
+}
+.no-scroll {
+ overflow: hidden !important;
+}
+/deep/ .window__body {
+ .table-content {
+ padding: 0;
+ .table-wrap {
+ padding-top: 0;
+ }
+ }
+
+}
+</style>
diff --git a/admin/src/views/business/labelsKnowledge.vue b/admin/src/views/business/labelsKnowledge.vue
new file mode 100644
index 0000000..74adc2e
--- /dev/null
+++ b/admin/src/views/business/labelsKnowledge.vue
@@ -0,0 +1,120 @@
+<template>
+ <TableLayout :permissions="['business:labels:query']">
+ <!-- 鎼滅储琛ㄥ崟 -->
+ <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="100px" inline>
+ <el-form-item label="鍒嗙被鍚嶇О" prop="name">
+ <el-input v-model="searchForm.name" placeholder="璇疯緭鍏ュ悕绉�" @keypress.enter.native="search"></el-input>
+ </el-form-item>
+ <section>
+ <el-button type="primary" @click="search">鎼滅储</el-button>
+ <el-button @click="reset">閲嶇疆</el-button>
+ </section>
+ </el-form>
+ <!-- 琛ㄦ牸鍜屽垎椤� -->
+ <template v-slot:table-wrap>
+ <ul class="toolbar" v-permissions="['business:labels:create', 'business:labels:delete']">
+ <li><el-button type="primary" @click="$refs.operaLabelsWindow.open('鏂板缓鐭ヨ瘑搴撳垎绫�')" icon="el-icon-plus" v-permissions="['business:labels:create']">鏂板缓</el-button></li>
+ <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:labels:delete']">鍒犻櫎</el-button></li>
+ </ul>
+ <el-table
+ v-loading="isWorking.search"
+ :data="tableData.list"
+ border
+ stripe
+ @selection-change="handleSelectionChange"
+ >
+ <el-table-column type="selection" width="55"></el-table-column>
+ <el-table-column prop="name" label="鍒嗙被鍚嶇О" min-width="100px"></el-table-column>
+ <el-table-column prop="param" label="鑹插��" min-width="100px" align="center">
+ <template slot-scope="{row}">
+ <div v-if="row.param" >
+ <span :title="row.param" :style="'cursor:pointer;display: inline-block;width:auto;border:1px solid '+row.param+';padding: 2px 10px;color:'+row.param+';border-radius:5px;'">{{row.name}}</span>
+ </div>
+ </template>
+ </el-table-column>
+ <el-table-column prop="status" label="鐘舵��" min-width="100px">
+ <template slot-scope="{row}">
+ <el-switch
+ v-model="row.status"
+ :active-value="1"
+ :inactive-value="0"
+ active-color="#13ce66"
+ inactive-color="#ff4949"
+ @change="statusChange(row)"
+ ></el-switch>
+ </template>
+ </el-table-column>
+ <el-table-column prop="sortnum" label="鎺掑簭鐮�" min-width="100px"></el-table-column>
+ <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" min-width="100px"></el-table-column>
+ <el-table-column
+ v-if="containPermissions(['business:labels:update', 'business:labels:delete'])"
+ label="鎿嶄綔"
+ min-width="120"
+ fixed="right"
+ >
+ <template slot-scope="{row}">
+ <el-button type="text" @click="$refs.operaLabelsWindow.open('缂栬緫鐭ヨ瘑搴撳垎绫�', row)" icon="el-icon-edit" v-permissions="['business:labels:update']">缂栬緫</el-button>
+ <el-button type="text" style="color: red;" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:labels:delete']">鍒犻櫎</el-button>
+ </template>
+ </el-table-column>
+ </el-table>
+ <pagination
+ @size-change="handleSizeChange"
+ @current-change="handlePageChange"
+ :pagination="tableData.pagination"
+ >
+ </pagination>
+ </template>
+ <!-- 鏂板缓/淇敼 -->
+ <OperaLabelKnowledgeWindow ref="operaLabelsWindow" @success="handlePageChange"/>
+ </TableLayout>
+</template>
+
+<script>
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import OperaLabelKnowledgeWindow from '@/components/business/OperaLabelKnowledgeWindow'
+export default {
+ name: 'Labels',
+ extends: BaseTable,
+ components: { TableLayout, Pagination, OperaLabelKnowledgeWindow },
+ data () {
+ return {
+ // 鎼滅储
+ searchForm: {
+ name: '',
+ type: 9
+ }
+ }
+ },
+ provide () {
+ return {
+ types: () => this.type
+ }
+ },
+ created () {
+ this.config({
+ module: '鐭ヨ瘑搴撳垎绫�',
+ api: '/business/labels',
+ 'field.id': 'id',
+ 'field.main': 'id'
+ })
+ this.search()
+ },
+ methods: {
+ statusChange (row) {
+ this.api.updateStatusById({ id: row.id, status: row.status })
+ .then(() => {
+ this.$message.success('鎿嶄綔鎴愬姛')
+ })
+ .catch(e => {
+ this.$message.error('鎿嶄綔鎴愬姛')
+ })
+ .then(() => {
+ this.handlePageChange()
+ })
+ }
+ }
+}
+</script>
diff --git a/admin/src/views/business/platformGoods.vue b/admin/src/views/business/platformGoods.vue
index b37bda1..6739063 100644
--- a/admin/src/views/business/platformGoods.vue
+++ b/admin/src/views/business/platformGoods.vue
@@ -16,7 +16,10 @@
<el-form-item label="鎵�灞炲垎绫�" prop="categoryId">
<el-select
v-model="searchForm.categoryId"
+ style="width: 150px"
placeholder="璇烽�夋嫨鎵�灞炲垎绫�"
+ clearable
+ @change="search"
>
<el-option
v-for="item in labels"
@@ -29,7 +32,10 @@
<el-form-item label="鎵�灞炲搧鐗�" prop="brandId">
<el-select
v-model="searchForm.brandId"
+ style="width: 150px"
placeholder="璇烽�夋嫨鎵�灞炲搧鐗�"
+ clearable
+ @change="search"
>
<el-option
v-for="item in brands"
diff --git a/server/dmmall_admin/src/main/java/com/doumee/api/business/ActivityController.java b/server/dmmall_admin/src/main/java/com/doumee/api/business/ActivityController.java
index 2cb838a..a986f90 100644
--- a/server/dmmall_admin/src/main/java/com/doumee/api/business/ActivityController.java
+++ b/server/dmmall_admin/src/main/java/com/doumee/api/business/ActivityController.java
@@ -66,6 +66,13 @@
activityService.updateById(activity);
return ApiResponse.success(null);
}
+ @ApiOperation("鏍规嵁ID淇敼")
+ @PostMapping("/updateStatusById")
+ @RequiresPermissions("business:activity:update")
+ public ApiResponse updateStatusById(@RequestBody Activity activity) {
+ activityService.updateStatusById(activity);
+ return ApiResponse.success(null);
+ }
@ApiOperation("鍒嗛〉鏌ヨ")
@PostMapping("/page")
diff --git a/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Activity.java b/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Activity.java
index 56f2cc4..b4ff095 100644
--- a/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Activity.java
+++ b/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Activity.java
@@ -129,13 +129,16 @@
@ApiModelProperty(value = "鎵�灞炲垎绫荤紪鐮侊紙鍏宠仈labels)", example = "1")
@ExcelColumn(name="鎵�灞炲垎绫荤紪鐮侊紙鍏宠仈labels)")
private Integer labelId;
+ @ApiModelProperty(value = "鎵�灞炲搧鐗岀紪鐮侊紙鍏宠仈labels)", example = "1")
+ @ExcelColumn(name="鎵�灞炲搧鐗岀紪鐮侊紙鍏宠仈labels)")
+ private Integer brandId;
@ApiModelProperty(value = "鐢ㄦ埛缂栫爜锛堝叧鑱攎ember琛級", example = "1")
@ExcelColumn(name="鐢ㄦ埛缂栫爜锛堝叧鑱攎ember琛級")
private Integer memberId;
- @ApiModelProperty(value = "鍐呭绫诲瀷 0鍥剧墖 1瑙嗛", example = "1")
- @ExcelColumn(name="鍐呭绫诲瀷 0鍥剧墖 1瑙嗛")
+ @ApiModelProperty(value = "鍐呭绫诲瀷 0瀵屾枃鏈� 1澶栭摼", example = "1")
+ @ExcelColumn(name="鍐呭绫诲瀷 0瀵屾枃鏈� 1澶栭摼")
private Integer contentType;
@ApiModelProperty(value = "鍐呭瀵屾枃鏈�")
@@ -153,6 +156,9 @@
@ApiModelProperty(value = "璧勮鍒嗙被鍚嶇О")
@TableField(exist = false)
private String lablesName;
+ @ApiModelProperty(value = "鎵�灞炲搧鐗屽悕绉�")
+ @TableField(exist = false)
+ private String brandName;
@ApiModelProperty(value = "鐐硅禐鏁伴噺")
@TableField(exist = false)
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/ActivityService.java b/server/dmmall_service/src/main/java/com/doumee/service/business/ActivityService.java
index 12e6fe6..d1bc172 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/ActivityService.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/ActivityService.java
@@ -50,6 +50,7 @@
* @param activity 瀹炰綋瀵硅薄
*/
void updateById(Activity activity);
+ void updateStatusById(Activity activity);
/**
* 鎵归噺涓婚敭鏇存柊
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ActivityServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ActivityServiceImpl.java
index 73e923b..b084838 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ActivityServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ActivityServiceImpl.java
@@ -113,12 +113,11 @@
isCreateParamValid(activity, user);
activity.setCreateDate(new Date());
activity.setCreator(user.getId());
+ activity.setEditDate(new Date());
+ activity.setEditor(user.getId());
activity.setIsdeleted(Constants.ZERO);
activity.setStatus(Constants.Status.ENABLE.getValue());
- activity.setMemberId(user.getMemberId());
activityMapper.insert(activity);
-
- dealBatchMultiFiles(activity, user);
return activity.getId();
}
@@ -162,90 +161,31 @@
LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
isCreateParamValid(activity, user);
-
activity.setEditDate(new Date());
activity.setEditor(user.getId());
activityMapper.updateById(activity);
- dealBatchMultiFiles(activity, user);
}
-
+ @Override
+ public void updateStatusById(Activity labels) {
+ LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
+ activityMapper.update(null,new UpdateWrapper<Activity>().lambda()
+ .set(Activity::getEditDate,new Date())
+ .set(Activity::getEditor,user.getId())
+ .set(Activity::getStatus,labels.getStatus())
+ .eq(Activity::getId,labels.getId()));
+ }
public void isCreateParamValid(Activity activity, LoginUserInfo user) {
if (activity.getType() == null) {
throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), ResponseStatus.BAD_REQUEST.getMessage());
}
- if (Constants.equalsInteger(activity.getType(), Constants.ActivityType.TANDIAN.getKey()) ||
- Constants.equalsInteger(activity.getType(), Constants.ActivityType.CONSULT.getKey())) {
- //璧勮锛屾帰搴�
- if (activity.getShopId() == null
- || StringUtils.isBlank(activity.getName())
- || StringUtils.isBlank(activity.getImgurl())
- || activity.getLabelId()==null
- || activity.getContent()==null
- ) {
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), ResponseStatus.BAD_REQUEST.getMessage());
- }
-
- if(Constants.equalsInteger(activity.getType(), Constants.ActivityType.TANDIAN.getKey())){
- if(activity.getContentType()==null
- || org.apache.commons.collections.CollectionUtils.isEmpty(activity.getFileList())
- ){
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), ResponseStatus.BAD_REQUEST.getMessage());
- }
- }
- Shop queryShop = new Shop();
- queryShop.setId(activity.getShopId());
- Shop shop = shopMapper.selectOne(new QueryWrapper<>(queryShop)
- .lambda().eq(Shop::getIsdeleted, Constants.ZERO)
- );
- if (Objects.isNull(shop)) {
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "鍟嗛摵涓嶅瓨鍦紝绂佹娣诲姞");
- }
-
- } else if (Constants.equalsInteger(activity.getType(), Constants.ActivityType.PLATACTIVITY.getKey())) {
- //骞冲彴娲诲姩
- if (activity.getShopId() != null) {
- Shop queryShop = new Shop();
- queryShop.setId(activity.getShopId());
- Shop shop = shopMapper.selectOne(new QueryWrapper<>(queryShop)
- .lambda().eq(Shop::getIsdeleted, Constants.ZERO)
- );
- if (Objects.isNull(shop)) {
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "鍟嗛摵涓嶅瓨鍦紝绂佹娣诲姞");
- }
- } else if (activity.getOrgId() != null) {
- SystemUser sysQuery = new SystemUser();
- sysQuery.setId(activity.getOrgId());
- SystemUser systemUser = systemUserMapper.selectOne(new QueryWrapper<>(sysQuery)
- .lambda().eq(SystemUser::getDeleted, Constants.ZERO)
- );
- if (Objects.isNull(systemUser)) {
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "鏈烘瀯涓嶅瓨鍦紝绂佹娣诲姞");
- }
- } else {
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), ResponseStatus.BAD_REQUEST.getMessage());
- }
-
-
- if(StringUtils.isBlank(activity.getName())
- ||activity.getLabelId()==null
- ||activity.getStarttime()==null
- ||activity.getEndtime()==null
- ||activity.getSignStarttime()==null
- ||activity.getSignEndtime()==null
- ||StringUtils.isBlank(activity.getAddr())
- ||activity.getLongitude()==null
- ||activity.getLatitude()==null
- ||activity.getLimitnum()==null
- ||StringUtils.isBlank(activity.getImgurl())
-
- ){
- throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), ResponseStatus.BAD_REQUEST.getMessage());
- }
+ if ( StringUtils.isBlank(activity.getName())
+ || StringUtils.isBlank(activity.getImgurl())
+ || StringUtils.isBlank(activity.getContent())
+ || activity.getLabelId()==null
+ || activity.getBrandId()==null
+ || activity.getContent()==null ) {
+ throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(), ResponseStatus.BAD_REQUEST.getMessage());
}
- if (Objects.isNull(user.getMemberId())) {
- throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "鍏堝叧鑱斿墠绔敤鎴峰啀鍙戝竷!");
- }
-
}
public void dealBatchMultiFiles(Activity activity, LoginUserInfo user) {
@@ -323,29 +263,30 @@
queryWrapper.selectAll(Activity.class);
queryWrapper.selectAs(SystemUser::getRealname, Activity::getRealName);
queryWrapper.selectAs(SystemUser::getType, Activity::getUserType);
- queryWrapper.selectAs(Labels::getName, Activity::getLablesName);
- queryWrapper.selectAs(Shop::getName, Activity::getShopName);
- queryWrapper.selectAs(Shop::getImgurl, Activity::getShopImg);
- queryWrapper.selectAs(Shop::getName, Activity::getShopName);
- queryWrapper.selectAs(Orgs::getName, Activity::getOrgName);
+ queryWrapper.select("t1.name", Activity::getLablesName);
+ queryWrapper.select("t2.name", Activity::getBrandName);
+// queryWrapper.selectAs(Shop::getName, Activity::getShopName);
+// queryWrapper.selectAs(Shop::getImgurl, Activity::getShopImg);
+// queryWrapper.selectAs(Shop::getName, Activity::getShopName);
+// queryWrapper.selectAs(Orgs::getName, Activity::getOrgName);
queryWrapper.select("(select count(id) from zan s1 where s1.ISDELETED=0 and s1.OBJ_ID=t.id ) as zanCount");
queryWrapper.select("(select count(id) from collect s1 where s1.ISDELETED=0 and s1.OBJ_ID=t.id ) as collectCount");
queryWrapper.select("(select count(id) from comment s1 where s1.ISDELETED=0 and s1.OBJ_ID=t.id ) as commentCount");
queryWrapper.select("(select count(id) from shares s1 where s1.ISDELETED=0 and s1.OBJ_ID=t.id ) as sharesCount");
- queryWrapper.select("(select count(id) from activity_sign s1 where s1.ISDELETED=0 and ACTIVITY_ID=t.id and s1.STATUS!=2 ) as activityCount");
- queryWrapper.select("(select REALNAME from system_user s1 where s1.ID=t.ORG_ID ) as serviceName");
-// queryWrapper.select("(select name from shop where ISDELETED=0 and ACTIVITY_ID=t.SHOP_ID ) as shopName");
+// queryWrapper.select("(select count(id) from activity_sign s1 where s1.ISDELETED=0 and ACTIVITY_ID=t.id and s1.STATUS!=2 ) as activityCount");
+// queryWrapper.select("(select REALNAME from system_user s1 where s1.ID=t.ORG_ID ) as serviceName");
- queryWrapper.leftJoin(Shop.class, Shop::getId, Activity::getShopId);
- queryWrapper.leftJoin(Orgs.class, Orgs::getId, Activity::getOrgId);
- queryWrapper.leftJoin(SystemUser.class, SystemUser::getId, Activity::getCreator);
+// queryWrapper.leftJoin(Shop.class, Shop::getId, Activity::getShopId);
+// queryWrapper.leftJoin(Orgs.class, Orgs::getId, Activity::getOrgId);
queryWrapper.leftJoin(Labels.class, Labels::getId, Activity::getLabelId);
+ queryWrapper.leftJoin(Labels.class, Labels::getId, Activity::getBrandId);
+ queryWrapper.leftJoin(SystemUser.class, SystemUser::getId, Activity::getEditor);
queryWrapper.eq(Activity::getId,id);
Activity result = activityJoinMapper.selectJoinOne(Activity.class, queryWrapper);
if (Objects.nonNull(result)) {
String path = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode() + systemDictDataBiz.queryByCode(Constants.OSS, Constants.ACTIVITY_FILE).getCode();
- Multifile queryfile = new Multifile();
+ /* Multifile queryfile = new Multifile();
queryfile.setObjId(result.getId());
List<Multifile> filelist = multifileMapper.selectList(new QueryWrapper<>(queryfile));
if(filelist!=null){
@@ -355,7 +296,7 @@
}
});
result.setFileList(filelist);
- }
+ }*/
if(StringUtils.isNotBlank(result.getImgurl())){
result.setImgurlfull(path+result.getImgurl());
}
@@ -368,7 +309,8 @@
queryWrapper.selectAll(Activity.class);
queryWrapper.selectAs(SystemUser::getRealname, Activity::getRealName);
queryWrapper.selectAs(SystemUser::getType, Activity::getUserType);
- queryWrapper.selectAs(Labels::getName, Activity::getLablesName);
+ queryWrapper.select("t5.name", Activity::getLablesName);
+ queryWrapper.select("t6.name", Activity::getBrandName);
queryWrapper.selectAs(Shop::getName, Activity::getShopName);
queryWrapper.selectAs(Shop::getImgurl, Activity::getShopImg);
queryWrapper.selectAs(Shop::getName, Activity::getShopName);
@@ -385,8 +327,9 @@
queryWrapper.leftJoin(Shop.class, Shop::getId, Activity::getShopId);
queryWrapper.leftJoin(Orgs.class, Orgs::getId, Activity::getOrgId);
queryWrapper.leftJoin(SystemUser.class, SystemUser::getId, Activity::getCreator);
- queryWrapper.leftJoin(Labels.class, Labels::getId, Activity::getLabelId);
queryWrapper.leftJoin(Member.class, Member::getId, Activity::getMemberId);
+ queryWrapper.leftJoin(Labels.class, Labels::getId, Activity::getLabelId);
+ queryWrapper.leftJoin(Labels.class, Labels::getId, Activity::getBrandId);
queryWrapper.eq(Activity::getId,id);
Activity result = activityJoinMapper.selectJoinOne(Activity.class, queryWrapper);
@@ -416,16 +359,18 @@
queryWrapper.selectAll(Activity.class);
queryWrapper.selectAs(SystemUser::getRealname, Activity::getRealName);
queryWrapper.selectAs(SystemUser::getType, Activity::getUserType);
- queryWrapper.selectAs(Labels::getName, Activity::getLablesName);
+ queryWrapper.select("t2.name", Activity::getLablesName);
+ queryWrapper.select("t3.name", Activity::getBrandName);
queryWrapper.select("(select count(id) from zan where ISDELETED=0 and OBJ_ID=t.id ) as zanCount");
queryWrapper.select("(select count(id) from collect where ISDELETED=0 and OBJ_ID=t.id ) as collectCount");
queryWrapper.select("(select count(id) from comment where ISDELETED=0 and OBJ_ID=t.id ) as commentCount");
queryWrapper.select("(select count(id) from shares where ISDELETED=0 and OBJ_ID=t.id ) as sharesCount");
- queryWrapper.leftJoin(SystemUser.class, SystemUser::getId, Activity::getCreator);
+ queryWrapper.leftJoin(SystemUser.class, SystemUser::getId, Activity::getEditor);
queryWrapper.leftJoin(Labels.class, Labels::getId, Activity::getLabelId);
+ queryWrapper.leftJoin(Labels.class, Labels::getId, Activity::getBrandId);
- if (Constants.equalsInteger(pageWrap.getModel().getType(), Constants.ONE)) {
+ /* if (Constants.equalsInteger(pageWrap.getModel().getType(), Constants.ONE)) {
//鏌ヨ娲诲姩鎶ュ悕鏁版嵁
queryWrapper.select("(select count(id) from activity_sign where ISDELETED=0 and ACTIVITY_ID=t.id ) as activityCount");
queryWrapper.select("su.REALNAME as serviceName");
@@ -468,20 +413,21 @@
}
}
- }
+ }*/
/**鍒涗綔鑰�/鏈烘瀯锛氭煡鐪嬭嚜宸卞彂甯冪殑鏁版嵁锛涘钩鍙帮細鏌ョ湅鎵�鏈夋暟鎹紱 */
- if (!Constants.equalsInteger(user.getType(), Constants.UserType.SYSTEM.getKey())) {
+ /* if (!Constants.equalsInteger(user.getType(), Constants.UserType.SYSTEM.getKey())) {
queryWrapper.eq(Activity::getCreator, user.getId());
- }
+ }*/
queryWrapper.eq(Activity::getIsdeleted, Constants.ZERO);
+ queryWrapper.eq(pageWrap.getModel().getLabelId() !=null, Activity::getLabelId, pageWrap.getModel().getLabelId());
+ queryWrapper.eq(pageWrap.getModel().getBrandId() !=null, Activity::getBrandId, pageWrap.getModel().getBrandId());
queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getName()), Activity::getName, pageWrap.getModel().getName());
queryWrapper.like(StringUtils.isNotBlank(pageWrap.getModel().getRealName()), SystemUser::getRealname, pageWrap.getModel().getRealName());
- queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getUserType()), SystemUser::getType, pageWrap.getModel().getUserType());
+// queryWrapper.eq(StringUtils.isNotBlank(pageWrap.getModel().getUserType()), SystemUser::getType, pageWrap.getModel().getUserType());
queryWrapper.orderByDesc(Activity::getCreateDate);
IPage<Activity> result = activityJoinMapper.selectJoinPage(page, Activity.class, queryWrapper);
-
initActivityListStatus(result.getRecords());
return PageData.from(result);
}
@@ -500,8 +446,11 @@
if (model == null) {
return;
}
- model.setImgurlfull(path);
- model.setActivityStatus(Constants.ZERO);
+ if(StringUtils.isNotBlank(model.getImgurl())){
+
+ model.setImgurlfull(path + model.getImgurl());
+ }
+ /*model.setActivityStatus(Constants.ZERO);
long now = System.currentTimeMillis();
if (model.getStarttime() != null && model.getSignStarttime() != null && model.getSignStarttime().getTime() <= now && model.getStarttime().getTime() < now) {
model.setActivityStatus(Constants.ONE);//鎶ュ悕涓�
@@ -514,7 +463,7 @@
}
if (model.getEndtime() != null && model.getEndtime().getTime() < now) {
model.setActivityStatus(4);//娲诲姩宸茬粨鏉�
- }
+ }*/
}
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java
index ea8173e..45362a4 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/ShopServiceImpl.java
@@ -316,7 +316,7 @@
queryWrapper.selectAll(Shop.class);
queryWrapper.eq(Shop::getId,id);
- queryWrapper.select("(select AVG(SCORE) from shop_comment where ISDELETED=0 and OBJ_ID=t.id) as score");//闂ㄥ簵璇勫垎
+// queryWrapper.select("(select AVG(SCORE) from shop_comment where ISDELETED=0 and OBJ_ID=t.id) as score");//闂ㄥ簵璇勫垎
/** ----------------start搴楅摵璁块棶鏁版嵁----------------*/
// queryWrapper.select("(select count(id) from shop_scan where ISDELETED=0 and SHOP_ID=t.id) as shopTotalVisits");//涓婚〉鎬昏闂噺
// queryWrapper.select("(select count(id) from shop_scan where ISDELETED=0 and SHOP_ID=t.id and to_days(CREATE_DATE)=to_days(now()) ) as shopNowVisits");//浠婃棩璁块棶閲�
@@ -336,7 +336,7 @@
// queryWrapper.select("(select sum(LIMIT_PRICE) from member_coupon where ISDELETED=0 and SHOP_ID=t.id and type=0 and STATUS=1 ) as couponUserMoney");//浼樻儬鍒镐娇鐢ㄩ噾棰�(鍏�)
/** ----------------end搴楅摵浼樻儬鍒告暟鎹�----------------*/
- queryWrapper.select("(select count(g.id) from goodsorder where g.ISDELETED=0 and g.DISTRIBUTION_SHOP_ID=t.id ) as totalOrderNUm");//浼樻儬鍒镐娇鐢ㄩ噾棰�(鍏�)
+ queryWrapper.select("(select count(g.id) from goodsorder g where g.ISDELETED=0 and g.DISTRIBUTION_SHOP_ID=t.id ) as totalOrderNUm");//浼樻儬鍒镐娇鐢ㄩ噾棰�(鍏�)
Shop shop= shopJoinMapper.selectJoinOne(Shop.class,queryWrapper);
String path = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
+ systemDictDataBiz.queryByCode(Constants.OSS, Constants.SHOP_FILE).getCode();
--
Gitblit v1.9.3