From 8df850d0087527789d9803be6a03f8a82113fa17 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 15 七月 2025 16:51:42 +0800
Subject: [PATCH] 前端

---
 admin/src/views/business/receiveWeight.vue                                              |   26 +-
 admin/src/components/business/OperaCategoryWindow.vue                                   |   48 ++++
 admin/src/components/common/UploadAvatarImage.vue                                       |    2 
 admin/src/layouts/TableLayout.vue                                                       |    3 
 admin/src/components/business/OperaReceiveWeightWindow.vue                              |   41 +--
 admin/src/views/business/orderSet.vue                                                   |  186 ++++++++++++++++++
 admin/src/views/business/categoryCb.vue                                                 |  122 ++++++++++++
 admin/src/api/system/dictData.js                                                        |    7 
 admin/src/views/business/categoryCar.vue                                                |   27 +-
 admin/src/views/business/categoryFee.vue                                                |  112 +++++++++++
 server/services/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java |    6 
 11 files changed, 519 insertions(+), 61 deletions(-)

diff --git a/admin/src/api/system/dictData.js b/admin/src/api/system/dictData.js
index 467c6c7..d7d4865 100644
--- a/admin/src/api/system/dictData.js
+++ b/admin/src/api/system/dictData.js
@@ -40,3 +40,10 @@
     }
   })
 }
+export function getPlatformConfig () {
+  return request.get('/system/dictData/getPlatformConfig' ,{})
+}
+// 淇敼
+export function updPlatformConfig (data) {
+  return request.post('/system/dictData/updPlatformConfig', data)
+}
diff --git a/admin/src/components/business/OperaCategoryWindow.vue b/admin/src/components/business/OperaCategoryWindow.vue
index ddf1871..1523010 100644
--- a/admin/src/components/business/OperaCategoryWindow.vue
+++ b/admin/src/components/business/OperaCategoryWindow.vue
@@ -7,10 +7,26 @@
   >
     <el-form :model="form" ref="form" :rules="rules">
       <el-form-item label="鍚嶇О" prop="name">
-        <el-input v-model="form.name" placeholder="璇疯緭鍏ュ悕绉�" v-trim/>
+        <el-input v-if="form.type !=3"  v-model="form.name" placeholder="璇疯緭鍏ュ悕绉�" v-trim/>
+        <el-select v-else  v-model="form.name" placeholder="璇烽�夋嫨璁㈠崟绫诲瀷" v-trim>
+          <el-option :value="'0'" label="鐢ㄥ伐鍗�"></el-option>
+          <el-option :value="'1'" label="璐ц繍鍗�"></el-option>
+          <el-option :value="'2'" label="璁㈤鍗�"></el-option>
+        </el-select>
       </el-form-item>
-      <el-form-item v-if="form.type == 1 || form.type == 2" :label=" form.type == 1?'杞﹁締瑙勬牸':'椁愭爣閰嶇疆'" prop="detailList">
-        <el-input v-model="form.detailList" placeholder="璇疯緭鍏ュ唴瀹�" v-trim/>
+      <el-form-item v-if="form.type ==3 " label="鎵嬬画璐癸紙%锛�" prop="detail">
+        <el-input  type="number"   v-model="form.detail" placeholder="璇疯緭鍏ュ悕绉�" v-trim/>
+      </el-form-item>
+      <el-form-item v-if="form.type == 1 || form.type == 2" :label=" form.type == 1?'杞﹁締瑙勬牸':'椁愭爣閰嶇疆锛堝厓锛�'" prop="detailList">
+        <div style="display: flex;flex-direction: column">
+          <div style="position: relative;display: block;width: 100%;" v-for="(item,index) in form.detailList"   >
+            <el-input  :type="form.type == 1?'text':'number'" style="display:inline-block;width: 60%;margin:5px ;float: left" v-model="form.detailList[index]"   placeholder="璇疯緭鍏ュ唴瀹�" v-trim/>
+            <el-button  style="display:inline-block;margin : 5px " @click="del(index)" v-if="form.detailList.length>0">x</el-button>
+          </div>
+          <div style="position: relative;display: block;width: 100%;">
+            <el-button style="width: 100px;margin: 5px;" type="primary" @click="add()">娣诲姞瑙勬牸</el-button>
+          </div>
+        </div>
       </el-form-item>
       <el-form-item v-if="form.type == 1" label="鍥炬爣" prop="icon">
         <UploadAvatarImage
@@ -19,7 +35,7 @@
             @uploadSuccess="uploadAvatarSuccess"
         />
       </el-form-item>
