From 74d80f67e70666dbd38b1f0b5e4c0c7772fa5b8c Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期一, 18 九月 2023 15:03:50 +0800
Subject: [PATCH] 休bug

---
 platform/src/views/system/user.vue                                                         |    8 
 server/service/src/main/java/com/doumee/service/business/impl/BaseCategoryServiceImpl.java |   11 +
 server/service/src/main/java/com/doumee/service/business/impl/BaseDataServiceImpl.java     |   33 +++++
 server/platform/src/main/java/com/doumee/api/business/BaseGoodsController.java             |   31 ++--
 server/service/src/main/java/com/doumee/service/business/impl/BaseGoodsServiceImpl.java    |   23 ++-
 server/service/src/main/java/com/doumee/service/business/BaseDataService.java              |    7 +
 server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java      |   17 +-
 server/service/src/main/java/com/doumee/dao/business/model/dto/CompanyUserDTO.java         |    6 +
 platform/src/api/business/goods.js                                                         |    7 
 server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java  |   46 +++++--
 platform/src/views/business/companyUser.vue                                                |    8 +
 server/service/src/main/java/com/doumee/service/business/BaseGoodsService.java             |    2 
 server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java        |   91 ++------------
 platform/src/api/system/common.js                                                          |    4 
 server/service/src/main/java/com/doumee/dao/business/model/BaseGoods.java                  |    4 
 server/service/src/main/java/com/doumee/service/business/impl/BrandServiceImpl.java        |   12 +
 server/service/src/main/java/com/doumee/core/utils/aliyun/ALiYunUtil.java                  |    3 
 platform/src/views/business/goods.vue                                                      |    8 
 18 files changed, 176 insertions(+), 145 deletions(-)

diff --git a/platform/src/api/business/goods.js b/platform/src/api/business/goods.js
index 50f61c8..8477252 100644
--- a/platform/src/api/business/goods.js
+++ b/platform/src/api/business/goods.js
@@ -48,8 +48,11 @@
 }
 
 // 淇敼鐘舵��
