Administrator 2 lat temu
rodzic
commit
ddbff824ca

+ 3 - 1
src/main/java/com/sysu/admin/controller/lz/clazz/LzClazz.java

@@ -25,7 +25,9 @@ public class LzClazz {
     @Column
     private String name;
 
-
     @Column
     private String code;
+
+    @Column
+    private String color;
 }

+ 18 - 0
src/main/java/com/sysu/admin/controller/lz/period/LzPeriodService.java

@@ -0,0 +1,18 @@
+package com.sysu.admin.controller.lz.period;
+
+import com.sysu.admin.support.base.BaseService;
+import com.xiesx.fastboot.core.jpa.JpaPlusRepository;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+@Service
+public class LzPeriodService extends BaseService<LzPeriod, Integer> {
+
+    @Autowired
+    private LzPeriodRepository lzPeriodRepository;
+
+    @Override
+    public JpaPlusRepository<LzPeriod, Integer> r() {
+        return lzPeriodRepository;
+    }
+}

+ 3 - 2
src/main/java/com/sysu/admin/controller/lz/tree/LzTreeRepository.java

@@ -1,5 +1,6 @@
 package com.sysu.admin.controller.lz.tree;
 
+import com.querydsl.core.types.Predicate;
 import com.sysu.admin.controller.aland.Land;
 import com.sysu.admin.controller.lz.period.LzPeriod;
 import com.xiesx.fastboot.core.jpa.JpaPlusRepository;
@@ -14,7 +15,7 @@ public interface LzTreeRepository extends JpaPlusRepository<LzTree, Integer> {
      @Query(value = "SELECT * FROM lz_tree where St_within(point, ST_Buffer(st_geomfromtext(?1),?2, 'quad_segs=8')) limit 1", nativeQuery = true)
      LzTree findByPoint(String wkt, Double m);
 
-     @Query(value = "SELECT a, b FROM LzTree a JOIN FETCH a.lzEveryday b")
-     List<LzTree> findAllByShow();
+     @Query(value = "SELECT a, b, c FROM LzTree a JOIN FETCH a.lzEveryday b JOIN FETCH a.clazz c")
+     List<LzTree> findAll(Predicate predicate);
 
 }

+ 21 - 2
src/main/java/com/sysu/admin/controller/lz/tree/LzTreeService.java

@@ -1,12 +1,20 @@
 package com.sysu.admin.controller.lz.tree;
 
+import com.querydsl.core.types.Predicate;
+import com.querydsl.core.types.Projections;
+import com.querydsl.core.types.QBean;
+import com.querydsl.jpa.impl.JPAQuery;
 import com.sysu.admin.controller.lz.area.LzArea;
 import com.sysu.admin.controller.lz.area.LzAreaRepository;
+import com.sysu.admin.site.CommonVo;
 import com.sysu.admin.support.base.BaseService;
+import com.sysu.admin.support.system.user.User;
 import com.xiesx.fastboot.core.jpa.JpaPlusRepository;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import javax.persistence.Query;
+import javax.persistence.criteria.*;
 import java.util.List;
 
 @Service
@@ -15,8 +23,19 @@ public class LzTreeService extends BaseService<LzTree, Integer> {
     @Autowired
     LzTreeRepository lzTreeRepository;
 
-    public List<LzTree> findAllByShow(){
-        return lzTreeRepository.findAllByShow();
+    public List<LzTree> findAll(CommonVo vo){
+        String filter = " where 1=1 ";
+        if(vo != null){
+            if(vo.getClazzId() != null){
+                filter += " and c.id = " + vo.getClazzId();
+            }
+            if(vo.getPeriodId() != null){
+                filter += " and b.lzPeriod.id = " + vo.getPeriodId();
+            }
+        }
+        String sql = "SELECT a, b, c FROM LzTree a JOIN FETCH a.lzEveryday b JOIN FETCH a.clazz c";
+        Query query = mEntityManager.createQuery(sql + filter);
+        return query.getResultList();
     }
 
     public LzTree findByCode(String code){

+ 2 - 0
src/main/java/com/sysu/admin/site/CommonVo.java

@@ -10,6 +10,8 @@ public class CommonVo {
     private Long id;
     private String code;
     private Integer level;
+    private Integer clazzId;
+    private Integer periodId;
     private Double x1;
     private Double y1;
     private Double x2;

+ 1 - 0
src/main/java/com/sysu/admin/site/lz/LzEverydayController.java

@@ -35,6 +35,7 @@ public class LzEverydayController {
     LzEverydayService everydayService;
     @Autowired
     LzEverydayImgService lzEverydayImgService;
+
     /**
      * 把base64转化为文件.
      * @param base64   base64

+ 22 - 0
src/main/java/com/sysu/admin/site/lz/LzPeriodController.java

@@ -0,0 +1,22 @@
+package com.sysu.admin.site.lz;
+
+import com.sysu.admin.controller.lz.period.LzPeriodService;
+import com.xiesx.fastboot.base.result.BaseResult;
+import com.xiesx.fastboot.base.result.R;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RestController
+@RequestMapping("/site/lz_period")
+public class LzPeriodController {
+
+    @Autowired
+    LzPeriodService lzPeriodService;
+
+    @RequestMapping("/list")
+    public BaseResult list(){
+        return R.succ(lzPeriodService.findAll());
+    }
+
+}

+ 2 - 4
src/main/java/com/sysu/admin/site/lz/LzTreeController.java

@@ -10,12 +10,10 @@ import com.sysu.admin.controller.lz.period.WarningCondition;
 import com.sysu.admin.controller.lz.tree.LzTree;
 import com.sysu.admin.controller.lz.tree.LzTreeService;
 import com.sysu.admin.site.CommonVo;
-import com.sysu.admin.utils.MySimpleDateFormat;
 import com.sysu.admin.utils.shape.GeoCastUtil;
 import com.xiesx.fastboot.base.result.BaseResult;
 import com.xiesx.fastboot.base.result.R;
 import com.xiesx.fastboot.utils.DateUtils;
-import org.locationtech.jts.geom.MultiPolygon;
 import org.locationtech.jts.geom.Point;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.web.bind.annotation.RequestBody;
@@ -41,8 +39,8 @@ public class LzTreeController {
     private LzEverydayService everydayService;
 
     @RequestMapping("/list")
-    public BaseResult list(){
-        List<LzTree> list = lzTreeService.findAllByShow();
+    public BaseResult list(@RequestBody(required = false) CommonVo commonVo){
+        List<LzTree> list = lzTreeService.findAll(commonVo);
         List<LzTree> res = new ArrayList<>();
         int i=0;
         for(LzTree lzTree : list){