-      <el-form-item  v-if="form.type == 1"  label="鏄惁鍥哄畾杞﹁締" prop="isFixed">
+      <el-form-item  v-if="form.id ==null && form.type == 1"  label="鏄惁鍥哄畾杞﹁締" prop="isFixed">
         <el-radio-group v-model="form.isFixed">
           <el-radio :label="0">闈炲浐瀹�</el-radio>
           <el-radio :label="1">鍥哄畾杞﹀瀷</el-radio>
@@ -53,8 +69,10 @@
         sortnum: null,
         name: '',
         type: null,
-        detailList: [],
+        detail:null,
+        detailList: [''],
         icon: '',
+        iconFull: '',
         isFixed: 0
       },
       // 楠岃瘉瑙勫垯
@@ -70,9 +88,18 @@
     })
   },
   methods:{
+    del(index){
+      if(this.form.detailList.length<=1){
+        return
+      }
+      this.form.detailList.splice(index,1)
+    },
+    add(){
+      this.form.detailList.push('')
+    },
     uploadAvatarSuccess (file) {
-      this.$set(this.param, 'icon', file.imgurl)
-      this.$set(this.param, 'iconFull', file.imgurlfull)
+      this.$set(this.form, 'icon', file.imgurl)
+      this.$set(this.form, 'iconFull', file.imgurlfull)
     },
     open(title, target, type) {
       this.title = title
@@ -82,9 +109,11 @@
         status: 0,
         sortnum: null,
         name: '',
+        detail: null,
         type: type,
-        detailList: [],
+        detailList: [''],
         icon: '',
+        iconFull: '',
         isFixed: 0
       }
       // 鏂板缓
@@ -101,6 +130,9 @@
         for (const key in this.form) {
           this.form[key] = target[key]
         }
+        if(this.form.detailList==null){
+          this.form.detailList = ['']
+        }
       })
     }
   }
diff --git a/admin/src/components/business/OperaReceiveWeightWindow.vue b/admin/src/components/business/OperaReceiveWeightWindow.vue
index 8a87eb0..d41228c 100644
--- a/admin/src/components/business/OperaReceiveWeightWindow.vue
+++ b/admin/src/components/business/OperaReceiveWeightWindow.vue
@@ -6,41 +6,20 @@
     @confirm="confirm"
   >
     <el-form :model="form" ref="form" :rules="rules">
-      <el-form-item label="鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�" prop="deleted">
-        <el-input v-model="form.deleted" placeholder="璇疯緭鍏ユ槸鍚﹀凡鍒犻櫎 0鏈垹闄� 1宸插垹闄�" 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-item label="鍒涘缓浜虹紪鐮�" prop="createUser">
-        <el-input v-model="form.createUser" placeholder="璇疯緭鍏ュ垱寤轰汉缂栫爜" v-trim/>
-      </el-form-item>
-      <el-form-item label="鍒涘缓鏃堕棿" prop="createTime">
-        <el-date-picker v-model="form.createTime" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ュ垱寤烘椂闂�"></el-date-picker>
-      </el-form-item>
-      <el-form-item label="鏇存柊浜虹紪鐮�" prop="updateUser">
-        <el-input v-model="form.updateUser" placeholder="璇疯緭鍏ユ洿鏂颁汉缂栫爜" v-trim/>
-      </el-form-item>
-      <el-form-item label="鏇存柊鏃堕棿" prop="updateTime">
-        <el-date-picker v-model="form.updateTime" value-format="yyyy-MM-dd" placeholder="璇疯緭鍏ユ洿鏂版椂闂�"></el-date-picker>
-      </el-form-item>
-      <el-form-item label="澶囨敞" prop="remark">
-        <el-input v-model="form.remark" placeholder="璇疯緭鍏ュ娉�" v-trim/>
+      <el-form-item label="鏈�灏忔帴鍗曢噺" prop="receiveMin">
+        <el-input type="number"  v-model="form.receiveMin" placeholder="璇疯緭鍏ユ渶灏忔帴鍗曢噺" v-trim/>
       </el-form-item>
       <el-form-item label="鏈�澶ф帴鍗曢噺" prop="receiveMax">
-        <el-input v-model="form.receiveMax" placeholder="璇疯緭鍏ユ渶澶ф帴鍗曢噺" v-trim/>
-      </el-form-item>
-      <el-form-item label="鏈�灏忔帴鍗曢噺" prop="receiveMin">
-        <el-input v-model="form.receiveMin" placeholder="璇疯緭鍏ユ渶灏忔帴鍗曢噺" v-trim/>
+        <el-input type="number"  v-model="form.receiveMax" placeholder="璇疯緭鍏ユ渶澶ф帴鍗曢噺" v-trim/>
       </el-form-item>
       <el-form-item label="浼樺厛绾�" prop="level">
