package com.ruoyi.gljt.utils; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.copier.CopyOptions; 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.core.utils.StringUtils; import com.ruoyi.common.core.utils.uuid.IdUtils; import com.ruoyi.common.security.utils.SecurityUtils; import com.ruoyi.gljt.domain.*; import com.ruoyi.gljt.mapper.GljtQxpzMapper; import com.ruoyi.gljt.mapper.GljtSqLrHiMapper; import com.ruoyi.gljt.mapper.GljtXmpzMapper; import com.ruoyi.system.api.enums.ExamineStatus; import com.ruoyi.system.api.enums.GljtAdStatus; import com.ruoyi.system.api.enums.GljtAskStatus; import com.ruoyi.system.api.enums.GljtBtbzStatus; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import java.math.BigDecimal; @Service public class GljtSqUtils { @Autowired private GljtQxpzMapper gljtQxpzMapper; @Autowired private GljtXmpzMapper gljtXmpzMapper; @Autowired private GljtSqLrHiMapper gljtSqLrHiMapper; public void insertLrHi(T t, String bdyy) { String now = DateUtils.dateTimeNow(); GljtSqLrHi in = new GljtSqLrHi(); BeanUtil.copyProperties(t, in, new CopyOptions().ignoreNullValue()); in.setBdsj(now); in.setBdyy(bdyy); in.setId(IdUtils.simpleUUID()); in.setState(null); gljtSqLrHiMapper.insert(in); } public String insertLrHiSq(T t, String bdyy) { String res = IdUtils.simpleUUID(); String now = DateUtils.dateTimeNow(); GljtSqLrHi in = new GljtSqLrHi(); BeanUtil.copyProperties(t, in, new CopyOptions().ignoreNullValue()); in.setBdsj(now); in.setBdyy(bdyy); in.setId(res); in.setState(null); gljtSqLrHiMapper.insert(in); return res; } public GljtQxpz getQxpz() { GljtQxpz pz = gljtQxpzMapper.selectOne(new LambdaQueryWrapper() .likeRight(GljtQxpz::getXzqh, SecurityUtils.getAreaCode().substring(0, 6))); if (org.apache.commons.lang3.ObjectUtils.isNotEmpty(pz)) { return pz; } else { return gljtQxpzMapper.selectOne(new LambdaQueryWrapper() .likeRight(GljtQxpz::getXzqh, "220000")); } } public GljtXmpz getXmpz() { GljtXmpz pz = gljtXmpzMapper.selectOne(new LambdaQueryWrapper() .likeRight(GljtXmpz::getXzqh, SecurityUtils.getAreaCode().substring(0, 6))); if (org.apache.commons.lang3.ObjectUtils.isNotEmpty(pz)) { return pz; } else { throw new ServiceException("该区县暂无补贴标准,请录入补贴标准后再进行操作"); } } public GljtXmpz getXmpz(String xzqh) { GljtXmpz pz = gljtXmpzMapper.selectOne(new LambdaQueryWrapper() .likeRight(GljtXmpz::getXzqh, xzqh.substring(0, 6))); if (org.apache.commons.lang3.ObjectUtils.isNotEmpty(pz)) { return pz; } else { throw new ServiceException("该区县暂无补贴标准,请录入补贴标准后再进行操作"); } } public GljtQxpz getQxpz(String xzqh) { GljtQxpz pz = gljtQxpzMapper.selectOne(new LambdaQueryWrapper() .likeRight(GljtQxpz::getXzqh, xzqh.substring(0, 6))); if (org.apache.commons.lang3.ObjectUtils.isNotEmpty(pz)) { return pz; } else { return null; } } /** * 补贴金额及标准 * @param jf * @param lr * @param month * @param pz */ public static void checkBtbz(GljtJfxx jf, GljtSqLr lr, String month, GljtXmpz pz) { BigDecimal res = BigDecimal.ZERO; String btbz = null; int start80 = 80 * 12; int start90 = 90 * 12; int start100 = 100 * 12; int monthSum = DateUtils.getMonthByBirth(lr.getCsrq(), month + "01"); if (monthSum >= start80 && monthSum < start90) { if (StringUtils.equals(lr.getIsdb(), "1") && (new BigDecimal(pz.getBtzjEd()).compareTo(BigDecimal.ZERO) > 0)) { res = res.add(new BigDecimal(pz.getBtzjEd())); btbz = GljtBtbzStatus.ED.getCode(); } else { res = res.add(new BigDecimal(pz.getBtzjE())); btbz = GljtBtbzStatus.E.getCode(); } } else if (monthSum >= start90 && monthSum < start100) { if (StringUtils.equals(lr.getIsdb(), "1") && (new BigDecimal(pz.getBtzjNd()).compareTo(BigDecimal.ZERO) > 0)) { res = res.add(new BigDecimal(pz.getBtzjNd())); btbz = GljtBtbzStatus.ND.getCode(); } else { res = res.add(new BigDecimal(pz.getBtzjN())); btbz = GljtBtbzStatus.N.getCode(); } } else if (monthSum >= start100) { if (StringUtils.equals(lr.getIsdb(), "1") && (new BigDecimal(pz.getBtzjHd()).compareTo(BigDecimal.ZERO) > 0)) { res = res.add(new BigDecimal(pz.getBtzjHd())); btbz = GljtBtbzStatus.HD.getCode(); } else { res = res.add(new BigDecimal(pz.getBtzjH())); btbz = GljtBtbzStatus.H.getCode(); } } else { if (StringUtils.equals(lr.getIsdb(), "1") && (new BigDecimal(pz.getBtzjEd()).compareTo(BigDecimal.ZERO) > 0)) { res = res.add(new BigDecimal(pz.getBtzjEd())); btbz = GljtBtbzStatus.ED.getCode(); } else { res = res.add(new BigDecimal(pz.getBtzjE())); btbz = GljtBtbzStatus.E.getCode(); } } jf.setBtbz(btbz); jf.setFfje(res.toString()); } public static String getBtbzByCsrq(String csrq, String isdb, GljtXmpz xmpz) { String res = null; int start80 = 80 * 12; int start90 = 90 * 12; int start100 = 100 * 12; int monthSum = DateUtils.getMonthByBirth(csrq, DateUtils.dateTime()); if (monthSum >= start80 && monthSum < start90) { if (StringUtils.equals(isdb, "1") && (new BigDecimal(xmpz.getBtzjEd()).compareTo(BigDecimal.ZERO) > 0)) { res = GljtBtbzStatus.ED.getCode(); } else { res = GljtBtbzStatus.E.getCode(); } } else if (monthSum >= start90 && monthSum < start100) { if (StringUtils.equals(isdb, "1") && (new BigDecimal(xmpz.getBtzjNd()).compareTo(BigDecimal.ZERO) > 0)) { res = GljtBtbzStatus.ND.getCode(); } else { res = GljtBtbzStatus.N.getCode(); } } else if (monthSum >= start100) { if (StringUtils.equals(isdb, "1") && (new BigDecimal(xmpz.getBtzjHd()).compareTo(BigDecimal.ZERO) > 0)) { res = GljtBtbzStatus.HD.getCode(); } else { res = GljtBtbzStatus.H.getCode(); } } else { if (StringUtils.equals(isdb, "1") && (new BigDecimal(xmpz.getBtzjEd()).compareTo(BigDecimal.ZERO) > 0)) { res = GljtBtbzStatus.ED.getCode(); } else { res = GljtBtbzStatus.E.getCode(); } } return res; } /** * 申请 * @param pz * @param sq */ public void getAskFlow(GljtQxpz pz, GljtSqSq sq) { if (StringUtils.isNotEmpty(sq.getSqShjg())) { sq.setSqShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(sq.getSqShrxm())) sq.setSqShrxm(SecurityUtils.getNickName()); sq.setSqShbm(SecurityUtils.getUserUnitName()); // 社区录入 if (StringUtils.equals(sq.getSqShjg(), ExamineStatus.YES.getCode())) { // 通过 if (StringUtils.equalsAny(pz.getSqshlc(), GljtAskStatus.SQJD.getCode(), GljtAskStatus.SQJDQX.getCode())) { sq.setStatus(GljtAdStatus.JD.getCode()); } if (StringUtils.equalsAny(pz.getSqshlc(), GljtAskStatus.SQQX.getCode())) { sq.setStatus(GljtAdStatus.MZ.getCode()); } if (StringUtils.equalsAny(pz.getSqshlc(), GljtAskStatus.SQ.getCode())) { sq.setStatus(GljtAdStatus.MONTH.getCode()); } } else { // 拒绝 sq.setStatus(GljtAdStatus.FPASS.getCode()); } } else if (StringUtils.isNotEmpty(sq.getJdShjg())) { sq.setJdShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(sq.getJdShrxm())) sq.setJdShrxm(SecurityUtils.getNickName()); sq.setJdShbm(SecurityUtils.getUserUnitName()); // 街道审核 if (StringUtils.equals(sq.getJdShjg(), ExamineStatus.YES.getCode())) { // 通过 if (StringUtils.equalsAny(pz.getSqshlc(), GljtAskStatus.SQJDQX.getCode())) { sq.setStatus(GljtAdStatus.MZ.getCode()); } if (StringUtils.equalsAny(pz.getSqshlc(), GljtAskStatus.SQJD.getCode())) { sq.setStatus(GljtAdStatus.MONTH.getCode()); } } else { // 拒绝 sq.setStatus(GljtAdStatus.FPASS.getCode()); } } else if (StringUtils.isNotEmpty(sq.getMzShjg())) { sq.setMzShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(sq.getMzShrxm())) sq.setMzShrxm(SecurityUtils.getNickName()); sq.setMzShbm(SecurityUtils.getUserUnitName()); // 区县审核 if (StringUtils.equals(sq.getMzShjg(), ExamineStatus.YES.getCode())) { // 通过 sq.setStatus(GljtAdStatus.MONTH.getCode()); } else { // 拒绝 sq.setStatus(GljtAdStatus.FPASS.getCode()); } } else { // 自主录入 sq.setStatus(GljtAdStatus.SQ.getCode()); } } /** * 变更 * @param pz * @param sq */ public void getModFlow(GljtQxpz pz, GljtSqBg sq) { if (StringUtils.isNotEmpty(sq.getBgsqShjg())) { sq.setBgsqShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(sq.getBgsqShrxm())) sq.setBgsqShrxm(SecurityUtils.getNickName()); sq.setBgsqShbm(SecurityUtils.getUserUnitName()); // 社区录入 if (StringUtils.equals(sq.getBgsqShjg(), ExamineStatus.YES.getCode())) { // 通过 if (StringUtils.equalsAny(pz.getBgshlc(), GljtAskStatus.SQJD.getCode(), GljtAskStatus.SQJDQX.getCode())) { sq.setStatus(GljtAdStatus.BGJD.getCode()); } if (StringUtils.equalsAny(pz.getBgshlc(), GljtAskStatus.SQQX.getCode())) { sq.setStatus(GljtAdStatus.BGMZ.getCode()); } if (StringUtils.equalsAny(pz.getBgshlc(), GljtAskStatus.SQ.getCode())) { sq.setStatus(GljtAdStatus.BGPASS.getCode()); } } else { // 拒绝 sq.setStatus(GljtAdStatus.BGFPASS.getCode()); } } else if (StringUtils.isNotEmpty(sq.getBgjdShjg())) { sq.setBgjdShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(sq.getBgjdShrxm())) sq.setBgjdShrxm(SecurityUtils.getNickName()); sq.setBgjdShbm(SecurityUtils.getUserUnitName()); // 街道审核 if (StringUtils.equals(sq.getBgjdShjg(), ExamineStatus.YES.getCode())) { // 通过 if (StringUtils.equalsAny(pz.getBgshlc(), GljtAskStatus.SQJDQX.getCode())) { sq.setStatus(GljtAdStatus.BGMZ.getCode()); } if (StringUtils.equalsAny(pz.getBgshlc(), GljtAskStatus.SQJD.getCode())) { sq.setStatus(GljtAdStatus.BGPASS.getCode()); } } else { // 拒绝 sq.setStatus(GljtAdStatus.BGFPASS.getCode()); } } else if (StringUtils.isNotEmpty(sq.getBgmzShjg())) { sq.setBgmzShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(sq.getBgmzShrxm())) sq.setBgmzShrxm(SecurityUtils.getNickName()); sq.setBgmzShbm(SecurityUtils.getUserUnitName()); // 区县审核 if (StringUtils.equals(sq.getBgmzShjg(), ExamineStatus.YES.getCode())) { // 通过 sq.setStatus(GljtAdStatus.BGPASS.getCode()); } else { // 拒绝 sq.setStatus(GljtAdStatus.BGFPASS.getCode()); } } else { // 自主录入 sq.setStatus(GljtAdStatus.BGSQ.getCode()); } } /** * 停发 * @param pz * @param sq */ public void getStopFlow(GljtQxpz pz, GljtSqTf sq) { if (StringUtils.isNotEmpty(sq.getTfsqShjg())) { sq.setTfsqShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(sq.getTfsqShrxm())) sq.setTfsqShrxm(SecurityUtils.getNickName()); sq.setTfsqShbm(SecurityUtils.getUserUnitName()); // 社区录入 if (StringUtils.equals(sq.getTfsqShjg(), ExamineStatus.YES.getCode())) { // 通过 if (StringUtils.equalsAny(pz.getTfshlc(), GljtAskStatus.SQJD.getCode(), GljtAskStatus.SQJDQX.getCode())) { sq.setStatus(GljtAdStatus.TFJD.getCode()); } if (StringUtils.equalsAny(pz.getTfshlc(), GljtAskStatus.SQQX.getCode())) { sq.setStatus(GljtAdStatus.TFMZ.getCode()); } if (StringUtils.equalsAny(pz.getTfshlc(), GljtAskStatus.SQ.getCode())) { sq.setStatus(GljtAdStatus.HALTED.getCode()); } } else { // 拒绝 sq.setStatus(GljtAdStatus.TFFPASS.getCode()); } } else if (StringUtils.isNotEmpty(sq.getTfjdShjg())) { sq.setTfjdShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(sq.getTfjdShrxm())) sq.setTfjdShrxm(SecurityUtils.getNickName()); sq.setTfjdShbm(SecurityUtils.getUserUnitName()); // 街道审核 if (StringUtils.equals(sq.getTfjdShjg(), ExamineStatus.YES.getCode())) { // 通过 if (StringUtils.equalsAny(pz.getTfshlc(), GljtAskStatus.SQJDQX.getCode())) { sq.setStatus(GljtAdStatus.TFMZ.getCode()); } if (StringUtils.equalsAny(pz.getTfshlc(), GljtAskStatus.SQJD.getCode())) { sq.setStatus(GljtAdStatus.HALTED.getCode()); } } else { // 拒绝 sq.setStatus(GljtAdStatus.TFFPASS.getCode()); } } else if (StringUtils.isNotEmpty(sq.getTfmzShjg())) { sq.setTfmzShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(sq.getTfmzShrxm())) sq.setTfmzShrxm(SecurityUtils.getNickName()); sq.setTfmzShbm(SecurityUtils.getUserUnitName()); // 区县审核 if (StringUtils.equals(sq.getTfmzShjg(), ExamineStatus.YES.getCode())) { // 通过 sq.setStatus(GljtAdStatus.HALTED.getCode()); } else { // 拒绝 sq.setStatus(GljtAdStatus.TFFPASS.getCode()); } } } /** * 补发 * @param pz * @param bf */ public void getReiFlow(GljtQxpz pz, GljtSqBf bf) { if (StringUtils.isNotEmpty(bf.getBfsqShjg())) { bf.setBfsqShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(bf.getBfsqShrxm())) bf.setBfsqShrxm(SecurityUtils.getNickName()); bf.setBfsqShbm(SecurityUtils.getUserUnitName()); // 社区录入 if (StringUtils.equals(bf.getBfsqShjg(), ExamineStatus.YES.getCode())) { // 通过 if (StringUtils.equalsAny(pz.getBfshlc(), GljtAskStatus.SQJD.getCode(), GljtAskStatus.SQJDQX.getCode())) { bf.setStatus(GljtAdStatus.BFJD.getCode()); } if (StringUtils.equalsAny(pz.getBfshlc(), GljtAskStatus.SQQX.getCode())) { bf.setStatus(GljtAdStatus.BFMZ.getCode()); } if (StringUtils.equalsAny(pz.getBfshlc(), GljtAskStatus.SQ.getCode())) { bf.setStatus(GljtAdStatus.BFPASS.getCode()); } } else { // 拒绝 bf.setStatus(GljtAdStatus.BFFPASS.getCode()); } } else if (StringUtils.isNotEmpty(bf.getBfjdShjg())) { bf.setBfjdShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(bf.getBfjdShrxm())) bf.setBfjdShrxm(SecurityUtils.getNickName()); bf.setBfjdShbm(SecurityUtils.getUserUnitName()); // 街道审核 if (StringUtils.equals(bf.getBfjdShjg(), ExamineStatus.YES.getCode())) { // 通过 if (StringUtils.equalsAny(pz.getBfshlc(), GljtAskStatus.SQJDQX.getCode())) { bf.setStatus(GljtAdStatus.BFMZ.getCode()); } if (StringUtils.equalsAny(pz.getBfshlc(), GljtAskStatus.SQJD.getCode())) { bf.setStatus(GljtAdStatus.BFPASS.getCode()); } } else { // 拒绝 bf.setStatus(GljtAdStatus.BFFPASS.getCode()); } } else if (StringUtils.isNotEmpty(bf.getBfmzShjg())) { bf.setBfmzShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(bf.getBfmzShrxm())) bf.setBfmzShrxm(SecurityUtils.getNickName()); bf.setBfmzShbm(SecurityUtils.getUserUnitName()); // 区县审核 if (StringUtils.equals(bf.getBfmzShjg(), ExamineStatus.YES.getCode())) { // 通过 bf.setStatus(GljtAdStatus.BFPASS.getCode()); } else { // 拒绝 bf.setStatus(GljtAdStatus.BFFPASS.getCode()); } } else { // 自主录入 bf.setStatus(GljtAdStatus.BFSQ.getCode()); } } /** * 追缴 * @param pz * @param zj */ public void getRecFlow(GljtQxpz pz, GljtSqZj zj) { if (StringUtils.isNotEmpty(zj.getZjsqShjg())) { zj.setZjsqShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(zj.getZjsqShrxm())) zj.setZjsqShrxm(SecurityUtils.getNickName()); zj.setZjsqShbm(SecurityUtils.getUserUnitName()); // 社区录入 if (StringUtils.equals(zj.getZjsqShjg(), ExamineStatus.YES.getCode())) { // 通过 if (StringUtils.equalsAny(pz.getZjshlc(), GljtAskStatus.SQJD.getCode(), GljtAskStatus.SQJDQX.getCode())) { zj.setStatus(GljtAdStatus.ZJJD.getCode()); } if (StringUtils.equalsAny(pz.getZjshlc(), GljtAskStatus.SQQX.getCode())) { zj.setStatus(GljtAdStatus.ZJMZ.getCode()); } if (StringUtils.equalsAny(pz.getZjshlc(), GljtAskStatus.SQ.getCode())) { zj.setStatus(GljtAdStatus.ZJPASS.getCode()); } } else { // 拒绝 zj.setStatus(GljtAdStatus.ZJFPASS.getCode()); } } else if (StringUtils.isNotEmpty(zj.getZjjdShjg())) { zj.setZjjdShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(zj.getZjjdShrxm())) zj.setZjjdShrxm(SecurityUtils.getNickName()); zj.setZjjdShbm(SecurityUtils.getUserUnitName()); // 街道审核 if (StringUtils.equals(zj.getZjjdShjg(), ExamineStatus.YES.getCode())) { // 通过 if (StringUtils.equalsAny(pz.getZjshlc(), GljtAskStatus.SQJDQX.getCode())) { zj.setStatus(GljtAdStatus.ZJMZ.getCode()); } if (StringUtils.equalsAny(pz.getZjshlc(), GljtAskStatus.SQJD.getCode())) { zj.setStatus(GljtAdStatus.ZJPASS.getCode()); } } else { // 拒绝 zj.setStatus(GljtAdStatus.ZJFPASS.getCode()); } } else if (StringUtils.isNotEmpty(zj.getZjmzShjg())) { zj.setZjmzShr(SecurityUtils.getUsername()); if (StringUtils.isEmpty(zj.getZjmzShrxm())) zj.setZjmzShrxm(SecurityUtils.getNickName()); zj.setZjmzShbm(SecurityUtils.getUserUnitName()); // 区县审核 if (StringUtils.equals(zj.getZjmzShjg(), ExamineStatus.YES.getCode())) { // 通过 zj.setStatus(GljtAdStatus.ZJPASS.getCode()); } else { // 拒绝 zj.setStatus(GljtAdStatus.ZJFPASS.getCode()); } } } }