package com.fzzy.async.fzzy61.impl; import com.fzzy.api.Constant; import com.fzzy.api.entity.Api1101; import com.fzzy.api.entity.Api1102; import com.fzzy.api.entity.Api1112; import com.fzzy.api.entity.ApiLog; import com.fzzy.api.utils.ContextUtil; import com.fzzy.api.view.repository.Api1101Rep; import com.fzzy.api.view.repository.Api1102Rep; import com.fzzy.api.view.repository.Api1112Rep; import com.fzzy.api.view.repository.ApiLogRep; import com.fzzy.async.fzzy40.entity.Fz40OAStaff; import com.fzzy.async.fzzy40.repository.Fzzy40Sync1112Rep; import lombok.extern.slf4j.Slf4j; import org.apache.commons.lang.StringUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Component; import java.util.Date; import java.util.List; /** * 人员信息 * * @Author:YAN */ @Slf4j @Component public class Fzzy61Sync1112 { @Autowired private Fzzy40Sync1112Rep fzzy40Sync1112Rep; @Autowired private Api1101Rep api1101Rep; @Autowired private Api1102Rep api1102Rep; @Autowired private Api1112Rep api1112Rep; @Autowired private ApiLogRep apiLogRep; /** * 同步人员信息 * * @param kqdm * @param deptId * @param start * @param end */ public void syncData(String kqdm, String deptId, Date start, Date end) { log.info("-------------1112接口人员信息数据开始同步------------------"); //同步数据,只记录失败的信息 ApiLog apiLog = new ApiLog(); apiLog.setType(ApiLog.TYPE_SYNC); apiLog.setKqdm(deptId); apiLog.setUploadTime(new Date()); apiLog.setInteId(Constant.API_CODE_1112); apiLog.setStatus(99); apiLog.setId(ContextUtil.getUUID()); try { List list = fzzy40Sync1112Rep.listStaff(deptId.substring(0, 4)); if (null == list || list.isEmpty()) { log.info("-------------没有获取到人员信息------------------"); return; } //根据库区代码获取单位代码 Api1102 api1102 = api1102Rep.findById(kqdm).get(); Api1101 api1101 = api1101Rep.findById(api1102.getDwdm()).get(); Api1112 apiData; List api1112List; for (Fz40OAStaff sysData : list) { apiData = new Api1112(); apiData.setDwmc(api1101.getDwmc()); apiData.setDwdm(api1101.getDwdm()); apiData.setKqdm(api1101.getKqdm()); apiData.setSfzhm(sysData.getSfzhm()); apiData.setLsbm(sysData.getLsbm()); apiData.setXzqhdm(sysData.getXzqhdm()); apiData.setXm(sysData.getXm()); apiData.setXb(sysData.getXb()); apiData.setRzrq(sysData.getRzrq()); apiData.setGwxz(sysData.getGwxz()); apiData.setZgzt(sysData.getZgzt()); apiData.setLzrq(sysData.getLzrq()); apiData.setZjdh(sysData.getZjdh()); apiData.setYddh(sysData.getYddh()); apiData.setDzyx(sysData.getDzyx()); apiData.setMz(sysData.getMz()); apiData.setZzmm(sysData.getZzmm()); apiData.setZy(sysData.getZy()); apiData.setQdzgzchzyzgsj(sysData.getQdzgzchzyzgsj()); apiData.setXl(StringUtils.isEmpty(sysData.getXl()) ? "3" : sysData.getXl()); apiData.setZw(sysData.getZw()); apiData.setRylb(sysData.getRylb()); apiData.setZhgxsj(sysData.getUpdateTime()); apiData.setBizId(sysData.getSfzhm()); api1112List = api1112Rep.getDataByBizId(apiData.getBizId()); if (null == api1112List || api1112List.isEmpty()) { apiData.setCzbz(Constant.CZBZ_I); } else { apiData.setCzbz(api1112List.get(0).getCzbz()); } //保存数据 api1112Rep.save(apiData); log.info("1112人员信息---同步数据:{}", apiData.toString()); } } catch (Exception e) { log.error("---1112人员信息同步执行失败----{}", e.toString()); apiLog.setResult("人员信息同步执行失败:" + e.getMessage()); apiLogRep.save(apiLog); } } }