From b459b874c062b1124200f8a591b86d0558c3ffce Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期五, 15 九月 2023 22:47:16 +0800
Subject: [PATCH] 新增源数据惨淡

---
 server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java |    4 
 server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java     |   21 +-
 platform/src/views/business/baseData.vue                                                   |  201 ++++++++++++++++++++
 platform/src/api/business/baseData.js                                                      |   40 ++++
 server/platform/src/main/java/com/doumee/api/business/BaseGoodsController.java             |    2 
 server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java    |   29 +-
 platform/src/components/business/OperaBaseDataWindow.vue                                   |  246 ++++++++++++++++++++++++
 platform/src/api/business/goods.js                                                         |   20 +-
 server/service/src/main/java/com/doumee/dao/business/model/BaseGoods.java                  |    2 
 platform/.env.development                                                                  |    2 
 platform/src/views/business/goods.vue                                                      |   11 
 11 files changed, 529 insertions(+), 49 deletions(-)

diff --git a/platform/.env.development b/platform/.env.development
index 6a5ee4e..fd388dc 100644
--- a/platform/.env.development
+++ b/platform/.env.development
@@ -6,4 +6,4 @@
 # 浠诲悍
 # VUE_APP_API = 'http://192.168.0.15:10017/'
 # 鐒︽澗
