Commit 232fdc49 authored by 朱晨阳's avatar 朱晨阳

Merge remote-tracking branch 'origin/developer_bw' 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/FinancingInfoServiceImpl.java
parents a6564a74 54f896e9
......@@ -10,7 +10,7 @@ public enum FinancingAuditEnum {
待融资审核("FinancingAudit","待融资审核","/hygf/drzsh"),
审核不通过("AuditReject","整改待推送","/hygf/zgdts"),
待整改("WaitAbarbeitung","待整改","/hygf/dzg"),
待整改("WaitAbarbeitung","重新验收","/hygf/dzg"),
整改待推送("AbarbeitungWaitPush","审核不通过","/hygf/shym"),
审核通过("AuditPass","审核通过","/hygf/fkym"),
放款完成("complete","放款完成","");
......
......@@ -8,21 +8,20 @@ import io.swagger.annotations.ApiModelProperty;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import lombok.Data;
import lombok.EqualsAndHashCode;
import java.util.Date;
import java.util.List;
/**
*
*
* @author system_generator
* @date 2024-04-01
*/
@Data
@EqualsAndHashCode(callSuper = true)
@ApiModel(value="FinancingInfoDto", description="")
public class FinancingInfoDto extends BaseDto {
@ApiModel(value = "FinancingInfoDto", description = "")
public class FinancingInfoDto extends BaseDto {
private static final long serialVersionUID = 1L;
private static final long serialVersionUID = 1L;
@ApiModelProperty(value = "所属融资公司id")
......@@ -50,12 +49,15 @@ public class FinancingInfoDto extends BaseDto {
@ApiModelProperty(value = "状态")
private String status;
@ApiModelProperty(value = "农户id")
@ApiModelProperty(value = "农户id")
private String peasantHouseholdIds;
private String instanceId;
private String instanceId;
@ApiModelProperty(value = "附件")
private List<Object> files;
@ApiModelProperty(value = "批次号")
private String batchNo;
@ApiModelProperty(value = "附件")
private List<Object> files;
}
......@@ -57,6 +57,11 @@ public class FinancingInfo extends BaseEntity {
*/
@TableField("disbursement_money")
private Double disbursementMoney;
/**
* 批次号
*/
@TableField("bacth_no")
private String batchNo;
/**
* 附件
......
......@@ -26,4 +26,6 @@ public interface FinancingInfoMapper extends BaseMapper<FinancingInfo> {
Map<String,Object> selectRZOrgInfo(Long id);
List<Map<String,Object>> selectRegion();
}
......@@ -35,6 +35,9 @@
<if test="params.type == 3 ">
and info.status in ('待整改','整改未完成')
</if>
<if test="params.region != null and params.region !='' ">
and hph.project_address like concat ('%',#{params.region},'%')
</if>
</where>
ORDER BY
info.rec_date DESC ,hph.sequence_nbr DESC ) as sta
......@@ -71,4 +74,16 @@
where
SEQUENCE_NBR=#{id}
</select>
<select id="selectRegion" resultType="java.util.Map">
select
REGION_NAME regionName,
REGION_CODE regionCode
from
systemctl_region
where
PARENT_ID = '0'
</select>
</mapper>
package com.yeejoin.amos.boot.module.hygf.biz.controller;
import com.yeejoin.amos.boot.module.hygf.api.dto.CommerceInfoDto;
import com.yeejoin.amos.boot.module.hygf.biz.service.impl.FinancingInfoServiceImpl;
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.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 java.util.List;
import java.util.Map;
@RestController
@Api(tags = "公共接口")
@RequestMapping(value = "/common")
public class CommonController {
@Autowired
FinancingInfoServiceImpl financingInfoService;
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/selectRegion")
@ApiOperation(httpMethod = "GET", value = "查询全国省份", notes = "查询全国省份")
public ResponseModel<List<Map<String,Object>>> selectRegion() {
return ResponseHelper.buildResponse(financingInfoService.selectRegion());
}
}
......@@ -54,6 +54,20 @@ public class FinancingInfoController extends BaseController {
return ResponseHelper.buildResponse(model);
}
/**
* 新增
*
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@PutMapping(value = "/updateState")
@ApiOperation(httpMethod = "PUT", value = "新增", notes = "新增")
@Transactional
public ResponseModel updateState(@RequestBody List<Long> ids) {
financingInfoServiceImpl.updateState(ids);
return ResponseHelper.buildResponse(null);
}
/**
* 根据sequenceNbr更新
*
......@@ -125,11 +139,12 @@ public class FinancingInfoController extends BaseController {
public ResponseModel<Page<Map<String, Object>>> queryForPage(@RequestParam(value = "current") int current,@RequestParam(value = "size") int size,@RequestParam(value = "type") String type,
@RequestParam(value = "status",required = false) String status,
@RequestParam(value = "regionalCompaniesCode" ,required = false) String regionalCompaniesCode ,
@RequestParam(value = "region" ,required = false) String region ,
@RequestParam(value = "ownersName",required = false) String ownersName){
Page<Map<String, Object>> page = new Page<Map<String, Object>>();
page.setCurrent(current);
page.setSize(size);
return ResponseHelper.buildResponse(financingInfoServiceImpl.queryForFinancingInfoPage(page,type,status,regionalCompaniesCode,ownersName));
return ResponseHelper.buildResponse(financingInfoServiceImpl.queryForFinancingInfoPage(page,type,status,regionalCompaniesCode,ownersName, region));
}
/**
......
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.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
......@@ -64,6 +65,10 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
HouseholdContractMapper householdContractMapper;
@Autowired
ConstructionAcceptanceRecordsServiceImpl acceptanceRecordsService;
@Autowired
FinancingInfoServiceImpl financingInfoService;
@Autowired
FinancingAuditingServiceImpl financingAuditingService;
public Page<AcceptanceCheckDto> selectPage(Long regionCompanyId, Long amosDealerId, int current, int size,
......@@ -290,23 +295,6 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
up.set(AcceptanceCheck::getAcceptanceCheckStatus,GridStatusEnum.DZG.getCode());
}
}
Boolean flag = true;
up.set(AcceptanceCheck::getAcceptanceCheckStatus,GridStatusEnum.YSROLESDSH.getCode());
LambdaQueryWrapper<HygfRectificationOrder> query = new LambdaQueryWrapper<>();
query.eq(HygfRectificationOrder::getPeasantHouseholeId,basicGridRecord.getPeasantHouseholdId());
query.in(HygfRectificationOrder::getRectificationStatus,Arrays.asList("待整改","待审核"));
query.in(HygfRectificationOrder::getRectificationSource,Arrays.asList("ys-fawu","ys-tourong","ys-zichan"));
List<HygfRectificationOrder> hygfRectificationOrders = rectificationOrderService.getBaseMapper().selectList(query);
for (HygfRectificationOrder hygfRectificationOrder : hygfRectificationOrders) {
if (hygfRectificationOrder.getRectificationStatus().equals("待审核")){
up.set(AcceptanceCheck::getAcceptanceCheckStatus,GridStatusEnum.ZGDSH.getCode());
flag = false;
break;
}
}
if (CollectionUtil.isNotEmpty(hygfRectificationOrders) && flag){
up.set(AcceptanceCheck::getAcceptanceCheckStatus,GridStatusEnum.DZG.getCode());
}
this.wofkflowExcute(instanceId, approvalStatus , comment ,BusinessWorkflowKey.片区运营审核.getCode() );
break;
case "ys-fawu":
......@@ -379,7 +367,17 @@ public class AcceptanceCheckServiceImpl extends BaseService<AcceptanceCheckDto,A
up.set(AcceptanceCheck::getAcceptanceTime,new Date());
up.set(AcceptanceCheck::getAcceptanceCheckStatus,GridStatusEnum.YWC.getCode());
//验收完成后需对投融数据进行处理。
LambdaUpdateWrapper<FinancingInfo> wrapper = new LambdaUpdateWrapper<>();
wrapper.eq(FinancingInfo::getPeasantHouseholdId,basicGridRecord.getPeasantHouseholdId());
wrapper.set(FinancingInfo::getStatus,"待推送");
financingInfoService.update(null,wrapper);
LambdaQueryWrapper<FinancingAuditing> finQuery = new LambdaQueryWrapper<>();
finQuery.eq(FinancingAuditing::getPeasantHouseholdId,basicGridRecord.getPeasantHouseholdId());
finQuery.orderByDesc(BaseEntity::getRecDate);
finQuery.last("limit 1");
FinancingAuditing financingAuditing = financingAuditingService.getBaseMapper().selectOne(finQuery);
financingInfoService.execueFlow(MapBuilder.<String,Object>create().put("instanceId",financingAuditing.getInstanceId()).put("approvalStatus","0").put("isZG","1").build());
}
this.wofkflowExcute(instanceId, approvalStatus , comment ,BusinessWorkflowKey.资产审核.getCode() );
......
......@@ -4,6 +4,7 @@ import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.collection.CollectionUtil;
import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
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;
......
......@@ -6,6 +6,7 @@ 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.baomidou.mybatisplus.core.conditions.update.LambdaUpdateWrapper;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.core.toolkit.ObjectUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
......@@ -15,19 +16,13 @@ import com.yeejoin.amos.boot.biz.common.bo.ReginParams;
import com.yeejoin.amos.boot.biz.common.entity.BaseEntity;
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.FinancingAuditEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.FlowStatusEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.TaskStatusEnum;
import com.yeejoin.amos.boot.module.hygf.api.Enum.*;
import com.yeejoin.amos.boot.module.hygf.api.config.UserLimits;
import com.yeejoin.amos.boot.module.hygf.api.dto.FinancingAuditingDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.FinancingInfoDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.TaskModelDto;
import com.yeejoin.amos.boot.module.hygf.api.dto.WorkflowResultDto;
import com.yeejoin.amos.boot.module.hygf.api.entity.FinancingAuditing;
import com.yeejoin.amos.boot.module.hygf.api.entity.FinancingInfo;
import com.yeejoin.amos.boot.module.hygf.api.entity.FinancingRectificationOrder;
import com.yeejoin.amos.boot.module.hygf.api.entity.StdUserEmpower;
import com.yeejoin.amos.boot.module.hygf.api.entity.*;
import com.yeejoin.amos.boot.module.hygf.api.mapper.FinancingInfoMapper;
import com.yeejoin.amos.boot.module.hygf.api.mapper.HouseholdContractMapper;
import com.yeejoin.amos.boot.module.hygf.api.mapper.PowerStationEngineeringInfoMapper;
......@@ -78,12 +73,17 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
private PowerStationEngineeringInfoMapper powerStationEngineeringInfoMapper;
@Autowired
private CommonServiceImpl commonService;
@Autowired
private AcceptanceCheckServiceImpl acceptanceCheckService;
@Autowired
private AcceptanceCheckAuditingServiceImpl acceptanceCheckAuditingService;
@Resource(type = RedisLockUtil.class)
private RedisLockUtil redisLockUtil;
@UserLimits
public Page<Map<String, Object>> queryForFinancingInfoPage(Page<Map<String, Object>> page, String type, String status, String regionalCompaniesCode, String ownersName) {
public Page<Map<String, Object>> queryForFinancingInfoPage(Page<Map<String, Object>> page, String type, String status, String regionalCompaniesCode, String ownersName, String region) {
StdUserEmpower orgCode = (StdUserEmpower) redisUtils.get("Emp_" + RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken()));
ReginParams reginParams = JSON.parseObject(redisUtils.get(RedisKey.buildReginKey(RequestContext.getExeUserId(), RequestContext.getToken())).toString(), ReginParams.class);
List<String> amosOrgCodes = orgCode.getAmosOrgCode();
......@@ -92,6 +92,7 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
params.put("status", status);
params.put("regionalCompaniesCode", regionalCompaniesCode);
params.put("type", type);
params.put("region", region);
// 1 投融人员 2.融资 3经销商管理员
switch (type) {
case "1":
......@@ -109,6 +110,7 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
e.put("scale", householdContractMapper.getHygfCommercialScale((String) e.get("peasantHouseholdNo")));
e.put("realScale", powerStationEngineeringInfoMapper.getRealScaleByPeasantHouseholdNo((String) e.get("peasantHouseholdNo")));
e.put("regionName",e.get("projectAddress").toString().split("/")[0]);
if (null != e.get("instanceId") && e.get("instanceId").toString().contains(",")) {
String[] instanceIds = e.get("instanceId").toString().split(",");
e.put("instanceId", instanceIds[0]);
......@@ -121,6 +123,12 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
return page;
}
public List<Map<String,Object>> selectRegion(){
return financingInfoMapper.selectRegion();
}
/**
* 列表查询 示例
*/
......@@ -137,6 +145,8 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
}
List<String> ids;
long time = new Date().getTime();
String batcvNo = String.valueOf(time);
if (model.getPeasantHouseholdIds().contains(",")) {
ids = Arrays.asList(model.getPeasantHouseholdIds().split(","));
} else {
......@@ -155,6 +165,7 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
FinancingInfoDto financingInfoDto = new FinancingInfoDto();
BeanUtils.copyProperties(model, financingInfoDto);
financingInfoDto.setSequenceNbr(null);
financingInfoDto.setBatchNo(batcvNo);
this.createWithModel(financingInfoDto);
//开启工作流 并执行一步
ActWorkflowBatchDTO actWorkflowBatchDTO = new ActWorkflowBatchDTO();
......@@ -289,7 +300,7 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
task.setResultCode("isFlag");
map.put("isFlag", params.get("isFlag"));
if (params.get("isFlag").equals("1")) {
params.put("comments", "退回整改");
params.put("comments", "退回经销商重新验收");
params.put("approvalStatus",params.getOrDefault("problemDescription",""));
}else {
params.put("approvalStatus","");
......@@ -326,7 +337,7 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
}
//标识对于整改待推送状态
if (params.containsKey("isZG")) {
financingInfo.setStatus("整改待推送");
financingInfo.setStatus("待推送");
} else {
financingInfo.setStatus(statusName);
}
......@@ -336,30 +347,31 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
//节点为待整改时生成整改单
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.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);
financingRectificationOrder.setSequenceNbr(null);
financingRectificationOrder.setCompleteDate(null);
financingRectificationOrder.setRectificationPhoto(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());
financingRectificationOrderService.save(financingRectificationOrder);
this.sendBack(financingInfo.getPeasantHouseholdId());
// LambdaQueryWrapper<FinancingRectificationOrder> queryWrapper = new LambdaQueryWrapper<>();
// 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);
// financingRectificationOrder.setSequenceNbr(null);
// financingRectificationOrder.setCompleteDate(null);
// financingRectificationOrder.setRectificationPhoto(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());
// financingRectificationOrderService.save(financingRectificationOrder);
}
......@@ -369,4 +381,42 @@ public class FinancingInfoServiceImpl extends BaseService<FinancingInfoDto, Fina
return this.getBaseMapper().selectOrgList();
}
public void sendBack(Long peasantHouseholdId ){
//删除投融资表数据
LambdaUpdateWrapper<FinancingInfo> financingUp = new LambdaUpdateWrapper<>();
financingUp.eq(FinancingInfo::getPeasantHouseholdId,peasantHouseholdId);
financingUp.set(BaseEntity::getIsDelete,true);
this.update(null,financingUp);
//删除验收审核数据
LambdaQueryWrapper<AcceptanceCheckAuditing> checkAuditUp = new LambdaQueryWrapper<>();
checkAuditUp.eq(AcceptanceCheckAuditing::getPeasantHouseholdId,peasantHouseholdId);
acceptanceCheckAuditingService.getBaseMapper().delete(checkAuditUp);
//重置验收数据
LambdaUpdateWrapper<AcceptanceCheck> checkUp = new LambdaUpdateWrapper<>();
checkUp.eq(AcceptanceCheck::getPeasantHouseholdId,peasantHouseholdId);
checkUp.set(AcceptanceCheck::getAcceptanceCheckStatus, GridStatusEnum.WTG.getCode());
checkUp.set(AcceptanceCheck::getBasicGridNode,null);
checkUp.set(AcceptanceCheck::getPowerStationFinancingStatus,null);
checkUp.set(AcceptanceCheck::getPowerStationLegalStatus,null);
checkUp.set(AcceptanceCheck::getPowerStationAssetsStatus,null);
checkUp.set(AcceptanceCheck::getPowerStationAreaStatus,null);
checkUp.set(AcceptanceCheck::getInstanceId,null);
checkUp.set(AcceptanceCheck::getAcceptanceTime,null);
acceptanceCheckService.getBaseMapper().update(null,checkUp);
}
public void updateState(List<Long> ids){
LambdaUpdateWrapper<FinancingInfo> up = new LambdaUpdateWrapper<>();
up.in(FinancingInfo::getPeasantHouseholdId,ids);
up.set(FinancingInfo::getStatus,"已放款");
this.getBaseMapper().update(null,up);
}
}
\ 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