Administrator hace 2 años
padre
commit
e8b4862665

+ 41 - 0
src/main/java/com/sysu/admin/controller/lz/video_point/LzVideo.java

@@ -0,0 +1,41 @@
+package com.sysu.admin.controller.lz.video_point;
+
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import lombok.experimental.FieldNameConstants;
+import org.hibernate.annotations.DynamicInsert;
+import org.hibernate.annotations.DynamicUpdate;
+import javax.persistence.*;
+import java.util.Date;
+
+/**
+ * 视频
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@FieldNameConstants(innerTypeName = "FIELDS")
+@Table(name = "lz_video")
+@Entity
+@DynamicInsert
+@DynamicUpdate
+public class LzVideo {
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    private Integer id;
+
+    @Column
+    private Date createDate;
+
+    @Column
+    private String url;
+
+    /**
+     * 视频点id
+     */
+    @Column
+    private Integer pointId;
+
+}

+ 44 - 0
src/main/java/com/sysu/admin/controller/lz/video_point/LzVideoPoint.java

@@ -0,0 +1,44 @@
+package com.sysu.admin.controller.lz.video_point;
+
+import com.alibaba.fastjson.annotation.JSONField;
+import com.sysu.admin.utils.shape.GeoCastUtil;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.experimental.Accessors;
+import lombok.experimental.FieldNameConstants;
+import org.hibernate.annotations.DynamicInsert;
+import org.hibernate.annotations.DynamicUpdate;
+import org.locationtech.jts.geom.Point;
+import javax.persistence.*;
+
+/**
+ * 视频点位
+ */
+@Data
+@Accessors(chain = true)
+@EqualsAndHashCode(callSuper = false)
+@FieldNameConstants(innerTypeName = "FIELDS")
+@Table(name = "lz_video_point")
+@Entity
+@DynamicInsert
+@DynamicUpdate
+public class LzVideoPoint {
+
+    @Id
+    @GeneratedValue(strategy = GenerationType.IDENTITY)
+    private Integer id;
+
+    @JSONField(serialize = false)
+    @Column
+    private Point point;
+
+    @Transient
+    private String wkt;
+
+    public String getWkt(){
+        if(point != null)
+            wkt = GeoCastUtil.geomToWkt(point);
+        return wkt;
+    }
+
+}

+ 13 - 0
src/main/java/com/sysu/admin/controller/lz/video_point/LzVideoPointRepository.java

@@ -0,0 +1,13 @@
+package com.sysu.admin.controller.lz.video_point;
+
+import com.querydsl.core.types.Predicate;
+import com.sysu.admin.controller.lz.tree.LzTree;
+import com.xiesx.fastboot.core.jpa.JpaPlusRepository;
+import org.springframework.data.jpa.repository.Query;
+
+import java.util.List;
+
+public interface LzVideoPointRepository extends JpaPlusRepository<LzVideoPoint, Integer> {
+
+
+}

+ 18 - 0
src/main/java/com/sysu/admin/controller/lz/video_point/LzVideoPointService.java

@@ -0,0 +1,18 @@
+package com.sysu.admin.controller.lz.video_point;
+
+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 LzVideoPointService extends BaseService<LzVideoPoint, Integer> {
+
+    @Autowired
+    LzVideoPointRepository lzVideoPointRepository;
+
+    @Override
+    public JpaPlusRepository<LzVideoPoint, Integer> r() {
+        return lzVideoPointRepository;
+    }
+}

+ 11 - 0
src/main/java/com/sysu/admin/controller/lz/video_point/LzVideoRepository.java

@@ -0,0 +1,11 @@
+package com.sysu.admin.controller.lz.video_point;
+
+import com.xiesx.fastboot.core.jpa.JpaPlusRepository;
+import org.springframework.data.jpa.repository.Query;
+
+public interface LzVideoRepository extends JpaPlusRepository<LzVideo, Integer> {
+
+
+    LzVideo findTop1ByPointIdOrderByCreateDate(Integer pointId);
+
+}

+ 29 - 0
src/main/java/com/sysu/admin/controller/lz/video_point/LzVideoService.java

@@ -0,0 +1,29 @@
+package com.sysu.admin.controller.lz.video_point;
+
+import com.sysu.admin.site.CommonVo;
+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 LzVideoService extends BaseService<LzVideo, Integer> {
+
+    @Autowired
+    LzVideoRepository lzVideoRepository;
+
+    public LzVideo info(CommonVo commonVo){
+        if(commonVo.getId() != null){
+            return lzVideoRepository.findOne(commonVo.getId().intValue());
+        }
+        if(commonVo.getPointId() != null){
+            return lzVideoRepository.findTop1ByPointIdOrderByCreateDate(commonVo.getPointId());
+        }
+        throw new RuntimeException("没有任何条件");
+    }
+
+    @Override
+    public JpaPlusRepository<LzVideo, Integer> r() {
+        return lzVideoRepository;
+    }
+}

+ 5 - 1
src/main/java/com/sysu/admin/site/CommonVo.java

@@ -2,7 +2,7 @@ package com.sysu.admin.site;
 
 import lombok.Data;
 
-import javax.persistence.Column;
+
 import java.util.Date;
 
 @Data
@@ -14,6 +14,10 @@ public class CommonVo {
     private Integer[] clazzIds;
     private Integer periodId;
     private Integer[] periodIds;
+    private Integer pointId;
+    private Boolean last;
+    private String wkt;
+
     private Double x1;
     private Double y1;
     private Double x2;

+ 25 - 0
src/main/java/com/sysu/admin/site/lz/LzVideoController.java

@@ -0,0 +1,25 @@
+package com.sysu.admin.site.lz;
+
+import com.sysu.admin.controller.lz.video_point.LzVideoPointService;
+import com.sysu.admin.controller.lz.video_point.LzVideoService;
+import com.sysu.admin.site.CommonVo;
+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.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RequestMapping("/site/lz_video")
+@RestController
+public class LzVideoController {
+
+    @Autowired
+    LzVideoService lzVideoService;
+
+    @RequestMapping("info")
+    public BaseResult info(@RequestBody CommonVo commonVo){
+        return R.succ(lzVideoService.info(commonVo));
+    }
+
+}

+ 35 - 0
src/main/java/com/sysu/admin/site/lz/LzVideoPointController.java

@@ -0,0 +1,35 @@
+package com.sysu.admin.site.lz;
+
+import com.sysu.admin.controller.lz.video_point.LzVideoPoint;
+import com.sysu.admin.controller.lz.video_point.LzVideoPointService;
+import com.sysu.admin.site.CommonVo;
+import com.sysu.admin.utils.shape.GeoCastUtil;
+import com.xiesx.fastboot.base.result.BaseResult;
+import com.xiesx.fastboot.base.result.R;
+import org.locationtech.jts.geom.Point;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RequestMapping("/site/lz_video_point")
+@RestController
+public class LzVideoPointController {
+
+    @Autowired
+    LzVideoPointService lzVideoPointService;
+
+    @RequestMapping("list")
+    public BaseResult list(){
+        return R.succ(lzVideoPointService.findAll());
+    }
+
+    @RequestMapping("save")
+    public BaseResult save(@RequestBody CommonVo vo){
+        LzVideoPoint lzVideoPoint = new LzVideoPoint();
+        lzVideoPoint.setPoint((Point) GeoCastUtil.wktToGeom(vo.getWkt()));
+        lzVideoPointService.save(lzVideoPoint);
+        return R.succ();
+    }
+
+}