-VUE_APP_API = 'http://192.168.0.36:10011'
+VUE_APP_API = 'http://localhost:10011'
diff --git a/platform/src/api/business/baseData.js b/platform/src/api/business/baseData.js
new file mode 100644
index 0000000..197c405
--- /dev/null
+++ b/platform/src/api/business/baseData.js
@@ -0,0 +1,40 @@
+import request from '../../utils/request'
+
+// 鏌ヨ
+export function fetchList (data) {
+  return request.post('/business/baseData/page', data, {
+    trim: true
+  })
+}
+
+// 瀵煎嚭Excel
+export function exportExcel (data) {
+  return request.post('/business/baseData/exportExcel', data, {
+    trim: true,
+    download: true
+  })
+}
+
+// 鍒涘缓
+export function create (data) {
+  return request.post('/business/baseData/create', data)
+}
+
+// 淇敼
+export function updateById (data) {
+  return request.post('/business/baseData/updateById', data)
+}
+
+// 鍒犻櫎
+export function deleteById (id) {
+  return request.get(`/business/baseData/delete/${id}`)
+}
+
+// 鎵归噺鍒犻櫎
+export function deleteByIdInBatch (ids) {
+  return request.get('/business/baseData/delete/batch', {
+    params: {
+      ids
+    }
+  })
+}
diff --git a/platform/src/api/business/goods.js b/platform/src/api/business/goods.js
index 4bb3c85..50f61c8 100644
--- a/platform/src/api/business/goods.js
+++ b/platform/src/api/business/goods.js
@@ -2,14 +2,14 @@
 
 // 鏌ヨ
 export function fetchList (data) {
-  return request.post('/business/goods/page', data, {
+  return request.post('/business/baseGoods/page', data, {
     trim: true
   })
 }
 
 // 瀵煎嚭Excel
 export function exportExcel (data) {
-  return request.post('/business/goods/exportExcel', data, {
+  return request.post('/business/baseGoods/exportExcel', data, {
     trim: true,
     download: true
   })
@@ -17,7 +17,7 @@
 
 // 瀵煎嚭妯℃澘
 export function exportDoc (params) {
-  return request.get('/business/goods/export', params, {
+  return request.get('/business/baseGoods/export', params, {
     trim: true,
     download: true
   })
@@ -25,22 +25,22 @@
 
 // 鍒涘缓
 export function create (data) {
-  return request.post('/business/goods/create', data)
+  return request.post('/business/baseGoods/create', data)
 }
 
 // 淇敼
 export function updateById (data) {
-  return request.post('/business/goods/updateById', data)
+  return request.post('/business/baseGoods/updateById', data)
 }
 
 // 鍒犻櫎
 export function deleteById (id) {
-  return request.get(`/business/goods/delete/${id}`)
+  return request.get(`/business/baseGoods/delete/${id}`)
 }
 
 // 鎵归噺鍒犻櫎
 export function deleteByIdInBatch (ids) {
-  return request.get('/business/goods/delete/batch', {
+  return request.get('/business/baseGoods/delete/batch', {
     params: {
       ids
     }
@@ -49,15 +49,15 @@
 
 // 淇敼鐘舵��
 export function updateDisableById (data) {
-  return request.post('/business/goods/updateDisableById', data)
+  return request.post('/business/baseGoods/updateDisableById', data)
 }
 
 // 鍒楄〃 - 鍟嗗搧閫夋嫨
-export function findListForGoodsId (goodsId) {
+export function findListForbaseGoodsId (goodsId) {
   return request.get(`/business/category/findListForGoodsId?goodsId=${goodsId}`)
 }
 
 // 鏍规嵁ID鏌ヨ
 export function queryById (id) {
-  return request.get(`business/goods/${id}`)
+  return request.get(`business/baseGoods/${id}`)
 }
\ No newline at end of file
diff --git a/platform/src/components/business/OperaBaseDataWindow.vue b/platform/src/components/business/OperaBaseDataWindow.vue
new file mode 100644
index 0000000..ff0a5d8
--- /dev/null
+++ b/platform/src/components/business/OperaBaseDataWindow.vue
@@ -0,0 +1,246 @@
+<template>
+  <GlobalWindow
+    :title="title"
+    :visible.sync="visible"
+    :confirm-working="isWorking"
+    @confirm="confirm"
+  >
+    <el-form :model="form" ref="form" :rules="rules">
+      <el-form-item label="鍒涘缓浜虹紪鐮�" prop="creator">
+        <el-input v-model="form.creator" placeholder="璇疯緭鍏ュ垱寤轰汉缂栫爜" v-trim/>
+      </el-form-item>
+      <el-form-item label="鍒涘缓鏃堕棿" prop="createDate">
+        <el-date-picker v-model="form.createDate" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ュ垱寤烘椂闂�"></el-date-picker>
+      </el-form-item>
+      <el-form-item label="鏇存柊浜虹紪鐮�" prop="editor">
+        <el-input v-model="form.editor" placeholder="璇疯緭鍏ユ洿鏂颁汉缂栫爜" v-trim/>
+      </el-form-item>
+      <el-form-item label="鏇存柊鏃堕棿" prop="editDate">
+        <el-date-picker v-model="form.editDate" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ユ洿鏂版椂闂�"></el-date-picker>
+      </el-form-item>
+      <el-form-item label="鏄惁鍒犻櫎0鍚� 1鏄�" prop="isdeleted">
+        <el-input v-model="form.isdeleted" placeholder="璇疯緭鍏ユ槸鍚﹀垹闄�0鍚� 1鏄�" v-trim/>
+      </el-form-item>
+      <el-form-item label="鏍囬" prop="title">
+        <el-input v-model="form.title" placeholder="璇疯緭鍏ユ爣棰�" v-trim/>
+      </el-form-item>
+      <el-form-item label="鍟嗗搧鍚嶇О" prop="name">
+        <el-input v-model="form.name" placeholder="璇疯緭鍏ュ晢鍝佸悕绉�" v-trim/>
+      </el-form-item>
+      <el-form-item label="浜笢sku" prop="sku">
+        <el-input v-model="form.sku" placeholder="璇疯緭鍏ヤ含涓渟ku" v-trim/>
+      </el-form-item>
+      <el-form-item label="鍝佺墝" prop="brand">
+        <el-input v-model="form.brand" placeholder="璇疯緭鍏ュ搧鐗�" v-trim/>
+      </el-form-item>
+      <el-form-item label="绫诲埆" prop="category">
+        <el-input v-model="form.category" placeholder="璇疯緭鍏ョ被鍒�" v-trim/>
+      </el-form-item>
+      <el-form-item label="澶栭摼鍦板潃" prop="url">
+        <el-input v-model="form.url" placeholder="璇疯緭鍏ュ閾惧湴鍧�" v-trim/>
+      </el-form-item>
+      <el-form-item label="鍒楄〃鍥�" prop="imgurl">
+        <el-input v-model="form.imgurl" placeholder="璇疯緭鍏ュ垪琛ㄥ浘" v-trim/>
+      </el-form-item>
+      <el-form-item label="澶у浘1" prop="bgImg">
+        <el-input v-model="form.bgImg" placeholder="璇疯緭鍏ュぇ鍥�1" v-trim/>
+      </el-form-item>
+      <el-form-item label="澶у浘2" prop="bgImg2">
+        <el-input v-model="form.bgImg2" placeholder="璇疯緭鍏ュぇ鍥�2" v-trim/>
+      </el-form-item>
+      <el-form-item label="澶у浘3" prop="bgImg3">
+        <el-input v-model="form.bgImg3" placeholder="璇疯緭鍏ュぇ鍥�3" v-trim/>
+      </el-form-item>
+      <el-form-item label="浠锋牸" prop="price">
+        <el-input v-model="form.price" placeholder="璇疯緭鍏ヤ环鏍�" v-trim/>
+      </el-form-item>
+      <el-form-item label="閲囪喘浠锋牸" prop="saleprice">
+        <el-input v-model="form.saleprice" placeholder="璇疯緭鍏ラ噰璐环鏍�" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��1" prop="attr1">
+        <el-input v-model="form.attr1" placeholder="璇疯緭鍏ュ睘鎬�1" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��2" prop="attr2">
+        <el-input v-model="form.attr2" placeholder="璇疯緭鍏ュ睘鎬�2" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��3" prop="attr3">
+        <el-input v-model="form.attr3" placeholder="璇疯緭鍏ュ睘鎬�3" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��4" prop="attr4">
+        <el-input v-model="form.attr4" placeholder="璇疯緭鍏ュ睘鎬�4" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��5" prop="attr5">
+        <el-input v-model="form.attr5" placeholder="璇疯緭鍏ュ睘鎬�5" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��6" prop="attr6">
+        <el-input v-model="form.attr6" placeholder="璇疯緭鍏ュ睘鎬�6" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��7" prop="attr7">
+        <el-input v-model="form.attr7" placeholder="璇疯緭鍏ュ睘鎬�7" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��8" prop="attr8">
+        <el-input v-model="form.attr8" placeholder="璇疯緭鍏ュ睘鎬�8" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��9" prop="attr9">
+        <el-input v-model="form.attr9" placeholder="璇疯緭鍏ュ睘鎬�9" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��10" prop="attr10">
+        <el-input v-model="form.attr10" placeholder="璇疯緭鍏ュ睘鎬�10" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��11" prop="attr11">
+        <el-input v-model="form.attr11" placeholder="璇疯緭鍏ュ睘鎬�11" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��12" prop="attr12">
+        <el-input v-model="form.attr12" placeholder="璇疯緭鍏ュ睘鎬�12" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��13" prop="attr13">
+        <el-input v-model="form.attr13" placeholder="璇疯緭鍏ュ睘鎬�13" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��14" prop="attr14">
+        <el-input v-model="form.attr14" placeholder="璇疯緭鍏ュ睘鎬�14" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��15" prop="attr15">
+        <el-input v-model="form.attr15" placeholder="璇疯緭鍏ュ睘鎬�15" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��16" prop="attr16">
+        <el-input v-model="form.attr16" placeholder="璇疯緭鍏ュ睘鎬�16" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��17" prop="attr17">
+        <el-input v-model="form.attr17" placeholder="璇疯緭鍏ュ睘鎬�17" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��18" prop="attr18">
+        <el-input v-model="form.attr18" placeholder="璇疯緭鍏ュ睘鎬�18" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��19" prop="attr19">
+        <el-input v-model="form.attr19" placeholder="璇疯緭鍏ュ睘鎬�19" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��20" prop="attr20">
+        <el-input v-model="form.attr20" placeholder="璇疯緭鍏ュ睘鎬�20" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��21" prop="attr21">
+        <el-input v-model="form.attr21" placeholder="璇疯緭鍏ュ睘鎬�21" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��22" prop="attr22">
+        <el-input v-model="form.attr22" placeholder="璇疯緭鍏ュ睘鎬�22" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��23" prop="attr23">
+        <el-input v-model="form.attr23" placeholder="璇疯緭鍏ュ睘鎬�23" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��24" prop="attr24">
+        <el-input v-model="form.attr24" placeholder="璇疯緭鍏ュ睘鎬�24" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��25" prop="attr25">
+        <el-input v-model="form.attr25" placeholder="璇疯緭鍏ュ睘鎬�25" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��26" prop="attr26">
+        <el-input v-model="form.attr26" placeholder="璇疯緭鍏ュ睘鎬�26" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��27" prop="attr27">
+        <el-input v-model="form.attr27" placeholder="璇疯緭鍏ュ睘鎬�27" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��28" prop="attr28">
+        <el-input v-model="form.attr28" placeholder="璇疯緭鍏ュ睘鎬�28" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��29" prop="attr29">
+        <el-input v-model="form.attr29" placeholder="璇疯緭鍏ュ睘鎬�29" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��30" prop="attr30">
+        <el-input v-model="form.attr30" placeholder="璇疯緭鍏ュ睘鎬�30" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��31" prop="attr31">
+        <el-input v-model="form.attr31" placeholder="璇疯緭鍏ュ睘鎬�31" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��32" prop="attr32">
+        <el-input v-model="form.attr32" placeholder="璇疯緭鍏ュ睘鎬�32" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��33" prop="attr33">
+        <el-input v-model="form.attr33" placeholder="璇疯緭鍏ュ睘鎬�33" v-trim/>
+      </el-form-item>
+      <el-form-item label="灞炴��34" prop="attr34">
+        <el-input v-model="form.attr34" placeholder="璇疯緭鍏ュ睘鎬�34" v-trim/>
+      </el-form-item>
+      <el-form-item label="澶勭悊鐘舵�� 0寰呭鐞� 1宸插鐞�" prop="status">
+        <el-input v-model="form.status" placeholder="璇疯緭鍏ュ鐞嗙姸鎬� 0寰呭鐞� 1宸插鐞�" v-trim/>
+      </el-form-item>
+    </el-form>
+  </GlobalWindow>
+</template>
+
+<script>
+import BaseOpera from '@/components/base/BaseOpera'
+import GlobalWindow from '@/components/common/GlobalWindow'
+export default {
+  name: 'OperaBaseDataWindow',
+  extends: BaseOpera,
+  components: { GlobalWindow },
+  data () {
+    return {
+      // 琛ㄥ崟鏁版嵁
+      form: {
+        id: null,
+        creator: '',
+        createDate: '',
+        editor: '',
+        editDate: '',
+        isdeleted: '',
+        title: '',
+        name: '',
+        sku: '',
+        brand: '',
+        category: '',
+        url: '',
+        imgurl: '',
+        bgImg: '',
+        bgImg2: '',
+        bgImg3: '',
+        price: '',
+        saleprice: '',
+        attr1: '',
+        attr2: '',
+        attr3: '',
+        attr4: '',
+        attr5: '',
+        attr6: '',
+        attr7: '',
+        attr8: '',
+        attr9: '',
+        attr10: '',
+        attr11: '',
+        attr12: '',
+        attr13: '',
+        attr14: '',
+        attr15: '',
+        attr16: '',
+        attr17: '',
+        attr18: '',
+        attr19: '',
+        attr20: '',
+        attr21: '',
+        attr22: '',
+        attr23: '',
+        attr24: '',
+        attr25: '',
+        attr26: '',
+        attr27: '',
+        attr28: '',
+        attr29: '',
+        attr30: '',
+        attr31: '',
+        attr32: '',
+        attr33: '',
+        attr34: '',
+        status: ''
+      },
+      // 楠岃瘉瑙勫垯
+      rules: {
+      }
+    }
+  },
+  created () {
+    this.config({
+      api: '/business/baseData',
+      'field.id': 'id'
+    })
+  }
+}
+</script>
diff --git a/platform/src/views/business/baseData.vue b/platform/src/views/business/baseData.vue
new file mode 100644
index 0000000..4ac6e19
--- /dev/null
+++ b/platform/src/views/business/baseData.vue
@@ -0,0 +1,201 @@
+<template>
+  <TableLayout :permissions="['business:basedata:query']">
+    <!-- 鎼滅储琛ㄥ崟 -->
+    <el-form ref="searchForm" slot="search-form" :model="searchForm" label-width="80px" inline>
+      <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="浜笢sku" prop="sku">
+        <el-input v-model="searchForm.sku" placeholder="璇疯緭鍏ヤ含涓渟ku" @keypress.enter.native="search"></el-input>
+      </el-form-item>
+      <el-form-item label="鍝佺墝" prop="brand">
+        <el-input v-model="searchForm.brand" placeholder="璇疯緭鍏ュ搧鐗�" @keypress.enter.native="search"></el-input>
+      </el-form-item>
+      <el-form-item label="绫诲埆" prop="category">
+        <el-input v-model="searchForm.category" placeholder="璇疯緭鍏ョ被鍒�" @keypress.enter.native="search"></el-input>
+      </el-form-item>
+      <el-form-item label="鐘舵��" prop="status">
+        <el-select v-model="searchForm.status" clearable placeholder="璇烽�夋嫨">
+          <el-option v-for="item in statusList" :key="item.id" :label="item.name" :value="item.id">
+          </el-option>
+        </el-select>
+        <!-- <el-input v-model="searchForm.status" placeholder="璇疯緭鍏ョ姸鎬� 0鍚敤 1绂佺敤" @keypress.enter.native="search"></el-input> -->
+      </el-form-item>
+      <section>
+        <el-button type="primary" @click="search">鎼滅储</el-button>
+<!--
+        <el-button type="primary" :loading="isWorking.export" v-permissions="['business:basedata:exportExcel']" @click="exportExcel">瀵煎嚭</el-button>
+-->
+        <el-button @click="reset">閲嶇疆</el-button>
+      </section>
+    </el-form>
+    <!-- 琛ㄦ牸鍜屽垎椤� -->
+    <template v-slot:table-wrap>
+      <ul class="toolbar" v-permissions="['business:basedata:create', 'business:basedata:delete']">
+<!--
+        <li><el-button type="primary" @click="$refs.operaBaseDataWindow.open('鏂板缓鍟嗗搧婧愭暟鎹俊鎭〃')" icon="el-icon-plus" v-permissions="['business:basedata:create']">鏂板缓</el-button></li>
+-->
+        <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:basedata:delete']">鎵归噺鍒犻櫎</el-button></li>
+      </ul>
+      <el-table
+        v-loading="isWorking.search"
+        :data="tableData.list"
+        stripe
+        @selection-change="handleSelectionChange"
+      >
+        <el-table-column type="selection" width="55"></el-table-column>
+        <el-table-column prop="id" label="涓婚敭" min-width="100px"></el-table-column>
+        <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" min-width="100px"></el-table-column>
+        <el-table-column prop="name" label="鍟嗗搧涓诲浘" min-width="80px">
+          <template slot-scope="{row}">
+           <a :href="`${row.url}`" target="_blank">
+             <div style="display: flex; align-items: center;">
+               <div style="width: 70px; height: 70px; flex-shrink: 0;">
+                 <el-image v-if="row.imgurl" style="width: 70px; height: 70px" :src="row.imgurl"
+                           :preview-src-list="[row.imgurl]" fit="cover"></el-image>
+               </div>
+             </div> </a>
+          </template>
+        </el-table-column>
+        <el-table-column prop="name" label="鍟嗗搧鍚嶇О" min-width="100px">
+          <template slot-scope="{row}">
+           <a :href="`${row.url}`" target="_blank">{{row.name}}</a>
+          </template>
+        </el-table-column>
+<!--        <el-table-column prop="title" label="鏍囬" min-width="100px"></el-table-column>-->
+        <el-table-column prop="sku" label="浜笢sku" min-width="100px"></el-table-column>
+        <el-table-column prop="brand" label="鍝佺墝" min-width="100px"></el-table-column>
+        <el-table-column prop="category" label="绫诲埆" min-width="100px"></el-table-column>
+        <el-table-column prop="price" label="浠锋牸锛堝厓锛�" min-width="100px"></el-table-column>
+        <el-table-column prop="saleprice" label="閲囪喘浠锋牸锛堝厓锛�" min-width="100px"></el-table-column>
+        <el-table-column prop="bgImg" label="澶у浘1" min-width="80px">
+          <template slot-scope="{row}">
+            <div style="display: flex; align-items: center;">
+              <div style="width: 70px; height: 70px; flex-shrink: 0;">
+                <el-image v-if="row.bgImg" style="width: 70px; height: 70px" :src="row.bgImg"
+                          :preview-src-list="[row.bgImg]" fit="cover"></el-image>
+              </div>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="bgImg2" label="澶у浘2" min-width="80px">
+          <template slot-scope="{row}">
+            <div style="display: flex; align-items: center;">
+              <div style="width: 70px; height: 70px; flex-shrink: 0;">
+                <el-image v-if="row.bgImg2" style="width: 70px; height: 70px" :src="row.bgImg2"
+                          :preview-src-list="[row.bgImg2]" fit="cover"></el-image>
+              </div>
+            </div>
+          </template>
+        </el-table-column>
+        <el-table-column prop="bgImg3" label="澶у浘3" min-width="80px">
+          <template slot-scope="{row}">
+            <div style="display: flex; align-items: center;">
+              <div style="width: 70px; height: 70px; flex-shrink: 0;">
+                <el-image v-if="row.bgImg3" style="width: 70px; height: 70px" :src="row.bgImg3"
+                          :preview-src-list="[row.bgImg3]" fit="cover"></el-image>
+              </div>
+            </div>
+          </template>
+        </el-table-column>
+<!--        <el-table-column prop="attr1" label="灞炴��1" min-width="100px"></el-table-column>
+        <el-table-column prop="attr2" label="灞炴��2" min-width="100px"></el-table-column>
+        <el-table-column prop="attr3" label="灞炴��3" min-width="100px"></el-table-column>
+        <el-table-column prop="attr4" label="灞炴��4" min-width="100px"></el-table-column>
+        <el-table-column prop="attr5" label="灞炴��5" min-width="100px"></el-table-column>
+        <el-table-column prop="attr6" label="灞炴��6" min-width="100px"></el-table-column>
+        <el-table-column prop="attr7" label="灞炴��7" min-width="100px"></el-table-column>
+        <el-table-column prop="attr8" label="灞炴��8" min-width="100px"></el-table-column>
+        <el-table-column prop="attr9" label="灞炴��9" min-width="100px"></el-table-column>
+        <el-table-column prop="attr10" label="灞炴��10" min-width="100px"></el-table-column>
+        <el-table-column prop="attr11" label="灞炴��11" min-width="100px"></el-table-column>
+        <el-table-column prop="attr12" label="灞炴��12" min-width="100px"></el-table-column>
+        <el-table-column prop="attr13" label="灞炴��13" min-width="100px"></el-table-column>
+        <el-table-column prop="attr14" label="灞炴��14" min-width="100px"></el-table-column>
+        <el-table-column prop="attr15" label="灞炴��15" min-width="100px"></el-table-column>
+        <el-table-column prop="attr16" label="灞炴��16" min-width="100px"></el-table-column>
+        <el-table-column prop="attr17" label="灞炴��17" min-width="100px"></el-table-column>
+        <el-table-column prop="attr18" label="灞炴��18" min-width="100px"></el-table-column>
+        <el-table-column prop="attr19" label="灞炴��19" min-width="100px"></el-table-column>
+        <el-table-column prop="attr20" label="灞炴��20" min-width="100px"></el-table-column>
+        <el-table-column prop="attr21" label="灞炴��21" min-width="100px"></el-table-column>
+        <el-table-column prop="attr22" label="灞炴��22" min-width="100px"></el-table-column>
+        <el-table-column prop="attr23" label="灞炴��23" min-width="100px"></el-table-column>
+        <el-table-column prop="attr24" label="灞炴��24" min-width="100px"></el-table-column>
+        <el-table-column prop="attr25" label="灞炴��25" min-width="100px"></el-table-column>
+        <el-table-column prop="attr26" label="灞炴��26" min-width="100px"></el-table-column>
+        <el-table-column prop="attr27" label="灞炴��27" min-width="100px"></el-table-column>
+        <el-table-column prop="attr28" label="灞炴��28" min-width="100px"></el-table-column>
+        <el-table-column prop="attr29" label="灞炴��29" min-width="100px"></el-table-column>
+        <el-table-column prop="attr30" label="灞炴��30" min-width="100px"></el-table-column>
+        <el-table-column prop="attr31" label="灞炴��31" min-width="100px"></el-table-column>
+        <el-table-column prop="attr32" label="灞炴��32" min-width="100px"></el-table-column>
+        <el-table-column prop="attr33" label="灞炴��33" min-width="100px"></el-table-column>
+        <el-table-column prop="attr34" label="灞炴��34" min-width="100px"></el-table-column>
+        --><el-table-column prop="status" label="澶勭悊鐘舵��" min-width="100px">
+        <template slot-scope="{row}">
+          {{row.status==1?"宸插鐞�":"鏈鐞�"}}
+        </template>
+      </el-table-column>
+        <el-table-column
+          v-if="containPermissions(['business:basedata:update', 'business:basedata:delete'])"
+          label="鎿嶄綔"
+          min-width="120"
+          fixed="right"
+        >
+          <template slot-scope="{row}">
+<!--
+            <el-button type="text" @click="$refs.operaBaseDataWindow.open('缂栬緫鍟嗗搧婧愭暟鎹俊鎭〃', row)" icon="el-icon-edit" v-permissions="['business:basedata:update']">缂栬緫</el-button>
+-->
+            <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:basedata:delete']">鍒犻櫎</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <pagination
+        @size-change="handleSizeChange"
+        @current-change="handlePageChange"
+        :pagination="tableData.pagination"
+      >
+      </pagination>
+    </template>
+    <!-- 鏂板缓/淇敼 -->
+    <OperaBaseDataWindow ref="operaBaseDataWindow" @success="handlePageChange"/>
+  </TableLayout>
+</template>
+
+<script>
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import OperaBaseDataWindow from '@/components/business/OperaBaseDataWindow'
+export default {
+  name: 'BaseData',
+  extends: BaseTable,
+  components: { TableLayout, Pagination, OperaBaseDataWindow },
+  data () {
+    return {
+      // 鎼滅储
+      searchForm: {
+        name: '',
+        sku: '',
+        brand: '',
+        category: '',
+        status: null
+      },
+      statusList: [
+        { name: '鏈鐞�', id: 0 },
+        { name: '宸插鐞�', id: 1 }
+      ]
+    }
+  },
+  created () {
+    this.config({
+      module: '鍟嗗搧婧愭暟鎹俊鎭〃',
+      api: '/business/baseData',
+      'field.id': 'id',
+      'field.main': 'id'
+    })
+    this.search()
+  }
+}
+</script>
diff --git a/platform/src/views/business/goods.vue b/platform/src/views/business/goods.vue
index c7e81df..6a97d57 100644
--- a/platform/src/views/business/goods.vue
+++ b/platform/src/views/business/goods.vue
@@ -58,18 +58,17 @@
           <template slot-scope="{row}">
             <div style="display: flex; align-items: center;">
               <div style="width: 70px; height: 70px; flex-shrink: 0;">
-                <el-image v-if="row.imgurl" style="width: 70px; height: 70px" :src="row.prefixUrl + row.imgurl"
-                  :preview-src-list="[row.prefixUrl + row.imgurl]" fit="cover"></el-image>
+                <el-image v-if="row.imgurl" style="width: 70px; height: 70px" :src="row.fullImgUrl"
+                  :preview-src-list="[row.fullImgUrl]" fit="cover"></el-image>
               </div>
-              {{ row.name }}
+              <span style="margin-left: 15px">{{ row.name }}</span>
             </div>
           </template>
         </el-table-column>
         <el-table-column prop="brandName" label="鍝佺墝" min-width="100px"></el-table-column>
         <el-table-column prop="categoryName" label="绫诲埆" min-width="100px"></el-table-column>
-        <el-table-column prop="baseZdPrice" label="鎸囧浠凤紙鍏冿級" min-width="100px"></el-table-column>
-        <el-table-column prop="basePrice" label="閲囪喘浠�(鍏�)" min-width="100px"></el-table-column>
-        <el-table-column prop="price" label="鍏ユ墜浠凤紙鍏冿級" min-width="100px"></el-table-column>
+        <el-table-column prop="zdPrice" label="鎸囧浠凤紙鍏冿級" min-width="100px"></el-table-column>
+        <el-table-column prop="price" label="閲囪喘浠�(鍏�)" min-width="100px"></el-table-column>
         <el-table-column prop="createDate" label="鍒涘缓鏃堕棿" min-width="100px"></el-table-column>
         <el-table-column prop="status" label="鐘舵��" min-width="100px">
           <template slot-scope="{row}">
diff --git a/server/platform/src/main/java/com/doumee/api/business/BaseGoodsController.java b/server/platform/src/main/java/com/doumee/api/business/BaseGoodsController.java
index 02b4907..cc6b9c8 100644
--- a/server/platform/src/main/java/com/doumee/api/business/BaseGoodsController.java
+++ b/server/platform/src/main/java/com/doumee/api/business/BaseGoodsController.java
@@ -96,7 +96,7 @@
      * @param idList 瀹炰綋瀵硅薄
      */
     @ApiOperation("鏍规嵁ID鏌ヨ")
-    @PostMapping("/{status")
+    @PostMapping("/{status}")
     @RequiresPermissions("business:basegoods:query")
     public ApiResponse updateStatusByIds(@RequestBody List<Integer> idList, @PathVariable Integer status){
         baseGoodsService.updateStatusByIds(idList,status);
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/BaseGoods.java b/server/service/src/main/java/com/doumee/dao/business/model/BaseGoods.java
index 8f22628..eef13be 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/BaseGoods.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/BaseGoods.java
@@ -74,7 +74,7 @@
     @ApiModelProperty(value = "鎵�灞炲搧绫荤紪鐮�(base_category)", example = "1")
     @ExcelColumn(name="鎵�灞炲搧绫荤紪鐮�(base_category)")
     @TableField(exist = false)
-    private Integer categoryName;
+    private String categoryName;
 
     @ApiModelProperty(value = "鎵�灞炲搧鐗岀紪鐮�(base_brand)", example = "1")
     @ExcelColumn(name="鎵�灞炲搧鐗岀紪鐮�(base_brand)")
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java
index 0cb6e60..761a78d 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java
@@ -288,8 +288,8 @@
     }
 
     private String getPreUrl(){
-        String prefixUrl = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.FILE_DIR).getCode()
-                + systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.CATEGORY_IMG).getCode();
+        String prefixUrl = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
+                + systemDictDataBiz.queryByCode(Constants.OSS, Constants.CATEGORY_IMG).getCode();
         return prefixUrl;
     }
 }
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java
index 1fe955e..69a36fc 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java
@@ -117,6 +117,7 @@
   
     @Override
     public PageData<BaseData> findPage(PageWrap<BaseData> pageWrap) {
+        pageWrap.getModel().setIsdeleted(Constants.ZERO);
         IPage<BaseData> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
         QueryWrapper<BaseData> queryWrapper = new QueryWrapper<>();
         Utils.MP.blankToNull(pageWrap.getModel());
@@ -141,19 +142,19 @@
             queryWrapper.lambda().eq(BaseData::getIsdeleted, pageWrap.getModel().getIsdeleted());
         }
         if (pageWrap.getModel().getTitle() != null) {
-            queryWrapper.lambda().eq(BaseData::getTitle, pageWrap.getModel().getTitle());
+            queryWrapper.lambda().like(BaseData::getTitle, pageWrap.getModel().getTitle());
         }
         if (pageWrap.getModel().getName() != null) {
-            queryWrapper.lambda().eq(BaseData::getName, pageWrap.getModel().getName());
+            queryWrapper.lambda().like(BaseData::getName, pageWrap.getModel().getName());
         }
         if (pageWrap.getModel().getSku() != null) {
-            queryWrapper.lambda().eq(BaseData::getSku, pageWrap.getModel().getSku());
+            queryWrapper.lambda().like(BaseData::getSku, pageWrap.getModel().getSku());
         }
         if (pageWrap.getModel().getBrand() != null) {
-            queryWrapper.lambda().eq(BaseData::getBrand, pageWrap.getModel().getBrand());
+            queryWrapper.lambda().like(BaseData::getBrand, pageWrap.getModel().getBrand());
         }
         if (pageWrap.getModel().getCategory() != null) {
-            queryWrapper.lambda().eq(BaseData::getCategory, pageWrap.getModel().getCategory());
+            queryWrapper.lambda().like(BaseData::getCategory, pageWrap.getModel().getCategory());
         }
         if (pageWrap.getModel().getUrl() != null) {
             queryWrapper.lambda().eq(BaseData::getUrl, pageWrap.getModel().getUrl());
@@ -363,7 +364,7 @@
                 if(cModel!= null){
                     goods.setCategoryId(cModel.getId());
                 }
-                goods.setImgurl(getOssImgurl(ossModel, data.getImgurl()));
+                goods.setImgurl(getOssImgurl(ossModel,ossModel.getGoodsFolder(), data.getImgurl()));
                 goods.setPrice(Constants.formatBigdecimal(data.getSaleprice()).multiply(Constants.formatBigdecimal(cModel.getPriceRate())));
                 //鎻掑叆鏂板晢鍝佹暟鎹�
                 baseGoodsMapper.insert(goods);
@@ -397,7 +398,7 @@
 
     private int addImg(int i,OssModel ossModel, Integer id,String bgImg) {
         if(StringUtils.isNotBlank(bgImg)){
-            String img =getOssImgurl(ossModel,bgImg);
+            String img =getOssImgurl(ossModel, ossModel.getGoodsFolder() ,bgImg);
             if(StringUtils.isNotBlank(img)){
                 Multifile f = new Multifile();
                 f.setFileurl(img);
@@ -585,7 +586,7 @@
         model.setIsdeleted(Constants.ZERO);
         model.setPinyin(PinYinUtil.getFullSpell(model.getName()));
         model.setShortPinyin(PinYinUtil.getFirstSpell(model.getName()));
-        model.setImgurl(getOssImgurl(ossModel,img));
+        model.setImgurl(getOssImgurl(ossModel, ossModel.getCateFolder() ,img));
         //鎻掑叆鏂扮殑鍝佺墝淇℃伅
         baseCategoryMapper.insert(model);
         //鍔犲叆闆嗗悎涓�
@@ -593,7 +594,7 @@
         return model;
     }
 
-    private String getOssImgurl(OssModel ossModel, String img) {
+    private String getOssImgurl(OssModel ossModel, String folder,String img) {
         if(StringUtils.isBlank(img)){
             return null;
         }
@@ -603,7 +604,7 @@
             nfix = StringUtils.defaultString(nfix,".jpg");
             String fileName = UUID.randomUUID() + nfix;
             String tempFileName = nowDate + "/" + fileName;
-            String key = ossModel.getCateFolder() + tempFileName;// 鏂囦欢鍚�
+            String key =folder+ tempFileName;// 鏂囦欢鍚�
 
             ALiYunUtil obs = new ALiYunUtil(ossModel.getEndpoint(), ossModel.getAccessId(), ossModel.getAccessKey());
             if (obs.uploadOnlineObject(img,ossModel.getBucket(), key,null)) {
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java
index f5c34f2..726f894 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java
@@ -21,6 +21,7 @@
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
+import org.apache.commons.lang3.StringUtils;
 import org.apache.shiro.SecurityUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.context.annotation.Lazy;
@@ -321,30 +322,22 @@
 
     @Override
     public PageData<BaseGoods> findPage(PageWrap<BaseGoods> pageWrap) {
+        pageWrap.getModel().setIsdeleted(Constants.ZERO);
         IPage<BaseGoods> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
         MPJLambdaWrapper<BaseGoods> queryWrapper = new MPJLambdaWrapper<>();
         Utils.MP.blankToNull(pageWrap.getModel());
-
-        if (pageWrap.getModel().getId() != null) {
-            queryWrapper.like(BaseGoods::getId, pageWrap.getModel().getId());
-        }
-        if (pageWrap.getModel().getName() != null) {
-            queryWrapper.eq(BaseGoods::getName, pageWrap.getModel().getName());
-        }
-        if (pageWrap.getModel().getStatus() != null) {
-            queryWrapper.eq(BaseGoods::getStatus, pageWrap.getModel().getStatus());
-        }
-        if (pageWrap.getModel().getCategoryId() != null) {
-            queryWrapper.eq(BaseGoods::getCategoryId, pageWrap.getModel().getCategoryId());
-        }
-        if (pageWrap.getModel().getBrandId() != null) {
-            queryWrapper.eq(BaseGoods::getBrandId, pageWrap.getModel().getBrandId());
-        }
         queryWrapper.leftJoin(Brand.class,Brand::getId,BaseGoods::getBrandId)
-                    .leftJoin(BaseCategory.class,BaseCategory::getId,BaseGoods::getBaseDataId)
+                    .leftJoin(BaseCategory.class,BaseCategory::getId,BaseGoods::getCategoryId)
                     .selectAll(BaseGoods.class)
                     .selectAs(Brand::getName,BaseGoods::getBrandName)
-                    .selectAs(BaseCategory::getSortnum,BaseGoods::getCategoryName);
+                    .selectAs(BaseCategory::getName,BaseGoods::getCategoryName)
+                    .eq(BaseGoods::getIsdeleted, Constants.ZERO)
+                    .like(StringUtils.isNotBlank(pageWrap.getModel().getName()), BaseGoods::getName,pageWrap.getModel().getName())
+                    .eq(pageWrap.getModel().getId()!=null,BaseGoods::getId, pageWrap.getModel().getId())
+                    .eq(pageWrap.getModel().getCategoryId()!=null,BaseGoods::getCategoryId, pageWrap.getModel().getCategoryId())
+                    .eq(pageWrap.getModel().getBrandId()!=null,BaseGoods::getBrandId, pageWrap.getModel().getBrandId())
+                    .eq(pageWrap.getModel().getStatus()!=null,BaseGoods::getStatus, pageWrap.getModel().getStatus());
+
         queryWrapper.orderByDesc(Goods::getId);
         PageData<BaseGoods> pageData =PageData.from(baseGoodsJoinMapper.selectJoinPage(page,BaseGoods.class,queryWrapper));
         String prefixUrl = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()

--
Gitblit v1.9.3