Commit ee3135e3 authored by chenzhao's avatar chenzhao

修改投融资bug

parent 66e1659c
package com.yeejoin.amos.boot.module.hygf.api.mapper;
import com.yeejoin.amos.boot.module.hygf.api.config.UserEmpower;
import com.yeejoin.amos.boot.module.hygf.api.dto.FinancingInfoDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.FinancingInfo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
......@@ -15,7 +16,7 @@ import java.util.Map;
* @date 2024-04-01
*/
public interface FinancingInfoMapper extends BaseMapper<FinancingInfo> {
@UserEmpower(field = {"hph.regional_companies_code"},dealerField = {"hph.developer_code","hph.regional_companies_code"},fieldConditions = {"eq","in"},relationship = {"and"})
List<Map<String,Object>> getStationFinancingInfoList(@Param(value = "params") Map<String,Object> params,@Param(value = "amosOrgCodes")List<String> amosOrgCodes);
......
......@@ -19,7 +19,7 @@
`hygf_peasant_household` hph
LEFT JOIN hygf_financing_info info ON info.peasant_household_id = hph.sequence_nbr
LEFT JOIN hygf_unit_info on hph.developer_code = hygf_unit_info.amos_company_code
WHERE
<where>
hph.construction_state = '验收完成'
<if test="params.ownersName != null and params.ownersName !=''">
and hph.owners_name like concat('%',#{params.ownersName},'%')
......@@ -27,25 +27,17 @@
<if test="params.regionalCompaniesCode != null and params.regionalCompaniesCode !=''">
and hph.regional_companies_code = #{params.regionalCompaniesCode}
</if>
<if test="params.type == 1 ">
and hph.regional_companies_code in
<foreach collection="amosOrgCodes" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
<if test="params.type == 2 ">
and info.status in ('待融资审核','审核通过','放款完成' ) and info.financing_companies_seq = #{params.financingCompaniesSeq}
</if>
<if test="params.type == 3 ">
and info.status in ('待整改')
and hph.regional_companies_code in
<foreach collection="amosOrgCodes" item="item" open="(" close=")" separator=",">
#{item}
</foreach>
</if>
<if test="params.status != null and params.status != ''">
and info.status = #{params.status}
</if>
</where>
order by info.rec_date desc
</select>
<select id="selectDataInfo" resultType="com.yeejoin.amos.boot.module.hygf.api.dto.FinancingInfoDto">
SELECT
......
......@@ -8,7 +8,7 @@
hfro.sequence_nbr,
hfro.peasant_household_id,
hfro.rectification_status,
hph.owners_name,
hph.peasant_household_name,
hph.peasant_household_no,
project_address_name as projectAddress
from
......
......@@ -94,6 +94,14 @@ public class FinancingRectificationOrderController extends BaseController {
return ResponseHelper.buildResponse(dto);
}
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/problemDescription/{peasantHouseholdId}")
@ApiOperation(httpMethod = "GET",value = "获取整改问题", notes = "获取整改问题")
public ResponseModel<String> getProblemDescription(@PathVariable Long peasantHouseholdId) {
return ResponseHelper.buildResponse(financingRectificationOrderServiceImpl.getProblemDescription(peasantHouseholdId));
}
/**
* 列表分页查询
*
......
......@@ -145,7 +145,7 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto,Finan
dto.setCompleteFirstTask(true);
//工作流程图第一步执行后存在互斥网关 isFlag为表达式 默认为1执行到融资审核
HashMap<String, Object> map = new HashMap<>();
map.put("isFlag","1");
map.put("isFlag","0");
dto.setVariables(map);
list.add(dto);
actWorkflowBatchDTO.setProcess(list);
......@@ -157,7 +157,6 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto,Finan
BeanUtils.copyProperties(workflowResultDto,financingAuditingDto);
financingAuditingDto.setPeasantHouseholdId(Long.valueOf(e));
financingAuditingDto.setPromoter(RequestContext.getExeUserId());
financingAuditingDto.setStatus("已提交");
financingAuditingService.createWithModel(financingAuditingDto);
});
......@@ -195,7 +194,7 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto,Finan
@Transactional
public void execueFlow(Map<String, Object> params) {
LambdaQueryWrapper<FinancingAuditing> query = new LambdaQueryWrapper<>();
query.eq(FinancingAuditing::getInstanceId,params.get("instanceId").toString());
query.eq(FinancingAuditing::getInstanceId, params.get("instanceId").toString());
query.orderByDesc(BaseEntity::getRecDate);
query.last("limit 1");
FinancingAuditing financingAuditing = financingAuditingService.getBaseMapper().selectOne(query);
......@@ -204,75 +203,72 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto,Finan
TaskResultDTO task = new TaskResultDTO();
task.setTaskId(financingAuditing.getNextTaskId());
task.setComment(params.getOrDefault("comments","").toString());
HashMap<String, Object> map = new HashMap<>();
FinancingAuditingDto financingAuditingDto = new FinancingAuditingDto();
//此处是工作流网关路线原因 相同参数存在工作流不知道怎么执行报错问题 暂未排除问题 先修改不同表达式
if (params.containsKey("isFlag")){
financingAuditingDto.setStatus(params.get("isFlag").equals("0")?"已退回":"");
if (params.containsKey("isFlag")) {
task.setResultCode("isFlag");
map.put("isFlag",params.get("isFlag"));
}else {
map.put("isFlag", params.get("isFlag"));
params.put("comments","退回整改");
} else {
task.setResultCode("approvalStatus");
financingAuditingDto.setStatus(params.get("approvalStatus").equals("0")?"已同意":"已驳回");
map.put("approvalStatus",params.get("approvalStatus"));
map.put("approvalStatus", params.get("approvalStatus"));
}
task.setComment(params.getOrDefault("comments", "").toString());
task.setVariable(map);
//执行流程
ProcessTaskDTO processTaskDTO = workFlowService.complete(financingAuditing.getNextTaskId(), task);
List<WorkflowResultDto> workflowResultDtos = workFlowService.buildWorkFlowInfo(CollectionUtil.newArrayList(processTaskDTO));
WorkflowResultDto workflowResultDto = workflowResultDtos.get(0);
BeanUtils.copyProperties(workflowResultDto,financingAuditingDto);
BeanUtils.copyProperties(workflowResultDto, financingAuditingDto);
financingAuditingDto.setPeasantHouseholdId(financingAuditing.getPeasantHouseholdId());
financingAuditingDto.setPromoter(financingAuditing.getPromoter());
if (null == financingAuditingDto.getInstanceId()){
if (null == financingAuditingDto.getInstanceId()) {
financingAuditingDto.setInstanceId(financingAuditing.getInstanceId());
}
if (params.containsKey("isZG")) {
financingAuditingDto.setStatus("已提交");
}
financingAuditingDto.setStatus(params.getOrDefault("comments", "").toString());
financingAuditingDto.setNodeRouting(FinancingAuditEnum.getNodeByCode(workflowResultDto.getNextNodeKey()));
financingAuditingService.createWithModel(financingAuditingDto);
String nameByCode = FinancingAuditEnum.getNameByCode(workflowResultDto.getNextNodeKey());
String statusName = nameByCode == null || nameByCode.equals("") ?"放款完成":nameByCode;
String statusName = nameByCode == null || nameByCode.equals("") ? "放款完成" : nameByCode;
LambdaQueryWrapper<FinancingInfo> info = new LambdaQueryWrapper<>();
info.eq(FinancingInfo::getPeasantHouseholdId,financingAuditing.getPeasantHouseholdId());
info.eq(FinancingInfo::getPeasantHouseholdId, financingAuditing.getPeasantHouseholdId());
FinancingInfo financingInfo = this.getBaseMapper().selectOne(info);
//标识对于整改待推送状态
if (params.containsKey("isZG")){
if (params.containsKey("isZG")) {
financingInfo.setStatus("整改待推送");
}else {
} else {
financingInfo.setStatus(statusName);
}
this.updateById(financingInfo);
//节点为待整改时生成整改单
if (params.containsKey("isFlag")&& params.get("isFlag").equals("0") && workflowResultDto.getNextNodeKey().equals(FinancingAuditEnum.待整改.getCode())){
if (params.containsKey("isFlag") && params.get("isFlag").equals("1") && workflowResultDto.getNextNodeKey().equals(FinancingAuditEnum.待整改.getCode())) {
LambdaQueryWrapper<FinancingRectificationOrder> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(FinancingRectificationOrder::getPeasantHouseholdId,financingInfo.getPeasantHouseholdId());
queryWrapper.eq(FinancingRectificationOrder::getPeasantHouseholdId, financingInfo.getPeasantHouseholdId());
queryWrapper.orderByDesc(BaseEntity::getRecDate);
queryWrapper.last("limit 1");
FinancingRectificationOrder oldData = financingRectificationOrderService.getBaseMapper().selectOne(queryWrapper);
FinancingRectificationOrder financingRectificationOrder = new FinancingRectificationOrder();
//若存在历史整改单 将历史整改单数据同步至新整改单 便于修改
if (ObjectUtils.isNotEmpty(oldData)){
BeanUtils.copyProperties(oldData,financingRectificationOrder);
if (ObjectUtils.isNotEmpty(oldData)) {
BeanUtils.copyProperties(oldData, financingRectificationOrder);
financingRectificationOrder.setSequenceNbr(null);
financingRectificationOrder.setCompleteDate(null);
}
financingRectificationOrder.setRectificationOrderCode(String.valueOf(new Date().getTime()));
financingRectificationOrder.setRectificationStatus("待整改");
financingRectificationOrder.setProblemDescription(params.getOrDefault("problemDescription","").toString());
financingRectificationOrder.setPeasantHouseholdName(params.getOrDefault("peasantHouseholdName","").toString());
financingRectificationOrder.setRectificationDescription(params.getOrDefault("rectificationDescription","").toString());
financingRectificationOrder.setPeasantHouseholdId(financingInfo.getPeasantHouseholdId() );
financingRectificationOrder.setResponsibleUserName(params.getOrDefault("responsibleUserName","").toString());
financingRectificationOrder.setResponsibleUserPhone(params.getOrDefault("responsibleUserPhone","").toString());
financingRectificationOrder.setProblemDescription(params.getOrDefault("problemDescription", "").toString());
financingRectificationOrder.setPeasantHouseholdName(params.getOrDefault("peasantHouseholdName", "").toString());
financingRectificationOrder.setRectificationDescription(params.getOrDefault("rectificationDescription", "").toString());
financingRectificationOrder.setPeasantHouseholdId(financingInfo.getPeasantHouseholdId());
financingRectificationOrder.setResponsibleUserName(params.getOrDefault("responsibleUserName", "").toString());
financingRectificationOrder.setResponsibleUserPhone(params.getOrDefault("responsibleUserPhone", "").toString());
financingRectificationOrderService.save(financingRectificationOrder);
}
......
......@@ -3,9 +3,12 @@ package com.yeejoin.amos.boot.module.hygf.biz.service.impl;
import cn.hutool.core.collection.CollectionUtil;
import cn.hutool.core.map.MapBuilder;
import com.alibaba.fastjson.JSON;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
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.dto.FinancingInfoDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.FinancingAuditing;
import com.yeejoin.amos.boot.module.hygf.api.entity.FinancingRectificationOrder;
import com.yeejoin.amos.boot.module.hygf.api.mapper.FinancingRectificationOrderMapper;
import com.yeejoin.amos.boot.module.hygf.api.service.IFinancingRectificationOrderService;
......@@ -30,6 +33,8 @@ public class FinancingRectificationOrderServiceImpl extends BaseService<Financin
private FinancingRectificationOrderMapper financingRectificationOrderMapper;
@Autowired
FinancingInfoServiceImpl financingInfoServiceImpl;
@Autowired
FinancingAuditingServiceImpl financingAuditingService;
/**
* 分页查询
*/
......@@ -58,10 +63,38 @@ public class FinancingRectificationOrderServiceImpl extends BaseService<Financin
model.setRectificationPhoto(JSON.toJSONString(model.getRectificationPhotos()));
}
this.updateWithModel(model);
if (model.getRectificationStatus().equals("整改完成")){
FinancingInfoDto financingInfoDto = financingInfoServiceImpl.selectDataInfo(model.getPeasantHouseholdId());
if (model.getRectificationStatus().equals("整改完成")){
financingInfoServiceImpl.execueFlow(MapBuilder.<String,Object>create().put("instanceId",financingInfoDto.getInstanceId()).put("approvalStatus","0").put("isZG","1").build());
}else {
financingInfoDto.setStatus(model.getRectificationStatus());
financingInfoServiceImpl.updateWithModel(financingInfoDto);
}
return model;
}
public String getProblemDescription(Long peasantHouseholdId) {
LambdaQueryWrapper<FinancingRectificationOrder> wrapper = new LambdaQueryWrapper<>();
wrapper.select(FinancingRectificationOrder::getProblemDescription);
wrapper.eq(FinancingRectificationOrder::getPeasantHouseholdId,peasantHouseholdId);
wrapper.orderByDesc(BaseEntity::getRecDate);
wrapper.last("limit 1");
FinancingRectificationOrder financingRectificationOrder = this.getBaseMapper().selectOne(wrapper);
if (null !=financingRectificationOrder){
return financingRectificationOrder.getProblemDescription();
}
LambdaQueryWrapper<FinancingAuditing> query = new LambdaQueryWrapper<>();
query.eq(FinancingAuditing::getPeasantHouseholdId,peasantHouseholdId);
query.orderByDesc(BaseEntity::getRecDate);
query.last("limit 1");
FinancingAuditing financingAuditing = financingAuditingService.getBaseMapper().selectOne(query);
return financingAuditing.getStatus();
}
}
\ No newline at end of file
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