Browse Source

开发完成,测试完成

master
zhouhaibin 8 months ago
parent
commit
3c5cbd30a3
  1. 143
      src/main/java/com/example/guoyan/controller/TestController.java
  2. 186
      src/main/java/com/example/guoyan/controller/YunpingtaiController.java
  3. 2
      src/main/java/com/example/guoyan/entity/KpssProcessNode6IdInfo.java
  4. 1
      src/main/java/com/example/guoyan/entity/SendKpxx.java
  5. 4
      src/main/java/com/example/guoyan/mapper/ScKpsqspMapper.java
  6. 177
      src/main/java/com/example/guoyan/scheduled/ProcessScheduled.java
  7. 1
      src/main/resources/application-dev.yml
  8. 8
      src/main/resources/mapper/OtherMapper.xml
  9. 7
      src/main/resources/mapper/SendHtMapper.xml
  10. 4
      src/main/resources/mapper/SendKpxxMapper.xml
  11. 4
      src/main/resources/mapper/SendXmMapper.xml

143
src/main/java/com/example/guoyan/controller/TestController.java

@ -1,143 +0,0 @@
package com.example.guoyan.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.example.guoyan.common.Result;
import com.example.guoyan.entity.SendHt;
import com.example.guoyan.entity.SendKpxx;
import com.example.guoyan.entity.SendXm;
import com.example.guoyan.mapper.*;
import com.example.guoyan.response.ResponseBeanForBeiJing;
import com.example.guoyan.scheduled.ProcessScheduled;
import lombok.extern.slf4j.Slf4j;
import org.apache.http.entity.ContentType;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.core.io.FileSystemResource;
import org.springframework.http.HttpEntity;
import org.springframework.http.HttpHeaders;
import org.springframework.http.MediaType;
import org.springframework.util.LinkedMultiValueMap;
import org.springframework.util.MultiValueMap;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;
import javax.annotation.Resource;
import java.io.File;
import java.io.FileInputStream;
import java.io.IOException;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@RestController
@RequestMapping("/test")
@Slf4j
public class TestController {
@Resource
private RestTemplate restTemplate;
@Autowired
private SendXmMapper sendXmMapper;
@Autowired
private SendHtMapper sendHtMapper;
@Autowired
private OtherMapper otherMapper;
@Autowired
private SendKpxxMapper sendKpxxMapper;
@Autowired
private ProcessScheduled processScheduled;
@GetMapping()
public Result<String> upLoadFile() {
return Result.success("成功");
}
@GetMapping("/c")
public Result<String> test1(){
List<SendKpxx> sendKpxxList = sendKpxxMapper.querySendKpxxByNoDel();
String url = "http://123.57.82.48:13310/api/auth/login";
//提交参数设置
HashMap<String, String> map = new HashMap<>();
map.put("username", "0519999");
map.put("password", "123456");
//发起请求
ResponseBeanForBeiJing responseBean = restTemplate.postForObject(url, map, ResponseBeanForBeiJing.class);
System.out.println(responseBean.toString());
String data = responseBean.getData().toString();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", data);
// sendKpxxList.forEach(item->{
// Integer interfaceType = item.getInterfaceType();//类型字段
// if(interfaceType==0){//开票信息有关的
// //判断是否过了节点5,通过流程id,节点
// String requestid = item.getRequestid();
// String kpssProcessNode5="2c9adae478fdbe15017906f93ec90265";
// List<HashMap<String, String>> selectProcessNo5IsSubmit = otherMapper.selectProcessNo5IsSubmit(requestid, kpssProcessNode5);
// if (selectProcessNo5IsSubmit.size()>0){//存在
// processScheduled.senKpxxToYunPingtai(item,headers);
// }
// //开票确认
// }else if (interfaceType==1){
// processScheduled.sendKpqrToYunPingtai(item,headers);
// //开票确认收入
// }else if(interfaceType==2){
// processScheduled.sendKpqrsrToYunPingtai(item,headers);
// }else if (interfaceType==3){
// processScheduled.sendKpqrdzToYunPingtai(item,headers);
// }else {
// log.info("未知编号:"+interfaceType);
// }
// });
// processScheduled.sendKpCancelToYPT(headers);
processScheduled.queryInvoicingApprovalStatus(headers);
return Result.success("成功");
}
@GetMapping("/a")
public Result<String> testt() {
List<SendHt> sendHtList = sendHtMapper.querySendHtByNoDel();
String url = "http://123.57.82.48:13310/api/auth/login";
//提交参数设置
HashMap<String, String> map = new HashMap<>();
map.put("username", "0519999");
map.put("password", "123456");
//发起请求
ResponseBeanForBeiJing responseBean = restTemplate.postForObject(url, map, ResponseBeanForBeiJing.class);
System.out.println(responseBean.toString());
String data = responseBean.getData().toString();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", data);
processScheduled.sendHtToYunPingtai(sendHtList,headers);
return Result.success("成功");
}
@GetMapping("/t")
public Result<String> test() {
List<SendXm> sendXmList = sendXmMapper.querySendXmByNoDel();
String url = "http://123.57.82.48:13310/api/auth/login";
//提交参数设置
HashMap<String, String> map = new HashMap<>();
map.put("username", "0519999");
map.put("password", "123456");
//发起请求
ResponseBeanForBeiJing responseBean = restTemplate.postForObject(url, map, ResponseBeanForBeiJing.class);
System.out.println(responseBean.toString());
String data = responseBean.getData().toString();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", data);
processScheduled.sendXmToYunPingtai(sendXmList, headers);
return Result.success("成功");
}
}

