Bladeren bron

产品管理

huangxiao 1 maand geleden
bovenliggende
commit
b52070b929

+ 1 - 1
src/main/java/net/mingsoft/tf/biz/impl/EnterpriseBizImpl.java

@@ -34,7 +34,7 @@ public class EnterpriseBizImpl extends BaseBizImpl<IEnterpriseDao, EnterpriseEnt
     public List<EnterpriseEntity> queryByName(String name) {
         return enterpriseDao.selectList(new LambdaQueryWrapper<>(EnterpriseEntity.class)
                 .like(EnterpriseEntity::getEnterpriseName, name)
-                .isNotNull(EnterpriseEntity::getEnterpriseBooth)
+                // .isNotNull(EnterpriseEntity::getEnterpriseBooth)
         );
     }
 }

+ 1 - 1
src/main/java/net/mingsoft/tf/www/BrowseAction.java

@@ -14,7 +14,7 @@ public class BrowseAction {
     /**
      * 记录访问量
      */
-    @PostMapping(value = "/list")
+    @PostMapping(value = "/visits")
     @ResponseBody
     public ResultData visits(@RequestBody BrowseRecordsEntity browseRecords) {
         // TODO 记录访问量和访问历史,起线程

+ 20 - 3
src/main/java/net/mingsoft/tf/www/EnterpriseAction.java

@@ -1,20 +1,31 @@
 package net.mingsoft.tf.www;
 
+import cn.hutool.core.util.StrUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.Parameters;
 import io.swagger.v3.oas.annotations.enums.ParameterIn;
 import jakarta.annotation.Resource;
 import net.mingsoft.base.entity.ResultData;
+import net.mingsoft.basic.bean.EUListBean;
+import net.mingsoft.basic.util.BasicUtil;
+import net.mingsoft.tf.biz.IEnterpriseBiz;
 import net.mingsoft.tf.entity.EnterpriseEntity;
+import net.mingsoft.tf.www.dto.EnterpriseListRequest;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.List;
+
 @Controller
 @RequestMapping("/tf/enterprise")
 public class EnterpriseAction {
     @Resource
     private net.mingsoft.tf.action.EnterpriseAction action;
+    @Autowired
+    private IEnterpriseBiz enterpriseBiz;
 
     /**
      * 查询企业管理列表
@@ -34,9 +45,15 @@ public class EnterpriseAction {
     })
     @PostMapping(value = "/list")
     @ResponseBody
-    public ResultData list(@RequestBody EnterpriseEntity enterprise) {
-        // TODO 可以用楼屋搜索
-        return action.list(enterprise);
+    public ResultData list(@RequestBody EnterpriseListRequest enterprise) {
+        BasicUtil.startPage();
+        LambdaQueryWrapper<EnterpriseEntity> wrapper = new LambdaQueryWrapper<>(enterprise);
+        if (StrUtil.isNotBlank(enterprise.getFloor())) {
+            wrapper = wrapper.like(EnterpriseEntity::getEnterpriseBooth, enterprise.getFloor());
+        }
+        wrapper = wrapper.orderByDesc(EnterpriseEntity::getCreateDate);
+        List<EnterpriseEntity> enterpriseList = enterpriseBiz.list(wrapper);
+        return ResultData.build().success(new EUListBean(enterpriseList, (int) BasicUtil.endPage(enterpriseList).getTotal()));
     }
 
     /**

+ 37 - 2
src/main/java/net/mingsoft/tf/www/EnterpriseProductsAction.java

@@ -1,20 +1,38 @@
 package net.mingsoft.tf.www;
 
+import cn.hutool.core.bean.BeanUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import io.swagger.v3.oas.annotations.Operation;
 import io.swagger.v3.oas.annotations.Parameter;
 import io.swagger.v3.oas.annotations.Parameters;
 import io.swagger.v3.oas.annotations.enums.ParameterIn;
 import jakarta.annotation.Resource;
 import net.mingsoft.base.entity.ResultData;
+import net.mingsoft.basic.bean.EUListBean;
+import net.mingsoft.basic.util.BasicUtil;
+import net.mingsoft.tf.biz.IEnterpriseBiz;
+import net.mingsoft.tf.biz.IEnterpriseProductsBiz;
+import net.mingsoft.tf.entity.EnterpriseEntity;
 import net.mingsoft.tf.entity.EnterpriseProductsEntity;
+import net.mingsoft.tf.www.dto.EnterpriseProductsListResponse;
+import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Controller;
 import org.springframework.web.bind.annotation.*;
 
+import java.util.List;
+import java.util.Map;
+import java.util.function.Function;
+import java.util.stream.Collectors;
+
 @Controller()
 @RequestMapping("/tf/enterpriseProducts")
 public class EnterpriseProductsAction {
     @Resource
     private net.mingsoft.tf.action.EnterpriseProductsAction action;
+    @Autowired
+    private IEnterpriseProductsBiz enterpriseProductsBiz;
+    @Autowired
+    private IEnterpriseBiz enterpriseBiz;
 
     /**
      * 查询企业产品列表
@@ -36,8 +54,25 @@ public class EnterpriseProductsAction {
     @PostMapping(value = "/list")
     @ResponseBody
     public ResultData list(@RequestBody EnterpriseProductsEntity enterpriseProducts) {
-        // TODO 要有企业名和logo
-        return action.list(enterpriseProducts);
+        BasicUtil.startPage();
+        LambdaQueryWrapper<EnterpriseProductsEntity> wrapper = new LambdaQueryWrapper<>(enterpriseProducts).orderByDesc(EnterpriseProductsEntity::getCreateDate);
+        List<EnterpriseProductsEntity> enterpriseProductsList = enterpriseProductsBiz.list(wrapper);
+        // 2. 批量查询关联企业信息
+        Map<String, EnterpriseEntity> enterpriseMap = enterpriseBiz.listByIds(
+                enterpriseProductsList.stream().map(EnterpriseProductsEntity::getProductEnterpriseId).collect(Collectors.toList())
+        ).stream().collect(Collectors.toMap(EnterpriseEntity::getId, Function.identity()));
+        // 3. 组合数据到Response对象
+        List<EnterpriseProductsListResponse> responses = enterpriseProductsList.stream().map(p -> {
+            EnterpriseProductsListResponse res = new EnterpriseProductsListResponse();
+            BeanUtil.copyProperties(p, res);
+            EnterpriseEntity e = enterpriseMap.get(p.getProductEnterpriseId());
+            if (e != null) {
+                res.setEnterpriseName(e.getEnterpriseName());
+                res.setEnterpriseLogo(e.getEnterpriseLogo());
+            }
+            return res;
+        }).collect(Collectors.toList());
+        return ResultData.build().success(new EUListBean(responses, (int) BasicUtil.endPage(enterpriseProductsList).getTotal()));
     }
 
     /**

+ 14 - 0
src/main/java/net/mingsoft/tf/www/dto/EnterpriseListRequest.java

@@ -0,0 +1,14 @@
+package net.mingsoft.tf.www.dto;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import net.mingsoft.tf.entity.EnterpriseEntity;
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class EnterpriseListRequest extends EnterpriseEntity {
+    /**
+     * 楼层
+     */
+    private String floor;
+}

+ 12 - 0
src/main/java/net/mingsoft/tf/www/dto/EnterpriseProductsListResponse.java

@@ -0,0 +1,12 @@
+package net.mingsoft.tf.www.dto;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import net.mingsoft.tf.entity.EnterpriseProductsEntity;
+
+@Data
+@EqualsAndHashCode(callSuper = true)
+public class EnterpriseProductsListResponse extends EnterpriseProductsEntity {
+    private String enterpriseName;
+    private String enterpriseLogo;
+}