-        <el-input v-model="form.level" placeholder="璇疯緭鍏ヤ紭鍏堢骇" v-trim/>
+        <el-input type="number" v-model="form.level" placeholder="璇疯緭鍏ヤ紭鍏堢骇" v-trim/>
       </el-form-item>
-      <el-form-item label="璁㈠崟鏌ョ湅寤惰繜鏃堕棿" prop="delayTime">
-        <el-input v-model="form.delayTime" placeholder="璇疯緭鍏ヨ鍗曟煡鐪嬪欢杩熸椂闂�" v-trim/>
+      <el-form-item label="璁㈠崟鏌ョ湅寤惰繜鏃堕棿锛堝垎閽燂級" prop="delayTime">
+        <el-input type="number" v-model="form.delayTime" placeholder="璇疯緭鍏ヨ鍗曟煡鐪嬪欢杩熸椂闂�" v-trim/>
       </el-form-item>
-      <el-form-item label="鎺掑簭鐮�" prop="sortnum">
-        <el-input v-model="form.sortnum" placeholder="璇疯緭鍏ユ帓搴忕爜" v-trim/>
+      <el-form-item label="澶囨敞" prop="remark">
+        <el-input  type="textarea"  v-model="form.remark" placeholder="璇疯緭鍏ュ娉�" v-trim/>
       </el-form-item>
     </el-form>
   </GlobalWindow>
@@ -73,6 +52,10 @@
       },
       // 楠岃瘉瑙勫垯
       rules: {
+        receiveMin: [{ required: true, message: '璇疯緭鍏ユ渶灏忔帴鍗曢噺' }],
+        receiveMax: [{ required: true, message: '璇疯緭鍏ユ渶澶ф帴鍗曢噺' }],
+        level: [{ required: true, message: '璇疯緭鍏ヤ紭鍏堢骇' }],
+        delayTime: [{ required: true, message: '璁㈠崟鏌ョ湅寤惰繜鏃堕棿' }],
       }
     }
   },
diff --git a/admin/src/components/common/UploadAvatarImage.vue b/admin/src/components/common/UploadAvatarImage.vue
index faafd40..e39f3e5 100644
--- a/admin/src/components/common/UploadAvatarImage.vue
+++ b/admin/src/components/common/UploadAvatarImage.vue
@@ -31,7 +31,7 @@
   data() {
     return {
       loading: null,
-      uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/web/public/uploadLocal'
+      uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/web/public/upload'
     }
   },
 
diff --git a/admin/src/layouts/TableLayout.vue b/admin/src/layouts/TableLayout.vue
index e93908b..650bfea 100644
--- a/admin/src/layouts/TableLayout.vue
+++ b/admin/src/layouts/TableLayout.vue
@@ -198,4 +198,7 @@
 .bluestate{
   color: #2080f7;
 }
+.yellowstate{
+  color: #fc9d20;
+}
 </style>
diff --git a/admin/src/views/business/categoryCar.vue b/admin/src/views/business/categoryCar.vue
index 7e9c84e..ec09f91 100644
--- a/admin/src/views/business/categoryCar.vue
+++ b/admin/src/views/business/categoryCar.vue
@@ -13,7 +13,7 @@
     <!-- 琛ㄦ牸鍜屽垎椤� -->
     <template v-slot:table-wrap>
       <ul class="toolbar" v-permissions="['business:category:create', 'business:category:delete']">
-        <li><el-button type="primary" @click="$refs.operaCategoryWindow.open('鏂板缓鍝佺閰嶇疆',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:category:create']">鏂板缓</el-button></li>
+        <li><el-button type="primary" @click="$refs.operaCategoryWindow.open('鏂板缓璐ц繍閰嶇疆',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:category:create']">鏂板缓</el-button></li>
         <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">鍒犻櫎</el-button></li>
       </ul>
       <el-table
@@ -24,6 +24,13 @@
         @selection-change="handleSelectionChange"
       >
         <el-table-column type="selection" :selectable="isChangeSelected" width="55"></el-table-column>
+        <el-table-column  prop="icon" label="鍥炬爣" min-width="100px">
+          <template slot-scope="{row}">
+            <el-image v-if="row.iconFull" style="width: 50px; height: 50px; margin-right: 10px" :src="row.iconFull"
+                      :preview-src-list="[row.iconFull]">
+            </el-image>
+          </template>
+        </el-table-column>
         <el-table-column prop="name" label="鍗曚綅鍚嶇О" min-width="100px"></el-table-column>
         <el-table-column  prop="isFixed" label="鏄惁鍥哄畾杞﹁締" min-width="100px">
           <template slot-scope="{row}">