186
src/main/java/com/example/guoyan/controller/YunpingtaiController.java

@ -0,0 +1,186 @@
package com.example.guoyan.controller;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.example.guoyan.common.Result;
import com.example.guoyan.entity.ScKpsqsp;
import com.example.guoyan.entity.SendHt;
import com.example.guoyan.entity.SendKpxx;
import com.example.guoyan.entity.SendXm;
import com.example.guoyan.mapper.*;
import com.example.guoyan.response.ResponseBeanForBeiJing;
import com.example.guoyan.scheduled.ProcessScheduled;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.http.HttpHeaders;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.client.RestTemplate;
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
@RestController
@RequestMapping("/yunpingtai")
@Slf4j
public class YunpingtaiController {
@Resource
private RestTemplate restTemplate;
@Autowired
private SendXmMapper sendXmMapper;
@Autowired
private SendHtMapper sendHtMapper;
@Autowired
private OtherMapper otherMapper;
@Autowired
private SendKpxxMapper sendKpxxMapper;
@Autowired
private ScKpsqspMapper scKpsqspMapper;
@Autowired
private ProcessScheduled processScheduled;
@Value("${ypt.username}")
private String username;
@Value("${ypt.password}")
private String password;
@Value("${ypt.loginUrl}")
private String loginUrl;
@GetMapping()
public Result<String> upLoadFile() {
return Result.success("成功");
}
@GetMapping("/sendxm")
public Result<String> test1(){
String url = loginUrl;
//提交参数设置
HashMap<String, String> map = new HashMap<>();
map.put("username", username);
map.put("password", password);
//发起请求
ResponseBeanForBeiJing responseBean = restTemplate.postForObject(url, map, ResponseBeanForBeiJing.class);
System.out.println(responseBean.toString());
String data = responseBean.getData().toString();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", data);
List<SendXm> sendXmList = sendXmMapper.querySendXmByNoDel();
processScheduled.sendXmToYunPingtai(sendXmList,headers);
List<SendHt> sendHtList = sendHtMapper.querySendHtByNoDel();
processScheduled.sendHtToYunPingtai(sendHtList,headers);
processScheduled.sendKpCancelToYPT(headers);
processScheduled.queryInvoicingApprovalStatus(headers);
return Result.success("成功");
}
@GetMapping("/sendht")
public Result<String> testt() {
String url = loginUrl;
//提交参数设置
HashMap<String, String> map = new HashMap<>();
map.put("username", username);
map.put("password", password);
//发起请求
ResponseBeanForBeiJing responseBean = restTemplate.postForObject(url, map, ResponseBeanForBeiJing.class);
System.out.println(responseBean.toString());
String data = responseBean.getData().toString();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", data);
List<SendHt> sendHtList = sendHtMapper.querySendHtByNoDel();
processScheduled.sendHtToYunPingtai(sendHtList,headers);
return Result.success("成功");
}
@GetMapping("/sendkpxx")
public Result<String> test() {
String url = loginUrl;
//提交参数设置
HashMap<String, String> map = new HashMap<>();
map.put("username", username);
map.put("password", password);
//发起请求
ResponseBeanForBeiJing responseBean = restTemplate.postForObject(url, map, ResponseBeanForBeiJing.class);
System.out.println(responseBean.toString());
String data = responseBean.getData().toString();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", data);
List<SendKpxx> sendKpxxList = sendKpxxMapper.querySendKpxxByNoDel();
sendKpxxList.forEach(item->{
Integer interfaceType = item.getInterfaceType();//类型字段
if(interfaceType==0&&"ZJ".equals(item.getQy())){//开票信息有关的
//判断是否过了节点5,通过流程id,节点
String requestid = item.getRequestid();
String kpssProcessNode5="2c9adae478fdbe15017906f93ec90265";
List<HashMap<String, String>> selectProcessNo5IsSubmit = otherMapper.selectProcessNo5IsSubmit(requestid, kpssProcessNode5);
if (selectProcessNo5IsSubmit.size()>0){//存在
processScheduled.senKpxxToYunPingtai(item,headers);
}
//开票确认
}else if (interfaceType==1&&"ZJ".equals(item.getQy())){
processScheduled.sendKpqrToYunPingtai(item,headers);
//开票确认收入
}else if(interfaceType==2){
String wfrequest = item.getWfrequest();
LambdaQueryWrapper<ScKpsqsp> scKpsqspMapperLambdaQueryWrapper = new LambdaQueryWrapper<>();
scKpsqspMapperLambdaQueryWrapper.eq(ScKpsqsp::getRequestid,wfrequest);
ScKpsqsp scKpsqsp = scKpsqspMapper.selectList(scKpsqspMapperLambdaQueryWrapper).get(0);
String qy = scKpsqsp.getQy();
if ("ZJ".equals(qy)){
processScheduled.sendKpqrsrToYunPingtai(item,headers);
}
}else if (interfaceType==3&&"ZJ".equals(item.getQy())){
processScheduled.sendKpqrdzToYunPingtai(item,headers);
}else {
log.info("未知编号:"+interfaceType);
}
});
return Result.success("成功");
}
@GetMapping("/cancelht")
public Result<String> cancelht(){
String url = loginUrl;
//提交参数设置
HashMap<String, String> map = new HashMap<>();
map.put("username", username);
map.put("password", password);
//发起请求
ResponseBeanForBeiJing responseBean = restTemplate.postForObject(url, map, ResponseBeanForBeiJing.class);
System.out.println(responseBean.toString());
String data = responseBean.getData().toString();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", data);
processScheduled.sendKpCancelToYPT(headers);
return Result.success("成功");
}
@GetMapping("/queryInvoicingApproval")
public Result<String> queryInvoicingApproval(){
String url = loginUrl;
//提交参数设置
HashMap<String, String> map = new HashMap<>();
map.put("username", username);
map.put("password", password);
//发起请求
ResponseBeanForBeiJing responseBean = restTemplate.postForObject(url, map, ResponseBeanForBeiJing.class);
System.out.println(responseBean.toString());
String data = responseBean.getData().toString();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", data);
processScheduled.queryInvoicingApprovalStatus(headers);
return Result.success("成功");
}
}

