linwe
2024-06-14 60d52f83688b0eb5b2c8bff6752a0370111a275d
同步数据,并且设置好网格及警格
6 files modified
178 ■■■■■ changed files
src/main/java/org/springblade/modules/eCallEventTwo/entity/ECallEventTwoEntity.java 13 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/eCallEventTwo/mapper/EcCallEventTwoMapper.java 12 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/eCallEventTwo/mapper/EcCallEventTwoMapper.xml 91 ●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcCallEventTwoServiceImpl.java 13 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcOrderServiceImpl.java 39 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/eCallEventTwo/vo/ECallEventTwoVO.java 10 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/eCallEventTwo/entity/ECallEventTwoEntity.java
@@ -284,4 +284,17 @@
    @TableField(value = "update_time",fill = FieldFill.UPDATE)
    private Date updateTime;
    /**
     * 网格编号
     */
    @ApiModelProperty(value = "网格编号")
    @TableField("grid_code")
    private String gridCode;
    /**
     * 警务网格编号
     */
    @ApiModelProperty(value = "警务网格编号")
    @TableField("jw_grid_code")
    private String jwGridCode;
}
src/main/java/org/springblade/modules/eCallEventTwo/mapper/EcCallEventTwoMapper.java
@@ -16,11 +16,13 @@
 */
package org.springblade.modules.eCallEventTwo.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import org.apache.ibatis.annotations.Param;
import org.springblade.modules.eCallEventTwo.dto.ECallEventTwoDTO;
import org.springblade.modules.eCallEventTwo.entity.ECallEventTwoEntity;
import org.springblade.modules.eCallEventTwo.vo.ECallEventTwoVO;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import java.util.List;
/**
@@ -38,7 +40,11 @@
     * @param eCallEventTwo
     * @return
     */
    List<ECallEventTwoVO> selectECallEventTwoPage(IPage page, ECallEventTwoVO eCallEventTwo);
    List<ECallEventTwoVO> selectECallEventTwoPage(IPage page,
                                                  @Param("eCallEventTwo") ECallEventTwoVO eCallEventTwo,
                                                  @Param("gridCodeList") List<String> gridCodeList,
                                                  @Param("regionChildCodesList") List<String> regionChildCodesList,
                                                  @Param("isAdministrator") Integer isAdministrator);
