|
|
@@ -1,23 +1,25 @@
|
|
|
package org.jeecg.modules.smscheck.service.impl;
|
|
|
|
|
|
+import com.alibaba.fastjson.JSON;
|
|
|
+import com.alibaba.fastjson.JSONArray;
|
|
|
+import com.alibaba.fastjson.JSONObject;
|
|
|
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import org.jeecg.common.util.BeanCopyUtil;
|
|
|
import org.jeecg.modules.smscheck.configs.CheckStateCode;
|
|
|
-import org.jeecg.modules.smscheck.entity.SmsCheckCustomerInfoBecomeDue;
|
|
|
-import org.jeecg.modules.smscheck.entity.SmsWarningCheckCustomerDataLog;
|
|
|
-import org.jeecg.modules.smscheck.entity.SmsWarningCustomerData;
|
|
|
+import org.jeecg.modules.smscheck.entity.*;
|
|
|
import org.jeecg.modules.smscheck.mapper.SmsWarningCheckCustomerDataLogMapper;
|
|
|
-import org.jeecg.modules.smscheck.mapper.SmsWarningCustomerDataMapper;
|
|
|
-import org.jeecg.modules.smscheck.service.SmsCheckCustomerInfoBecomeDueService;
|
|
|
-import org.jeecg.modules.smscheck.service.SmsWarningCheckCustomerDataLogService;
|
|
|
-import org.jeecg.modules.smscheck.service.SmsWarningCustomerDataService;
|
|
|
+import org.jeecg.modules.smscheck.service.*;
|
|
|
+import org.jeecg.modules.smscheck.vo.*;
|
|
|
import org.jeecg.modules.smscheck.vo.SmsWarningCheckCustomerDataLogVo;
|
|
|
+import org.springframework.beans.BeanUtils;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
import java.lang.reflect.Field;
|
|
|
-import java.util.Optional;
|
|
|
+import java.util.*;
|
|
|
import java.util.concurrent.atomic.AtomicReference;
|
|
|
|
|
|
@Service
|
|
|
@@ -25,7 +27,15 @@ public class SmsWarningCheckCustomerDataLogServiceImpl extends ServiceImpl<SmsWa
|
|
|
@Autowired
|
|
|
SmsCheckCustomerInfoBecomeDueService smsCheckCustomerInfoBecomeDueService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private SmsWarningCustomerDataService warningCustomerDataService;
|
|
|
|
|
|
+ @Autowired
|
|
|
+ private SmsWarningCheckCustomerDataHistoryService warningCheckCustomerDataHistoryService;
|
|
|
+ @Autowired
|
|
|
+ private SmsCheckCustomerInfoBecomeDueService dueService;
|
|
|
+ @Autowired
|
|
|
+ private ISmsCheckCustomerDataService customerDataService;
|
|
|
@Override
|
|
|
public boolean lotAudit(SmsWarningCheckCustomerDataLog smsWarningCheckCustomerDataLog) throws IllegalAccessException {
|
|
|
// 获取稽核预警客户信息
|
|
|
@@ -71,4 +81,159 @@ public class SmsWarningCheckCustomerDataLogServiceImpl extends ServiceImpl<SmsWa
|
|
|
}
|
|
|
return stateBoolean.get();
|
|
|
}
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public boolean addWarningLog(JSONObject jsonObject) {
|
|
|
+
|
|
|
+
|
|
|
+ SmsWarningCheckCustomerDataLogAndData warningCheckCustomerDataLog = JSON.parseObject(jsonObject.toJSONString(), SmsWarningCheckCustomerDataLogAndData.class);
|
|
|
+ SmsWarningCheckCustomerDataLog smsWarningCheckCustomerDataLog = new SmsWarningCheckCustomerDataLog();
|
|
|
+ BeanUtils.copyProperties(warningCheckCustomerDataLog,smsWarningCheckCustomerDataLog);
|
|
|
+ smsWarningCheckCustomerDataLog.setId(warningCheckCustomerDataLog.getLogId());
|
|
|
+ boolean saveLog = saveOrUpdate(smsWarningCheckCustomerDataLog);
|
|
|
+
|
|
|
+ SmsWarningCustomerData smsWarningCustomerData = new SmsWarningCustomerData();
|
|
|
+ BeanUtils.copyProperties(warningCheckCustomerDataLog,smsWarningCustomerData);
|
|
|
+ smsWarningCustomerData.setId(warningCheckCustomerDataLog.getDataId());
|
|
|
+ boolean b = warningCustomerDataService.saveOrUpdate(smsWarningCustomerData);
|
|
|
+ if (saveLog && b){
|
|
|
+ Map<String, String> mapByResult = getMapWarningByResult(smsWarningCheckCustomerDataLog);
|
|
|
+ /** 稽核状态 0:未处理;1:未完善;2:待稽核;3:已整改;4:待整改;5:稽核通过; */
|
|
|
+ SmsCheckCustomerInfoBecomeDue byId = dueService.getById(warningCheckCustomerDataLog.getDueId());
|
|
|
+ if (byId.getCheckState()==4){
|
|
|
+ byId.setCheckState(CheckStateCode.CHECK_STSTE_2);
|
|
|
+ }else {
|
|
|
+ if (mapByResult.isEmpty()){
|
|
|
+ byId.setCheckState(CheckStateCode.CHECK_STSTE_5);
|
|
|
+ LambdaQueryWrapper<SmsCheckCustomerData> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ queryWrapper.eq(SmsCheckCustomerData::getInfoId, byId.getInfoId());
|
|
|
+ SmsCheckCustomerData smsCheckCustomerData = customerDataService.getOne(queryWrapper);
|
|
|
+
|
|
|
+ UpdateWrapper<SmsCheckCustomerData> updateWrapper = new UpdateWrapper<>();
|
|
|
+ updateWrapper.in("id", smsCheckCustomerData.getId());
|
|
|
+ if (byId.getShortNowContractDateIs()!=0){
|
|
|
+ smsCheckCustomerData.setContractDateDate(warningCheckCustomerDataLog.getContractDateDate());
|
|
|
+ smsCheckCustomerData.setContractDateDateIs(warningCheckCustomerDataLog.getContractDateDateIs());
|
|
|
+ String json = getList(smsCheckCustomerData.getContractDate(), warningCheckCustomerDataLog.getContractDate());
|
|
|
+ updateWrapper.set("contract_date_date", warningCheckCustomerDataLog.getContractDateDate())
|
|
|
+ .set("contract_date_date_is", warningCheckCustomerDataLog.getContractDateDateIs())
|
|
|
+ .set("contract_date", json);
|
|
|
+ }
|
|
|
+ if (byId.getShortNowCodeNumberDateIs()!=0){
|
|
|
+
|
|
|
+ smsCheckCustomerData.setCodeNumberDateDate(warningCheckCustomerDataLog.getCodeNumberDateDate());
|
|
|
+ smsCheckCustomerData.setCodeNumberDateDateIs(warningCheckCustomerDataLog.getCodeNumberDateDateIs());
|
|
|
+ String json = getList(smsCheckCustomerData.getCodeNumberDate(), warningCheckCustomerDataLog.getCodeNumberDate());
|
|
|
+ updateWrapper
|
|
|
+ .set("code_number_date_date", warningCheckCustomerDataLog.getCodeNumberDateDate())
|
|
|
+ .set("code_number_date_date_is", warningCheckCustomerDataLog.getCodeNumberDateDateIs())
|
|
|
+ .set("code_number_date", json);
|
|
|
+ }
|
|
|
+
|
|
|
+ if (byId.getShortNowFilingsDataIs()!=0){
|
|
|
+ smsCheckCustomerData.setFilingsDateDate(warningCheckCustomerDataLog.getFilingsDateDate());
|
|
|
+ smsCheckCustomerData.setFilingsDateDateIs(warningCheckCustomerDataLog.getFilingsDateDateIs());
|
|
|
+ String json = getList(smsCheckCustomerData.getFilingsDate(), warningCheckCustomerDataLog.getFilingsDate());
|
|
|
+ updateWrapper
|
|
|
+ .set("filings_date_date", warningCheckCustomerDataLog.getFilingsDateDate())
|
|
|
+ .set("filings_date_date_is", warningCheckCustomerDataLog.getFilingsDateDateIs())
|
|
|
+ .set("filings_date", json);
|
|
|
+
|
|
|
+ }
|
|
|
+ if (byId.getShortNowPermitDateIs()!=0){
|
|
|
+ smsCheckCustomerData.setPermitDateDate(warningCheckCustomerDataLog.getPermitDateDate());
|
|
|
+ smsCheckCustomerData.setPermitDateDateIs(warningCheckCustomerDataLog.getPermitDateDateIs());
|
|
|
+ String json = getList(smsCheckCustomerData.getPermitDate(), warningCheckCustomerDataLog.getPermitDate());
|
|
|
+ updateWrapper
|
|
|
+ .set("permit_date_date", warningCheckCustomerDataLog.getPermitDateDate())
|
|
|
+ .set("permit_date_date_is", warningCheckCustomerDataLog.getPermitDateDateIs())
|
|
|
+ .set("permit_date", json);
|
|
|
+
|
|
|
+ }
|
|
|
+ updateWrapper
|
|
|
+ .set("update_time",new Date());
|
|
|
+ customerDataService.update(updateWrapper);
|
|
|
+ }else {
|
|
|
+ byId.setCheckState(CheckStateCode.CHECK_STSTE_4);
|
|
|
+ //添加history 表
|
|
|
+ SmsWarningCheckCustomerDataHistory smsWarningCheckCustomerDataHistory = new SmsWarningCheckCustomerDataHistory();
|
|
|
+ BeanUtils.copyProperties(warningCheckCustomerDataLog,smsWarningCheckCustomerDataHistory);
|
|
|
+ smsWarningCheckCustomerDataHistory.setCreateTime(new Date());
|
|
|
+ warningCheckCustomerDataHistoryService.save(smsWarningCheckCustomerDataHistory);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ UpdateWrapper<SmsCheckCustomerInfoBecomeDue> updateWrapper = new UpdateWrapper<>();
|
|
|
+ updateWrapper.in("id", byId.getId()).set("check_state", byId.getCheckState()).set("update_time",new Date());
|
|
|
+ dueService.update(updateWrapper);
|
|
|
+ return true;
|
|
|
+ }
|
|
|
+ return false;
|
|
|
+ }
|
|
|
+
|
|
|
+ private Map<String,String>getMapWarningByResult(SmsWarningCheckCustomerDataLog log){
|
|
|
+ HashMap<String,String> map =new HashMap<>();
|
|
|
+ if (StringUtils.isNotBlank(log.getContractDateResult() ) && !log.getContractDateResult().equals("1")){
|
|
|
+ map.put("合同到期时间结果","未通过");
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(log.getCodeNumberDateResult() ) && !log.getCodeNumberDateResult().equals("1")){
|
|
|
+ map.put("码号证书到期时间结果","未通过");
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(log.getFilingsDateResult() ) && !log.getFilingsDateResult().equals("1")){
|
|
|
+ map.put("备案通知到期时间结果","未通过");
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(log.getPermitDateResult() ) && !log.getPermitDateResult().equals("1")){
|
|
|
+ map.put("增值业务许可证到期时间结果","未通过");
|
|
|
+ }
|
|
|
+ if (StringUtils.isNotBlank(log.getWarningInfo() ) && !log.getWarningInfo().equals("1")){
|
|
|
+ map.put("预警字段","未通过");
|
|
|
+ }
|
|
|
+ return map;
|
|
|
+ }
|
|
|
+
|
|
|
+ private String getList(String smsCheckCustomerData,String warningCheckCustomerDataLog){
|
|
|
+ //原来
|
|
|
+
|
|
|
+
|
|
|
+ List<DataUpdateObj> dataUpdateObjsOld = JSONObject.parseArray(smsCheckCustomerData, DataUpdateObj.class);
|
|
|
+ int size =dataUpdateObjsOld.size();
|
|
|
+ //追加
|
|
|
+
|
|
|
+ List<DataUpdateObj> dataUpdateObjs = JSONObject.parseArray(warningCheckCustomerDataLog, DataUpdateObj.class);
|
|
|
+ for (DataUpdateObj object : dataUpdateObjs) {
|
|
|
+ size++;
|
|
|
+ object.setId(size+"");
|
|
|
+ }
|
|
|
+ dataUpdateObjsOld.addAll(dataUpdateObjs);
|
|
|
+ String jsonString1 = JSON.toJSONString(dataUpdateObjsOld);
|
|
|
+
|
|
|
+//
|
|
|
+// DataUpdateObjList dataUpdateObj = JSON.parseObject(smsCheckCustomerData, DataUpdateObjList.class);
|
|
|
+// //追加
|
|
|
+// DataUpdateObjList dataUpdateObjNew = JSON.parseObject(warningCheckCustomerDataLog, DataUpdateObjList.class);
|
|
|
+//
|
|
|
+// List<DataUpdateObj> dataUpdateObjList=new ArrayList<>();
|
|
|
+//
|
|
|
+// List<DataUpdateObj> dataUpdateObjs = dataUpdateObj.getDataUpdateObjs();
|
|
|
+//
|
|
|
+// List<DataUpdateObj> dataUpdateObjsNew = dataUpdateObjNew.getDataUpdateObjs();
|
|
|
+//
|
|
|
+// int id =1;
|
|
|
+// for (DataUpdateObj updateObj : dataUpdateObjs) {
|
|
|
+// DataUpdateObj obj =new DataUpdateObj();
|
|
|
+// BeanUtils.copyProperties(updateObj,obj);
|
|
|
+// obj.setId(id+"");
|
|
|
+// id++;
|
|
|
+// dataUpdateObjList.add(obj);
|
|
|
+// }
|
|
|
+//
|
|
|
+// for (DataUpdateObj updateObj : dataUpdateObjsNew) {
|
|
|
+// DataUpdateObj obj =new DataUpdateObj();
|
|
|
+// BeanUtils.copyProperties(updateObj,obj);
|
|
|
+// obj.setId(id+"");
|
|
|
+// id++;
|
|
|
+// dataUpdateObjList.add(obj);
|
|
|
+// }
|
|
|
+
|
|
|
+ return jsonString1;
|
|
|
+ }
|
|
|
}
|