Browse Source

20250324_sun

15143018065 2 weeks ago
parent
commit
c57de854b2

+ 2 - 0
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/RemoteGljtService.java

@@ -21,4 +21,6 @@ public interface RemoteGljtService {
     @PostMapping("/qxpz/getQxpz")
     public AjaxResult getQxpz(@RequestParam("xzqh") String xzqh, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
 
+    @PostMapping("/qxpz/checkInByXzqh")
+    public AjaxResult checkInByXzqh(@RequestParam("xzqh") String month, @RequestHeader(SecurityConstants.FROM_SOURCE) String source);
 }

+ 7 - 0
ruoyi-api/ruoyi-api-system/src/main/java/com/ruoyi/system/api/factory/RemoteGljtFallbackFactory.java

@@ -30,6 +30,13 @@ public class RemoteGljtFallbackFactory implements FallbackFactory<RemoteGljtServ
             public AjaxResult getQxpz(String xzqh, String source) {
                 return null;
             }
+
+            @Override
+            public AjaxResult checkInByXzqh(String month, String source) {
+                return null;
+            }
+
+
         };
     }
 }

+ 5 - 0
ruoyi-modules/mz-gljt/src/main/java/com/ruoyi/gljt/controller/GljtQxpzController.java

@@ -178,4 +178,9 @@ public class GljtQxpzController extends BaseController
         return AjaxResult.success(gljtQxpzService.getJkqkTjStatistics(gljtSqLr));
     }
 
+    @PostMapping("/checkInByXzqh")
+    public void checkInByXzqh(String xzqh) {
+        gljtQxpzService.checkInByXzqh(xzqh);
+    }
+
 }

+ 361 - 0
ruoyi-modules/mz-gljt/src/main/java/com/ruoyi/gljt/domain/OldGljt.java