src/main/java/org/springblade/modules/eCallEventTwo/mapper/EcCallEventTwoMapper.xml
@@ -8,7 +8,7 @@
    <select id="selectECallEventTwoPage" resultMap="eCallEventTwoResultMap">
        select * from jczz_e_call_event_two
        select jecet.* from jczz_e_call_event_two jecet
        <where>
            <if test="eCallEventTwo.orderId != null "> and order_id = #{eCallEventTwo.orderId}</if>
            <if test="eCallEventTwo.orderCode != null  and eCallEventTwo.orderCode != ''"> and order_code like concat('%',#{eCallEventTwo.orderCode},'%') </if>
@@ -44,16 +44,85 @@
            <if test="eCallEventTwo.directFeed != null  and eCallEventTwo.directFeed != ''"> and direct_feed = #{eCallEventTwo.directFeed}</if>
            <if test="eCallEventTwo.directFeedHandler != null  and eCallEventTwo.directFeedHandler != ''"> and direct_feed_handler = #{eCallEventTwo.directFeedHandler}</if>
            <if test="eCallEventTwo.directFeedTime != null "> and direct_feed_time = #{eCallEventTwo.directFeedTime}</if>
            <if test="eCallEventTwo.images != null  and eCallEventTwo.images != ''"> and images = #{eCallEventTwo.images}</if>
            <if test="eCallEventTwo.status != null  and eCallEventTwo.status != ''"> and status = #{eCallEventTwo.status}</if>
            <if test="eCallEventTwo.tagApply != null  and eCallEventTwo.tagApply != ''"> and tag_apply = #{eCallEventTwo.tagApply}</if>
            <if test="eCallEventTwo.tagDelay != null  and eCallEventTwo.tagDelay != ''"> and tag_delay = #{eCallEventTwo.tagDelay}</if>
            <if test="eCallEventTwo.tagDoing != null  and eCallEventTwo.tagDoing != ''"> and tag_doing = #{eCallEventTwo.tagDoing}</if>
            <if test="eCallEventTwo.tagResp != null  and eCallEventTwo.tagResp != ''"> and tag_resp = #{eCallEventTwo.tagResp}</if>
            <if test="eCallEventTwo.tagDone != null  and eCallEventTwo.tagDone != ''"> and tag_done = #{eCallEventTwo.tagDone}</if>
            <if test="eCallEventTwo.tagCheck != null  and eCallEventTwo.tagCheck != ''"> and tag_check = #{eCallEventTwo.tagCheck}</if>
            <if test="eCallEventTwo.tagChkTel != null  and eCallEventTwo.tagChkTel != ''"> and tag_chk_tel = #{eCallEventTwo.tagChkTel}</if>
            <if test="eCallEventTwo.tagRedo != null  and eCallEventTwo.tagRedo != ''"> and tag_redo = #{eCallEventTwo.tagRedo}</if>
            <if test="eCallEventTwo.images != null  and eCallEventTwo.images != ''">and images =
                #{eCallEventTwo.images}
            </if>
            <if test="eCallEventTwo.status != null  and eCallEventTwo.status != ''">and status =
                #{eCallEventTwo.status}
            </if>
            <if test="eCallEventTwo.tagApply != null  and eCallEventTwo.tagApply != ''">and tag_apply =
                #{eCallEventTwo.tagApply}
            </if>
            <if test="eCallEventTwo.tagDelay != null  and eCallEventTwo.tagDelay != ''">and tag_delay =
                #{eCallEventTwo.tagDelay}
            </if>
            <if test="eCallEventTwo.tagDoing != null  and eCallEventTwo.tagDoing != ''">and tag_doing =
                #{eCallEventTwo.tagDoing}
            </if>
            <if test="eCallEventTwo.tagResp != null  and eCallEventTwo.tagResp != ''">and tag_resp =
                #{eCallEventTwo.tagResp}
            </if>
            <if test="eCallEventTwo.tagDone != null  and eCallEventTwo.tagDone != ''">and tag_done =
                #{eCallEventTwo.tagDone}
            </if>
            <if test="eCallEventTwo.tagCheck != null  and eCallEventTwo.tagCheck != ''">and tag_check =
                #{eCallEventTwo.tagCheck}
            </if>
            <if test="eCallEventTwo.tagChkTel != null  and eCallEventTwo.tagChkTel != ''">and tag_chk_tel =
                #{eCallEventTwo.tagChkTel}
            </if>
            <if test="eCallEventTwo.tagRedo != null  and eCallEventTwo.tagRedo != ''">and tag_redo =
                #{eCallEventTwo.tagRedo}
            </if>
            <if test="isAdministrator==2">
                <choose>
                    <when test="eCallEventTwo.roleName != null and eCallEventTwo.roleName != ''">
                        <if test="eCallEventTwo.roleName=='wgy'">
                            <choose>
                                <when test="gridCodeList !=null and gridCodeList.size()>0">
                                    and jecet.grid_code in
                                    <foreach collection="gridCodeList" item="code" open="(" close=")" separator=",">
                                        #{code}
                                    </foreach>
                                </when>
                                <otherwise>
                                    and jecet.grid_code in ('')
                                </otherwise>
                            </choose>
                        </if>
                        <if test="eCallEventTwo.roleName=='mj'">
                            <choose>
                                <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
                                    and jecet.jw_grid_code in
                                    <foreach collection="regionChildCodesList" item="code" open="(" close=")"
                                             separator=",">
                                        #{code}
                                    </foreach>
                                </when>
                                <otherwise>
                                    and jecet.jw_grid_code in ('')
                                </otherwise>
                            </choose>
                        </if>
                    </when>
                    <otherwise>
                        <choose>
                            <when test="regionChildCodesList !=null and regionChildCodesList.size()>0">
                                and
                                (
                                jecet.grid_code in
                                <foreach collection="regionChildCodesList" item="code" open="(" close=")" separator=",">
                                    #{code}
                                </foreach>
                                )
                            </when>
                            <otherwise>
                                and  ( jecet.grid_code in ('')  )
                            </otherwise>
                        </choose>
                    </otherwise>
                </choose>
            </if>
        </where>
        order by order_id desc
    </select>
src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcCallEventTwoServiceImpl.java
@@ -19,6 +19,7 @@
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springblade.common.param.CommonParamSet;
import org.springblade.common.param.GridSet;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.modules.eCallEventTwo.dto.ECallEventTwoDTO;
@@ -49,7 +50,17 @@
    @Override
    public IPage<ECallEventTwoVO> selectECallEventTwoPage(IPage<ECallEventTwoVO> page, ECallEventTwoVO eCallEventTwo) {
        List<ECallEventTwoVO> eCallEventTwoVOS = baseMapper.selectECallEventTwoPage(page, eCallEventTwo);
        // 公共参数设置
        CommonParamSet commonParamSet = new CommonParamSet().invoke(ECallEventTwoVO.class, eCallEventTwo);
        // 返回
        List<ECallEventTwoVO> eCallEventTwoVOS = baseMapper.selectECallEventTwoPage(page,
            eCallEventTwo,
            commonParamSet.getGridCodeList(),
            commonParamSet.getRegionChildCodesList(),
            commonParamSet.getIsAdministrator());
        return page.setRecords(eCallEventTwoVOS);
    }
src/main/java/org/springblade/modules/eCallEventTwo/service/impl/EcOrderServiceImpl.java
@@ -8,6 +8,7 @@
import org.jetbrains.annotations.NotNull;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springblade.common.utils.SpringUtils;
import org.springblade.core.tool.utils.BeanUtil;
import org.springblade.modules.eCallEventTwo.dto.*;
import org.springblade.modules.eCallEventTwo.entity.ECallEventTwoEntity;
@@ -15,6 +16,10 @@
import org.springblade.modules.eCallEventTwo.mapper.EcOrderMapper;
import org.springblade.modules.eCallEventTwo.service.EcOrderService;
import org.springblade.modules.eCallEventTwo.service.IECallEventTwoService;
import org.springblade.modules.grid.entity.GridEntity;
import org.springblade.modules.grid.service.IGridService;
import org.springblade.modules.police.entity.PoliceAffairsGridEntity;
import org.springblade.modules.police.service.IPoliceAffairsGridService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
@@ -121,13 +126,45 @@
            IPage<EcOrder> resultPage = baseMapper.selectPage(page, objectQueryWrapper);
            List<EcOrder> records = resultPage.getRecords();
            List<ECallEventTwoEntity> recordEntityList = BeanUtil.copy(records, ECallEventTwoEntity.class);
            boolean b = ecOrderService.saveOrUpdateBatch(recordEntityList);
            recordEntityList.forEach(ecOrderEntity -> {
                // 点落面 设置警格网格信息
                setGridInfo(ecOrderEntity);
            });
            boolean b = ecOrderService.saveBatch(recordEntityList);
            System.out.println("更新第" + pageNum + "页" + b);
        }
    }
    /**
     * 设置警格网格信息
     *
     * @param ecOrderEntity
     */
    public void setGridInfo(ECallEventTwoEntity ecOrderEntity) {
        if (ecOrderEntity.getSceneGeoLng() == null || ecOrderEntity.getSceneGeoLat() == null) {
            return;
        }
        // 根据位置设置网格,警格编号
        IGridService gridService = SpringUtils.getBean(IGridService.class);
        IPoliceAffairsGridService policeAffairsGridService = SpringUtils.getBean(IPoliceAffairsGridService.class);
        String point = "'POINT(" + ecOrderEntity.getSceneGeoLng().toString() + " " + ecOrderEntity.getSceneGeoLat().toString() + ")'";
        // 点坐标解析网格
        List<GridEntity> gridEntityList = gridService.spatialAnalysis(point);
        if (gridEntityList.size() > 0) {
            GridEntity gridEntity = gridEntityList.get(0);
            ecOrderEntity.setGridCode(gridEntity.getGridCode());
        }
        // 点坐标解析警格
        List<PoliceAffairsGridEntity> policeAffairsGridEntityList = policeAffairsGridService.spatialAnalysis(point);
        if (policeAffairsGridEntityList.size() > 0) {
            PoliceAffairsGridEntity policeAffairsGridEntity = policeAffairsGridEntityList.get(0);
            ecOrderEntity.setJwGridCode(policeAffairsGridEntity.getJwGridCode());
        }
    }
    /**
     * 获取单位考核指标
     *
     * @return
     */
    @Override
src/main/java/org/springblade/modules/eCallEventTwo/vo/ECallEventTwoVO.java
@@ -16,6 +16,7 @@
 */
package org.springblade.modules.eCallEventTwo.vo;
import io.swagger.annotations.ApiModelProperty;
import org.springblade.modules.eCallEventTwo.entity.ECallEventTwoEntity;
import org.springblade.core.tool.node.INode;
import lombok.Data;
@@ -32,8 +33,17 @@
public class ECallEventTwoVO extends ECallEventTwoEntity {
    private static final long serialVersionUID = 1L;
    @ApiModelProperty(value = "经度")
    private String lng;
    @ApiModelProperty(value = "纬度")
    private String lat;
    @ApiModelProperty(value = "警务网格编号")
    private String jwGridCode;
    @ApiModelProperty(value = "社区编号")
    private String communityCode;
    @ApiModelProperty(value = "角色名称")
    private String roleName;
}