智慧保安后台管理-验收版本
Administrator
2021-11-30 ef33401f486d455a15059f2c89431df7021db0c6
枪支数据导入接口新增
2 files modified
1 files added
148 ■■■■■ changed files
src/main/java/org/springblade/modules/equipage/controller/GunController.java 82 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/equipage/vo/LiveLocationVOTest.java 64 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java 2 ●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/equipage/controller/GunController.java
@@ -8,10 +8,20 @@
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.Func;
import org.springblade.modules.FTP.FtpUtil;
import org.springblade.modules.equipage.entity.Gun;
import org.springblade.modules.equipage.service.GunService;
import org.springblade.modules.equipage.vo.GunVo;
import org.springblade.modules.equipage.vo.LiveLocationVOTest;
import org.springblade.modules.location.entity.LiveLocation;
import org.springblade.modules.location.entity.Locus;
import org.springblade.modules.location.service.LiveLocationService;
import org.springblade.modules.location.service.LocusService;
import org.springframework.web.bind.annotation.*;
import java.text.SimpleDateFormat;
import java.util.Date;
import java.util.List;
/**
 * @author zhongrj
@@ -24,6 +34,11 @@
public class GunController {
    private final GunService gunService;
    private final LiveLocationService liveLocationService;
    private final LocusService locusService;
    /**
     * 自定义分页
@@ -84,4 +99,71 @@
        return R.data(detail);
    }
    /**
     * 实时位置信息新增,同时新增到轨迹表中
     * @param locationVOTest 实时位置信息对象
     */
    @PostMapping("/saveLiveLocationAndLocusAsTest")
    @ApiOperation(value = "新增", notes = "传入liveLocation")
    public R saveLiveLocationAndLocusAsTest(@RequestBody List<LiveLocationVOTest> locationVOTest) {
        locationVOTest.forEach(liveLocationVOTest -> {
            //查询是否已有枪支数据
            Gun gun1 = new Gun();
            gun1.setCardNumber(liveLocationVOTest.getQzbh());
            Gun one = gunService.getOne(Condition.getQueryWrapper(gun1));
            //如果不存在,则新增,已存在则不新增
            if (null==one) {
                //插入枪支数据
                Gun gun = new Gun();
                gun.setCardNumber(liveLocationVOTest.getQzbh());
                gun.setGunMode(liveLocationVOTest.getQzxh());
                gun.setPersonInCharge(liveLocationVOTest.getHwy());
                gunService.save(gun);
                //插入定位数据
                LiveLocation liveLocation = new LiveLocation();
                liveLocation.setWorkerId(gun.getId());
                liveLocation.setType(3);
                liveLocation.setLongitude(liveLocationVOTest.getDwjd().toString());
                liveLocation.setLatitude(liveLocationVOTest.getDwwd().toString());
                liveLocation.setRecordTime(liveLocationVOTest.getDwsj());
//                liveLocation.setLocation(liveLocationVOTest.getQzbh());
                liveLocationService.save(liveLocation);
                //插入轨迹数据
                Locus locus = new Locus();
                locus.setLiveLocationId(liveLocation.getId());
                locus.setRecordTime(liveLocationVOTest.getDwsj());
                locus.setLongitude(liveLocationVOTest.getDwjd().toString());
                locus.setLatitude(liveLocationVOTest.getDwwd().toString());
                locusService.save(locus);
            }else {
                //查询定位信息
                LiveLocation liveLocation = new LiveLocation();
                liveLocation.setWorkerId(one.getId());
                liveLocation.setType(3);
                LiveLocation one1 = liveLocationService.getOne(Condition.getQueryWrapper(liveLocation));
                one1.setRecordTime(liveLocationVOTest.getDwsj());
                one1.setLongitude(liveLocationVOTest.getDwjd().toString());
                one1.setLatitude(liveLocationVOTest.getDwwd().toString());
                //更新
                liveLocationService.updateById(one1);
                //新增轨迹记录
                //插入轨迹数据
                Locus locus = new Locus();
                locus.setLiveLocationId(one1.getId());
                locus.setRecordTime(liveLocationVOTest.getDwsj());
                locus.setLongitude(liveLocationVOTest.getDwjd().toString());
                locus.setLatitude(liveLocationVOTest.getDwwd().toString());
                locusService.save(locus);
            }
        });
        //返回数据
        return R.status(false);
    }
}
src/main/java/org/springblade/modules/equipage/vo/LiveLocationVOTest.java
New file
@@ -0,0 +1,64 @@
package org.springblade.modules.equipage.vo;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
/**
 * 实时位置测试vo
 * @author zhongrj
 * @since 2021-11-30
 */
@Data
public class LiveLocationVOTest implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 人员编号
     */
    private String lybh;
    /**
     * 经度
     */
    private Double dwjd;
    /**
     * 定位时间
     */
    private Date dwsj;
    private String qh;
    /**
     * 枪支编号
     */
    private String qzbh;
    /**
     * 护卫人
     */
    private String hwy;
    /**
     * 枪支型号
     */
    private String qzxh;
    /**
     * 护卫人身份证编号
     */
    private String hwysfzh;
    private String szdw;
    /**
     * 纬度
     */
    private Double dwwd;
}
src/main/java/org/springblade/modules/resource/endpoint/OssEndpoint.java
@@ -320,7 +320,7 @@
        List<MultipartFile> fileList = new ArrayList<>();
        //获取图片文件
        fileList = fileUtil.getSubFiles(desPath+File.separator+namePath,fileList);
        fileList = fileUtil.getSubFiles(desPath,fileList);
        for (MultipartFile multipartFile : fileList){
            if(multipartFile.getName().toLowerCase().endsWith(".png") || multipartFile.getName().toLowerCase().endsWith(".jpg")) {
                String newName = "upload/picture/" + UUID.randomUUID().toString().replaceAll("-", "") + multipartFile.getName().substring(multipartFile.getName().lastIndexOf("."));