@@ -0,0 +1,361 @@
+package com.ruoyi.gljt.domain;
+
+import com.baomidou.mybatisplus.annotation.IdType;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.ruoyi.common.core.annotation.Excel;
+import com.ruoyi.common.core.web.domain.BaseEntity;
+import com.ruoyi.system.validate.*;
+import com.ruoyi.system.validate.group.AddGroup;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+import lombok.EqualsAndHashCode;
+import lombok.NoArgsConstructor;
+import org.hibernate.validator.constraints.Range;
+
+import javax.validation.constraints.Digits;
+import javax.validation.constraints.NotBlank;
+import javax.validation.constraints.Size;
+
+/**
+ * 补贴管理高龄补贴信息对象 zwyw_btgl_glbt
+ *
+ * @author sun
+ * @date 2022-11-14
+ */
+@Data
+@EqualsAndHashCode(callSuper = true)
+@NoArgsConstructor
+@TableName("zwyw_btgl_glbt")
+@ApiModel("补贴管理高龄补贴信息")
+public class OldGljt extends BaseEntity
+{
+    private static final long serialVersionUID = 1L;
+
+    /** 主键标识 */
+//    @Excel(name = "主键标识")
+    @TableId(value = "id",type = IdType.ASSIGN_UUID)
+    @ApiModelProperty(value = "主键标识")
+    private String id;
+
+    /** 行政区划 */
+    @Excel(name = "行政区划")
+    @ApiModelProperty(value = "行政区划", required = true)
+    @NotBlank(message = "{行政区划}",groups = AddGroup.class)
+    @Size(min = 1, max = 12, message = "{行政区划}")
+
+    private String xzqh;
+
+    /** 申请人姓名 */
+    @Excel(name = "申请人姓名")
+    @ApiModelProperty(value = "申请人姓名", required = true)
+    @NotBlank(message = "{申请人姓名}",groups = AddGroup.class)
+    @Size(min = 1, max = 72, message = "{申请人姓名}")
+
+    @ChineseV(message = "{申请人姓名}")
+    @EncryptionV
+    private String sqrXm;
+
+    /** 性别(C0007) */
+    @Excel(name = "性别", dictType = "C0007")
+    @ApiModelProperty(value = "性别(C0007)", required = true)
+    @NotBlank(message = "{性别}",groups = AddGroup.class)
+    @DictV(type = "C0007",message = "{性别}")
+    private String xb;
+
+    /** 出生日期 */
+    @Excel(name = "出生日期")
+    @ApiModelProperty(value = "出生日期", required = true)
+    @NotBlank(message = "{出生日期}",groups = AddGroup.class)
+    @DateV(pattern = "yyyyMMdd", message = "{出生日期}")
+    private String csrq;
+
+    /** 居住地址 */
+    @Excel(name = "居住地址")
+    @ApiModelProperty(value = "居住地址", required = true)
+    @NotBlank(message = "{居住地址}",groups = AddGroup.class)
+    @Size(min = 1, max = 100, message = "{居住地址}")
+    @EncryptionV
+    private String jzdz;
+
+    /** 申请人联系电话 */
+    @Excel(name = "申请人联系电话")
+    @ApiModelProperty(value = "申请人联系电话", required = true)
+    @NotBlank(message = "{申请人联系电话}",groups = AddGroup.class)
+    @Size(min = 1, max = 18, message = "{申请人联系电话}")
+    @EncryptionV
+    private String sqrLxdh;
+
+    /** 申请人身份证号 */
+    @Excel(name = "申请人身份证号")
+    @ApiModelProperty(value = "申请人身份证号", required = true)
+    @NotBlank(message = "{申请人身份证号}",groups = AddGroup.class)
+    @IdCardV(message = "{申请人身份证号}")
+    @EncryptionV
+    private String sqrZjhm;
+
+    /** 代办人姓名 */
+    @Excel(name = "代办人姓名")
+    @ApiModelProperty(value = "代办人姓名")
+    @Size(max = 72, message = "{代办人姓名}")
+
+    @ChineseV(message = "{代办人姓名}")
+    @EncryptionV
+    private String dbrXm;
+
+    /** 代办人身份证号 */
+    @Excel(name = "代办人身份证号")
+    @ApiModelProperty(value = "代办人身份证号")
+    @IdCardV(message = "{代办人身份证号}")
+    @EncryptionV
+    private String dbrZjhm;
+
+    /** 代办人联系电话 */
+    @Excel(name = "代办人联系电话")
+    @ApiModelProperty(value = "代办人联系电话")
+    @Size(max = 18, message = "{代办人联系电话}")
+    @EncryptionV
+    private String dbrLxdh;
+
+    /** 代办人与申请人关系(C0032) */
+    @Excel(name = "代办人与申请人关系", dictType = "C0032")
+    @ApiModelProperty(value = "代办人与申请人关系(C0032)")
+    @DictV(type = "C0032",message = "{代办人与申请人关系}")
+    private String gx;
+
+    /** 发放月份 */
+    @Excel(name = "发放月份")
+    @ApiModelProperty(value = "发放月份", required = true)
+//    @NotBlank(message = "{发放月份}",groups = AddGroup.class)
+    @Size(min = 1, max = 8, message = "{发放月份}")
+    private String ffyf;
+
+    /** 是否补发(CZ035) */
+    @Excel(name = "是否补发", dictType = "CZ035")
+    @ApiModelProperty(value = "是否补发(CZ035)", required = true)
+    @DictV(type = "CZ035",message = "{是否补发}")
+    private String isBf;
+
+    /** 补发月数 */
+    @Excel(name = "补发月数")
+    @ApiModelProperty(value = "补发月数")
+    @Range(min=0,max=100,message = "{补发月数}")
+    @NumberV(message = "{补发月数}")
+    private String bfys;
+
+    /** 补发金额 */
+    @Excel(name = "补发金额")
+    @ApiModelProperty(value = "补发金额")
+    @Range(min=0,max=10000000000L,message = "{补发金额}")
+    @Digits(integer = 10,fraction = 2,message = "{补发金额}")
+    private String bfje;
+
+    @Excel(name = "补发金额(市级)")
+    @ApiModelProperty(value = "补发金额(市级)")
+    @Range(min=0,max=10000000000L,message = "{补发金额(市级)}")
+    @Digits(integer = 10,fraction = 2,message = "{补发金额(市级)}")
+    private String bfjeCity;
+
+    /** 头像 */
+//    @Excel(name = "头像")
+    @ApiModelProperty(value = "头像", required = true)
+//    @NotBlank(message = "{头像}",groups = AddGroup.class)
+    @Size(min = 1, max = 100, message = "{头像}")
+    private String tx;
+
+    /** 开户银行代码(C0044) */
+    @Excel(name = "开户银行代码", dictType = "C0044")
+    @ApiModelProperty(value = "开户银行代码(C0044)", required = true)
+    @DictV(type = "C0044",message = "{开户银行代码}")
+    private String khyh;
+
+    /** 银行账号 */
+    @Excel(name = "银行账号")
+    @ApiModelProperty(value = "银行账号")
+    @Size(max = 19, message = "{银行账号}")
+    @EncryptionV
+    private String yhzh;
+
+    /** 开户名称 */
+    @Excel(name = "开户名称")
+    @ApiModelProperty(value = "开户名称", required = true)
+    @Size(min = 1, max = 72, message = "{开户名称}")
+    @EncryptionV
+    private String khmc;
+
+    /** 社区(村)审核结果(CZ002) */
+    @Excel(name = "社区(村)审核结果", dictType = "CZ002")
+    @ApiModelProperty(value = "社区(村)审核结果(CZ002)")
+    @DictV(type = "CZ002",message = "{社区(村)审核结果}")
+    private String sqShjg;
+
+    /** 社区(村)审核意见 */
+    @Excel(name = "社区(村)审核意见")
+    @ApiModelProperty(value = "社区(村)审核意见")
+    @Size(max = 200, message = "{社区(村)审核意见}")
+    private String sqShyj;
+
+    /** 社区(村)审核时间 */
+    @Excel(name = "社区(村)审核时间")
+    @ApiModelProperty(value = "社区(村)审核时间")
+    private String sqShsj;
+
+    /** 街道(乡镇)审核结果(CZ002) */
+    @Excel(name = "街道(乡镇)审核结果", dictType = "CZ002")
+    @ApiModelProperty(value = "街道(乡镇)审核结果(CZ002)")
+    @DictV(type = "CZ002",message = "{街道(乡镇)审核结果}")
+    private String jdShjg;
+
+    /** 街道(乡镇)审核意见 */
+    @Excel(name = "街道(乡镇)审核意见")
+    @ApiModelProperty(value = "街道(乡镇)审核意见")
+    @Size(max = 200, message = "{街道(乡镇)审核意见}")
+    private String jdShyj;
+
+    /** 街道(乡镇)审核时间 */
+    @Excel(name = "街道(乡镇)审核时间")
+    @ApiModelProperty(value = "街道(乡镇)审核时间")
+    @Size(max = 8, message = "{街道(乡镇)审核时间}")
+    private String jdShsj;
+
+    /** 区民政局审核结果(CZ002) */
+    @Excel(name = "区民政局审核结果", dictType = "CZ002")
+    @ApiModelProperty(value = "区民政局审核结果(CZ002)")
+    @DictV(type = "CZ002",message = "{区民政局审核结果}")
+    private String mzShjg;
+
+    /** 区民政局审核意见 */
+    @Excel(name = "区民政局审核意见")
+    @ApiModelProperty(value = "区民政局审核意见")
+    @Size(max = 200, message = "{区民政局审核意见}")
+
+    private String mzShyj;
+
+    /** 区民政局审核时间 */
+    @Excel(name = "区民政局审核时间")
+    @ApiModelProperty(value = "区民政局审核时间")
+    @Size(max = 8, message = "{区民政局审核时间}")
+
+    private String mzShsj;
+
+    /** 停发代办人姓名 */
+    @Excel(name = "停发代办人姓名")
+    @ApiModelProperty(value = "停发代办人姓名")
+    @Size(max = 72, message = "{停发代办人姓名}")
+
+    @ChineseV(message = "{停发代办人姓名}")
+    @EncryptionV
+    private String tfdbrXm;
+
+    /** 停发代办人联系电话 */
+    @Excel(name = "停发代办人联系电话")
+    @ApiModelProperty(value = "停发代办人联系电话")
+    @Size(max = 18, message = "{停发代办人联系电话}")
+    @EncryptionV
+    private String tfbdrLxdh;
+
+    /** 停发时间 */
+    @Excel(name = "停发时间")
+    @ApiModelProperty(value = "停发时间")
+    @Size(max = 8, message = "{停发时间}")
+
+    private String tfsj;
+
+    /** 停发原因 */
+    @Excel(name = "停发原因")
+    @ApiModelProperty(value = "停发原因")
+    @Size(max = 100, message = "{停发原因}")
+
+    private String tfyy;
+
+    /** 社区(村)审核结果(CZ002) */
+    @Excel(name = "停发社区(村)审核结果", dictType = "CZ002")
+    @ApiModelProperty(value = "停发社区(村)审核结果(CZ002)")
+    @DictV(type = "CZ002",message = "{停发社区(村)审核结果}")
+    private String tfsqShjg;
+
+    /** 社区(村)审核意见 */
+    @Excel(name = "停发社区(村)审核意见")
+    @ApiModelProperty(value = "停发社区(村)审核意见")
+    @Size(max = 200, message = "{停发社区(村)审核意见}")
+    private String tfsqShyj;
+
+    /** 社区(村)审核时间 */
+    @Excel(name = "停发社区(村)审核时间")
+    @ApiModelProperty(value = "停发社区(村)审核时间")
+    private String tfsqShsj;
+
+    /** 街道(乡镇)审核结果(CZ002) */
+    @Excel(name = "停发街道(乡镇)审核结果", dictType = "CZ002")
+    @ApiModelProperty(value = "停发街道(乡镇)审核结果(CZ002)")
+    @DictV(type = "CZ002",message = "{停发街道(乡镇)审核结果}")
+    private String tfjdShjg;
+
+    /** 街道(乡镇)审核意见 */
+    @Excel(name = "停发街道(乡镇)审核意见")
+    @ApiModelProperty(value = "停发街道(乡镇)审核意见")
+    @Size(max = 200, message = "{停发街道(乡镇)审核意见}")
+    private String tfjdShyj;
+
+    /** 街道(乡镇)审核时间 */
+    @Excel(name = "停发街道(乡镇)审核时间")
+    @ApiModelProperty(value = "停发街道(乡镇)审核时间")
+    @Size(max = 8, message = "{停发街道(乡镇)审核时间}")
+    private String tfjdShsj;
+
+    /** 区民政局审核结果(CZ002) */
+    @Excel(name = "停发区民政局审核结果", dictType = "CZ002")
+    @ApiModelProperty(value = "停发区民政局审核结果(CZ002)")
+    @DictV(type = "CZ002",message = "{停发区民政局审核结果}")
+    private String tfmzShjg;
+
+    /** 区民政局审核意见 */
+    @Excel(name = "停发区民政局审核意见")
+    @ApiModelProperty(value = "停发区民政局审核意见")
+    @Size(max = 200, message = "{停发区民政局审核意见}")
+
+    private String tfmzShyj;
+
+    /** 区民政局审核时间 */
+    @Excel(name = "停发区民政局审核时间")
+    @ApiModelProperty(value = "停发区民政局审核时间")
+    @Size(max = 8, message = "{停发区民政局审核时间}")
+
+    private String tfmzShsj;
+
+    /** 申请状态(XZ111) */
+//    @Excel(name = "申请状态", dictType = "XZ111")
+    @ApiModelProperty(value = "申请状态(XZ111)")
+    private String status;
+
+    @ApiModelProperty(value = "附件")
+    @Size(max = 500, message = "{附件}")
+    private String fj;
+
+    @ApiModelProperty(value = "停发附件")
+    @Size(max = 500, message = "{停发附件}")
+    private String tffj;
+
+    @TableField(exist = false)
+    private String age;
+
+    @TableField(exist = false)
+    private String xzqhNames;
+
+    @TableField(exist = false)
+    private String level;
+
+    @TableField(exist = false)
+    private String editFlg;
+
+    @TableField(exist = false)
+    private String tfFlg;
+
+    @TableField(exist = false)
+    private String myje;
+
+    @TableField(exist = false)
+    private String isPresent;
+}

+ 14 - 0
ruoyi-modules/mz-gljt/src/main/java/com/ruoyi/gljt/mapper/OldGljtMapper.java

@@ -0,0 +1,14 @@
+package com.ruoyi.gljt.mapper;
+
+import com.ruoyi.common.datascope.utils.BaseMapperPlus;
+import com.ruoyi.gljt.domain.OldGljt;
+
+/**
+ * 高龄津贴计发信息Mapper接口
+ *
+ * @author sun
+ * @date 2025-01-07
+ */
+public interface OldGljtMapper extends BaseMapperPlus<OldGljt> {
+
+}

+ 2 - 0
ruoyi-modules/mz-gljt/src/main/java/com/ruoyi/gljt/service/IGljtQxpzService.java

@@ -74,4 +74,6 @@ public interface IGljtQxpzService
     public Map<String, Object> getLcTjStatistics(String inXzqh, Map<String, Object> inParams);
 
     public Map<String, Object> getJkqkTjStatistics(GljtSqLr gljtSqLr);
+
+    public void checkInByXzqh(String xzqh);
 }

+ 81 - 1
ruoyi-modules/mz-gljt/src/main/java/com/ruoyi/gljt/service/impl/GljtQxpzServiceImpl.java

@@ -1,16 +1,19 @@
 package com.ruoyi.gljt.service.impl;
 
 import cn.hutool.core.bean.BeanUtil;
