diff --git a/common/common-core/src/main/java/com/bonus/common/core/utils/poi/ExcelUtil.java b/common/common-core/src/main/java/com/bonus/common/core/utils/poi/ExcelUtil.java index c682bb3..5ba6f3c 100644 --- a/common/common-core/src/main/java/com/bonus/common/core/utils/poi/ExcelUtil.java +++ b/common/common-core/src/main/java/com/bonus/common/core/utils/poi/ExcelUtil.java @@ -566,7 +566,7 @@ public class ExcelUtil }else{ boolean b = changeDataType(isRegex, val.toString().trim()); if(!b) { - throw new IllegalArgumentException(attr.name()+" 单元格必需填写正确的格式!"); + throw new IllegalArgumentException(attr.name() +" 单元格必需填写正确的格式!" + "在Excel表格数据是“ " + val.toString().trim() +"”" ); } } } diff --git a/modules/bmw/src/main/java/com/bonus/bmw/config/IpAndPathConfig.java b/modules/bmw/src/main/java/com/bonus/bmw/config/IpAndPathConfig.java index f09e71e..d6940f4 100644 --- a/modules/bmw/src/main/java/com/bonus/bmw/config/IpAndPathConfig.java +++ b/modules/bmw/src/main/java/com/bonus/bmw/config/IpAndPathConfig.java @@ -29,7 +29,7 @@ public class IpAndPathConfig { * 人脸检测后端相关 */ public static String faceDevUrl = "http://127.0.0.1:1909/file/"; - public static String faceTestUrl = "http://192.168.0.14:1909/file/"; + public static String faceTestUrl = "http://192.168.0.14:18017/file/"; public static String faceProdUrl = "http://112.29.103.165:14413/file/"; /** diff --git a/modules/bmw/src/main/java/com/bonus/bmw/person/dao/InOutDao.java b/modules/bmw/src/main/java/com/bonus/bmw/person/dao/InOutDao.java index e7677b4..b45933e 100644 --- a/modules/bmw/src/main/java/com/bonus/bmw/person/dao/InOutDao.java +++ b/modules/bmw/src/main/java/com/bonus/bmw/person/dao/InOutDao.java @@ -95,4 +95,6 @@ public interface InOutDao { List getOneYearNotInPlace(); int exitRoute(BasePersonBean bean); + + void updateNoSignalTeamPerson(String idNumber); } diff --git a/modules/bmw/src/main/java/com/bonus/bmw/person/dao/RedListDao.java b/modules/bmw/src/main/java/com/bonus/bmw/person/dao/RedListDao.java index 6482533..d3dd307 100644 --- a/modules/bmw/src/main/java/com/bonus/bmw/person/dao/RedListDao.java +++ b/modules/bmw/src/main/java/com/bonus/bmw/person/dao/RedListDao.java @@ -80,4 +80,10 @@ public interface RedListDao { * @param list 需要转的人的idNumber */ void updateToFixedPerson(@Param("list") List list); + + /** + * 转成黄灯 + * @param idNumber + */ + void updateWorkerLightYellow(String idNumber); } diff --git a/modules/bmw/src/main/java/com/bonus/bmw/person/entity/BasePersonBean.java b/modules/bmw/src/main/java/com/bonus/bmw/person/entity/BasePersonBean.java index 3a893b5..2c9a5aa 100644 --- a/modules/bmw/src/main/java/com/bonus/bmw/person/entity/BasePersonBean.java +++ b/modules/bmw/src/main/java/com/bonus/bmw/person/entity/BasePersonBean.java @@ -77,10 +77,10 @@ public class BasePersonBean { // @Excel(name = "*身份证失效日期",required = true) // private String expiryDate; - @Excel(name = "*身份证生效日期", isRegex = "^\\d{4}/\\d{1,2}/\\d{1,2}$") + @Excel(name = "*身份证生效日期", isRegex = "^\\d{4}[-/]\\d{1,2}[-/]\\d{1,2}$") private String signDate; - @Excel(name = "*身份证失效日期", isRegex = "^\\d{4}/\\d{1,2}/\\d{1,2}$") + @Excel(name = "*身份证失效日期", isRegex = "^\\d{4}[-/]\\d{1,2}[-/]\\d{1,2}$") private String expiryDate; /** diff --git a/modules/bmw/src/main/java/com/bonus/bmw/person/service/ContractServiceImpl.java b/modules/bmw/src/main/java/com/bonus/bmw/person/service/ContractServiceImpl.java index 509255c..3d046a1 100644 --- a/modules/bmw/src/main/java/com/bonus/bmw/person/service/ContractServiceImpl.java +++ b/modules/bmw/src/main/java/com/bonus/bmw/person/service/ContractServiceImpl.java @@ -45,22 +45,22 @@ public class ContractServiceImpl implements ContractService { public int addContractInfo(ContractBean bean) { //现在合同可以重复上传,在上传之前将以前合同设置为无效 int i = 0; - if("-1".equals(bean.getDelId())){ + if ("-1".equals(bean.getDelId())) { i = 1; - }else{ + } else { i = delContract(bean); } - if(i>0){ + if (i > 0) { String proId = bean.getProId(); - if (!StringUtils.isEmpty(proId) && !"null".equalsIgnoreCase(proId)){ + if (!StringUtils.isEmpty(proId) && !"null".equalsIgnoreCase(proId)) { String proName = personComprehensiveDao.getProNme(proId); String abbreviation = getInitialsUpperCaseWithPinyin(proName); - int contractNum =personComprehensiveDao.getContractNum(); + int contractNum = personComprehensiveDao.getContractNum(); String dateStr = DateUtil.format(DateUtil.date(), "yyyyMMdd"); // 使用 Hutool 的 DateUtil String contractCode = abbreviation + dateStr + contractNum; bean.setContractCode(contractCode); i = dao.addContractInfo(bean); - }else{ + } else { i = -1; return i; } @@ -69,15 +69,15 @@ public class ContractServiceImpl implements ContractService { //将合同id存入 出入场表 //1.0先查 最新出入场记录 String date = dao.getWorkerEinRecord(bean.getIdNumber()); - if(StringUtils.isNotEmpty(date)){ - dao.updateWorkerEinRecord(bean.getId(),bean.getIdNumber(),date); + if (StringUtils.isNotEmpty(date)) { + dao.updateWorkerEinRecord(bean.getId(), bean.getIdNumber(), date); } //添加照片 - List list= new ArrayList<>(); + List list = new ArrayList<>(); for (int j = 0; j < bean.getFilePath().length; j++) { - list.add(new ContractBean(bean.getId(),bean.getIdNumber(), - "",DateUtils.getDate(),DateUtils.getTime(),bean.getFilePath()[j])); + list.add(new ContractBean(bean.getId(), bean.getIdNumber(), + "", DateUtils.getDate(), DateUtils.getTime(), bean.getFilePath()[j])); } int j = addContractPhoto(list); //判断是否绿灯,修改数据 @@ -88,29 +88,37 @@ public class ContractServiceImpl implements ContractService { /** * 判断是否需要修改红绿灯 + * * @param list */ - public void updateRedLightStatus(List list){ + public void updateRedLightStatus(List list) { LightStatusBean bean = new LightStatusBean(); for (RedLightHisBean redLightHisBean : list) { bean.setIdNumber(redLightHisBean.getIdNumber()); LightStatusBean lightStatus = integratedQueryService.getLightStatus(bean); //在分包班组插入数据时,有事务,所以直接判断是不是插入成功即可 - if(list.size()==1 && "-1".equals(list.get(0).getSubId())){ + if (list.size() == 1 && "-1".equals(list.get(0).getSubId())) { lightStatus.setSubTeam("-1"); } - if(lightStatus != null){ - if(StringUtils.isNotEmpty(lightStatus.getCompanyExamScore()) && + if (lightStatus != null) { + if (StringUtils.isNotEmpty(lightStatus.getCompanyExamScore()) && StringUtils.isNotEmpty(lightStatus.getDeptExamScore()) && StringUtils.isNotEmpty(lightStatus.getTeamExamScore())) { if (Integer.parseInt(lightStatus.getCompanyExamScore()) >= 80 && Integer.parseInt(lightStatus.getDeptExamScore()) >= 80 && Integer.parseInt(lightStatus.getTeamExamScore()) >= 80 && - StringUtils.isNotEmpty(lightStatus.getSubTeam()) && StringUtils.isNotEmpty(lightStatus.getWageCard()) && - StringUtils.isNotEmpty(lightStatus.getWageCard())) { - redListDao.updateWorkerLight(redLightHisBean.getIdNumber()); - } + StringUtils.isNotEmpty(lightStatus.getSubTeam()) && + StringUtils.isNotEmpty(lightStatus.getWageCard()) && + StringUtils.isNotEmpty(lightStatus.getCompanyExamFilePath()) && + StringUtils.isNotEmpty(lightStatus.getDeptExamFilePath()) && + StringUtils.isNotEmpty(lightStatus.getTeamExamFilePath()) && + StringUtils.isNotEmpty(lightStatus.getContract()) + ) { + redListDao.updateWorkerLight(redLightHisBean.getIdNumber()); + } else { + redListDao.updateWorkerLightYellow(redLightHisBean.getIdNumber()); } + } } } } @@ -126,34 +134,34 @@ public class ContractServiceImpl implements ContractService { List contractManageList = dao.getContractManageList(params, offset, limit); List beanList = new ArrayList<>(); for (ContractBean contractBean : contractManageList) { - if("纸质合同".equals(contractBean.getContractType())){ + if ("纸质合同".equals(contractBean.getContractType())) { contractBean.setStauts("已签订"); - }else if("0".equals(contractBean.getIsAudit())){ + } else if ("0".equals(contractBean.getIsAudit())) { contractBean.setStauts("待签订"); - }else if("2".equals(contractBean.getIsAudit())){ + } else if ("2".equals(contractBean.getIsAudit())) { contractBean.setStauts("审核不通过"); - }else if("1".equals(contractBean.getIsAudit()) - && !"0".equals(contractBean.getIsSign()) && !"1".equals(contractBean.getIsSign())){ + } else if ("1".equals(contractBean.getIsAudit()) + && !"0".equals(contractBean.getIsSign()) && !"1".equals(contractBean.getIsSign())) { contractBean.setStauts("待签署"); - }else if("1".equals(contractBean.getIsAudit()) && "0".equals(contractBean.getIsSign())){ + } else if ("1".equals(contractBean.getIsAudit()) && "0".equals(contractBean.getIsSign())) { contractBean.setStauts("未签署"); - }else if("1".equals(contractBean.getIsAudit()) && "1".equals(contractBean.getIsSign())){ + } else if ("1".equals(contractBean.getIsAudit()) && "1".equals(contractBean.getIsSign())) { contractBean.setStauts("已签署"); - }else if("1".equals(contractBean.getIsAudit())){ + } else if ("1".equals(contractBean.getIsAudit())) { contractBean.setStauts("未签署"); - }else{ + } else { contractBean.setStauts("未签订"); } } String contractStatus = params.get("contractStatus").toString(); - if(!"".equals(contractStatus)){ + if (!"".equals(contractStatus)) { for (ContractBean contractBean : contractManageList) { - if(contractStatus.equals(contractBean.getStauts())){ + if (contractStatus.equals(contractBean.getStauts())) { beanList.add(contractBean); } } - }else{ + } else { beanList = contractManageList; } return beanList; @@ -172,12 +180,12 @@ public class ContractServiceImpl implements ContractService { @Override public int delContract(ContractBean entity) { ContractBean bean = dao.getLightStatus(entity); - if("2".equals(bean.getLightStatus())){ //判断是否为绿灯,是的话修改为黄灯 + if ("2".equals(bean.getLightStatus())) { //判断是否为绿灯,是的话修改为黄灯 dao.updLightStatus(entity); } int i = dao.delContract(entity); - if(i>0){ - int j = dao.delContractPhoto(entity); + if (i > 0) { + int j = dao.delContractPhoto(entity); } return i; } @@ -189,7 +197,7 @@ public class ContractServiceImpl implements ContractService { @Override public List getContractSingletonList(Map params, Integer offset, Integer limit) { - return dao.getContractSingletonList(params,offset,limit); + return dao.getContractSingletonList(params, offset, limit); } @Override diff --git a/modules/bmw/src/main/java/com/bonus/bmw/person/service/InOutServiceImpl.java b/modules/bmw/src/main/java/com/bonus/bmw/person/service/InOutServiceImpl.java index 1ffaa7e..09b5018 100644 --- a/modules/bmw/src/main/java/com/bonus/bmw/person/service/InOutServiceImpl.java +++ b/modules/bmw/src/main/java/com/bonus/bmw/person/service/InOutServiceImpl.java @@ -211,6 +211,9 @@ public class InOutServiceImpl implements InOutService { RedLightHisBean redLight = new RedLightHisBean(); redLight.setIdNumber(idNumber); dealWithRedLight(redLight); + + //先查询无信号班组,如果有就删除掉。 + dao.updateNoSignalTeamPerson(idNumber); } return x >= BasePersonBeans.size() ? R.ok("出场审核成功") : R.fail("出场审核失败"); } diff --git a/modules/bmw/src/main/resources/mapper/person/InOutMapper.xml b/modules/bmw/src/main/resources/mapper/person/InOutMapper.xml index 7d9c7ad..85a6667 100644 --- a/modules/bmw/src/main/resources/mapper/person/InOutMapper.xml +++ b/modules/bmw/src/main/resources/mapper/person/InOutMapper.xml @@ -142,6 +142,9 @@ where id_number = #{idNumber} and ein_time = #{einTime} + + UPDATE `bm_no_signal_team_person` SET `IS_ACTIVE` = '0' WHERE `id_number` = #{idNumber} and `is_active` = '1' +