@@ -31,13 +38,13 @@
             <span v-else >鍚�</span>
           </template>
         </el-table-column>
-        <el-table-column  prop="detail" label="鍙�夎鏍�" min-width="100px">
+        <el-table-column  prop="detail" label="鍙�夎鏍�" min-width="200px">
           <template slot-scope="{row}">
               <div v-if="row.detailList && row.detailList.length">
-                <div v-for="item in row.detailList">
+                <span v-for="(item,index) in row.detailList">
                   {{item || ''}}
-                  <span v-if="item.index < row.detailList.length" style="margin: 10px">|</span>
-                </div>
+                  <span v-if="index < row.detailList.length-1" style="margin: 5px">|</span>
+                </span>
               </div>
           </template>
         </el-table-column>
@@ -58,8 +65,8 @@
           fixed="right"
         >
           <template slot-scope="{row}">
-            <el-button type="text" v-if="row.isFixed != 1"  @click="$refs.operaCategoryWindow.open('缂栬緫鏂板缓鍝佺閰嶇疆', row,searchForm.type)" icon="el-icon-edit" v-permissions="['business:category:update']">缂栬緫</el-button>
-            <el-button type="text" v-if="row.isFixed != 1"  @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">鍒犻櫎</el-button>
+            <el-button type="text"   @click="$refs.operaCategoryWindow.open('缂栬緫鏂板缓璐ц繍閰嶇疆', row,searchForm.type)" icon="el-icon-edit" v-permissions="['business:category:update']">缂栬緫</el-button>
+            <el-button type="text"   @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">鍒犻櫎</el-button>
           </template>
         </el-table-column>
       </el-table>
