Commit d6c5bad5 authored by hezhuozhi's avatar hezhuozhi

Merge remote-tracking branch 'origin/wofkflow0620' into developer_bw

# Conflicts: # amos-boot-system-jxiop/amos-boot-module-hygf-biz/src/main/java/com/yeejoin/amos/boot/module/hygf/biz/service/impl/CommonServiceImpl.java
parents 52b15b31 3573d326
...@@ -195,6 +195,21 @@ ...@@ -195,6 +195,21 @@
<version>2.2.2</version> <version>2.2.2</version>
<scope>compile</scope> <scope>compile</scope>
</dependency> </dependency>
<dependency>
<groupId>com.alibaba</groupId>
<artifactId>easyexcel</artifactId>
<version>3.0.5</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.2</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.2</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
<plugins> <plugins>
......
...@@ -42,6 +42,8 @@ public class HouseholdTestController { ...@@ -42,6 +42,8 @@ public class HouseholdTestController {
@Autowired @Autowired
private SofarDataAcquisitionService sofarDataAcquisitionService; private SofarDataAcquisitionService sofarDataAcquisitionService;
@Autowired
private SunlightService sunlightService;
...@@ -107,12 +109,12 @@ public class HouseholdTestController { ...@@ -107,12 +109,12 @@ public class HouseholdTestController {
@ApiOperation(httpMethod = "POST", value = "锦浪云", notes = "锦浪云") @ApiOperation(httpMethod = "POST", value = "锦浪云", notes = "锦浪云")
public void golangnew() throws IOException { public void golangnew() throws IOException {
// goLangDataAcquisitionService.stationList(); // goLangDataAcquisitionService.stationList();
// goLangDataAcquisitionService.stationDetail(); // goLangDataAcquisitionService.stationDetail();
// goLangDataAcquisitionService.collectorList(); // goLangDataAcquisitionService.collectorList();
// goLangDataAcquisitionService.inverterList(); // goLangDataAcquisitionService.inverterList();
// goLangDataAcquisitionService.collectorDetail(); // goLangDataAcquisitionService.collectorDetail();
// goLangDataAcquisitionService.inverterDetail(); // goLangDataAcquisitionService.inverterDetail();
// goLangDataAcquisitionService.inverAlramInfo(); // goLangDataAcquisitionService.inverAlramInfo();
} }
...@@ -125,13 +127,14 @@ public class HouseholdTestController { ...@@ -125,13 +127,14 @@ public class HouseholdTestController {
@PostMapping(value = "/sofarnew") @PostMapping(value = "/sofarnew")
@ApiOperation(httpMethod = "POST", value = "首航", notes = "首航") @ApiOperation(httpMethod = "POST", value = "首航", notes = "首航")
public void sofarnew() throws IOException { public void sofarnew() throws IOException {
// sofarDataAcquisitionService.stationList(); sunlightService.inverAlramInfo();
// sofarDataAcquisitionService.stationList();
// goLangDataAcquisitionService.stationDetail(); // goLangDataAcquisitionService.stationDetail();
// goLangDataAcquisitionService.collectorList(); // goLangDataAcquisitionService.collectorList();
// goLangDataAcquisitionService.inverterList(); // goLangDataAcquisitionService.inverterList();
// goLangDataAcquisitionService.collectorDetail(); // goLangDataAcquisitionService.collectorDetail();
// goLangDataAcquisitionService.inverterDetail(); // goLangDataAcquisitionService.inverterDetail();
goLangDataAcquisitionService.inverAlramInfo(); // goLangDataAcquisitionService.inverAlramInfo();
} }
/** /**
......
package com.yeejoin.amos.api.householdapi.controller;
import cn.hutool.poi.excel.ExcelReader;
import cn.hutool.poi.excel.ExcelUtil;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.yeejoin.amos.api.householdapi.face.orm.houseapi.entity.hygf.JpStation;
import com.yeejoin.amos.api.householdapi.face.orm.mapper.hygf.CompanyMapper;
import com.yeejoin.amos.api.householdapi.face.orm.mapper.hygf.JpStationMapper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import java.io.File;
import java.io.IOException;
import java.util.List;
@RestController
@Api(tags = "测试")
@RequestMapping(value = "/station")
@Slf4j
public class StationImportController {
@Autowired
private CompanyMapper companyMapper;
@Autowired
private JpStationMapper jpStationMapper;
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@PostMapping(value = "/importStation")
@ApiOperation(httpMethod = "POST", value = "导入", notes = "导入")
public void importStation(@RequestPart("file") MultipartFile file, @RequestParam("thirdCode") String thirdCode) throws IOException {
log.info("=============开始执行==============");
ExcelReader reader = ExcelUtil.getReader(file.getInputStream());
List<List<Object>> read = reader.read(1);
for (List<Object> objects : read) {
String regionalCompanyName = (String) objects.get(0);
String amosCompanyName = (String) objects.get(1);
String stationName = (String) objects.get(2);
String regionalCompanyNameCode = companyMapper.getCompanyNameCode(regionalCompanyName);
if (StringUtils.isEmpty(regionalCompanyNameCode)&&StringUtils.isNotEmpty(regionalCompanyName)) {
log.warn("====项目公司=====" + regionalCompanyName + "==========");
}
String amosCompanyNameCode = companyMapper.getCompanyNameCode(amosCompanyName);
if (StringUtils.isEmpty(amosCompanyNameCode)&&StringUtils.isNotEmpty(amosCompanyName)) {
log.warn("===经销商=====" + amosCompanyName + "==========");
}
updateJpStation(stationName, regionalCompanyNameCode, amosCompanyNameCode, thirdCode);
}
log.info("=============执行完成==============");
}
private void updateJpStation(String stationName, String regionalCompanyNameCode, String amosCompanyNameCode, String code) {
UpdateWrapper<JpStation> wrapper = new UpdateWrapper<JpStation>()
.set("regional_companies_code", regionalCompanyNameCode)
.set("amos_company_code", amosCompanyNameCode)
.eq("third_code", code)
.eq("name", stationName);
jpStationMapper.update(null, wrapper);
}
}
package com.yeejoin.amos.api.householdapi.face.orm.mapper.hygf;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;
@Component
public interface CompanyMapper {
String getCompanyNameCode(@Param("companyName") String companyName);
}
...@@ -70,7 +70,7 @@ dataRequstScheduled.huawei=0 0/50 * * * * ...@@ -70,7 +70,7 @@ dataRequstScheduled.huawei=0 0/50 * * * *
dataRequstScheduled.keshida=0 0/50 * * * * dataRequstScheduled.keshida=0 0/50 * * * *
dataRequstScheduled.Sunlight=0 0/50 * * * * dataRequstScheduled.Sunlight=0 0/50 * * * *
dataRequstScheduled.GoodWe=0 0/3 * * * * dataRequstScheduled.GoodWe=0 0/50 * * * *
dataRequstScheduled.Sofar=0 0/50 * * * * dataRequstScheduled.Sofar=0 0/50 * * * *
...@@ -78,5 +78,5 @@ dataRequstScheduled.Sofar=0 0/50 * * * * ...@@ -78,5 +78,5 @@ dataRequstScheduled.Sofar=0 0/50 * * * *
tanYin.api.apiUrl=https://userauth.tanwin.cn tanYin.api.apiUrl=https://userauth.tanwin.cn
tanYin.api.clientSecret=rKrWVa2sXsSZeNAOW43v tanYin.api.clientSecret=rKrWVa2sXsSZeNAOW43v
tanYin.api.clientKey=yx10001 tanYin.api.clientKey=yx10001
dataRequestScheduled.tanYin=0 0/10 * * * * dataRequestScheduled.tanYin=0 0/50 * * * *
dataRequestScheduled.tanYin.warn=0 0/5 * * * * dataRequestScheduled.tanYin.warn=0 0/50 * * * *
\ No newline at end of file \ No newline at end of file
...@@ -70,7 +70,7 @@ dataRequstScheduled.huawei=0 0/50 * * * * ...@@ -70,7 +70,7 @@ dataRequstScheduled.huawei=0 0/50 * * * *
dataRequstScheduled.keshida=0 0/50 * * * * dataRequstScheduled.keshida=0 0/50 * * * *
dataRequstScheduled.Sunlight=0 0/50 * * * * dataRequstScheduled.Sunlight=0 0/50 * * * *
dataRequstScheduled.GoodWe=0 0/3 * * * * dataRequstScheduled.GoodWe=0 0/50 * * * *
dataRequstScheduled.Sofar=0 0/50 * * * * dataRequstScheduled.Sofar=0 0/50 * * * *
...@@ -78,5 +78,5 @@ dataRequstScheduled.Sofar=0 0/50 * * * * ...@@ -78,5 +78,5 @@ dataRequstScheduled.Sofar=0 0/50 * * * *
tanYin.api.apiUrl=https://userauth.tanwin.cn tanYin.api.apiUrl=https://userauth.tanwin.cn
tanYin.api.clientSecret=rKrWVa2sXsSZeNAOW43v tanYin.api.clientSecret=rKrWVa2sXsSZeNAOW43v
tanYin.api.clientKey=yx10001 tanYin.api.clientKey=yx10001
dataRequestScheduled.tanYin=0 0/10 * * * * dataRequestScheduled.tanYin=0 0/50 * * * *
dataRequestScheduled.tanYin.warn=0 0/5 * * * * dataRequestScheduled.tanYin.warn=0 0/50 * * * *
\ No newline at end of file \ No newline at end of file
spring.application.name=AMOS-API-ACCESSAPI spring.application.name=AMOS-API-ACCESSAPI
server.servlet.context-path=/housepvapi server.servlet.context-path=/housepvapi
server.port=11006 server.port=11006
spring.profiles.active=dev spring.profiles.active=kingbase8
server.compression.enabled=true server.compression.enabled=true
spring.jackson.dateFormat=yyyy-MM-dd HH:mm:ss spring.jackson.dateFormat=yyyy-MM-dd HH:mm:ss
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.api.householdapi.face.orm.mapper.hygf.CompanyMapper">
<select id="getCompanyNameCode" resultType="java.lang.String">
select
ORG_CODE
from
privilege_company
where
COMPANY_NAME = #{companyName}
limit 1
</select>
</mapper>
...@@ -13,7 +13,14 @@ public enum BusinessTypeEnum { ...@@ -13,7 +13,14 @@ public enum BusinessTypeEnum {
HYGF_JXS_SH("JXS_SH", "经销商审核"), HYGF_JXS_SH("JXS_SH", "经销商审核"),
HYGF_DZ_SH("hygf_10001", "电站审核"), HYGF_DZ_SH("hygf_10001", "电站审核"),
HYGF_BWYS("hygf_bwys", "并网验收"), HYGF_BWYS("hygf_bwys", "并网验收"),
HYGF_DZTRRZ("StationFinancing", "电站投融资流程"); HYGF_DZTRRZ("StationFinancing", "电站投融资流程"),
HYGF_FHGL("DeliveryManagement", "发货管理"),
HYGF_ZGDSHLC("RectificationAudit", "整改单审核流程"),
HYGF_YSLC("AcceptanceCheck", "验收流程"),
HYGF_BWLC("GridConnected", "并网流程"),
HYGF_SGLCSH("ProcessEngineering", "施工流程审核"),
HYGF_REPAY("Repatment", "还款"),
;
private final String code; private final String code;
private final String name; private final String name;
......
package com.yeejoin.amos.boot.module.hygf.api.Enum;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* 此处是为了待办提供的流程状态 提供流程Key对应此时流程的状态名称
*/
@Getter
@AllArgsConstructor
public enum FlowKeyTodoEnum {
TSRZ(1001, "待推送", "AbarbeitungWaitPush", "推送融资"),
JXSZG(1002, "待整改", "WaitAbarbeitung", "经销商整改"),
RZSH(1003, "待审核", "FinancingAudit", "融资审核"),
XXFK(1004, "待放款", "AuditPass", "线下放款"),
JXSGLYSH(1005, "待经销商管理员审核", "hygf_02", "经销商确认"),
SJSH(1006, "待设计审核", "hygf_03", "设计审核"),
TRSH(1007, "待投融审核", "hygf_05", "投融审核"),
FWSH(1008, "待法务审核", "hygf_07", "法务审核"),
SJSCDXTK(1009, "待设计上传典型图库", "hygf_09", "设计上传典型图库"),
JXSSJRYSC(1010, "待经销商设计人员上传设计图", "hygf_10", "经销商设计人员上传设计图"),
SJTZSH(1011, "待设计图纸审核", "hygf_11", "设计图纸审核"),
BWDJTJ(1012, "待并网登记提交", "hygf_bw1", "并网登记提交"),
BWGLDGCSH(1013, "待并网管理端工程审核", "hygf_bw2", "并网管理端工程审核"),
JXSGCTJYS(1014, "待经销商工程提交验收", "hygf_ys1", "经销商工程提交验收"),
GLDTRSH(1015, "待管理端投融审核", "hygf_ys2", "管理端投融审核"),
ZGD(1016, "待整改单", "hygf_zg_tr", "整改单"),
GLDFWSH(1017, "待管理端法务审核", "hygf_ys3", "管理端法务审核"),
ZGD_FW(1018, "待整改单", "hygf_zg_fw", "整改单"),
GLDGCSH(1019, "待管理端工程审核", "hygf_ys4", "管理端工程审核"),
ZGD_GC(1020, "待整改单", "hygf_zg_gc", "整改单"),
GLDGCYX(1021, "待管理端工程是否线下", "hygf_ys5", "管理端工程是否线下"),
GLDGCXY(1022, "待管理端工程线下验", "hygf_ys6", "管理端工程线下验"),
ZGD_XX(1023, "待整改单", "hygf_zg_xx", "整改单"),
;
private final int code;
private final String dealName;
private final String flowNodeKey;
private final String flowNodeName;
public static FlowKeyTodoEnum getEumByFlowNodeKey(String flowNodeKey) {
for (FlowKeyTodoEnum statusEnum : FlowKeyTodoEnum.values()) {
if (statusEnum.getFlowNodeKey().equals(flowNodeKey)) {
return statusEnum;
}
}
return null;
}
}
\ No newline at end of file
package com.yeejoin.amos.boot.module.hygf.api.Enum;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @description:还款消息状态枚举
* @author: hzz
* @createDate: 2023/12/13
*/
@Getter
@AllArgsConstructor
public enum RepaymentCronSendStateEnum {
UN_SEND(0,"不执行定时任务"),
SEND(1,"执行定时任务");
/**
* 编码
*/
private Integer code;
/**
* 名称,描述
*/
private String remark;
}
package com.yeejoin.amos.boot.module.hygf.api.Enum;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @description:还款消息状态枚举
* @author: hzz
* @createDate: 2023/12/13
*/
@Getter
@AllArgsConstructor
public enum RepaymentMessageStateEnum {
UN_CONFIRM(0,"待确认"),
CONFIRM(1,"确认");
/**
* 编码
*/
private Integer code;
/**
* 名称,描述
*/
private String remark;
public static RepaymentMessageStateEnum getByCode(Integer code) {
RepaymentMessageStateEnum anEnum = null;
for (RepaymentMessageStateEnum type : RepaymentMessageStateEnum.values()) {
if (type.getCode() == code) {
anEnum = type;
break;
}
}
return anEnum;
}
}
package com.yeejoin.amos.boot.module.hygf.api.Enum;
import lombok.AllArgsConstructor;
import lombok.Getter;
/**
* @description:还款消息状态枚举
* @author: hzz
* @createDate: 2023/12/13
*/
@Getter
@AllArgsConstructor
public enum RepaymentRepayStateEnum {
UN_REPAY(0, "待还款"),
REPAY(1, "已还款");
/**
* 编码
*/
private Integer code;
/**
* 名称,描述
*/
private String remark;
public static RepaymentRepayStateEnum getByCode(Integer code) {
RepaymentRepayStateEnum anEnum = null;
for (RepaymentRepayStateEnum type : RepaymentRepayStateEnum.values()) {
if (type.getCode() == code) {
anEnum = type;
break;
}
}
return anEnum;
}
}
package com.yeejoin.amos.boot.module.hygf.api.dto;
import com.baomidou.mybatisplus.annotation.TableField;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.time.LocalDate;
import java.util.Date;
/**
*
*
* @author hzz
* @date 2024-09-26
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value = "RepaymentDto", description = "还款Dto实体类")
public class RepaymentDto extends BaseDto {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "公司名称")
private String companyName;
@ApiModelProperty(value = "公司CODE")
private String regionalCompaniesCode;
@ApiModelProperty(value = "公司ID")
private Long companyId;
@ApiModelProperty(value = "期次")
private String period;
@ApiModelProperty(value = "还款时间")
private LocalDate repayDate;
@ApiModelProperty(value = "租金")
private Double rent;
@ApiModelProperty(value = "利息")
private Double interest;
@ApiModelProperty(value = "本金")
private Double principal;
@ApiModelProperty(value = "放款批次")
private String loanPeriod;
@ApiModelProperty(value = "消息状态0未确认1已确认")
private Integer messageState;
@ApiModelProperty(value = "消息状态")
private String messageStateStr;
@ApiModelProperty(value = "还款状态0未还款1已还款")
private Integer repayState;
@ApiModelProperty(value = "还款状态")
private String repayStateStr;
@ApiModelProperty(value = "定时发送状态")
private Integer cronSendState;
}
...@@ -31,7 +31,7 @@ public class ReviewDto { ...@@ -31,7 +31,7 @@ public class ReviewDto {
private String planInstanceId; private String planInstanceId;
private String adminUserId; private String adminUserId;
private String regionalCompaniesName; private String regionalCompaniesName;
private String unitInfoId;
......
...@@ -2,6 +2,8 @@ package com.yeejoin.amos.boot.module.hygf.api.dto; ...@@ -2,6 +2,8 @@ package com.yeejoin.amos.boot.module.hygf.api.dto;
import lombok.Data; import lombok.Data;
import java.util.Date;
@Data @Data
public class WorkflowResultDto { public class WorkflowResultDto {
...@@ -11,11 +13,6 @@ public class WorkflowResultDto { ...@@ -11,11 +13,6 @@ public class WorkflowResultDto {
*/ */
String instanceId; String instanceId;
// /**
// * 执行人角色
// */
// String nextExecutorIds;
String executorId; String executorId;
...@@ -49,4 +46,22 @@ public class WorkflowResultDto { ...@@ -49,4 +46,22 @@ public class WorkflowResultDto {
String nextNodeKey; String nextNodeKey;
/**
* 任务发起人id 不变 第一次提交的人
* 从业务表中 created_uesr_id
*/
private String startUserId;
/**
* 任务发起人名称 不变
* 名字
*/
private String startUser;
/**
* 任务发起人所在单位 不变
*/
private String startUserCompanyName;
/**
* 任务发起人发起时间 不变
*/
private Date startDate;
} }
package com.yeejoin.amos.boot.module.hygf.api.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.time.LocalDate;
import java.util.Date;
/**
*
*
* @author hzz
* @date 2024-09-26
*/
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@TableName(value = "hygf_repayment", autoResultMap = true)
public class Repayment extends BaseEntity {
private static final long serialVersionUID = 1L;
/**
* 公司名称
*/
@TableField("company_name")
private String companyName;
/**
* 公司CODE
*/
@TableField("regional_companies_code")
private String regionalCompaniesCode;
/**
* 公司ID
*/
@TableField("company_id")
private Long companyId;
/**
* 期次
*/
@TableField("period")
private String period;
/**
* 还款时间
*/
@TableField("repay_date")
private LocalDate repayDate;
/**
* 租金
*/
@TableField("rent")
private Double rent;
/**
* 利息
*/
@TableField("interest")
private Double interest;
/**
* 本金
*/
@TableField("principal")
private Double principal;
/**
* 放款批次
*/
@TableField("loan_period")
private String loanPeriod;
/**
* 消息状态0未确认1已确认
*/
@TableField("message_state")
private Integer messageState;
/**
* 还款状态0未还款1已还款
*/
@TableField("repay_state")
private Integer repayState;
/**
* 定时发送状态
*/
@TableField("cron_send_state")
private Integer cronSendState;
}
package com.yeejoin.amos.boot.module.hygf.api.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.yeejoin.amos.boot.module.hygf.api.config.UserEmpower;
import com.yeejoin.amos.boot.module.hygf.api.dto.RepaymentDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.Repayment;
import java.util.List;
/**
* Mapper 接口
*
* @author hzz
* @date 2024-09-26
*/
public interface RepaymentMapper extends BaseMapper<Repayment> {
@UserEmpower(field = {"regional_companies_code"}, dealerField = {"regional_companies_code"}, fieldConditions = {"in"}, relationship = "and")
List<RepaymentDto> queryPage();
}
package com.yeejoin.amos.boot.module.hygf.api.service;
/**
* 接口类
*
* @author hzz
* @date 2024-09-26
*/
public interface IRepaymentService {
}
...@@ -85,7 +85,9 @@ ...@@ -85,7 +85,9 @@
<if test="param.regionCompanyId!=null and param.regionCompanyId!=''"> <if test="param.regionCompanyId!=null and param.regionCompanyId!=''">
and hygf_work_order.region_company_id =#{param.regionCompanyId} and hygf_work_order.region_company_id =#{param.regionCompanyId}
</if> </if>
<if test="param.peasantHouseholdId!=null and param.peasantHouseholdId!=''">
and bga.peasant_household_id =#{param.peasantHouseholdId}
</if>
</if> </if>
</where> </where>
......
...@@ -43,6 +43,9 @@ ...@@ -43,6 +43,9 @@
AND u.`name` like concat('%',#{name},'%') AND u.`name` like concat('%',#{name},'%')
</if> </if>
<if test="unitInfoId != null and unitInfoId != ''">
AND u.`sequence_nbr` = #{unitInfoId}
</if>
</where> </where>
ORDER BY u.audit_status ,u.rec_date DESC,u.sequence_nbr DESC ORDER BY u.audit_status ,u.rec_date DESC,u.sequence_nbr DESC
......
...@@ -47,6 +47,10 @@ ...@@ -47,6 +47,10 @@
<if test="params.region != null and params.region !='' "> <if test="params.region != null and params.region !='' ">
and hph.project_address like concat ('%',#{params.region},'%') and hph.project_address like concat ('%',#{params.region},'%')
</if> </if>
<if test="params.peasantHouseholdNo != null and params.peasantHouseholdNo !='' ">
and hph.peasant_household_no = #{params.peasantHouseholdNo}
</if>
</where> </where>
ORDER BY ORDER BY
info.rec_date DESC ,hph.sequence_nbr DESC ) as sta info.rec_date DESC ,hph.sequence_nbr DESC ) as sta
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.yeejoin.amos.boot.module.hygf.api.mapper.RepaymentMapper">
<select id="queryPage" resultType="com.yeejoin.amos.boot.module.hygf.api.dto.RepaymentDto">
select * from hygf_repayment
order by rec_date DESC
</select>
</mapper>
...@@ -111,8 +111,21 @@ ...@@ -111,8 +111,21 @@
<version>1.0</version> <version>1.0</version>
</dependency> </dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi-ooxml</artifactId>
<version>4.1.2</version>
</dependency>
<dependency>
<groupId>org.apache.poi</groupId>
<artifactId>poi</artifactId>
<version>4.1.2</version>
</dependency>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-annotation</artifactId>
<version>3.2.0</version>
</dependency>
</dependencies> </dependencies>
<build> <build>
......
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.controller.BaseController;
import com.yeejoin.amos.boot.module.hygf.api.Enum.RepaymentCronSendStateEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.RepaymentMessageStateEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.RepaymentRepayStateEnum;
import com.yeejoin.amos.boot.module.hygf.api.dto.RepaymentDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.Repayment;
import com.yeejoin.amos.boot.module.hygf.api.util.FileUtil;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.RepaymentServiceImpl;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.restful.doc.TycloudOperation;
import org.typroject.tyboot.core.restful.utils.ResponseHelper;
import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
*
*
* @author 还款管理
* @date 2024-09-26
*/
@RestController
@Api(tags = "还款管理Api")
@RequestMapping(value = "/repayment")
public class RepaymentController extends BaseController {
@Autowired
RepaymentServiceImpl repaymentService;
/**
* 定时任务
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/cronTest")
@ApiOperation(httpMethod = "GET", value = "定时任务", notes = "定时任务")
public ResponseModel<?> cronTest() {
repaymentService.cronSendRepayMessage();
return ResponseHelper.buildResponse(null);
}
/**
* 新增
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/save")
@ApiOperation(httpMethod = "POST", value = "新增", notes = "新增")
public ResponseModel<RepaymentDto> save(@RequestBody RepaymentDto model) {
model.setCronSendState(RepaymentCronSendStateEnum.SEND.getCode());
model.setMessageState(RepaymentMessageStateEnum.UN_CONFIRM.getCode());
model.setRepayState(RepaymentRepayStateEnum.UN_REPAY.getCode());
model = repaymentService.createWithModel(model);
return ResponseHelper.buildResponse(model);
}
/**
* 根据sequenceNbr更新
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/updateBySequenceNbr")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr更新", notes = "根据sequenceNbr更新")
public ResponseModel<?> updateBySequenceNbr(@RequestBody Repayment model) {
repaymentService.updateById(model);
return ResponseHelper.buildResponse(null);
}
/**
* 根据sequenceNbr确认消息
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/messageBySequenceNbr")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr确认消息", notes = "根据sequenceNbr确认消息")
public ResponseModel<?> confirmMessageState(@RequestParam(value = "sequenceNbr") Long sequenceNbr) {
repaymentService.confirmMessageState(sequenceNbr);
return ResponseHelper.buildResponse(null);
}
/**
* 根据sequenceNbr还款
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/repayBySequenceNbr")
@ApiOperation(httpMethod = "PUT", value = "根据sequenceNbr还款", notes = "根据sequenceNbr还款")
public ResponseModel<?> batchRepay(@RequestParam(value = "sequenceNbr") Long sequenceNbr) {
repaymentService.repay(sequenceNbr);
return ResponseHelper.buildResponse(null);
}
/**
* 根据sequenceNbr批量确认消息
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/batchConfirmMessageState")
@ApiOperation(httpMethod = "POST", value = "根据sequenceNbr批量确认消息", notes = "根据sequenceNbr批量确认消息")
public ResponseModel<?> batchConfirmMessageState(@RequestBody List<Long> sequenceNbrList) {
repaymentService.batchConfirmMessageState(sequenceNbrList);
return ResponseHelper.buildResponse(null);
}
/**
* 根据sequenceNbr批量还款
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "/batchRepay")
@ApiOperation(httpMethod = "POST", value = "根据sequenceNbr批量还款", notes = "根据sequenceNbr批量还款")
public ResponseModel<?> batchRepay(@RequestBody List<Long> sequenceNbrList) {
repaymentService.batchRepay(sequenceNbrList);
return ResponseHelper.buildResponse(null);
}
/**
* 根据sequenceNbr批量删除
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "batchDelete")
@ApiOperation(httpMethod = "POST", value = "根据sequenceNbr批量删除", notes = "根据sequenceNbr批量删除")
public ResponseModel<Boolean> deleteBySequenceNbr(@RequestBody List<Long> sequenceNbrList) {
return ResponseHelper.buildResponse(repaymentService.deleteBatchSeq(sequenceNbrList));
}
/**
* 导入还款模板Excel
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "importRepaymentExcel")
@ApiOperation(httpMethod = "POST", value = "导入还款模板Excel", notes = "导入还款模板Excel")
public ResponseModel<?> importRepaymentExcel(@RequestPart("file") MultipartFile file) {
AgencyUserModel userInfo = getUserInfo();
repaymentService.importRepaymentExcel(file, userInfo);
return ResponseHelper.buildResponse(null);
}
/**
* 导入还款模板Excel
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PostMapping(value = "exportRepaymentExcel")
@ApiOperation(httpMethod = "POST", value = "导出还款模板Excel", notes = "导出还款模板Excel")
public ResponseModel<?> exportRepaymentExcel(@RequestBody List<Long> sequenceNbrList, HttpServletResponse response) {
repaymentService.exportRepaymentExcel(sequenceNbrList, response);
return ResponseHelper.buildResponse(null);
}
@GetMapping(value = "/exportTemplates")
@TycloudOperation(ApiLevel = UserType.AGENCY)
@ApiOperation(httpMethod = "GET", value = "模板下载", notes = "模板下载")
public void exportTemplates(HttpServletResponse response) {
FileUtil.downloadResource("还款管理导入模板.xlsx", "templates/repaymentTemplates.xlsx", response);
}
/**
* 根据sequenceNbr删除
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@DeleteMapping(value = "/delete")
@ApiOperation(httpMethod = "DELETE", value = "根据sequenceNbr删除", notes = "根据sequenceNbr删除")
public ResponseModel<Boolean> deleteBySequenceNbr(@RequestParam(value = "sequenceNbr") Long sequenceNbr) {
return ResponseHelper.buildResponse(repaymentService.removeById(sequenceNbr));
}
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/selectDetail")
@ApiOperation(httpMethod = "GET", value = "根据sequenceNbr查询单个", notes = "根据sequenceNbr查询单个")
public ResponseModel<RepaymentDto> selectOne(@RequestParam(value = "sequenceNbr") Long sequenceNbr) {
RepaymentDto repaymentDto = repaymentService.queryBySeq(sequenceNbr);
return ResponseHelper.buildResponse(repaymentDto);
}
/**
* 列表分页查询
*
* @param current 当前页
* @param current 每页大小
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/page")
@ApiOperation(httpMethod = "GET", value = "分页查询", notes = "分页查询")
public ResponseModel<Page<RepaymentDto>> queryForPage(@RequestParam(value = "current") int current,
@RequestParam(value = "size") int size) {
return ResponseHelper.buildResponse(repaymentService.queryForRepaymentPage(current, size));
}
}
...@@ -5,10 +5,7 @@ import com.yeejoin.amos.component.feign.config.InnerInvokException; ...@@ -5,10 +5,7 @@ import com.yeejoin.amos.component.feign.config.InnerInvokException;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model; import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PathVariable; import org.springframework.web.bind.annotation.*;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import java.util.List; import java.util.List;
...@@ -32,6 +29,19 @@ public interface TaskV2FeignService { ...@@ -32,6 +29,19 @@ public interface TaskV2FeignService {
FeignClientResult<List<TaskV2Model>> batchAdd(@RequestBody List<TaskV2Model> modelList) throws InnerInvokException; FeignClientResult<List<TaskV2Model>> batchAdd(@RequestBody List<TaskV2Model> modelList) throws InnerInvokException;
/** /**
* 批量新增任务
*
* @param modelList 新增待办
* @return TaskV2Model
* @throws InnerInvokException e
*/
@RequestMapping(value = "/batch/add", method = RequestMethod.POST)
FeignClientResult<List<TaskV2Model>> batchAddNew(@RequestHeader(name = "appKey", required = true) String appKey,
@RequestHeader(name = "product", required = true) String product,
@RequestHeader(name = "token", required = true) String token,
@RequestBody List<TaskV2Model> modelList) throws InnerInvokException;
/**
* 更新任务 * 更新任务
* *
* @param model 待办信息 * @param model 待办信息
......
...@@ -6,6 +6,7 @@ import com.yeejoin.amos.component.feign.model.FeignClientResult; ...@@ -6,6 +6,7 @@ import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.workflow.model.*; import com.yeejoin.amos.feign.workflow.model.*;
import org.springframework.cloud.openfeign.FeignClient; import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
import java.util.Map; import java.util.Map;
...@@ -70,6 +71,13 @@ public interface WorkFlowFeignService { ...@@ -70,6 +71,13 @@ public interface WorkFlowFeignService {
@RequestMapping(value = "/v2/task/start/batch", method = RequestMethod.POST) @RequestMapping(value = "/v2/task/start/batch", method = RequestMethod.POST)
FeignClientResult<List<ProcessTaskDTO>> startForBatch(@RequestBody ActWorkflowBatchDTO params) throws Exception; FeignClientResult<List<ProcessTaskDTO>> startForBatch(@RequestBody ActWorkflowBatchDTO params) throws Exception;
@RequestMapping(value = "/v2/task/start/batch", method = RequestMethod.POST)
FeignClientResult<List<ProcessTaskDTO>> startForBatchNew(
@RequestHeader(name = "appKey", required = true) String appKey,
@RequestHeader(name = "product", required = true) String product,
@RequestHeader(name = "token", required = true) String token,
@RequestBody ActWorkflowBatchDTO params);
/** /**
* 工作流驳回任务接口 * 工作流驳回任务接口
* *
......
...@@ -10,10 +10,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; ...@@ -10,10 +10,7 @@ import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity; import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import com.yeejoin.amos.boot.module.hygf.api.Enum.ArrivalStateeEnum; import com.yeejoin.amos.boot.module.hygf.api.Enum.*;
import com.yeejoin.amos.boot.module.hygf.api.Enum.BusinessWorkflowKey;
import com.yeejoin.amos.boot.module.hygf.api.Enum.GridStatusEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.WorkOrderEnum;
import com.yeejoin.amos.boot.module.hygf.api.dto.*; import com.yeejoin.amos.boot.module.hygf.api.dto.*;
import com.yeejoin.amos.boot.module.hygf.api.entity.*; import com.yeejoin.amos.boot.module.hygf.api.entity.*;
import com.yeejoin.amos.boot.module.hygf.api.mapper.AcceptanceCheckMapper; import com.yeejoin.amos.boot.module.hygf.api.mapper.AcceptanceCheckMapper;
...@@ -69,6 +66,8 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A ...@@ -69,6 +66,8 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
FinancingInfoServiceImpl financingInfoService; FinancingInfoServiceImpl financingInfoService;
@Autowired @Autowired
FinancingAuditingServiceImpl financingAuditingService; FinancingAuditingServiceImpl financingAuditingService;
@Autowired
CommonServiceImpl commonService;
public Page<AcceptanceCheckDto> selectPage(Long regionCompanyId, Long amosDealerId, int current, int size, public Page<AcceptanceCheckDto> selectPage(Long regionCompanyId, Long amosDealerId, int current, int size,
...@@ -173,6 +172,9 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A ...@@ -173,6 +172,9 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
long idsk = basicGridRecord.getPeasantHouseholdId(); long idsk = basicGridRecord.getPeasantHouseholdId();
up.eq(PeasantHousehold::getSequenceNbr, idsk); up.eq(PeasantHousehold::getSequenceNbr, idsk);
peasantHouseholdMapper.update(null, up); peasantHouseholdMapper.update(null, up);
//发起待办
workflowResultDto.setInstanceId(basicGridRecord.getInstanceId());
commonService.buildTaskModel(commonService.buildTaskModelDto(basicGridRecord, workflowResultDto, BusinessTypeEnum.HYGF_YSLC));
} }
//防止重复提交 //防止重复提交
...@@ -187,8 +189,6 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A ...@@ -187,8 +189,6 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
update.eq(BaseEntity::getSequenceNbr,basicGridRecord.getSequenceNbr()); update.eq(BaseEntity::getSequenceNbr,basicGridRecord.getSequenceNbr());
this.update(null,update); this.update(null,update);
//发起待办
// commonService.buildTaskModel(buildBWYSTaskModel(grid, basicGridAcceptance));
ConstructionAcceptanceRecords da = new ConstructionAcceptanceRecords(model.get("realName").toString(), "提交验收审核", ConstructionAcceptanceRecords da = new ConstructionAcceptanceRecords(model.get("realName").toString(), "提交验收审核",
new Date(), "", basicGridRecord.getSequenceNbr(), basicGridRecord.getWorkOrderPowerStationId(), new Date(), "", basicGridRecord.getSequenceNbr(), basicGridRecord.getWorkOrderPowerStationId(),
...@@ -232,8 +232,12 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A ...@@ -232,8 +232,12 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
basicGridAuditingDto.setInstanceId(basicGridAuditing.getInstanceId()); basicGridAuditingDto.setInstanceId(basicGridAuditing.getInstanceId());
} }
acceptanceCheckAuditingService.createWithModel(basicGridAuditingDto); acceptanceCheckAuditingService.createWithModel(basicGridAuditingDto);
//更新待办
workflowResultDto.setInstanceId(basicGridAuditingDto.getInstanceId());
commonService.updateTaskModelAndAddTask(basicGridAuditingDto,workflowResultDto,BusinessTypeEnum.HYGF_YSLC);
} }
public void completeAdminAudit(Map<String,String> kv) { public void completeAdminAudit(Map<String,String> kv) {
String instanceId = kv.get("instanceId"); String instanceId = kv.get("instanceId");
String sequenceNbr = kv.get("sequenceNbr"); String sequenceNbr = kv.get("sequenceNbr");
......
package com.yeejoin.amos.boot.module.hygf.biz.service.impl; package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSONArray; import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.StringUtils; import com.baomidou.mybatisplus.core.toolkit.StringUtils;
...@@ -8,10 +9,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; ...@@ -8,10 +9,12 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams; import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.utils.RedisKey; import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
import com.yeejoin.amos.boot.biz.common.utils.RedisUtils; import com.yeejoin.amos.boot.biz.common.utils.RedisUtils;
import com.yeejoin.amos.boot.module.hygf.api.Enum.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.FlowStatusEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.RectificationStatusEnum; import com.yeejoin.amos.boot.module.hygf.api.Enum.RectificationStatusEnum;
import com.yeejoin.amos.boot.module.hygf.api.dto.AcceptanceRectificationOrderDto; import com.yeejoin.amos.boot.module.hygf.api.dto.AcceptanceRectificationOrderDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.FileItemDto; import com.yeejoin.amos.boot.module.hygf.api.dto.FileItemDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.StandardDto; import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.AcceptanceRectificationOrder; import com.yeejoin.amos.boot.module.hygf.api.entity.AcceptanceRectificationOrder;
import com.yeejoin.amos.boot.module.hygf.api.entity.BasicGridAcceptance; import com.yeejoin.amos.boot.module.hygf.api.entity.BasicGridAcceptance;
import com.yeejoin.amos.boot.module.hygf.api.mapper.AcceptanceRectificationOrderMapper; import com.yeejoin.amos.boot.module.hygf.api.mapper.AcceptanceRectificationOrderMapper;
...@@ -20,6 +23,8 @@ import com.yeejoin.amos.boot.module.hygf.api.service.IAcceptanceRectificationOrd ...@@ -20,6 +23,8 @@ import com.yeejoin.amos.boot.module.hygf.api.service.IAcceptanceRectificationOrd
import com.yeejoin.amos.boot.module.hygf.api.util.RedisLockUtil; import com.yeejoin.amos.boot.module.hygf.api.util.RedisLockUtil;
import com.yeejoin.amos.component.robot.BadRequest; import com.yeejoin.amos.component.robot.BadRequest;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.workflow.model.ProcessTaskDTO;
import com.yeejoin.amos.feign.workflow.model.TaskResultDTO;
import org.apache.commons.lang3.BooleanUtils; import org.apache.commons.lang3.BooleanUtils;
import org.springframework.beans.BeanUtils; import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -30,7 +35,9 @@ import org.typroject.tyboot.core.rdbms.service.BaseService; ...@@ -30,7 +35,9 @@ import org.typroject.tyboot.core.rdbms.service.BaseService;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 验收整改单服务实现类 * 验收整改单服务实现类
...@@ -46,8 +53,12 @@ public class AcceptanceRectificationOrderServiceImpl extends BaseService<Accepta ...@@ -46,8 +53,12 @@ public class AcceptanceRectificationOrderServiceImpl extends BaseService<Accepta
// private String hygfGcRoleSeq; // private String hygfGcRoleSeq;
@Autowired @Autowired
private BasicGridAcceptanceMapper basicGridAcceptanceMapper; private BasicGridAcceptanceMapper basicGridAcceptanceMapper;
// @Autowired
// private WorkflowImpl workflow;
@Autowired @Autowired
private WorkflowImpl workflow; private WorkFlowService workFlowService;
@Autowired
private CommonServiceImpl commonService;
@Autowired @Autowired
private RedisUtils redisUtils; private RedisUtils redisUtils;
@Resource (type = RedisLockUtil.class) @Resource (type = RedisLockUtil.class)
...@@ -59,7 +70,7 @@ public class AcceptanceRectificationOrderServiceImpl extends BaseService<Accepta ...@@ -59,7 +70,7 @@ public class AcceptanceRectificationOrderServiceImpl extends BaseService<Accepta
return acceptanceRectificationOrderMapper.page(page, acceptanceSeqNbr); return acceptanceRectificationOrderMapper.page(page, acceptanceSeqNbr);
} }
/** /**
* 列表查询 示例 * 列表查询 示例
*/ */
...@@ -135,16 +146,23 @@ public class AcceptanceRectificationOrderServiceImpl extends BaseService<Accepta ...@@ -135,16 +146,23 @@ public class AcceptanceRectificationOrderServiceImpl extends BaseService<Accepta
basicGridAcceptance.setAcceptanceStatus(String.valueOf(Integer.parseInt(basicGridAcceptance.getAcceptanceStatus()) - 1)); basicGridAcceptance.setAcceptanceStatus(String.valueOf(Integer.parseInt(basicGridAcceptance.getAcceptanceStatus()) - 1));
StandardDto standardDto=new StandardDto(); // StandardDto standardDto=new StandardDto();
standardDto.setTaskId(basicGridAcceptance.getNextTaskId()); // standardDto.setTaskId(basicGridAcceptance.getNextTaskId());
workflow.standard(basicGridAcceptance,standardDto,userId); // workflow.standard(basicGridAcceptance,standardDto,userId);
TaskResultDTO taskResultDTO = new TaskResultDTO();
basicGridAcceptanceMapper.updateById(basicGridAcceptance); taskResultDTO.setTaskId(basicGridAcceptance.getNextTaskId());
ProcessTaskDTO processTaskDTO = workFlowService.standard(basicGridAcceptance, taskResultDTO, userId);
//更新待办
WorkflowResultDto workflowResultDto = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO)).get(0);
workflowResultDto.setInstanceId(basicGridAcceptance.getInstanceId());
commonService.updateTaskModelAndAddTask(basicGridAcceptance, workflowResultDto,BusinessTypeEnum.HYGF_BWYS);
basicGridAcceptanceMapper.updateById(basicGridAcceptance);
} }
} finally { } finally {
redisLockUtil.releaseLock(lockName); redisLockUtil.releaseLock(lockName);
} }
return model; return model;
} }
} }
package com.yeejoin.amos.boot.module.hygf.biz.service.impl; package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
...@@ -7,8 +8,10 @@ import com.github.pagehelper.PageHelper; ...@@ -7,8 +8,10 @@ import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.yeejoin.amos.boot.module.hygf.api.Enum.AcceptanceStatusEnum; import com.yeejoin.amos.boot.module.hygf.api.Enum.AcceptanceStatusEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.ArrivalStateeEnum; import com.yeejoin.amos.boot.module.hygf.api.Enum.ArrivalStateeEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.FlowStatusEnum;
import com.yeejoin.amos.boot.module.hygf.api.dto.AcceptanceDto; import com.yeejoin.amos.boot.module.hygf.api.dto.AcceptanceDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.StandardDto; import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.AcceptanceCheckItem; import com.yeejoin.amos.boot.module.hygf.api.entity.AcceptanceCheckItem;
import com.yeejoin.amos.boot.module.hygf.api.entity.BasicGridAcceptance; import com.yeejoin.amos.boot.module.hygf.api.entity.BasicGridAcceptance;
import com.yeejoin.amos.boot.module.hygf.api.entity.PeasantHousehold; import com.yeejoin.amos.boot.module.hygf.api.entity.PeasantHousehold;
...@@ -17,6 +20,8 @@ import com.yeejoin.amos.boot.module.hygf.api.mapper.AcceptanceMapper; ...@@ -17,6 +20,8 @@ import com.yeejoin.amos.boot.module.hygf.api.mapper.AcceptanceMapper;
import com.yeejoin.amos.boot.module.hygf.api.mapper.BasicGridAcceptanceMapper; import com.yeejoin.amos.boot.module.hygf.api.mapper.BasicGridAcceptanceMapper;
import com.yeejoin.amos.boot.module.hygf.api.mapper.PeasantHouseholdMapper; import com.yeejoin.amos.boot.module.hygf.api.mapper.PeasantHouseholdMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IAcceptanceService; import com.yeejoin.amos.boot.module.hygf.api.service.IAcceptanceService;
import com.yeejoin.amos.feign.workflow.model.ProcessTaskDTO;
import com.yeejoin.amos.feign.workflow.model.TaskResultDTO;
import com.yeejoin.amos.boot.module.hygf.api.util.RedisLockUtil; import com.yeejoin.amos.boot.module.hygf.api.util.RedisLockUtil;
import com.yeejoin.amos.component.robot.BadRequest; import com.yeejoin.amos.component.robot.BadRequest;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
...@@ -35,6 +40,10 @@ import java.util.stream.Collectors; ...@@ -35,6 +40,10 @@ import java.util.stream.Collectors;
@Service @Service
public class AcceptanceServiceImpl implements IAcceptanceService { public class AcceptanceServiceImpl implements IAcceptanceService {
// @Autowired
// WorkflowImpl workflow;
@Autowired
WorkFlowService workFlowService;
@Autowired @Autowired
private AcceptanceMapper acceptanceMapper; private AcceptanceMapper acceptanceMapper;
@Autowired @Autowired
...@@ -44,7 +53,8 @@ public class AcceptanceServiceImpl implements IAcceptanceService { ...@@ -44,7 +53,8 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
@Autowired @Autowired
private AcceptanceCheckItemMapper acceptanceCheckItemMapper; private AcceptanceCheckItemMapper acceptanceCheckItemMapper;
@Autowired @Autowired
WorkflowImpl workflow; private CommonServiceImpl commonService;
@Resource(type = RedisLockUtil.class) @Resource(type = RedisLockUtil.class)
private RedisLockUtil redisLockUtil; private RedisLockUtil redisLockUtil;
...@@ -56,7 +66,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService { ...@@ -56,7 +66,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
* @return 分页结果 * @return 分页结果
*/ */
@Override @Override
public Page<AcceptanceDto> page(Integer current, Integer size, AcceptanceDto acceptanceDto) { public Page<AcceptanceDto> page(Integer current, Integer size, AcceptanceDto acceptanceDto) {
if (Objects.nonNull(acceptanceDto)) { if (Objects.nonNull(acceptanceDto)) {
// 处理提交日期 // 处理提交日期
...@@ -70,7 +80,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService { ...@@ -70,7 +80,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
} }
} }
PageHelper.startPage(current, size); PageHelper.startPage(current, size);
List<AcceptanceDto> resultPage = acceptanceMapper.page(acceptanceDto); List<AcceptanceDto> resultPage = acceptanceMapper.page(acceptanceDto);
PageInfo<AcceptanceDto> page = new PageInfo(resultPage); PageInfo<AcceptanceDto> page = new PageInfo(resultPage);
Page<AcceptanceDto> pagenew = new Page<AcceptanceDto>(); Page<AcceptanceDto> pagenew = new Page<AcceptanceDto>();
...@@ -105,7 +115,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService { ...@@ -105,7 +115,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
} }
@Override @Override
public AcceptanceCheckItem saveEntity(AcceptanceCheckItem item, Long sequenceNbr) { public AcceptanceCheckItem saveEntity(AcceptanceCheckItem item, Long sequenceNbr) {
BasicGridAcceptance acceptance = basicGridAcceptanceMapper.selectById(sequenceNbr); BasicGridAcceptance acceptance = basicGridAcceptanceMapper.selectById(sequenceNbr);
Assert.notNull(acceptance, "未查询到相关电站信息!"); Assert.notNull(acceptance, "未查询到相关电站信息!");
item.setWorkOrderId(acceptance.getWorkOrderId()); item.setWorkOrderId(acceptance.getWorkOrderId());
...@@ -114,6 +124,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService { ...@@ -114,6 +124,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
acceptanceCheckItemMapper.insert(item); acceptanceCheckItemMapper.insert(item);
return Optional.ofNullable(item).orElse(new AcceptanceCheckItem()); return Optional.ofNullable(item).orElse(new AcceptanceCheckItem());
} }
@Override @Override
@Transactional @Transactional
public void checkAccept(Long basicGridAcceptanceId, String userId) { public void checkAccept(Long basicGridAcceptanceId, String userId) {
...@@ -130,9 +141,17 @@ public class AcceptanceServiceImpl implements IAcceptanceService { ...@@ -130,9 +141,17 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
basicGridAcceptanc.setAcceptanceStatus(AcceptanceStatusEnum.待投融验收.getCode()); basicGridAcceptanc.setAcceptanceStatus(AcceptanceStatusEnum.待投融验收.getCode());
basicGridAcceptanc.setAcceptanceRecDate(new Date()); basicGridAcceptanc.setAcceptanceRecDate(new Date());
//执行工作流 //执行工作流
StandardDto standardDto = new StandardDto(); // StandardDto standardDto=new StandardDto();
standardDto.setTaskId(basicGridAcceptanc.getNextTaskId()); // standardDto.setTaskId(basicGridAcceptanc.getNextTaskId());
workflow.standard(basicGridAcceptanc, standardDto, userId); // workflow.standard(basicGridAcceptanc,standardDto,userId);
//执行工作流
TaskResultDTO taskResultDTO = new TaskResultDTO();
taskResultDTO.setTaskId(basicGridAcceptanc.getNextTaskId());
ProcessTaskDTO processTaskDTO = workFlowService.standard(basicGridAcceptanc, taskResultDTO, userId);
//发起待办
WorkflowResultDto workflowResultDto = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO)).get(0);
workflowResultDto.setInstanceId(basicGridAcceptanc.getInstanceId());
updateAcceptanceTask(basicGridAcceptanc, workflowResultDto);
basicGridAcceptanceMapper.updateById(basicGridAcceptanc); basicGridAcceptanceMapper.updateById(basicGridAcceptanc);
//线上验收 //线上验收
...@@ -146,5 +165,17 @@ public class AcceptanceServiceImpl implements IAcceptanceService { ...@@ -146,5 +165,17 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
} }
} }
private void updateAcceptanceTask(BasicGridAcceptance basicGridAcceptance, WorkflowResultDto workflowResultDto) {
Map<String, Object> updateTaskParam = new HashMap<>();
updateTaskParam.put("flowStatus", FlowStatusEnum.TO_BE_FINISHED.getCode());
updateTaskParam.put("flowStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
updateTaskParam.put("taskStatus", FlowStatusEnum.TO_BE_FINISHED.getCode());
updateTaskParam.put("taskStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
updateTaskParam.put("model", basicGridAcceptance);
updateTaskParam.put("relationId", workflowResultDto.getInstanceId());
commonService.updateTaskModel(updateTaskParam);
commonService.buildTaskModel((commonService.buildTaskModelDto(basicGridAcceptance, workflowResultDto, BusinessTypeEnum.HYGF_BWYS)));
}
} }
...@@ -65,8 +65,8 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina ...@@ -65,8 +65,8 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
private WorkFlowService workFlowService; private WorkFlowService workFlowService;
@Autowired @Autowired
private PeasantHouseholdServiceImpl peasantHouseholdService; private PeasantHouseholdServiceImpl peasantHouseholdService;
@Autowired // @Autowired
private WorkflowImpl workflow; // private WorkflowImpl workflow;
@Autowired @Autowired
private FinancingAuditingServiceImpl financingAuditingService; private FinancingAuditingServiceImpl financingAuditingService;
@Autowired @Autowired
...@@ -207,6 +207,11 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina ...@@ -207,6 +207,11 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
financingAuditingDto.setPeasantHouseholdId(Long.valueOf(e)); financingAuditingDto.setPeasantHouseholdId(Long.valueOf(e));
financingAuditingDto.setPromoter(RequestContext.getExeUserId()); financingAuditingDto.setPromoter(RequestContext.getExeUserId());
financingAuditingService.createWithModel(financingAuditingDto); financingAuditingService.createWithModel(financingAuditingDto);
//发起待办
FinancingInfo newFinancingInfo = new FinancingInfo();
BeanUtils.copyProperties(model, newFinancingInfo);
newFinancingInfo.setStatus(FinancingAuditEnum.待融资审核.getName());
commonService.buildTaskModel(commonService.buildTaskModelDto(newFinancingInfo, workflowResultDto, BusinessTypeEnum.HYGF_DZTRRZ));
} }
//批量 兼容审核不通过及整改待推送 //批量 兼容审核不通过及整改待推送
else if (financingInfos.getStatus().equals(FinancingAuditEnum.审核不通过.getName()) || financingInfos.getStatus().equals("待推送") ){ else if (financingInfos.getStatus().equals(FinancingAuditEnum.审核不通过.getName()) || financingInfos.getStatus().equals("待推送") ){
...@@ -229,8 +234,6 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina ...@@ -229,8 +234,6 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
map.put("instanceId",financingInfos1.getInstanceId()); map.put("instanceId",financingInfos1.getInstanceId());
this.execueFlow(map); this.execueFlow(map);
} }
//发起待办
// commonService.buildTaskModel(buildDZTRZTaskModel(model, workflowResultDto, date));
}); });
}finally { }finally {
redisLockUtil.releaseLock(lockName); redisLockUtil.releaseLock(lockName);
...@@ -238,37 +241,6 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina ...@@ -238,37 +241,6 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
return model; return model;
} }
private List<TaskModelDto> buildDZTRZTaskModel(FinancingInfoDto model, WorkflowResultDto workflowResultDto, Date startDate) {
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
List<TaskModelDto> taskModelDtoList = new ArrayList<>();
TaskModelDto taskModelDto = new TaskModelDto();
taskModelDto.setFlowCode(workflowResultDto.getNextTaskId());
taskModelDto.setFlowCreateDate(new Date());
taskModelDto.setFlowStatus(FlowStatusEnum.TO_BE_PROCESSED.getCode());
taskModelDto.setFlowStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
taskModelDto.setPageType(null);
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecuteUserIds());
taskModelDto.setModel(model);
taskModelDto.setRelationId(workflowResultDto.getInstanceId());
taskModelDto.setRoutePath(null);
taskModelDto.setStartUserId(reginParams.getUserModel().getUserId());
taskModelDto.setStartUser(reginParams.getUserModel().getUserName());
taskModelDto.setStartDate(startDate);
taskModelDto.setStartUserCompanyName(null);
taskModelDto.setTaskName(workflowResultDto.getNextNodeName());
taskModelDto.setTaskCode(workflowResultDto.getNextNodeCode());
taskModelDto.setTaskType(BusinessTypeEnum.HYGF_DZTRRZ.getCode());
taskModelDto.setTaskTypeLabel(BusinessTypeEnum.HYGF_DZTRRZ.getName());
taskModelDto.setTaskStatus(TaskStatusEnum.UNDERWAY.getValue());
taskModelDto.setTaskStatusLabel(TaskStatusEnum.UNDERWAY.getName());
// taskModelDto.setTaskDesc();
// taskModelDto.setTaskContent();
taskModelDto.setNextExecuteUser(workflowResultDto.getNextExecutorIds());
taskModelDtoList.add(taskModelDto);
return taskModelDtoList;
}
@Override @Override
public void rollback(String processId, String peasantHouseholdId) { public void rollback(String processId, String peasantHouseholdId) {
workFlowService.stopProcess(processId); workFlowService.stopProcess(processId);
...@@ -289,6 +261,8 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina ...@@ -289,6 +261,8 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
this.deleteBySeq(financingInfo.getSequenceNbr()); this.deleteBySeq(financingInfo.getSequenceNbr());
} }
//停止流程
commonService.deleteTaskModel(processId);
} }
@Override @Override
...@@ -365,7 +339,9 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina ...@@ -365,7 +339,9 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
} }
this.updateById(financingInfo); this.updateById(financingInfo);
//更新待办
workflowResultDto.setInstanceId(financingAuditing.getInstanceId());
commonService.updateTaskModelAndAddTask(financingInfo,workflowResultDto,BusinessTypeEnum.HYGF_DZTRRZ);
//节点为待整改时生成整改单 //节点为待整改时生成整改单
if (params.containsKey("isFlag") && params.get("isFlag").equals("1") && workflowResultDto.getNextNodeKey().equals(FinancingAuditEnum.待整改.getCode())) { if (params.containsKey("isFlag") && params.get("isFlag").equals("1") && workflowResultDto.getNextNodeKey().equals(FinancingAuditEnum.待整改.getCode())) {
if (params.containsKey("isHistory")){ if (params.containsKey("isHistory")){
...@@ -404,7 +380,6 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina ...@@ -404,7 +380,6 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
// financingRectificationOrderService.save(financingRectificationOrder); // financingRectificationOrderService.save(financingRectificationOrder);
} }
} }
public List<Map<String, Object>> selectOrgList() { public List<Map<String, Object>> selectOrgList() {
......
...@@ -21,6 +21,8 @@ import com.yeejoin.amos.boot.module.hygf.biz.feign.WorkflowFeignClient; ...@@ -21,6 +21,8 @@ import com.yeejoin.amos.boot.module.hygf.biz.feign.WorkflowFeignClient;
import com.yeejoin.amos.component.feign.model.FeignClientResult; import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.component.robot.AmosRequestContext; import com.yeejoin.amos.component.robot.AmosRequestContext;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.workflow.model.ProcessTaskDTO;
import com.yeejoin.amos.feign.workflow.model.TaskResultDTO;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang.StringUtils; import org.apache.commons.lang.StringUtils;
import org.apache.commons.lang3.BooleanUtils; import org.apache.commons.lang3.BooleanUtils;
...@@ -85,8 +87,12 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS ...@@ -85,8 +87,12 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS
PowerStationMapper powerStationMapper; PowerStationMapper powerStationMapper;
@Autowired @Autowired
AmosRequestContext requestContext; AmosRequestContext requestContext;
// @Autowired
// WorkflowImpl workflow;
@Autowired @Autowired
WorkflowImpl workflow; WorkFlowService workFlowService;
@Autowired
CommonServiceImpl commonService;
@Autowired @Autowired
HouseholdContractMapper householdContractMapper; HouseholdContractMapper householdContractMapper;
@Resource (type = RedisLockUtil.class) @Resource (type = RedisLockUtil.class)
...@@ -354,45 +360,72 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS ...@@ -354,45 +360,72 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS
// //
// } // }
// 执行工作流 // 执行工作流
BasicGridAcceptance basicGridAcceptance = new BasicGridAcceptance(); BasicGridAcceptance basicGridAcceptance = new BasicGridAcceptance();
StandardDto standardDto = new StandardDto(); // StandardDto standardDto = new StandardDto();
if (PowerStationNodeEnum.设计上传图纸.getCode().equals(nodeCode) // if (PowerStationNodeEnum.设计上传图纸.getCode().equals(nodeCode)
|| PowerStationNodeEnum.经销商上传图纸.getCode().equals(nodeCode)) { // || PowerStationNodeEnum.经销商上传图纸.getCode().equals(nodeCode)) {
//
standardDto.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : ""); // standardDto.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
standardDto.setResult("0"); // standardDto.setResult("0");
standardDto.setTaskId(powerStation.getFlowTaskId()); // standardDto.setTaskId(powerStation.getFlowTaskId());
VariableDto variable = new VariableDto(); // VariableDto variable = new VariableDto();
variable.setApprovalStatus("0"); // variable.setApprovalStatus("0");
variable.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : ""); // variable.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
variable.setOperationTime(String.valueOf(kv.get("approveDate"))); // variable.setOperationTime(String.valueOf(kv.get("approveDate")));
variable.setOperator(""); // variable.setOperator("");
standardDto.setVariable(variable); // standardDto.setVariable(variable);
} else { // } else {
standardDto.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : ""); // standardDto.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
standardDto.setResult(String.valueOf(kv.get("approvalStatus"))); // standardDto.setResult(String.valueOf(kv.get("approvalStatus")));
standardDto.setTaskId(powerStation.getFlowTaskId()); // standardDto.setTaskId(powerStation.getFlowTaskId());
VariableDto variable = new VariableDto(); // VariableDto variable = new VariableDto();
variable.setApprovalStatus(String.valueOf(kv.get("approvalStatus"))); // variable.setApprovalStatus(String.valueOf(kv.get("approvalStatus")));
variable.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : ""); // variable.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
variable.setOperationTime(String.valueOf(kv.get("approveDate"))); // variable.setOperationTime(String.valueOf(kv.get("approveDate")));
variable.setOperator(String.valueOf(kv.get("approveName"))); // variable.setOperator(String.valueOf(kv.get("approveName")));
standardDto.setVariable(variable); // standardDto.setVariable(variable);
} // }
// BasicGridAcceptance workBasicGridAcceptance = workflow.standard(basicGridAcceptance, standardDto,
BasicGridAcceptance workBasicGridAcceptance = workflow.standard(basicGridAcceptance, standardDto, // requestContext.getUserId());
requestContext.getUserId()); TaskResultDTO taskResultDTO = new TaskResultDTO();
powerStation.setFlowTaskId(basicGridAcceptance.getNextTaskId()); if (PowerStationNodeEnum.设计上传图纸.getCode().equals(nodeCode)
powerStation.setNodeRole(basicGridAcceptance.getNextExecutorIds()); || PowerStationNodeEnum.经销商上传图纸.getCode().equals(nodeCode)) {
powerStation.setNodeRouting(basicGridAcceptance.getNextNodeKey() != null taskResultDTO.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
? PowerStationEnum.getNodeByKey(basicGridAcceptance.getNextNodeKey()) taskResultDTO.setResult("0");
: ""); taskResultDTO.setTaskId(powerStation.getFlowTaskId());
powerStation.setNextProcessNode(basicGridAcceptance.getNextNodeKey()); HashMap<String, Object> variableMap = new HashMap<>();
powerStation.setPromoter(basicGridAcceptance.getPromoter()); variableMap.put("approvalStatus", "0");
powerStation.setNextExecuteUserIds(basicGridAcceptance.getNextExecuteUserIds()); variableMap.put("comment", kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
powerStation.setNextNodeName(basicGridAcceptance.getNextNodeName()); variableMap.put("operationTime", String.valueOf(kv.get("approveDate")));
variableMap.put("operator", "");
taskResultDTO.setVariable(variableMap);
} else {
taskResultDTO.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
taskResultDTO.setResult(String.valueOf(kv.get("approvalStatus")));
taskResultDTO.setTaskId(powerStation.getFlowTaskId());
HashMap<String, Object> variableMap = new HashMap<>();
variableMap.put("approvalStatus", String.valueOf(kv.get("approvalStatus")));
variableMap.put("comment", kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
variableMap.put("operationTime", String.valueOf(kv.get("approveDate")));
variableMap.put("operator", String.valueOf(kv.get("approveName")));
taskResultDTO.setVariable(variableMap);
}
ProcessTaskDTO processTaskDTO = workFlowService.standard(basicGridAcceptance, taskResultDTO, requestContext.getUserId());
powerStation.setFlowTaskId(basicGridAcceptance.getNextTaskId());
powerStation.setNodeRole(basicGridAcceptance.getNextExecutorIds());
powerStation.setNodeRouting(basicGridAcceptance.getNextNodeKey() != null
? PowerStationEnum.getNodeByKey(basicGridAcceptance.getNextNodeKey())
: "");
powerStation.setNextProcessNode(basicGridAcceptance.getNextNodeKey());
powerStation.setPromoter(basicGridAcceptance.getPromoter());
powerStation.setNextExecuteUserIds(basicGridAcceptance.getNextExecuteUserIds());
powerStation.setNextNodeName(basicGridAcceptance.getNextNodeName());
//更新待办
WorkflowResultDto workflowResultDto = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO)).get(0);
workflowResultDto.setInstanceId(powerStation.getProcessInstanceId());
updatePowerStationTask(powerStation, workflowResultDto);
powerStationService.savePowerStation(powerStation, flag, powerStation.getOwnersName(), meg); powerStationService.savePowerStation(powerStation, flag, powerStation.getOwnersName(), meg);
if (!flag) { if (!flag) {
// 更新农户状态 // 更新农户状态
...@@ -501,7 +534,20 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS ...@@ -501,7 +534,20 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS
// return code; // return code;
} }
public WorkDto getNodeInfoCode(String flowTaskId) { private void updatePowerStationTask(PowerStation powerStation, WorkflowResultDto workflowResultDto) {
Map<String, Object> updateTaskParam = new HashMap<>();
updateTaskParam.put("flowStatus", FlowStatusEnum.TO_BE_FINISHED.getCode());
updateTaskParam.put("flowStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
updateTaskParam.put("taskStatus", FlowStatusEnum.TO_BE_FINISHED.getCode());
updateTaskParam.put("taskStatusLabel", FlowStatusEnum.TO_BE_FINISHED.getName());
updateTaskParam.put("model", powerStation);
updateTaskParam.put("relationId", workflowResultDto.getInstanceId());
commonService.updateTaskModel(updateTaskParam);
commonService.buildTaskModel((commonService.buildTaskModelDto(powerStation, workflowResultDto, BusinessTypeEnum.HYGF_DZ_SH)));
}
public WorkDto getNodeInfoCode(String flowTaskId) {
WorkDto workDto = null; WorkDto workDto = null;
FeignClientResult<JSONObject> jSONObject = workflowFeignClient.getNodeInfo(flowTaskId); FeignClientResult<JSONObject> jSONObject = workflowFeignClient.getNodeInfo(flowTaskId);
if (IDX_REQUEST_STATE.equals(String.valueOf(jSONObject.getStatus()))) { if (IDX_REQUEST_STATE.equals(String.valueOf(jSONObject.getStatus()))) {
......
...@@ -99,9 +99,11 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -99,9 +99,11 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
private HygfReplenishmentMapper hygfReplenishmentMapper; private HygfReplenishmentMapper hygfReplenishmentMapper;
@Autowired @Autowired
private WorkflowFeignClient workflowFeignClient; private WorkflowFeignClient workflowFeignClient;
@Autowired
private CommonServiceImpl commonService;
private static final String regionRedis = "app_region_redis"; private static final String regionRedis = "app_region_redis";
private static final String PROCESSKEY = "DeliveryManagement"; // private static final String PROCESSKEY = "DeliveryManagement";
/** /**
* 分页查询 * 分页查询
...@@ -654,7 +656,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -654,7 +656,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO(); ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> params = new ArrayList<>(); List<ActWorkflowStartDTO> params = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO(); ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey(PROCESSKEY); dto.setProcessDefinitionKey(BusinessTypeEnum.HYGF_FHGL.getCode());
dto.setBusinessKey(String.valueOf(new Date().getTime())); dto.setBusinessKey(String.valueOf(new Date().getTime()));
dto.setCompleteFirstTask(true); dto.setCompleteFirstTask(true);
HashMap<String, Object> map = new HashMap<>(); HashMap<String, Object> map = new HashMap<>();
...@@ -664,7 +666,8 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -664,7 +666,8 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
actWorkflowBatchDTO.setProcess(params); actWorkflowBatchDTO.setProcess(params);
List<ProcessTaskDTO> processTaskDTOS = workFlowService.startBatch(actWorkflowBatchDTO); List<ProcessTaskDTO> processTaskDTOS = workFlowService.startBatch(actWorkflowBatchDTO);
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(processTaskDTOS); List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(processTaskDTOS);
//发起待办
commonService.buildTaskModel(commonService.buildTaskModelDto(model, workflowResultDtos.get(0), BusinessTypeEnum.HYGF_FHGL));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0); WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
HygfPreparationMoneyAuditingDto hygfPreparationMoneyAuditingDto = new HygfPreparationMoneyAuditingDto(); HygfPreparationMoneyAuditingDto hygfPreparationMoneyAuditingDto = new HygfPreparationMoneyAuditingDto();
BeanUtils.copyProperties(workflowResultDto, hygfPreparationMoneyAuditingDto); BeanUtils.copyProperties(workflowResultDto, hygfPreparationMoneyAuditingDto);
...@@ -748,7 +751,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -748,7 +751,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO(); ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> params = new ArrayList<>(); List<ActWorkflowStartDTO> params = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO(); ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey(PROCESSKEY); dto.setProcessDefinitionKey(BusinessTypeEnum.HYGF_FHGL.getCode());
dto.setBusinessKey(String.valueOf(new Date().getTime())); dto.setBusinessKey(String.valueOf(new Date().getTime()));
dto.setCompleteFirstTask(true); dto.setCompleteFirstTask(true);
HashMap<String, Object> map = new HashMap<>(); HashMap<String, Object> map = new HashMap<>();
...@@ -758,7 +761,8 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -758,7 +761,8 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
actWorkflowBatchDTO.setProcess(params); actWorkflowBatchDTO.setProcess(params);
List<ProcessTaskDTO> processTaskDTOS = workFlowService.startBatch(actWorkflowBatchDTO); List<ProcessTaskDTO> processTaskDTOS = workFlowService.startBatch(actWorkflowBatchDTO);
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(processTaskDTOS); List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(processTaskDTOS);
//发起待办
commonService.buildTaskModel(commonService.buildTaskModelDto(model, workflowResultDtos.get(0), BusinessTypeEnum.HYGF_FHGL));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0); WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
HygfPreparationMoneyAuditingDto hygfPreparationMoneyAuditingDto = new HygfPreparationMoneyAuditingDto(); HygfPreparationMoneyAuditingDto hygfPreparationMoneyAuditingDto = new HygfPreparationMoneyAuditingDto();
BeanUtils.copyProperties(workflowResultDto, hygfPreparationMoneyAuditingDto); BeanUtils.copyProperties(workflowResultDto, hygfPreparationMoneyAuditingDto);
...@@ -967,7 +971,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -967,7 +971,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
preparationMoneyMapper.updateById(model); preparationMoneyMapper.updateById(model);
//执行工作流并保存记录 上传收货走入下一节点 表达式=0 //执行工作流并保存记录 上传收货走入下一节点 表达式=0
this.wofkflowExcute(instanceId, "0",""); this.wofkflowExcute(instanceId, "0","",model);
} }
} }
...@@ -1010,11 +1014,11 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -1010,11 +1014,11 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
preparationMoneyMapper.updateById(model); preparationMoneyMapper.updateById(model);
//执行工作流并保存记录 //执行工作流并保存记录
this.wofkflowExcute(instanceId, kv.getOrDefault("approvalStatus", "").toString(),kv.getOrDefault("approvalStatus","").toString()); this.wofkflowExcute(instanceId, kv.getOrDefault("approvalStatus", "").toString(),kv.getOrDefault("approvalStatus","").toString(),model);
} }
public void wofkflowExcute(String instanceId, String approvalStatus,String comment) { public void wofkflowExcute(String instanceId, String approvalStatus,String comment,Object model) {
LambdaQueryWrapper<HygfPreparationMoneyAuditing> query = new LambdaQueryWrapper<>(); LambdaQueryWrapper<HygfPreparationMoneyAuditing> query = new LambdaQueryWrapper<>();
query.eq(HygfPreparationMoneyAuditing::getInstanceId, instanceId); query.eq(HygfPreparationMoneyAuditing::getInstanceId, instanceId);
query.orderByDesc(BaseEntity::getRecDate); query.orderByDesc(BaseEntity::getRecDate);
...@@ -1035,6 +1039,9 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -1035,6 +1039,9 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
ProcessTaskDTO processTaskDTO = workFlowService.complete(hygfPreparationMoneyAuditing.getNextTaskId(), task); ProcessTaskDTO processTaskDTO = workFlowService.complete(hygfPreparationMoneyAuditing.getNextTaskId(), task);
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO)); List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0); WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
//更新待办
workflowResultDto.setInstanceId(instanceId);
commonService.updateTaskModelAndAddTask(model,workflowResultDto,BusinessTypeEnum.HYGF_FHGL);
BeanUtils.copyProperties(workflowResultDto, preparationMoneyAuditpDto); BeanUtils.copyProperties(workflowResultDto, preparationMoneyAuditpDto);
preparationMoneyAuditpDto.setPreparationMoneyId(hygfPreparationMoneyAuditing.getPreparationMoneyId()); preparationMoneyAuditpDto.setPreparationMoneyId(hygfPreparationMoneyAuditing.getPreparationMoneyId());
preparationMoneyAuditpDto.setPromoter(hygfPreparationMoneyAuditing.getPromoter()); preparationMoneyAuditpDto.setPromoter(hygfPreparationMoneyAuditing.getPromoter());
...@@ -1055,7 +1062,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -1055,7 +1062,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
PreparationMoney preparationMoney = preparationMoneyMapper.selectById(preparationMoneyId); PreparationMoney preparationMoney = preparationMoneyMapper.selectById(preparationMoneyId);
preparationMoney.setOrderStatus("申请补货"); preparationMoney.setOrderStatus("申请补货");
preparationMoneyMapper.updateById(preparationMoney); preparationMoneyMapper.updateById(preparationMoney);
this.wofkflowExcute(auditing.getInstanceId(), "1",""); this.wofkflowExcute(auditing.getInstanceId(), "1","",preparationMoney);
} }
...@@ -1077,6 +1084,10 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -1077,6 +1084,10 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
ProcessTaskDTO processTaskDTO = workFlowService.rollBackTask(hygfPreparationMoneyAuditing.getInstanceId()); ProcessTaskDTO processTaskDTO = workFlowService.rollBackTask(hygfPreparationMoneyAuditing.getInstanceId());
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO)); List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0); WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
workflowResultDto.setInstanceId(hygfPreparationMoneyAuditing.getInstanceId());
//更新待办
workflowResultDto.setInstanceId(preparationMoney.getInstanceId());
commonService.updateTaskModelAndAddTask(preparationMoney,workflowResultDto,BusinessTypeEnum.HYGF_FHGL);
HygfPreparationMoneyAuditingDto preparationMoneyAuditpDto = new HygfPreparationMoneyAuditingDto(); HygfPreparationMoneyAuditingDto preparationMoneyAuditpDto = new HygfPreparationMoneyAuditingDto();
BeanUtils.copyProperties(workflowResultDto, preparationMoneyAuditpDto); BeanUtils.copyProperties(workflowResultDto, preparationMoneyAuditpDto);
preparationMoneyAuditpDto.setPreparationMoneyId(sequenceNbr); preparationMoneyAuditpDto.setPreparationMoneyId(sequenceNbr);
...@@ -1118,7 +1129,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -1118,7 +1129,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
preparationMoney.setOrderStatus(DeliveryStateeEnum.待确认.getName()); preparationMoney.setOrderStatus(DeliveryStateeEnum.待确认.getName());
} }
preparationMoneyMapper.updateById(preparationMoney); preparationMoneyMapper.updateById(preparationMoney);
this.wofkflowExcute(kv.get("instanceId").toString(), kv.get("approvalStatus").toString(),kv.getOrDefault("approveInfo","").toString()); this.wofkflowExcute(kv.get("instanceId").toString(), kv.get("approvalStatus").toString(),kv.getOrDefault("comment","").toString(),preparationMoney);
} }
public PreparationMoney submitOrder(PreparationMoney model, String instanceId, String isSubmit){ public PreparationMoney submitOrder(PreparationMoney model, String instanceId, String isSubmit){
...@@ -1145,7 +1156,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto ...@@ -1145,7 +1156,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
model.setDeliveryTime(new Date()); model.setDeliveryTime(new Date());
preparationMoneyMapper.updateById(model); preparationMoneyMapper.updateById(model);
this.wofkflowExcute(instanceId,isSubmit,""); this.wofkflowExcute(instanceId,isSubmit,"",model);
} }
List<DocumentStation> ids = model.getPeasantHouseholdId(); List<DocumentStation> ids = model.getPeasantHouseholdId();
......
...@@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; ...@@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper; import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity; import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils; import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.module.hygf.api.Enum.BusinessTypeEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.FlowStatusEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.WorkOrderEnum; import com.yeejoin.amos.boot.module.hygf.api.Enum.WorkOrderEnum;
import com.yeejoin.amos.boot.module.hygf.api.dto.HygfWorkOrderStationAuditingDto; import com.yeejoin.amos.boot.module.hygf.api.dto.HygfWorkOrderStationAuditingDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto; import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto;
...@@ -42,6 +44,8 @@ public class RectificationOrderAuditingServiceImpl extends BaseService<Rectifica ...@@ -42,6 +44,8 @@ public class RectificationOrderAuditingServiceImpl extends BaseService<Rectifica
@Autowired @Autowired
private WorkFlowService workFlowService; private WorkFlowService workFlowService;
@Autowired
CommonServiceImpl commonService;
private static final String PROCESSKEY = "RectificationAudit"; private static final String PROCESSKEY = "RectificationAudit";
...@@ -89,6 +93,8 @@ public class RectificationOrderAuditingServiceImpl extends BaseService<Rectifica ...@@ -89,6 +93,8 @@ public class RectificationOrderAuditingServiceImpl extends BaseService<Rectifica
rectificationOrderAuditingDto.setRectificationOrder(hygfRectificationOrder.getSequenceNbr()); rectificationOrderAuditingDto.setRectificationOrder(hygfRectificationOrder.getSequenceNbr());
rectificationOrderAuditingDto.setPromoter(RequestContext.getExeUserId()); rectificationOrderAuditingDto.setPromoter(RequestContext.getExeUserId());
this.createWithModel(rectificationOrderAuditingDto); this.createWithModel(rectificationOrderAuditingDto);
//发起待办
commonService.buildTaskModel(commonService.buildTaskModelDto(rectificationOrderAuditingDto, workflowResultDto, BusinessTypeEnum.HYGF_ZGDSHLC));
} }
} }
...@@ -123,6 +129,9 @@ public class RectificationOrderAuditingServiceImpl extends BaseService<Rectifica ...@@ -123,6 +129,9 @@ public class RectificationOrderAuditingServiceImpl extends BaseService<Rectifica
rectificationOrderAuditingDto.setInstanceId(rectificationOrderAuditing.getInstanceId()); rectificationOrderAuditingDto.setInstanceId(rectificationOrderAuditing.getInstanceId());
} }
this.createWithModel(rectificationOrderAuditingDto); this.createWithModel(rectificationOrderAuditingDto);
//更新待办
workflowResultDto.setInstanceId(rectificationOrderAuditing.getInstanceId());
commonService.updateTaskModelAndAddTask(rectificationOrderAuditing,workflowResultDto,BusinessTypeEnum.HYGF_ZGDSHLC);
} }
......
...@@ -2,10 +2,10 @@ package com.yeejoin.amos.boot.module.hygf.biz.service.impl; ...@@ -2,10 +2,10 @@ package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto; import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.BasicGridAcceptance;
import com.yeejoin.amos.boot.module.hygf.biz.feign.WorkFlowFeignService; import com.yeejoin.amos.boot.module.hygf.biz.feign.WorkFlowFeignService;
import com.yeejoin.amos.component.feign.utils.FeignUtil;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel; import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.workflow.Workflow; import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import com.yeejoin.amos.feign.workflow.model.*; import com.yeejoin.amos.feign.workflow.model.*;
import lombok.extern.slf4j.Slf4j; import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
...@@ -13,7 +13,9 @@ import org.springframework.stereotype.Service; ...@@ -13,7 +13,9 @@ import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils; import org.springframework.util.CollectionUtils;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Date;
import java.util.List; import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -39,6 +41,21 @@ public class WorkFlowService { ...@@ -39,6 +41,21 @@ public class WorkFlowService {
return processTasks; return processTasks;
} }
/***
* 开启并执行一步 支持批量
*
* */
public List<ProcessTaskDTO> startBatchNew(String appKey, String product, String token, ActWorkflowBatchDTO params) {
List<ProcessTaskDTO> processTasks;
try {
log.info("开始前请求工作流启动接口:/start/batch,appKey:{},product:{},token:{}请求请求参数:{}", appKey, product, token, JSONObject.toJSONString(params));
processTasks = workFlowFeignService.startForBatchNew(appKey, product, token, params).getResult();
} catch (Exception e) {
log.error("调用工作流批量启动失败", e);
throw new RuntimeException("调用工作流批量启动失败");
}
return processTasks;
}
public ProcessInstanceDTO stopProcess(String processInstanceId) { public ProcessInstanceDTO stopProcess(String processInstanceId) {
ProcessInstanceDTO processInstanceDTO ; ProcessInstanceDTO processInstanceDTO ;
...@@ -53,6 +70,18 @@ public class WorkFlowService { ...@@ -53,6 +70,18 @@ public class WorkFlowService {
} }
public ProcessTaskDTO standard(BasicGridAcceptance basicGridAcceptance, TaskResultDTO taskResultDTO, String userid) {
ProcessTaskDTO processTaskDTO;
if (taskResultDTO.getResult() != null) {
taskResultDTO.setResultCode("approvalStatus");
processTaskDTO = complete(taskResultDTO.getTaskId(), taskResultDTO);
} else {
processTaskDTO = complete(taskResultDTO.getTaskId(), taskResultDTO);
}
this.getBasicGridAcceptanceone(basicGridAcceptance, processTaskDTO, userid);
return processTaskDTO;
}
/*** /***
* 执行 * 执行
* *
...@@ -108,6 +137,15 @@ public class WorkFlowService { ...@@ -108,6 +137,15 @@ public class WorkFlowService {
String nextUserIdsString = String.join(",", nextUserIds); String nextUserIdsString = String.join(",", nextUserIds);
workflowResultDto.setNextExecuteUserIds(nextUserIdsString); workflowResultDto.setNextExecuteUserIds(nextUserIdsString);
} }
if (!Objects.isNull(item.getStartUser())) {
workflowResultDto.setStartDate(new Date());
workflowResultDto.setStartUserId(item.getStartUser().getUserId());
workflowResultDto.setStartUser(item.getStartUser().getUserName());
List<CompanyModel> companys = item.getStartUser().getCompanys();
if (!CollectionUtils.isEmpty(companys) && companys.size() >= 1) {
workflowResultDto.setStartUserCompanyName(companys.get(0).getCompanyName());
}
}
workflowResultDtoList.add(workflowResultDto); workflowResultDtoList.add(workflowResultDto);
}); });
return workflowResultDtoList; return workflowResultDtoList;
...@@ -142,4 +180,108 @@ public class WorkFlowService { ...@@ -142,4 +180,108 @@ public class WorkFlowService {
}); });
return workflowResultDtoList; return workflowResultDtoList;
} }
public BasicGridAcceptance getBasicGridAcceptance(BasicGridAcceptance basicGridAcceptance, List<ProcessTaskDTO> processTaskDTOList, String userid) {
ProcessTaskDTO listco = processTaskDTOList.isEmpty() ? null : processTaskDTOList.get(0);
if (listco != null) {
// 当前节点执行任务id
basicGridAcceptance.setPromoter(userid);
//流程实例
basicGridAcceptance.setInstanceId(listco.getProcessInstance().getId());
// 流程下一节点id
if (listco.getNextTask() != null && !listco.getNextTask().isEmpty()) {
basicGridAcceptance.setNextTaskId(listco.getNextTask().get(0).getId());
//下个节点名称
basicGridAcceptance.setNextNodeName(listco.getNextTask().get(0).getName());
//下个节点key
basicGridAcceptance.setNextNodeKey(listco.getNextTask().get(0).getKey());
}
/// 下一个节点角色权限
if (listco.getNextCandidateGroups() != null) {
List<String> ld = listco.getNextCandidateGroups().get(basicGridAcceptance.getNextTaskId());
StringBuffer sbf = new StringBuffer();
for (int i = 0; i <= ld.size() - 1; i++) {
if (i < ld.size() - 1) {
sbf.append(ld.get(i) + ",");
} else {
sbf.append(ld.get(i));
}
}
basicGridAcceptance.setNextExecutorIds(sbf.toString());
}
//下一节点可执行人逗号分割 0 0
if (listco.getNextTaskExecutor() != null) {
List<AgencyUserModel> li = listco.getNextTaskExecutor().get(basicGridAcceptance.getNextTaskId());
if (li != null && !li.isEmpty()) {
StringBuffer sbf = new StringBuffer();
for (int i = 0; i <= li.size() - 1; i++) {
if (i < li.size() - 1) {
sbf.append(li.get(i).getUserId() + ",");
} else {
sbf.append(li.get(i).getUserId());
}
}
basicGridAcceptance.setNextExecuteUserIds(sbf.toString());
}
}
//工作流发起人id
basicGridAcceptance.setCreateUserId(listco.getStartUser().getUserId());
} else {
throw new RuntimeException("工作流异常");
}
return basicGridAcceptance;
}
public void getBasicGridAcceptanceone(BasicGridAcceptance basicGridAcceptance, ProcessTaskDTO processTaskDTO, String userid) {
if (processTaskDTO != null) {
// 当前节点执行任务id
basicGridAcceptance.setPromoter(userid);
// 流程下一节点id
if (processTaskDTO.getNextTask() != null && !processTaskDTO.getNextTask().isEmpty()) {
basicGridAcceptance.setNextTaskId(processTaskDTO.getNextTask().get(0).getId());
//下个节点名称
basicGridAcceptance.setNextNodeName(processTaskDTO.getNextTask().get(0).getName());
//下个节点key
basicGridAcceptance.setNextNodeKey(processTaskDTO.getNextTask().get(0).getKey());
} else {
return;
}
/// 下一个节点角色权限
if (processTaskDTO.getNextCandidateGroups() != null) {
List<String> ld = processTaskDTO.getNextCandidateGroups().get(basicGridAcceptance.getNextTaskId());
StringBuffer sbf = new StringBuffer();
for (int i = 0; i <= ld.size() - 1; i++) {
if (i < ld.size() - 1) {
sbf.append(ld.get(i) + ",");
} else {
sbf.append(ld.get(i));
}
}
basicGridAcceptance.setNextExecutorIds(sbf.toString());
}
//下一节点可执行人逗号分割 0 0
if (processTaskDTO.getNextTaskExecutor() != null) {
List<AgencyUserModel> li = processTaskDTO.getNextTaskExecutor().get(basicGridAcceptance.getNextTaskId());
if (li != null && !li.isEmpty()) {
StringBuffer sbf = new StringBuffer();
for (int i = 0; i <= li.size() - 1; i++) {
if (i < li.size() - 1) {
sbf.append(li.get(i).getUserId() + ",");
} else {
sbf.append(li.get(i).getUserId());
}
}
basicGridAcceptance.setNextExecuteUserIds(sbf.toString());
}
}
}
}
} }
...@@ -129,6 +129,8 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W ...@@ -129,6 +129,8 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
BasicGridAcceptanceServiceImpl basicGridAcceptanceService; BasicGridAcceptanceServiceImpl basicGridAcceptanceService;
@Autowired @Autowired
AcceptanceCheckServiceImpl acceptanceCheckService; AcceptanceCheckServiceImpl acceptanceCheckService;
@Autowired
CommonServiceImpl commonService;
private static final String PROCESSKEY = "ProcessEngineering"; private static final String PROCESSKEY = "ProcessEngineering";
...@@ -378,6 +380,8 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W ...@@ -378,6 +380,8 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
hygfWorkOrderStationAuditingDto.setWorkOrderPowerStationId(powerStationConstructionData.getWorkOrderPowerStationId()); hygfWorkOrderStationAuditingDto.setWorkOrderPowerStationId(powerStationConstructionData.getWorkOrderPowerStationId());
hygfWorkOrderStationAuditingDto.setPromoter(RequestContext.getExeUserId()); hygfWorkOrderStationAuditingDto.setPromoter(RequestContext.getExeUserId());
hygfWorkOrderStationAuditingService.createWithModel(hygfWorkOrderStationAuditingDto); hygfWorkOrderStationAuditingService.createWithModel(hygfWorkOrderStationAuditingDto);
//发起待办
commonService.buildTaskModel(commonService.buildTaskModelDto(hygfWorkOrderStationAuditingDto, workflowResultDto, BusinessTypeEnum.HYGF_SGLCSH));
}else { }else {
this.wofkflowExcute(workOrderStationAuditing.getInstanceId(),"0","通过",BusinessWorkflowKey.施工完成提交.getCode()); this.wofkflowExcute(workOrderStationAuditing.getInstanceId(),"0","通过",BusinessWorkflowKey.施工完成提交.getCode());
} }
...@@ -512,6 +516,9 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W ...@@ -512,6 +516,9 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
workOrderStationAuditingDto.setInstanceId(hygfWorkOrderStationAuditing.getInstanceId()); workOrderStationAuditingDto.setInstanceId(hygfWorkOrderStationAuditing.getInstanceId());
} }
hygfWorkOrderStationAuditingService.createWithModel(workOrderStationAuditingDto); hygfWorkOrderStationAuditingService.createWithModel(workOrderStationAuditingDto);
//更新待办
workflowResultDto.setInstanceId(hygfWorkOrderStationAuditing.getInstanceId());
commonService.updateTaskModelAndAddTask(hygfWorkOrderStationAuditing,workflowResultDto,BusinessTypeEnum.HYGF_SGLCSH);
} }
public Page<WorkOrder> selectPage(int pageNum, int pageSize, WorkOrder workOrder) { public Page<WorkOrder> selectPage(int pageNum, int pageSize, WorkOrder workOrder) {
......
package com.yeejoin.amos.boot.module.hygf.biz.vo;
import cn.afterturn.easypoi.excel.annotation.Excel;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
import java.time.LocalDate;
/**
*
*
* @author hzz
* @date 2024-09-29
*/
@Data
@ApiModel(value = "RepaymentExcelVO", description = "还款excel实体类")
public class RepaymentExcelVO implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "公司名称")
@Excel(name = "公司名称", width = 50, orderNum = "1")
private String companyName;
@ApiModelProperty(value = "期次")
@Excel(name = "期次", width = 30, orderNum = "2")
private String period;
@ApiModelProperty(value = "还款时间")
@Excel(name = "还款时间", width = 30, orderNum = "3")
private LocalDate repayDate;
@ApiModelProperty(value = "租金")
@Excel(name = "租金", width = 30, orderNum = "4")
private Double rent;
@ApiModelProperty(value = "利息")
@Excel(name = "利息", width = 30, orderNum = "5")
private Double interest;
@ApiModelProperty(value = "本金")
@Excel(name = "本金", width = 30, orderNum = "6")
private Double principal;
@ApiModelProperty(value = "放款批次")
@Excel(name = "放款批次", width = 30, orderNum = "7")
private String loanPeriod;
}
[
{
"type": "AbarbeitungWaitPush",
"pageType": "",
"name": "推送融资",
"url": "/mixuap?appId=1678340647909617665&id=1774627124162859009"
},
{
"type": "WaitAbarbeitung",
"pageType": "",
"name": "经销商整改",
"url": "/mixuap?appId=1678340647909617665&id=1806150815363108865"
},
{
"type": "FinancingAudit",
"pageType": "",
"name": "融资审核",
"url": "/mixuap?appId=1678340647909617665&id=1775075407041662977"
},
{
"type": "AuditPass",
"pageType": "",
"name": "线下放款",
"url": "/mixuap?appId=1678340647909617665&id=1805852764345995265"
},
{
"type": "jxs_03",
"pageType": "",
"name": "经销商管理员审核",
"url": "/mixuap?appId=1678340647909617665&id=1686219644483956738"
},
{
"type": "hygf_02",
"pageType": "",
"name": "经销商确认",
"url": "/mixuap?appId=1677158789557547009&id=1677158800043307009"
},
{
"type": "hygf_03",
"pageType": "",
"name": "设计审核",
"url": "/mixuap?appId=1677158789557547009&id=1680021027779801090"
},
{
"type": "hygf_05",
"pageType": "",
"name": "投融审核",
"url": "/mixuap?appId=1677158789557547009&id=1680021027779801090"
},
{
"type": "hygf_07",
"pageType": "",
"name": "法务审核",
"url": "/mixuap?appId=1677158789557547009&id=1680021027779801090"
},
{
"type": "hygf_09",
"pageType": "",
"name": "设计上传典型图库",
"url": "/mixuap?appId=1677158789557547009&id=1680021027779801090"
},
{
"type": "hygf_10",
"pageType": "",
"name": "经销商设计人员上传设计图",
"url": "/mixuap?appId=1677158789557547009&id=1680021027779801090"
},
{
"type": "hygf_11",
"pageType": "",
"name": "设计图纸审核",
"url": "/mixuap?appId=1677158789557547009&id=1680021027779801090"
},
{
"type": "hygf_bw1",
"pageType": "",
"name": "并网登记提交",
"url": "/mixuap?appId=1677158789557547009&id=1747156510238076929"
},
{
"type": "hygf_bw2",
"pageType": "",
"name": "并网管理端工程审核",
"url": "/mixuap?appId=1678340647909617665&id=1747528027618701313"
},
{
"type": "hygf_ys1",
"pageType": "",
"name": "经销商工程提交验收",
"url": "/mixuap?appId=1677158789557547009&id=1747168313215053826"
},
{
"type": "hygf_ys2",
"pageType": "",
"name": "管理端投融审核",
"url": "/mixuap?appId=1678340647909617665&id=1747528027618701313"
},
{
"type": "hygf_zg_tr",
"pageType": "",
"name": "整改单",
"url": "/mixuap?appId=1677158789557547009&id=1747168313215053826"
},
{
"type": "hygf_ys3",
"pageType": "",
"name": "管理端法务审核",
"url": "/mixuap?appId=1678340647909617665&id=1747528027618701313"
},
{
"type": "hygf_zg_fw",
"pageType": "",
"name": "整改单",
"url": "/mixuap?appId=1677158789557547009&id=1747168313215053826"
},
{
"type": "hygf_ys4",
"pageType": "",
"name": "管理端工程审核",
"url": "/mixuap?appId=1678340647909617665&id=1747528027618701313"
},
{
"type": "hygf_zg_gc",
"pageType": "",
"name": "整改单",
"url": "/mixuap?appId=1677158789557547009&id=1747168313215053826"
},
{
"type": "hygf_ys5",
"pageType": "",
"name": "管理端工程是否线下",
"url": "/mixuap?appId=1678340647909617665&id=1747528027618701313"
},
{
"type": "hygf_ys6",
"pageType": "",
"name": "管理端工程线下验",
"url": "/mixuap?appId=1678340647909617665&id=1747528027618701313"
},
{
"type": "hygf_zg_xx",
"pageType": "",
"name": "整改单",
"url": "/mixuap?appId=1677158789557547009&id=1747168313215053826"
},
{
"type": "fh_dtj",
"pageType": "",
"name": "待发货",
"url": ""
},
{
"type": "fh_dyr",
"pageType": "",
"name": "待确认",
"url": ""
},
{
"type": "fh_dsh",
"pageType": "",
"name": "待审核",
"url": ""
},
{
"type": "fh_sqbh",
"pageType": "",
"name": "申请补货",
"url": ""
},
{
"type": "Activity_0bs6t4g",
"pageType": "",
"name": "下发整改单",
"url": ""
},
{
"type": "Activity_0ku0pw4",
"pageType": "",
"name": "填写整改单",
"url": ""
},
{
"type": "Activity_0e6eabb",
"pageType": "",
"name": "整改单审核",
"url": ""
},
{
"type": "Activity_0bs6t4g",
"pageType": "",
"name": "验收提交",
"url": ""
},
{
"type": "Activity_0ojajec",
"pageType": "",
"name": "经销商管理员审核",
"url": ""
},
{
"type": "Activity_0edftmv",
"pageType": "",
"name": "片区审核",
"url": ""
},
{
"type": "Activity_1rjn5s1",
"pageType": "",
"name": "投融/法务审核",
"url": ""
},
{
"type": "Activity_0rbc0gc",
"pageType": "",
"name": "资产审核",
"url": ""
},
{
"type": "Activity_0bs6t4g",
"pageType": "",
"name": "并网登记",
"url": ""
},
{
"type": "Activity_0r2x1es",
"pageType": "",
"name": "经销商管理审核",
"url": ""
},
{
"type": "Activity_05nlkey",
"pageType": "",
"name": "片区审核",
"url": ""
},
{
"type": "Activity_0k4o46e",
"pageType": "",
"name": "设计审核/工程审核",
"url": ""
},
{
"type": "Activity_0bs6t4g",
"pageType": "",
"name": "施工完成提交",
"url": ""
},
{
"type": "Activity_1spujef",
"pageType": "",
"name": "完工登记提交",
"url": ""
},
{
"type": "Activity_16r1828",
"pageType": "",
"name": "完工自审",
"url": ""
},
{
"type": "Activity_1bldcno",
"pageType": "",
"name": "完工自审-片区运营中心",
"url": ""
},
{
"type": "Activity_1yftt2k",
"pageType": "",
"name": "工程审核",
"url": ""
},
{
"type": "Activity_095if3p",
"pageType": "",
"name": "设计审核",
"url": ""
}
]
\ No newline at end of file
...@@ -81,6 +81,13 @@ public class TestController extends BaseController { ...@@ -81,6 +81,13 @@ public class TestController extends BaseController {
TdengineTimeServiceImpl tdengineTimeService; TdengineTimeServiceImpl tdengineTimeService;
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false) @TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(httpMethod = "GET", value = "test2", notes = "test1")
@GetMapping("/testDay")
public void test2() throws ParseException {
tdengineTimeService.insertDayData();
}
@TycloudOperation(ApiLevel = UserType.AGENCY, needAuth = false)
@ApiOperation(httpMethod = "POST", value = "saveTest", notes = "saveTest") @ApiOperation(httpMethod = "POST", value = "saveTest", notes = "saveTest")
@PostMapping("/saveTest") @PostMapping("/saveTest")
public void saveTest() { public void saveTest() {
......
...@@ -2,7 +2,7 @@ spring.application.name=AMOS-JXIOP-BIGSCREEN-CZ ...@@ -2,7 +2,7 @@ spring.application.name=AMOS-JXIOP-BIGSCREEN-CZ
server.servlet.context-path=/jxiop-bigscreen server.servlet.context-path=/jxiop-bigscreen
server.port=33300 server.port=33300
server.uri-encoding=UTF-8 server.uri-encoding=UTF-8
spring.profiles.active=dev1 spring.profiles.active=kingbase8
spring.jackson.time-zone=GMT+8 spring.jackson.time-zone=GMT+8
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
logging.config=classpath:logback-${spring.profiles.active}.xml logging.config=classpath:logback-${spring.profiles.active}.xml
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment