|
@@ -0,0 +1,141 @@
|
|
|
+package com.huyi.task.taskMan.service;
|
|
|
+
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
|
|
|
+import com.huyi.task.base.entity.SysCompany;
|
|
|
+import com.huyi.task.base.entity.SysCompanyRel;
|
|
|
+import com.huyi.task.base.entity.SysCompanySpare;
|
|
|
+import com.huyi.task.base.service.ISysCompanyRelService;
|
|
|
+import com.huyi.task.base.service.ISysCompanyService;
|
|
|
+import com.huyi.task.base.service.ISysCompanySpareService;
|
|
|
+import com.tianhu.common.core.utils.CommonUtil;
|
|
|
+import com.tianhu.common.core.utils.DateUtils;
|
|
|
+import com.tianhu.common.core.utils.IdUtils;
|
|
|
+import org.slf4j.Logger;
|
|
|
+import org.slf4j.LoggerFactory;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.context.annotation.Configuration;
|
|
|
+import org.springframework.scheduling.annotation.EnableScheduling;
|
|
|
+
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
+@Configuration //1.主要用于标记配置类,兼备Component的效果。
|
|
|
+@EnableScheduling // 2.开启定时任务
|
|
|
+public class TimedTaskService {
|
|
|
+ private static final Logger log = LoggerFactory.getLogger(TimedTaskService.class);
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private ISysCompanySpareService iSysCompanySpareService;
|
|
|
+ @Autowired
|
|
|
+ private ISysCompanyRelService iSysCompanyRelService;
|
|
|
+ @Autowired
|
|
|
+ private ISysCompanyService iSysCompanyService;
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 定时查询已认证的链属企业
|
|
|
+ */
|
|
|
+ //每十分钟
|
|
|
+// @Scheduled(cron = "0 */10 * * * ?")
|
|
|
+ //每一分钟(测试用)
|
|
|
+// @Scheduled(cron = "0/10 * * * * ?")
|
|
|
+ private void companyRelHandle(){
|
|
|
+ //查询链属公司信息表正常状态的数据(spare)
|
|
|
+ QueryWrapper<SysCompanySpare> spareLambdaQueryWrapper = new QueryWrapper<>();
|
|
|
+ //正常状态
|
|
|
+ spareLambdaQueryWrapper.eq("scp_status","00");
|
|
|
+ //groupBy企业名称与社会统一信用代码
|
|
|
+ spareLambdaQueryWrapper.groupBy("scp_name","scp_social_code");
|
|
|
+ List<Map<String, Object>> spareList = iSysCompanySpareService.listMaps(spareLambdaQueryWrapper);
|
|
|
+ //走for验证企业是否已认证
|
|
|
+ for (int i = 0; i < spareList.size(); i++) {
|
|
|
+ //企业名称
|
|
|
+ String scyName = CommonUtil.objToString(spareList.get(i).get("scp_name"));
|
|
|
+ //社会统一信用代码
|
|
|
+ String code = CommonUtil.objToString(spareList.get(i).get("scp_social_code"));
|
|
|
+ //查询企业表(company)
|
|
|
+ LambdaQueryWrapper<SysCompany> queryWrapper = new LambdaQueryWrapper<>();
|
|
|
+ //企业名称
|
|
|
+ queryWrapper.eq(SysCompany::getScyName,scyName);
|
|
|
+ //社会统一信用代码
|
|
|
+ queryWrapper.eq(SysCompany::getScySocialCode,code);
|
|
|
+ //正常状态
|
|
|
+ queryWrapper.eq(SysCompany::getScyStatus,"00");
|
|
|
+ List<SysCompany> list = iSysCompanyService.findSysCompanys(queryWrapper);
|
|
|
+ //如果size>0 则查询链属企业进行新增
|
|
|
+ if(list.size() > 0){
|
|
|
+ //获取链属的企业Id
|
|
|
+ String scyId = list.get(0).getScyId();
|
|
|
+ //再次查询spare表
|
|
|
+ LambdaQueryWrapper<SysCompanySpare> sysCompanySpare = new LambdaQueryWrapper<>();
|
|
|
+ //企业名称
|
|
|
+ sysCompanySpare.eq(SysCompanySpare::getScpName,scyName);
|
|
|
+ //社会统一信用代码
|
|
|
+ sysCompanySpare.eq(SysCompanySpare::getScpSocialCode,code);
|
|
|
+ List<SysCompanySpare> sysCompanySpareList = iSysCompanySpareService.findSysCompanySpares(sysCompanySpare);
|
|
|
+ //走for添加链属信息
|
|
|
+ for (int j = 0; j < sysCompanySpareList.size(); j++) {
|
|
|
+ //链属表Id-----(rel表)
|
|
|
+ String scrId = IdUtils.fastSimpleUUID();
|
|
|
+ //链属信息表录入企业Id(scp_company_id)
|
|
|
+ String relId = sysCompanySpareList.get(j).getScpCompanyId();
|
|
|
+ //企业类型00:上游,01:下游
|
|
|
+ String type = sysCompanySpareList.get(j).getScpType();
|
|
|
+ //联系人
|
|
|
+ String scrContarct = sysCompanySpareList.get(j).getScpContarct();
|
|
|
+ //联系电话
|
|
|
+ String scrContarctPhone = sysCompanySpareList.get(j).getScpContarctPhone();
|
|
|
+ //创建人
|
|
|
+ String createBy = sysCompanySpareList.get(j).getCreateBy();
|
|
|
+ //传值
|
|
|
+ SysCompanyRel sysCompanyRel = new SysCompanyRel();
|
|
|
+ //主键
|
|
|
+ sysCompanyRel.setScrId(scrId);
|
|
|
+ //接收方
|
|
|
+ sysCompanyRel.setScrReceiveCompanyId(scyId);
|
|
|
+ //接收方上下游类型
|
|
|
+ sysCompanyRel.setScrReceiveType(type);
|
|
|
+ //发起方(链属信息表录入企业Id----scp_company_id)
|
|
|
+ sysCompanyRel.setScrLaunchCompanyId(relId);
|
|
|
+ //如果接收方为上游(00),则发起方为下游(01)
|
|
|
+ //如果接收方为下游(01),则发起方为上游(00)
|
|
|
+ if("00".equals(type)){
|
|
|
+ sysCompanyRel.setScrLaunchType("01");
|
|
|
+ }else if("01".equals(type)){
|
|
|
+ sysCompanyRel.setScrLaunchType("00");
|
|
|
+ }
|
|
|
+ //联系人
|
|
|
+ sysCompanyRel.setScrContarct(scrContarct);
|
|
|
+ //联系电话
|
|
|
+ sysCompanyRel.setScrContarctPhone(scrContarctPhone);
|
|
|
+ //链属状态为(00:待链属, 01:正常, 02:拒绝链属, 99:删除)
|
|
|
+ sysCompanyRel.setScrStatus("01");
|
|
|
+ //创建人
|
|
|
+ sysCompanyRel.setCreateBy(createBy);
|
|
|
+ //创建时间
|
|
|
+ sysCompanyRel.setCreateTime(DateUtils.getNowDate());
|
|
|
+ //新增
|
|
|
+ iSysCompanyRelService.createSysCompanyRel(sysCompanyRel);
|
|
|
+ //获取链属公司信息表主键(spare)
|
|
|
+ String scpId = sysCompanySpareList.get(j).getScpId();
|
|
|
+ //拿到此条实体类
|
|
|
+ SysCompanySpare spare = iSysCompanySpareService.getById(scpId);
|
|
|
+ //改为已认证
|
|
|
+ SysCompanySpare companySpare = new SysCompanySpare();
|
|
|
+ //主键
|
|
|
+ companySpare.setScpId(scpId);
|
|
|
+ //状态 00:正常 01:已认证 99:删除
|
|
|
+ companySpare.setScpStatus("01");
|
|
|
+ //修改人
|
|
|
+ companySpare.setUpdateBy(spare.getUpdateBy());
|
|
|
+ //修改时间
|
|
|
+ companySpare.setUpdateTime(DateUtils.getNowDate());
|
|
|
+ //执行
|
|
|
+ iSysCompanySpareService.updateById(companySpare);
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+ }
|
|
|
+
|
|
|
+}
|
|
|
+
|