Browse Source

费用和商品功能修改,仓库库区功能

lazhaoqian 4 years ago
parent
commit
4165b5321e
24 changed files with 356 additions and 41 deletions
  1. 1 0
      blade-service-api/blade-client-api/src/main/java/org/springblade/client/entity/CorpsType.java
  2. 44 2
      blade-service-api/blade-client-api/src/main/java/org/springblade/client/vo/StorageTypeVO.java
  3. 8 1
      blade-service/blade-client/src/main/java/org/springblade/client/controller/StorageDescController.java
  4. 19 1
      blade-service/blade-client/src/main/java/org/springblade/client/controller/StorageTypeController.java
  5. 8 2
      blade-service/blade-client/src/main/java/org/springblade/client/entity/CorpsType.java
  6. 5 0
      blade-service/blade-client/src/main/java/org/springblade/client/entity/CorpsTypeDesc.java
  7. 6 0
      blade-service/blade-client/src/main/java/org/springblade/client/entity/FeesType.java
  8. 6 0
      blade-service/blade-client/src/main/java/org/springblade/client/entity/GoodsType.java
  9. 2 2
      blade-service/blade-client/src/main/java/org/springblade/client/entity/StorageDesc.java
  10. 5 1
      blade-service/blade-client/src/main/java/org/springblade/client/mapper/CorpsTypeMapper.xml
  11. 5 1
      blade-service/blade-client/src/main/java/org/springblade/client/mapper/FeesTypeMapper.xml
  12. 5 2
      blade-service/blade-client/src/main/java/org/springblade/client/mapper/GoodsTypeMapper.xml
  13. 10 1
      blade-service/blade-client/src/main/java/org/springblade/client/mapper/StorageTypeMapper.java
  14. 111 3
      blade-service/blade-client/src/main/java/org/springblade/client/mapper/StorageTypeMapper.xml
  15. 8 0
      blade-service/blade-client/src/main/java/org/springblade/client/service/IStorageDescService.java
  16. 7 0
      blade-service/blade-client/src/main/java/org/springblade/client/service/IStorageTypeService.java
  17. 6 5
      blade-service/blade-client/src/main/java/org/springblade/client/service/impl/CorpsDescServiceImpl.java
  18. 2 0
      blade-service/blade-client/src/main/java/org/springblade/client/service/impl/CorpsTypeServiceImpl.java
  19. 4 2
      blade-service/blade-client/src/main/java/org/springblade/client/service/impl/FeesDescServiceImpl.java
  20. 1 1
      blade-service/blade-client/src/main/java/org/springblade/client/service/impl/FeesTypeServiceImpl.java
  21. 3 3
      blade-service/blade-client/src/main/java/org/springblade/client/service/impl/GoodsDescServiceImpl.java
  22. 47 4
      blade-service/blade-client/src/main/java/org/springblade/client/service/impl/StorageDescServiceImpl.java
  23. 3 9
      blade-service/blade-client/src/main/java/org/springblade/client/service/impl/StorageTypeDescServiceImpl.java
  24. 40 1
      blade-service/blade-client/src/main/java/org/springblade/client/service/impl/StorageTypeServiceImpl.java

+ 1 - 0
blade-service-api/blade-client-api/src/main/java/org/springblade/client/entity/CorpsType.java

@@ -17,6 +17,7 @@
 package org.springblade.client.entity;
 
 import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
 import java.time.LocalDateTime;

+ 44 - 2
blade-service-api/blade-client-api/src/main/java/org/springblade/client/vo/StorageTypeVO.java

@@ -16,10 +16,16 @@
  */
 package org.springblade.client.vo;
 
+import com.fasterxml.jackson.annotation.JsonInclude;
+import io.swagger.annotations.ApiModelProperty;
 import org.springblade.client.entity.StorageType;
 import lombok.Data;
 import lombok.EqualsAndHashCode;
 import io.swagger.annotations.ApiModel;
+import org.springblade.core.tool.node.INode;
+
+import java.util.ArrayList;
+import java.util.List;
 
 /**
  * 仓库视图实体类
@@ -30,7 +36,43 @@ import io.swagger.annotations.ApiModel;
 @Data
 @EqualsAndHashCode(callSuper = true)
 @ApiModel(value = "StorageTypeVO对象", description = "仓库")
-public class StorageTypeVO extends StorageType {
+public class StorageTypeVO extends StorageType implements INode<StorageTypeVO> {
 	private static final long serialVersionUID = 1L;
-
+	/**
+	 * 父级中文名
+	 */
+	@ApiModelProperty(value = "父级名称")
+	private String parentName;
+	/**
+	 * 创建人中文名
+	 */
+	@ApiModelProperty(value = "创建人中文名")
+	private String createUserName;
+	/**
+	 * 修改人中文名
+	 */
+	@ApiModelProperty(value = "修改人中文名")
+	private String updateUserName;
+	/**
+	 * 状态中文名
+	 */
+	@ApiModelProperty(value = "状态中文名")
+	private String statusName;
+	/**
+	 * 子孙节点
+	 */
+	@JsonInclude(JsonInclude.Include.NON_EMPTY)
+	private List<StorageTypeVO> children;
+	/**
+	 * 是否有子孙节点
+	 */
+	@JsonInclude(JsonInclude.Include.NON_EMPTY)
+	private Boolean hasChildren;
+	@Override
+	public List<StorageTypeVO> getChildren() {
+		if (this.children == null) {
+			this.children = new ArrayList<>();
+		}
+		return this.children;
+	}
 }

