package com.ruoyi.quartz.task;
|
|
import com.ruoyi.common.core.domain.entity.SysUser;
|
import com.ruoyi.common.utils.bean.DtoConversionUtils;
|
import com.ruoyi.project.domain.*;
|
import com.ruoyi.project.domain.vo.DingTalkReqVo;
|
import com.ruoyi.project.service.*;
|
import com.ruoyi.system.mapper.SysUserMapper;
|
import com.ruoyi.system.service.ISysUserService;
|
import com.taobao.api.ApiException;
|
import lombok.extern.slf4j.Slf4j;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Component;
|
import com.ruoyi.common.utils.StringUtils;
|
import org.springframework.util.CollectionUtils;
|
import org.springframework.util.ObjectUtils;
|
|
import java.text.ParseException;
|
import java.text.SimpleDateFormat;
|
import java.util.*;
|
import java.util.concurrent.ConcurrentHashMap;
|
import java.util.concurrent.locks.ReentrantLock;
|
|
/**
|
* 定时任务调度测试
|
*
|
* @author ruoyi
|
*/
|
@Component("ryTask")
|
@Slf4j
|
public class RyTask {
|
@Autowired
|
private DingTalkService dingTalkService;
|
|
@Autowired
|
private IServiceReimbursementService serviceReimbursementService;
|
|
@Autowired
|
private IServiceTasknumService ServiceTasknumService;
|
|
@Autowired
|
private IServiceReimbursementSharedService serviceReimbursementSharedService;
|
|
@Autowired
|
private IServiceFundSharedService serviceFundSharedService;
|
|
@Autowired
|
private IServiceFundflowruleService iServiceFundflowruleService;
|
|
@Autowired
|
private IServiceFundService serviceFundService;
|
|
@Autowired
|
private ISysUserService sysUserService;
|
|
|
@Autowired
|
private IServiceFundflowService fundflowService;
|
|
public void ryMultipleParams(String s, Boolean b, Long l, Double d, Integer i) {
|
System.out.println(StringUtils.format("执行多参方法: 字符串类型{},布尔类型{},长整型{},浮点型{},整形{}", s, b, l, d, i));
|
}
|
|
public void ryParams(String params) {
|
System.out.println("执行有参方法:" + params);
|
}
|
|
public void ryNoParams() {
|
System.out.println("执行无参方法");
|
}
|
|
public void checkReportInfo() throws ApiException {
|
//查出所有被医院退回的Fund数据
|
List<ServiceFundShared> serviceFundShareds = serviceFundSharedService.queryFundShareList();
|
for (ServiceFundShared serviceFundShared : serviceFundShareds) {
|
if (StringUtils.isNotBlank(serviceFundShared.getOabdzt()) && serviceFundShared.getOabdzt().equals("已撤销")) {
|
//如果有财务驳回信息说明是退回的
|
String[] split = null;
|
if (StringUtils.isNotEmpty(serviceFundShared.getCxrjyj())) {
|
split = serviceFundShared.getCxrjyj().split("&");
|
}
|
String phone = serviceFundShared.getPhone();
|
//将分享里的该数据删除
|
serviceFundSharedService.delfundsharedInfoById(serviceFundShared.getId());
|
|
ServiceFund serviceFund = new ServiceFund();
|
serviceFund.setId(serviceFundShared.getSerfunid());
|
List<ServiceFund> serviceFunds = serviceFundService.queryInfoById(serviceFund);
|
ServiceFund serviceFund1 = serviceFunds.get(0);
|
serviceFund1.setFlowlevel(100L);
|
serviceFund1.setDel_flag(0);
|
serviceFund1.setRecordstatus(-1);
|
serviceFund1.setBackflowlevel(199);
|
serviceFundService.updateById(serviceFund1);
|
|
SysUser sysUser = sysUserService.selectUserByUserName(serviceFund1.getUserno());
|
sendMeg(split, sysUser.getPhonenumber(), serviceFundShared.getApplytype(), 2, serviceFundShared.getSerfunid());
|
} else {
|
//不是退回的操作
|
if (StringUtils.isNotBlank(serviceFundShared.getZffs()) && serviceFundShared.getSpjg() == 0) {
|
String bh = myMethod();
|
//钱已经到帐,并且审批结果为0,说明审批结束,但数据还没有同步到fund表和fundflow表;对fund表和fundflow表进行更新,并将0改成1
|
ServiceFund serviceFund = new ServiceFund();
|
serviceFund.setBh(serviceFundShared.getBh());
|
serviceFund.setId(serviceFundShared.getSerfunid());
|
serviceFund.setZffs(serviceFundShared.getZffs());
|
if (StringUtils.isNotBlank(serviceFundShared.getPresident())) {
|
serviceFund.setPresident(serviceFundShared.getPresident());
|
}
|
if (StringUtils.isNotBlank(serviceFundShared.getFinvicepresident())) {
|
serviceFund.setFinvicepresident(serviceFundShared.getFinvicepresident());
|
}
|
if (StringUtils.isNotBlank(serviceFundShared.getBusvicepresident())) {
|
serviceFund.setBusvicepresident(serviceFundShared.getBusvicepresident());
|
}
|
if (StringUtils.isNotBlank(serviceFundShared.getOfficedirector())) {
|
serviceFund.setOfficedirector(serviceFundShared.getOfficedirector());
|
}
|
if (StringUtils.isNotBlank(serviceFundShared.getFinancedirector())) {
|
serviceFund.setFinancedirector(serviceFundShared.getFinancedirector());
|
}
|
if (StringUtils.isNotBlank(serviceFundShared.getFinancechecher())) {
|
serviceFund.setFinancechecher(serviceFundShared.getFinancechecher());
|
}
|
serviceFund.setRiqi(serviceFundShared.getRiqi());
|
boolean b = serviceFundService.updateById(serviceFund);
|
log.info("更新serviceFund里的zffs表是否成功: {}", b);
|
ServiceFundflow serviceFundflow = new ServiceFundflow();
|
serviceFundflow.setCreateBy("admin");
|
serviceFundflow.setCreateTime(new Date());
|
serviceFundflow.setUpdateBy("admin");
|
serviceFundflow.setUpdateTime(new Date());
|
//用三个审批人,如果都为空,就为空
|
String spname = "";
|
if (StringUtils.isNotBlank(serviceFundShared.getPresident())) {
|
serviceFundflow.setCheckusername(serviceFundShared.getPresident().substring(0, serviceFundShared.getPresident().indexOf(" ")));
|
//更新校验时间
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
Date parse = new Date();
|
try {
|
parse = simpleDateFormat.parse(serviceFundShared.getPresident().substring(serviceFundShared.getPresident().indexOf(" ") + 1, serviceFundShared.getPresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
serviceFundflow.setCheckTime(parse);
|
spname = spname + serviceFundShared.getPresident() + " ";
|
}
|
if (StringUtils.isNotBlank(serviceFundShared.getFinvicepresident())) {
|
serviceFundflow.setCheckusername(serviceFundShared.getFinvicepresident().substring(0, serviceFundShared.getFinvicepresident().indexOf(" ")));
|
//更新校验时间
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
Date parse = new Date();
|
try {
|
parse = simpleDateFormat.parse(serviceFundShared.getFinvicepresident().substring(serviceFundShared.getFinvicepresident().indexOf(" ") + 1, serviceFundShared.getFinvicepresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
serviceFundflow.setCheckTime(parse);
|
spname = spname + serviceFundShared.getFinvicepresident() + " ";
|
}
|
if (StringUtils.isNotBlank(serviceFundShared.getBusvicepresident())) {
|
serviceFundflow.setCheckusername(serviceFundShared.getBusvicepresident().substring(0, serviceFundShared.getBusvicepresident().indexOf(" ")));
|
//更新校验时间
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
Date parse = new Date();
|
try {
|
parse = simpleDateFormat.parse(serviceFundShared.getBusvicepresident().substring(serviceFundShared.getBusvicepresident().indexOf(" ") + 1, serviceFundShared.getBusvicepresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
serviceFundflow.setCheckTime(parse);
|
spname = spname + serviceFundShared.getBusvicepresident() + " ";
|
}
|
serviceFundflow.setFlowcontent(spname + "审批通过");
|
serviceFundflow.setFlowconclusion(1);
|
serviceFundflow.setFundtype(2);
|
// 999 通过
|
serviceFundflow.setFlowlevel(999);
|
serviceFundflow.setApplytype(serviceFundShared.getApplytype());
|
serviceFundflow.setFundid(serviceFundShared.getSerfunid());
|
serviceFundShared.setSpjg(1);
|
fundflowService.save(serviceFundflow);
|
|
serviceFundflow.setFlowcontent("已付款 : " + serviceFundShared.getZffs());
|
serviceFundflow.setId(null);
|
fundflowService.save(serviceFundflow);
|
//将审批状态改成1
|
serviceFundSharedService.updateById(serviceFundShared);
|
|
} else if (StringUtils.isNotBlank(serviceFundShared.getZffs()) && serviceFundShared.getSpjg() == 1) {
|
//钱已经到帐,并且审批结果为1,审批结束,就不管那些领导是否签字了
|
continue;
|
}
|
|
ServiceFund serviceFund = new ServiceFund();
|
serviceFund.setId(serviceFundShared.getSerfunid());
|
List<ServiceFund> serviceFunds = serviceFundService.queryList(serviceFund);
|
if (!CollectionUtils.isEmpty(serviceFunds)) {
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
Date parse = new Date();
|
|
|
if (StringUtils.isNotBlank(serviceFundShared.getPresident())) {
|
//先查询一下fund是否已经更新President,如果没有更新,则进行更新,并往fundflow表里插一条数据
|
if (StringUtils.isEmpty(serviceFunds.get(0).getPresident())) {
|
try {
|
parse = simpleDateFormat.parse(serviceFundShared.getPresident().substring(serviceFundShared.getPresident().indexOf(" ") + 1, serviceFundShared.getPresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
serviceFund.setPresident(serviceFundShared.getPresident());
|
serviceFundService.updateById(serviceFund);
|
|
//将操作保存到fundflow表中
|
ServiceFundflow serviceFundflow = new ServiceFundflow();
|
serviceFundflow.setCreateBy("admin");
|
serviceFundflow.setCreateTime(new Date());
|
serviceFundflow.setUpdateBy("admin");
|
serviceFundflow.setUpdateTime(new Date());
|
serviceFundflow.setCheckusername(serviceFundShared.getPresident().substring(0, serviceFundShared.getPresident().indexOf(" ")));
|
serviceFundflow.setFlowcontent(serviceFundShared.getPresident().substring(0, serviceFundShared.getPresident().indexOf(" ")) + "审批通过");
|
serviceFundflow.setFlowconclusion(1);
|
serviceFundflow.setFundtype(2);
|
serviceFundflow.setFlowlevel(999);
|
serviceFundflow.setApplytype(serviceFundShared.getApplytype());
|
serviceFundflow.setFundid(serviceFundShared.getSerfunid());
|
serviceFundflow.setCheckTime(parse);
|
fundflowService.save(serviceFundflow);
|
|
}
|
//如果已经更新则不在处理
|
|
}
|
if (StringUtils.isNotBlank(serviceFundShared.getFinvicepresident())) {
|
try {
|
parse = simpleDateFormat.parse(serviceFundShared.getFinvicepresident().substring(serviceFundShared.getFinvicepresident().indexOf(" ") + 1, serviceFundShared.getFinvicepresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
//先查询一下fund是否已经更新Finvicepresident,如果没有更新,则进行更新,并往fundflow表里插一条数据
|
if (StringUtils.isEmpty(serviceFunds.get(0).getFinvicepresident())) {
|
serviceFund.setFinvicepresident(serviceFundShared.getFinvicepresident());
|
serviceFundService.updateById(serviceFund);
|
|
//将操作保存到fundflow表中
|
ServiceFundflow serviceFundflow = new ServiceFundflow();
|
serviceFundflow.setCreateBy("admin");
|
serviceFundflow.setCreateTime(new Date());
|
serviceFundflow.setUpdateBy("admin");
|
serviceFundflow.setUpdateTime(new Date());
|
serviceFundflow.setCheckusername(serviceFundShared.getFinvicepresident().substring(0, serviceFundShared.getFinvicepresident().indexOf(" ")));
|
serviceFundflow.setFlowcontent(serviceFundShared.getFinvicepresident().substring(0, serviceFundShared.getFinvicepresident().indexOf(" ")) + "审批通过");
|
serviceFundflow.setFlowconclusion(1);
|
serviceFundflow.setFundtype(2);
|
serviceFundflow.setFlowlevel(999);
|
serviceFundflow.setApplytype(serviceFundShared.getApplytype());
|
serviceFundflow.setFundid(serviceFundShared.getSerfunid());
|
serviceFundflow.setCheckTime(parse);
|
fundflowService.save(serviceFundflow);
|
|
}
|
//如果已经更新则不在处理
|
}
|
if (StringUtils.isNotBlank(serviceFundShared.getBusvicepresident())) {
|
try {
|
parse = simpleDateFormat.parse(serviceFundShared.getBusvicepresident().substring(serviceFundShared.getBusvicepresident().indexOf(" ") + 1, serviceFundShared.getBusvicepresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
//先查询一下fund是否已经更新Busvicepresident,如果没有更新,则进行更新,并往fundflow表里插一条数据
|
if (StringUtils.isEmpty(serviceFunds.get(0).getBusvicepresident())) {
|
serviceFund.setBusvicepresident(serviceFundShared.getBusvicepresident());
|
serviceFundService.updateById(serviceFund);
|
|
//将操作保存到fundflow表中
|
ServiceFundflow serviceFundflow = new ServiceFundflow();
|
serviceFundflow.setCreateBy("admin");
|
serviceFundflow.setCreateTime(new Date());
|
serviceFundflow.setUpdateBy("admin");
|
serviceFundflow.setUpdateTime(new Date());
|
serviceFundflow.setCheckusername(serviceFundShared.getBusvicepresident().substring(0, serviceFundShared.getBusvicepresident().indexOf(" ")));
|
serviceFundflow.setFlowcontent(serviceFundShared.getBusvicepresident().substring(0, serviceFundShared.getBusvicepresident().indexOf(" ")) + "通过");
|
serviceFundflow.setFlowconclusion(1);
|
serviceFundflow.setFundtype(2);
|
serviceFundflow.setFlowlevel(999);
|
serviceFundflow.setApplytype(serviceFundShared.getApplytype());
|
serviceFundflow.setFundid(serviceFundShared.getSerfunid());
|
serviceFundflow.setCheckTime(parse);
|
fundflowService.save(serviceFundflow);
|
|
}
|
//如果已经更新则不在处理
|
}
|
}
|
}
|
}
|
|
|
//查出所有被医院退回的Reimbursement数据
|
List<ServiceReimbursementShared> serviceReimbursementShareds = serviceReimbursementSharedService.queryReShareList();
|
for (ServiceReimbursementShared serviceReimbursementShared : serviceReimbursementShareds) {
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getOabdzt()) && serviceReimbursementShared.getOabdzt().equals("已撤销")) {
|
String phone = serviceReimbursementShared.getPhone();
|
String[] split = null;
|
log.info("serviceReimbursementShared.getCxrjyj(): {}", serviceReimbursementShared.getCxrjyj());
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getCxrjyj())) {
|
split = serviceReimbursementShared.getCxrjyj().split("&");
|
}
|
|
//将分享里的该数据删除
|
Boolean aBoolean = serviceReimbursementSharedService.delResharedInfoById(serviceReimbursementShared.getId());
|
log.info("将分享里的该数据删除: {}",aBoolean);
|
//将Flowlevel 设置为0;
|
ServiceReimbursement serviceReimbursement = new ServiceReimbursement();
|
serviceReimbursement.setId(serviceReimbursementShared.getReimid());
|
List<ServiceReimbursement> serviceReimbursementList = serviceReimbursementService.queryList(serviceReimbursement);
|
ServiceReimbursement serviceReimbursement1 = serviceReimbursementList.get(0);
|
serviceReimbursement1.setFlowlevel(100L);
|
serviceReimbursement1.setDelFlag(0);
|
serviceReimbursement1.setUploadStates(0);
|
serviceReimbursement1.setBackflowlevel(199L);
|
serviceReimbursement1.setRecordstatus(-1);
|
serviceReimbursementService.updateById(serviceReimbursement1);
|
|
SysUser sysUser = sysUserService.selectUserByUserName(serviceReimbursement1.getUserno());
|
sendMeg(split, sysUser.getPhonenumber(), "0", 1, serviceReimbursementShared.getReimid());
|
} else {
|
//不是退回的操作
|
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getZffs()) && serviceReimbursementShared.getSpjg() == 0) {
|
String bh = myMethod();
|
//钱已经到帐,并且审批结果为0(0为审批中),说明审批结束,但数据还没有同步到fund表和fundflow表;对fund表和fundflow表进行更新,并将0改成1(1审批结束)
|
ServiceReimbursement serviceReimbursement = new ServiceReimbursement();
|
serviceReimbursement.setId(serviceReimbursementShared.getReimid());
|
serviceReimbursement.setZffs(serviceReimbursementShared.getZffs());
|
serviceReimbursement.setRiqi(serviceReimbursementShared.getRiqi());
|
serviceReimbursement.setBh(serviceReimbursementShared.getBh());
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getPresident())) {
|
serviceReimbursement.setPresident(serviceReimbursementShared.getPresident());
|
}
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getFinvicepresident())) {
|
serviceReimbursement.setFinvicepresident(serviceReimbursementShared.getFinvicepresident());
|
}
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getBusvicepresident())) {
|
serviceReimbursement.setBusvicepresident(serviceReimbursementShared.getBusvicepresident());
|
}
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getOfficedirector())) {
|
serviceReimbursement.setOfficedirector(serviceReimbursementShared.getOfficedirector());
|
}
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getFinancedirector())) {
|
serviceReimbursement.setFinancedirector(serviceReimbursementShared.getFinancedirector());
|
}
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getFinancechecher())) {
|
serviceReimbursement.setFinancechecher(serviceReimbursementShared.getFinancechecher());
|
}
|
boolean b = serviceReimbursementService.updateById(serviceReimbursement);
|
log.info("更新serviceReimbursement里的zffs表是否成功: {}", b);
|
ServiceFundflow serviceFundflow = new ServiceFundflow();
|
serviceFundflow.setCreateBy("admin");
|
serviceFundflow.setCreateTime(new Date());
|
serviceFundflow.setUpdateBy("admin");
|
serviceFundflow.setUpdateTime(new Date());
|
//用三个审批人,如果都为空,就为空
|
String spName = "";
|
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getPresident())) {
|
serviceFundflow.setCheckusername(serviceReimbursementShared.getPresident().substring(0, serviceReimbursementShared.getPresident().indexOf(" ")));
|
//更新校验时间
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
Date parse = new Date();
|
try {
|
parse = simpleDateFormat.parse(serviceReimbursementShared.getPresident().substring(serviceReimbursementShared.getPresident().indexOf(" ") + 1, serviceReimbursementShared.getPresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
serviceFundflow.setCheckTime(parse);
|
spName = spName + serviceReimbursementShared.getPresident() + " ";
|
}
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getFinvicepresident())) {
|
serviceFundflow.setCheckusername(serviceReimbursementShared.getFinvicepresident().substring(0, serviceReimbursementShared.getFinvicepresident().indexOf(" ")));
|
//更新校验时间
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
Date parse = new Date();
|
try {
|
parse = simpleDateFormat.parse(serviceReimbursementShared.getFinvicepresident().substring(serviceReimbursementShared.getFinvicepresident().indexOf(" ") + 1, serviceReimbursementShared.getFinvicepresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
serviceFundflow.setCheckTime(parse);
|
spName = spName + serviceReimbursementShared.getFinvicepresident() + " ";
|
}
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getBusvicepresident())) {
|
serviceFundflow.setCheckusername(serviceReimbursementShared.getBusvicepresident().substring(0, serviceReimbursementShared.getBusvicepresident().indexOf(" ")));
|
//更新校验时间
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
Date parse = new Date();
|
try {
|
parse = simpleDateFormat.parse(serviceReimbursementShared.getBusvicepresident().substring(serviceReimbursementShared.getBusvicepresident().indexOf(" ") + 1, serviceReimbursementShared.getBusvicepresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
serviceFundflow.setCheckTime(parse);
|
spName = spName + serviceReimbursementShared.getBusvicepresident() + " ";
|
}
|
serviceFundflow.setFlowcontent(spName + "审批通过");
|
serviceFundflow.setFlowconclusion(1);
|
serviceFundflow.setFundtype(1);
|
// 999 通过
|
serviceFundflow.setFlowlevel(999);
|
serviceFundflow.setApplytype("0");
|
serviceFundflow.setFundid(serviceReimbursementShared.getReimid());
|
|
serviceReimbursementShared.setSpjg(1);
|
fundflowService.save(serviceFundflow);
|
serviceFundflow.setFlowcontent("已付款 : " + serviceReimbursementShared.getZffs());
|
serviceFundflow.setId(null);
|
fundflowService.save(serviceFundflow);
|
serviceReimbursementSharedService.updateById(serviceReimbursementShared);
|
|
} else if (StringUtils.isNotBlank(serviceReimbursementShared.getZffs()) && serviceReimbursementShared.getSpjg().equals("1")) {
|
//钱已经到帐,并且审批结果为1,审批结束,就不管那些领导是否签字了
|
continue;
|
}
|
|
ServiceReimbursement reimbursement = new ServiceReimbursement();
|
reimbursement.setId(serviceReimbursementShared.getReimid());
|
List<ServiceReimbursement> serviceReimbursementList = serviceReimbursementService.queryList(reimbursement);
|
if (!CollectionUtils.isEmpty(serviceReimbursementList)) {
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm");
|
Date parse = new Date();
|
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getPresident())) {
|
try {
|
parse = simpleDateFormat.parse(serviceReimbursementShared.getPresident().substring(serviceReimbursementShared.getPresident().indexOf(" ") + 1, serviceReimbursementShared.getPresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
//先查询一下fund是否已经更新President,如果没有更新,则进行更新,并往fundflow表里插一条数据
|
if (StringUtils.isEmpty(serviceReimbursementList.get(0).getPresident())) {
|
reimbursement.setPresident(serviceReimbursementShared.getPresident());
|
|
serviceReimbursementService.updateById(reimbursement);
|
|
//将操作保存到fundflow表中
|
ServiceFundflow serviceFundflow = new ServiceFundflow();
|
serviceFundflow.setCreateBy("admin");
|
serviceFundflow.setCreateTime(new Date());
|
serviceFundflow.setUpdateBy("admin");
|
serviceFundflow.setUpdateTime(new Date());
|
serviceFundflow.setCheckusername(serviceReimbursementShared.getPresident().substring(0, serviceReimbursementShared.getPresident().indexOf(" ")));
|
serviceFundflow.setFlowcontent(serviceReimbursementShared.getPresident().substring(0, serviceReimbursementShared.getPresident().indexOf(" ")) + "审批通过");
|
serviceFundflow.setFlowconclusion(1);
|
serviceFundflow.setFundtype(1);
|
serviceFundflow.setFlowlevel(999);
|
serviceFundflow.setApplytype("0");
|
serviceFundflow.setFundid(serviceReimbursementShared.getReimid());
|
serviceFundflow.setCheckTime(parse);
|
fundflowService.save(serviceFundflow);
|
|
}
|
//如果已经更新则不在处理
|
|
}
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getFinvicepresident())) {
|
try {
|
parse = simpleDateFormat.parse(serviceReimbursementShared.getFinvicepresident().substring(serviceReimbursementShared.getFinvicepresident().indexOf(" ") + 1, serviceReimbursementShared.getFinvicepresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
//先查询一下fund是否已经更新Finvicepresident,如果没有更新,则进行更新,并往fundflow表里插一条数据
|
if (StringUtils.isEmpty(serviceReimbursementList.get(0).getFinvicepresident())) {
|
reimbursement.setFinvicepresident(serviceReimbursementShared.getFinvicepresident());
|
serviceReimbursementService.updateById(reimbursement);
|
|
//将操作保存到fundflow表中
|
ServiceFundflow serviceFundflow = new ServiceFundflow();
|
serviceFundflow.setCreateBy("admin");
|
serviceFundflow.setCreateTime(new Date());
|
serviceFundflow.setUpdateBy("admin");
|
serviceFundflow.setUpdateTime(new Date());
|
serviceFundflow.setCheckusername(serviceReimbursementShared.getFinvicepresident().substring(0, serviceReimbursementShared.getFinvicepresident().indexOf(" ")));
|
serviceFundflow.setFlowcontent(serviceReimbursementShared.getFinvicepresident().substring(0, serviceReimbursementShared.getFinvicepresident().indexOf(" ")) + "审批通过");
|
serviceFundflow.setFlowconclusion(1);
|
serviceFundflow.setFundtype(1);
|
serviceFundflow.setFlowlevel(999);
|
serviceFundflow.setApplytype("0");
|
serviceFundflow.setCheckTime(parse);
|
serviceFundflow.setFundid(serviceReimbursementShared.getReimid());
|
fundflowService.save(serviceFundflow);
|
|
}
|
//如果已经更新则不在处理
|
}
|
if (StringUtils.isNotBlank(serviceReimbursementShared.getBusvicepresident())) {
|
try {
|
parse = simpleDateFormat.parse(serviceReimbursementShared.getBusvicepresident().substring(serviceReimbursementShared.getBusvicepresident().indexOf(" ") + 1, serviceReimbursementShared.getBusvicepresident().length()));
|
} catch (ParseException e) {
|
e.printStackTrace();
|
}
|
//先查询一下fund是否已经更新Busvicepresident,如果没有更新,则进行更新,并往fundflow表里插一条数据
|
if (StringUtils.isEmpty(serviceReimbursementList.get(0).getBusvicepresident())) {
|
reimbursement.setBusvicepresident(serviceReimbursementShared.getBusvicepresident());
|
serviceReimbursementService.updateById(reimbursement);
|
|
//将操作保存到fundflow表中
|
ServiceFundflow serviceFundflow = new ServiceFundflow();
|
serviceFundflow.setCreateBy("admin");
|
serviceFundflow.setCreateTime(new Date());
|
serviceFundflow.setUpdateBy("admin");
|
serviceFundflow.setUpdateTime(new Date());
|
serviceFundflow.setCheckusername(serviceReimbursementShared.getBusvicepresident().substring(0, serviceReimbursementShared.getBusvicepresident().indexOf(" ")));
|
serviceFundflow.setFlowcontent(serviceReimbursementShared.getBusvicepresident().substring(0, serviceReimbursementShared.getBusvicepresident().indexOf(" ")) + "审批通过");
|
serviceFundflow.setFlowconclusion(1);
|
serviceFundflow.setFundtype(1);
|
serviceFundflow.setFlowlevel(999);
|
serviceFundflow.setApplytype("0");
|
serviceFundflow.setCheckTime(parse);
|
serviceFundflow.setFundid(serviceReimbursementShared.getReimid());
|
|
serviceFundflow.setCheckTime(parse);
|
fundflowService.save(serviceFundflow);
|
|
}
|
//如果已经更新则不在处理
|
}
|
}
|
}
|
}
|
}
|
|
|
public void sendMeg(String[] split, String phone, String applyType, Integer fundType, Long fundId) throws ApiException {
|
//记录操作记录
|
ServiceFundflow serviceFundflow = new ServiceFundflow();
|
serviceFundflow.setCreateBy(split[0]);
|
serviceFundflow.setCreateTime(new Date());
|
serviceFundflow.setUpdateBy(split[0]);
|
serviceFundflow.setUpdateTime(new Date());
|
serviceFundflow.setCheckusername(split[0]);
|
serviceFundflow.setFlowcontent(split[2]);
|
serviceFundflow.setFlowconclusion(2);
|
serviceFundflow.setFundtype(fundType);
|
serviceFundflow.setFlowlevel(100);
|
serviceFundflow.setApplytype(applyType);
|
serviceFundflow.setFundid(fundId);
|
fundflowService.save(serviceFundflow);
|
|
ArrayList<ConcurrentHashMap<String, Object>> contentList = new ArrayList<>();
|
ConcurrentHashMap map = new ConcurrentHashMap();
|
map.put("审批人:", split[0]);
|
map.put("审批时间:", split[1]);
|
map.put("意见:", split[2]);
|
contentList.add(map);
|
DingTalkReqVo dingTalkReqVo = new DingTalkReqVo();
|
dingTalkReqVo.setTitle("财务系统驳回信息");
|
dingTalkReqVo.setNumber(phone);
|
dingTalkReqVo.setContents(contentList);
|
dingTalkService.sendNotification(dingTalkReqVo);
|
}
|
|
private ReentrantLock lock = new ReentrantLock();
|
|
public String myMethod() {
|
lock.lock();
|
String bh = null;
|
try {
|
// 代码块
|
SimpleDateFormat simpleDateFormat = new SimpleDateFormat("yyyyMM");
|
String format = simpleDateFormat.format(new Date());
|
ServiceTasknum serviceTasknum = new ServiceTasknum();
|
serviceTasknum.setYearmonth(format);
|
//CW 财务
|
serviceTasknum.setApptype("CW");
|
List<ServiceTasknum> serviceTasknums = ServiceTasknumService.queryList(serviceTasknum);
|
long nums = 1;
|
if (CollectionUtils.isEmpty(serviceTasknums)) {
|
//进行插入操作
|
serviceTasknum.setSerialnumber(nums);
|
ServiceTasknumService.save(serviceTasknum);
|
bh = serviceTasknum.getYearmonth() + "0" + nums;
|
} else {
|
//获取唯一值的最大值
|
nums = serviceTasknums.stream().mapToLong(ServiceTasknum::getSerialnumber).max().getAsLong() + 1;
|
|
ServiceTasknum serviceTasknum1 = serviceTasknums.get(0);
|
serviceTasknum1.setSerialnumber(nums);
|
//对该条数据的唯一值加1
|
ServiceTasknumService.updateById(serviceTasknum1);
|
//将生成的编号返回
|
if (nums < 10) {
|
bh = serviceTasknums.get(0).getYearmonth() + "0" + nums;
|
} else {
|
bh = serviceTasknums.get(0).getYearmonth() + nums;
|
}
|
}
|
} catch (Exception e) {
|
log.error("获取编号失败了{}", e.getStackTrace());
|
} finally {
|
lock.unlock();
|
}
|
return bh;
|
}
|
|
|
/**
|
* 将数据存到分享表中
|
*/
|
public void addDataShared() {
|
ServiceFundflowrule serviceFundflowrule = new ServiceFundflowrule();
|
//处理差旅报销
|
serviceFundflowrule.setApplytype("0");
|
List<ServiceFundflowrule> serviceFundflowrules = iServiceFundflowruleService.queryList(serviceFundflowrule);
|
log.info("差旅的最高等级:{}", serviceFundflowrules.get(0).getTotallevel());
|
ServiceReimbursement serviceReimbursement = new ServiceReimbursement();
|
serviceReimbursement.setFlowlevel(serviceFundflowrules.get(0).getTotallevel().longValue());
|
serviceReimbursement.setUploadStates(1);
|
serviceReimbursement.setDelFlag(0);
|
List<ServiceReimbursement> serviceReimbursementList = serviceReimbursementService.queryList(serviceReimbursement);
|
for (ServiceReimbursement serviceReimbursement1 : serviceReimbursementList) {
|
try {
|
log.info("插入分享表的ID为:{}", serviceReimbursement1.getId());
|
Boolean aBoolean = serviceReimbursementService.addSharedData(serviceReimbursement1.getId());
|
if (aBoolean) {
|
ServiceReimbursement serviceReimbursement3 = new ServiceReimbursement();
|
serviceReimbursement3.setId(serviceReimbursement1.getId());
|
serviceReimbursement3.setUploadStates(2);
|
boolean b = serviceReimbursementService.updateById(serviceReimbursement3);
|
log.info("serviceReimbursement是否插入成功{},{}", aBoolean, b);
|
}
|
} catch (Exception e) {
|
ServiceReimbursement serviceReimbursement2 = new ServiceReimbursement();
|
serviceReimbursement2.setId(serviceReimbursement1.getId());
|
serviceReimbursement2.setNotes("插入分享表失败");
|
serviceReimbursementService.updateById(serviceReimbursement2);
|
}
|
}
|
|
//专家劳务费申请
|
serviceFundflowrule.setApplytype("1");
|
List<ServiceFundflowrule> serviceFundflowrules2 = iServiceFundflowruleService.queryList(serviceFundflowrule);
|
log.info("专家劳务的最高等级:{}", serviceFundflowrules2.get(0).getTotallevel());
|
addFunfShared(serviceFundflowrules2.get(0).getTotallevel().longValue(), "1");
|
|
//伦理专家劳务费申请
|
serviceFundflowrule.setApplytype("2");
|
List<ServiceFundflowrule> serviceFundflowrules3 = iServiceFundflowruleService.queryList(serviceFundflowrule);
|
log.info("伦理专家劳务费申请:{}", serviceFundflowrules3.get(0).getTotallevel());
|
addFunfShared(serviceFundflowrules3.get(0).getTotallevel().longValue(), "2");
|
|
//医学成本报销
|
serviceFundflowrule.setApplytype("3");
|
List<ServiceFundflowrule> serviceFundflowrules4 = iServiceFundflowruleService.queryList(serviceFundflowrule);
|
log.info("医学成本报销:{}", serviceFundflowrules4.get(0).getTotallevel());
|
addFunfShared(serviceFundflowrules4.get(0).getTotallevel().longValue(), "3");
|
|
//办公费用报销
|
serviceFundflowrule.setApplytype("4");
|
List<ServiceFundflowrule> serviceFundflowrules5 = iServiceFundflowruleService.queryList(serviceFundflowrule);
|
log.info("办公费用报销:{}", serviceFundflowrules5.get(0).getTotallevel());
|
addFunfShared(serviceFundflowrules5.get(0).getTotallevel().longValue(), "4");
|
|
//绩效审批报销
|
serviceFundflowrule.setApplytype("5");
|
List<ServiceFundflowrule> serviceFundflowrules6 = iServiceFundflowruleService.queryList(serviceFundflowrule);
|
log.info("办公费用报销:{}", serviceFundflowrules6.get(0).getTotallevel());
|
addFunfShared(serviceFundflowrules6.get(0).getTotallevel().longValue(), "5");
|
|
}
|
|
private void addFunfShared(Long totallevel, String applyType) {
|
ServiceFund serviceFund = new ServiceFund();
|
serviceFund.setFlowlevel(totallevel);
|
serviceFund.setUploadStates(1);
|
serviceFund.setDel_flag(0);
|
serviceFund.setApplytype(applyType);
|
List<ServiceFund> serviceFundList = serviceFundService.queryList(serviceFund);
|
for (ServiceFund serviceFund1 : serviceFundList) {
|
try {
|
log.info("插入分享表的FundID为:{}", serviceFund1.getId());
|
Boolean aBoolean = serviceFundService.addFundSharedInfo(serviceFund1.getId());
|
if (aBoolean) {
|
ServiceFund serviceFund2 = new ServiceFund();
|
serviceFund2.setId(serviceFund1.getId());
|
serviceFund2.setUploadStates(2);
|
serviceFund2.setUpdateTime(new Date());
|
boolean b = serviceFundService.updateById(serviceFund2);
|
log.info("serviceReimbursement是否插入成功{},{}", aBoolean, b);
|
}
|
} catch (Exception e) {
|
e.printStackTrace();
|
ServiceFund serviceFund2 = new ServiceFund();
|
serviceFund2.setId(serviceFund1.getId());
|
serviceFund2.setUploadStates(1);
|
serviceFund2.setNotes("插入fund分享表失败");
|
serviceFundService.updateById(serviceFund2);
|
}
|
}
|
}
|
|
}
|