skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/controller/TbRelResUserController.java
New file @@ -0,0 +1,56 @@ package cn.gistack.sm.sjztmd.controller; import cn.gistack.sm.sjztmd.excel.AttResStagCapDiscExcel; import cn.gistack.sm.sjztmd.excel.TbRelResUserExcel; import cn.gistack.sm.sjztmd.excel.TbRelResUserImport; import cn.gistack.sm.sjztmd.service.ITbRelResUserService; import io.swagger.annotations.Api; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.core.excel.util.ExcelUtil; import org.springblade.core.tool.api.R; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; import org.springframework.web.multipart.MultipartFile; import javax.servlet.http.HttpServletResponse; import java.util.ArrayList; import java.util.List; /** * @PROJECT_NAME: skjcmanager * @DESCRIPTION: * @USER: aix * @DATE: 2023/10/26 11:27 */ @Slf4j @Api(tags = "中台水库填报责任人") @RestController @RequestMapping("/sjztmd/tbRelResUser") @AllArgsConstructor public class TbRelResUserController { private ITbRelResUserService tbRelResUserService; /** * 导入填报责任人 */ @PostMapping("importTbRelResUser") public R importTbRelResUser(MultipartFile file) { TbRelResUserImport tbRelResUserImport = new TbRelResUserImport(tbRelResUserService); ExcelUtil.save(file, tbRelResUserImport, TbRelResUserExcel.class); return R.success("操作成功"); } /** * 导出库容模板 */ @GetMapping("exportTbRelResUserTemplate") public void exportTbRelResUserTemplate(HttpServletResponse response) { List<TbRelResUserExcel> list = new ArrayList<>(); ExcelUtil.export(response, "水库填报责任人", "水库填报责任人", list, TbRelResUserExcel.class); } } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/entity/TbRelResUser.java
New file @@ -0,0 +1,32 @@ package cn.gistack.sm.sjztmd.entity; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableName; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Data; /** * @PROJECT_NAME: skjcmanager * @DESCRIPTION: 水库关联填报责任人 * @USER: aix * @DATE: 2023/10/26 10:09 */ @Data @TableName("\"rel_res_user_tb\"") @ApiModel(value = "水库关联填报责任人", description = "水库关联填报责任人") public class TbRelResUser { /** * 水库编码 */ @ApiModelProperty(value = "水库编码") @TableField("\"res_guid\"") private String resGuid; /** * 水库编码 */ @ApiModelProperty(value = "手机号码") @TableField("\"phone\"") private String phone; } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/excel/TbRelResUserExcel.java
New file @@ -0,0 +1,37 @@ package cn.gistack.sm.sjztmd.excel; import com.alibaba.excel.annotation.ExcelProperty; import com.alibaba.excel.annotation.write.style.ColumnWidth; import com.alibaba.excel.annotation.write.style.ContentRowHeight; import com.alibaba.excel.annotation.write.style.HeadRowHeight; import com.baomidou.mybatisplus.annotation.TableField; import io.swagger.annotations.ApiModelProperty; import lombok.Data; import java.io.Serializable; /** * @PROJECT_NAME: skjcmanager * @DESCRIPTION: * @USER: aix * @DATE: 2023/10/26 10:23 */ @Data @ColumnWidth(25) @HeadRowHeight(20) @ContentRowHeight(18) public class TbRelResUserExcel implements Serializable { private static final long serialVersionUID = 1L; @ColumnWidth(20) @ExcelProperty("注册登记号") private String resNo; /** * 水库编码 */ @ColumnWidth(20) @ExcelProperty("手机号码") private String phone; } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/excel/TbRelResUserImport.java
New file @@ -0,0 +1,25 @@ package cn.gistack.sm.sjztmd.excel; import cn.gistack.sm.sjztmd.service.ITbRelResUserService; import lombok.RequiredArgsConstructor; import org.springblade.core.excel.support.ExcelImporter; import java.util.List; /** * @PROJECT_NAME: skjcmanager * @DESCRIPTION: 导入水库责任人数据 * @USER: aix * @DATE: 2023/10/26 10:27 */ @RequiredArgsConstructor public class TbRelResUserImport implements ExcelImporter<TbRelResUserExcel> { private final ITbRelResUserService tbRelResUserService; @Override public void save(List<TbRelResUserExcel> data) { tbRelResUserService.importbRelResUser(data); } } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbRelResUserMapper.java
New file @@ -0,0 +1,13 @@ package cn.gistack.sm.sjztmd.mapper; import cn.gistack.sm.sjztmd.entity.TbRelResUser; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * @PROJECT_NAME: skjcmanager * @DESCRIPTION: * @USER: aix * @DATE: 2023/10/26 10:33 */ public interface TbRelResUserMapper extends BaseMapper<TbRelResUser> { } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/mapper/TbRelResUserMapper.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.TbRelResUserMapper"> <!--namespace根据自己需要创建的的mapper的路径和名称填写--> </mapper> skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/ITbRelResUserService.java
New file @@ -0,0 +1,19 @@ package cn.gistack.sm.sjztmd.service; import cn.gistack.sm.sjztmd.entity.TbRelResUser; import cn.gistack.sm.sjztmd.excel.TbRelResUserExcel; import com.baomidou.mybatisplus.extension.service.IService; import java.util.List; /** * @PROJECT_NAME: skjcmanager * @DESCRIPTION: * @USER: aix * @DATE: 2023/10/26 10:19 */ public interface ITbRelResUserService extends IService<TbRelResUser> { void importbRelResUser(List<TbRelResUserExcel> data); } skjcmanager/skjcmanager-service/skjcmanager-sm/src/main/java/cn/gistack/sm/sjztmd/service/impl/TbRelResUserServiceImpl.java
New file @@ -0,0 +1,69 @@ package cn.gistack.sm.sjztmd.service.impl; import cn.gistack.sm.sjztmd.entity.AttResBase; import cn.gistack.sm.sjztmd.entity.TbRelResUser; import cn.gistack.sm.sjztmd.excel.TbRelResUserExcel; import cn.gistack.sm.sjztmd.mapper.TbRelResUserMapper; import cn.gistack.sm.sjztmd.service.IAttResBaseService; import cn.gistack.sm.sjztmd.service.ITbRelResUserService; import com.baomidou.dynamic.datasource.annotation.DS; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import org.springblade.core.tool.utils.StringUtil; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; import java.util.ArrayList; import java.util.List; /** * @PROJECT_NAME: skjcmanager * @DESCRIPTION: * @USER: aix * @DATE: 2023/10/26 10:32 */ @Service @DS("zt") public class TbRelResUserServiceImpl extends ServiceImpl<TbRelResUserMapper, TbRelResUser> implements ITbRelResUserService { @Autowired private IAttResBaseService attResBaseService; @Autowired private ITbRelResUserService tbRelResUserService; @Override @Transactional(rollbackFor = Exception.class) public void importbRelResUser(List<TbRelResUserExcel> data) { if (data.size()>0) { List<TbRelResUser> list = new ArrayList<>(); for (TbRelResUserExcel excelPo:data) { if (StringUtil.isBlank(excelPo.getResNo()) || StringUtil.isBlank(excelPo.getPhone())) continue; TbRelResUser tbpo = new TbRelResUser(); AttResBase attResBase = attResBaseService.getOne(Wrappers.<AttResBase>query().lambda().eq(AttResBase::getResRegCode,excelPo.getResNo())); if (null == attResBase) continue; if (StringUtil.isBlank(attResBase.getGuid()) || StringUtil.isBlank(excelPo.getPhone())) continue; tbpo.setResGuid(attResBase.getGuid()); tbpo.setPhone(excelPo.getPhone()); // 如果存在不保存 long count = tbRelResUserService.count(Wrappers.<TbRelResUser>query().lambda().eq(TbRelResUser::getResGuid,attResBase.getGuid()).eq(TbRelResUser::getPhone,excelPo.getPhone())); if (count == 0) list.add(tbpo); } if (list.size() > 0) saveBatch(list);//批量保存 } } }