guoshilong
2024-03-15 cc8bf2663afaf34aef48d7bda688d95c92d83ae9
堤防普查,白蚁普查修改
6 files modified
20 files added
1193 ■■■■■ changed files
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbDykeInvestigationController.java 119 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbResDykeController.java 85 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbResGeneralInvestigationController.java 17 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbDykeInvestigation.java 221 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbDykeInvestigationState.java 82 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbResDyke.java 172 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbResGeneralInvestigation.java 12 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbDykeInvestigationMapper.java 16 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbDykeInvestigationMapper.xml 5 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbDykeInvestigationStateMapper.java 16 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbDykeInvestigationStateMapper.xml 5 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbResDykeMapper.java 15 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbResDykeMapper.xml 57 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/IAttResBaseService.java 6 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbDykeInvestigationService.java 32 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbDykeInvestigationStateService.java 15 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbResDykeService.java 17 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbResGeneralInvestigationService.java 10 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResBaseServiceImpl.java 5 ●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbDykeInvestigationServiceImpl.java 126 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbDykeInvestigationStateServiceImpl.java 25 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbResDykeServiceImpl.java 31 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbResGeneralInvestigationServiceImpl.java 63 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/vo/TbDykeInvestigationParam.java 13 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/vo/TbResDykeVO.java 16 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/vo/TbResGeneralInvestigationParam.java 12 ●●●●● patch | view | raw | blame | history
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbDykeInvestigationController.java
New file
@@ -0,0 +1,119 @@
package cn.gistack.sm.sjztmd.controller;
import cn.gistack.sm.sjztmd.entity.TbDykeInvestigation;
import cn.gistack.sm.sjztmd.service.IAttResBaseService;
import cn.gistack.sm.sjztmd.service.ITbDykeInvestigationService;
import cn.gistack.sm.sjztmd.vo.AttResBaseGeneralInvestigationVO;
import cn.gistack.sm.sjztmd.vo.TbDykeInvestigationParam;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.StringUtil;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION:
 * @USER: aix
 * @DATE: 2024/1/3 14:39
 */