+import cn.hutool.core.bean.copier.CopyOptions;
 import com.alibaba.nacos.common.utils.CollectionUtils;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.ruoyi.common.core.exception.ServiceException;
 import com.ruoyi.common.core.utils.DateUtils;
 import com.ruoyi.common.security.utils.DictUtils;
+import com.ruoyi.common.security.utils.EncryptionUtils;
 import com.ruoyi.common.security.utils.SecurityUtils;
 import com.ruoyi.common.security.utils.SysDeptJlUtils;
 import com.ruoyi.gljt.domain.*;
 import com.ruoyi.gljt.mapper.*;
 import com.ruoyi.gljt.service.IGljtQxpzService;
+import com.ruoyi.gljt.utils.GljtSqUtils;
 import com.ruoyi.system.api.domain.SysDictData;
 import com.ruoyi.system.api.enums.GljtAdStatus;
 import com.ruoyi.system.api.enums.GljtLrStatus;
@@ -74,6 +77,9 @@ public class GljtQxpzServiceImpl implements IGljtQxpzService
     @Autowired
     private SysDeptJlMapper sysDeptJlMapper;
 
+    @Autowired
+    private OldGljtMapper oldGljtMapper;
+
     /**
      * 查询高龄津贴_区县配置信息
      *
@@ -887,6 +893,80 @@ public class GljtQxpzServiceImpl implements IGljtQxpzService
         return res;
     }
 
+    @Override
+    public void checkInByXzqh(String xzqh) {
+        if (StringUtils.isEmpty(xzqh)) throw new ServiceException("行政区划不能为空");
+        Map<String,String> subCode = SubCodeUtil.getSubCode(xzqh);
+        if (!StringUtils.equals(subCode.get("level"), "3")) throw new ServiceException("仅能进行单个区县操作");
+        GljtXmpz pz = gljtXmpzMapper.selectOne(new LambdaQueryWrapper<GljtXmpz>()
+                .likeRight(GljtXmpz::getXzqh, xzqh.substring(0, 6)));
+        if (ObjectUtils.isEmpty(pz)) {
+            throw new ServiceException("请先创建区县配置和项目配置后再进行操作");
+        }
+        SysDeptJl deptJl = sysDeptJlMapper.selectSysDeptJlByCode(xzqh);
+        if (ObjectUtils.isEmpty(deptJl)) {
+            throw new ServiceException("区县code未查询到该区县,请检查");
+        }
+        gljtSqLrMapper.delete(new LambdaQueryWrapper<GljtSqLr>()
+                .likeRight(GljtSqLr::getXzqh, SubCodeUtil.code2Short(xzqh)).eq(GljtSqLr::getIsImport, "1"));
+        List<OldGljt> oldList = oldGljtMapper.selectList(new LambdaQueryWrapper<OldGljt>()
+                .likeRight(OldGljt::getXzqh, SubCodeUtil.code2Short(xzqh)).eq(OldGljt::getStatus, "3"));
+        if (CollectionUtils.isEmpty(oldList)) throw new ServiceException("该区县内无可转移老人");
+        for (OldGljt old: oldList) {
+            EncryptionUtils.decryptForPlaintext(old);
+            GljtSqLr in = new GljtSqLr();
+            BeanUtil.copyProperties(old, in, new CopyOptions().ignoreNullValue());
+            in.setSndj("1");
+            in.setMz("01");
+            in.setIsImport("1");
+            in.setPc(GljtSqUtils.getBtbzByCsrq(old.getCsrq(), "0", pz));
+            in.setStatus("1");
+            in.setSqShrxm("系统");
+            in.setJdShrxm("系统");
+            in.setMzShrxm("系统");
+            in.setFzjg(deptJl.getName() + "公安局");
+//            in.setTx(fileEncryption(in.getTx()));
+//            in.setFj(fileEncryption(in.getFj()));
+            if (gljtSqLrMapper.selectCount(new LambdaQueryWrapper<GljtSqLr>().eq(GljtSqLr::getSqrZjhm,
+                    SecurityUtils.sm4encrypt_ECB(EncryptionUtils.key, in.getSqrZjhm()))) == 0) {
+                gljtSqLrMapper.insert(in);
+            } else {
+                System.out.println("同步失败:【" + in.getSqrXm() + "】 【" + in.getSqrZjhm() + "】");
+            }
+        }
+    }
 
-
+//    private String fileEncryption(String url) {
+//        String res = null;
+//        if (!StringUtils.equals(SpringUtil.getActiveProfile(), "prod")) {
+//            return url;
+//        }
+//        if (StringUtils.isNotEmpty(url)) {
+//            List<String> urlList = Stream.of(url.split(",")).collect(Collectors.toList());
+//            for (String fileUrl: urlList) {
+//                InputStream inputStream = null;
+//                ObsClient obsClient = null;
+//                try {
+//                    String objectKey = "mzylfwobs" + fileUrl;
+//                    obsClient = new ObsClient("PFUCYWN1PHHNIZAS9E9L", "4g3bggtamms8p8dcC1dnha1d9dUmyXgy8gqMH8dU", "14.125.0.146");
+//                    ObsObject obsObject = obsClient.getObject("obsjmgcxt", objectKey, null);
+//                    inputStream = obsObject.getObjectContent();
+//                } catch (Exception e) {
+//                    System.out.println(e.getMessage());
+//                } finally {
+//                    try {
+//                        if (obsClient != null) {
+//                            obsClient.close();
+//                        }
+//                        if (inputStream != null) {
+//                            inputStream.close();
+//                        }
+//                    } catch (IOException e) {
+//                        System.out.println(e.getMessage());
+//                    }
+//                }
+//            }
+//        }
+//        return res;
+//    }
 }

+ 2 - 0
ruoyi-modules/ruoyi-job/src/main/java/com/ruoyi/job/service/ISysJobService.java

@@ -115,5 +115,7 @@ public interface ISysJobService
 
     public void checkGljtJob(String month);
 
+    public void checkInByXzqh(String xzqh);
+
     public void checkGljtJkzt();
 }

+ 5 - 0
ruoyi-modules/ruoyi-job/src/main/java/com/ruoyi/job/service/SysJobServiceImpl.java

@@ -307,6 +307,11 @@ public class SysJobServiceImpl implements ISysJobService
         remoteGljtService.generate(month, SecurityConstants.INNER);
     }
 
+    @Override
+    public void checkInByXzqh(String xzqh) {
+        remoteGljtService.checkInByXzqh(xzqh, SecurityConstants.INNER);
+    }
+
     @Override
     public void checkGljtJkzt() {
         remoteGljtService.generateJkzk(SecurityConstants.INNER);

+ 4 - 0
ruoyi-modules/ruoyi-job/src/main/java/com/ruoyi/job/task/RyTask.java

@@ -66,6 +66,10 @@ public class RyTask
         sysjob.checkGljtJob(null);
     }
 
+    public void checkInByXzqh(String xzqh) {
+        sysjob.checkInByXzqh(xzqh);
+    }
+
     public void checkGljtJobByMonth(String month)
     {
         sysjob.checkGljtJob(month);