@@ -104,9 +111,9 @@
   },
   methods: {
     isChangeSelected(row,index){
-      if(row.isFixed ==1) {
-        return false
-      }
+      // if(row.isFixed ==1) {
+      //   return false
+      // }
       return true
     },
     changeStatus (e, row) {
diff --git a/admin/src/views/business/categoryCb.vue b/admin/src/views/business/categoryCb.vue
new file mode 100644
index 0000000..38054d1
--- /dev/null
+++ b/admin/src/views/business/categoryCb.vue
@@ -0,0 +1,122 @@
+<template>
+  <TableLayout :permissions="['business:category: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:category:create', 'business:category:delete']">
+        <li><el-button type="primary" @click="$refs.operaCategoryWindow.open('鏂板缓椁愭爣閰嶇疆',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:category:create']">鏂板缓</el-button></li>
+        <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">鍒犻櫎</el-button></li>
+      </ul>
+      <el-table
+          :height="tableHeightNew"
+        v-loading="isWorking.search"
+        :data="tableData.list"
+        stripe
+        @selection-change="handleSelectionChange"
+      >
+        <el-table-column type="selection" :selectable="isChangeSelected" width="55"></el-table-column>
+        <el-table-column prop="name" label="鐢ㄩ鏃堕棿" min-width="100px"></el-table-column>
+        <el-table-column  prop="detail" label="椁愭爣" min-width="200px">
+          <template slot-scope="{row}">
+              <div v-if="row.detailList && row.detailList.length">
+                <span v-for="(item,index) in row.detailList">
+                  {{item || 0}}鍏�
+                  <span v-if="index < row.detailList.length-1" style="margin: 5px">|</span>
+                </span>
+              </div>
+          </template>
+        </el-table-column>
+        <el-table-column label="鐘舵��">
+          <template slot-scope="{row}">
+            <el-switch :disabled="row.isFixed ==1" @change="changeStatus($event, row)" v-model="row.status" active-color="#13ce66"
+            inactive-color="#ff4949" :active-value="0" :inactive-value="1">
+            </el-switch>
+          </template>
+        </el-table-column>
+        <el-table-column prop="sortnum" label="鎺掑簭鐮�" min-width="100px"></el-table-column>
+        <el-table-column prop="updateUserName" label="鎿嶄綔浜�" min-width="100px"></el-table-column>
+        <el-table-column prop="updateTime" label="鏈�杩戞搷浣滄椂闂�" min-width="150px"></el-table-column>
+        <el-table-column
+          v-if="containPermissions(['business:category:update', 'business:category:delete'])"
+          label="鎿嶄綔"
+          min-width="120"
+          fixed="right"
+        >
+          <template slot-scope="{row}">
+            <el-button type="text"   @click="$refs.operaCategoryWindow.open('缂栬緫椁愭爣閰嶇疆', row,searchForm.type)" icon="el-icon-edit" v-permissions="['business:category:update']">缂栬緫</el-button>
+            <el-button type="text"   @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">鍒犻櫎</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <pagination
+        @size-change="handleSizeChange"
+        @current-change="handlePageChange"
+        :pagination="tableData.pagination"
+      >
+      </pagination>
+    </template>
+    <!-- 鏂板缓/淇敼 -->
+    <OperaCategoryWindow ref="operaCategoryWindow" @success="handlePageChange"/>
+  </TableLayout>
+</template>
+
+<script>
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import OperaCategoryWindow from '@/components/business/OperaCategoryWindow'
+export default {
+  name: 'Category',
+  extends: BaseTable,
+  components: { TableLayout, Pagination, OperaCategoryWindow },
+  data () {
+    return {
+      // 鎼滅储
+      searchForm: {
+        name: '',
+        type: 2
+      }
+    }
+  },
+  created () {
+    this.config({
+      module: '鍒嗙被淇℃伅琛�',
+      api: '/business/category',
+      'field.id': 'id',
+      'field.main': 'id'
+    })
+    this.search()
+  },
+  methods: {
+    isChangeSelected(row,index){
+      // if(row.isFixed ==1) {
+      //   return false
+      // }
+      return true
+    },
+    changeStatus (e, row) {
+      this.working = true
+      this.api.updateStatus({ id: row.id, status: e })
+        .then(res => {
+          this.$tip.apiSuccess(res || '鎿嶄綔鎴愬姛')
+          this.search()
+        })
+        .catch(e => {
+          this.$tip.apiFailed(e)
+        })
+        .finally(() => {
+          this.working = false
+        })
+    }
+  }
+}
+</script>
diff --git a/admin/src/views/business/categoryFee.vue b/admin/src/views/business/categoryFee.vue
new file mode 100644
index 0000000..9817526
--- /dev/null
+++ b/admin/src/views/business/categoryFee.vue
@@ -0,0 +1,112 @@
+<template>
+  <TableLayout :permissions="['business:category:query']">
+    <template v-slot:table-wrap>
+      <ul class="toolbar" v-permissions="['business:category:create', 'business:category:delete']">
+        <li><el-button type="primary" @click="$refs.operaCategoryWindow.open('鏂板缓椁愭爣閰嶇疆',null,searchForm.type)" icon="el-icon-plus" v-permissions="['business:category:create']">鏂板缓</el-button></li>
+        <li><el-button @click="deleteByIdInBatch" icon="el-icon-delete" v-permissions="['business:category:delete']">鍒犻櫎</el-button></li>
+      </ul>
+      <el-table
+          :height="tableHeightNew"
+        v-loading="isWorking.search"
+        :data="tableData.list"
+        stripe
+        @selection-change="handleSelectionChange"
+      >
+        <el-table-column type="selection" :selectable="isChangeSelected" width="55"></el-table-column>
+        <el-table-column prop="name" label="宸ュ崟绫诲瀷" min-width="100px">
+          <template slot-scope="{row}">
+            <span v-if="row.name=='0'">鐢ㄥ伐鍗�</span>
+            <span v-if="row.name=='1'">璐ц繍鍗�</span>
+            <span v-if="row.name=='2'">璁㈤鍗�</span>
+          </template>
+        </el-table-column>
+        <el-table-column prop="detail" label="鎵嬬画璐癸紙%锛�" min-width="100px">
+          <template slot-scope="{row}">
+            <span class="yellowstate">{{row.detail||0}}%</span>
+          </template>
+        </el-table-column>
+        <el-table-column label="鐘舵��">
+          <template slot-scope="{row}">
+            <el-switch :disabled="row.isFixed ==1" @change="changeStatus($event, row)" v-model="row.status" active-color="#13ce66"
+            inactive-color="#ff4949" :active-value="0" :inactive-value="1">
+            </el-switch>
+          </template>
+        </el-table-column>
+        <el-table-column prop="sortnum" label="鎺掑簭鐮�" min-width="100px"></el-table-column>
+        <el-table-column prop="updateUserName" label="鎿嶄綔浜�" min-width="100px"></el-table-column>
+        <el-table-column prop="updateTime" label="鏈�杩戞搷浣滄椂闂�" min-width="150px"></el-table-column>
+        <el-table-column
+          v-if="containPermissions(['business:category:update', 'business:category:delete'])"
+          label="鎿嶄綔"
+          min-width="120"
+          fixed="right"
+        >
+          <template slot-scope="{row}">
+            <el-button type="text"   @click="$refs.operaCategoryWindow.open('缂栬緫椁愭爣閰嶇疆', row,searchForm.type)" icon="el-icon-edit" v-permissions="['business:category:update']">缂栬緫</el-button>
+            <el-button type="text"   @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:category:delete']">鍒犻櫎</el-button>
+          </template>
+        </el-table-column>
+      </el-table>
+      <pagination
+        @size-change="handleSizeChange"
+        @current-change="handlePageChange"
+        :pagination="tableData.pagination"
+      >
+      </pagination>
+    </template>
+    <!-- 鏂板缓/淇敼 -->
+    <OperaCategoryWindow ref="operaCategoryWindow" @success="handlePageChange"/>
+  </TableLayout>
+</template>
+
+<script>
+import BaseTable from '@/components/base/BaseTable'
+import TableLayout from '@/layouts/TableLayout'
+import Pagination from '@/components/common/Pagination'
+import OperaCategoryWindow from '@/components/business/OperaCategoryWindow'
+export default {
+  name: 'Category',
+  extends: BaseTable,
+  components: { TableLayout, Pagination, OperaCategoryWindow },
+  data () {
+    return {
+      // 鎼滅储
+      searchForm: {
+        name: '',
+        type: 3
+      }
+    }
+  },
+  created () {
+    this.config({
+      module: '鍒嗙被淇℃伅琛�',
+      api: '/business/category',
+      'field.id': 'id',
+      'field.main': 'id'
+    })
+    this.search()
+  },
+  methods: {
+    isChangeSelected(row,index){
+      // if(row.isFixed ==1) {
+      //   return false
+      // }
+      return true
+    },
+    changeStatus (e, row) {
+      this.working = true
+      this.api.updateStatus({ id: row.id, status: e })
+        .then(res => {
+          this.$tip.apiSuccess(res || '鎿嶄綔鎴愬姛')
+          this.search()
+        })
+        .catch(e => {
+          this.$tip.apiFailed(e)
+        })
+        .finally(() => {
+          this.working = false
+        })
+    }
+  }
+}
+</script>
diff --git a/admin/src/views/business/orderSet.vue b/admin/src/views/business/orderSet.vue
new file mode 100644
index 0000000..7f04bf9
--- /dev/null
+++ b/admin/src/views/business/orderSet.vue
@@ -0,0 +1,186 @@
+<template>
+  <div class="box" style="max-height:calc(100% - 60px);margin-bottom:50px;overflow-y: auto" >
+    <el-form :model="form" ref="form" label-width="140px">
+      <div style="margin: 0px 0 50px 0">
+        <span style="font-size: 15px; font-weight: bold">銆�1銆戝彂鍗曟柟鍙栨秷璁㈠崟閰嶇疆</span>
+      </div>
+      <el-form-item label="" label-width="10px"  prop="address">
+        鎺ュ崟鍚庯紝璺濈浠诲姟寮�濮嬪墠
+        <el-input
+            style="width: 100px;margin: 0px 20px"
+            type="number"
+            v-model="form.address"
+            placeholder="璇疯緭鍏�"
+            v-trim
+        />灏忔椂锛屼笉鍙彇娑�
+      </el-form-item>
+      <el-form-item label="" label-width="10px" prop="address">
+      姣忔棩鍙富鍔ㄥ彇娑�
+        <el-input
+            style="width: 100px;margin: 0px 20px"
+            type="number"
+            v-model="form.address"
+            placeholder="璇疯緭鍏�"
+            v-trim
+        />娆�<span style="font-size: 12px;color: #8c939d">锛堟敞锛氳鍗曟帴鍗曞悗鍙彇娑堟椂闂磋寖鍥村唴锛�</span>
+      </el-form-item>
+      <div style="margin:20px 0 50px 0">
+        <span style="font-size: 15px; font-weight: bold">銆�2銆戞帴鍗曟柟鍙栨秷璁㈠崟閰嶇疆锛�</span>
+      </div>
+      <el-form-item label="" label-width="10px"  prop="address">
+        鎺ュ崟鍚庯紝璺濈浠诲姟寮�濮嬪墠
+        <el-input
+            style="width: 100px;margin: 0px 20px"
+            type="number"
+            v-model="form.address"
+            placeholder="璇疯緭鍏�"
+            v-trim
+        />灏忔椂锛屼笉鍙彇娑�
+      </el-form-item>
+      <el-form-item label="" label-width="10px" prop="address">
+        姣忔棩鍙富鍔ㄥ彇娑�
+        <el-input
+            style="width: 100px;margin: 0px 20px"
+            type="number"
+            v-model="form.address"
+            placeholder="璇疯緭鍏�"
+            v-trim
+        />娆�<span style="font-size: 12px;color: #8c939d">锛堟敞锛氳鍗曟帴鍗曞悗鍙彇娑堟椂闂磋寖鍥村唴锛�</span>
+        <div style="margin:20px 0 50px 0">
+          <span style="font-size: 15px; font-weight: bold">銆�3銆戣嚜鍔ㄦ淳鍗曪細</span>
+        </div>
+        <el-form-item label="" label-width="10px"  prop="address">
+          <el-input
+              style="width: 100px;margin: 0px 20px"
+              type="number"
+              v-model="form.address"
+              placeholder="璇疯緭鍏�"
+              v-trim
+          />鍒嗛挓鏃犱汉鎺ュ崟锛岀郴缁熻嚜鍔ㄦ淳鍗�
+        </el-form-item>
+        <div style="margin:20px 0 50px 0">
+          <span style="font-size: 15px; font-weight: bold">銆�4銆戞淳鍗曡寖鍥达細</span>
+        </div>
+        <el-form-item label="" label-width="10px"  prop="address">
+          璺濈鐢ㄥ伐鍦扮偣<el-input
+              style="width: 100px;margin: 0px 20px"
+              type="number"
+              v-model="form.address"
+              placeholder="璇疯緭鍏�"
+              v-trim
+          />km鑼冨洿鍐咃紝杩涜娲惧崟
+        </el-form-item>
+        <div style="margin:20px 0 50px 0">
+          <span style="font-size: 15px; font-weight: bold">銆�5銆戣鍗曚慨锛�</span>
+        </div>
+        <el-form-item label="" label-width="10px"  prop="address">
+          璁㈠崟淇敼鍚庯紝鎺ュ崟鏂�<el-input
+              style="width: 100px;margin: 0px 20px"
+              type="number"
+              v-model="form.address"
+              placeholder="璇疯緭鍏�"
+              v-trim
+          />鍒嗛挓鍚庢湭纭锛岀郴缁熻嚜鍔ㄥ悓鎰�
+        </el-form-item>
+        <el-form-item style="margin-top: 100px;width: 100%;text-align: center">
+          <el-button type="primary" style="width: 300px"  :loading="working" @click="submit">淇濆瓨閰嶇疆椤�</el-button>
+        </el-form-item>
+      </el-form>
+  </div>
+</template>
+
+<script>
+import { getPlatformConfig, updPlatformConfig } from '@/api/system/dictData'
+export default {
+  name: '',
+  components: {  },
+  data () {
+    return {
+      uploadData: {
+        folder: ''
+      },
+      isUploading: false,
+      working: false,
+      form: {
+        address: null,
+        footImgUrl: 0,
+        footFullImgUrl: 0,
+        footImgUrl2: 0,
+        footFullImgUrl2: 0,
+        footWords: 0,
+        linkMobile: 0,
+        linkPhone: 0,
+        serverTime: '',
+        qyemail: ''
+      }
+    }
+  },
+
+  created () {
+    this.getData()
+  },
+
+  methods: {
+    getData () {
+      getPlatformConfig({})
+        .then(res => {
+          if (res) {
+            this.form.address = res.address
+            this.form.footImgUrl = res.footImgUrl
+            this.form.footFullImgUrl = res.footFullImgUrl
+            this.form.footImgUrl2 = res.footImgUrl2
+            this.form.footFullImgUrl2 = res.footFullImgUrl2
+            this.form.footWords = res.footWords
+            this.form.linkMobile = res.linkMobile
+            this.form.linkPhone = res.linkPhone
+            this.form.qyemail = res.qyemail
+            this.form.serverTime = res.serverTime
+            this.form.solveScheme = res.solveScheme || [{ name: '', address: '' }]
+            this.form.wisdomSystem = res.wisdomSystem || [{ name: '', address: '' }]
+            this.form.honors = res.honors || [{ name: '', address: '' }]
+            this.form.yqlinks = res.yqlinks || [{ name: '', address: '' }]
+          }
+        })
+    },
+    submit () {
+      console.log(this.form)
+      this.$refs.form.validate((valid) => {
+        if (!valid) {
+          return
+        }
+        // 璋冪敤鏂板缓鎺ュ彛
+        this.isWorking = true
+        updPlatformConfig(this.form).then(res => {
+          this.$message.success('淇濆瓨鎴愬姛')
+          this.getData()
+        })
+          .catch(e => {
+            this.$tip.apiFailed(e)
+          })
+          .finally(() => {
+            this.isWorking = false
+          })
+      })
+    }
+  }
+}
+</script>
+<style lang="scss" scoped>
+.el-container /deep/  .el-main{
+  width: 100%;
+  overflow-y: auto  !important ;
+  height: calc(100% - 94px);
+}
+/deep/ .el-main{
+  width: 100%;
+  //height: 100%;
+  overflow-y: auto  !important ;
+  height: calc(100% - 94px);
+}
+.box {
+  width: 100%;
+  padding: 30px;
+  box-sizing: border-box;
+  background: #ffffff;
+}
+</style>
diff --git a/admin/src/views/business/receiveWeight.vue b/admin/src/views/business/receiveWeight.vue
index 64ea7dd..5168e36 100644
--- a/admin/src/views/business/receiveWeight.vue
+++ b/admin/src/views/business/receiveWeight.vue
@@ -14,19 +14,23 @@
         @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="deleted" label="鏄惁宸插垹闄� 0鏈垹闄� 1宸插垹闄�" min-width="100px"></el-table-column>
-        <el-table-column prop="status" label="鐘舵��:0=鍚敤锛�1=绂佺敤锛�" min-width="100px"></el-table-column>
-        <el-table-column prop="createUser" label="鍒涘缓浜虹紪鐮�" min-width="100px"></el-table-column>
-        <el-table-column prop="createTime" label="鍒涘缓鏃堕棿" min-width="100px"></el-table-column>
-        <el-table-column prop="updateUser" label="鏇存柊浜虹紪鐮�" min-width="100px"></el-table-column>
-        <el-table-column prop="updateTime" label="鏇存柊鏃堕棿" min-width="100px"></el-table-column>
-        <el-table-column prop="remark" label="澶囨敞" min-width="100px"></el-table-column>
-        <el-table-column prop="receiveMax" label="鏈�澶ф帴鍗曢噺" min-width="100px"></el-table-column>
-        <el-table-column prop="receiveMin" label="鏈�灏忔帴鍗曢噺" min-width="100px"></el-table-column>
+        <el-table-column prop="receiveMax" label="鏈�澶ф帴鍗曢噺" min-width="100px">
+          <template slot-scope="{row}">
+            {{row.receiveMin||0}}{{' - '}}{{row.receiveMax||0}}
+          </template>
+        </el-table-column>
+<!--        <el-table-column label="鐘舵��">
+          <template slot-scope="{row}">
+            <el-switch :disabled="row.isFixed ==1" @change="changeStatus($event, row)" v-model="row.status" active-color="#13ce66"
+                       inactive-color="#ff4949" :active-value="0" :inactive-value="1">
+            </el-switch>
+          </template>
+        </el-table-column>-->
         <el-table-column prop="level" label="浼樺厛绾�" min-width="100px"></el-table-column>
         <el-table-column prop="delayTime" label="璁㈠崟鏌ョ湅寤惰繜鏃堕棿" min-width="100px"></el-table-column>
-        <el-table-column prop="sortnum" label="鎺掑簭鐮�" min-width="100px"></el-table-column>
+        <el-table-column prop="updateUserName" label="鎿嶄綔浜�" min-width="100px"></el-table-column>
+        <el-table-column prop="updateTime" label="鏈�杩戞搷浣滄椂闂�" min-width="150px"></el-table-column>
+        <el-table-column prop="remark" label="澶囨敞" min-width="100px"></el-table-column>
         <el-table-column
           v-if="containPermissions(['business:receiveweight:update', 'business:receiveweight:delete'])"
           label="鎿嶄綔"
diff --git a/server/services/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java b/server/services/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java
index 5af30f1..642bff7 100644
--- a/server/services/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java
+++ b/server/services/src/main/java/com/doumee/service/business/impl/CategoryServiceImpl.java
@@ -63,7 +63,8 @@
         category.setCreateUser(loginUserInfo.getId());
         category.setUpdateTime(new Date());
         category.setUpdateUser(loginUserInfo.getId());
-        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(category.getDetailList())){
+        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(category.getDetailList())
+                && !Constants.equalsInteger(category.getType(),Constants.THREE)){
             category.setDetail(category.getDetailList().toJSONString());
         }
         if(!Constants.equalsInteger(category.getType(),Constants.ONE)){
@@ -110,7 +111,8 @@
         category.setUpdateTime(new Date());
         category.setIsFixed(null);
         category.setUpdateUser(loginUserInfo.getId());
-        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(category.getDetailList())){
+        if(com.github.xiaoymin.knife4j.core.util.CollectionUtils.isNotEmpty(category.getDetailList())
+                && !Constants.equalsInteger(category.getType(),Constants.THREE)){
             category.setDetail(category.getDetailList().toJSONString());
         }
         categoryMapper.updateById(category);

--
Gitblit v1.9.3