@Slf4j
@Api(tags = "白蚁普查")
@RestController
@RequestMapping("/sjztmd/tbDykeInvestigation")
@AllArgsConstructor
public class TbDykeInvestigationController {
    private ITbDykeInvestigationService tbDykeInvestigationService;
    private IAttResBaseService attResBaseService;
    @ApiOperation(value = "中台水库-分页列表查询", notes = "中台水库-分页列表查询")
    @GetMapping(value = "/queryPageResList")
    public R queryPageResList(AttResBaseGeneralInvestigationVO attResBase, Query query) {
        IPage<AttResBaseGeneralInvestigationVO> pageList = attResBaseService.selectAttResBaseGeneralInvestigation(Condition.getPage(query), attResBase);
        return R.data(pageList);
    }
    @GetMapping("/list")
    @ApiOperation(value = "分页", notes = "白蚁普查分页")
    public R list(@ApiIgnore TbDykeInvestigation param, Query query) {
        QueryWrapper queryWrapper = new QueryWrapper();
        if (null != param.getCheckState())
            queryWrapper.eq("\"check_state\"", param.getCheckState());
        if (!StringUtil.isBlank(param.getDykeName()))
            queryWrapper.like("\"dyke_name\"", param.getDykeName());
        if (!StringUtil.isBlank(param.getDykeGuid()))
            queryWrapper.like("\"dyke_guid\"", param.getDykeGuid());
        if (!StringUtil.isBlank(param.getCreateUser()))
            queryWrapper.like("\"create_user\"", param.getCreateUser());
        if (null != param.getTbYear())
            queryWrapper.like("\"tb_year\"", param.getTbYear());
        if (!StringUtil.isBlank(param.getTbQuarter()))
            queryWrapper.like("\"tb_quarter\"", param.getTbQuarter());
        return R.data(tbDykeInvestigationService.page(Condition.getPage(query), queryWrapper));
    }
    @ApiOperation(value = "白蚁普查-校核接口", notes = "白蚁普查-添加或者修改")
    @PostMapping("/checkInfoByDykeGuid")
    public R checkInfoByResGuid(@RequestBody TbDykeInvestigation tbDykeInvestigation) {
        if (tbDykeInvestigation.getDykeGuid() == null || tbDykeInvestigation.getCheckState() == null) {
            return R.fail(-1,"参数不对");
        }
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.eq("\"dyke_guid\"", tbDykeInvestigation.getDykeGuid());
        List<TbDykeInvestigation> list = tbDykeInvestigationService.list(queryWrapper);
        List<TbDykeInvestigation> editList = list.stream().map(categoryEntity -> {
                categoryEntity.setCheckState(tbDykeInvestigation.getCheckState());  // 给每个categoryEntity对象的EvaluateTaskId属性设置新值
                return categoryEntity;  // 返回修改后的对象
            })
            .collect(Collectors.toList());
        return R.status(tbDykeInvestigationService.updateBatchById(editList));
    }
    @ApiOperation(value = "白蚁普查-添加或者修改", notes = "白蚁普查-添加或者修改")
    @PostMapping(value = "/submit")
    public R submit(@RequestBody TbDykeInvestigation tbDykeInvestigation) {
        if (tbDykeInvestigation.getGuid() == null) {
            tbDykeInvestigation.setCreateTime(new Date());
        }
        return tbDykeInvestigationService.saveOrUpdateBy(tbDykeInvestigation);
    }
    @ApiOperation(value = "白蚁普查-添加或者修改", notes = "白蚁普查-添加或者修改")
    @PostMapping(value = "/submitBatch")
    public R submit(@RequestBody TbDykeInvestigationParam tbResGeneralInvestigationParam) {
        return tbDykeInvestigationService.saveOrUpdateByBatch(tbResGeneralInvestigationParam);
    }
    @PostMapping("/remove")
    @ApiOperation(value = "物理删除", notes = "传入id")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String id) {
        return R.status(tbDykeInvestigationService.removeById(id));
    }
    @PostMapping("/getInvestigationListByStateId")
    @ApiOperation(value = "根据状态id获取普查集合", notes = "传入id")
    public R getInvestigationListByStateId(String stateId){
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.eq("\"tb_state_id\"",stateId);
        List<TbDykeInvestigation> list = tbDykeInvestigationService.list(queryWrapper);
        return R.data(list);
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbResDykeController.java
New file
@@ -0,0 +1,85 @@
package cn.gistack.sm.sjztmd.controller;
import cn.gistack.sm.sjztmd.entity.AttAdBase;
import cn.gistack.sm.sjztmd.entity.TbResDyke;
import cn.gistack.sm.sjztmd.service.IAttAdBaseService;
import cn.gistack.sm.sjztmd.service.ITbResDykeService;
import cn.gistack.sm.sjztmd.vo.AttAdBaseVO;
import cn.gistack.sm.sjztmd.vo.TbResDykeVO;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import lombok.AllArgsConstructor;
import lombok.extern.slf4j.Slf4j;
import org.springblade.core.boot.ctrl.BladeController;
import org.springblade.core.mp.support.Condition;
import org.springblade.core.mp.support.Query;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.node.ForestNodeMerger;
import org.springblade.core.tool.utils.ObjectUtil;
import org.springframework.web.bind.annotation.*;
import springfox.documentation.annotations.ApiIgnore;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
/**
 * @ClassName AttAdBaseController
 * @Description TODO
 * @Author aix
 * @Date 2023/4/21 20:09
 * @Version 1.0
 */
@Slf4j
@Api(tags = "堤防")
@RestController
@RequestMapping("/sjztmd/tbResDyke")
@AllArgsConstructor
public class TbResDykeController extends BladeController {
    private final ITbResDykeService tbResDykeService;
    @ApiOperation(value = "堤防-添加", notes = "堤防-添加")
    @PostMapping(value = "/save")
    public R add(TbResDyke tbResDyke) {
        return R.data(tbResDykeService.save(tbResDyke));
    }
    @ApiOperation(value = "堤防-修改", notes = "堤防-修改")
    @PostMapping(value = "/edit")
    public R edit(TbResDyke tbResDyke) {
        return R.data(tbResDykeService.updateById(tbResDyke));
    }
    @ApiOperation(value = "堤防-添加修改", notes = "堤防-添加修改")
    @PostMapping(value = "/submit")
    public R submit(TbResDyke tbResDyke) {
        return R.data(tbResDykeService.saveOrUpdate(tbResDyke));
    }
    @ApiOperation(value = "堤防-删除", notes = "堤防-删除")
    @GetMapping(value = "/remove")
    public R edit(String ids) {
        boolean b = tbResDykeService.removeBatchByIds(Arrays.asList(ids));
        return R.data(b);
    }
    @ApiOperation(value = "堤防-查询详情", notes = "堤防-查询详情")
    @GetMapping(value = "/getDetail")
    public R getDetail(TbResDyke resDyke) {
        TbResDykeVO one = tbResDykeService.getDetail(resDyke);
        return R.data(one);
    }
    @ApiOperation(value = "堤防-列表查询", notes = "堤防-分页列表查询")
    @GetMapping(value = "/list")
    public R getPage(TbResDykeVO tbResDykeVO, Query query) {
        Object list  = tbResDykeService.getList(Condition.getPage(query), tbResDykeVO);
        return R.data(list);
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbResGeneralInvestigationController.java
@@ -5,6 +5,7 @@
import cn.gistack.sm.sjztmd.service.IAttResBaseService;
import cn.gistack.sm.sjztmd.service.ITbResGeneralInvestigationService;
import cn.gistack.sm.sjztmd.vo.AttResBaseGeneralInvestigationVO;
import cn.gistack.sm.sjztmd.vo.TbResGeneralInvestigationParam;
import cn.gistack.sm.sjztmd.wrapper.AttResBaseWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
@@ -95,11 +96,27 @@
        return tbResGeneralInvestigationService.saveOrUpdateBy(tbResGeneralInvestigation);
    }
    @ApiOperation(value = "白蚁普查-添加或者修改", notes = "白蚁普查-添加或者修改")
    @PostMapping(value = "/submitBatch")
    public R submit(@RequestBody TbResGeneralInvestigationParam tbResGeneralInvestigationParam) {
        return tbResGeneralInvestigationService.saveOrUpdateByBatch(tbResGeneralInvestigationParam);
    }
    @PostMapping("/remove")
    @ApiOperation(value = "物理删除", notes = "传入id")
    public R remove(@ApiParam(value = "主键集合", required = true) @RequestParam String id) {
        return R.status(tbResGeneralInvestigationService.removeById(id));
    }
    @PostMapping("/getInvestigationListByStateId")
    @ApiOperation(value = "根据状态id获取普查集合", notes = "传入id")
    public R getInvestigationListByStateId(String stateId){
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.eq("\"tb_state_id\"",stateId);
        List<TbResGeneralInvestigation> list = tbResGeneralInvestigationService.list(queryWrapper);
        return R.data(list);
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbDykeInvestigation.java
New file
@@ -0,0 +1,221 @@
package cn.gistack.sm.sjztmd.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.handlers.FastjsonTypeHandler;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION: 堤防
 * @USER: aix
 * @DATE: 2024/1/3 14:02
 */
@Data
@TableName(value = "\"tb_dyke_investigation\"", autoResultMap = true)
@ApiModel(value = "水库堤防普查填报", description = "水库堤防普查填报")
public class TbDykeInvestigation implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "主键")
    @TableId(value = "\"guid\"", type = IdType.ASSIGN_ID)
    private String guid;
    /**
     * 填报年度
     */
    @ApiModelProperty(value = "填报年度")
    @TableField("\"tb_year\"")
    private Integer tbYear;
    /**
     * 填报季度
     */
    @ApiModelProperty(value = "填报季度")
    @TableField(value = "\"tb_quarter\"", fill = FieldFill.UPDATE)
    private String tbQuarter;
    /**
     * 是否普查完成
     */
    @ApiModelProperty(value = "是否普查完成")
    @TableField("\"is_inv_com\"")
    private Integer isInvCom;
    /**
     * 年度填报状态表id
     */
    @ApiModelProperty(value = "年度填报状态表id")
    @TableField(value = "\"tb_state_id\"", fill = FieldFill.UPDATE)
    private String tbStateId;
    /**
     * 水库编码
     */
    @ApiModelProperty(value = "水库编码")
    @TableField(value = "\"dyke_guid\"", fill = FieldFill.UPDATE)
    private String dykeGuid;
    /**
     * 水库名称
     */
    @ApiModelProperty(value = "水库名称")
    @TableField(value = "\"dyke_name\"", fill = FieldFill.UPDATE)
    private String dykeName;
    /**
     * 普查种类
     */
    @ApiModelProperty(value = "普查种类(白蚁、獾、狐、鼠等)")
    @TableField(value = "\"investigation_variety\"", fill = FieldFill.UPDATE)
    private String investigationVariety;
    /**
     * 是否蚁患
     */
    @ApiModelProperty(value = "是否蚁患")
    @TableField(value = "\"is_ant_infestation\"", fill = FieldFill.UPDATE)
    private String isAntInfestation;
    /**
     * 是否蚁源
     */
    @ApiModelProperty(value = "是否蚁源")
    @TableField(value = "\"is_ant_source\"", fill = FieldFill.UPDATE)
    private String isAntSource;
    /**
     * 部位
     */
    @ApiModelProperty(value = "部位")
    @TableField(value = "\"part_place\"", fill = FieldFill.UPDATE)
    private String partPlace;
    /**
     * 普查面积
     */
    @ApiModelProperty(value = "普查面积")
    @TableField(value = "\"investigation_area\"", fill = FieldFill.UPDATE)
    private String investigationArea;
    /**
     * 普查类型
     */
    @ApiModelProperty(value = "普查类型")
    @TableField(value = "\"investigation_type\"", fill = FieldFill.UPDATE)
    private String investigationType;
    /**
     * 普查方式
     */
    @ApiModelProperty(value = "普查方式")
    @TableField(value = "\"investigation_way\"", fill = FieldFill.UPDATE)
    private String investigationWay;
    /**
     * 危害等级
     */
    @ApiModelProperty(value = "危害等级")
    @TableField(value = "\"hazard_rating\"", fill = FieldFill.UPDATE)
    private String hazardRating;
    /**
     * 普查长度
     */
    @ApiModelProperty(value = "普查长度")
    @TableField(value = "\"investigation_length\"", fill = FieldFill.UPDATE)
    private Double investigationLength;
    /**
     * 白蚁活动迹象
     */
    @ApiModelProperty(value = "白蚁活动迹象")
    @TableField(value = "\"signs_of_termite_activity\"", fill = FieldFill.UPDATE)
    private String signsOfTermiteActivity;
    /**
     * 危害等级
     */
    @ApiModelProperty(value = "桩号")
    @TableField(value = "\"stake_mark\"", fill = FieldFill.UPDATE)
    private String stakeMark;
    /**
     * 危害等级
     */
    @ApiModelProperty(value = "是否致险情况")
    @TableField(value = "\"is_danger\"", fill = FieldFill.UPDATE)
    private String isDanger;
    /**
     * 致险情况详情
     */
    @ApiModelProperty(value = "致险情况详情")
    @TableField(value = "\"danger_info\"", fill = FieldFill.UPDATE, typeHandler = FastjsonTypeHandler.class)
    private Object dangerInfo;
    /**
     * 图片数组
     */
    @ApiModelProperty(value = "图片数组")
    @TableField(value = "\"image_urls\"", fill = FieldFill.UPDATE, typeHandler = FastjsonTypeHandler.class)
    private Object[] imageUrls;
    /**
     * 视频数组
     */
    @ApiModelProperty(value = "视频数组")
    @TableField(value = "\"video_urls\"", fill = FieldFill.UPDATE, typeHandler = FastjsonTypeHandler.class)
    private Object[] videoUrls;
    /**
     * 经度
     */
    @ApiModelProperty(value = "经度")
    @TableField(value = "\"lon\"", fill = FieldFill.UPDATE)
    private String lon;
    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    @TableField(value = "\"lat\"", fill = FieldFill.UPDATE)
    private String lat;
    /**
     * 填报状态(0:填写中,1:审核中,2:审核通过)
     */
    @ApiModelProperty(value = "填报状态(0:填写中,1:审核中,2:审核通过) ")
    @TableField("\"check_state\"")
    @JsonSerialize(using = ToStringSerializer.class)
    private Integer checkState;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间 ")
    @TableField("\"create_time\"")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    @TableField(value = "\"create_user\"", fill = FieldFill.UPDATE)
    private String createUser;
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbDykeInvestigationState.java
New file
@@ -0,0 +1,82 @@
package cn.gistack.sm.sjztmd.entity;
import com.baomidou.mybatisplus.annotation.*;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.io.Serializable;
import java.util.Date;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION: 白蚁普查
 * @USER: aix
 * @DATE: 2024/3/11 14:02
 */
@Data
@TableName(value = "\"tb_dyke_investigation_state\"", autoResultMap = true)
@ApiModel(value = "水库堤防年度普查填报状态", description = "水库堤防年度普查填报状态")
public class TbDykeInvestigationState implements Serializable {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "主键")
    @TableId(value = "\"guid\"", type = IdType.ASSIGN_ID)
    private String guid;
    /**
     * 填报年度
     */
    @ApiModelProperty(value = "填报年度")
    @TableField("\"tb_year\"")
    private Integer tbYear;
    /**
     * 填报季度
     */
    @ApiModelProperty(value = "填报季度")
    @TableField(value = "\"tb_quarter\"", fill = FieldFill.UPDATE)
    private String tbQuarter;
    /**
     * 水库编码
     */
    @ApiModelProperty(value = "水库编码")
    @TableField(value = "\"res_guid\"", fill = FieldFill.UPDATE)
    private String dykeGuid;
    /**
     * 填报状态(0填报中,1待审核,2已审核)
     */
    @ApiModelProperty(value = "填报状态(0填报中,1待审核,2已审核")
    @TableField("\"check_state\"")
    @JsonSerialize(using = ToStringSerializer.class)
    private Integer checkState;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间 ")
    @TableField("\"create_time\"")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 纬度
     */
    @ApiModelProperty(value = "纬度")
    @TableField(value = "\"create_user\"", fill = FieldFill.UPDATE)
    private String createUser;
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbResDyke.java
New file
@@ -0,0 +1,172 @@
package cn.gistack.sm.sjztmd.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;
import java.util.Date;
/**
 * 堤防表
 */
@Data
@TableName("\"tb_res_dyke\"")
public class TbResDyke {
    private static final long serialVersionUID = 1L;
    /**
     * 主键
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "主键")
    @TableField("\"guid\"")
    @TableId("\"guid\"")
    private String guid;
    /**
     * 堤段名称
     */
    @ApiModelProperty(value = "堤段名称")
    @TableField("\"name\"")
    private String name;
    /**
     * 行政区划编码
     */
    @ApiModelProperty(value = "行政区划编码")
    @TableField("\"ad_code\"")
    private String adCode;
    /**
     * 行政区划名称
     */
    @ApiModelProperty(value = "行政区划名称")
    @TableField("\"ad_name\"")
    private String adName;
    /**
     * 起点位置
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "起点位置")
    @TableField("\"start_location\"")
    private String startLocation;
    /**
     * 起点桩号
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "起点桩号")
    @TableField("\"start_stake_mark\"")
    private String startStakeMark;
    /**
     * 终点位置
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "终点位置")
    @TableField("\"end_location\"")
    private String endLocation;
    /**
     * 终点桩号
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "终点桩号")
    @TableField("\"end_stake_mark\"")
    private String endStakeMark;
    /**
     * 所在河流名称
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "所在河流名称")
    @TableField("\"rv_name\"")
    private String rvName;
    /**
     * 岸别
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "岸别")
    @TableField("\"shore_type\"")
    private String shoreType;
    /**
     * 堤防类型
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "堤防类型")
    @TableField("\"dyke_type\"")
    private String dykeType;
    /**
     * 堤防级别
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "堤防级别")
    @TableField("\"dyke_level\"")
    private String dykeLevel;
    /**
     * 堤防长度
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "堤防长度")
    @TableField("\"dyke_length\"")
    private String dyke_length;
    /**
     * 管理单位名称
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "管理单位名称")
    @TableField("\"mgr_unit_name\"")
    private String mgrUnitName;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "创建时间 ")
    @TableField("\"create_time\"")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date createTime;
    /**
     * 创建时间
     */
    @ApiModelProperty(value = "修改时间 ")
    @TableField("\"update_time\"")
    @DateTimeFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    private Date updateTime;
    /**
     * 创建人
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "创建人")
    @TableField("\"create_user\"")
    private String createUser;
    /**
     * 修改人
     */
    @JsonSerialize(using = ToStringSerializer.class)
    @ApiModelProperty(value = "修改人")
    @TableField("\"update_user\"")
    private String updateUser;
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbResGeneralInvestigation.java
@@ -131,6 +131,14 @@
    private String hazardRating;
    /**
     * 普查长度
     */
    @ApiModelProperty(value = "普查长度")
    @TableField(value = "\"investigation_length\"", fill = FieldFill.UPDATE)
    private Double investigationLength;
    /**
     * 白蚁活动迹象
     */
    @ApiModelProperty(value = "白蚁活动迹象")
@@ -163,14 +171,14 @@
     */
    @ApiModelProperty(value = "图片数组")
    @TableField(value = "\"image_urls\"", fill = FieldFill.UPDATE, typeHandler = FastjsonTypeHandler.class)
    private Object imageUrls;
    private Object[] imageUrls;
    /**
     * 视频数组
     */
    @ApiModelProperty(value = "视频数组")
    @TableField(value = "\"video_urls\"", fill = FieldFill.UPDATE, typeHandler = FastjsonTypeHandler.class)
    private Object videoUrls;
    private Object[] videoUrls;
    /**
     * 经度
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbDykeInvestigationMapper.java
New file
@@ -0,0 +1,16 @@
package cn.gistack.sm.sjztmd.mapper;
import cn.gistack.sm.sjztmd.entity.TbDykeInvestigation;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigation;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * AttResBaseMapper 接口
 *
 * @author Chill
 */
public interface TbDykeInvestigationMapper extends BaseMapper<TbDykeInvestigation> {
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbDykeInvestigationMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="cn.gistack.sm.sjztmd.mapper.TbDykeInvestigationMapper">
    <!--namespace根据自己需要创建的的mapper的路径和名称填写-->
</mapper>
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbDykeInvestigationStateMapper.java
New file
@@ -0,0 +1,16 @@
package cn.gistack.sm.sjztmd.mapper;
import cn.gistack.sm.sjztmd.entity.TbDykeInvestigationState;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigationState;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
 * AttResBaseMapper 接口
 *
 * @author Chill
 */
public interface TbDykeInvestigationStateMapper extends BaseMapper<TbDykeInvestigationState> {
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbDykeInvestigationStateMapper.xml
New file
@@ -0,0 +1,5 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="cn.gistack.sm.sjztmd.mapper.TbDykeInvestigationStateMapper">
    <!--namespace根据自己需要创建的的mapper的路径和名称填写-->
</mapper>
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbResDykeMapper.java
New file
@@ -0,0 +1,15 @@
package cn.gistack.sm.sjztmd.mapper;
import cn.gistack.sm.sjztmd.entity.TbResDyke;
import cn.gistack.sm.sjztmd.vo.TbResDykeVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import java.util.List;
public interface TbResDykeMapper extends BaseMapper<TbResDyke> {
    List<TbResDykeVO> getPage(IPage<TbResDykeVO> page, @Param("vo") TbResDykeVO tbResDykeVO);
    TbResDykeVO getDetail(@Param("vo") TbResDyke resDyke);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbResDykeMapper.xml
New file
@@ -0,0 +1,57 @@
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd" >
<mapper namespace="cn.gistack.sm.sjztmd.mapper.TbResDykeMapper">
    <!--namespace根据自己需要创建的的mapper的路径和名称填写-->
    <select id="getPage" resultType="cn.gistack.sm.sjztmd.vo.TbResDykeVO">
        SELECT
            trd.*,
            aab."p_ad_code" as pAdCode,
            aab."p_ad_name" as pAdName
        FROM SJZT_MD."tb_res_dyke" trd
        LEFT JOIN SJZT_MD."att_ad_base" aab ON aab."guid" = trd."ad_code"
        <where>
            <if test="vo.adCode != null and vo.adCode !=''">
                trd."ad_code" = #{vo.adCode}
            </if>
            <if test="vo.startLocation != null and vo.startLocation !=''">
                trd."start_location" LIKE CONCAT('%',#{vo.startLocation},'%')
            </if>
            <if test="vo.startStakeMark != null and vo.startStakeMark !=''">
                trd."start_stake_mark" LIKE CONCAT('%',#{vo.startStakeMark},'%')
            </if>
            <if test="vo.endLocation != null and vo.endLocation !=''">
                trd."end_location" LIKE CONCAT('%',#{vo.endLocation},'%')
            </if>
            <if test="vo.endStakeMark != null and vo.endStakeMark !=''">
                trd."end_stake_mark" LIKE CONCAT('%',#{vo.endStakeMark},'%')
            </if>
            <if test="vo.rvName != null and vo.rvName !=''">
                trd."rv_name" LIKE CONCAT('%',#{vo.rvName},'%')
            </if>
            <if test="vo.shoreType != null and vo.shoreType !=''">
                trd."shore_type" = #{vo.shoreType}
            </if>
            <if test="vo.dykeType != null and vo.dykeType != ''">
                trd."dyke_type" = #{vo.dykeType}
            </if>
            <if test="vo.dykeLevel != null and vo.dykeLevel !=''">
                trd."dyke_level" = #{vo.dykeLevel}
            </if>
            <if test="vo.mgrUnitName != null and vo.mgrUnitName !=''">
                trd."mgr_unit_name" LIKE CONCAT('%',#{vo.mgrUnitName},'%')
            </if>
        </where>
    </select>
    <select id="getDetail" resultType="cn.gistack.sm.sjztmd.vo.TbResDykeVO">
        SELECT
        trd.*,
        aab."p_ad_code" as pAdCode,
        aab."p_ad_name" as pAdName
        FROM SJZT_MD."tb_res_dyke" trd
        LEFT JOIN SJZT_MD."att_ad_base" aab ON aab."guid" = trd."ad_code"
        where trd."guid" = #{vo.guid}
    </select>
</mapper>
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/IAttResBaseService.java
@@ -3,10 +3,7 @@
import cn.gistack.sm.sjztmd.dto.AttResBaseUserDTO;
import cn.gistack.sm.sjztmd.entity.AttAdBase;
import cn.gistack.sm.sjztmd.entity.AttResBase;
import cn.gistack.sm.sjztmd.vo.AttAdBaseVO;
import cn.gistack.sm.sjztmd.vo.AttResAdVO;
import cn.gistack.sm.sjztmd.vo.AttResBaseGeneralInvestigationVO;
import cn.gistack.sm.sjztmd.vo.AttResBaseVO;
import cn.gistack.sm.sjztmd.vo.*;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
@@ -73,4 +70,5 @@
     * @return
     */
    AttResAdVO getResAd(String resId);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbDykeInvestigationService.java
New file
@@ -0,0 +1,32 @@
package cn.gistack.sm.sjztmd.service;
import cn.gistack.sm.sjztmd.entity.TbDykeInvestigation;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigation;
import cn.gistack.sm.sjztmd.vo.TbDykeInvestigationParam;
import cn.gistack.sm.sjztmd.vo.TbResGeneralInvestigationParam;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springblade.core.tool.api.R;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION:
 * @USER: aix
 * @DATE: 2024/1/3 14:35
 */
public interface ITbDykeInvestigationService extends IService<TbDykeInvestigation> {
    /**
     * 自定义保存或者修改对象方法
     * @param entity
     * @return
     */
    R saveOrUpdateBy(TbDykeInvestigation entity);
    /**
     * web端批量新增修改填报
     * @param list
     * @param state
     * @return
     */
    R saveOrUpdateByBatch(TbDykeInvestigationParam tbDykeInvestigationParam);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbDykeInvestigationStateService.java
New file
@@ -0,0 +1,15 @@
package cn.gistack.sm.sjztmd.service;
import cn.gistack.sm.sjztmd.entity.TbDykeInvestigationState;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigationState;
import com.baomidou.mybatisplus.extension.service.IService;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION:
 * @USER: aix
 * @DATE: 2024/3/11 14:35
 */
public interface ITbDykeInvestigationStateService extends IService<TbDykeInvestigationState> {
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbResDykeService.java
New file
@@ -0,0 +1,17 @@
package cn.gistack.sm.sjztmd.service;
import cn.gistack.sm.sjztmd.entity.TbRelResUser;
import cn.gistack.sm.sjztmd.entity.TbResDyke;
import cn.gistack.sm.sjztmd.vo.TbResDykeVO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
import java.util.List;
public interface ITbResDykeService extends IService<TbResDyke> {
    TbResDykeVO getDetail(TbResDyke resDyke);
    Object getList(IPage<TbResDykeVO> page,TbResDykeVO tbResDykeVO);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbResGeneralInvestigationService.java
@@ -1,8 +1,11 @@
package cn.gistack.sm.sjztmd.service;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigation;
import cn.gistack.sm.sjztmd.vo.TbResGeneralInvestigationParam;
import com.baomidou.mybatisplus.extension.service.IService;
import org.springblade.core.tool.api.R;
import java.util.List;
/**
 * @PROJECT_NAME: skjcmanager
@@ -19,4 +22,11 @@
     */
    R saveOrUpdateBy(TbResGeneralInvestigation entity);
    /**
     * web端批量新增修改填报
     * @param list
     * @param state
     * @return
     */
    R saveOrUpdateByBatch(TbResGeneralInvestigationParam tbResGeneralInvestigationParam);
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/AttResBaseServiceImpl.java
@@ -7,10 +7,7 @@
import cn.gistack.sm.sjztmd.mapper.AttResBaseMapper;
import cn.gistack.sm.sjztmd.service.IAttResBaseService;
import cn.gistack.sm.sjztmd.service.IRelResLabelService;
import cn.gistack.sm.sjztmd.vo.AttResAdVO;
import cn.gistack.sm.sjztmd.vo.AttResBaseGeneralInvestigationVO;
import cn.gistack.sm.sjztmd.vo.AttResBaseVO;
import cn.gistack.sm.sjztmd.vo.ManagePersonVO;
import cn.gistack.sm.sjztmd.vo.*;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbDykeInvestigationServiceImpl.java
New file
@@ -0,0 +1,126 @@
package cn.gistack.sm.sjztmd.service.impl;
import cn.gistack.sm.sjztmd.entity.TbDykeInvestigation;
import cn.gistack.sm.sjztmd.entity.TbDykeInvestigationState;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigation;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigationState;
import cn.gistack.sm.sjztmd.mapper.TbDykeInvestigationMapper;
import cn.gistack.sm.sjztmd.mapper.TbResGeneralInvestigationMapper;
import cn.gistack.sm.sjztmd.service.*;
import cn.gistack.sm.sjztmd.vo.TbDykeInvestigationParam;
import cn.gistack.sm.sjztmd.vo.TbResGeneralInvestigationParam;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION:
 * @USER: aix
 * @DATE: 2024/1/3 14:36
 */
@Service
@DS("zt")
@Transactional(rollbackFor = Exception.class)
public class TbDykeInvestigationServiceImpl extends ServiceImpl<TbDykeInvestigationMapper, TbDykeInvestigation> implements ITbDykeInvestigationService {
    @Autowired
    private ITbDykeInvestigationStateService tbDykeInvestigationStateService;
    @Override
    @Transactional
    public R saveOrUpdateBy(TbDykeInvestigation entity) {
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.eq("\"dyke_guid\"",entity.getDykeGuid());
        queryWrapper.eq("\"tb_year\"",entity.getTbYear());
//        queryWrapper.eq("\"tb_quarter\"",entity.getTbQuarter());
        TbDykeInvestigationState state = tbDykeInvestigationStateService.getOne(queryWrapper);
        if (null == state) {
            state = new TbDykeInvestigationState();
            state.setDykeGuid(entity.getDykeGuid());
            state.setTbQuarter(entity.getTbQuarter());
            state.setTbYear(entity.getTbYear());
            state.setCreateTime(entity.getCreateTime());
            state.setCreateUser(entity.getCreateUser());
        } else {
            if (state.getCheckState() == 1 || state.getCheckState() == 2) {
                return R.fail(entity.getDykeName() + "本年度已经普查完成,不能在提交了。");
            }
        }
        // 是否普查完成 1是 0否
        if (entity.getCheckState() != 0) {
            state.setCheckState(entity.getIsInvCom());
        }
        tbDykeInvestigationStateService.saveOrUpdate(state);
        entity.setTbStateId(state.getGuid());
        return R.status(this.saveOrUpdate(entity));
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R saveOrUpdateByBatch(TbDykeInvestigationParam tbDykeInvestigationParam) {
        List<TbDykeInvestigation> list = tbDykeInvestigationParam.getList();
        TbDykeInvestigation entity = list.get(0);
        //查询该水库本年度是否有填报状态记录
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.eq("\"dyke_guid\"",entity.getDykeGuid());
        queryWrapper.eq("\"tb_year\"",entity.getTbYear());
        TbDykeInvestigationState state = tbDykeInvestigationStateService.getOne(queryWrapper);
        if (null == state) {
            //无填报状态记录则新建
            state = new TbDykeInvestigationState();
            state.setDykeGuid(entity.getDykeGuid());
            state.setTbQuarter(entity.getTbQuarter());
            state.setTbYear(entity.getTbYear());
            state.setCreateTime(entity.getCreateTime());
            state.setCreateUser(entity.getCreateUser());
        } else {
            //查看填报状态,只有0填报中才可以一直填报
            if (state.getCheckState() == 1 || state.getCheckState() == 2) {
                return R.fail(entity.getDykeName() + "本年度已经普查完成,不能在提交了。");
            }
        }
        state.setCheckState(tbDykeInvestigationParam.getCheckState());
        tbDykeInvestigationStateService.saveOrUpdate(state);
        //先把数据移除
        QueryWrapper delete = new QueryWrapper();
        delete.eq("\"tb_state_id\"",state.getGuid());
        boolean remove = remove(delete);
        if (remove){
            for (int i = 0; i < list.size(); i++) {
                TbDykeInvestigation tbDykeInvestigation = list.get(i);
                //id清空方便批量新增
                tbDykeInvestigation.setGuid("");
                if (tbDykeInvestigation.getCreateTime() == null){
                    tbDykeInvestigation.setCreateTime(DateUtil.now());
                }
                if (tbDykeInvestigation.getCreateUser() == null){
                    tbDykeInvestigation.setCreateUser(AuthUtil.getUserId().toString());
                }
                //设置状态表id
                tbDykeInvestigation.setTbStateId(state.getGuid());
            }
            return R.status(saveOrUpdateBatch(list));
        }
        return R.fail("操作失败");
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbDykeInvestigationStateServiceImpl.java
New file
@@ -0,0 +1,25 @@
package cn.gistack.sm.sjztmd.service.impl;
import cn.gistack.sm.sjztmd.entity.TbDykeInvestigationState;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigationState;
import cn.gistack.sm.sjztmd.mapper.TbDykeInvestigationStateMapper;
import cn.gistack.sm.sjztmd.mapper.TbResGeneralInvestigationStateMapper;
import cn.gistack.sm.sjztmd.service.ITbDykeInvestigationStateService;
import cn.gistack.sm.sjztmd.service.ITbResGeneralInvestigationStateService;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
/**
 * @PROJECT_NAME: skjcmanager
 * @DESCRIPTION:
 * @USER: aix
 * @DATE: 2024/3/11 14:36
 */
@Service
@DS("zt")
@Transactional(rollbackFor = Exception.class)
public class TbDykeInvestigationStateServiceImpl extends ServiceImpl<TbDykeInvestigationStateMapper, TbDykeInvestigationState> implements ITbDykeInvestigationStateService {
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbResDykeServiceImpl.java
New file
@@ -0,0 +1,31 @@
package cn.gistack.sm.sjztmd.service.impl;
import cn.gistack.sm.sjztmd.entity.TbResDyke;
import cn.gistack.sm.sjztmd.mapper.TbResDykeMapper;
import cn.gistack.sm.sjztmd.service.ITbResDykeService;
import cn.gistack.sm.sjztmd.vo.TbResDykeVO;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import lombok.Data;
import org.springframework.stereotype.Service;
import java.util.List;
@Data
@Service
public class TbResDykeServiceImpl extends ServiceImpl<TbResDykeMapper, TbResDyke> implements ITbResDykeService {
    @Override
    public TbResDykeVO getDetail(TbResDyke resDyke) {
        return baseMapper.getDetail(resDyke);
    }
    @Override
    public Object getList(IPage<TbResDykeVO> page, TbResDykeVO tbResDykeVO) {
        if (tbResDykeVO.getIsPage()){
            return page.setRecords(baseMapper.getPage(page,tbResDykeVO));
        }else {
            return baseMapper.getPage(null,tbResDykeVO);
        }
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbResGeneralInvestigationServiceImpl.java
@@ -5,13 +5,18 @@
import cn.gistack.sm.sjztmd.mapper.TbResGeneralInvestigationMapper;
import cn.gistack.sm.sjztmd.service.ITbResGeneralInvestigationService;
import cn.gistack.sm.sjztmd.service.ITbResGeneralInvestigationStateService;
import cn.gistack.sm.sjztmd.vo.TbResGeneralInvestigationParam;
import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.api.R;
import org.springblade.core.tool.utils.DateUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
/**
 * @PROJECT_NAME: skjcmanager
@@ -34,7 +39,7 @@
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.eq("\"res_guid\"",entity.getResGuid());
        queryWrapper.eq("\"tb_year\"",entity.getTbYear());
        queryWrapper.eq("\"tb_quarter\"",entity.getTbQuarter());
//        queryWrapper.eq("\"tb_quarter\"",entity.getTbQuarter());
        TbResGeneralInvestigationState state = tbResGeneralInvestigationStateService.getOne(queryWrapper);
        if (null == state) {
            state = new TbResGeneralInvestigationState();
@@ -59,4 +64,60 @@
        entity.setTbStateId(state.getGuid());
        return R.status(this.saveOrUpdate(entity));
    }
    @Override
    @Transactional(rollbackFor = Exception.class)
    public R saveOrUpdateByBatch(TbResGeneralInvestigationParam tbResGeneralInvestigationParam) {
        List<TbResGeneralInvestigation> list = tbResGeneralInvestigationParam.getList();
        TbResGeneralInvestigation entity = list.get(0);
        //查询该水库本年度是否有填报状态记录
        QueryWrapper queryWrapper = new QueryWrapper();
        queryWrapper.eq("\"res_guid\"",entity.getResGuid());
        queryWrapper.eq("\"tb_year\"",entity.getTbYear());
        TbResGeneralInvestigationState state = tbResGeneralInvestigationStateService.getOne(queryWrapper);
        if (null == state) {
            //无填报状态记录则新建
            state = new TbResGeneralInvestigationState();
            state.setResGuid(entity.getResGuid());
            state.setTbQuarter(entity.getTbQuarter());
            state.setTbYear(entity.getTbYear());
            state.setCreateTime(entity.getCreateTime());
            state.setCreateUser(entity.getCreateUser());
        } else {
            //查看填报状态,只有0填报中才可以一直填报
            if (state.getCheckState() == 1 || state.getCheckState() == 2) {
                return R.fail(entity.getResName() + "本年度已经普查完成,不能在提交了。");
            }
        }
        state.setCheckState(tbResGeneralInvestigationParam.getCheckState());
        tbResGeneralInvestigationStateService.saveOrUpdate(state);
        //先把数据移除
        QueryWrapper delete = new QueryWrapper();
        delete.eq("\"tb_state_id\"",state.getGuid());
        boolean remove = remove(delete);
        if (remove){
            for (int i = 0; i < list.size(); i++) {
                TbResGeneralInvestigation tbResGeneralInvestigation = list.get(i);
                //id清空方便批量新增
                tbResGeneralInvestigation.setGuid("");
                if (tbResGeneralInvestigation.getCreateTime() == null){
                    tbResGeneralInvestigation.setCreateTime(DateUtil.now());
                }
                if (tbResGeneralInvestigation.getCreateUser() == null){
                    tbResGeneralInvestigation.setCreateUser(AuthUtil.getUserId().toString());
                }
                //设置状态表id
                tbResGeneralInvestigation.setTbStateId(state.getGuid());
            }
            return R.status(saveOrUpdateBatch(list));
        }
        return R.fail("操作失败");
    }
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/vo/TbDykeInvestigationParam.java
New file
@@ -0,0 +1,13 @@
package cn.gistack.sm.sjztmd.vo;
import cn.gistack.sm.sjztmd.entity.TbDykeInvestigation;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigation;
import lombok.Data;
import java.util.List;
@Data
public class TbDykeInvestigationParam {
    private List<TbDykeInvestigation> list;
    private Integer checkState;
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/vo/TbResDykeVO.java
New file
@@ -0,0 +1,16 @@
package cn.gistack.sm.sjztmd.vo;
import cn.gistack.sm.sjztmd.entity.TbResDyke;
import lombok.Data;
@Data
public class TbResDykeVO extends TbResDyke {
    private String pAdCode;
    private String pAdName;
    private Boolean isPage;
}
skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/vo/TbResGeneralInvestigationParam.java
New file
@@ -0,0 +1,12 @@
package cn.gistack.sm.sjztmd.vo;
import cn.gistack.sm.sjztmd.entity.TbResGeneralInvestigation;
import lombok.Data;
import java.util.List;
@Data
public class TbResGeneralInvestigationParam {
    private List<TbResGeneralInvestigation> list;
    private Integer checkState;
}