2
src/main/java/com/example/guoyan/entity/KpssProcessNode6IdInfo.java

@ -23,5 +23,7 @@ public class KpssProcessNode6IdInfo {
private String nextStepOperid;
@Value("${kpssProcessNode6IdInfo.friststepid}")
private String friststepid;
@Value("${kpssProcessNode6IdInfo.processControlid}")
private String processControlid;
}

1
src/main/java/com/example/guoyan/entity/SendKpxx.java

@ -135,5 +135,6 @@ public class SendKpxx implements Serializable {
private String wfrequest;
private String incomeId;
private String accountId;
private String qy;
}

4
src/main/java/com/example/guoyan/mapper/ScKpsqspMapper.java

@ -1,7 +1,9 @@
package com.example.guoyan.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.example.guoyan.entity.ScKpsqsp;
import org.apache.ibatis.annotations.Mapper;
@Mapper
public interface ScKpsqspMapper {
public interface ScKpsqspMapper extends BaseMapper<ScKpsqsp> {
}

177
src/main/java/com/example/guoyan/scheduled/ProcessScheduled.java

@ -1,6 +1,5 @@
package com.example.guoyan.scheduled;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@ -23,11 +22,8 @@ import org.springframework.web.client.RestTemplate;
import javax.annotation.Resource;
import java.io.File;
import java.text.SimpleDateFormat;
import java.time.Duration;
import java.time.LocalDate;
import java.time.format.DateTimeFormatter;
import java.util.*;
import java.util.spi.CalendarDataProvider;
@Component
@Slf4j
@ -56,6 +52,8 @@ public class ProcessScheduled {
@Autowired
private ScXglcMapper scXglcMapper;
@Autowired
private ScKpsqspMapper scKpsqspMapper;
@Autowired
private PermissionrulegroupMapper permissionrulegroupMapper;
@Value("${ypt.username}")
private String username;
@ -88,7 +86,7 @@ public class ProcessScheduled {
/**
* 定时任务跑合同和项目信息的变化发给北京五分钟一次
*/
//@Scheduled(cron = "0 0/5 * * * ?")
@Scheduled(cron = "0 0/5 * * * ?")
public void invoice_request_Process_Scheduled() {
//提交参数设置
@ -97,8 +95,6 @@ public class ProcessScheduled {
map.put("username", username);
map.put("password", password);
//查询需要更新到北京云平台的数据
List<SendXm> sendXmList = sendXmMapper.querySendXmByNoDel();
List<SendHt> sendHtList = sendHtMapper.querySendHtByNoDel();
//发起请求 获取权限token
log.info(map.toString());
ResponseBeanForBeiJing responseBean = restTemplate.postForObject(loginUrl, map, ResponseBeanForBeiJing.class);
@ -107,13 +103,16 @@ public class ProcessScheduled {
String data = responseBean.getData().toString();
HttpHeaders headers = new HttpHeaders();
headers.set("Authorization", data);
List<SendXm> sendXmList = sendXmMapper.querySendXmByNoDel();
sendXmToYunPingtai(sendXmList, headers);
List<SendHt> sendHtList = sendHtMapper.querySendHtByNoDel();
sendHtToYunPingtai(sendHtList,headers);
//处理开票信息
List<SendKpxx> sendKpxxList = sendKpxxMapper.querySendKpxxByNoDel();
sendKpxxList.forEach(item->{
Integer interfaceType = item.getInterfaceType();//类型字段
if(interfaceType==0){//开票信息有关的
//zj表示区域是北京的
if(interfaceType==0 && "ZJ".equals(item.getQy())){//开票信息有关的
//判断是否过了节点5,通过流程id,节点
String requestid = item.getRequestid();
String kpssProcessNode5=kpssProcessNode6IdInfo.getPerStepid();
@ -122,13 +121,21 @@ public class ProcessScheduled {
senKpxxToYunPingtai(item,headers);
}
//开票确认
}else if (interfaceType==1){
}else if (interfaceType==1&& "ZJ".equals(item.getQy())){
sendKpqrToYunPingtai(item,headers);
//开票确认收入
}else if(interfaceType==2){
sendKpqrsrToYunPingtai(item,headers);
String wfrequest = item.getWfrequest();
LambdaQueryWrapper<ScKpsqsp> scKpsqspMapperLambdaQueryWrapper = new LambdaQueryWrapper<>();
scKpsqspMapperLambdaQueryWrapper.eq(ScKpsqsp::getRequestid,wfrequest);
ScKpsqsp scKpsqsp = scKpsqspMapper.selectList(scKpsqspMapperLambdaQueryWrapper).get(0);
String qy = scKpsqsp.getQy();
if ("ZJ".equals(qy)){
sendKpqrsrToYunPingtai(item,headers);
}
//开票确认到账
}else if (interfaceType==3){
}else if (interfaceType==3&& "ZJ".equals(item.getQy())){
sendKpqrdzToYunPingtai(item,headers);
}else {
log.info("未知编号:"+interfaceType);
@ -136,6 +143,7 @@ public class ProcessScheduled {
});
//处理云平台开票信息更新流程
queryInvoicingApprovalStatus(headers);
sendKpCancelToYPT(headers);//开票取消
//
}else {
@ -144,6 +152,12 @@ public class ProcessScheduled {
log.info("本次任务结束了");
}
/**
* 发送项目信息去北京云平台
* @param sendXmList 项目信息列表
* @param headers 请求头
*/
@Transactional()
public void sendXmToYunPingtai(List<SendXm> sendXmList, HttpHeaders headers) {
//把查到的数据按次序更新或新增到北京
@ -204,9 +218,9 @@ public class ProcessScheduled {
String xmAmount = otherMapper.selectXmAmount(item.getProjectId());
Double contractAmount = item.getContractAmount();
Double amt = Double.valueOf(xmAmount);
log.info("金额是"+xmAmount,amt);
log.info("金额是"+xmAmount,contractAmount);
//如果合同金额和项目金额不一样,更新云平台的项目金额 为合同金额
if (amt!=contractAmount){
if (contractAmount.compareTo(amt)!=0){
//更新数据需要所有字段都有值,所以去查最新的一笔更新记录,改一下合同金额
List<SendXm> sendXms = sendXmMapper.querySendXmByProjectId(item.getProjectId());
SendXm sendXm = sendXms.get(0);//得到最新的一条已修改记录
@ -277,9 +291,37 @@ public class ProcessScheduled {
//新增
String[] evidenceIds = sendKpxx.getEvidenceId().split(",");//获取文件id组
String evidenceid= sendfpfielUpdown(headers,evidenceIds);//上传文件信息
// if()
if(evidenceid.length()>0){
evidenceid=evidenceid.substring(0,evidenceid.length()-1);
}
//因为会驳回,驳回后在提交就是修改状态,查询是否有退回记录,如果有要重新提交
if(sendKpxx.getOperatetype()==1){
LambdaQueryWrapper<SendKpxx> sendKpxxLambdaQueryWrapper = new LambdaQueryWrapper<>();
sendKpxxLambdaQueryWrapper.eq(SendKpxx::getRequestid,sendKpxx.getRequestid());
sendKpxxLambdaQueryWrapper.eq(SendKpxx::getStatus,3);
sendKpxxLambdaQueryWrapper.select(SendKpxx::getRequestid,SendKpxx::getId,SendKpxx::getStatus);
List<SendKpxx> sendKpxxes = sendKpxxMapper.selectList(sendKpxxLambdaQueryWrapper);
//有驳回记录
if (sendKpxxes.size()>0){
sendKpxxLambdaQueryWrapper.clear();
sendKpxxLambdaQueryWrapper.eq(SendKpxx::getRequestid,sendKpxx.getRequestid());
sendKpxxLambdaQueryWrapper.and((wrapper->{
wrapper.eq(SendKpxx::getStatus,2).or().eq(SendKpxx::getStatus,1);
}));
sendKpxxLambdaQueryWrapper.select(SendKpxx::getRequestid,SendKpxx::getId,SendKpxx::getStatus);
List<SendKpxx> sendKpxxeoks = sendKpxxMapper.selectList(sendKpxxLambdaQueryWrapper);
//没有通过记录
if (sendKpxxeoks.size()==0){
//说明该修改要重新在北京发起流程
sendKpxx.setOperatetype(0);
LambdaUpdateWrapper<SendKpxx> sendKpxxLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
sendKpxxLambdaUpdateWrapper.eq(SendKpxx::getId,sendKpxx.getId());
sendKpxxLambdaUpdateWrapper.set(SendKpxx::getOperatetype,0);
sendKpxxMapper.update(null,sendKpxxLambdaUpdateWrapper);
}
}
}
if(sendKpxx.getOperatetype()==0){
sendKpxx.setInvoiceNo(null);
headers.setContentType(MediaType.APPLICATION_JSON);
@ -299,6 +341,13 @@ public class ProcessScheduled {
sendKpxxMapper.update(null, sendKpxxLambdaUpdateWrapper);
log.info("新增开票信息到云平台成功");
log.info(responseData.toString());
//因为更新云平台编号,会导致多一个无用的更新数据,所以要删除
//要删除他
sendKpxxLambdaUpdateWrapper.clear();
sendKpxxLambdaUpdateWrapper.eq(SendKpxx::getRequestid,sendKpxx.getRequestid());
sendKpxxLambdaUpdateWrapper.eq(SendKpxx::getOperatetype,1);
sendKpxxLambdaUpdateWrapper.isNull(SendKpxx::getStatus);
sendKpxxMapper.delete(sendKpxxLambdaUpdateWrapper);
} else {
log.info("新增开票信息失败,projectId是" + sendKpxx.getProjectNo() + " id是" + sendKpxx.getId());
log.error("返回的信息是" + responseData.toString());
@ -424,10 +473,10 @@ public class ProcessScheduled {
sendKpxxLambdaUpdateWrapper.eq(SendKpxx::getId, sendKpxx.getId());//更新条件
sendKpxxLambdaUpdateWrapper.set(SendKpxx::getStatus, 1);//更新的值
sendKpxxMapper.update(null, sendKpxxLambdaUpdateWrapper);
log.info("新增开票确认到云平台成功");
log.info("新增开票确认收入到云平台成功");
log.info(responseData.toString());
} else {
log.info("新增开票确认失败,projectId是" + sendKpxx.getProjectNo() + " id是" + sendKpxx.getId());
log.info("新增开票确认收入失败,projectId是" + sendKpxx.getProjectNo() + " id是" + sendKpxx.getId());
log.info("返回的信息是" + responseData.toString());
}
}
@ -466,7 +515,7 @@ public class ProcessScheduled {
}
@Transactional()
public void sendKpqrdzToYunPingtai(SendKpxx sendKpxx, HttpHeaders headers){
HashMap<String, String> stringStringHashMap = otherMapper.selectScKpsqsp_yptbh_Byreqid(sendKpxx.getWfrequest());
HashMap<String, String> stringStringHashMap = otherMapper.selectScKpsqsp_yptbh_ByPjid(sendKpxx.getRequestid());
if(stringStringHashMap==null){
return;
}
@ -510,6 +559,7 @@ public class ProcessScheduled {
sendKpxxMapper.update(null, sendKpxxLambdaUpdateWrapper);
log.info("新增开票确认到账信息到云平台成功");
log.info(responseData.toString());
} else {
log.info("新增开票确认失败,projectId是" + sendKpxx.getProjectNo() + " id是" + sendKpxx.getId());
log.info("返回的信息是" + responseData.toString());
@ -566,16 +616,18 @@ public class ProcessScheduled {
}
Map dataMap = (Map) beanForBeiJing.getData();
Integer status = (Integer) dataMap.get("status");
if (status==2 || status==4){
//已确认
Date nowData = new Date();
if (status==2 || status==4){//已确认
//更新这边的流程
String processId = sendKpxxMapper.selectProcessId(item.getRequestid());
Requestlog requestlog = new Requestlog();
requestlog.setRequestid(processId);
requestlog.setStaffid(kpssProcessNode6IdInfo.getCurrentStaffid());
requestlog.setIsedit(1);
requestlog.setIntfield3(1);
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
requestlog.setCreatedate(dateFormat.format(new Date()));
requestlog.setCreatedate(dateFormat.format(nowData));
requestlog.setStepid(kpssProcessNode6IdInfo.getCurrentStepid());
requestlog.setNtype(1);
requestlog.setInfo("北京同意");
@ -597,7 +649,7 @@ public class ProcessScheduled {
permissionrulegroup.setStmp("2c9adae478fdbe15017906f93ec90266");
permissionrulegroup.setDsporder(0);
permissionrulegroup.setLayoutedit("2c9a59b681805f1301818a7047300091");
permissionrulegroup.setAdddate(dateFormat.format(new Date()));
permissionrulegroup.setAdddate(dateFormat.format(nowData));
permissionrulegroup.setAllowstaffids(kpssProcessNode6IdInfo.getNextAllowStaffids());
permissionrulegroup.setMatrixtype(0);
permissionrulegroupMapper.insert(permissionrulegroup);
@ -608,17 +660,18 @@ public class ProcessScheduled {
readlog.setStaffid(kpssProcessNode6IdInfo.getCurrentStaffid());
readlog.setReadnum("1");
readlog.setResid("2c9adae478fdbe15017906f73e8a0261");
readlog.setLastaccessdate(dateFormat.format(new Date()));
readlog.setAdddate(dateFormat.format(new Date()));
Calendar calendar = Calendar.getInstance();
calendar.setTime(nowData);
calendar.add(Calendar.SECOND,-5);
Date time = calendar.getTime();
readlog.setLastaccessdate(dateFormat.format(time));
readlog.setAdddate(dateFormat.format(time));
readlogMapper.insert(readlog);
log.info("readlog1111新增成功:"+readlog.toString());
readlog.setId(UUID.randomUUID().toString().replace("-",""));
readlog.setStepid(kpssProcessNode6IdInfo.getNextStepid());
Calendar calendar = Calendar.getInstance();
calendar.setTime(new Date());
calendar.add(Calendar.SECOND,10);
Date time = calendar.getTime();
readlog.setAdddate(dateFormat.format(time));//加10
readlog.setAdddate(dateFormat.format(nowData));//加10
readlog.setLastaccessdate(dateFormat.format(time));
readlogMapper.insert(readlog);
log.info("readlog22222新增成功:"+readlog.toString());
@ -627,11 +680,12 @@ public class ProcessScheduled {
LambdaQueryWrapper<Requestoperator> requestoperatorLambdaQueryWrapper = new LambdaQueryWrapper<>();
requestoperatorLambdaQueryWrapper.eq(Requestoperator::getIssubmit,0);
requestoperatorLambdaQueryWrapper.eq(Requestoperator::getRequestid,processId);
requestoperatorLambdaQueryWrapper.eq(Requestoperator::getStepid,kpssProcessNode6IdInfo.getCurrentStepid());
String requestoperatorId = requestoperatorMapper.selectList(requestoperatorLambdaQueryWrapper).get(0).getId();
LambdaUpdateWrapper<Requestoperator> requestoperatorLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
requestoperatorLambdaUpdateWrapper.set(Requestoperator::getIssubmit,1);
requestoperatorLambdaUpdateWrapper.set(Requestoperator::getSubmitdate,dateFormat.format(new Date()));
requestoperatorLambdaUpdateWrapper.set(Requestoperator::getSubmitdate,dateFormat.format(nowData));
requestoperatorLambdaUpdateWrapper.eq(Requestoperator::getId,requestoperatorId);
requestoperatorMapper.update(null,requestoperatorLambdaUpdateWrapper);
log.info("requestoperatorLambdaUpdateWrapper成功:"+requestoperatorLambdaUpdateWrapper.toString());
@ -641,7 +695,7 @@ public class ProcessScheduled {
requestoperator.setStepoperid(kpssProcessNode6IdInfo.getNextStepOperid());
requestoperator.setStaffid(kpssProcessNode6IdInfo.getNextAllowStaffids());
requestoperator.setIssubmit(0);
requestoperator.setReceivedate(dateFormat.format(new Date()));
requestoperator.setReceivedate(dateFormat.format(nowData));
requestoperator.setOpertype(1);
requestoperator.setIsremind(0);
requestoperator.setIsorioperator(0);
@ -650,7 +704,7 @@ public class ProcessScheduled {
log.info("requestoperator新增成功:"+requestoperator.toString());
LambdaUpdateWrapper<Wfrequest> wfrequestLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
wfrequestLambdaUpdateWrapper.set(Wfrequest::getLastmodifydate,dateFormat.format(new Date()));
wfrequestLambdaUpdateWrapper.set(Wfrequest::getLastmodifydate,dateFormat.format(nowData));
wfrequestLambdaUpdateWrapper.set(Wfrequest::getLaststaffid,kpssProcessNode6IdInfo.getCurrentStaffid());
wfrequestLambdaUpdateWrapper.eq(Wfrequest::getId,processId);
wfrequestMapper.update(null,wfrequestLambdaUpdateWrapper);
@ -659,22 +713,28 @@ public class ProcessScheduled {
LambdaUpdateWrapper<Requeststatus> requeststatusLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
requeststatusLambdaUpdateWrapper.set(Requeststatus::getStepid,kpssProcessNode6IdInfo.getNextStepid());
requeststatusLambdaUpdateWrapper.set(Requeststatus::getPrestepid,kpssProcessNode6IdInfo.getCurrentStepid());
requeststatusLambdaUpdateWrapper.set(Requeststatus::getModifydate,dateFormat.format(new Date()));
requeststatusLambdaUpdateWrapper.set(Requeststatus::getModifydate,dateFormat.format(nowData));
requeststatusLambdaUpdateWrapper.eq(Requeststatus::getRequestid,processId);
requeststatusMapper.update(null,requeststatusLambdaUpdateWrapper);
log.info("requeststatusLambdaUpdateWrapper修改成功:"+requeststatusLambdaUpdateWrapper.toString());
LambdaUpdateWrapper<ScXglc> scXglcLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
scXglcLambdaUpdateWrapper.set(ScXglc::getZhtjsj,dateFormat.format(new Date()));
scXglcLambdaUpdateWrapper.set(ScXglc::getZhtjsj,dateFormat.format(nowData));
scXglcLambdaUpdateWrapper.set(ScXglc::getZhtjr,kpssProcessNode6IdInfo.getCurrentStaffid());
scXglcLambdaUpdateWrapper.set(ScXglc::getDqjd,kpssProcessNode6IdInfo.getNextStepid());
scXglcLambdaUpdateWrapper.eq(ScXglc::getLc,processId);
scXglcMapper.update(null,scXglcLambdaUpdateWrapper);
log.info("scXglcLambdaUpdateWrapper修改成功:"+scXglcLambdaUpdateWrapper.toString());
log.info("流程数据更新成功,流程到财务开票");
LambdaUpdateWrapper<SendKpxx> sendKpxxLambdaUpdateWrapper = new LambdaUpdateWrapper<SendKpxx>();
sendKpxxLambdaUpdateWrapper.set(SendKpxx::getStatus,2);//同意是2
sendKpxxLambdaUpdateWrapper.eq(SendKpxx::getRequestid,item.getRequestid());
sendKpxxMapper.update(null,sendKpxxLambdaUpdateWrapper);
}
//退回流程
if(status ==3 ||status==5){
String processId = sendKpxxMapper.selectProcessId(item.getRequestid());
LambdaQueryWrapper<Wfrequest> wfrequestLambdaQueryWrapper = new LambdaQueryWrapper<Wfrequest>();
wfrequestLambdaQueryWrapper.eq(Wfrequest::getDataid,item.getRequestid());
List<Wfrequest> wfrequests = wfrequestMapper.selectList(wfrequestLambdaQueryWrapper);
@ -683,25 +743,26 @@ public class ProcessScheduled {
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
HashMap<String,String> param = new HashMap<>();
param.put("reqid",item.getRequestid());
param.put("modifyDate",dateFormat.format(new Date()));
param.put("modifyDate",dateFormat.format(nowData));
param.put("preStepid",kpssProcessNode6IdInfo.getCurrentStepid());
param.put("creatorId",creatorid);
param.put("stepid",kpssProcessNode6IdInfo.getFriststepid());
otherMapper.updateRequeststatusBack(param);
LambdaUpdateWrapper<Requestoperator> requestoperatorLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
requestoperatorLambdaUpdateWrapper.ne(Requestoperator::getStepid,kpssProcessNode6IdInfo.getFriststepid());
requestoperatorLambdaUpdateWrapper.eq(Requestoperator::getRequestid,item.getRequestid());
requestoperatorLambdaUpdateWrapper.eq(Requestoperator::getRequestid,processId);
requestoperatorMapper.delete(requestoperatorLambdaUpdateWrapper);
requestoperatorLambdaUpdateWrapper.clear();
requestoperatorLambdaUpdateWrapper.set(Requestoperator::getIssubmit,0);
requestoperatorLambdaUpdateWrapper.set(Requestoperator::getReceivedate,dateFormat.format(new Date()));
requestoperatorLambdaUpdateWrapper.set(Requestoperator::getReceivedate,dateFormat.format(nowData));
requestoperatorLambdaUpdateWrapper.eq(Requestoperator::getStepid,kpssProcessNode6IdInfo.getFriststepid());
requestoperatorLambdaUpdateWrapper.eq(Requestoperator::getRequestid,item.getRequestid());
requestoperatorLambdaUpdateWrapper.eq(Requestoperator::getRequestid,processId);
requestoperatorLambdaUpdateWrapper.set(Requestoperator::getSubmitdate,"");
requestoperatorMapper.update(null,requestoperatorLambdaUpdateWrapper);
Requestlog requestlog = new Requestlog();
requestlog.setRequestid(item.getRequestid());
requestlog.setRequestid(processId);
requestlog.setStaffid(kpssProcessNode6IdInfo.getCurrentStaffid());
requestlog.setIsedit(0);
requestlog.setCreatedate(dateFormat.format(new Date()));
requestlog.setCreatedate(dateFormat.format(nowData));
requestlog.setStepid(kpssProcessNode6IdInfo.getCurrentStepid());
requestlog.setInfo("云平台北京退回");
requestlog.setTypeinfo(kpssProcessNode6IdInfo.getFriststepid());
@ -710,25 +771,34 @@ public class ProcessScheduled {
requestlog.setNextstepid(kpssProcessNode6IdInfo.getFriststepid());
requestlogMapper.insert(requestlog);
LambdaUpdateWrapper<Readlog> readlogLambdaUpdateWrapper = Wrappers.lambdaUpdate();
readlogLambdaUpdateWrapper.eq(Readlog::getDataid,item.getRequestid());
readlogLambdaUpdateWrapper.eq(Readlog::getDataid,processId);
readlogLambdaUpdateWrapper.ne(Readlog::getStepid,kpssProcessNode6IdInfo.getFriststepid());
readlogMapper.delete(readlogLambdaUpdateWrapper);
readlogLambdaUpdateWrapper.clear();
readlogLambdaUpdateWrapper.eq(Readlog::getDataid,item.getRequestid());
readlogLambdaUpdateWrapper.eq(Readlog::getDataid,processId);
readlogLambdaUpdateWrapper.eq(Readlog::getStepid,kpssProcessNode6IdInfo.getFriststepid());
readlogLambdaUpdateWrapper.set(Readlog::getLastaccessdate,dateFormat.format(new Date()));
readlogLambdaUpdateWrapper.set(Readlog::getLastaccessdate,dateFormat.format(nowData));
readlogLambdaUpdateWrapper.setSql("readnum=readnum+1");
readlogMapper.update(null,readlogLambdaUpdateWrapper);
param.clear();
param.put("resid",item.getRequestid());
param.put("staffid",kpssProcessNode6IdInfo.getFriststepid());
param.put("resid",processId);
param.put("staffid",creatorid);
otherMapper.delPermissionuserBack(param);
LambdaUpdateWrapper<Permissionrulegroup> permissionrulegroupLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
permissionrulegroupLambdaUpdateWrapper.eq(Permissionrulegroup::getResid,item.getRequestid());
permissionrulegroupLambdaUpdateWrapper.ne(Permissionrulegroup::getTypeid,"2c9adae478e9195d0178f3300fcc0432");
permissionrulegroupLambdaUpdateWrapper.eq(Permissionrulegroup::getResid,processId);
permissionrulegroupLambdaUpdateWrapper.ne(Permissionrulegroup::getTypeid,kpssProcessNode6IdInfo.getProcessControlid());
permissionrulegroupMapper.delete(permissionrulegroupLambdaUpdateWrapper);
LambdaUpdateWrapper<Wfrequest> wfrequestLambdaUpdateWrapper = new LambdaUpdateWrapper<>();
wfrequestLambdaUpdateWrapper.set(Wfrequest::getLastmodifydate,dateFormat.format(nowData));
wfrequestLambdaUpdateWrapper.set(Wfrequest::getLaststaffid,kpssProcessNode6IdInfo.getCurrentStaffid());
wfrequestLambdaUpdateWrapper.eq(Wfrequest::getId,processId);
wfrequestMapper.update(null,wfrequestLambdaUpdateWrapper);
log.info("wfrequestLambdaUpdateWrapper修改成功:"+wfrequestLambdaUpdateWrapper.toString());
LambdaUpdateWrapper<SendKpxx> sendKpxxLambdaUpdateWrapper = new LambdaUpdateWrapper<SendKpxx>();
sendKpxxLambdaUpdateWrapper.set(SendKpxx::getStatus,3);//驳回是3
sendKpxxLambdaUpdateWrapper.eq(SendKpxx::getRequestid,item.getRequestid());
sendKpxxMapper.update(null,sendKpxxLambdaUpdateWrapper);
}
});
@ -771,18 +841,13 @@ public class ProcessScheduled {
ResponseEntity<ResponseBeanForBeiJing> exchange = restTemplate.exchange(cancelPrjetcUrl+"/CLOSE/"+yptbh, HttpMethod.PUT, request, ResponseBeanForBeiJing.class);
ResponseBeanForBeiJing beanForBeiJing = exchange.getBody();
if (!"200".equals(beanForBeiJing.getCode())){
log.info("返回信息错误!"+beanForBeiJing.toString());
log.info("合同取消到北京云平台失败返回信息错误!"+beanForBeiJing.toString());
return;
}
if ("200".equals(beanForBeiJing.getCode())) {
Map dataMap = (Map) beanForBeiJing.getData();
String projectNo = dataMap.get("projectNo").toString();
HashMap<String, String> paramMap = new HashMap<>();
if ("200".equals(beanForBeiJing.getCode()) && (Boolean) beanForBeiJing.getData()==true) {
otherMapper.updateSchtqx_Byid(item.get("id"));//更新状态
log.info("合同取消到北京到北京成功");
log.info("合同取消到北京云平台成功");
log.info(beanForBeiJing.toString());
} else {
log.info("返回的信息是" + beanForBeiJing.toString());
}
});
}

1
src/main/resources/application-dev.yml

@ -37,5 +37,6 @@ kpssProcessNode6IdInfo:
nextAllowStaffids: "2c908da5803abfa4018064f817070161"
nextStepOperid: "2c9adae4797fd663017982c00bf301e3"
friststepid: "2c9adae478fdbe15017906f93ec90262"
processControlid: "2c9adae478e9195d0178f3300fcc0432"

8
src/main/resources/mapper/OtherMapper.xml

@ -51,18 +51,18 @@
(select yptbh from sc_xmkp1 b where b.id = a.xmmc ) yptbh
from sc_htqx a
where
sfqx='2c9a59b68b9fd59d018cfdfe5abb5e0a' and status is null
sfqx='2c9a59b68b9fd59d018cfdfe5abb5e0a' and status is null and ssgs='ZJ'
</select>
<update id="updateSchtqx_Byid" parameterType="Map">
update sc_htqx set status =1 where id = #{id}
</update>
<update id="updateRequeststatusBack" parameterType="Map">
update requeststatus set stepid = #{creatorId},
update requeststatus set stepid = #{stepid},
preStepid =#{preStepid},
modifyDate =#{modifyDate},
modifyDate =#{modifyDate}
WHERE requestid=(select DISTINCT requestid from sc_kpsqsp where id =#{reqid})
</update>
<delete id="delPermissionuserBack" parameterType="Map">
DELETE from Permissionuser where resid = #{resid} and staffid = #{staffid} and operate=1
DELETE from permissionruleuser where resid = #{resid} and typeid != #{staffid}
</delete>
</mapper>

7
src/main/resources/mapper/SendHtMapper.xml

@ -28,7 +28,10 @@
(select yptbh from sc_xmkp1 where id =project_no ) project_no,
project_no as project_id,
high_tech,
(select name from selectitem e WHERE e.id =winning_bid_way) winning_bid_way,
(select
case when name = '询比采购' then '公开招标'
when name = '分散市场签署' then '公开招标'
else name end as name from selectitem e WHERE e.id =winning_bid_way) winning_bid_way,
contract_amount,
sign_out,
sign_in,
@ -38,7 +41,7 @@
operatetype,
contract_id
from send_ht
where status is null
where status is null AND ssgs = 'ZJ'
order by addtime
</select>

4
src/main/resources/mapper/SendKpxxMapper.xml

@ -30,6 +30,7 @@
<result property="createtime" column="createtime" jdbcType="TIMESTAMP"/>
<result property="status" column="status" jdbcType="INTEGER"/>
<result property="operatetype" column="operatetype" jdbcType="INTEGER"/>
<result property="qy" column="qy" jdbcType="VARCHAR"/>
</resultMap>
<!--查询单个-->
@ -63,7 +64,8 @@
status,
interface_type,
operatetype,
wfrequest
wfrequest,
qy
from send_kpxx A
where status is null
order by createtime

4
src/main/resources/mapper/SendXmMapper.xml

@ -42,6 +42,7 @@
'advisory'
WHEN name ='监理加咨询' THEN
'supervision_advisory'
else 'supervision'
END AS name
from selectitem a where a.id=project_type) project_type,
area_code,
@ -68,7 +69,7 @@
status,
operatetype
from send_xm
where status is null
where status is null and area_code ='ZJ'
order by createtime
</select>
<select id="querySendXmByProjectId" resultMap="SendXmMap">
@ -85,6 +86,7 @@
'advisory'
WHEN name ='监理加咨询' THEN
'supervision_advisory'
else 'supervision'
END AS name
from selectitem a where a.id=project_type) project_type,
area_code,

Loading…
Cancel
Save