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 @@
<version>2.2.2</version>
<scope>compile</scope>
</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>
<build>
<plugins>
......
......@@ -42,6 +42,8 @@ public class HouseholdTestController {
@Autowired
private SofarDataAcquisitionService sofarDataAcquisitionService;
@Autowired
private SunlightService sunlightService;
......@@ -107,12 +109,12 @@ public class HouseholdTestController {
@ApiOperation(httpMethod = "POST", value = "锦浪云", notes = "锦浪云")
public void golangnew() throws IOException {
// goLangDataAcquisitionService.stationList();
// goLangDataAcquisitionService.stationDetail();
// goLangDataAcquisitionService.stationDetail();
// goLangDataAcquisitionService.collectorList();
// goLangDataAcquisitionService.inverterList();
// goLangDataAcquisitionService.collectorDetail();
// goLangDataAcquisitionService.inverterDetail();
// goLangDataAcquisitionService.inverAlramInfo();
// goLangDataAcquisitionService.inverterDetail();
// goLangDataAcquisitionService.inverAlramInfo();
}
......@@ -125,13 +127,14 @@ public class HouseholdTestController {
@PostMapping(value = "/sofarnew")
@ApiOperation(httpMethod = "POST", value = "首航", notes = "首航")
public void sofarnew() throws IOException {
// sofarDataAcquisitionService.stationList();
sunlightService.inverAlramInfo();
// sofarDataAcquisitionService.stationList();
// goLangDataAcquisitionService.stationDetail();
// goLangDataAcquisitionService.collectorList();
// goLangDataAcquisitionService.inverterList();
// goLangDataAcquisitionService.collectorDetail();
// 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 * * * *
dataRequstScheduled.keshida=0 0/50 * * * *
dataRequstScheduled.Sunlight=0 0/50 * * * *
dataRequstScheduled.GoodWe=0 0/3 * * * *
dataRequstScheduled.GoodWe=0 0/50 * * * *
dataRequstScheduled.Sofar=0 0/50 * * * *
......@@ -78,5 +78,5 @@ dataRequstScheduled.Sofar=0 0/50 * * * *
tanYin.api.apiUrl=https://userauth.tanwin.cn
tanYin.api.clientSecret=rKrWVa2sXsSZeNAOW43v
tanYin.api.clientKey=yx10001
dataRequestScheduled.tanYin=0 0/10 * * * *
dataRequestScheduled.tanYin.warn=0 0/5 * * * *
\ No newline at end of file
dataRequestScheduled.tanYin=0 0/50 * * * *
dataRequestScheduled.tanYin.warn=0 0/50 * * * *
\ No newline at end of file
......@@ -70,7 +70,7 @@ dataRequstScheduled.huawei=0 0/50 * * * *
dataRequstScheduled.keshida=0 0/50 * * * *
dataRequstScheduled.Sunlight=0 0/50 * * * *
dataRequstScheduled.GoodWe=0 0/3 * * * *
dataRequstScheduled.GoodWe=0 0/50 * * * *
dataRequstScheduled.Sofar=0 0/50 * * * *
......@@ -78,5 +78,5 @@ dataRequstScheduled.Sofar=0 0/50 * * * *
tanYin.api.apiUrl=https://userauth.tanwin.cn
tanYin.api.clientSecret=rKrWVa2sXsSZeNAOW43v
tanYin.api.clientKey=yx10001
dataRequestScheduled.tanYin=0 0/10 * * * *
dataRequestScheduled.tanYin.warn=0 0/5 * * * *
\ No newline at end of file
dataRequestScheduled.tanYin=0 0/50 * * * *
dataRequestScheduled.tanYin.warn=0 0/50 * * * *
\ No newline at end of file
spring.application.name=AMOS-API-ACCESSAPI
server.servlet.context-path=/housepvapi
server.port=11006
spring.profiles.active=dev
spring.profiles.active=kingbase8
server.compression.enabled=true
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 {
HYGF_JXS_SH("JXS_SH", "经销商审核"),
HYGF_DZ_SH("hygf_10001", "电站审核"),
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 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 {
private String planInstanceId;
private String adminUserId;
private String regionalCompaniesName;
private String unitInfoId;
......
......@@ -2,6 +2,8 @@ package com.yeejoin.amos.boot.module.hygf.api.dto;
import lombok.Data;
import java.util.Date;
@Data
public class WorkflowResultDto {
......@@ -11,11 +13,6 @@ public class WorkflowResultDto {
*/
String instanceId;
// /**
// * 执行人角色
// */
// String nextExecutorIds;
String executorId;
......@@ -49,4 +46,22 @@ public class WorkflowResultDto {
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 @@
<if test="param.regionCompanyId!=null and param.regionCompanyId!=''">
and hygf_work_order.region_company_id =#{param.regionCompanyId}
</if>
<if test="param.peasantHouseholdId!=null and param.peasantHouseholdId!=''">
and bga.peasant_household_id =#{param.peasantHouseholdId}
</if>
</if>
</where>
......
......@@ -43,6 +43,9 @@
AND u.`name` like concat('%',#{name},'%')
</if>
<if test="unitInfoId != null and unitInfoId != ''">
AND u.`sequence_nbr` = #{unitInfoId}
</if>
</where>
ORDER BY u.audit_status ,u.rec_date DESC,u.sequence_nbr DESC
......
......@@ -47,6 +47,10 @@
<if test="params.region != null and params.region !='' ">
and hph.project_address like concat ('%',#{params.region},'%')
</if>
<if test="params.peasantHouseholdNo != null and params.peasantHouseholdNo !='' ">
and hph.peasant_household_no = #{params.peasantHouseholdNo}
</if>
</where>
ORDER BY
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 @@
<version>1.0</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>
<dependency>
<groupId>cn.afterturn</groupId>
<artifactId>easypoi-annotation</artifactId>
<version>3.2.0</version>
</dependency>
</dependencies>
<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;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.*;
import java.util.List;
......@@ -32,6 +29,19 @@ public interface TaskV2FeignService {
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 待办信息
......
......@@ -6,6 +6,7 @@ import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.workflow.model.*;
import org.springframework.cloud.openfeign.FeignClient;
import org.springframework.web.bind.annotation.*;
import java.util.List;
import java.util.Map;
......@@ -70,6 +71,13 @@ public interface WorkFlowFeignService {
@RequestMapping(value = "/v2/task/start/batch", method = RequestMethod.POST)
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;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
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.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.Enum.*;
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.mapper.AcceptanceCheckMapper;
......@@ -69,6 +66,8 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
FinancingInfoServiceImpl financingInfoService;
@Autowired
FinancingAuditingServiceImpl financingAuditingService;
@Autowired
CommonServiceImpl commonService;
public Page<AcceptanceCheckDto> selectPage(Long regionCompanyId, Long amosDealerId, int current, int size,
......@@ -173,6 +172,9 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
long idsk = basicGridRecord.getPeasantHouseholdId();
up.eq(PeasantHousehold::getSequenceNbr, idsk);
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
update.eq(BaseEntity::getSequenceNbr,basicGridRecord.getSequenceNbr());
this.update(null,update);
//发起待办
// commonService.buildTaskModel(buildBWYSTaskModel(grid, basicGridAcceptance));
ConstructionAcceptanceRecords da = new ConstructionAcceptanceRecords(model.get("realName").toString(), "提交验收审核",
new Date(), "", basicGridRecord.getSequenceNbr(), basicGridRecord.getWorkOrderPowerStationId(),
......@@ -232,8 +232,12 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
basicGridAuditingDto.setInstanceId(basicGridAuditing.getInstanceId());
}
acceptanceCheckAuditingService.createWithModel(basicGridAuditingDto);
//更新待办
workflowResultDto.setInstanceId(basicGridAuditingDto.getInstanceId());
commonService.updateTaskModelAndAddTask(basicGridAuditingDto,workflowResultDto,BusinessTypeEnum.HYGF_YSLC);
}
public void completeAdminAudit(Map<String,String> kv) {
String instanceId = kv.get("instanceId");
String sequenceNbr = kv.get("sequenceNbr");
......
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.JSONObject;
import com.baomidou.mybatisplus.core.toolkit.StringUtils;
......@@ -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.utils.RedisKey;
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.dto.AcceptanceRectificationOrderDto;
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.BasicGridAcceptance;
import com.yeejoin.amos.boot.module.hygf.api.mapper.AcceptanceRectificationOrderMapper;
......@@ -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.component.robot.BadRequest;
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.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -30,7 +35,9 @@ import org.typroject.tyboot.core.rdbms.service.BaseService;
import javax.annotation.Resource;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 验收整改单服务实现类
......@@ -46,8 +53,12 @@ public class AcceptanceRectificationOrderServiceImpl extends BaseService<Accepta
// private String hygfGcRoleSeq;
@Autowired
private BasicGridAcceptanceMapper basicGridAcceptanceMapper;
// @Autowired
// private WorkflowImpl workflow;
@Autowired
private WorkflowImpl workflow;
private WorkFlowService workFlowService;
@Autowired
private CommonServiceImpl commonService;
@Autowired
private RedisUtils redisUtils;
@Resource (type = RedisLockUtil.class)
......@@ -59,7 +70,7 @@ public class AcceptanceRectificationOrderServiceImpl extends BaseService<Accepta
return acceptanceRectificationOrderMapper.page(page, acceptanceSeqNbr);
}
/**
* 列表查询 示例
*/
......@@ -135,16 +146,23 @@ public class AcceptanceRectificationOrderServiceImpl extends BaseService<Accepta
basicGridAcceptance.setAcceptanceStatus(String.valueOf(Integer.parseInt(basicGridAcceptance.getAcceptanceStatus()) - 1));
StandardDto standardDto=new StandardDto();
standardDto.setTaskId(basicGridAcceptance.getNextTaskId());
workflow.standard(basicGridAcceptance,standardDto,userId);
basicGridAcceptanceMapper.updateById(basicGridAcceptance);
// StandardDto standardDto=new StandardDto();
// standardDto.setTaskId(basicGridAcceptance.getNextTaskId());
// workflow.standard(basicGridAcceptance,standardDto,userId);
TaskResultDTO taskResultDTO = new TaskResultDTO();
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 {
redisLockUtil.releaseLock(lockName);
}
return model;
}
}
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.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
......@@ -7,8 +8,10 @@ import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
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.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.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.BasicGridAcceptance;
import com.yeejoin.amos.boot.module.hygf.api.entity.PeasantHousehold;
......@@ -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.PeasantHouseholdMapper;
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.component.robot.BadRequest;
import lombok.extern.slf4j.Slf4j;
......@@ -35,6 +40,10 @@ import java.util.stream.Collectors;
@Service
public class AcceptanceServiceImpl implements IAcceptanceService {
// @Autowired
// WorkflowImpl workflow;
@Autowired
WorkFlowService workFlowService;
@Autowired
private AcceptanceMapper acceptanceMapper;
@Autowired
......@@ -44,7 +53,8 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
@Autowired
private AcceptanceCheckItemMapper acceptanceCheckItemMapper;
@Autowired
WorkflowImpl workflow;
private CommonServiceImpl commonService;
@Resource(type = RedisLockUtil.class)
private RedisLockUtil redisLockUtil;
......@@ -56,7 +66,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
* @return 分页结果
*/
@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)) {
// 处理提交日期
......@@ -70,7 +80,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
}
}
PageHelper.startPage(current, size);
PageHelper.startPage(current, size);
List<AcceptanceDto> resultPage = acceptanceMapper.page(acceptanceDto);
PageInfo<AcceptanceDto> page = new PageInfo(resultPage);
Page<AcceptanceDto> pagenew = new Page<AcceptanceDto>();
......@@ -105,7 +115,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
}
@Override
public AcceptanceCheckItem saveEntity(AcceptanceCheckItem item, Long sequenceNbr) {
public AcceptanceCheckItem saveEntity(AcceptanceCheckItem item, Long sequenceNbr) {
BasicGridAcceptance acceptance = basicGridAcceptanceMapper.selectById(sequenceNbr);
Assert.notNull(acceptance, "未查询到相关电站信息!");
item.setWorkOrderId(acceptance.getWorkOrderId());
......@@ -114,6 +124,7 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
acceptanceCheckItemMapper.insert(item);
return Optional.ofNullable(item).orElse(new AcceptanceCheckItem());
}
@Override
@Transactional
public void checkAccept(Long basicGridAcceptanceId, String userId) {
......@@ -130,9 +141,17 @@ public class AcceptanceServiceImpl implements IAcceptanceService {
basicGridAcceptanc.setAcceptanceStatus(AcceptanceStatusEnum.待投融验收.getCode());
basicGridAcceptanc.setAcceptanceRecDate(new Date());
//执行工作流
StandardDto standardDto = new StandardDto();
standardDto.setTaskId(basicGridAcceptanc.getNextTaskId());
workflow.standard(basicGridAcceptanc, standardDto, userId);
// StandardDto standardDto=new StandardDto();
// standardDto.setTaskId(basicGridAcceptanc.getNextTaskId());
// 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);
//线上验收
......@@ -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)));
}
}
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.collection.CollUtil;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSON;
......@@ -12,12 +13,19 @@ import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
import com.yeejoin.amos.boot.module.hygf.api.Enum.*;
import com.yeejoin.amos.boot.module.hygf.api.dto.*;
import com.yeejoin.amos.boot.module.hygf.api.dto.BasicGridAcceptanceDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.BasicGridAuditingDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.BasicGridRecordDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.*;
import com.yeejoin.amos.boot.module.hygf.api.mapper.*;
import com.yeejoin.amos.boot.module.hygf.api.service.IBasicGridAcceptanceService;
import com.yeejoin.amos.boot.module.hygf.api.util.CommonResponseNewUtil;
import com.yeejoin.amos.boot.module.hygf.api.util.NumberUtil;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
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.component.robot.BadRequest;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
......@@ -42,9 +50,7 @@ import java.util.stream.Collectors;
@Slf4j
@Service
@Transactional(rollbackFor = Exception.class)
public class BasicGridAcceptanceServiceImpl
extends BaseService<BasicGridAcceptanceDto, BasicGridAcceptance, BasicGridAcceptanceMapper>
implements IBasicGridAcceptanceService {
public class BasicGridAcceptanceServiceImpl extends BaseService<BasicGridAcceptanceDto, BasicGridAcceptance, BasicGridAcceptanceMapper> implements IBasicGridAcceptanceService {
@Autowired
BasicGridAcceptanceMapper basicGridAcceptanceMapper;
......@@ -58,8 +64,8 @@ public class BasicGridAcceptanceServiceImpl
PersonnelBusinessMapper personnelBusinessMapper;
@Autowired
PowerStationEngineeringInfoMapper powerStationEngineeringInfoMapper;
@Autowired
WorkflowImpl workflow;
// @Autowired
// WorkflowImpl workflow;
@Autowired
AcceptanceCheckItemMapper acceptanceCheckItemMapper;
@Autowired
......@@ -93,8 +99,8 @@ public class BasicGridAcceptanceServiceImpl
private final String PASS = "5";
public Page<BasicGridRecordDto> selectPage(Long regionCompanyId, Long amosDealerId, int current, int size,
String projectAddress, String powerStationCode, String ownersName, String gridStatus,
String gridConnectionTime, String formType, List<String> basicGridNodes, String type, String province)
String projectAddress, String powerStationCode, String ownersName, String gridStatus,
String gridConnectionTime, String formType, List<String> basicGridNodes, String type, String province)
throws Exception {
PageHelper.startPage(current, size);
Map<String, Object> map = new HashMap<>();
......@@ -245,6 +251,9 @@ public class BasicGridAcceptanceServiceImpl
long idsk = basicGridRecord.getPeasantHouseholdId();
up.eq(PeasantHousehold::getSequenceNbr, idsk);
peasantHouseholdMapper.update(null, up);
//发起待办
workflowResultDto.setInstanceId(basicGridRecord.getInstanceId());
commonService.buildTaskModel(commonService.buildTaskModelDto(basicGridRecord, workflowResultDto, BusinessTypeEnum.HYGF_BWLC));
}
// 防止重复提交
......@@ -264,39 +273,8 @@ public class BasicGridAcceptanceServiceImpl
basicGridRecord.getSequenceNbr(), basicGridRecord.getWorkOrderPowerStationId(),
basicGridRecord.getPeasantHouseholdId(), "");
constructionGirdRecords.save(da);
// 发起待办
// commonService.buildTaskModel(buildBWYSTaskModel(grid, basicGridAcceptance));
return grid;
}
private List<TaskModelDto> buildBWYSTaskModel(HygfOnGrid grid, BasicGridAcceptance basicGridAcceptance) {
List<TaskModelDto> taskModelDtoList = new ArrayList<>();
TaskModelDto taskModelDto = new TaskModelDto();
taskModelDto.setFlowCode(basicGridAcceptance.getNextTaskId());
taskModelDto.setFlowCreateDate(new Date());
taskModelDto.setFlowStatus(FlowStatusEnum.TO_BE_PROCESSED.getCode());
taskModelDto.setFlowStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
taskModelDto.setPageType(null);
taskModelDto.setExecuteUserIds(basicGridAcceptance.getNextExecuteUserIds());
taskModelDto.setModel(grid);
taskModelDto.setRelationId(basicGridAcceptance.getInstanceId());
taskModelDto.setRoutePath(null);
taskModelDto.setStartUserId(basicGridAcceptance.getRecUserId());
taskModelDto.setStartUser(basicGridAcceptance.getRecUserName());
taskModelDto.setStartDate(basicGridAcceptance.getRecDate());
taskModelDto.setStartUserCompanyName(null);
taskModelDto.setTaskName(basicGridAcceptance.getNextNodeName());
taskModelDto.setTaskCode(String.valueOf(basicGridAcceptance.getWorkOrderId()));
taskModelDto.setTaskType(BusinessTypeEnum.HYGF_BWYS.getCode());
taskModelDto.setTaskTypeLabel(BusinessTypeEnum.HYGF_BWYS.getName());
taskModelDto.setTaskStatus(TaskStatusEnum.UNDERWAY.getValue());
taskModelDto.setTaskStatusLabel(TaskStatusEnum.UNDERWAY.getName());
// taskModelDto.setTaskDesc();
// taskModelDto.setTaskContent();
taskModelDto.setNextExecuteUser(basicGridAcceptance.getNextExecutorIds());
taskModelDtoList.add(taskModelDto);
return taskModelDtoList;
return grid;
}
public HygfOnGrid modifyEntity(HygfOnGrid grid) {
......@@ -421,20 +399,32 @@ public class BasicGridAcceptanceServiceImpl
dto.setPeasantHouseholdId(basicGridAcceptanc.getPeasantHouseholdId());
acceptanceCheckItemMapper.insert(dto);
}
// 执行工作流
StandardDto standardDto = new StandardDto();
standardDto.setComment(dto.getComment());
standardDto.setResult(dto.getApprovalStatus());
standardDto.setTaskId(basicGridAcceptanc.getNextTaskId());
VariableDto variable = new VariableDto();
variable.setApprovalStatus(dto.getApprovalStatus());
variable.setComment(dto.getComment());
variable.setOperationTime(dto.getOperationTime());
variable.setOperator(dto.getOperator());
standardDto.setVariable(variable);
BasicGridAcceptance workBasicGridAcceptance = workflow.standard(basicGridAcceptanc, standardDto, userId);
if (workBasicGridAcceptance.getNextNodeKey().equals(BasicGridAcceptancEnum.管理端工程线下验.getCode())) {
// 执行工作流
// StandardDto standardDto = new StandardDto();
// standardDto.setComment(dto.getComment());
// standardDto.setResult(dto.getApprovalStatus());
// standardDto.setTaskId(basicGridAcceptanc.getNextTaskId());
// VariableDto variable = new VariableDto();
// variable.setApprovalStatus(dto.getApprovalStatus());
// variable.setComment(dto.getComment());
// variable.setOperationTime(dto.getOperationTime());
// variable.setOperator(dto.getOperator());
// standardDto.setVariable(variable);
// BasicGridAcceptance workBasicGridAcceptance = workflow.standard(basicGridAcceptanc, standardDto, userId);
// 执行流程
TaskResultDTO taskResultDTO = new TaskResultDTO();
taskResultDTO.setComment(dto.getComment());
taskResultDTO.setResult(dto.getApprovalStatus());
taskResultDTO.setTaskId(basicGridAcceptanc.getNextTaskId());
HashMap<String, Object> variableMap = new HashMap<>();
variableMap.put("approvalStatus", dto.getApprovalStatus());
variableMap.put("comment", dto.getComment());
variableMap.put("operationTime", dto.getOperationTime());
variableMap.put("operator", dto.getOperator());
taskResultDTO.setVariable(variableMap);
ProcessTaskDTO processTaskDTO = workFlowService.standard(basicGridAcceptanc, taskResultDTO, userId);
if (basicGridAcceptanc.getNextNodeKey().equals(BasicGridAcceptancEnum.管理端工程线下验.getCode())) {
// 线下验收
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.线下验收.getCode());
......@@ -444,11 +434,11 @@ public class BasicGridAcceptanceServiceImpl
}
// 验收完成
System.out.println("验收完成===============================" + workBasicGridAcceptance.getNextTaskId());
System.out.println("验收完成===============================" + basicGridAcceptanc.getNextTaskId());
System.out.println(
"验收完成888888===============================" + workBasicGridAcceptance.getAcceptanceStatus());
"验收完成888888===============================" + basicGridAcceptanc.getAcceptanceStatus());
if ("10".equals(workBasicGridAcceptance.getAcceptanceStatus())) {
if ("10".equals(basicGridAcceptanc.getAcceptanceStatus())) {
// 更新状态
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.验收完成.getCode());
......@@ -458,7 +448,11 @@ public class BasicGridAcceptanceServiceImpl
}
basicGridAcceptanceMapper.updateById(workBasicGridAcceptance);
basicGridAcceptanceMapper.updateById(basicGridAcceptanc);
//更新待办
WorkflowResultDto workflowResultDto = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO)).get(0);
workflowResultDto.setInstanceId(basicGridAcceptanc.getInstanceId());
commonService.updateTaskModelAndAddTask(basicGridAcceptanc,workflowResultDto,BusinessTypeEnum.HYGF_BWYS);
} finally {
redisLockUtil.releaseLock(lockName);
}
......@@ -498,6 +492,9 @@ public class BasicGridAcceptanceServiceImpl
basicGridAuditingDto.setInstanceId(basicGridAuditing.getInstanceId());
}
basicGridAuditingService.createWithModel(basicGridAuditingDto);
//更新待办
workflowResultDto.setInstanceId(basicGridAuditingDto.getInstanceId());
commonService.updateTaskModelAndAddTask(basicGridAuditingDto,workflowResultDto,BusinessTypeEnum.HYGF_BWYS);
}
public void completeAdminAudit(Map<String, String> kv) {
......
......@@ -3,7 +3,6 @@ package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
......@@ -11,13 +10,9 @@ import com.yeejoin.amos.boot.biz.common.utils.RedisKey;
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.dto.SurveyInfoAllDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.TaskModelDto;
import com.yeejoin.amos.boot.module.hygf.api.util.JsonUtils;
import com.yeejoin.amos.boot.module.hygf.biz.feign.TaskV2FeignService;
import com.yeejoin.amos.component.feign.model.FeignClientResult;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.RegionModel;
import com.yeejoin.amos.feign.systemctl.model.TaskV2Model;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.StringUtils;
......@@ -33,12 +28,7 @@ import java.lang.reflect.Modifier;
import java.net.URLEncoder;
import java.util.*;
import java.util.stream.Collectors;
import org.apache.poi.ss.usermodel.*;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import java.io.FileInputStream;
import java.io.FileOutputStream;
import java.io.IOException;
import java.lang.reflect.Field;
/**
* 公共服务实现类
*
......@@ -59,6 +49,8 @@ public class CommonServiceImpl {
private static final String regionRedis = "app_region_redis";
@Autowired
RedisUtils redisUtil;
@Autowired
private AmosRequestContext amosRequestContext;
private static String toQueryParams2(JSONObject jsonObject) {
StringBuilder sb = new StringBuilder();
......@@ -70,9 +62,7 @@ public class CommonServiceImpl {
}
try {
if (value != null && !"".equals(value)) {
sb.append(URLEncoder.encode(key, "UTF-8"))
.append('=')
.append(URLEncoder.encode(value.toString(), "UTF-8"));
sb.append(URLEncoder.encode(key, "UTF-8")).append('=').append(URLEncoder.encode(value.toString(), "UTF-8"));
}
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
......@@ -81,6 +71,38 @@ public class CommonServiceImpl {
return sb.toString();
}
public List<TaskModelDto> buildTaskModelDto(Object model, WorkflowResultDto workflowResultDto, BusinessTypeEnum businessType) {
List<TaskModelDto> taskModelDtoList = new ArrayList<>();
TaskModelDto taskModelDto = new TaskModelDto();
FlowKeyTodoEnum flowKeyTodoEnum = FlowKeyTodoEnum.getEumByFlowNodeKey(workflowResultDto.getNextNodeKey());
if (!Objects.isNull(flowKeyTodoEnum)) {
taskModelDto.setFlowStatus(flowKeyTodoEnum.getCode());
taskModelDto.setFlowStatusLabel(flowKeyTodoEnum.getDealName());
}
taskModelDto.setRoutePath(null);
taskModelDto.setFlowCode(workflowResultDto.getNextTaskId());
taskModelDto.setFlowCreateDate(new Date());
taskModelDto.setPageType(null);
taskModelDto.setExecuteUserIds(workflowResultDto.getNextExecuteUserIds());
taskModelDto.setModel(model);
taskModelDto.setRelationId(workflowResultDto.getInstanceId());
taskModelDto.setStartUserId(workflowResultDto.getStartUserId());
taskModelDto.setStartUser(workflowResultDto.getStartUser());
taskModelDto.setStartDate(workflowResultDto.getStartDate());
taskModelDto.setStartUserCompanyName(workflowResultDto.getStartUserCompanyName());
taskModelDto.setTaskName(workflowResultDto.getNextNodeName());
taskModelDto.setTaskCode(workflowResultDto.getNextNodeKey());
taskModelDto.setTaskType(businessType.getCode());
taskModelDto.setTaskTypeLabel(businessType.getName());
taskModelDto.setTaskStatus(FlowStatusEnum.TO_BE_PROCESSED.getCode());
taskModelDto.setTaskStatusLabel(FlowStatusEnum.TO_BE_PROCESSED.getName());
// taskModelDto.setTaskDesc();
// taskModelDto.setTaskContent();
taskModelDto.setNextExecuteUser(workflowResultDto.getNextExecutorIds());
taskModelDtoList.add(taskModelDto);
return taskModelDtoList;
}
public void deleteTaskModel(String id) {
List<TaskV2Model> result = taskV2FeignService.selectListByRelationId(id).getResult();
if (!result.isEmpty()) {
......@@ -94,20 +116,27 @@ public class CommonServiceImpl {
* 待办新增接口
**/
public void buildTaskModel(List<TaskModelDto> list) {
//执行人为空使用系统机器人账号
if (StrUtil.isEmpty(RequestContext.getExeUserId())) {
RequestContext.setExeUserId(amosRequestContext.getUserId());
RequestContext.setToken(amosRequestContext.getToken());
RequestContext.setAgencyCode("JXIOP");
}
List<TaskV2Model> taskV2Models = new ArrayList<>();
for (TaskModelDto obj : list) {
// 判断是否是暂存 新增若无下一节点执行人即为暂存
boolean flag = StringUtils.isEmpty(obj.getNextExecuteUser());
if (flag) {
List<TaskV2Model> result = taskV2FeignService.selectListByRelationId(obj.getRelationId()).getResult();
if (CollectionUtil.isNotEmpty(result) && !result.isEmpty()) {
if (CollectionUtil.isNotEmpty(result)) {
break;
}
}
ReginParams reginParams = JSONObject.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
//处理开始流程人员为空的问题
dealStartUser(obj);
TaskV2Model model = new TaskV2Model();
BeanUtil.copyProperties(obj, model);
String urlParams = "";
String urlParams = "&formType=edit";
try {
urlParams = "&" + toQueryParams(obj.getModel());
} catch (UnsupportedEncodingException e) {
......@@ -115,19 +144,18 @@ public class CommonServiceImpl {
}
List<Map> urlList = JsonUtils.getResourceList(urlInfo);
for (Map map : urlList) {
// 获取暂存的可编辑页面url
if (flag && map.get("type").equals(obj.getTaskType()) && map.get("pageType").equals("draft")) {
if (map.get("type").equals(obj.getTaskCode())) {
model.setRoutePath(map.get("url").toString() + urlParams);
break;
}
// 其他逻辑均按详情页面获取
else if (map.get("type").equals(obj.getTaskType()) && map.get("pageType").equals(null == obj.getPageType() ? "look" : obj.getPageType())) {
model.setRoutePath(map.get("url").toString().replace("{roleIds}", obj.getNextExecuteUser()) + urlParams + "&nextExecuteUserIds=" + model.getExecuteUserIds());
break;
}
}
// 是true则为暂存 除公共部分统一处理
if (flag) {
Object redisUserInfo = redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken()));
if (Objects.isNull(redisUserInfo)) {
break;
}
ReginParams reginParams = JSONObject.parseObject(redisUserInfo.toString(), ReginParams.class);
model.setFlowStatus(FlowStatusEnum.TO_BE_SUBMITTED.getCode());
model.setFlowStatusLabel(FlowStatusEnum.TO_BE_SUBMITTED.getName());
model.setStartUserId(RequestContext.getExeUserId());
......@@ -155,7 +183,28 @@ public class CommonServiceImpl {
taskV2Models.add(model);
}
taskV2FeignService.batchAdd(taskV2Models);
//如果使用的是机器人则使用机器人的token、appkey、product进行调用
if (amosRequestContext.getUserId().equals(RequestContext.getExeUserId())) {
taskV2FeignService.batchAddNew(amosRequestContext.getAppKey(), amosRequestContext.getProduct(), amosRequestContext.getToken(), taskV2Models);
} else {
taskV2FeignService.batchAdd(taskV2Models);
}
}
private void dealStartUser(TaskModelDto obj) {
if (StrUtil.isEmpty(obj.getStartUser())) {
List<TaskV2Model> result = taskV2FeignService.selectListByRelationId(obj.getRelationId()).getResult();
if (CollectionUtil.isNotEmpty(result)) {
List<TaskV2Model> collect = result.stream().filter(item -> item.getStartUser() != null).collect(Collectors.toList());
if (CollectionUtil.isNotEmpty(collect)) {
TaskV2Model taskV2Model = collect.get(0);
obj.setStartUserId(taskV2Model.getStartUserId());
obj.setStartUser(taskV2Model.getStartUser());
obj.setStartDate(taskV2Model.getStartDate());
obj.setStartUserCompanyName(taskV2Model.getStartUserCompanyName());
}
}
}
}
/**
......@@ -181,16 +230,9 @@ public class CommonServiceImpl {
collect.get(0).setTaskStatusLabel(params.get("taskStatusLabel").toString());
collect.get(0).setEndUserId(exeUserId);
collect.get(0).setEndDate(new Date());
// String[] roleIds = model.getRoutePath().split("roleIds=");
// String[] userIds = roleIds[1].split("&userId");
// String url = roleIds[0]+"roleIds="+"55555"+"&userId"+ userIds[1];
// String tarUrl = url.replaceFirst("&executeUserIds=", "");
// tarUrl+"&executeUserIds="
// model.setRoutePath( roleIds[0]+"roleIds="+"55555"+"&userId"+userIds[1]);
// 当流程完成时将所有待办状态统一修改为已完成
String urlParams = "&formType=detail";
if (collect.get(0).getFlowStatusLabel().equals(FlowStatusEnum.TO_BE_FINISHED.getName())) {
String urlParams = "";
try {
urlParams = "&" + toQueryParams(params.get("model"));
} catch (UnsupportedEncodingException e) {
......@@ -198,76 +240,13 @@ public class CommonServiceImpl {
}
List<Map> urlList = JsonUtils.getResourceList(urlInfo);
for (Map map : urlList) {
if (map.get("type").equals(collect.get(0).getTaskType()) && map.get("pageType").equals("look")) {
urlParams = map.get("url").toString().replace("{roleIds}", "") + urlParams + "&taskStatus" + collect.get(0).getTaskStatus() + "&nextExecuteUserIds=";
//此处单独处理经销商审核 审核完成后跳转列表页面
if("jxs_03".equals(collect.get(0).getTaskCode())){
urlParams = "/mixuap?appId=1678340647909617665&id=1678365817248444417"+ urlParams;
break;
}
}
collect.get(0).setRoutePath(urlParams);
for (TaskV2Model taskV2Model : collect) {
taskV2Model.setTaskStatusLabel((FlowStatusEnum.TO_BE_FINISHED.getName()));
taskV2Model.setTaskStatus(FlowStatusEnum.TO_BE_FINISHED.getCode());
taskV2Model.setFlowStatusLabel((FlowStatusEnum.TO_BE_FINISHED.getName()));
taskV2Model.setFlowStatus(FlowStatusEnum.TO_BE_FINISHED.getCode());
}
taskV2FeignService.batchUpdate(collect);
} else {
collect.get(0).setRoutePath(collect.get(0).getRoutePath().replace("roleIds=", "roleIds=55555&fq="));
taskV2FeignService.update(collect.get(0), collect.get(0).getSequenceNbr());
}
// 修改model并返回 用于组装新待办
collect.get(0).setEndUserId(null);
collect.get(0).setTaskStatus(null);
collect.get(0).setEndDate(null);
collect.get(0).setSequenceNbr(null);
collect.get(0).setCreateDate(new Date());
collect.get(0).setStartDate(new Date());
return collect.get(0);
}
/**
* 待办编辑接口 【如果没有代办直接返回空,业务判断】 ---- 在用,误删
* 参数
* taskStatus
* taskStatusLabel 操作名称 1驳回 2通过 3重新提交
* flowStatusLabel 任务状态枚举code
* 流程实例id instanceId
* flowCode 任务id
**/
public TaskV2Model updateTaskModelNew(Map<String, Object> params) {
String exeUserId = RequestContext.getExeUserId();
List<TaskV2Model> result = taskV2FeignService.selectListByRelationId(params.get("relationId").toString()).getResult();
// TaskV2Model model = result.stream().filter(e->e.getFlowCode().equals(params.get("flowCode").toString())).sorted((r1, r2) -> r2.getSequenceNbr().compareTo(r2.getSequenceNbr())) // 按时间降序排序
// .findFirst()
// .orElse(null);
List<TaskV2Model> collect = result.stream().sorted((r1, r2) -> r2.getSequenceNbr().compareTo(r1.getSequenceNbr())).collect(Collectors.toList());
if (null == collect || collect.size() == 0) {
TaskV2Model model = new TaskV2Model();
model.setFlowStatus(Integer.valueOf(params.get("flowStatus").toString()));
model.setFlowStatusLabel(params.get("flowStatusLabel").toString());
model.setTaskStatus(Integer.valueOf(params.get("taskStatus").toString()));
model.setTaskStatusLabel(params.get("taskStatusLabel").toString());
return model;
}
collect.get(0).setFlowStatus(Integer.valueOf(params.get("flowStatus").toString()));
collect.get(0).setFlowStatusLabel(params.get("flowStatusLabel").toString());
collect.get(0).setTaskStatus(Integer.valueOf(params.get("taskStatus").toString()));
collect.get(0).setTaskStatusLabel(params.get("taskStatusLabel").toString());
collect.get(0).setEndUserId(exeUserId);
collect.get(0).setEndDate(new Date());
// 当流程完成时将所有待办状态统一修改为已完成
if (collect.get(0).getFlowStatusLabel().equals(FlowStatusEnum.TO_BE_FINISHED.getName())) {
String urlParams = "";
try {
urlParams = "&" + toQueryParams(params.get("model"));
} catch (UnsupportedEncodingException e) {
e.printStackTrace();
}
List<Map> urlList = JsonUtils.getResourceList(urlInfo);
for (Map map : urlList) {
if (map.get("type").equals(collect.get(0).getTaskType()) && map.get("pageType").equals("look")) {
urlParams = map.get("url").toString().replace("{roleIds}", "") + urlParams + "&nextExecuteUserIds=";
if (map.get("type").equals(collect.get(0).getTaskCode())) {
urlParams = map.get("url").toString() + urlParams;
break;
}
}
......@@ -283,6 +262,7 @@ public class CommonServiceImpl {
collect.get(0).setRoutePath(collect.get(0).getRoutePath().replace("roleIds=", "roleIds=55555&fq="));
taskV2FeignService.update(collect.get(0), collect.get(0).getSequenceNbr());
}
// 修改model并返回 用于组装新待办
collect.get(0).setEndUserId(null);
collect.get(0).setTaskStatus(null);
collect.get(0).setEndDate(null);
......@@ -292,6 +272,7 @@ public class CommonServiceImpl {
return collect.get(0);
}
/**
* 待办 撤回
*
......@@ -342,7 +323,7 @@ public class CommonServiceImpl {
model.setFlowStatusLabel(obj.get("flowStatusLabel").toString());
}
for (Map map : urlList) {
if (map.get("type").equals(obj.get("taskType")) && map.get("pageType").equals("edit")) {
if (map.get("type").equals(obj.get("taskType")) && map.get("pageType").equals("edit")) {
model.setRoutePath(map.get("url").toString().replace("{roleIds}", obj.get("nextExecuteUser").toString()) + urlParams);
break;
}
......@@ -378,6 +359,24 @@ public class CommonServiceImpl {
return sb.length() > 0 ? sb.substring(0, sb.length() - 1) : "";
}
/**
* 更新并完成
* @param object
* @param workflowResultDto
* @param businessTypeEnum
*/
public void updateTaskModelAndAddTask(Object object, WorkflowResultDto workflowResultDto, BusinessTypeEnum businessTypeEnum) {
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", object);
updateTaskParam.put("relationId", workflowResultDto.getInstanceId());
updateTaskModel(updateTaskParam);
buildTaskModel((buildTaskModelDto(object, workflowResultDto, businessTypeEnum)));
}
public JSONArray getRegionName() {
JSONArray jsonArray = new JSONArray();
if (redisUtil.hasKey(regionRedis)) {
......
......@@ -65,8 +65,8 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
private WorkFlowService workFlowService;
@Autowired
private PeasantHouseholdServiceImpl peasantHouseholdService;
@Autowired
private WorkflowImpl workflow;
// @Autowired
// private WorkflowImpl workflow;
@Autowired
private FinancingAuditingServiceImpl financingAuditingService;
@Autowired
......@@ -207,6 +207,11 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
financingAuditingDto.setPeasantHouseholdId(Long.valueOf(e));
financingAuditingDto.setPromoter(RequestContext.getExeUserId());
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("待推送") ){
......@@ -229,8 +234,6 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
map.put("instanceId",financingInfos1.getInstanceId());
this.execueFlow(map);
}
//发起待办
// commonService.buildTaskModel(buildDZTRZTaskModel(model, workflowResultDto, date));
});
}finally {
redisLockUtil.releaseLock(lockName);
......@@ -238,37 +241,6 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
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
public void rollback(String processId, String peasantHouseholdId) {
workFlowService.stopProcess(processId);
......@@ -289,6 +261,8 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
this.deleteBySeq(financingInfo.getSequenceNbr());
}
//停止流程
commonService.deleteTaskModel(processId);
}
@Override
......@@ -365,7 +339,9 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
}
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("isHistory")){
......@@ -404,7 +380,6 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
// financingRectificationOrderService.save(financingRectificationOrder);
}
}
public List<Map<String, Object>> selectOrgList() {
......
......@@ -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.robot.AmosRequestContext;
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 org.apache.commons.lang.StringUtils;
import org.apache.commons.lang3.BooleanUtils;
......@@ -85,8 +87,12 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS
PowerStationMapper powerStationMapper;
@Autowired
AmosRequestContext requestContext;
// @Autowired
// WorkflowImpl workflow;
@Autowired
WorkflowImpl workflow;
WorkFlowService workFlowService;
@Autowired
CommonServiceImpl commonService;
@Autowired
HouseholdContractMapper householdContractMapper;
@Resource (type = RedisLockUtil.class)
......@@ -354,45 +360,72 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS
//
// }
// 执行工作流
BasicGridAcceptance basicGridAcceptance = new BasicGridAcceptance();
StandardDto standardDto = new StandardDto();
if (PowerStationNodeEnum.设计上传图纸.getCode().equals(nodeCode)
|| PowerStationNodeEnum.经销商上传图纸.getCode().equals(nodeCode)) {
standardDto.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
standardDto.setResult("0");
standardDto.setTaskId(powerStation.getFlowTaskId());
VariableDto variable = new VariableDto();
variable.setApprovalStatus("0");
variable.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
variable.setOperationTime(String.valueOf(kv.get("approveDate")));
variable.setOperator("");
standardDto.setVariable(variable);
} else {
standardDto.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
standardDto.setResult(String.valueOf(kv.get("approvalStatus")));
standardDto.setTaskId(powerStation.getFlowTaskId());
VariableDto variable = new VariableDto();
variable.setApprovalStatus(String.valueOf(kv.get("approvalStatus")));
variable.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
variable.setOperationTime(String.valueOf(kv.get("approveDate")));
variable.setOperator(String.valueOf(kv.get("approveName")));
standardDto.setVariable(variable);
}
BasicGridAcceptance workBasicGridAcceptance = workflow.standard(basicGridAcceptance, standardDto,
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());
// 执行工作流
BasicGridAcceptance basicGridAcceptance = new BasicGridAcceptance();
// StandardDto standardDto = new StandardDto();
// if (PowerStationNodeEnum.设计上传图纸.getCode().equals(nodeCode)
// || PowerStationNodeEnum.经销商上传图纸.getCode().equals(nodeCode)) {
//
// standardDto.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
// standardDto.setResult("0");
// standardDto.setTaskId(powerStation.getFlowTaskId());
// VariableDto variable = new VariableDto();
// variable.setApprovalStatus("0");
// variable.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
// variable.setOperationTime(String.valueOf(kv.get("approveDate")));
// variable.setOperator("");
// standardDto.setVariable(variable);
// } else {
// standardDto.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
// standardDto.setResult(String.valueOf(kv.get("approvalStatus")));
// standardDto.setTaskId(powerStation.getFlowTaskId());
// VariableDto variable = new VariableDto();
// variable.setApprovalStatus(String.valueOf(kv.get("approvalStatus")));
// variable.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
// variable.setOperationTime(String.valueOf(kv.get("approveDate")));
// variable.setOperator(String.valueOf(kv.get("approveName")));
// standardDto.setVariable(variable);
// }
// BasicGridAcceptance workBasicGridAcceptance = workflow.standard(basicGridAcceptance, standardDto,
// requestContext.getUserId());
TaskResultDTO taskResultDTO = new TaskResultDTO();
if (PowerStationNodeEnum.设计上传图纸.getCode().equals(nodeCode)
|| PowerStationNodeEnum.经销商上传图纸.getCode().equals(nodeCode)) {
taskResultDTO.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
taskResultDTO.setResult("0");
taskResultDTO.setTaskId(powerStation.getFlowTaskId());
HashMap<String, Object> variableMap = new HashMap<>();
variableMap.put("approvalStatus", "0");
variableMap.put("comment", kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
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);
if (!flag) {
// 更新农户状态
......@@ -501,7 +534,20 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS
// 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;
FeignClientResult<JSONObject> jSONObject = workflowFeignClient.getNodeInfo(flowTaskId);
if (IDX_REQUEST_STATE.equals(String.valueOf(jSONObject.getStatus()))) {
......
......@@ -99,9 +99,11 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
private HygfReplenishmentMapper hygfReplenishmentMapper;
@Autowired
private WorkflowFeignClient workflowFeignClient;
@Autowired
private CommonServiceImpl commonService;
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
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> params = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey(PROCESSKEY);
dto.setProcessDefinitionKey(BusinessTypeEnum.HYGF_FHGL.getCode());
dto.setBusinessKey(String.valueOf(new Date().getTime()));
dto.setCompleteFirstTask(true);
HashMap<String, Object> map = new HashMap<>();
......@@ -664,7 +666,8 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
actWorkflowBatchDTO.setProcess(params);
List<ProcessTaskDTO> processTaskDTOS = workFlowService.startBatch(actWorkflowBatchDTO);
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(processTaskDTOS);
//发起待办
commonService.buildTaskModel(commonService.buildTaskModelDto(model, workflowResultDtos.get(0), BusinessTypeEnum.HYGF_FHGL));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
HygfPreparationMoneyAuditingDto hygfPreparationMoneyAuditingDto = new HygfPreparationMoneyAuditingDto();
BeanUtils.copyProperties(workflowResultDto, hygfPreparationMoneyAuditingDto);
......@@ -748,7 +751,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> params = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey(PROCESSKEY);
dto.setProcessDefinitionKey(BusinessTypeEnum.HYGF_FHGL.getCode());
dto.setBusinessKey(String.valueOf(new Date().getTime()));
dto.setCompleteFirstTask(true);
HashMap<String, Object> map = new HashMap<>();
......@@ -758,7 +761,8 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
actWorkflowBatchDTO.setProcess(params);
List<ProcessTaskDTO> processTaskDTOS = workFlowService.startBatch(actWorkflowBatchDTO);
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(processTaskDTOS);
//发起待办
commonService.buildTaskModel(commonService.buildTaskModelDto(model, workflowResultDtos.get(0), BusinessTypeEnum.HYGF_FHGL));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
HygfPreparationMoneyAuditingDto hygfPreparationMoneyAuditingDto = new HygfPreparationMoneyAuditingDto();
BeanUtils.copyProperties(workflowResultDto, hygfPreparationMoneyAuditingDto);
......@@ -967,7 +971,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
preparationMoneyMapper.updateById(model);
//执行工作流并保存记录 上传收货走入下一节点 表达式=0
this.wofkflowExcute(instanceId, "0","");
this.wofkflowExcute(instanceId, "0","",model);
}
}
......@@ -1010,11 +1014,11 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
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<>();
query.eq(HygfPreparationMoneyAuditing::getInstanceId, instanceId);
query.orderByDesc(BaseEntity::getRecDate);
......@@ -1035,6 +1039,9 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
ProcessTaskDTO processTaskDTO = workFlowService.complete(hygfPreparationMoneyAuditing.getNextTaskId(), task);
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
//更新待办
workflowResultDto.setInstanceId(instanceId);
commonService.updateTaskModelAndAddTask(model,workflowResultDto,BusinessTypeEnum.HYGF_FHGL);
BeanUtils.copyProperties(workflowResultDto, preparationMoneyAuditpDto);
preparationMoneyAuditpDto.setPreparationMoneyId(hygfPreparationMoneyAuditing.getPreparationMoneyId());
preparationMoneyAuditpDto.setPromoter(hygfPreparationMoneyAuditing.getPromoter());
......@@ -1055,7 +1062,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
PreparationMoney preparationMoney = preparationMoneyMapper.selectById(preparationMoneyId);
preparationMoney.setOrderStatus("申请补货");
preparationMoneyMapper.updateById(preparationMoney);
this.wofkflowExcute(auditing.getInstanceId(), "1","");
this.wofkflowExcute(auditing.getInstanceId(), "1","",preparationMoney);
}
......@@ -1077,6 +1084,10 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
ProcessTaskDTO processTaskDTO = workFlowService.rollBackTask(hygfPreparationMoneyAuditing.getInstanceId());
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
workflowResultDto.setInstanceId(hygfPreparationMoneyAuditing.getInstanceId());
//更新待办
workflowResultDto.setInstanceId(preparationMoney.getInstanceId());
commonService.updateTaskModelAndAddTask(preparationMoney,workflowResultDto,BusinessTypeEnum.HYGF_FHGL);
HygfPreparationMoneyAuditingDto preparationMoneyAuditpDto = new HygfPreparationMoneyAuditingDto();
BeanUtils.copyProperties(workflowResultDto, preparationMoneyAuditpDto);
preparationMoneyAuditpDto.setPreparationMoneyId(sequenceNbr);
......@@ -1118,7 +1129,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
preparationMoney.setOrderStatus(DeliveryStateeEnum.待确认.getName());
}
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){
......@@ -1145,7 +1156,7 @@ public class PreparationMoneyServiceImpl extends BaseService<PreparationMoneyDto
model.setDeliveryTime(new Date());
preparationMoneyMapper.updateById(model);
this.wofkflowExcute(instanceId,isSubmit,"");
this.wofkflowExcute(instanceId,isSubmit,"",model);
}
List<DocumentStation> ids = model.getPeasantHouseholdId();
......
......@@ -6,6 +6,8 @@ import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
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.dto.HygfWorkOrderStationAuditingDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto;
......@@ -42,6 +44,8 @@ public class RectificationOrderAuditingServiceImpl extends BaseService<Rectifica
@Autowired
private WorkFlowService workFlowService;
@Autowired
CommonServiceImpl commonService;
private static final String PROCESSKEY = "RectificationAudit";
......@@ -89,6 +93,8 @@ public class RectificationOrderAuditingServiceImpl extends BaseService<Rectifica
rectificationOrderAuditingDto.setRectificationOrder(hygfRectificationOrder.getSequenceNbr());
rectificationOrderAuditingDto.setPromoter(RequestContext.getExeUserId());
this.createWithModel(rectificationOrderAuditingDto);
//发起待办
commonService.buildTaskModel(commonService.buildTaskModelDto(rectificationOrderAuditingDto, workflowResultDto, BusinessTypeEnum.HYGF_ZGDSHLC));
}
}
......@@ -123,6 +129,9 @@ public class RectificationOrderAuditingServiceImpl extends BaseService<Rectifica
rectificationOrderAuditingDto.setInstanceId(rectificationOrderAuditing.getInstanceId());
}
this.createWithModel(rectificationOrderAuditingDto);
//更新待办
workflowResultDto.setInstanceId(rectificationOrderAuditing.getInstanceId());
commonService.updateTaskModelAndAddTask(rectificationOrderAuditing,workflowResultDto,BusinessTypeEnum.HYGF_ZGDSHLC);
}
......
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.util.StrUtil;
import cn.hutool.poi.excel.ExcelReader;
import cn.hutool.poi.excel.ExcelUtil;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.yeejoin.amos.boot.biz.common.utils.DateUtils;
import com.yeejoin.amos.boot.biz.common.utils.ExcelUtils;
import com.yeejoin.amos.boot.module.hygf.api.Enum.*;
import com.yeejoin.amos.boot.module.hygf.api.dto.RepaymentDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.Repayment;
import com.yeejoin.amos.boot.module.hygf.api.mapper.RepaymentMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IRepaymentService;
import com.yeejoin.amos.boot.module.hygf.biz.vo.RepaymentExcelVO;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.privilege.model.CompanyModel;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Scheduled;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import org.typroject.tyboot.core.rdbms.service.BaseService;
import org.typroject.tyboot.core.restful.exception.instance.BadRequest;
import javax.servlet.http.HttpServletResponse;
import java.time.LocalDate;
import java.time.ZoneId;
import java.time.temporal.ChronoUnit;
import java.util.*;
/**
* 还款实现层
*
* @author hzz
* @date 2024-09-26
*/
@Service
public class RepaymentServiceImpl extends BaseService<RepaymentDto, Repayment, RepaymentMapper> implements IRepaymentService {
@Autowired
CommonServiceImpl commonService;
@Autowired
RepaymentMapper repaymentMapper;
public Page<RepaymentDto> queryForRepaymentPage(int current, int size) {
PageHelper.startPage(current, size);
List<RepaymentDto> list = repaymentMapper.queryPage();
PageInfo<RepaymentDto> pages = new PageInfo(list);
List<RepaymentDto> pagesList = pages.getList();
if (CollectionUtil.isNotEmpty(pagesList)) {
//为了前端页面展示
for (RepaymentDto repaymentDto : pagesList) {
repaymentDto.setMessageStateStr(RepaymentMessageStateEnum.getByCode(repaymentDto.getMessageState()).getRemark());
repaymentDto.setRepayStateStr(RepaymentRepayStateEnum.getByCode(repaymentDto.getMessageState()).getRemark());
}
}
Page<RepaymentDto> page = new Page<>();
page.setCurrent(current);
page.setTotal(pages.getTotal());
page.setSize(size);
page.setRecords(pages.getList());
return page;
}
@Transactional(rollbackFor = Exception.class)
public void batchConfirmMessageState(List<Long> sequenceNbrList) {
if (CollectionUtil.isNotEmpty(sequenceNbrList)) {
LambdaUpdateWrapper<Repayment> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.set(Repayment::getMessageState, RepaymentMessageStateEnum.CONFIRM.getCode())
.set(Repayment::getCronSendState, RepaymentCronSendStateEnum.UN_SEND.getCode())
.in(Repayment::getSequenceNbr, sequenceNbrList);
this.update(updateWrapper);
for (Long sequenceNbr : sequenceNbrList) {
//更新工作台信息
updateTaskModel(String.valueOf(sequenceNbr));
}
}
}
@Transactional(rollbackFor = Exception.class)
public void batchRepay(List<Long> sequenceNbrList) {
if (CollectionUtil.isNotEmpty(sequenceNbrList)) {
LambdaUpdateWrapper<Repayment> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.set(Repayment::getRepayState, RepaymentRepayStateEnum.REPAY.getCode())
.in(Repayment::getSequenceNbr, sequenceNbrList);
this.update(updateWrapper);
}
}
@Transactional(rollbackFor = Exception.class)
public void confirmMessageState(Long sequenceNbr) {
LambdaUpdateWrapper<Repayment> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.set(Repayment::getMessageState, RepaymentMessageStateEnum.CONFIRM.getCode())
.set(Repayment::getCronSendState, RepaymentCronSendStateEnum.UN_SEND.getCode())
.eq(Repayment::getSequenceNbr, sequenceNbr);
this.update(updateWrapper);
//更新工作台信息
updateTaskModel(String.valueOf(sequenceNbr));
}
/**
* 更新工作台信息
* @param sequenceNbr
*/
@Transactional(rollbackFor = Exception.class)
private void updateTaskModel(String sequenceNbr) {
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", sequenceNbr);
updateTaskParam.put("relationId", sequenceNbr);
commonService.updateTaskModel(updateTaskParam);
}
@Transactional(rollbackFor = Exception.class)
public void repay(Long sequenceNbr) {
LambdaUpdateWrapper<Repayment> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.set(Repayment::getRepayState, RepaymentRepayStateEnum.REPAY.getCode())
.eq(Repayment::getSequenceNbr, sequenceNbr);
this.update(updateWrapper);
}
/**
* 定时发送还款信息 15天发送、5天发送、当天发送
*/
@Scheduled(cron = "0 0 1 * * ?")
public void cronSendRepayMessage() {
List<Repayment> repaymentList = list();
if (CollectionUtil.isNotEmpty(repaymentList)) {
for (Repayment repayment : repaymentList) {
//此处拿出还款日期进行对比15天发送、5天发送、当天发送
LocalDate repayDate = repayment.getRepayDate();
LocalDate now = LocalDate.now();
long betweenDay = ChronoUnit.DAYS.between(now, repayDate);
Boolean dateSend = betweenDay == 15 || betweenDay == 5 || betweenDay == 0;
if (dateSend && repayment.getCronSendState() == RepaymentCronSendStateEnum.SEND.getCode()) {
//生成待办
WorkflowResultDto workflowResultDto = new WorkflowResultDto();
workflowResultDto.setInstanceId(String.valueOf(repayment.getSequenceNbr()));
commonService.buildTaskModel(commonService.buildTaskModelDto(repayment, workflowResultDto, BusinessTypeEnum.HYGF_REPAY));
}
if (repayment.getCronSendState() < 0) {
//关闭定时任务
LambdaUpdateWrapper<Repayment> updateWrapper = new LambdaUpdateWrapper<>();
updateWrapper.set(Repayment::getCronSendState, RepaymentCronSendStateEnum.UN_SEND.getCode())
.eq(Repayment::getSequenceNbr, repayment.getSequenceNbr());
this.update(updateWrapper);
}
}
}
}
@Transactional(rollbackFor = Exception.class)
public void importRepaymentExcel(MultipartFile file, AgencyUserModel userInfo) {
//获取当前用户权限的公司
try {
List<CompanyModel> companys = userInfo.getCompanys();
if (CollectionUtil.isEmpty(companys)) {
throw new BadRequest("该用户没有公司");
}
ExcelReader reader = ExcelUtil.getReader(file.getInputStream());
List<List<Object>> read = reader.read(1);
List<Repayment> repaymentList = new ArrayList<>();
for (List<Object> objects : read) {
if (objects.size() != 7) {
throw new BadRequest("模板列不是7个");
}
Repayment repayment = new Repayment();
String companyName = (String) objects.get(0);
for (CompanyModel company : companys) {
if (company.getCompanyName().equals(companyName)) {
repayment.setCompanyName(companyName);
repayment.setCompanyId(company.getSequenceNbr());
repayment.setRegionalCompaniesCode(String.valueOf(company.getCompanyOrgCode()));
}
}
if (StrUtil.isEmpty(repayment.getCompanyName())) {
throw new BadRequest(companyName + ",该用户没有权限");
}
String period = (String) objects.get(1);
String repayDate = (String) objects.get(2);
String rent = (String) objects.get(3);
String interest = (String) objects.get(4);
String principal = (String) objects.get(5);
String loanPeriod = (String) objects.get(6);
repayment.setMessageState(RepaymentMessageStateEnum.UN_CONFIRM.getCode());
repayment.setCronSendState(RepaymentCronSendStateEnum.SEND.getCode());
repayment.setRepayState(RepaymentRepayStateEnum.UN_REPAY.getCode());
repayment.setPeriod(period);
repayment.setRepayDate(DateUtils.dateParse(repayDate).toInstant()
.atZone(ZoneId.systemDefault())
.toLocalDate());
repayment.setRent(Double.valueOf(rent));
repayment.setInterest(Double.valueOf(interest));
repayment.setPrincipal(Double.valueOf(principal));
repayment.setLoanPeriod(loanPeriod);
repaymentList.add(repayment);
}
try {
saveBatch(repaymentList);
} catch (Exception exception) {
throw new BadRequest("有重复数据请检查");
}
} catch (Exception e) {
log.error(e.getMessage(), e);
throw new BadRequest("导入失败,失败原因[" + e.getMessage() + "]");
}
}
public void exportRepaymentExcel(List<Long> sequenceNbrList, HttpServletResponse response) {
LambdaQueryWrapper<Repayment> wrapper = new LambdaQueryWrapper<>();
//如果是空值导出全部
if (CollectionUtil.isNotEmpty(sequenceNbrList)) {
wrapper.in(Repayment::getSequenceNbr, sequenceNbrList);
}
List<Repayment> repaymentList = list(wrapper);
if (CollectionUtil.isNotEmpty(repaymentList)) {
List<RepaymentExcelVO> dataList = new ArrayList<>();
for (Repayment repayment : repaymentList) {
RepaymentExcelVO repaymentExcelVO = BeanUtil.copyProperties(repayment, RepaymentExcelVO.class);
dataList.add(repaymentExcelVO);
}
try {
ExcelUtils.exportExcel(dataList, null, "还款管理", RepaymentExcelVO.class, "还款管理" + DateUtils.dateFormat(new Date(), "YYYY-MM-dd-HH-mm") + ".xlsx", response);
} catch (Exception e) {
log.error(e.getMessage(), e);
throw new BadRequest("导出失败,失败原因[" + e.getMessage() + "]");
}
}
}
}
......@@ -25,6 +25,10 @@ import com.yeejoin.amos.component.robot.AmosRequestContext;
import com.yeejoin.amos.feign.privilege.model.AgencyUserModel;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.RegionModel;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
import com.yeejoin.amos.feign.workflow.model.ProcessTaskDTO;
import com.yeejoin.amos.feign.workflow.model.TaskResultDTO;
import lombok.extern.slf4j.Slf4j;
import org.apache.commons.lang3.BooleanUtils;
import org.apache.commons.lang3.ObjectUtils;
......@@ -131,12 +135,16 @@ public class SurveyInformationServiceImpl
AmosRequestContext requestContext;
@Resource(type = RedisLockUtil.class)
private RedisLockUtil redisLockUtil;
// @Autowired
// WorkflowImpl workflow;
@Autowired
WorkflowImpl workflow;
WorkFlowService workFlowService;
@Autowired
CommonServiceImpl commonService;
@Autowired
HygfRectificationOrderServiceImpl rectificationOrderService;
private static final String PROCESSKEY = "ProcessEngineering";
@Autowired
AcceptanceCheckMapper acceptanceCheckMapper;
/**
......@@ -344,6 +352,17 @@ public class SurveyInformationServiceImpl
return code;
}
private void updateSurveyInformationTask(PowerStation powerStation, String instanceId) {
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", instanceId);
commonService.updateTaskModel(updateTaskParam);
}
private void submitExamine(PeasantHousehold peasantHousehold) {
PowerStation powerStation = powerStationService.getObjByNhId(String.valueOf(peasantHousehold.getSequenceNbr()),
......@@ -357,30 +376,55 @@ public class SurveyInformationServiceImpl
try {
BasicGridAcceptance basicGridAcceptance = new BasicGridAcceptance();
if (ObjectUtils.isNotEmpty(powerStation)) {
// 工作流执行一步
// taskId = powerStation.getTaskId();
StandardDto standardDto = new StandardDto();
standardDto.setResult("0");
standardDto.setTaskId(powerStation.getFlowTaskId());
VariableDto variable = new VariableDto();
variable.setApprovalStatus("0");
standardDto.setVariable(variable);
workflow.standard(basicGridAcceptance, standardDto, requestContext.getUserId());
} else {
// 第一步启动工作流
// 发起工作流
// 调用工作流执行第一个节点
ProcessDto processDto = new ProcessDto();
processDto.setBusinessKey(String.valueOf(peasantHousehold.getSequenceNbr()));
processDto.setProcessDefinitionKey("hygf_10001");
StartProcessDto startProcessDto = new StartProcessDto();
List<ProcessDto> process = new ArrayList<>();
process.add(processDto);
startProcessDto.setProcess(process);
workflow.startProcess(basicGridAcceptance, startProcessDto, requestContext.getUserId());
powerStation = new PowerStation();
}
List<ProcessTaskDTO> processTaskDTOS = new ArrayList();
if (ObjectUtils.isNotEmpty(powerStation)) {
// 工作流执行一步
// taskId = powerStation.getTaskId();
// StandardDto standardDto = new StandardDto();
// standardDto.setResult("0");
// standardDto.setTaskId(powerStation.getFlowTaskId());
// VariableDto variable = new VariableDto();
// variable.setApprovalStatus("0");
// standardDto.setVariable(variable);
// workflow.standard(basicGridAcceptance, standardDto, requestContext.getUserId());
//执行流程
TaskResultDTO taskResultDTO = new TaskResultDTO();
taskResultDTO.setResult("0");
taskResultDTO.setTaskId(powerStation.getFlowTaskId());
HashMap<String, Object> variableMap = new HashMap<>();
variableMap.put("approvalStatus", "0");
taskResultDTO.setVariable(variableMap);
ProcessTaskDTO processTaskDTO = workFlowService.standard(basicGridAcceptance, taskResultDTO, requestContext.getUserId());
basicGridAcceptance.setInstanceId(powerStation.getProcessInstanceId());
updateSurveyInformationTask(powerStation, powerStation.getProcessInstanceId());
processTaskDTOS.add(processTaskDTO);
} else {
// 第一步启动工作流
// 发起工作流
// 调用工作流执行第一个节点
// ProcessDto processDto = new ProcessDto();
// processDto.setBusinessKey(String.valueOf(peasantHousehold.getSequenceNbr()));
// processDto.setProcessDefinitionKey("hygf_10001");
// StartProcessDto startProcessDto = new StartProcessDto();
// List<ProcessDto> process = new ArrayList<>();
// process.add(processDto);
// startProcessDto.setProcess(process);
// workflow.startProcess(basicGridAcceptance, startProcessDto, requestContext.getUserId());
//开启工作流 并执行一步
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey(BusinessTypeEnum.HYGF_DZ_SH.getCode());
dto.setBusinessKey(String.valueOf(peasantHousehold.getSequenceNbr()));
dto.setCompleteFirstTask(true);
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
processTaskDTOS = workFlowService.startBatch(actWorkflowBatchDTO);
basicGridAcceptance = workFlowService.getBasicGridAcceptance(basicGridAcceptance, processTaskDTOS, requestContext.getUserId());
powerStation = new PowerStation();
}
peasantHousehold.setSurveyOrNot(2);
peasantHousehold.setReview(1);
// 插入记录表
......@@ -413,7 +457,10 @@ public class SurveyInformationServiceImpl
long idsk = peasantHousehold.getSequenceNbr();
up.eq(PeasantHousehold::getSequenceNbr, idsk);
peasantHouseholdMapper.update(null, up);
//添加待办
WorkflowResultDto workflowResultDto = workFlowService.buildWorkFlowInfo(processTaskDTOS).get(0);
workflowResultDto.setInstanceId(powerStation.getProcessInstanceId());
commonService.buildTaskModel(commonService.buildTaskModelDto(powerStation, workflowResultDto, BusinessTypeEnum.HYGF_DZ_SH));
} catch (Exception e) {
e.printStackTrace();
log.error("submitExamine error:", e);
......@@ -634,7 +681,7 @@ public class SurveyInformationServiceImpl
up2.eq(PowerStationConstructionData::getWorkOrderPowerStationId, workOrderPowerStationId);
PowerStationConstructionData powerStationConstructionData = powerStationConstructionDataMapper
.selectOne(up2);
//增加整改单数据
List<HygfRectificationOrder> hygfRectificationOrders = rectificationOrderService.selectForListBySource(String.valueOf(peasantHousehold.getSequenceNbr()), PROCESSKEY);
if (CollectionUtil.isNotEmpty(hygfRectificationOrders)){
......@@ -645,8 +692,8 @@ public class SurveyInformationServiceImpl
powerStationConstructionData.setEngineeringOrders(engineeringOrders.size()>0?engineeringOrders:null);
powerStationConstructionData.setDesignOrders(designOrders.size()>0?designOrders:null);
}
// 工程信息
LambdaQueryWrapper<PowerStationEngineeringInfo> up3 = new LambdaQueryWrapper();
......@@ -675,7 +722,7 @@ public class SurveyInformationServiceImpl
up4.eq(HygfOnGrid::getWorkOrderId, workOrderId);
up4.eq(HygfOnGrid::getWorkOrderPowerStationId, workOrderPowerStationId);
HygfOnGrid hygfOnGrid = hygfOnGridMapper.selectOne(up4);
//增加整改单数据
List<HygfRectificationOrder> hygfRectificationOrderList= rectificationOrderService.selectForListBySource(String.valueOf(peasantHousehold.getSequenceNbr()), RectificationOrderEnum.并网.getName());
if (CollectionUtil.isNotEmpty(hygfRectificationOrderList)){
......@@ -686,7 +733,7 @@ public class SurveyInformationServiceImpl
hygfOnGrid.setEngineeringOrders(engineeringOrders.size()>0?engineeringOrders:null);
hygfOnGrid.setDesignOrders(designOrders.size()>0?designOrders:null);
}
surveyInfoAllDto.setHygfOnGrid(hygfOnGrid != null ? hygfOnGrid : new HygfOnGrid());
surveyInfoAllDto
.setPowerStationConstructionData(powerStationConstructionData != null ? powerStationConstructionData
......@@ -695,19 +742,19 @@ public class SurveyInformationServiceImpl
.setPowerStationEngineeringInfo(powerStationEngineeringInfo != null ? powerStationEngineeringInfo
: new PowerStationEngineeringInfo());
surveyInfoAllDto.setWorkOrder(workOrder != null ? workOrder : new WorkOrder());
} else {
surveyInfoAllDto.setHygfOnGrid(new HygfOnGrid());
surveyInfoAllDto.setPowerStationConstructionData(new PowerStationConstructionData());
surveyInfoAllDto.setPowerStationEngineeringInfo(new PowerStationEngineeringInfo());
surveyInfoAllDto.setWorkOrder(new WorkOrder());
}
//验收信息
LambdaQueryWrapper<AcceptanceCheck> quv1 = new LambdaQueryWrapper<AcceptanceCheck>();
quv1.eq(AcceptanceCheck::getPeasantHouseholdId, peasantHouseholdId);
AcceptanceCheck acceptanceCheck = acceptanceCheckMapper.selectOne(quv1);
//增加整改单数据
List<HygfRectificationOrder> hygfRectificationOrderListYs= rectificationOrderService.selectForListBySource(String.valueOf(peasantHousehold.getSequenceNbr()), RectificationOrderEnum.验收.getName());
if (CollectionUtil.isNotEmpty(hygfRectificationOrderListYs)){
......@@ -754,8 +801,8 @@ public class SurveyInformationServiceImpl
e.printStackTrace();
}
}
return surveyInfoAllDto;
}
......
package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
......@@ -10,7 +11,9 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
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.DealerReviewEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.FlowStatusEnum;
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.fegin.IdxFeginService;
......@@ -29,6 +32,10 @@ import com.yeejoin.amos.feign.privilege.model.RoleModel;
import com.yeejoin.amos.feign.systemctl.Systemctl;
import com.yeejoin.amos.feign.systemctl.model.RegionModel;
import com.yeejoin.amos.feign.systemctl.model.SmsRecordModel;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowBatchDTO;
import com.yeejoin.amos.feign.workflow.model.ActWorkflowStartDTO;
import com.yeejoin.amos.feign.workflow.model.ProcessTaskDTO;
import com.yeejoin.amos.feign.workflow.model.TaskResultDTO;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -129,8 +136,14 @@ public class UnitInfoServiceImpl extends BaseService<UnitInfoDto,UnitInfo,UnitIn
@Autowired
PersonnelBusinessMapper personnelBusinessMapper;
// @Autowired
// WorkflowImpl workflow;
@Autowired
WorkflowImpl workflow;
WorkFlowService workFlowService;
@Autowired
CommonServiceImpl commonService;
@Autowired
AmosRequestContext amosRequestContext;
@Autowired
UserEmpowerMapper userEmpowerMapper;
......@@ -492,15 +505,27 @@ public class UnitInfoServiceImpl extends BaseService<UnitInfoDto,UnitInfo,UnitIn
//发起工作流
// 调用工作流执行第一个节点
ProcessDto processDto = new ProcessDto();
processDto.setBusinessKey(String.valueOf(regUnitInfo.getSequenceNbr()));
processDto.setProcessDefinitionKey("JXS_SH");
StartProcessDto startProcessDto = new StartProcessDto();
List<ProcessDto> process=new ArrayList<>();
process.add(processDto);
startProcessDto.setProcess(process);
// ProcessDto processDto = new ProcessDto();
// processDto.setBusinessKey(String.valueOf(regUnitInfo.getSequenceNbr()));
// processDto.setProcessDefinitionKey("JXS_SH");
// StartProcessDto startProcessDto = new StartProcessDto();
// List<ProcessDto> process=new ArrayList<>();
// process.add(processDto);
// startProcessDto.setProcess(process);
BasicGridAcceptance basicGridAcceptance=new BasicGridAcceptance();
workflow.startProcessnew(AMOS_STUDIO, AMOS_STUDIO_WEB,requestContext.getToken(),basicGridAcceptance, startProcessDto,requestContext.getUserId());
// workflow.startProcessnew(AMOS_STUDIO, AMOS_STUDIO_WEB,requestContext.getToken(),basicGridAcceptance, startProcessDto,requestContext.getUserId());
//开启工作流 并执行一步
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
List<ActWorkflowStartDTO> list = new ArrayList<>();
ActWorkflowStartDTO dto = new ActWorkflowStartDTO();
dto.setProcessDefinitionKey(BusinessTypeEnum.HYGF_JXS_SH.getCode());
dto.setBusinessKey(String.valueOf(regUnitInfo.getSequenceNbr()));
dto.setCompleteFirstTask(true);
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
List<ProcessTaskDTO> processTaskDTOS = workFlowService.startBatchNew(amosRequestContext.getAppKey(), amosRequestContext.getProduct(), amosRequestContext.getToken(), actWorkflowBatchDTO);
workFlowService.getBasicGridAcceptance(basicGridAcceptance, processTaskDTOS, amosRequestContext.getUserId());
// 插入记录表
dealerReview.setPlanInstanceId(planId);
dealerReview.setUnitInfoId(regUnitInfo.getSequenceNbr());
......@@ -509,7 +534,10 @@ public class UnitInfoServiceImpl extends BaseService<UnitInfoDto,UnitInfo,UnitIn
dealerReview.setFlowTaskId(basicGridAcceptance.getNextTaskId());
dealerReview.setNodeRole(basicGridAcceptance.getNextExecutorIds());
dealerReview.setNextProcessNode(DealerReviewEnum.经销商管理员审核.getCode());
dealerReviewService.saveDealerReview(dealerReview,true,false,regUnitInfo.getName(),"任务明细:经销商已上传信息");
dealerReviewService.saveDealerReview(dealerReview, true, false, regUnitInfo.getName(), "任务明细:经销商已上传信息");
//添加待办
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(processTaskDTOS);
commonService.buildTaskModel(commonService.buildTaskModelDto(dealerReview, workflowResultDtos.get(0), BusinessTypeEnum.HYGF_JXS_SH));
} catch (Exception e){
throw new BaseException("获取工作流节点失败!","400","获取工作流节点失败!");
......@@ -645,23 +673,38 @@ public class UnitInfoServiceImpl extends BaseService<UnitInfoDto,UnitInfo,UnitIn
//执行工作流
BasicGridAcceptance basicGridAcceptance=new BasicGridAcceptance();
StandardDto standardDto = new StandardDto();
standardDto.setComment(kv.get("approvalInfo")!=null?String.valueOf(kv.get("approvalInfo")):"");
standardDto.setResult(String.valueOf(kv.get("approvalStatus")));
standardDto.setTaskId(dealerReview.getFlowTaskId());
VariableDto variable = new VariableDto();
variable.setApprovalStatus(String.valueOf(kv.get("approvalStatus")));
variable.setComment(kv.get("approvalInfo")!=null?String.valueOf(kv.get("approvalInfo")):"");
variable.setOperationTime(String.valueOf(kv.get("approveDate")));
variable.setOperator(String.valueOf(kv.get("approveName")));
standardDto.setVariable(variable);
BasicGridAcceptance workBasicGridAcceptance = workflow.standard(basicGridAcceptance, standardDto, requestContext.getUserId());
// StandardDto standardDto = new StandardDto();
// standardDto.setComment(kv.get("approvalInfo")!=null?String.valueOf(kv.get("approvalInfo")):"");
// standardDto.setResult(String.valueOf(kv.get("approvalStatus")));
// standardDto.setTaskId(dealerReview.getFlowTaskId());
// VariableDto variable = new VariableDto();
// variable.setApprovalStatus(String.valueOf(kv.get("approvalStatus")));
// variable.setComment(kv.get("approvalInfo")!=null?String.valueOf(kv.get("approvalInfo")):"");
// variable.setOperationTime(String.valueOf(kv.get("approveDate")));
// variable.setOperator(String.valueOf(kv.get("approveName")));
// standardDto.setVariable(variable);
// BasicGridAcceptance workBasicGridAcceptance = workflow.standard(basicGridAcceptance, standardDto, requestContext.getUserId());
//执行工作流
TaskResultDTO taskResultDTO = new TaskResultDTO();
taskResultDTO.setComment(kv.get("approvalInfo") != null ? String.valueOf(kv.get("approvalInfo")) : "");
taskResultDTO.setResult(String.valueOf(kv.get("approvalStatus")));
taskResultDTO.setTaskId(dealerReview.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, amosRequestContext.getUserId());
dealerReview.setFlowTaskId(basicGridAcceptance.getNextTaskId());
dealerReviewService.saveDealerReview(dealerReview,false,true,unitInfo.getName(),approvalStatue);
this.saveOrUpdate(unitInfo);
//更新待办
WorkflowResultDto workflowResultDto = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO)).get(0);
workflowResultDto.setInstanceId(dealerReview.getProcessInstanceId());
updateUnitInfoTask(unitInfo, workflowResultDto);
}catch (Exception e){
......@@ -802,6 +845,18 @@ public class UnitInfoServiceImpl extends BaseService<UnitInfoDto,UnitInfo,UnitIn
return code;
}
private void updateUnitInfoTask(UnitInfo unitInfo, 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", unitInfo);
updateTaskParam.put("relationId", workflowResultDto.getInstanceId());
commonService.updateTaskModel(updateTaskParam);
commonService.buildTaskModel((commonService.buildTaskModelDto(unitInfo, workflowResultDto, BusinessTypeEnum.HYGF_JXS_SH)));
}
@Override
public IPage<CompanyDto> getCompanyDto(CompanyDto dto) {
//列表数据组装
......
......@@ -2,10 +2,10 @@ package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import com.alibaba.fastjson.JSONObject;
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.component.feign.utils.FeignUtil;
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 lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
......@@ -13,7 +13,9 @@ import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Objects;
import java.util.stream.Collectors;
......@@ -39,6 +41,21 @@ public class WorkFlowService {
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) {
ProcessInstanceDTO processInstanceDTO ;
......@@ -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 {
String nextUserIdsString = String.join(",", nextUserIds);
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);
});
return workflowResultDtoList;
......@@ -142,4 +180,108 @@ public class WorkFlowService {
});
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
BasicGridAcceptanceServiceImpl basicGridAcceptanceService;
@Autowired
AcceptanceCheckServiceImpl acceptanceCheckService;
@Autowired
CommonServiceImpl commonService;
private static final String PROCESSKEY = "ProcessEngineering";
......@@ -378,6 +380,8 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
hygfWorkOrderStationAuditingDto.setWorkOrderPowerStationId(powerStationConstructionData.getWorkOrderPowerStationId());
hygfWorkOrderStationAuditingDto.setPromoter(RequestContext.getExeUserId());
hygfWorkOrderStationAuditingService.createWithModel(hygfWorkOrderStationAuditingDto);
//发起待办
commonService.buildTaskModel(commonService.buildTaskModelDto(hygfWorkOrderStationAuditingDto, workflowResultDto, BusinessTypeEnum.HYGF_SGLCSH));
}else {
this.wofkflowExcute(workOrderStationAuditing.getInstanceId(),"0","通过",BusinessWorkflowKey.施工完成提交.getCode());
}
......@@ -512,6 +516,9 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, W
workOrderStationAuditingDto.setInstanceId(hygfWorkOrderStationAuditing.getInstanceId());
}
hygfWorkOrderStationAuditingService.createWithModel(workOrderStationAuditingDto);
//更新待办
workflowResultDto.setInstanceId(hygfWorkOrderStationAuditing.getInstanceId());
commonService.updateTaskModelAndAddTask(hygfWorkOrderStationAuditing,workflowResultDto,BusinessTypeEnum.HYGF_SGLCSH);
}
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 {
TdengineTimeServiceImpl tdengineTimeService;
@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")
@PostMapping("/saveTest")
public void saveTest() {
......
......@@ -2,7 +2,7 @@ spring.application.name=AMOS-JXIOP-BIGSCREEN-CZ
server.servlet.context-path=/jxiop-bigscreen
server.port=33300
server.uri-encoding=UTF-8
spring.profiles.active=dev1
spring.profiles.active=kingbase8
spring.jackson.time-zone=GMT+8
spring.jackson.date-format=yyyy-MM-dd HH:mm:ss
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