27 changed files with 1260 additions and 13 deletions
@ -0,0 +1,177 @@ |
|||||
|
package com.epmet.commons.tools.utils; |
||||
|
|
||||
|
/** |
||||
|
* desc: |
||||
|
* |
||||
|
* @author: LiuJanJun |
||||
|
* @date: 2022/3/18 11:57 上午 |
||||
|
* @version: 1.0 |
||||
|
*/ |
||||
|
|
||||
|
|
||||
|
import com.google.zxing.BarcodeFormat; |
||||
|
import com.google.zxing.EncodeHintType; |
||||
|
import com.google.zxing.MultiFormatWriter; |
||||
|
import com.google.zxing.WriterException; |
||||
|
import com.google.zxing.client.j2se.MatrixToImageConfig; |
||||
|
import com.google.zxing.client.j2se.MatrixToImageWriter; |
||||
|
import com.google.zxing.common.BitMatrix; |
||||
|
import com.google.zxing.common.CharacterSetECI; |
||||
|
import com.google.zxing.qrcode.decoder.ErrorCorrectionLevel; |
||||
|
|
||||
|
import javax.imageio.ImageIO; |
||||
|
import java.awt.*; |
||||
|
import java.awt.image.BufferedImage; |
||||
|
import java.io.ByteArrayOutputStream; |
||||
|
import java.io.File; |
||||
|
import java.io.IOException; |
||||
|
import java.util.HashMap; |
||||
|
|
||||
|
/** |
||||
|
* Author 程鹏 |
||||
|
* Date: 2021/08/27 16:01 |
||||
|
* Description:二维码生成工具类 |
||||
|
*/ |
||||
|
public class BarcodeUtils { |
||||
|
/** |
||||
|
* 二维码颜色 默认是黑色 |
||||
|
*/ |
||||
|
private static final Color QRCOLOR = Color.black; |
||||
|
/** |
||||
|
* 背景颜色 |
||||
|
*/ |
||||
|
private static final Color BGWHITE = Color.white; |
||||
|
public static final int WIDTH = 360; |
||||
|
public static final int HEIGHT = 512; |
||||
|
public static final int MARGIN = 2; |
||||
|
public static final int FONTSIZE = 20; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* // 二维码生成
|
||||
|
* |
||||
|
* @param contents 说明 |
||||
|
* @return BufferedImage |
||||
|
* @throws Exception |
||||
|
*/ |
||||
|
public static BufferedImage drawQRImage(String pressText, String contents) throws Exception { |
||||
|
BufferedImage qRImage = null; |
||||
|
if (contents == null || "".equals(contents)) { |
||||
|
throw new Exception("content说明不能为空"); |
||||
|
} |
||||
|
// 二维码参数设置
|
||||
|
HashMap<EncodeHintType, Object> hints = new HashMap<>(); |
||||
|
hints.put(EncodeHintType.CHARACTER_SET, CharacterSetECI.UTF8); // 编码设置
|
||||
|
hints.put(EncodeHintType.ERROR_CORRECTION, ErrorCorrectionLevel.H); // 安全等级,最高h
|
||||
|
hints.put(EncodeHintType.MARGIN, MARGIN); // 设置margin=0-10
|
||||
|
|
||||
|
// 二维码图片的生成
|
||||
|
BarcodeFormat format = BarcodeFormat.QR_CODE; |
||||
|
// 创建矩阵容器
|
||||
|
BitMatrix matrix = null; |
||||
|
try { |
||||
|
matrix = new MultiFormatWriter().encode(contents, format, WIDTH, HEIGHT, hints); |
||||
|
} catch (WriterException e) { |
||||
|
e.printStackTrace(); |
||||
|
} |
||||
|
|
||||
|
// 设置矩阵转为图片的参数
|
||||
|
MatrixToImageConfig toImageConfig = new MatrixToImageConfig(QRCOLOR.getRGB(), BGWHITE.getRGB()); |
||||
|
|
||||
|
// 矩阵转换图像
|
||||
|
qRImage = MatrixToImageWriter.toBufferedImage(matrix, toImageConfig); |
||||
|
return pressText(pressText, qRImage); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* @param pressText 二维码下方插入文字 |
||||
|
* @param image 需要添加文字的图片 |
||||
|
* @为图片添加文字 |
||||
|
*/ |
||||
|
private static BufferedImage pressText(String pressText, BufferedImage image) throws Exception { |
||||
|
|
||||
|
BufferedImage outImage = new BufferedImage(WIDTH, HEIGHT, BufferedImage.TYPE_INT_RGB); |
||||
|
//计算文字开始的位置
|
||||
|
//x开始的位置:(图片宽度-字体大小*字的个数)/2
|
||||
|
int startX = (WIDTH - (FONTSIZE * pressText.length())) / 2; |
||||
|
//y开始的位置:图片高度-(图片高度-图片宽度)/2
|
||||
|
int startY = HEIGHT - (HEIGHT - WIDTH) / 2; |
||||
|
|
||||
|
int imageW = outImage.getWidth(); |
||||
|
int imageH = outImage.getHeight(); |
||||
|
Graphics2D g = outImage.createGraphics(); |
||||
|
g.drawImage(image, 0, 0, imageW, imageH, null); |
||||
|
g.setColor(QRCOLOR); |
||||
|
g.setFont(new Font("Noto Sans SC Light", Font.BOLD, FONTSIZE)); |
||||
|
g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON); |
||||
|
g.setBackground(Color.white); |
||||
|
// 获取文字数量 按照字节展示
|
||||
|
int size = pressText.getBytes("GBK").length; |
||||
|
// 获取一行最多能容纳多少文字 按照文字字节展示
|
||||
|
int maxSize = (WIDTH / FONTSIZE - 2) * 2; |
||||
|
if (size > maxSize) { |
||||
|
int v = size % maxSize; |
||||
|
for (int a = 0; a < (size / maxSize); a++) { |
||||
|
String s = outStringByByte(pressText, maxSize); |
||||
|
g.drawString(s, (WIDTH - (FONTSIZE * (WIDTH / FONTSIZE - 2))) / 2, startY); |
||||
|
pressText = pressText.substring(s.length(), pressText.length()); |
||||
|
startY = startY + 30; |
||||
|
} |
||||
|
if (v != 0) { |
||||
|
g.drawString(pressText, (WIDTH - (FONTSIZE * v)) / 2, startY); |
||||
|
} |
||||
|
} else { |
||||
|
g.drawString(pressText, (WIDTH - ((pressText.getBytes("GBK").length) / 2) * FONTSIZE) / 2, startY); |
||||
|
} |
||||
|
|
||||
|
g.dispose(); |
||||
|
return outImage; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 保存二维码图片到本地 |
||||
|
* |
||||
|
* @param contents |
||||
|
* @throws Exception |
||||
|
*/ |
||||
|
public static void createImg(String pressText, String contents, String filename, String filePath) throws Exception { |
||||
|
BufferedImage qRImageWithLogo = drawQRImage(pressText, contents); |
||||
|
// 写入返回
|
||||
|
ByteArrayOutputStream baos = new ByteArrayOutputStream(); |
||||
|
ImageIO.write(qRImageWithLogo, "jpg", baos); |
||||
|
//图片类型
|
||||
|
String imageType = "jpg"; |
||||
|
//生成二维码存放文件
|
||||
|
File file = new File(filePath + filename + ".jpg"); |
||||
|
if (!file.exists()) { |
||||
|
file.mkdirs(); |
||||
|
} |
||||
|
ImageIO.write(qRImageWithLogo, imageType, file); |
||||
|
baos.close(); |
||||
|
} |
||||
|
|
||||
|
|
||||
|
private static String outStringByByte(String str, int len) throws IOException { |
||||
|
byte[] btf = str.getBytes("GBK"); |
||||
|
int count = 0; |
||||
|
|
||||
|
for (int j = len - 1; j >= 0; j--) { |
||||
|
if (btf[j] < 0) { |
||||
|
count++; |
||||
|
} else { |
||||
|
break; |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
if (count % 2 == 0) { |
||||
|
return new String(btf, 0, len, "GBK"); |
||||
|
} else { |
||||
|
return new String(btf, 0, len - 1, "GBK"); |
||||
|
} |
||||
|
|
||||
|
} |
||||
|
|
||||
|
|
||||
|
} |
||||
|
|
@ -0,0 +1,29 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import com.epmet.commons.tools.validator.group.Group; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* @Author zxc |
||||
|
* @DateTime 2022/3/18 15:43 |
||||
|
* @DESC |
||||
|
*/ |
||||
|
@Data |
||||
|
public class CreateQrCodeFormDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = -6801094057381407439L; |
||||
|
|
||||
|
public interface CreateQrCodeForm{} |
||||
|
|
||||
|
@NotBlank(message = "id不能为空",groups = CreateQrCodeForm.class) |
||||
|
private String id; |
||||
|
|
||||
|
/** |
||||
|
* community:社区,neighborHood:小区 |
||||
|
*/ |
||||
|
@NotBlank(message = "type不能为空",groups = CreateQrCodeForm.class) |
||||
|
private String type; |
||||
|
} |
Binary file not shown.
@ -0,0 +1,41 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotNull; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
/** |
||||
|
* @Author zxc |
||||
|
* @DateTime 2022/3/18 19:00 |
||||
|
* @DESC |
||||
|
*/ |
||||
|
@Data |
||||
|
public class CollectListFormDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = 2106773724057183577L; |
||||
|
|
||||
|
public interface CollectListForm{} |
||||
|
|
||||
|
@NotNull(message = "pageNo不能为空", groups = CollectListForm.class) |
||||
|
private Integer pageNo; |
||||
|
|
||||
|
@NotNull(message = "pageSize不能为空", groups = CollectListForm.class) |
||||
|
private Integer pageSize; |
||||
|
|
||||
|
private String orgId; |
||||
|
private String neighborHoodId; |
||||
|
private String buildingId; |
||||
|
private String houseId; |
||||
|
private String address; |
||||
|
|
||||
|
/** |
||||
|
* 格式:yyyy-mm-dd |
||||
|
*/ |
||||
|
private String startDate; |
||||
|
private String endDate; |
||||
|
|
||||
|
private String userId; |
||||
|
private String customerId; |
||||
|
|
||||
|
} |
@ -0,0 +1,105 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import com.epmet.commons.tools.validator.group.CustomerClientShowGroup; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.Valid; |
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import javax.validation.constraints.NotEmpty; |
||||
|
import javax.validation.constraints.NotNull; |
||||
|
import java.io.Serializable; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 收集居民信息入参 |
||||
|
*/ |
||||
|
@Data |
||||
|
public class IcResiCollectFormDTO implements Serializable { |
||||
|
public interface AddUserInternalGroup { |
||||
|
} |
||||
|
|
||||
|
public interface InternalShowGroup extends CustomerClientShowGroup { |
||||
|
} |
||||
|
|
||||
|
public interface ExternalShowGroup extends CustomerClientShowGroup { |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* 客户Id customer.id |
||||
|
*/ |
||||
|
@NotBlank(message = "customerId不能为空", groups = AddUserInternalGroup.class) |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 内部:internal;外部:external |
||||
|
*/ |
||||
|
@NotBlank(message = "兴德路社区:internal;其他社区:external", groups = AddUserInternalGroup.class) |
||||
|
private String origin; |
||||
|
|
||||
|
/** |
||||
|
* 网格ID_后端接口赋值 |
||||
|
*/ |
||||
|
private String gridId; |
||||
|
|
||||
|
/** |
||||
|
* 组织Id_后端接口赋值 |
||||
|
*/ |
||||
|
private String agencyId; |
||||
|
|
||||
|
/** |
||||
|
* 组织的pid_后端接口赋值 |
||||
|
*/ |
||||
|
private String pids; |
||||
|
|
||||
|
/** |
||||
|
* 所属小区ID |
||||
|
*/ |
||||
|
@NotBlank(message = "小区不能为空", groups = InternalShowGroup.class) |
||||
|
private String villageId; |
||||
|
|
||||
|
/** |
||||
|
* 所属楼宇Id |
||||
|
*/ |
||||
|
@NotBlank(message = "楼栋不能为空", groups = InternalShowGroup.class) |
||||
|
private String buildId; |
||||
|
|
||||
|
/** |
||||
|
* 单元id |
||||
|
*/ |
||||
|
@NotBlank(message = "单元不能为空", groups = InternalShowGroup.class) |
||||
|
private String unitId; |
||||
|
|
||||
|
/** |
||||
|
* 所属家庭Id |
||||
|
*/ |
||||
|
@NotBlank(message = "家庭不能为空", groups = InternalShowGroup.class) |
||||
|
private String homeId; |
||||
|
|
||||
|
/** |
||||
|
* 详细地址 |
||||
|
*/ |
||||
|
@NotBlank(message = "家庭地址不能为空", groups = {InternalShowGroup.class, ExternalShowGroup.class}) |
||||
|
private String address; |
||||
|
|
||||
|
/** |
||||
|
* 1自由0租住 |
||||
|
*/ |
||||
|
@NotBlank(message = "房子属于自由还是组织?", groups = {InternalShowGroup.class, ExternalShowGroup.class}) |
||||
|
private String houseType; |
||||
|
|
||||
|
/** |
||||
|
* 户主姓名 |
||||
|
*/ |
||||
|
@NotBlank(message = "户主姓名不能为空", groups = {InternalShowGroup.class, ExternalShowGroup.class}) |
||||
|
private String houseHolderName; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员人数 |
||||
|
*/ |
||||
|
@NotNull(message = "居住成员人数不能为空", groups = {InternalShowGroup.class, ExternalShowGroup.class}) |
||||
|
private Integer totalResi; |
||||
|
|
||||
|
@Valid |
||||
|
@NotEmpty(message = "成员信息不能为空", groups = {InternalShowGroup.class, ExternalShowGroup.class}) |
||||
|
private List<IcResiCollectMemFormDTO> memberList; |
||||
|
} |
@ -0,0 +1,44 @@ |
|||||
|
package com.epmet.dto.form; |
||||
|
|
||||
|
import lombok.Data; |
||||
|
|
||||
|
import javax.validation.constraints.NotBlank; |
||||
|
import javax.validation.constraints.NotNull; |
||||
|
import java.io.Serializable; |
||||
|
|
||||
|
@Data |
||||
|
public class IcResiCollectMemFormDTO implements Serializable { |
||||
|
/** |
||||
|
* 客户Id customer.id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
/** |
||||
|
* 居住成员1姓名 |
||||
|
*/ |
||||
|
@NotBlank(message = "姓名不能为空", groups = {IcResiCollectFormDTO.InternalShowGroup.class, IcResiCollectFormDTO.ExternalShowGroup.class}) |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员1身份证号 |
||||
|
*/ |
||||
|
@NotBlank(message = "身份证号不能为空", groups = {IcResiCollectFormDTO.InternalShowGroup.class, IcResiCollectFormDTO.ExternalShowGroup.class}) |
||||
|
private String idNum; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员1手机号 |
||||
|
*/ |
||||
|
@NotBlank(message = "手机号不能为空", groups = {IcResiCollectFormDTO.InternalShowGroup.class, IcResiCollectFormDTO.ExternalShowGroup.class}) |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员1是否参加几轮全员核算检测,数字1-10 |
||||
|
*/ |
||||
|
@NotBlank(message = "核算检测情况不能为空", groups = {IcResiCollectFormDTO.InternalShowGroup.class, IcResiCollectFormDTO.ExternalShowGroup.class}) |
||||
|
private String heSuanCount; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员1新冠疫苗接种情况;1:已全程接种;2:未全程接种;0未接种; |
||||
|
*/ |
||||
|
@NotNull(message = "疫苗接种情况不能为空", groups = {IcResiCollectFormDTO.InternalShowGroup.class, IcResiCollectFormDTO.ExternalShowGroup.class}) |
||||
|
private Integer ymjz; |
||||
|
} |
@ -0,0 +1,88 @@ |
|||||
|
package com.epmet.dto.result; |
||||
|
|
||||
|
import com.fasterxml.jackson.annotation.JsonIgnore; |
||||
|
import lombok.Data; |
||||
|
|
||||
|
import java.io.Serializable; |
||||
|
import java.util.ArrayList; |
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* @Author zxc |
||||
|
* @DateTime 2022/3/18 19:00 |
||||
|
* @DESC |
||||
|
*/ |
||||
|
@Data |
||||
|
public class CollectListResultDTO implements Serializable { |
||||
|
|
||||
|
private static final long serialVersionUID = -6692672375850864451L; |
||||
|
|
||||
|
/** |
||||
|
* 户主姓名 |
||||
|
*/ |
||||
|
private String houseHolderName; |
||||
|
|
||||
|
@JsonIgnore |
||||
|
private String id; |
||||
|
|
||||
|
/** |
||||
|
* 居住地址 |
||||
|
*/ |
||||
|
private String address; |
||||
|
|
||||
|
/** |
||||
|
* 房屋类型,1:自有, 0:租住 |
||||
|
*/ |
||||
|
private String houseType; |
||||
|
|
||||
|
/** |
||||
|
* 居住人数 |
||||
|
*/ |
||||
|
private Integer totalResi; |
||||
|
|
||||
|
private List<CollectListMemberResultDTO> list; |
||||
|
|
||||
|
public CollectListResultDTO() { |
||||
|
this.houseHolderName = ""; |
||||
|
this.address = ""; |
||||
|
this.houseType = "0"; |
||||
|
this.totalResi = 0; |
||||
|
this.list = new ArrayList<>(); |
||||
|
} |
||||
|
|
||||
|
@Data |
||||
|
public static class CollectListMemberResultDTO{ |
||||
|
/** |
||||
|
* 成员名字 |
||||
|
*/ |
||||
|
private String memberName; |
||||
|
|
||||
|
/** |
||||
|
* 成员身份证 |
||||
|
*/ |
||||
|
private String memberIdNum; |
||||
|
|
||||
|
/** |
||||
|
* 成员电话 |
||||
|
*/ |
||||
|
private String memberMobile; |
||||
|
|
||||
|
/** |
||||
|
* 核酸检测次数 |
||||
|
*/ |
||||
|
private String heSuanCount; |
||||
|
|
||||
|
/** |
||||
|
* 疫苗是否全程接种,1:全程接种,2:未全程接种,3:为接种 |
||||
|
*/ |
||||
|
private Integer ymjz; |
||||
|
|
||||
|
public CollectListMemberResultDTO() { |
||||
|
this.memberName = ""; |
||||
|
this.memberIdNum = ""; |
||||
|
this.memberMobile = ""; |
||||
|
this.heSuanCount = "0"; |
||||
|
this.ymjz = 0; |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,71 @@ |
|||||
|
package com.epmet.controller; |
||||
|
|
||||
|
import com.epmet.commons.tools.annotation.LoginUser; |
||||
|
import com.epmet.commons.tools.aop.NoRepeatSubmit; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.security.dto.TokenDto; |
||||
|
import com.epmet.commons.tools.utils.Result; |
||||
|
import com.epmet.commons.tools.validator.ValidatorUtils; |
||||
|
import com.epmet.dto.form.CollectListFormDTO; |
||||
|
import com.epmet.dto.form.IcResiCollectFormDTO; |
||||
|
import com.epmet.dto.result.CollectListResultDTO; |
||||
|
import com.epmet.service.IcResiCollectService; |
||||
|
import org.springframework.beans.factory.annotation.Autowired; |
||||
|
import org.springframework.web.bind.annotation.PostMapping; |
||||
|
import org.springframework.web.bind.annotation.RequestBody; |
||||
|
import org.springframework.web.bind.annotation.RequestMapping; |
||||
|
import org.springframework.web.bind.annotation.RestController; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 居民信息采集表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-18 |
||||
|
*/ |
||||
|
@RestController |
||||
|
@RequestMapping("icresicollect") |
||||
|
public class IcResiCollectController { |
||||
|
|
||||
|
@Autowired |
||||
|
private IcResiCollectService icResiCollectService; |
||||
|
|
||||
|
/** |
||||
|
* 居民信息采集_提交 |
||||
|
* |
||||
|
* @param formDTO |
||||
|
* @return |
||||
|
*/ |
||||
|
@NoRepeatSubmit |
||||
|
@PostMapping("save") |
||||
|
public Result save(@RequestBody IcResiCollectFormDTO formDTO) { |
||||
|
//效验数据
|
||||
|
ValidatorUtils.validateEntity(formDTO, IcResiCollectFormDTO.AddUserInternalGroup.class); |
||||
|
// 内部:internal;外部:external
|
||||
|
if ("internal".equals(formDTO.getOrigin())) { |
||||
|
ValidatorUtils.validateEntity(formDTO, IcResiCollectFormDTO.InternalShowGroup.class); |
||||
|
} else if ("external".equals(formDTO.getOrigin())) { |
||||
|
ValidatorUtils.validateEntity(formDTO, IcResiCollectFormDTO.ExternalShowGroup.class); |
||||
|
} |
||||
|
icResiCollectService.save(formDTO); |
||||
|
return new Result(); |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc: 查询采集居民信息 |
||||
|
* @param formDTO |
||||
|
* @param tokenDto |
||||
|
* @author zxc |
||||
|
* @date 2022/3/18 19:23 |
||||
|
*/ |
||||
|
@PostMapping("list") |
||||
|
public Result<PageData<CollectListResultDTO>> getCollectList(@RequestBody CollectListFormDTO formDTO, @LoginUser TokenDto tokenDto){ |
||||
|
ValidatorUtils.validateEntity(formDTO,CollectListFormDTO.CollectListForm.class); |
||||
|
formDTO.setUserId(tokenDto.getUserId()); |
||||
|
formDTO.setCustomerId(tokenDto.getCustomerId()); |
||||
|
return new Result<PageData<CollectListResultDTO>>().ok(icResiCollectService.getCollectList(formDTO)); |
||||
|
} |
||||
|
|
||||
|
} |
@ -0,0 +1,36 @@ |
|||||
|
package com.epmet.dao; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.dao.BaseDao; |
||||
|
import com.epmet.dto.form.CollectListFormDTO; |
||||
|
import com.epmet.dto.result.CollectListResultDTO; |
||||
|
import com.epmet.entity.IcResiCollectEntity; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
import org.apache.ibatis.annotations.Param; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 居民信息采集表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-18 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface IcResiCollectDao extends BaseDao<IcResiCollectEntity> { |
||||
|
|
||||
|
IcResiCollectEntity selectByAddress(String address); |
||||
|
|
||||
|
int updateRec(@Param("id") String id, |
||||
|
@Param("houseType") String houseType, |
||||
|
@Param("houseHolderName") String houseHolderName, |
||||
|
@Param("totalResi") Integer totalResi); |
||||
|
|
||||
|
/** |
||||
|
* Desc: 查询采集居民信息 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/18 19:41 |
||||
|
*/ |
||||
|
List<CollectListResultDTO> getCollectList(CollectListFormDTO formDTO); |
||||
|
|
||||
|
} |
@ -0,0 +1,16 @@ |
|||||
|
package com.epmet.dao; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.dao.BaseDao; |
||||
|
import com.epmet.entity.IcResiMemberEntity; |
||||
|
import org.apache.ibatis.annotations.Mapper; |
||||
|
|
||||
|
/** |
||||
|
* 居民信息成员表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-18 |
||||
|
*/ |
||||
|
@Mapper |
||||
|
public interface IcResiMemberDao extends BaseDao<IcResiMemberEntity> { |
||||
|
|
||||
|
} |
@ -0,0 +1,86 @@ |
|||||
|
package com.epmet.entity; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
/** |
||||
|
* 居民信息采集表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-18 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper=false) |
||||
|
@TableName("ic_resi_collect") |
||||
|
public class IcResiCollectEntity extends BaseEpmetEntity { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id customer.id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* 内部:internal;外部:external |
||||
|
*/ |
||||
|
private String origin; |
||||
|
|
||||
|
/** |
||||
|
* 网格ID |
||||
|
*/ |
||||
|
private String gridId; |
||||
|
|
||||
|
/** |
||||
|
* 组织Id |
||||
|
*/ |
||||
|
private String agencyId; |
||||
|
|
||||
|
/** |
||||
|
* 组织的pids |
||||
|
*/ |
||||
|
private String pids; |
||||
|
|
||||
|
/** |
||||
|
* 所属小区ID |
||||
|
*/ |
||||
|
private String villageId; |
||||
|
|
||||
|
/** |
||||
|
* 所属楼宇Id |
||||
|
*/ |
||||
|
private String buildId; |
||||
|
|
||||
|
/** |
||||
|
* 单元id |
||||
|
*/ |
||||
|
private String unitId; |
||||
|
|
||||
|
/** |
||||
|
* 所属家庭Id |
||||
|
*/ |
||||
|
private String homeId; |
||||
|
|
||||
|
/** |
||||
|
* 详细地址 |
||||
|
*/ |
||||
|
private String address; |
||||
|
|
||||
|
/** |
||||
|
* 1自由0租住 |
||||
|
*/ |
||||
|
private String houseType; |
||||
|
|
||||
|
/** |
||||
|
* 户主姓名 |
||||
|
*/ |
||||
|
private String houseHolderName; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员人数 |
||||
|
*/ |
||||
|
private Integer totalResi; |
||||
|
|
||||
|
} |
@ -0,0 +1,56 @@ |
|||||
|
package com.epmet.entity; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.annotation.TableName; |
||||
|
import com.epmet.commons.mybatis.entity.BaseEpmetEntity; |
||||
|
import lombok.Data; |
||||
|
import lombok.EqualsAndHashCode; |
||||
|
|
||||
|
/** |
||||
|
* 居民信息成员表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-18 |
||||
|
*/ |
||||
|
@Data |
||||
|
@EqualsAndHashCode(callSuper=false) |
||||
|
@TableName("ic_resi_member") |
||||
|
public class IcResiMemberEntity extends BaseEpmetEntity { |
||||
|
|
||||
|
private static final long serialVersionUID = 1L; |
||||
|
|
||||
|
/** |
||||
|
* 客户Id customer.id |
||||
|
*/ |
||||
|
private String customerId; |
||||
|
|
||||
|
/** |
||||
|
* ic_resi_colllect.id |
||||
|
*/ |
||||
|
private String icResiCollectId; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员1姓名 |
||||
|
*/ |
||||
|
private String name; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员1身份证号 |
||||
|
*/ |
||||
|
private String idNum; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员1手机号 |
||||
|
*/ |
||||
|
private String mobile; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员1是否参加几轮全员核算检测,数字1-10 |
||||
|
*/ |
||||
|
private String heSuanCount; |
||||
|
|
||||
|
/** |
||||
|
* 居住成员1新冠疫苗接种情况;1:已全程接种;2:未全程接种;0未接种; |
||||
|
*/ |
||||
|
private Integer ymjz; |
||||
|
|
||||
|
} |
@ -0,0 +1,39 @@ |
|||||
|
package com.epmet.service; |
||||
|
|
||||
|
import com.epmet.commons.mybatis.service.BaseService; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.dto.form.CollectListFormDTO; |
||||
|
import com.epmet.dto.form.IcResiCollectFormDTO; |
||||
|
import com.epmet.dto.result.CollectListResultDTO; |
||||
|
import com.epmet.entity.IcResiCollectEntity; |
||||
|
|
||||
|
import java.util.List; |
||||
|
|
||||
|
/** |
||||
|
* 居民信息采集表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-18 |
||||
|
*/ |
||||
|
public interface IcResiCollectService extends BaseService<IcResiCollectEntity> { |
||||
|
|
||||
|
|
||||
|
/** |
||||
|
* 默认保存 |
||||
|
* |
||||
|
* @param dto |
||||
|
* @return void |
||||
|
* @author generator |
||||
|
* @date 2022-03-18 |
||||
|
*/ |
||||
|
void save(IcResiCollectFormDTO dto); |
||||
|
|
||||
|
/** |
||||
|
* Desc: 查询采集居民信息 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/18 19:23 |
||||
|
*/ |
||||
|
PageData<CollectListResultDTO> getCollectList(CollectListFormDTO formDTO); |
||||
|
|
||||
|
} |
@ -0,0 +1,138 @@ |
|||||
|
package com.epmet.service.impl; |
||||
|
|
||||
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
||||
|
import com.epmet.commons.mybatis.service.impl.BaseServiceImpl; |
||||
|
import com.epmet.commons.tools.dto.result.CustomerStaffInfoCacheResult; |
||||
|
import com.epmet.commons.tools.exception.EpmetErrorCode; |
||||
|
import com.epmet.commons.tools.exception.EpmetException; |
||||
|
import com.epmet.commons.tools.page.PageData; |
||||
|
import com.epmet.commons.tools.redis.common.CustomerStaffRedis; |
||||
|
import com.epmet.commons.tools.utils.ConvertUtils; |
||||
|
import com.epmet.commons.tools.utils.Result; |
||||
|
import com.epmet.dao.IcResiCollectDao; |
||||
|
import com.epmet.dao.IcResiMemberDao; |
||||
|
import com.epmet.dto.IcNeighborHoodDTO; |
||||
|
import com.epmet.dto.form.CollectListFormDTO; |
||||
|
import com.epmet.dto.form.IcResiCollectFormDTO; |
||||
|
import com.epmet.dto.result.CollectListResultDTO; |
||||
|
import com.epmet.entity.IcResiCollectEntity; |
||||
|
import com.epmet.entity.IcResiMemberEntity; |
||||
|
import com.epmet.feign.GovOrgOpenFeignClient; |
||||
|
import com.epmet.service.IcResiCollectService; |
||||
|
import org.apache.commons.collections4.MapUtils; |
||||
|
import com.github.pagehelper.PageHelper; |
||||
|
import com.github.pagehelper.PageInfo; |
||||
|
import org.apache.commons.lang3.StringUtils; |
||||
|
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; |
||||
|
import java.util.Map; |
||||
|
import java.util.function.Function; |
||||
|
import java.util.stream.Collectors; |
||||
|
|
||||
|
/** |
||||
|
* 居民信息采集表 |
||||
|
* |
||||
|
* @author generator generator@elink-cn.com |
||||
|
* @since v1.0.0 2022-03-18 |
||||
|
*/ |
||||
|
@Service |
||||
|
public class IcResiCollectServiceImpl extends BaseServiceImpl<IcResiCollectDao, IcResiCollectEntity> implements IcResiCollectService { |
||||
|
@Autowired |
||||
|
private GovOrgOpenFeignClient govOrgOpenFeignClient; |
||||
|
@Autowired |
||||
|
private IcResiMemberDao icResiMemberDao; |
||||
|
|
||||
|
@Override |
||||
|
@Transactional(rollbackFor = Exception.class) |
||||
|
public void save(IcResiCollectFormDTO formDTO) { |
||||
|
IcResiCollectEntity origin = baseDao.selectByAddress(formDTO.getAddress()); |
||||
|
if (null == origin) { |
||||
|
//插入主表、成员表
|
||||
|
IcResiCollectEntity insert = ConvertUtils.sourceToTarget(formDTO, IcResiCollectEntity.class); |
||||
|
if ("internal".equals(formDTO.getOrigin())) { |
||||
|
//根据小区id查询网格相关信息
|
||||
|
IcNeighborHoodDTO neighborHoodDTO = queryIcNeighborHood(formDTO.getVillageId()); |
||||
|
insert.setGridId(neighborHoodDTO.getGridId()); |
||||
|
insert.setAgencyId(neighborHoodDTO.getAgencyId()); |
||||
|
insert.setPids(neighborHoodDTO.getAgencyPids()); |
||||
|
} |
||||
|
baseDao.insert(insert); |
||||
|
List<IcResiMemberEntity> memberList = ConvertUtils.sourceToTarget(formDTO.getMemberList(), IcResiMemberEntity.class); |
||||
|
memberList.forEach(mem -> { |
||||
|
mem.setIcResiCollectId(insert.getId()); |
||||
|
icResiMemberDao.insert(mem); |
||||
|
}); |
||||
|
} else { |
||||
|
//更新主表
|
||||
|
baseDao.updateRec(origin.getId(), formDTO.getHouseType(), formDTO.getHouseHolderName(), formDTO.getTotalResi()); |
||||
|
List<IcResiMemberEntity> newMemberList = ConvertUtils.sourceToTarget(formDTO.getMemberList(), IcResiMemberEntity.class); |
||||
|
//查询之前录入的成员表
|
||||
|
Map<String, IcResiMemberEntity> memMap = queryOriginMem(origin.getId()); |
||||
|
saveOrUpdateMem(newMemberList, memMap,origin.getId()); |
||||
|
} |
||||
|
} |
||||
|
|
||||
|
/** |
||||
|
* Desc: 查询采集居民信息 |
||||
|
* @param formDTO |
||||
|
* @author zxc |
||||
|
* @date 2022/3/18 19:23 |
||||
|
*/ |
||||
|
@Override |
||||
|
public PageData<CollectListResultDTO> getCollectList(CollectListFormDTO formDTO) { |
||||
|
PageData<CollectListResultDTO> result = new PageData<>(new ArrayList<>(), 0); |
||||
|
if (StringUtils.isBlank(formDTO.getOrgId()) && |
||||
|
StringUtils.isBlank(formDTO.getNeighborHoodId()) && |
||||
|
StringUtils.isBlank(formDTO.getBuildingId()) && |
||||
|
StringUtils.isBlank(formDTO.getHouseId()) && |
||||
|
StringUtils.isBlank(formDTO.getAddress()) && |
||||
|
StringUtils.isBlank(formDTO.getStartDate()) && |
||||
|
StringUtils.isBlank(formDTO.getEndDate()) ){ |
||||
|
CustomerStaffInfoCacheResult staffInfo = CustomerStaffRedis.getStaffInfo(formDTO.getCustomerId(), formDTO.getUserId()); |
||||
|
if (null == staffInfo){ |
||||
|
throw new EpmetException("查询人员信息失败"+formDTO.getUserId()); |
||||
|
} |
||||
|
formDTO.setOrgId(staffInfo.getAgencyId()); |
||||
|
} |
||||
|
PageInfo<CollectListResultDTO> pageList = PageHelper.startPage(formDTO.getPageNo(), formDTO.getPageSize()).doSelectPageInfo(() -> baseDao.getCollectList(formDTO)); |
||||
|
result.setList(pageList.getList()); |
||||
|
result.setTotal(Integer.valueOf(String.valueOf(pageList.getTotal()))); |
||||
|
return result; |
||||
|
} |
||||
|
|
||||
|
|
||||
|
private IcNeighborHoodDTO queryIcNeighborHood(String villageId) { |
||||
|
Result<IcNeighborHoodDTO> res = govOrgOpenFeignClient.getIcNeighbordhoodById(villageId); |
||||
|
if (!res.success() || null == res.getData()) { |
||||
|
throw new EpmetException(EpmetErrorCode.EPMET_COMMON_OPERATION_FAIL.getCode(), "小区信息查询异常", "小区信息查询异常"); |
||||
|
} |
||||
|
return res.getData(); |
||||
|
} |
||||
|
|
||||
|
private Map<String, IcResiMemberEntity> queryOriginMem(String icResiCollectId) { |
||||
|
LambdaQueryWrapper<IcResiMemberEntity> query = new LambdaQueryWrapper<>(); |
||||
|
query.eq(IcResiMemberEntity::getIcResiCollectId, icResiCollectId); |
||||
|
List<IcResiMemberEntity> originMemberList = icResiMemberDao.selectList(query); |
||||
|
Map<String, IcResiMemberEntity> memMap = originMemberList.stream().collect(Collectors.toMap(IcResiMemberEntity::getIdNum, Function.identity())); |
||||
|
return memMap; |
||||
|
} |
||||
|
|
||||
|
private void saveOrUpdateMem(List<IcResiMemberEntity> newMemberList, Map<String, IcResiMemberEntity> memMap, String originIcResiCollectId) { |
||||
|
for (IcResiMemberEntity entity : newMemberList) { |
||||
|
if (MapUtils.isNotEmpty(memMap) && memMap.containsKey(entity.getIdNum())) { |
||||
|
entity.setIcResiCollectId(originIcResiCollectId); |
||||
|
entity.setCustomerId(memMap.get(entity.getIdNum()).getCustomerId()); |
||||
|
entity.setId(memMap.get(entity.getIdNum()).getId()); |
||||
|
icResiMemberDao.updateById(entity); |
||||
|
continue; |
||||
|
} |
||||
|
//没有插入
|
||||
|
entity.setIcResiCollectId(originIcResiCollectId); |
||||
|
icResiMemberDao.insert(entity); |
||||
|
} |
||||
|
} |
||||
|
} |
@ -0,0 +1,42 @@ |
|||||
|
CREATE TABLE `ic_resi_collect` ( |
||||
|
`ID` varchar(64) NOT NULL COMMENT '主键', |
||||
|
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id customer.id', |
||||
|
`ORIGIN` varchar(32) NOT NULL COMMENT '内部:internal;外部:external。', |
||||
|
`GRID_ID` varchar(64) DEFAULT NULL COMMENT '网格ID', |
||||
|
`AGENCY_ID` varchar(64) DEFAULT NULL COMMENT '组织Id', |
||||
|
`PIDS` varchar(255) DEFAULT NULL COMMENT '组织的pids', |
||||
|
`VILLAGE_ID` varchar(64) DEFAULT NULL COMMENT '所属小区ID;', |
||||
|
`BUILD_ID` varchar(64) DEFAULT NULL COMMENT '所属楼宇Id', |
||||
|
`UNIT_ID` varchar(64) DEFAULT NULL COMMENT '单元id', |
||||
|
`HOME_ID` varchar(64) DEFAULT NULL COMMENT '所属家庭Id', |
||||
|
`ADDRESS` varchar(255) NOT NULL COMMENT '详细地址', |
||||
|
`HOUSE_TYPE` varchar(1) NOT NULL COMMENT '1自由0租住', |
||||
|
`HOUSE_HOLDER_NAME` varchar(32) NOT NULL COMMENT '户主姓名', |
||||
|
`TOTAL_RESI` int(11) NOT NULL COMMENT '居住成员人数', |
||||
|
`DEL_FLAG` int(11) NOT NULL DEFAULT '0' COMMENT '删除标识 0.未删除 1.已删除', |
||||
|
`REVISION` int(11) NOT NULL COMMENT '乐观锁', |
||||
|
`CREATED_BY` varchar(64) NOT NULL COMMENT '创建人', |
||||
|
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间', |
||||
|
`UPDATED_BY` varchar(64) NOT NULL COMMENT '更新人', |
||||
|
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间', |
||||
|
PRIMARY KEY (`ID`) USING BTREE |
||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='居民信息采集表'; |
||||
|
|
||||
|
|
||||
|
CREATE TABLE `ic_resi_member` ( |
||||
|
`ID` varchar(64) NOT NULL COMMENT '主键', |
||||
|
`CUSTOMER_ID` varchar(64) NOT NULL COMMENT '客户Id customer.id', |
||||
|
`IC_RESI_COLLECT_ID` varchar(64) NOT NULL COMMENT 'ic_resi_colllect.id', |
||||
|
`NAME` varchar(32) NOT NULL COMMENT '居住成员1姓名', |
||||
|
`ID_NUM` varchar(32) NOT NULL COMMENT '居住成员1身份证号', |
||||
|
`MOBILE` varchar(32) NOT NULL COMMENT '居住成员1手机号', |
||||
|
`HE_SUAN_COUNT` varchar(32) NOT NULL COMMENT '居住成员1是否参加几轮全员核算检测,数字1-10', |
||||
|
`YMJZ` int(11) NOT NULL COMMENT '居住成员1新冠疫苗接种情况;1:已全程接种;2:未全程接种;0未接种;', |
||||
|
`DEL_FLAG` int(11) NOT NULL DEFAULT '0' COMMENT '删除标识 0.未删除 1.已删除', |
||||
|
`REVISION` int(11) NOT NULL COMMENT '乐观锁', |
||||
|
`CREATED_BY` varchar(64) NOT NULL COMMENT '创建人', |
||||
|
`CREATED_TIME` datetime NOT NULL COMMENT '创建时间', |
||||
|
`UPDATED_BY` varchar(64) NOT NULL COMMENT '更新人', |
||||
|
`UPDATED_TIME` datetime NOT NULL COMMENT '更新时间', |
||||
|
PRIMARY KEY (`ID`) USING BTREE |
||||
|
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COMMENT='居民信息成员表'; |
@ -0,0 +1,74 @@ |
|||||
|
<?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="com.epmet.dao.IcResiCollectDao"> |
||||
|
|
||||
|
<select id="selectByAddress" parameterType="java.lang.String" resultType="com.epmet.entity.IcResiCollectEntity"> |
||||
|
select c.id from ic_resi_collect c |
||||
|
where c.address=#{address} |
||||
|
and c.DEL_FLAG='0' |
||||
|
</select> |
||||
|
|
||||
|
<!-- 查询采集居民信息 --> |
||||
|
<resultMap id="getCollectListMap" type="com.epmet.dto.result.CollectListResultDTO"> |
||||
|
<result property="houseHolderName" column="houseHolderName"/> |
||||
|
<result property="id" column="id"/> |
||||
|
<result property="address" column="address"/> |
||||
|
<result property="houseType" column="houseType"/> |
||||
|
<result property="totalResi" column="totalResi"/> |
||||
|
<collection property="list" ofType="com.epmet.dto.result.CollectListResultDTO$CollectListMemberResultDTO" column="id" select="selectMemberList"/> |
||||
|
</resultMap> |
||||
|
<select id="getCollectList" resultMap="getCollectListMap"> |
||||
|
SELECT |
||||
|
c.id as id, |
||||
|
c.HOUSE_HOLDER_NAME AS houseHolderName, |
||||
|
c.ADDRESS AS address, |
||||
|
c.HOUSE_TYPE AS houseType, |
||||
|
c.TOTAL_RESI AS totalResi |
||||
|
FROM ic_resi_collect c |
||||
|
WHERE c.DEL_FLAG = 0 |
||||
|
<if test='orgId != null and orgId != "" '> |
||||
|
AND CONCAT(c.PIDS,':',c.AGENCY_ID) LIKE CONCAT('%',#{orgId},'%') |
||||
|
</if> |
||||
|
<if test='neighborHoodId != null and neighborHoodId != "" '> |
||||
|
AND c.VILLAGE_ID = #{neighborHoodId} |
||||
|
</if> |
||||
|
<if test='buildingId != null and buildingId != "" '> |
||||
|
AND c.BUILD_ID = #{buildingId} |
||||
|
</if> |
||||
|
<if test='houseId != null and houseId != "" '> |
||||
|
AND c.HOME_ID = #{houseId} |
||||
|
</if> |
||||
|
<if test='address != null and address != "" '> |
||||
|
AND c.ADDRESS LIKE CONCAT('%',#{address},'%') |
||||
|
</if> |
||||
|
<if test='startDate != null and startDate != "" '> |
||||
|
AND DATE_FORMAT(c.CREATED_TIME,'%Y-%m-%d') >= #{startDate} |
||||
|
</if> |
||||
|
<if test='endDate != null and endDate != "" '> |
||||
|
AND DATE_FORMAT(c.CREATED_TIME,'%Y-%m-%d') <![CDATA[ <= ]]> #{endDate} |
||||
|
</if> |
||||
|
ORDER BY c.CREATED_TIME DESC |
||||
|
</select> |
||||
|
<select id="selectMemberList" resultType="com.epmet.dto.result.CollectListResultDTO$CollectListMemberResultDTO"> |
||||
|
select |
||||
|
m.`NAME` AS memberName, |
||||
|
m.ID_NUM AS memberIdNum, |
||||
|
m.MOBILE AS memberMobile, |
||||
|
m.HE_SUAN_COUNT AS heSuanCount, |
||||
|
m.YMJZ AS ymjz |
||||
|
from ic_resi_member m |
||||
|
where m.DEL_FLAG = 0 |
||||
|
and m.IC_RESI_COLLECT_ID = #{id} |
||||
|
</select> |
||||
|
|
||||
|
<update id="updateRec" parameterType="map"> |
||||
|
UPDATE ic_resi_collect |
||||
|
SET UPDATED_TIME = NOW(), |
||||
|
HOUSE_TYPE = #{houseType}, |
||||
|
HOUSE_HOLDER_NAME = #{houseHolderName}, |
||||
|
TOTAL_RESI = #{totalResi} |
||||
|
WHERE |
||||
|
id = #{id} |
||||
|
</update> |
||||
|
</mapper> |
@ -0,0 +1,8 @@ |
|||||
|
<?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="com.epmet.dao.IcResiMemberDao"> |
||||
|
|
||||
|
|
||||
|
|
||||
|
</mapper> |
Loading…
Reference in new issue