-export function updateDisableById (data) {
-  return request.post('/business/baseGoods/updateDisableById', data)
+export function updateStatusById (data) {
+  return request.post('/business/baseGoods/updateStatusById', data)
+}
+export function updateStatusById (data) {
+  return request.post('/business/baseGoods/updateStatusById', data)
 }
 
 // 鍒楄〃 - 鍟嗗搧閫夋嫨
diff --git a/platform/src/api/system/common.js b/platform/src/api/system/common.js
index 938f726..a7966ee 100644
--- a/platform/src/api/system/common.js
+++ b/platform/src/api/system/common.js
@@ -36,6 +36,10 @@
 export function category (data) {
   return request.post('/business/category/list', data)
 }
+// 绫诲埆鍒楄〃鏌ヨ
+export function baseCategory (data) {
+  return request.post('/business/baseCategory/findList', data)
+}
 
 // 瀵煎叆妯℃澘
 export function importExcel (data) {
diff --git a/platform/src/views/business/companyUser.vue b/platform/src/views/business/companyUser.vue
index 49d14b6..a0b541d 100644
--- a/platform/src/views/business/companyUser.vue
+++ b/platform/src/views/business/companyUser.vue
@@ -31,7 +31,13 @@
         <el-table-column prop="username" label="鐧诲綍璐﹀彿" min-width="100px" align="center"></el-table-column>
         <el-table-column prop="realname" label="濮撳悕" min-width="100px" align="center"></el-table-column>
         <el-table-column prop="mobile" label="鎵嬫満鍙�" min-width="100px" align="center"></el-table-column>
-        <el-table-column prop="roleName" label="瑙掕壊" min-width="100px" align="center"></el-table-column>
+        <el-table-column prop="roleName" label="瑙掕壊" min-width="100px" align="center">
+          <template slot-scope="{row}">
+            <ul>
+              <li v-for="role in row.roles" :key="role.id">{{role.name}}</li>
+            </ul>
+          </template>
+        </el-table-column>
         <el-table-column prop="status" label="鐘舵��" min-width="100px" align="center">
           <template slot-scope="{row}">
             <!-- 0鍚敤 1绂佺敤 -->
diff --git a/platform/src/views/business/goods.vue b/platform/src/views/business/goods.vue
index 6a97d57..64023b5 100644
--- a/platform/src/views/business/goods.vue
+++ b/platform/src/views/business/goods.vue
@@ -104,8 +104,8 @@
 import Pagination from '@/components/common/Pagination'
 import OperaGoodsWindow from '@/components/business/OperaGoodsWindow'
 import selectProduct from '@/components/business/selectProduct'
-import { brand, category, importExcel } from '@/api/system/common.js'
-import { updateDisableById, queryById, exportDoc, batchUpdateDisableById } from '@/api/business/goods.js'
+import { brand, baseCategory, importExcel } from '@/api/system/common.js'
+import { updateStatusById, queryById, exportDoc, batchUpdateDisableById } from '@/api/business/goods.js'
 export default {
   name: 'Goods',
   extends: BaseTable,
@@ -237,13 +237,13 @@
       return nums;
     },
     getbrand() {
-      brand({})
+      brand({type:1})
         .then(res => {
           this.brandList = res
         })
     },
     getcategory() {
-      category({})
+      baseCategory({})
         .then(res => {
           this.categoryList = res
         })
diff --git a/platform/src/views/system/user.vue b/platform/src/views/system/user.vue
index 5e4d7f5..7180d8d 100644
--- a/platform/src/views/system/user.vue
+++ b/platform/src/views/system/user.vue
@@ -65,10 +65,10 @@
         <el-table-column prop="birthday" label="鐢熸棩" sortable="custom" sort-by="BIRTHDAY" min-width="100px"></el-table-column>
         <el-table-column prop="roles" label="瑙掕壊" min-width="160px" class-name="table-column-strings">
           <template slot-scope="{row}">
-            <ul>
-              <li v-for="role in row.roles" :key="role.id">{{role.name}}</li>
-            </ul>
-          </template>
+          <ul>
+            <li v-for="role in row.roles" :key="role.id">{{role.name}}</li>
+          </ul>
+        </template>
         </el-table-column>
         <el-table-column prop="createUser" label="鍒涘缓浜�" min-width="100px">
           <template slot-scope="{row}">{{row.createUserInfo == null ? '' : row.createUserInfo.username}}</template>
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 cc6b9c8..f2c716c 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
@@ -93,29 +93,28 @@
     /**
      * 涓婚敭涓婁笅鏋�
      *
-     * @param idList 瀹炰綋瀵硅薄
      */
     @ApiOperation("鏍规嵁ID鏌ヨ")
-    @PostMapping("/{status}")
+    @PostMapping("/updateStatus")
     @RequiresPermissions("business:basegoods:query")
-    public ApiResponse updateStatusByIds(@RequestBody List<Integer> idList, @PathVariable Integer status){
-        baseGoodsService.updateStatusByIds(idList,status);
+    public ApiResponse updateStatusByIds(@RequestBody   BaseGoods param ){
+        baseGoodsService.updateStatusByIds(param);
         return ApiResponse.success(null);
     }
 
 
-    /**
-     * 涓婚敭涓婁笅鏋�
-     *
-     * @param id 瀹炰綋瀵硅薄
-     */
-    @ApiOperation("鏍规嵁ID鏌ヨ")
-    @GetMapping("/updateStatusById")
-    @RequiresPermissions("business:basegoods:query")
-    public ApiResponse updateStatusById(@RequestParam Integer id,@RequestParam Integer status){
-        baseGoodsService.updateStatusById(id,status);
-        return ApiResponse.success(null);
-    }
+//    /**
+//     * 涓婚敭涓婁笅鏋�
+//     *
+//     * @param id 瀹炰綋瀵硅薄
+//     */
+//    @ApiOperation("涓婃灦 銆佷笅鏋�")
+//    @GetMapping("/updateStatusById")
+//    @RequiresPermissions("business:basegoods:update")
+//    public ApiResponse updateStatusById(@RequestParam Integer id,@RequestParam Integer status){
+//        baseGoodsService.updateStatusById(id,status);
+//        return ApiResponse.success(null);
+//    }
 
     /**
      * 涓婚敭鏌ヨ
diff --git a/server/service/src/main/java/com/doumee/core/utils/aliyun/ALiYunUtil.java b/server/service/src/main/java/com/doumee/core/utils/aliyun/ALiYunUtil.java
index edd4281..dfd461c 100644
--- a/server/service/src/main/java/com/doumee/core/utils/aliyun/ALiYunUtil.java
+++ b/server/service/src/main/java/com/doumee/core/utils/aliyun/ALiYunUtil.java
@@ -160,7 +160,7 @@
      * @throws FileNotFoundException
      */
 
-    public void uploadFile(String bucketName, String key, File file, String mime)
+    public boolean uploadFile(String bucketName, String key, File file, String mime)
             throws OSSException, ClientException, FileNotFoundException {
         // 鍒ゆ柇鏄惁瀛樺湪锛屼笉瀛樺湪鍒涘缓
         isExistBucket(bucketName);
@@ -174,6 +174,7 @@
 
         InputStream input = new FileInputStream(file);
         client.putObject(bucketName, key, input, objectMeta);
+        return true;
 
     }
 
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 eef13be..97ab626 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
@@ -11,6 +11,7 @@
 import com.fasterxml.jackson.annotation.JsonFormat;
 import java.util.Date;
 import java.math.BigDecimal;
+import java.util.List;
 
 /**
  * 绱犳潗搴�-鍟嗗搧淇℃伅琛�
@@ -117,6 +118,9 @@
     @ApiModelProperty(value = "鍏ㄨ矾寰勫湴鍧�")
     @TableField(exist = false)
     private String fullImgUrl;
+    @ApiModelProperty(value = "缂栫爜闆嗗悎")
+    @TableField(exist = false)
+    private List<Integer> idList;
 
 
 }
diff --git a/server/service/src/main/java/com/doumee/dao/business/model/dto/CompanyUserDTO.java b/server/service/src/main/java/com/doumee/dao/business/model/dto/CompanyUserDTO.java
index 42b38bf..8700815 100644
--- a/server/service/src/main/java/com/doumee/dao/business/model/dto/CompanyUserDTO.java
+++ b/server/service/src/main/java/com/doumee/dao/business/model/dto/CompanyUserDTO.java
@@ -1,10 +1,12 @@
 package com.doumee.dao.business.model.dto;
 
 
+import com.doumee.dao.system.model.SystemRole;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
 import lombok.Data;
 import java.util.Date;
+import java.util.List;
 
 /**
  * @author T14
@@ -72,4 +74,8 @@
     @ApiModelProperty(value = "绫诲瀷 0骞冲彴鐢ㄦ埛 1浼佷笟鐢ㄦ埛")
     private Integer roleType;
 
+
+    @ApiModelProperty(value = "瑙掕壊")
+    private List<SystemRole> roles;
+
 }
diff --git a/server/service/src/main/java/com/doumee/service/business/BaseDataService.java b/server/service/src/main/java/com/doumee/service/business/BaseDataService.java
index ef5cce8..5517d85 100644
--- a/server/service/src/main/java/com/doumee/service/business/BaseDataService.java
+++ b/server/service/src/main/java/com/doumee/service/business/BaseDataService.java
@@ -3,6 +3,9 @@
 import com.doumee.core.model.PageData;
 import com.doumee.core.model.PageWrap;
 import com.doumee.dao.business.model.BaseData;
+import com.doumee.dao.business.model.dto.OssModel;
+
+import java.io.File;
 import java.util.List;
 
 /**
@@ -20,6 +23,10 @@
      */
     String create(BaseData baseData);
 
+    String getOssImgurl(OssModel ossModel, String folder, String img);
+    String getOssImgurl(OssModel ossModel, String folder, File f);
+    OssModel initOssModel();
+
     /**
      * 涓婚敭鍒犻櫎
      *
diff --git a/server/service/src/main/java/com/doumee/service/business/BaseGoodsService.java b/server/service/src/main/java/com/doumee/service/business/BaseGoodsService.java
index 287a867..c2b4d3d 100644
--- a/server/service/src/main/java/com/doumee/service/business/BaseGoodsService.java
+++ b/server/service/src/main/java/com/doumee/service/business/BaseGoodsService.java
@@ -59,7 +59,7 @@
      *
      * @param idList 瀹炰綋瀵硅薄
      */
-    void updateStatusByIds(List<Integer> idList,Integer status);
+    void updateStatusByIds(BaseGoods param);
 
 
     /**
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 e5ea7b9..bc7332f 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
@@ -257,13 +257,16 @@
 
     @Override
     public List<BaseCategory> findList(BaseCategory baseCategory) {
+        baseCategory.setIsdeleted(Constants.ZERO);
         QueryWrapper<BaseCategory> wrapper = new QueryWrapper<>(baseCategory);
         List<BaseCategory> list = baseCategoryMapper.selectList(wrapper);
         list.forEach(i->{
-            i.setImgfullurl(
-                systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode() +
-                            systemDictDataBiz.queryByCode(Constants.OSS,Constants.CATEGORY_IMG).getCode() + i.getImgurl()
-            );
+            if(StringUtils.isNotBlank(i.getImgurl())){
+                i.setImgfullurl(
+                        systemDictDataBiz.queryByCode(Constants.OSS,Constants.RESOURCE_PATH).getCode() +
+                                systemDictDataBiz.queryByCode(Constants.OSS,Constants.CATEGORY_IMG).getCode() + i.getImgurl()
+                );
+            }
         });
         return list;
     }
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 f637423..603ddd7 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
@@ -24,6 +24,7 @@
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.util.CollectionUtils;
 
+import java.io.File;
 import java.lang.reflect.Field;
 import java.lang.reflect.Method;
 import java.math.BigDecimal;
@@ -426,7 +427,8 @@
         return  0;
     }
 
-    private OssModel initOssModel() {
+    @Override
+    public OssModel initOssModel() {
         OssModel model = new OssModel();
         model.setUrl(systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode());
         model.setEndpoint(systemDictDataBiz.queryByCode(Constants.OSS, Constants.ENDPOINT).getCode());
@@ -604,7 +606,8 @@
         return model;
     }
 
-    private String getOssImgurl(OssModel ossModel, String folder,String img) {
+    @Override
+    public String getOssImgurl(OssModel ossModel, String folder,String img) {
         if(StringUtils.isBlank(img)){
             return null;
         }
@@ -625,4 +628,30 @@
         }
         return  null;
     }
+
+    @Override
+    public     String getOssImgurl(OssModel ossModel, String folder, File f) {
+        if(f == null || !f.isFile()){
+            return null;
+        }
+        try {
+            String img = f.getPath();
+            String nowDate = DateUtil.getNowShortDate();// 褰撳墠鏃堕棿锛堝勾鏈堟棩锛�
+            String nfix  = img.lastIndexOf(".")>0?img.substring(img.lastIndexOf(".")):null;
+            nfix = StringUtils.defaultString(nfix,".jpg");
+            String fileName = UUID.randomUUID() + nfix;
+            String tempFileName = nowDate + "/" + fileName;
+            String key =folder+ tempFileName;// 鏂囦欢鍚�
+
+            ALiYunUtil obs = new ALiYunUtil(ossModel.getEndpoint(), ossModel.getAccessId(), ossModel.getAccessKey());
+            if (obs.uploadFile(ossModel.getBucket(), key,f,null)) {
+                    return  tempFileName;
+            }
+        }catch (Exception e){
+
+        }
+        return  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 726f894..b6e046d 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
@@ -217,29 +217,36 @@
 
     @Transactional(rollbackFor = {Exception.class,BusinessException.class})
     @Override
-    public void updateStatusByIds(List<Integer> idList, Integer status) {
-        if (CollectionUtils.isEmpty(idList)){
-            throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鍟嗗搧鐘舵�佷笉鑳戒负绌�");
+    public void updateStatusByIds(BaseGoods param) {
+        if (CollectionUtils.isEmpty(param.getIdList())
+                || param.getStatus() == null
+               || !(Constants.equalsInteger(param.getStatus(), Constants.ONE)||Constants.equalsInteger(param.getStatus()  ,Constants.ZERO))){
+            throw new BusinessException(ResponseStatus.BAD_REQUEST);
         }
-        idList.forEach(s->updateStatusById(s,status));
-
+        param.getIdList().forEach(s->updateStatusById(s,param.getStatus()));
     }
 
     @Transactional(rollbackFor = {Exception.class,BusinessException.class})
     @Override
     public void updateStatusById(Integer id, Integer status) {
-
+        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
         if (Objects.isNull(status)){
             throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"鍟嗗搧鐘舵�佷笉鑳戒负绌�");
         }
         if (Constants.equalsInteger(status,Constants.ZERO)){
+            //濡傛灉鍚敤
             BaseGoods baseGoods = new BaseGoods();
             baseGoods.setId(id);
+            baseGoods.setEditDate(new Date());
+            baseGoods.setEditor(user.getId());
             baseGoods.setStatus(status);
             baseGoodsMapper.updateById(baseGoods);
         }else if (Constants.equalsInteger(status,Constants.ONE)){
+            //濡傛灉绂佺敤
             BaseGoods baseGoods = new BaseGoods();
             baseGoods.setId(id);
+            baseGoods.setEditDate(new Date());
+            baseGoods.setEditor(user.getId());
             baseGoods.setStatus(status);
             baseGoodsMapper.updateById(baseGoods);
 
@@ -247,7 +254,9 @@
             goodsUpdate.lambda()
                         .eq(Goods::getType,Constants.ONE)
                         .eq(Goods::getGoodsId,id)
-                        .set(Goods::getStatus,Constants.ONE);
+                        .set(Goods::getStatus,Constants.ONE)
+                        .set(Goods::getEditor,user.getId())
+                        .set(Goods::getEditDate,new Date());
             goodsMapper.update(null,goodsUpdate);
         }
     }
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/BrandServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/BrandServiceImpl.java
index be0fe71..c71ad09 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/BrandServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/BrandServiceImpl.java
@@ -152,20 +152,22 @@
         LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
         QueryWrapper<Brand> wrapper = new QueryWrapper<>(brand);
         wrapper.lambda().eq(Brand::getIsdeleted,Constants.ZERO);
-        wrapper.lambda().eq(Brand::getStatus,Constants.ZERO);
+//        wrapper.lambda().eq(Brand::getStatus,Constants.ZERO);
         wrapper.lambda().orderByAsc(Brand::getSortnum);
         // 绫诲瀷 0浼佷笟 1骞冲彴
-        if (Objects.isNull(user.getCompanyId())) {
+        if (Constants.equalsInteger(user.getType(), Constants.UserType.SYSTEM.getKey())) {
             wrapper.lambda().eq(Brand::getType,Constants.ONE);
         }else {
-            wrapper.lambda().eq(Brand::getType,brand.getCompanyId())
-                    .or().eq(Brand::getType,Constants.ZERO);
+            wrapper.lambda().and(wapper ->{wapper.eq(Brand::getType,brand.getCompanyId())
+                    .or().eq(Brand::getType,Constants.ZERO);} );
         }
         List<Brand> list = brandMapper.selectList(wrapper);
         String prefixUrl = systemDictDataBiz.queryByCode(Constants.OSS, Constants.RESOURCE_PATH).getCode()
                 + systemDictDataBiz.queryByCode(Constants.OSS, Constants.BRAND_IMG).getCode();
         for (Brand b:list) {
-            b.setImgfullurl(prefixUrl+b.getImgurl());
+            if(StringUtils.isNotBlank(b.getImgurl())){
+                b.setImgfullurl(prefixUrl+b.getImgurl());
+            }
         }
         return list;
     }
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
index 8f6815e..f1427f5 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/CompanyServiceImpl.java
@@ -5,7 +5,6 @@
 import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
-import com.doumee.biz.system.SystemDictBiz;
 import com.doumee.biz.system.SystemDictDataBiz;
 import com.doumee.core.constants.ResponseStatus;
 import com.doumee.core.exception.BusinessException;
@@ -18,15 +17,12 @@
 import com.doumee.dao.business.join.CompanyJoinMapper;
 import com.doumee.dao.business.model.Company;
 import com.doumee.dao.business.model.dto.CompanyCreatOrUpdateRequest;
-import com.doumee.dao.system.SystemDictMapper;
 import com.doumee.dao.system.SystemUserMapper;
 import com.doumee.dao.system.SystemUserRoleMapper;
-import com.doumee.dao.system.model.SystemDict;
 import com.doumee.dao.system.model.SystemDictData;
 import com.doumee.dao.system.model.SystemUser;
 import com.doumee.dao.system.model.SystemUserRole;
 import com.doumee.service.business.CompanyService;
-import com.doumee.service.system.SystemDictService;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import org.apache.commons.lang3.RandomStringUtils;
 import org.apache.commons.lang3.StringUtils;
@@ -118,7 +114,7 @@
         insert.setStatus(Constants.ZERO);
         companyMapper.insert(insert);
         //鍒涘缓浼佷笟鐢ㄦ埛
-        SystemUser companyUser = createCompanyUser(company.getManagerUserName(), insert.getId());
+        SystemUser companyUser = createCompanyUser(company, insert.getId());
         Company update = new Company();
         update.setId(insert.getId());
         update.setManagerId(companyUser.getId());
@@ -137,13 +133,13 @@
         return company.getId();
     }
 
-    private SystemUser createCompanyUser(String managerUserName,Integer companyId){
+    private SystemUser createCompanyUser(CompanyCreatOrUpdateRequest company, Integer companyId){
 
         QueryWrapper<SystemUser> query = new QueryWrapper<>();
         query.lambda()
                 .eq(SystemUser::getType,Constants.ONE)
                 .eq(SystemUser::getDeleted,Boolean.FALSE)
-                .eq(SystemUser::getUsername,managerUserName);
+                .eq(SystemUser::getUsername,company.getManagerUserName());
         Integer integer = systemUserMapper.selectCount(query);
         if (integer > Constants.ZERO){
             throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"璐﹀彿宸插瓨鍦ㄨ閲嶆柊杈撳叆璐﹀彿");
@@ -153,10 +149,12 @@
         SystemDictData dictDataPassword = systemDictDataBiz.queryByCode(Constants.SYSTEM, Constants.DEFAULT_PASSWORD);
         String salt = RandomStringUtils.randomAlphabetic(6);
         SystemUser user = new SystemUser();
-        user.setUsername(managerUserName);
+        user.setUsername(company.getManagerUserName());
         user.setPassword(Utils.Secure.encryptPassword(dictDataPassword.getCode(), salt));
         user.setSalt(salt);
         user.setCompanyId(companyId);
+        user.setMobile(company.getLinkephone());
+        user.setRealname(company.getLinkname());
         user.setType(Constants.ONE);
         user.setCreateTime(new Date());
         user.setUpdateTime(new Date());
@@ -302,7 +300,8 @@
                     .like(StringUtils.isNotBlank(pageWrap.getModel().getManagerUserName()),SystemUser::getUsername,pageWrap.getModel().getManagerUserName())
                     .eq(Objects.nonNull(pageWrap.getModel().getStatus()),Company::getStatus,pageWrap.getModel().getStatus())
                     .between((Objects.nonNull(pageWrap.getModel().getOepnValidDateStart()) && Objects.nonNull(pageWrap.getModel().getOepnValidDateEnd())),
-                            Company::getOepnValidDate,pageWrap.getModel().getOepnValidDateStart(),pageWrap.getModel().getOepnValidDateEnd());
+                            Company::getOepnValidDate,pageWrap.getModel().getOepnValidDateStart(),pageWrap.getModel().getOepnValidDateEnd())
+                .orderByDesc(Company::getCreateTime);
         return PageData.from(companyJoinMapper.selectJoinPage(page,Company.class,queryWrapper));
     }
 
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java
index e82e992..9a62f75 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/CompanyUserServiceImpl.java
@@ -13,7 +13,9 @@
 import com.doumee.dao.system.model.SystemRole;
 import com.doumee.dao.system.model.SystemUser;
 import com.doumee.dao.system.model.SystemUserRole;
+import com.doumee.dao.system.vo.SystemUserListVO;
 import com.doumee.service.business.CompanyUserService;
+import com.doumee.service.system.SystemRoleService;
 import com.github.yulichang.base.mapper.MPJJoinMapper;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import org.apache.commons.lang3.StringUtils;
@@ -32,6 +34,9 @@
     @Autowired
     private SystemUserJoinMapper systemUserJoinMapper;
 
+    @Autowired
+    private SystemRoleService systemRoleService;
+
 
     @Override
     public PageData<CompanyUserDTO> findPage(PageWrap<CompanyUserQueryDTO> pageWrap) {
@@ -41,21 +46,28 @@
         Utils.MP.blankToNull(pageWrap.getModel());
         mpjJoinMapper.selectAll(SystemUser.class)
                     .selectAs(Company::getName,CompanyUserDTO::getCompanyName)
-                    .selectAs(SystemRole::getId,CompanyUserDTO::getRoleId)
-                    .selectAs(SystemRole::getCode,CompanyUserDTO::getRoleCode)
-                    .selectAs(SystemRole::getName,CompanyUserDTO::getRoleName)
-                    .selectAs(SystemRole::getType,CompanyUserDTO::getRoleType)
-                    .leftJoin(SystemUserRole.class,SystemUserRole::getUserId,SystemUser::getId)
-                    .leftJoin(SystemRole.class,SystemRole::getId,SystemUserRole::getRoleId)
+//                    .selectAs(SystemRole::getId,CompanyUserDTO::getRoleId)
+//                    .selectAs(SystemRole::getCode,CompanyUserDTO::getRoleCode)
+//                    .selectAs(SystemRole::getName,CompanyUserDTO::getRoleName)
+//                    .selectAs(SystemRole::getType,CompanyUserDTO::getRoleType)
+//                    .leftJoin(SystemUserRole.class,SystemUserRole::getUserId,SystemUser::getId)
+//                    .leftJoin(SystemRole.class,SystemRole::getId,SystemUserRole::getRoleId)
                     .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId)
                     .eq(SystemUser::getType, pageWrap.getModel().getType())
                     .eq(Objects.nonNull(pageWrap.getModel().getStatus()),SystemUser::getStatus,pageWrap.getModel().getStatus())
                     .like(StringUtils.isNotBlank(pageWrap.getModel().getCompanyName()),Company::getName,pageWrap.getModel().getCompanyName())
-                    .like(StringUtils.isNotBlank(pageWrap.getModel().getKeyWords()),SystemUser::getUsername,pageWrap.getModel().getKeyWords())
-                    .or()
-                    .like(StringUtils.isNotBlank(pageWrap.getModel().getKeyWords()),SystemUser::getRealname,pageWrap.getModel().getKeyWords());
+                    .and(StringUtils.isNotBlank(pageWrap.getModel().getKeyWords()),wapper ->{wapper.like(SystemUser::getUsername,pageWrap.getModel().getKeyWords())
+                            .or().like(SystemUser::getRealname,pageWrap.getModel().getKeyWords());})
+                    .orderByDesc(SystemUser::getCreateTime);
 
         IPage<CompanyUserDTO> companyUserDTOIPage = systemUserJoinMapper.selectJoinPage(page, CompanyUserDTO.class, mpjJoinMapper);
+        if(Constants.equalsInteger(pageWrap.getModel().getType(),Constants.ONE) && companyUserDTOIPage.getRecords()!=null){
+            for (CompanyUserDTO user : companyUserDTOIPage.getRecords()) {
+                // 鏌ヨ鐢ㄦ埛瑙掕壊鍒楄〃
+                user.setRoles(systemRoleService.findByUserId(user.getId()));
+            }
+        }
+
         return PageData.from(companyUserDTOIPage);
     }
 
@@ -64,17 +76,21 @@
         MPJLambdaWrapper<SystemUser> mpjJoinMapper = new MPJLambdaWrapper<>();
         mpjJoinMapper.selectAll(SystemUser.class)
                 .selectAs(Company::getName,CompanyUserDTO::getCompanyName)
-                .selectAs(SystemRole::getId,CompanyUserDTO::getRoleId)
-                .selectAs(SystemRole::getCode,CompanyUserDTO::getRoleCode)
-                .selectAs(SystemRole::getName,CompanyUserDTO::getRoleName)
-                .selectAs(SystemRole::getType,CompanyUserDTO::getRoleType)
-                .leftJoin(SystemUserRole.class,SystemUserRole::getUserId,SystemUser::getId)
-                .leftJoin(SystemRole.class,SystemRole::getId,SystemUserRole::getRoleId)
+//                .selectAs(SystemRole::getId,CompanyUserDTO::getRoleId)
+//                .selectAs(SystemRole::getCode,CompanyUserDTO::getRoleCode)
+//                .selectAs(SystemRole::getName,CompanyUserDTO::getRoleName)
+//                .selectAs(SystemRole::getType,CompanyUserDTO::getRoleType)
+//                .leftJoin(SystemUserRole.class,SystemUserRole::getUserId,SystemUser::getId)
+//                .leftJoin(SystemRole.class,SystemRole::getId,SystemUserRole::getRoleId)
                 .leftJoin(Company.class,Company::getId,SystemUser::getCompanyId)
                 .eq(SystemUser::getType, Constants.ONE)
                 .eq(SystemUser::getId,companyUserDTO.getId());
 
         CompanyUserDTO companyUserDTOIPage = systemUserJoinMapper.selectJoinOne(CompanyUserDTO.class, mpjJoinMapper);
+        if(companyUserDTOIPage!=null && Constants.equalsInteger(companyUserDTOIPage.getType(),Constants.ONE) ){
+                // 鏌ヨ鐢ㄦ埛瑙掕壊鍒楄〃
+            companyUserDTOIPage.setRoles(systemRoleService.findByUserId(companyUserDTOIPage.getId()));
+        }
         return companyUserDTOIPage;
     }
 
diff --git a/server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java b/server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java
index a049452..ad4b0c8 100644
--- a/server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java
+++ b/server/service/src/main/java/com/doumee/service/business/impl/GoodsServiceImpl.java
@@ -17,10 +17,8 @@
 import com.doumee.dao.business.*;
 import com.doumee.dao.business.join.GoodsJoinMapper;
 import com.doumee.dao.business.model.*;
-import com.doumee.dao.business.model.dto.BatchDisableDTO;
-import com.doumee.dao.business.model.dto.GoodCreatePlatRequest;
-import com.doumee.dao.business.model.dto.GoodsRequest;
-import com.doumee.dao.business.model.dto.PlatGoodsParam;
+import com.doumee.dao.business.model.dto.*;
+import com.doumee.service.business.BaseDataService;
 import com.doumee.service.business.GoodsService;
 import com.github.yulichang.wrapper.MPJLambdaWrapper;
 import org.apache.commons.lang3.StringUtils;
@@ -54,6 +52,9 @@
 
     @Autowired
     private GoodsMapper goodsMapper;
+    @Autowired
+    @Lazy
+    private BaseDataService baseDataService;
     @Autowired
     private BaseGoodsMapper baseGoodsMapper;
     @Autowired
@@ -721,6 +722,7 @@
             Goods g = new Goods();
             g.setIsdeleted(Constants.ZERO);
             g.setRemark(m.getId());
+            g.setCompanyId(user.getCompanyId());
             //鍝佺被鏁版嵁
             g = goodsMapper.selectOne(new QueryWrapper<>(g).last(" limit 1"));
             if(g != null){
@@ -729,6 +731,7 @@
             Category cate = new Category();
             cate.setIsdeleted(Constants.ZERO);
             cate.setName(m.getCategory());
+            cate.setCompanyId(user.getCompanyId());
             //鍝佺被鏁版嵁
             cate = categoryMapper.selectOne(new QueryWrapper<>(cate).last(" limit 1"));
             if(cate == null){
@@ -738,7 +741,9 @@
             brand.setIsdeleted(Constants.ZERO);
             brand.setName(m.getBrand());
             //鍝佺被鏁版嵁
-            brand = brandMapper.selectOne(new QueryWrapper<>(brand).last(" limit 1"));
+            QueryWrapper<Brand> qwrapper = new QueryWrapper<>(brand);
+            qwrapper.lambda().and(wapper-> wapper.eq(Brand::getCompanyId ,user.getCompanyId()).or().eq(Brand::getType,Constants.ONE));
+            brand = brandMapper.selectOne(qwrapper.last(" limit 1"));
             if(brand == null){
                 throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗��"+(num)+"銆戣鍟嗗搧鍝佺墝鏃犳晥锛岃妫�鏌ヨ緭鍏ワ紒");
             }
@@ -751,6 +756,7 @@
             newModel.setBrandId(brand.getId());
             newModel.setIsdeleted(Constants.ZERO);
             newModel.setCreator(user.getId());
+            newModel.setCompanyId(user.getCompanyId());
             newModel.setCreateDate(new Date());
             newModel.setName(m.getName());
             newModel.setStatus(Constants.ZERO);
@@ -769,67 +775,14 @@
             newModel.setPinyin(PinYinUtil.getFullSpell(m.getName()));
             newModel.setShortPinyin(PinYinUtil.getFirstSpell(m.getName()));
 
-            CateAttr ca = new CateAttr();
-            ca.setCategoryId(cate.getId());
-            ca.setIsdeleted(Constants.ZERO);
-            //鏌ヨ鍏ㄩ儴灞炴��1鍜屽睘鎬�2瑙勬牸鍊�
-            List<CateAttr> allAttr = cateAttrMapper.selectList(new QueryWrapper<>(ca));
-            //灞炴��1闆嗗悎
-//            String[] attrs = StringUtils.defaultString(m.getAttrFirstNames(),"").split("\n");
-            //灞炴��2闆嗗悎
-//            String[] attrs2 = StringUtils.defaultString(m.getAttrSecodNames(),"").split("\n");
-            //浜у搧鍙傛暟闆嗗悎
             String[] params =  StringUtils.defaultString(m.getParamStr(),"").split("\n");
-//            if(attrs.length > 0){
-//                String attrids="" ,attrNames="";
-//                for(String s : attrs){
-//                    if(StringUtils.isBlank(s)){
-//                        continue;
-//                    }
-//                    //鏌ヨ灞炴�ц鏍煎璞�
-//                    CateAttr ta = getCateAttrByName(s,Constants.ZERO,allAttr);
-//                    if(ta == null){
-//                        throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗��"+(num)+"銆戣灞炴��1涓��"+s+"銆戞棤鏁堬紝璇锋鏌ヨ緭鍏ワ紒");
-//                    }
-//                    if(StringUtils.isNotBlank(attrids)){
-//                        attrids += ",";
-//                        attrNames += ",";
-//                    }
-//                    attrids+= ta.getId();
-//                    attrNames+= ta.getName();
-//                }
-//                newModel.setAttrFirstIds(attrids);
-//                newModel.setAttrFirstNames(attrNames);
-//            }
-//            if(attrs2.length > 0){
-//                String attrids="" ,attrNames="";
-//                for(String s : attrs2){
-//                    if(StringUtils.isBlank(s)){
-//                        continue;
-//                    }
-//                    //鏌ヨ灞炴�ц鏍煎璞�
-//                    CateAttr ta = getCateAttrByName(s,Constants.ONE,allAttr);
-//                    if(ta == null){
-//                        throw new BusinessException(ResponseStatus.BAD_REQUEST.getCode(),"瀵逛笉璧凤紝绗��"+(num)+"銆戣灞炴��1涓��"+s+"銆戞棤鏁堬紝璇锋鏌ヨ緭鍏ワ紒");
-//                    }
-//                    if(StringUtils.isNotBlank(attrids)){
-//                        attrids += ",";
-//                        attrNames += ",";
-//                    }
-//                    attrids+= ta.getId();
-//                    attrNames+= ta.getName();
-//                }
-//                newModel.setAttrSecodIds(attrids);
-//                newModel.setAttrSecodNames(attrNames);
-//
-//            }
             List<String> mulFiles = null;
             String proDir =systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.PROJECTS).getCode();
 
-            String tf = proDir.substring(0,proDir.length()-1);
             String path = systemDictDataBiz.queryByCode(Constants.SYSTEM,Constants.GOODS_IMG_DIR).getCode()
                     + proDir;
             if(StringUtils.isNotBlank(path)){
+                OssModel ossModel = baseDataService.initOssModel();
                 File dir =new File(path+File.separator+newModel.getRemark()+File.separator);
                 if(dir!=null && dir.isDirectory()){
                     File[]  files = dir.listFiles();
@@ -837,16 +790,8 @@
                         for(File f:files){
                             if(StringUtils.isBlank(newModel.getImgurl()) && isImgFile(f)){
                                 //鍙栫涓�寮犲浘鐗囦綔涓哄垪琛ㄥ浘
-                                String imgdir =f.getPath().substring(f.getPath().indexOf(tf)+tf.length()+1);
-                                newModel.setImgurl(imgdir.replace(File.separator,"/"));
-//                                 newModel.setImgurl(f.getPath().replace(path.replace(File.separator,"/"),""));
+                                newModel.setImgurl(baseDataService.getOssImgurl(ossModel,ossModel.getGoodsFolder(),f));
                             }
-//                             else{
-//                                 if(mulFiles==null){
-//                                     mulFiles = new ArrayList<>();
-//                                 }
-//                                 mulFiles.add(f.getPath().replace(path.replace("/",File.separator),""));
-//                             }
                             if((mulFiles ==null || mulFiles.size() == 0) && f.isDirectory()){
                                 //濡傛灉鏄枃浠跺す
                                 File[] fs = f.listFiles();
@@ -856,12 +801,7 @@
                                             if(mulFiles==null){
                                                 mulFiles = new ArrayList<>();
                                             }
-
-                                            String imgdir =mf.getPath().substring(mf.getPath().indexOf(tf)+tf.length()+1);
-                                            mulFiles.add(imgdir.replace(File.separator,"/"));
-//                                             newModel.setImgurl(imgdir);
-////                                             mulFiles.add(mf.getName());
-//                                             mulFiles.add(mf.getPath().replace(path.replace(File.separator,"/"),""));
+                                            mulFiles.add(baseDataService.getOssImgurl(ossModel,ossModel.getGoodsFolder(),f));
                                         }
                                     }
                                 }
@@ -942,6 +882,9 @@
 
     }
 
+
+
+
     private boolean isImgFile(File f) {
         if(f!=null && f.isFile() ){
             String name = f.getName();

--
Gitblit v1.9.3