zhongrj
2024-01-03 296662d0ecbb19f4e9f47fba47014238495b41dc
网格员导入修改
2 files modified
59 ■■■■ changed files
src/main/java/org/springblade/modules/grid/excel/GridmanExcel.java 18 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/grid/service/impl/GridmanServiceImpl.java 41 ●●●●● patch | view | raw | blame | history
src/main/java/org/springblade/modules/grid/excel/GridmanExcel.java
@@ -23,30 +23,24 @@
    private static final long serialVersionUID = 1L;
    @ColumnWidth(15)
    @ExcelProperty("社区名称")
    @ExcelProperty("社区网格名称")
    private String communityName;
    @ColumnWidth(15)
    @ExcelProperty("网格名称")
    private String gridName;
    @ExcelProperty("网格编号")
    private String gridCode;
    /**
     * 网格员名称
     */
    @ApiModelProperty(value = "网格员姓名")
    private String gridmanName;
    /**
     * 手机号
     */
    @ApiModelProperty(value = "联系电话")
    private String mobile;
    /**
     * 备注
     * 网格员电话
     */
    @ColumnWidth(50)
    @ExcelProperty("备注")
    private String remark;
    @ApiModelProperty(value = "网格员电话")
    private String mobile;
}
src/main/java/org/springblade/modules/grid/service/impl/GridmanServiceImpl.java
@@ -19,6 +19,7 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.logging.log4j.util.Strings;
import org.flowable.idm.engine.impl.persistence.entity.UserEntity;
import org.springblade.core.secure.utils.AuthUtil;
import org.springblade.core.tool.utils.BeanUtil;
@@ -105,11 +106,26 @@
                }
                //插入网格员信息
                gridman.setUserId(user.getId());
                flag = save(gridman);
                //匹配
                QueryWrapper<GridmanEntity> queryWrapper = new QueryWrapper<>();
                queryWrapper.eq("is_deleted",0)
                    .eq("grid_id",gridman.getGridId())
                    .eq("user_id",gridman.getUserId());
                GridmanEntity one = getOne(queryWrapper);
                if (null==one){
                    flag = save(gridman);
                }
            } else {
                saveUser(gridman);
                // 插入网格员信息
                flag = save(gridman);
                //匹配
                QueryWrapper<GridmanEntity> queryWrapper = new QueryWrapper<>();
                queryWrapper.eq("is_deleted",0)
                    .eq("grid_id",gridman.getGridId())
                    .eq("user_id",gridman.getUserId());
                GridmanEntity one = getOne(queryWrapper);
                if (null==one){
                    flag = save(gridman);
                }
            }
        }
        // 返回
@@ -149,31 +165,22 @@
     * @param isCovered
     */
    @Override
    @Transactional(rollbackFor = Exception.class)
    public void importGridman(List<GridmanExcel> data, Boolean isCovered) {
        // 遍历
        for (GridmanExcel gridmanExcel : data) {
            GridmanEntity gridmanEntity = Objects.requireNonNull(BeanUtil.copy(gridmanExcel, GridmanEntity.class));
            // 先查询当前网格社区对应的机构id
            QueryWrapper<Region> regionWrapper = new QueryWrapper<>();
            regionWrapper.eq("name",gridmanExcel.getCommunityName());
            Region region = regionService.getOne(regionWrapper);
            // 通过社区名称和网格名称获取网格id
            QueryWrapper<GridEntity> queryWrapper = new QueryWrapper<>();
            queryWrapper.eq("is_deleted",0)
                .eq("community_code",region.getCode())
                .eq("grid_name",gridmanExcel.getGridName());
                .eq("grid_code",gridmanExcel.getGridCode());
            GridEntity gridEntity = gridService.getOne(queryWrapper);
            // 设置网格id
            gridmanEntity.setGridId(gridEntity.getId());
            // 通过手机号查询网格员id
            QueryWrapper<GridmanEntity> wrapper = new QueryWrapper<>();
            wrapper.eq("is_deleted",0).eq("mobile",gridmanEntity.getMobile());
            GridmanEntity one = getOne(wrapper);
            if (one!=null){
                gridmanEntity.setId(one.getId());
            }
            // 插入网格员
            saveOrUpdateGridman(gridmanEntity);
            if (!Strings.isBlank(gridmanExcel.getMobile())) {
                saveOrUpdateGridman(gridmanEntity);
            }
        }
    }