+ 8 - 1
blade-service/blade-client/src/main/java/org/springblade/client/controller/StorageDescController.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.client.controller;
 
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
 import io.swagger.annotations.Api;
 import io.swagger.annotations.ApiOperation;
 import io.swagger.annotations.ApiParam;
@@ -25,6 +26,7 @@ import javax.validation.Valid;
 
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
+import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
 import org.springframework.web.bind.annotation.*;
@@ -66,7 +68,9 @@ public class StorageDescController extends BladeController {
 	@ApiOperationSupport(order = 2)
 	@ApiOperation(value = "分页", notes = "传入storageDesc")
 	public R<IPage<StorageDesc>> list(StorageDesc storageDesc, Query query) {
-		IPage<StorageDesc> pages = storageDescService.page(Condition.getPage(query), Condition.getQueryWrapper(storageDesc));
+		storageDesc.setTenantId(SecureUtil.getTenantId());
+		storageDesc.setIsDeleted(0);
+		IPage<StorageDesc> pages = storageDescService.pageMessage(storageDesc,query);
 		return R.data(pages);
 	}
 
@@ -112,6 +116,9 @@ public class StorageDescController extends BladeController {
 	@ApiOperationSupport(order = 6)
 	@ApiOperation(value = "新增或修改", notes = "传入storageDesc")
 	public R submit(@Valid @RequestBody StorageDesc storageDesc) {
+		if (StringUtils.isBlank(storageDesc.getCname())){
+			return R.fail(500,"库区名称不能为空");
+		}
 		return R.data(storageDescService.saveMessage(storageDesc));
 	}
 

+ 19 - 1
blade-service/blade-client/src/main/java/org/springblade/client/controller/StorageTypeController.java

@@ -24,9 +24,11 @@ import io.swagger.annotations.ApiParam;
 import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport;
 import lombok.AllArgsConstructor;
 import javax.validation.Valid;
+
 import org.springblade.core.mp.support.Condition;
 import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.BladeUser;
+import org.springblade.core.secure.utils.SecureUtil;
 import org.springblade.core.tool.api.R;
 import org.springblade.core.tool.utils.Func;
 import org.springframework.web.bind.annotation.*;
@@ -73,6 +75,8 @@ public class StorageTypeController extends BladeController {
 	@ApiOperationSupport(order = 2)
 	@ApiOperation(value = "分页", notes = "传入storageType")
 	public R<IPage<StorageType>> list(StorageType storageType, Query query) {
+		storageType.setTenantId(SecureUtil.getTenantId());
+		storageType.setIsDeleted(0);
 		IPage<StorageType> pages = storageTypeService.page(Condition.getPage(query), Condition.getQueryWrapper(storageType));
 		return R.data(pages);
 	}
@@ -84,6 +88,8 @@ public class StorageTypeController extends BladeController {
 	@ApiOperationSupport(order = 3)
 	@ApiOperation(value = "分页", notes = "传入storageType")
 	public R<IPage<StorageTypeVO>> page(StorageTypeVO storageType, Query query) {
+		storageType.setTenantId(SecureUtil.getTenantId());
+		storageType.setIsDeleted(0);
 		IPage<StorageTypeVO> pages = storageTypeService.selectStorageTypePage(Condition.getPage(query), storageType);
 		return R.data(pages);
 	}
@@ -140,7 +146,7 @@ public class StorageTypeController extends BladeController {
 		return R.status(storageTypeService.removeByIds(Func.toLongList(ids)));
 	}
 	/**
-	 * 懒加载获取部门树形结构
+	 * 懒加载获取仓库树形结构
 	 */
 	@GetMapping("/lazy-tree")
 	@ApiOperationSupport(order = 9)
@@ -149,5 +155,17 @@ public class StorageTypeController extends BladeController {
 		List<StorageTypeVO> tree = storageTypeService.lazyTree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId()), parentId);
 		return R.data(tree);
 	}
+	/**
+	 * 获取仓库树形结构
+	 *
+	 * @return
+	 */
+	@GetMapping("/tree")
+	@ApiOperationSupport(order = 7)
+	@ApiOperation(value = "树形结构", notes = "树形结构")
+	public R<List<StorageTypeVO>> tree(String tenantId, BladeUser bladeUser) {
+		List<StorageTypeVO> tree = storageTypeService.tree(Func.toStrWithEmpty(tenantId, bladeUser.getTenantId()));
+		return R.data(tree);
+	}
 
 }

+ 8 - 2
blade-service/blade-client/src/main/java/org/springblade/client/entity/CorpsType.java

@@ -20,14 +20,14 @@ import com.baomidou.mybatisplus.annotation.IdType;
 import com.baomidou.mybatisplus.annotation.TableField;
 import com.baomidou.mybatisplus.annotation.TableId;
 import com.baomidou.mybatisplus.annotation.TableName;
-import java.time.LocalDateTime;
 import java.io.Serializable;
 import java.util.Date;
 
+import com.fasterxml.jackson.annotation.JsonFormat;
 import lombok.Data;
-import lombok.EqualsAndHashCode;
 import io.swagger.annotations.ApiModel;
 import io.swagger.annotations.ApiModelProperty;
+import org.springframework.format.annotation.DateTimeFormat;
 
 /**
  * 客户类别表实体类
@@ -99,6 +99,12 @@ public class CorpsType implements Serializable {
 		@ApiModelProperty(value = "创建时间")
 		private Date createTime;
 	/**
+	 * 创建时间
+	 */
+		@ApiModelProperty(value = "创建时间")
+		@TableField(exist = false)
+		private Date endTime;
+	/**
 	* 修改人
 	*/
 		@ApiModelProperty(value = "修改人")

+ 5 - 0
blade-service/blade-client/src/main/java/org/springblade/client/entity/CorpsTypeDesc.java

@@ -63,6 +63,11 @@ public class CorpsTypeDesc implements Serializable {
 		@ApiModelProperty(value = "版本")
 		private String version;
 	/**
+	 * 租户id
+	 */
+	@ApiModelProperty(value = "租户id")
+	private String tenantId;
+	/**
 	* 创建人
 	*/
 		@ApiModelProperty(value = "创建人")

+ 6 - 0
blade-service/blade-client/src/main/java/org/springblade/client/entity/FeesType.java

@@ -96,6 +96,12 @@ public class FeesType implements Serializable {
 		@ApiModelProperty(value = "创建时间")
 		private Date createTime;
 	/**
+	 * 创建时间
+	 */
+		@ApiModelProperty(value = "创建时间")
+		@TableField(exist = false)
+		private Date endTime;
+	/**
 	* 修改人
 	*/
 		@ApiModelProperty(value = "修改人")

+ 6 - 0
blade-service/blade-client/src/main/java/org/springblade/client/entity/GoodsType.java

@@ -96,6 +96,12 @@ public class GoodsType implements Serializable {
 		@ApiModelProperty(value = "创建时间")
 		private Date createTime;
 	/**
+	 * 创建时间
+	 */
+		@ApiModelProperty(value = "创建时间")
+		@TableField(exist = false)
+		private Date endTime;
+	/**
 	* 修改人
 	*/
 		@ApiModelProperty(value = "修改人")

+ 2 - 2
blade-service/blade-client/src/main/java/org/springblade/client/entity/StorageDesc.java

@@ -136,12 +136,12 @@ public class StorageDesc implements Serializable {
 	 * 仓库id
 	 */
 		@TableField(exist = false)
-		private Long storageId;
+		private Long storageTypeId;
 	/**
 	 * 仓库名
 	 */
 		@TableField(exist = false)
-		private String storageName;
+		private String storageTypeName;
 
 
 }

+ 5 - 1
blade-service/blade-client/src/main/java/org/springblade/client/mapper/CorpsTypeMapper.xml

@@ -87,7 +87,10 @@
                 and dept.create_dept = #{corpsType.createDept}
             </if>
             <if test="corpsType.createTime!=null">
-                and dept.create_time = #{corpsType.createTime}
+                and dept.create_time &gt;= #{corpsType.createTime}
+            </if>
+            <if test="corpsType.endTime!=null">
+                and dept.create_time &lt;= #{corpsType.endTime}
             </if>
             <if test="corpsType.updateUser!=null ">
                 and dept.update_user = #{corpsType.updateUser}
@@ -98,6 +101,7 @@
             <if test="corpsType.status!=null">
                 and dept.status = #{corpsType.status}
             </if>
+            order by dept.sort
         </where>
     </select>
     <select id="tree" resultMap="treeNodeResultMap">

+ 5 - 1
blade-service/blade-client/src/main/java/org/springblade/client/mapper/FeesTypeMapper.xml

@@ -89,7 +89,10 @@ WHERE
             and dept.create_dept = #{FeesType.createDept}
         </if>
         <if test="FeesType.createTime!=null">
-            and dept.create_time = #{FeesType.createTime}
+            and dept.create_time &gt;= #{FeesType.createTime}
+        </if>
+        <if test="FeesType.endTime!=null">
+            and dept.create_time &lt;= #{FeesType.endTime}
         </if>
         <if test="FeesType.updateUser!=null ">
             and dept.update_user = #{FeesType.updateUser}
@@ -100,6 +103,7 @@ WHERE
         <if test="FeesType.status!=null">
             and dept.status = #{FeesType.status}
         </if>
+        order by dept.sort
     </select>
     <select id="tree" resultMap="treeNodeResultMap">
         SELECT

+ 5 - 2
blade-service/blade-client/src/main/java/org/springblade/client/mapper/GoodsTypeMapper.xml

@@ -11,7 +11,6 @@
         <result column="sort" property="sort"/>
         <result column="remarks" property="remarks"/>
         <result column="version" property="version"/>
-        <result column="tenant_id" property="tenantId"/>
         <result column="create_user" property="createUser"/>
         <result column="create_dept" property="createDept"/>
         <result column="create_time" property="createTime"/>
@@ -91,7 +90,10 @@ WHERE
             and dept.create_dept = #{GoodsType.createDept}
         </if>
         <if test="GoodsType.createTime!=null">
-            and dept.create_time = #{GoodsType.createTime}
+            and dept.create_time &gt;= #{GoodsType.createTime}
+        </if>
+        <if test="GoodsType.endTime!=null">
+            and dept.create_time &lt;= #{GoodsType.endTime}
         </if>
         <if test="GoodsType.updateUser!=null ">
             and dept.update_user = #{GoodsType.updateUser}
@@ -102,6 +104,7 @@ WHERE
         <if test="GoodsType.status!=null">
             and dept.status = #{GoodsType.status}
         </if>
+        order by dept.sort
     </select>
     <select id="tree" resultMap="treeNodeResultMap">
         SELECT

+ 10 - 1
blade-service/blade-client/src/main/java/org/springblade/client/mapper/StorageTypeMapper.java

@@ -16,6 +16,7 @@
  */
 package org.springblade.client.mapper;
 
+import org.apache.ibatis.annotations.Param;
 import org.springblade.client.entity.StorageType;
 import org.springblade.client.vo.StorageTypeVO;
 import com.baomidou.mybatisplus.core.mapper.BaseMapper;
@@ -37,7 +38,8 @@ public interface StorageTypeMapper extends BaseMapper<StorageType> {
 	 * @param storageType
 	 * @return
 	 */
-	List<StorageTypeVO> selectStorageTypePage(IPage page, StorageTypeVO storageType);
+	List<StorageTypeVO> selectStorageTypePage(IPage page, @Param("StorageType") StorageTypeVO storageType);
+
 	/**
 	 * 懒加载
 	 * @param tenantId
@@ -45,4 +47,11 @@ public interface StorageTypeMapper extends BaseMapper<StorageType> {
 	 * @return
 	 */
 	List<StorageTypeVO> lazyTree(String tenantId, Long parentId);
+
+	/**
+	 * 获取树形结构
+	 * @param tenantId
+	 * @return
+	 */
+	List<StorageTypeVO> tree(String tenantId);
 }

+ 111 - 3
blade-service/blade-client/src/main/java/org/springblade/client/mapper/StorageTypeMapper.xml

@@ -33,10 +33,101 @@
         <result column="has_children" property="hasChildren"/>
     </resultMap>
 
-    <select id="selectStorageTypePage" resultMap="storageTypeResultMap">
-        select * from basic_storage_type where is_deleted = 0
+    <select id="selectStorageTypePage" resultType="org.springblade.client.vo.StorageTypeVO">
+        SELECT
+	dept.id,
+	dept.parent_id,
+	dept.ancestors,
+	dept.code,
+	dept.cname,
+	dept.addr,
+	dept.attn,
+	dept.tel,
+	dept.storage_capacity,
+	dept.sort,
+	dept.remarks,
+	dept.version,
+	dept.tenant_id,
+	dept.create_user,
+	dept.create_dept,
+	dept.create_time,
+	dept.update_user,
+	dept.update_time,
+	dept.status,
+	dept.is_deleted,
+	case
+        when dept.status = '0' then '正常'
+        when dept.status = '1' then '停用'
+        end as statusName,
+	(
+                SELECT
+                    CASE WHEN count(1) > 0 THEN 1 ELSE 0 END
+                FROM
+                    basic_storage_type
+                WHERE
+                    parent_id = dept.id and is_deleted = 0
+            ) AS hasChildren
+FROM
+	basic_storage_type dept
+WHERE
+	dept.is_deleted = 0
+        <if test="StorageType.id!=null">
+            and dept.id = #{StorageType.id}
+        </if>
+        <if test="StorageType.parentId!=null">
+            and dept.parent_id = #{StorageType.parentId}
+        </if>
+        <if test="StorageType.ancestors!=null and StorageType.ancestors != ''">
+            and dept.ancestors like concat(concat('%',  #{StorageType.ancestors}),'%')
+        </if>
+        <if test="StorageType.code!=null and StorageType.code != ''">
+            and dept.code like concat(concat('%',  #{StorageType.code}),'%')
+        </if>
+        <if test="StorageType.cname!=null and StorageType.cname != ''">
+            and dept.cname like concat(concat('%',  #{StorageType.cname}),'%')
+        </if>
+        <if test="StorageType.addr!=null and StorageType.addr != ''">
+            and dept.addr like concat(concat('%',  #{StorageType.addr}),'%')
+        </if>
+        <if test="StorageType.attn!=null and StorageType.attn != ''">
+            and dept.attn like concat(concat('%',  #{StorageType.attn}),'%')
+        </if>
+        <if test="StorageType.tel!=null and StorageType.tel != ''">
+            and dept.tel like concat(concat('%',  #{StorageType.tel}),'%')
+        </if>
+        <if test="StorageType.storageCapacity!=null">
+            and dept.storage_capacity = #{StorageType.storageCapacity}
+        </if>
+        <if test="StorageType.sort!=null">
+            and dept.sort = #{StorageType.sort}
+        </if>
+        <if test="StorageType.remarks!=null and StorageType.remarks != ''">
+            and dept.remarks like concat(concat('%',  #{StorageType.remarks}),'%')
+        </if>
+        <if test="StorageType.version!=null and StorageType.version != ''">
+            and dept.version like concat(concat('%',  #{StorageType.version}),'%')
+        </if>
+        <if test="StorageType.tenantId!=null and StorageType.tenantId != ''">
+            and dept.tenant_id =  #{StorageType.tenantId}
+        </if>
+        <if test="StorageType.createUser!=null">
+            and dept.create_user = #{StorageType.createUser}
+        </if>
+        <if test="StorageType.createTime!=null">
+            and dept.create_time = #{StorageType.createTime}
+        </if>
+        <if test="StorageType.updateUser!=null">
+            and dept.update_user = #{StorageType.updateUser}
+        </if>
+        <if test="StorageType.updateTime!=null">
+            and dept.update_time = #{StorageType.updateTime}
+        </if>
+        <if test="StorageType.status!=null">
+            and dept.status = #{StorageType.status}
+        </if>
+        order by dept.sort
     </select>
-    <select id="lazyTree" resultMap="treeNodeResultMap" >
+    <select id="lazyTree" resultMap="treeNodeResultMap">
         SELECT
         dept.id,
         dept.parent_id,
@@ -60,4 +151,21 @@
         </if>
         ORDER BY dept.sort
     </select>
+    <select id="tree" resultMap="treeNodeResultMap">
+        SELECT
+        id,
+        parent_id,
+        cname AS title,
+        id AS "value",
+        id AS "key"
+        FROM
+        basic_storage_type
+        WHERE
+        is_deleted = 0
+        and status = 0
+        <if test="tenantId!=null and tenantId!=''">
+            and tenant_id = #{tenantId}
+        </if>
+        ORDER BY sort
+    </select>
 </mapper>

+ 8 - 0
blade-service/blade-client/src/main/java/org/springblade/client/service/IStorageDescService.java

@@ -20,6 +20,7 @@ import org.springblade.client.entity.StorageDesc;
 import org.springblade.client.vo.StorageDescVO;
 import com.baomidou.mybatisplus.extension.service.IService;
 import com.baomidou.mybatisplus.core.metadata.IPage;
+import org.springblade.core.mp.support.Query;
 
 /**
  * 库区表 服务类
@@ -51,4 +52,11 @@ public interface IStorageDescService extends IService<StorageDesc> {
 	 * @return
 	 */
 	StorageDesc getMessage(StorageDesc storageDesc);
+
+	/**
+	 * 自定义分页
+	 * @param storageDesc
+	 * @return
+	 */
+	IPage<StorageDesc> pageMessage(StorageDesc storageDesc, Query query);
 }

+ 7 - 0
blade-service/blade-client/src/main/java/org/springblade/client/service/IStorageTypeService.java

@@ -61,4 +61,11 @@ public interface IStorageTypeService extends IService<StorageType> {
 	 * @return
 	 */
 	List<StorageTypeVO> lazyTree(String tenantId, Long parentId);
+
+	/**
+	 * 获取树形结构
+	 * @param tenantId
+	 * @return
+	 */
+	List<StorageTypeVO> tree(String tenantId);
 }

+ 6 - 5
blade-service/blade-client/src/main/java/org/springblade/client/service/impl/CorpsDescServiceImpl.java

@@ -86,7 +86,7 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
 		//保存客户优势项目信息
 		this.saveOrUpdateItems(corpsDesc,userId,pId,tenantId,date);
 		//保存客户与类别对应关系
-		this.saveOrUpdateTypeDesc(corpsDesc,userId,pId,date);
+		this.saveOrUpdateTypeDesc(corpsDesc,userId,pId,date,tenantId);
 		return corpsDesc;
 	}
 
@@ -117,9 +117,9 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
 			if (CollectionUtils.isNotEmpty(list)){
 				for (CorpsTypeDesc corpsTypeDesc : list) {
 					corpsDesc.setId(corpsTypeDesc.getCorpId());
-					CorpsDesc desc = baseMapper.selectOne(new QueryWrapper<CorpsDesc>().setEntity(corpsDesc));
-					if (desc != null){
-						corpsDescList.add(desc);
+					List<CorpsDesc> desc = baseMapper.selectList(new QueryWrapper<CorpsDesc>().setEntity(corpsDesc));
+					if (CollectionUtils.isNotEmpty(desc)){
+						corpsDescList.addAll(desc);
 					}
 				}
 			}
@@ -246,7 +246,7 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
 	 * @param date 创建时间
 	 * @return
 	 */
-	public void saveOrUpdateTypeDesc(CorpsDesc corpsDesc,Long userId,Long pId,Date date){
+	public void saveOrUpdateTypeDesc(CorpsDesc corpsDesc,Long userId,Long pId,Date date,String tenantId){
 		corpsTypeDescService.remove(new QueryWrapper<CorpsTypeDesc>().eq("corp_id",corpsDesc.getId()));
 		if (StringUtils.isNotBlank(corpsDesc.getCorpsTypeId())){
 			List<String> list = Arrays.asList(corpsDesc.getCorpsTypeId().split(","));
@@ -266,6 +266,7 @@ public class CorpsDescServiceImpl extends ServiceImpl<CorpsDescMapper, CorpsDesc
 					corpsTypeDesc.setCorpTypeId(Long.valueOf(item));
 					corpsTypeDesc.setCreateUser(userId);
 					corpsTypeDesc.setCreateTime(date);
+					corpsTypeDesc.setTenantId(tenantId);
 					//typeDesc.setCreateDept(Long.valueOf(SecureUtil.getDeptId()));
 					corpsTypeDescService.save(corpsTypeDesc);
 				}

+ 2 - 0
blade-service/blade-client/src/main/java/org/springblade/client/service/impl/CorpsTypeServiceImpl.java

@@ -81,11 +81,13 @@ public class CorpsTypeServiceImpl extends ServiceImpl<CorpsTypeMapper, CorpsType
 			corpsType.setCreateUser(SecureUtil.getUserId());
 			corpsType.setCreateTime(new Date());
 			corpsType.setCreateDept(Long.valueOf(SecureUtil.getUser().getDeptId()));
+			corpsType.setTenantId(SecureUtil.getTenantId());
 			i = baseMapper.insert(corpsType);
 		}else {
 			corpsType.setUpdateUser(SecureUtil.getUserId());
 			corpsType.setCreateTime(new Date());
 			corpsType.setCreateDept(Long.valueOf(SecureUtil.getUser().getDeptId()));
+			corpsType.setTenantId(SecureUtil.getTenantId());
 			i = baseMapper.updateById(corpsType);
 		}
 		if (i != null && i>0){

+ 4 - 2
blade-service/blade-client/src/main/java/org/springblade/client/service/impl/FeesDescServiceImpl.java

@@ -96,8 +96,10 @@ public class FeesDescServiceImpl extends ServiceImpl<FeesDescMapper, FeesDesc> i
 			if (CollectionUtils.isNotEmpty(list)){
 				for (FeesTypeDesc feesTypeDesc : list) {
 					feesDesc.setId(feesTypeDesc.getFeesId());
-					FeesDesc desc = baseMapper.selectOne(new QueryWrapper<FeesDesc>().setEntity(feesDesc));
-					feesDescList.add(desc);
+					List<FeesDesc> descList = baseMapper.selectList(new QueryWrapper<FeesDesc>().setEntity(feesDesc));
+					if (CollectionUtils.isNotEmpty(descList)){
+						feesDescList.addAll(descList);
+					}
 				}
 			}
 		}else {

+ 1 - 1
blade-service/blade-client/src/main/java/org/springblade/client/service/impl/FeesTypeServiceImpl.java

@@ -106,7 +106,7 @@ public class FeesTypeServiceImpl extends ServiceImpl<FeesTypeMapper, FeesType> i
 		if (selectById != null){
 			type.setParentName(selectById.getCname());
 		}
-		return feesType;
+		return type;
 	}
 
 	@Override

+ 3 - 3
blade-service/blade-client/src/main/java/org/springblade/client/service/impl/GoodsDescServiceImpl.java

@@ -115,9 +115,9 @@ public class GoodsDescServiceImpl extends ServiceImpl<GoodsDescMapper, GoodsDesc
 			if (CollectionUtils.isNotEmpty(list)){
 				for (GoodsTypeDesc goodsTypeDesc : list) {
 					goodsDesc.setId(goodsTypeDesc.getGoodsId());
-					GoodsDesc desc = baseMapper.selectOne(new QueryWrapper<GoodsDesc>().setEntity(goodsDesc));
-					if (desc != null){
-						goodsDescList.add(desc);
+					List<GoodsDesc> goodsDescS = baseMapper.selectList(new QueryWrapper<GoodsDesc>().setEntity(goodsDesc));
+					if (CollectionUtils.isNotEmpty(goodsDescS)){
+						goodsDescList.addAll(goodsDescS);
 					}
 				}
 			}

+ 47 - 4
blade-service/blade-client/src/main/java/org/springblade/client/service/impl/StorageDescServiceImpl.java

@@ -17,7 +17,7 @@
 package org.springblade.client.service.impl;
 
 import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
-import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import lombok.AllArgsConstructor;
 import org.springblade.client.entity.StorageDesc;
 import org.springblade.client.entity.StorageType;
@@ -26,12 +26,16 @@ import org.springblade.client.vo.StorageDescVO;
 import org.springblade.client.mapper.StorageDescMapper;
 import org.springblade.client.service.IStorageDescService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import org.springblade.core.mp.support.Condition;
+import org.springblade.core.mp.support.Query;
 import org.springblade.core.secure.utils.SecureUtil;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 import org.springframework.transaction.annotation.Transactional;
 
+import java.util.ArrayList;
 import java.util.Date;
+import java.util.List;
 
 /**
  * 库区表 服务实现类
@@ -65,7 +69,7 @@ public class StorageDescServiceImpl extends ServiceImpl<StorageDescMapper, Stora
 			baseMapper.updateById(storageDesc);
 		}
 		//保存库区和仓库对应关系
-		boolean b = storageTypeDescService.saveMessage(storageDesc.getId(), storageDesc.getStorageId(), SecureUtil.getTenantId());
+		boolean b = storageTypeDescService.saveMessage(storageDesc.getId(), storageDesc.getStorageTypeId(), SecureUtil.getTenantId());
 		return storageDesc;
 	}
 
@@ -75,12 +79,51 @@ public class StorageDescServiceImpl extends ServiceImpl<StorageDescMapper, Stora
 		//获取库区和仓库对应表
 		StorageTypeDesc storageId = storageTypeDescService.getOne(new QueryWrapper<StorageTypeDesc>().eq("storage_id", desc.getId()));
 		if (storageId != null){
+			desc.setStorageTypeId(storageId.getStorageTypeId());
 			StorageType storageType = storageTypeService.getById(storageId.getStorageTypeId());
 			if (storageType != null){
-				desc.setStorageName(storageType.getCname());
+				desc.setStorageTypeName(storageType.getCname());
 			}
 		}
-		return storageDesc;
+		return desc;
 	}
 
+	@Override
+	public IPage<StorageDesc> pageMessage(StorageDesc storageDesc, Query query) {
+		List<StorageDesc> storageDescList = new ArrayList<>();
+		//判断仓库参数是否为空
+		if (storageDesc.getStorageTypeId() != null){
+			//查询仓库与库区对应表获取库区id
+			List<StorageTypeDesc> list = storageTypeDescService.list(new QueryWrapper<StorageTypeDesc>().eq("storage_type_id", storageDesc.getStorageTypeId())
+				.eq("status", 0));
+			//判断list是否为空,不为空获取库区id加其他条件查询库区信息
+			if (CollectionUtils.isNotEmpty(list)){
+				for (StorageTypeDesc storageTypeDesc : list) {
+					storageDesc.setId(storageTypeDesc.getStorageId());
+					List<StorageDesc> storageDescs = baseMapper.selectList(new QueryWrapper<StorageDesc>().setEntity(storageDesc));
+					if (CollectionUtils.isNotEmpty(storageDescs)){
+						storageDescs.stream().forEach(item ->{
+							item.setStorageTypeId(storageDesc.getStorageTypeId());
+						});
+						storageDescList.addAll(storageDescs);
+					}
+				}
+			}
+		}else {
+			storageDescList = baseMapper.selectList(new QueryWrapper<StorageDesc>().setEntity(storageDesc));
+			if (CollectionUtils.isNotEmpty(storageDescList)){
+				storageDescList.stream().forEach(item ->{
+					StorageTypeDesc typeDesc = storageTypeDescService.getOne(new QueryWrapper<StorageTypeDesc>().eq("storage_id", item.getId())
+						.eq("status", 0));
+					if (typeDesc != null){
+						item.setStorageTypeId(typeDesc.getStorageTypeId());
+					}
+				});
+			}
+		}
+		IPage<StorageDesc> page = Condition.getPage(query);
+		return page.setRecords(storageDescList);
+	}
+
+
 }

+ 3 - 9
blade-service/blade-client/src/main/java/org/springblade/client/service/impl/StorageTypeDescServiceImpl.java

@@ -50,7 +50,8 @@ public class StorageTypeDescServiceImpl extends ServiceImpl<StorageTypeDescMappe
 	 * @return
 	 */
 	public boolean saveMessage(Long storageId,Long typeId,String tenantId){
-		StorageTypeDesc typeDesc = baseMapper.selectOne(new QueryWrapper<StorageTypeDesc>().eq("storage_id", storageId));
+		StorageTypeDesc typeDesc = baseMapper.selectOne(new QueryWrapper<StorageTypeDesc>().eq("storage_id", storageId)
+			.eq("status",0).eq("tenant_id",tenantId));
 		StorageTypeDesc storageTypeDesc = new StorageTypeDesc();
 		Integer flag = null;
 		if (typeDesc == null){
@@ -60,14 +61,7 @@ public class StorageTypeDescServiceImpl extends ServiceImpl<StorageTypeDescMappe
 			storageTypeDesc.setCreateTime(new Date());
 			storageTypeDesc.setCreateUser(SecureUtil.getUserId());
 			flag = baseMapper.insert(storageTypeDesc);
-		}else if (typeDesc != null && typeDesc.getStorageTypeId() == typeId){
-			typeDesc.setStorageId(storageId);
-			typeDesc.setStorageTypeId(typeId);
-			typeDesc.setTenantId(tenantId);
-			typeDesc.setUpdateTime(new Date());
-			typeDesc.setUpdateUser(SecureUtil.getUserId());
-			flag = baseMapper.updateById(typeDesc);
-		}else if (typeDesc != null && typeDesc.getStorageTypeId() == typeId){
+		} else {
 			//将原来的改为停用
 			typeDesc.setStatus(1);
 			flag = baseMapper.updateById(typeDesc);

+ 40 - 1
blade-service/blade-client/src/main/java/org/springblade/client/service/impl/StorageTypeServiceImpl.java

@@ -16,13 +16,19 @@
  */
 package org.springblade.client.service.impl;
 
+import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
 import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import org.springblade.client.entity.GoodsType;
 import org.springblade.client.entity.StorageType;
 import org.springblade.client.vo.StorageTypeVO;
 import org.springblade.client.mapper.StorageTypeMapper;
 import org.springblade.client.service.IStorageTypeService;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
 import org.springblade.core.secure.utils.SecureUtil;
+import org.springblade.core.tool.api.R;
+import org.springblade.core.tool.node.ForestNodeMerger;
+import org.springblade.system.user.entity.User;
+import org.springblade.system.user.feign.IUserClient;
 import org.springframework.stereotype.Service;
 import com.baomidou.mybatisplus.core.metadata.IPage;
 
@@ -37,10 +43,35 @@ import java.util.List;
  */
 @Service
 public class StorageTypeServiceImpl extends ServiceImpl<StorageTypeMapper, StorageType> implements IStorageTypeService {
+	private final IUserClient userClient;
+
+	public StorageTypeServiceImpl(IUserClient userClient) {
+		this.userClient = userClient;
+	}
 
 	@Override
 	public IPage<StorageTypeVO> selectStorageTypePage(IPage<StorageTypeVO> page, StorageTypeVO storageType) {
-		return page.setRecords(baseMapper.selectStorageTypePage(page, storageType));
+		List<StorageTypeVO> storageTypeVOS = baseMapper.selectStorageTypePage(page, storageType);
+		if (CollectionUtils.isNotEmpty(storageTypeVOS)){
+			storageTypeVOS.stream().forEach(item ->{
+				//获取父级名称
+				StorageType type = baseMapper.selectById(item.getParentId());
+				if (type != null){
+					item.setParentName(type.getCname());
+				}
+				//获取创建人中文名
+				R<User> createUser = userClient.userInfoById(item.getCreateUser());
+				if (createUser.isSuccess()){
+					item.setCreateUserName(createUser.getData().getName());
+				}
+				//获取修改人中文名
+				R<User> updateUser = userClient.userInfoById(item.getCreateUser());
+				if (updateUser.isSuccess()){
+					item.setUpdateUserName(updateUser.getData().getName());
+				}
+			});
+		}
+		return page.setRecords(storageTypeVOS);
 	}
 
 	@Override
@@ -79,4 +110,12 @@ public class StorageTypeServiceImpl extends ServiceImpl<StorageTypeMapper, Stora
 		return baseMapper.lazyTree(tenantId,parentId);
 	}
 
+	@Override
+	public List<StorageTypeVO> tree(String tenantId) {
+		if (StringUtils.isBlank(tenantId)){
+			tenantId = SecureUtil.getTenantId();
+		}
+		return ForestNodeMerger.merge(baseMapper.tree(tenantId));
+	}
+
 }