Commit 523aef3a authored by wujiang's avatar wujiang

修改防止生成多分数据

parent 9c2109b8
......@@ -163,7 +163,10 @@ public class PowerStationServiceImpl extends BaseService<PowerStationDto, PowerS
powerStation.setRecDate(new Date());
Boolean fl = this.saveOrUpdate(powerStation);
//Boolean fl = this.saveOrUpdate(powerStation);
// 避免生成多份数据
Boolean fl = this.saveOrUpdate(powerStation,new LambdaQueryWrapper<PowerStation>()
.eq(PowerStation::getPeasantHouseholdId,powerStation.getPeasantHouseholdId()));
PowerStationNodeEnum powerStationNodeEnum = PowerStationNodeEnum
.getNodeByCode(powerStation.getNextProcessNode());
......
......@@ -215,6 +215,7 @@ public class QiyuesuoServiceImpl {
List<Stamper> stampers = new ArrayList<>();
stampers.add(stamper);
stampers.add(stamper2);
//发起合同
SdkResponse<Object> data = this.getSdkResponse(result.getId(), stampers);
return result.getId();
}
......
......@@ -49,312 +49,327 @@ import java.util.stream.Stream;
*/
@Service
@Slf4j
public class SurveyInformationServiceImpl extends BaseService<SurveyInformationDto,SurveyInformation,SurveyInformationMapper> implements ISurveyInformationService {
@Autowired
SurveyDetailsServiceImpl surveyDetailsService;
@Autowired
InformationServiceImpl informationService;
@Autowired
ExtendedInformationServiceImpl extendedInformationService;
@Autowired
CommercialServiceImpl commercialService;
@Autowired
PeasantHouseholdServiceImpl peasantHouseholdServiceImpl;
@Autowired
DesignInformationServiceImpl designInformationService;
@Autowired
WorkflowFeignClient workflowFeignClient;
@Autowired
RedisUtils redisUtils;
@Autowired
IdxFeginService idxFeginService;
@Autowired
RegionalCompaniesMapper regionalCompaniesMapper;
@Autowired
IPowerStationService powerStationService;
@Autowired
ToDoTasksMapper toDoTasksMapper;
@Autowired
UserMessageMapper userMessageMapper;
@Value("${power.station.examine.pageId}")
private long pageId;
@Autowired
protected EmqKeeper emqKeeper;
@Value("${power.station.examine.planId}")
private String planId;
private static final String regionRedis="app_region_redis";
private static final String OPERATION_TYPE_SUBMIT="submit";
private static final String OPERATION_TYPE_APPLY="apply";
private static final String IDX_REQUEST_STATE="200";
@Autowired
PersonnelBusinessMapper personnelBusinessMapper;
@Autowired
PeasantHouseholdMapper peasantHouseholdMapper;
@Autowired
WorkOrderMapper workOrderMapper;
@Autowired
HygfOnGridMapper hygfOnGridMapper;
@Autowired
ConstructionRecordsServiceImpl constructionRecordsServiceImpl;
@Autowired
ConstructionRecordsMapper constructionRecordsMapper;
@Autowired
BasicGridAcceptanceMapper basicGridAcceptanceMapper;
@Autowired
SurveyInformationMapper surveyInformationMapper;
@Autowired
PowerStationConstructionDataMapper powerStationConstructionDataMapper;
@Autowired
PowerStationEngineeringInfoMapper powerStationEngineeringInfoMapper;
@Autowired
WorkOrderPowerStationMapper workOrderPowerStationMapper;
@Autowired
AmosRequestContext requestContext;
@Autowired
WorkflowImpl workflow;
/**
* 分页查询
*/
public Page<SurveyInformationDto> queryForSurveyInformationPage(Page<SurveyInformationDto> page) {
return this.queryForPage(page, "rec_date", false);
}
/**
* 列表查询 示例
*/
public List<SurveyInformationDto> queryForSurveyInformationList() {
return this.queryForList("" , false);
}
@Transactional
public SurveyInfoAllDto saveSurveyInfo(SurveyInfoAllDto surveyInfoAllDto,String operationType) {
try {
JSONArray regionName = getRegionName();
List<RegionModel> list = JSONArray.parseArray(regionName.toJSONString(), RegionModel.class);
//更新勘察基本信息
SurveyInformation surveyInformation = BeanDtoUtils.convert(surveyInfoAllDto.getSurveyInformation(), SurveyInformation.class);
surveyInformation.setReview(0);
if(OPERATION_TYPE_APPLY.equals(operationType) && null == surveyInformation.getCreatorTime()){
surveyInformation.setCreatorTime(new Date());
}
this.saveOrUpdate(surveyInformation);
//更新扩展信息
ExtendedInformation extendedInformation = BeanDtoUtils.convert(surveyInfoAllDto.getExtendedInformation(), ExtendedInformation.class);
extendedInformation.setSurveyInformationId(surveyInformation.getSequenceNbr());
extendedInformationService.saveOrUpdate(extendedInformation);
//更新勘察明细信息
SurveyDetailsDto oldSurveyDetails = surveyInfoAllDto.getSurveyDetails();
SurveyDetails surveyDetails = BeanDtoUtils.convert(oldSurveyDetails, SurveyDetails.class);
surveyDetails.setSurveyInformationId(surveyInformation.getSequenceNbr());
surveyDetailsService.saveOrUpdate(surveyDetails);
//更新商务信息
CommercialDto oldCommercial = surveyInfoAllDto.getCommercial();
Commercial commercial = BeanDtoUtils.convert(oldCommercial, Commercial.class);
// 处理省市县
String paddressName = "";
for (Integer reg : surveyInfoAllDto.getSurveyInformation().getProjectAddress()) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(reg))) {
paddressName = paddressName + re.getRegionName() + "/";
}
}
}
commercial.setProjectAddressName(paddressName.substring(0, paddressName.length() - 1));
commercial.setSurveyInformationId(surveyInformation.getSequenceNbr());
commercialService.saveOrUpdate(commercial);
//勘察后,更新状态
QueryWrapper<PeasantHousehold> peasantHouseholdQueryWrapper = new QueryWrapper<>();
peasantHouseholdQueryWrapper.eq("survey_information_id", surveyInformation.getSequenceNbr());
PeasantHousehold peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper().selectOne(peasantHouseholdQueryWrapper);
//更新资料归档信息
Information information = BeanDtoUtils.convert(surveyInfoAllDto.getInformation(), Information.class);
information.setHouseProve(null == commercial ?null :(CollectionUtil.isNotEmpty(commercial.getRealEstateLegal())? commercial.getRealEstateLegal():null));
information.setCardFile( null == commercial ?null:(CollectionUtil.isNotEmpty(commercial.getIdCardCredit())? commercial.getIdCardCredit():null));
information.setCardFile(commercial.getAgentLegal());
information.setArchivesNumber(this.getNo(CodeEnum.档案.getCode(),peasantHousehold.getRegionalCompaniesSeq()));
information.setFileNumber(this.getNo(CodeEnum.文件.getCode(),peasantHousehold.getRegionalCompaniesSeq()));
information.setSurveyInformationId(surveyInformation.getSequenceNbr());
informationService.saveOrUpdate(information);
peasantHousehold.setOwnersName(surveyInfoAllDto.getSurveyInformation().getOwnersName());
peasantHousehold.setTelephone(surveyInfoAllDto.getSurveyInformation().getTelephone());
peasantHousehold.setIdCard(surveyInfoAllDto.getSurveyInformation().getIdCard());
peasantHousehold.setMailbox(surveyInfoAllDto.getSurveyInformation().getMailbox());
peasantHousehold.setProjectAddress(surveyInfoAllDto.getSurveyInformation().getProjectAddress());
peasantHousehold.setProjectAddressDetail(surveyInfoAllDto.getSurveyInformation().getProjectAddressDetail());
peasantHousehold.setPermanentAddress(surveyInfoAllDto.getSurveyInformation().getPermanentAddress());
peasantHousehold.setPermanentAddressDetail(surveyInfoAllDto.getSurveyInformation().getPermanentAddressDetail());
peasantHousehold.setPermanentAddressDetail(surveyInfoAllDto.getSurveyInformation().getPermanentAddressDetail());
// 处理项目地址
String projectAddressName = "";
for (Integer reg : surveyInfoAllDto.getSurveyInformation().getProjectAddress()) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(reg))) {
projectAddressName = projectAddressName + re.getRegionName() + "/";
}
}
}
peasantHousehold.setProjectAddressName(projectAddressName.substring(0, projectAddressName.length() - 1));
//常住地址
String permanentAddressName = "";
for (Integer reg : surveyInfoAllDto.getSurveyInformation().getPermanentAddress()) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(reg))) {
permanentAddressName = permanentAddressName + re.getRegionName() + "/";
}
}
}
peasantHousehold.setPermanentAddressName(permanentAddressName.substring(0, permanentAddressName.length() - 1));
if(OPERATION_TYPE_SUBMIT.equals(operationType)){
// peasantHousehold.setSurveyOrNot(1);
}else if(OPERATION_TYPE_APPLY.equals(operationType)){
// 提交审核
submitExamine(peasantHousehold);
LambdaQueryWrapper<ToDoTasks> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ToDoTasks::getType, TaskTypeStationEnum.电站勘察.getCode());
wrapper.eq(ToDoTasks::getState, "待办");
wrapper.eq(ToDoTasks::getBusinessId, peasantHousehold.getSequenceNbr());
ToDoTasks doTasks= toDoTasksMapper.selectOne(wrapper);
if(doTasks!=null){
doTasks.setState("已办");
doTasks.setCompleteTime(new Date());
toDoTasksMapper.updateById(doTasks);
emqKeeper.getMqttClient().publish("TASK_MESSAGE" ,JSON.toJSONString(doTasks).getBytes(), 2 ,false);
UserMessage userMessage= new UserMessage( doTasks.getType(), doTasks.getBusinessId(), doTasks.getAmosUserId(), new Date(), doTasks.getTaskName()+"已完成", doTasks.getAmosOrgCode());
userMessageMapper.insert(userMessage);
emqKeeper.getMqttClient().publish("MY_MESSAGE" ,JSON.toJSONString(userMessage).getBytes(), 2 ,false);
}
}
peasantHouseholdServiceImpl.saveOrUpdate(peasantHousehold);
}catch (Exception e){
e.printStackTrace();
throw new BadRequest("系统异常");
}
return surveyInfoAllDto;
}
public String getNo(String type,Long sequenceNbr) {
RegionalCompanies da= regionalCompaniesMapper.selectRegionName(sequenceNbr);
if(da.getCompanyCode()==null||da.getCompanyCode().isEmpty()){
throw new BadRequest("区域公司编号为空, 请设置编号");
}
if(da.getRegionalAddress()==null||da.getRegionalAddress().isEmpty()){
throw new BadRequest("区域公司省市区为空, 请设置省市区");
}
String code= NumberUtil.getCode(type,da.getCompanyCode(),da.getRegionalAddress());
return code;
}
private void submitExamine(PeasantHousehold peasantHousehold) {
PowerStation powerStation = powerStationService.getObjByNhId(String.valueOf(peasantHousehold.getSequenceNbr()), PowerStationProcessStateEnum.作废.getCode());
String taskId = null;
Map<String, Object> objectMap = new HashMap<>(1);
objectMap.put("describe", "经销商已上传信息");
// 保存并审核
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();
}
peasantHousehold.setSurveyOrNot(2);
peasantHousehold.setReview(1);
// 插入记录表
powerStation.setPlanInstanceId(planId);
powerStation.setPowerStationCode(peasantHousehold.getPeasantHouseholdNo());
powerStation.setOwnersName(peasantHousehold.getOwnersName());
powerStation.setProjectAddress(peasantHousehold.getProjectAddressName());
powerStation.setPeasantHouseholdId(String.valueOf(peasantHousehold.getSequenceNbr()));
powerStation.setProcessStatus(PowerStationProcessStateEnum.进行中.getName());
powerStation.setServiceAgent(peasantHousehold.getDeveloperName());
// 获取流程信息
powerStation.setTaskId(basicGridAcceptance.getNextTaskId());
powerStation.setProcessInstanceId(basicGridAcceptance.getInstanceId());
powerStation.setFlowTaskId(basicGridAcceptance.getNextTaskId());
powerStation.setNodeRole(basicGridAcceptance.getNextExecutorIds());
powerStation.setNodeRouting(PowerStationEnum.getNodeByKey(basicGridAcceptance.getNextNodeKey()));
powerStation.setNextProcessNode(PowerStationNodeEnum.设计审核.getCode());
powerStation.setPromoter(basicGridAcceptance.getPromoter());
powerStation.setNextExecuteUserIds(basicGridAcceptance.getNextExecuteUserIds());
powerStation.setNextNodeName(basicGridAcceptance.getNextNodeName());
powerStationService.savePowerStation(powerStation, true,powerStation.getOwnersName(),"");
//
peasantHousehold.setConstructionState(ArrivalStateeEnum.勘察中.getCode());
LambdaUpdateWrapper<PeasantHousehold> up =new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.勘察中.getCode());
long idsk= peasantHousehold.getSequenceNbr();
up.eq(PeasantHousehold::getSequenceNbr,idsk);
peasantHouseholdMapper.update(null,up);
} catch (Exception e){
e.printStackTrace();
throw new BaseException("获取工作流节点失败!","400","获取工作流节点失败!");
}
public class SurveyInformationServiceImpl
extends BaseService<SurveyInformationDto, SurveyInformation, SurveyInformationMapper>
implements ISurveyInformationService {
@Autowired
SurveyDetailsServiceImpl surveyDetailsService;
@Autowired
InformationServiceImpl informationService;
@Autowired
ExtendedInformationServiceImpl extendedInformationService;
@Autowired
CommercialServiceImpl commercialService;
@Autowired
PeasantHouseholdServiceImpl peasantHouseholdServiceImpl;
@Autowired
DesignInformationServiceImpl designInformationService;
@Autowired
WorkflowFeignClient workflowFeignClient;
@Autowired
RedisUtils redisUtils;
@Autowired
IdxFeginService idxFeginService;
@Autowired
RegionalCompaniesMapper regionalCompaniesMapper;
@Autowired
IPowerStationService powerStationService;
@Autowired
ToDoTasksMapper toDoTasksMapper;
@Autowired
UserMessageMapper userMessageMapper;
@Value("${power.station.examine.pageId}")
private long pageId;
@Autowired
protected EmqKeeper emqKeeper;
@Value("${power.station.examine.planId}")
private String planId;
private static final String regionRedis = "app_region_redis";
private static final String OPERATION_TYPE_SUBMIT = "submit";
private static final String OPERATION_TYPE_APPLY = "apply";
private static final String IDX_REQUEST_STATE = "200";
@Autowired
PersonnelBusinessMapper personnelBusinessMapper;
@Autowired
PeasantHouseholdMapper peasantHouseholdMapper;
@Autowired
WorkOrderMapper workOrderMapper;
@Autowired
HygfOnGridMapper hygfOnGridMapper;
@Autowired
ConstructionRecordsServiceImpl constructionRecordsServiceImpl;
@Autowired
ConstructionRecordsMapper constructionRecordsMapper;
@Autowired
BasicGridAcceptanceMapper basicGridAcceptanceMapper;
@Autowired
SurveyInformationMapper surveyInformationMapper;
@Autowired
PowerStationConstructionDataMapper powerStationConstructionDataMapper;
@Autowired
PowerStationEngineeringInfoMapper powerStationEngineeringInfoMapper;
@Autowired
WorkOrderPowerStationMapper workOrderPowerStationMapper;
@Autowired
AmosRequestContext requestContext;
@Autowired
WorkflowImpl workflow;
/**
* 分页查询
*/
public Page<SurveyInformationDto> queryForSurveyInformationPage(Page<SurveyInformationDto> page) {
return this.queryForPage(page, "rec_date", false);
}
/**
* 列表查询 示例
*/
public List<SurveyInformationDto> queryForSurveyInformationList() {
return this.queryForList("", false);
}
@Transactional
public SurveyInfoAllDto saveSurveyInfo(SurveyInfoAllDto surveyInfoAllDto, String operationType) {
try {
JSONArray regionName = getRegionName();
List<RegionModel> list = JSONArray.parseArray(regionName.toJSONString(), RegionModel.class);
// 更新勘察基本信息
SurveyInformation surveyInformation = BeanDtoUtils.convert(surveyInfoAllDto.getSurveyInformation(),
SurveyInformation.class);
surveyInformation.setReview(0);
if (OPERATION_TYPE_APPLY.equals(operationType) && null == surveyInformation.getCreatorTime()) {
surveyInformation.setCreatorTime(new Date());
}
this.saveOrUpdate(surveyInformation);
// 更新扩展信息
ExtendedInformation extendedInformation = BeanDtoUtils.convert(surveyInfoAllDto.getExtendedInformation(),
ExtendedInformation.class);
extendedInformation.setSurveyInformationId(surveyInformation.getSequenceNbr());
// 避免生成多份数据
extendedInformationService.saveOrUpdate(extendedInformation, new LambdaQueryWrapper<ExtendedInformation>()
.eq(ExtendedInformation::getSurveyInformationId, surveyInformation.getSequenceNbr()));
//extendedInformationService.saveOrUpdate(extendedInformation);
// 更新勘察明细信息
SurveyDetailsDto oldSurveyDetails = surveyInfoAllDto.getSurveyDetails();
SurveyDetails surveyDetails = BeanDtoUtils.convert(oldSurveyDetails, SurveyDetails.class);
surveyDetails.setSurveyInformationId(surveyInformation.getSequenceNbr());
// 避免生成多份数据
surveyDetailsService.saveOrUpdate(surveyDetails, new LambdaQueryWrapper<SurveyDetails>()
.eq(SurveyDetails::getSurveyInformationId, surveyInformation.getSequenceNbr()));
//surveyDetailsService.saveOrUpdate(surveyDetails);
// 更新商务信息
CommercialDto oldCommercial = surveyInfoAllDto.getCommercial();
Commercial commercial = BeanDtoUtils.convert(oldCommercial, Commercial.class);
// 处理省市县
String paddressName = "";
for (Integer reg : surveyInfoAllDto.getSurveyInformation().getProjectAddress()) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(reg))) {
paddressName = paddressName + re.getRegionName() + "/";
}
}
}
commercial.setProjectAddressName(paddressName.substring(0, paddressName.length() - 1));
commercial.setSurveyInformationId(surveyInformation.getSequenceNbr());
// 避免生成多份数据
commercialService.saveOrUpdate(commercial, new LambdaQueryWrapper<Commercial>()
.eq(Commercial::getSurveyInformationId, surveyInformation.getSequenceNbr()));
//commercialService.saveOrUpdate(commercial);
// 勘察后,更新状态
QueryWrapper<PeasantHousehold> peasantHouseholdQueryWrapper = new QueryWrapper<>();
peasantHouseholdQueryWrapper.eq("survey_information_id", surveyInformation.getSequenceNbr());
PeasantHousehold peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper()
.selectOne(peasantHouseholdQueryWrapper);
// 更新资料归档信息
Information information = BeanDtoUtils.convert(surveyInfoAllDto.getInformation(), Information.class);
information.setHouseProve(null == commercial ? null
: (CollectionUtil.isNotEmpty(commercial.getRealEstateLegal()) ? commercial.getRealEstateLegal()
: null));
information.setCardFile(null == commercial ? null
: (CollectionUtil.isNotEmpty(commercial.getIdCardCredit()) ? commercial.getIdCardCredit() : null));
information.setCardFile(commercial.getAgentLegal());
information
.setArchivesNumber(this.getNo(CodeEnum.档案.getCode(), peasantHousehold.getRegionalCompaniesSeq()));
information.setFileNumber(this.getNo(CodeEnum.文件.getCode(), peasantHousehold.getRegionalCompaniesSeq()));
information.setSurveyInformationId(surveyInformation.getSequenceNbr());
// 避免生成多份数据
informationService.saveOrUpdate(information, new LambdaQueryWrapper<Information>()
.eq(Information::getSurveyInformationId, surveyInformation.getSequenceNbr()));
//informationService.saveOrUpdate(information);
peasantHousehold.setOwnersName(surveyInfoAllDto.getSurveyInformation().getOwnersName());
peasantHousehold.setTelephone(surveyInfoAllDto.getSurveyInformation().getTelephone());
peasantHousehold.setIdCard(surveyInfoAllDto.getSurveyInformation().getIdCard());
peasantHousehold.setMailbox(surveyInfoAllDto.getSurveyInformation().getMailbox());
peasantHousehold.setProjectAddress(surveyInfoAllDto.getSurveyInformation().getProjectAddress());
peasantHousehold.setProjectAddressDetail(surveyInfoAllDto.getSurveyInformation().getProjectAddressDetail());
peasantHousehold.setPermanentAddress(surveyInfoAllDto.getSurveyInformation().getPermanentAddress());
peasantHousehold
.setPermanentAddressDetail(surveyInfoAllDto.getSurveyInformation().getPermanentAddressDetail());
peasantHousehold
.setPermanentAddressDetail(surveyInfoAllDto.getSurveyInformation().getPermanentAddressDetail());
// 处理项目地址
String projectAddressName = "";
for (Integer reg : surveyInfoAllDto.getSurveyInformation().getProjectAddress()) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(reg))) {
projectAddressName = projectAddressName + re.getRegionName() + "/";
}
}
}
peasantHousehold.setProjectAddressName(projectAddressName.substring(0, projectAddressName.length() - 1));
// 常住地址
String permanentAddressName = "";
for (Integer reg : surveyInfoAllDto.getSurveyInformation().getPermanentAddress()) {
for (RegionModel re : list) {
if (re.getRegionCode().equals(Integer.valueOf(reg))) {
permanentAddressName = permanentAddressName + re.getRegionName() + "/";
}
}
}
peasantHousehold
.setPermanentAddressName(permanentAddressName.substring(0, permanentAddressName.length() - 1));
if (OPERATION_TYPE_SUBMIT.equals(operationType)) {
// peasantHousehold.setSurveyOrNot(1);
} else if (OPERATION_TYPE_APPLY.equals(operationType)) {
// 提交审核
submitExamine(peasantHousehold);
LambdaQueryWrapper<ToDoTasks> wrapper = new LambdaQueryWrapper<>();
wrapper.eq(ToDoTasks::getType, TaskTypeStationEnum.电站勘察.getCode());
wrapper.eq(ToDoTasks::getState, "待办");
wrapper.eq(ToDoTasks::getBusinessId, peasantHousehold.getSequenceNbr());
ToDoTasks doTasks = toDoTasksMapper.selectOne(wrapper);
if (doTasks != null) {
doTasks.setState("已办");
doTasks.setCompleteTime(new Date());
toDoTasksMapper.updateById(doTasks);
emqKeeper.getMqttClient().publish("TASK_MESSAGE", JSON.toJSONString(doTasks).getBytes(), 2, false);
UserMessage userMessage = new UserMessage(doTasks.getType(), doTasks.getBusinessId(),
doTasks.getAmosUserId(), new Date(), doTasks.getTaskName() + "已完成",
doTasks.getAmosOrgCode());
userMessageMapper.insert(userMessage);
emqKeeper.getMqttClient().publish("MY_MESSAGE", JSON.toJSONString(userMessage).getBytes(), 2,
false);
}
}
peasantHouseholdServiceImpl.saveOrUpdate(peasantHousehold);
} catch (Exception e) {
e.printStackTrace();
throw new BadRequest("系统异常");
}
return surveyInfoAllDto;
}
public String getNo(String type, Long sequenceNbr) {
RegionalCompanies da = regionalCompaniesMapper.selectRegionName(sequenceNbr);
if (da.getCompanyCode() == null || da.getCompanyCode().isEmpty()) {
throw new BadRequest("区域公司编号为空, 请设置编号");
}
if (da.getRegionalAddress() == null || da.getRegionalAddress().isEmpty()) {
throw new BadRequest("区域公司省市区为空, 请设置省市区");
}
String code = NumberUtil.getCode(type, da.getCompanyCode(), da.getRegionalAddress());
return code;
}
private void submitExamine(PeasantHousehold peasantHousehold) {
PowerStation powerStation = powerStationService.getObjByNhId(String.valueOf(peasantHousehold.getSequenceNbr()),
PowerStationProcessStateEnum.作废.getCode());
String taskId = null;
Map<String, Object> objectMap = new HashMap<>(1);
objectMap.put("describe", "经销商已上传信息");
// 保存并审核
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();
}
peasantHousehold.setSurveyOrNot(2);
peasantHousehold.setReview(1);
// 插入记录表
powerStation.setPlanInstanceId(planId);
powerStation.setPowerStationCode(peasantHousehold.getPeasantHouseholdNo());
powerStation.setOwnersName(peasantHousehold.getOwnersName());
powerStation.setProjectAddress(peasantHousehold.getProjectAddressName());
powerStation.setPeasantHouseholdId(String.valueOf(peasantHousehold.getSequenceNbr()));
powerStation.setProcessStatus(PowerStationProcessStateEnum.进行中.getName());
powerStation.setServiceAgent(peasantHousehold.getDeveloperName());
// 获取流程信息
powerStation.setTaskId(basicGridAcceptance.getNextTaskId());
powerStation.setProcessInstanceId(basicGridAcceptance.getInstanceId());
powerStation.setFlowTaskId(basicGridAcceptance.getNextTaskId());
powerStation.setNodeRole(basicGridAcceptance.getNextExecutorIds());
powerStation.setNodeRouting(PowerStationEnum.getNodeByKey(basicGridAcceptance.getNextNodeKey()));
powerStation.setNextProcessNode(PowerStationNodeEnum.设计审核.getCode());
powerStation.setPromoter(basicGridAcceptance.getPromoter());
powerStation.setNextExecuteUserIds(basicGridAcceptance.getNextExecuteUserIds());
powerStation.setNextNodeName(basicGridAcceptance.getNextNodeName());
powerStationService.savePowerStation(powerStation, true, powerStation.getOwnersName(), "");
//
peasantHousehold.setConstructionState(ArrivalStateeEnum.勘察中.getCode());
LambdaUpdateWrapper<PeasantHousehold> up = new LambdaUpdateWrapper<>();
up.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.勘察中.getCode());
long idsk = peasantHousehold.getSequenceNbr();
up.eq(PeasantHousehold::getSequenceNbr, idsk);
peasantHouseholdMapper.update(null, up);
} catch (Exception e) {
e.printStackTrace();
throw new BaseException("获取工作流节点失败!", "400", "获取工作流节点失败!");
}
// PowerStation powerStation = powerStationService.getObjByNhId(String.valueOf(peasantHousehold.getSequenceNbr()), PowerStationProcessStateEnum.作废.getCode());
//
......@@ -402,266 +417,285 @@ public class SurveyInformationServiceImpl extends BaseService<SurveyInformationD
// e.printStackTrace();
// throw new BaseException("获取工作流节点失败!","400","获取工作流节点失败!");
// }
}
public SurveyInfoAllDto querySurveyInfo(String surveyInformationId,String peasantHouseholdId,String processInstanceId,AgencyUserModel userInfo) {
SurveyInfoAllDto surveyInfoAllDto = new SurveyInfoAllDto();
PeasantHousehold peasantHousehold = new PeasantHousehold();
if(!StringUtils.isEmpty(peasantHouseholdId)){
LambdaQueryWrapper<PeasantHousehold> peasantHouseholdWrapper = new LambdaQueryWrapper<>();
peasantHouseholdWrapper.eq(PeasantHousehold::getSequenceNbr, peasantHouseholdId);
peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper().selectOne(peasantHouseholdWrapper);
surveyInformationId = String.valueOf(peasantHousehold.getSurveyInformationId());
}else {
QueryWrapper<PeasantHousehold> peasantHouseholdQueryWrapper = new QueryWrapper<>();
peasantHouseholdQueryWrapper.eq("survey_information_id", surveyInformationId);
peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper().selectOne(peasantHouseholdQueryWrapper);
}
//勘察基本信息
LambdaQueryWrapper<SurveyInformation> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SurveyInformation::getSequenceNbr, surveyInformationId);
SurveyInformation surveyInformation = this.baseMapper.selectOne(queryWrapper);
surveyInfoAllDto.setSurveyInformation(BeanDtoUtils.convert(surveyInformation, SurveyInformationDto.class));
//农户信息
//获取用户所在经销商单位
UserUnitInformationDto userUnitInformationDto=personnelBusinessMapper.getUserUnitInformationDto(peasantHousehold.getDeveloperUserId());
BeanUtils.copyProperties(peasantHousehold, surveyInfoAllDto.getSurveyInformation());
surveyInfoAllDto.getSurveyInformation().setDeveloperName(userUnitInformationDto.getAmosDealerName());
surveyInfoAllDto.getSurveyInformation().setDeveloperCode(userUnitInformationDto.getAmosDealerOrgCode());
surveyInfoAllDto.getSurveyInformation().setDeveloperId(userUnitInformationDto.getAmosDealerId());
if(surveyInfoAllDto.getSurveyInformation().getSalesmanId()==null){
surveyInfoAllDto.getSurveyInformation().setSalesmanId(peasantHousehold.getDeveloperUserId());
surveyInfoAllDto.getSurveyInformation().setSalesman(peasantHousehold.getDeveloper());
surveyInfoAllDto.getSurveyInformation().setCreator(peasantHousehold.getDeveloper());
}
if (!StringUtils.isEmpty(peasantHousehold.getProjectAddressName())) {
surveyInfoAllDto.getSurveyInformation().setProjectAddressText(Arrays.asList(peasantHousehold.getProjectAddressName().split("/")));
}
if(!StringUtils.isEmpty(peasantHousehold.getPermanentAddressName())){
surveyInfoAllDto.getSurveyInformation().setPermanentAddressText(Arrays.asList(peasantHousehold.getPermanentAddressName().split("/")));
}
if(peasantHousehold.getPermanentAddress() ==null){
surveyInfoAllDto.getSurveyInformation().setPermanentAddress(peasantHousehold.getProjectAddress());
surveyInfoAllDto.getSurveyInformation().setIsPermanent("1");
}
surveyInfoAllDto.getSurveyInformation().setSequenceNbr(surveyInformation.getSequenceNbr());
//制单时间
surveyInfoAllDto.getSurveyInformation().setCreatorTime(surveyInformation.getCreatorTime());
QueryWrapper<SurveyDetails> surveyDetailsQueryWrapper = new QueryWrapper<>();
surveyDetailsQueryWrapper.eq("survey_information_id", surveyInformationId);
SurveyDetails surveyDetails = surveyDetailsService.getBaseMapper().selectOne(surveyDetailsQueryWrapper);
if(surveyDetails == null){
surveyInfoAllDto.setSurveyDetails(new SurveyDetailsDto());
}else {
surveyInfoAllDto.setSurveyDetails(BeanDtoUtils.convert(surveyDetails, SurveyDetailsDto.class));
}
QueryWrapper<Information> informationQueryWrapper = new QueryWrapper<>();
informationQueryWrapper.eq("survey_information_id", surveyInformationId);
Information information = informationService.getBaseMapper().selectOne(informationQueryWrapper);
QueryWrapper<Commercial> commercialQueryWrapper = new QueryWrapper<>();
commercialQueryWrapper.eq("survey_information_id", surveyInformationId);
Commercial commercial = commercialService.getBaseMapper().selectOne(commercialQueryWrapper);
if(commercial==null){
commercial=new Commercial();
}
if(information == null){
surveyInfoAllDto.setInformation(new InformationDto());
}else {
information.setHouseProve(null == commercial ?new ArrayList<>() :(CollectionUtil.isNotEmpty(commercial.getRealEstateLegal())? commercial.getRealEstateLegal():new ArrayList<>()));
information.setCardFile( null == commercial ?new ArrayList<>() :(CollectionUtil.isNotEmpty(commercial.getIdCardCredit())? commercial.getIdCardCredit():new ArrayList<>()));
surveyInfoAllDto.setInformation(BeanDtoUtils.convert(information, InformationDto.class));
}
commercial.setApplicant(peasantHousehold.getOwnersName());
commercial.setIdCard(peasantHousehold.getIdCard());
commercial.setTelephone(peasantHousehold.getTelephone());
commercial.setProjectAddress(peasantHousehold.getProjectAddress());
commercial.setProjectAddressName(peasantHousehold.getProjectAddressName());
commercial.setProjectAddressDetail(peasantHousehold.getProjectAddressDetail());
commercial.setLegalContactTelephone(peasantHousehold.getTelephone());
List<Object> list = new ArrayList<>();
if (null != surveyDetails){
if (CollectionUtil.isNotEmpty(surveyDetails.getSurroundingHouseSurvey())){
list.addAll(surveyDetails.getSurroundingHouseSurvey());
}
if (CollectionUtil.isNotEmpty(surveyDetails.getOverallHousingSurvey())){
list.addAll(surveyDetails.getOverallHousingSurvey());
}
if (CollectionUtil.isNotEmpty(surveyDetails.getPanoramaSurvey())){
list.addAll(surveyDetails.getPanoramaSurvey());
}
if (CollectionUtil.isNotEmpty(surveyDetails.getPlanSketchSurvey())){
list.addAll(surveyDetails.getPlanSketchSurvey());
}
if (CollectionUtil.isNotEmpty(surveyDetails.getAzimuthSurvey())){
list.addAll(surveyDetails.getAzimuthSurvey());
}
}
commercial.setSurveyPhotosWeb(list);
if(information == null){
CommercialDto commercialDto = BeanDtoUtils.convert(commercial, CommercialDto.class);
commercialDto.setType("zrr");
commercialDto.setLegalType("zjdnhw");
surveyInfoAllDto.setCommercial(commercialDto);
}else {
surveyInfoAllDto.setCommercial(BeanDtoUtils.convert(commercial, CommercialDto.class));
if(commercial !=null && !StringUtils.isEmpty(commercial.getProjectAddressName())){
surveyInfoAllDto.getCommercial().setProjectAddressText(Arrays.asList(commercial.getProjectAddressName().split("/")));
}
}
QueryWrapper<ExtendedInformation> extendedInformationQueryWrapper = new QueryWrapper<>();
extendedInformationQueryWrapper.eq("survey_information_id", surveyInformationId);
ExtendedInformation extendedInformation = extendedInformationService.getBaseMapper().selectOne(extendedInformationQueryWrapper);
if(information == null){
surveyInfoAllDto.setExtendedInformation(new ExtendedInformationDto());
}else {
surveyInfoAllDto.setExtendedInformation(BeanDtoUtils.convert(extendedInformation, ExtendedInformationDto.class));
}
QueryWrapper<DesignInformation> designInformationQueryWrapper = new QueryWrapper<>();
designInformationQueryWrapper.eq("peasant_household_id", peasantHousehold.getSequenceNbr());
DesignInformation designInformation = designInformationService.getBaseMapper().selectOne(designInformationQueryWrapper);
if(designInformation == null){
surveyInfoAllDto.setDesignInformation(new DesignInformationDto());
}else {
surveyInfoAllDto.setDesignInformation(BeanDtoUtils.convert(designInformation, DesignInformationDto.class));
}
LambdaQueryWrapper<WorkOrderPowerStation> up1=new LambdaQueryWrapper();
up1.eq(WorkOrderPowerStation::getPeasantHouseholdId,peasantHouseholdId);
WorkOrderPowerStation workOrderPowerStation= workOrderPowerStationMapper.selectOne(up1);
if(workOrderPowerStation!=null){
Long workOrderId=workOrderPowerStation.getWorkOrderId();
Long workOrderPowerStationId=workOrderPowerStation.getSequenceNbr();
//派工单信息
LambdaQueryWrapper<WorkOrder> upl=new LambdaQueryWrapper();
upl.eq(WorkOrder::getSequenceNbr,workOrderId);
WorkOrder workOrder= workOrderMapper.selectOne(upl);
//施工信息
LambdaQueryWrapper<PowerStationConstructionData> up2=new LambdaQueryWrapper();
up2.eq(PowerStationConstructionData::getWorkOrderId,workOrderId);
up2.eq(PowerStationConstructionData::getWorkOrderPowerStationId,workOrderPowerStationId);
PowerStationConstructionData powerStationConstructionData=powerStationConstructionDataMapper.selectOne(up2);
//工程信息
LambdaQueryWrapper<PowerStationEngineeringInfo> up3=new LambdaQueryWrapper();
up3.eq(PowerStationEngineeringInfo::getWorkOrderId,workOrderId);
up3.eq(PowerStationEngineeringInfo::getWorkOrderPowerStationId,workOrderPowerStationId);
PowerStationEngineeringInfo powerStationEngineeringInfo=powerStationEngineeringInfoMapper.selectOne(up3);
if(powerStationConstructionData!=null){
powerStationEngineeringInfo=powerStationEngineeringInfo!=null?powerStationEngineeringInfo:new PowerStationEngineeringInfo();
powerStationEngineeringInfo.setConstructionComponentInfo(powerStationConstructionData.getConstructionComponentInfo());
powerStationEngineeringInfo.setConstructionInverterInfo(powerStationConstructionData.getConstructionInverterInfo());
powerStationEngineeringInfo.setConstructionCollectorBoxInfo(powerStationConstructionData.getConstructionCollectorBoxInfo());
powerStationEngineeringInfo.setConstructionGridBoxInfo(powerStationConstructionData.getConstructionGridBoxInfo());
powerStationEngineeringInfo.setProjectRegionManager(workOrder.getProjectRegionManager());
powerStationEngineeringInfo.setProjectRegionManagerPhone(workOrder.getProjectRegionManagerPhone());
powerStationEngineeringInfo.setConstructionRegionManager(workOrder.getConstructionRegionManager());
powerStationEngineeringInfo.setConstructionRegionManagerPhone(workOrder.getConstructionRegionManagerPhone());
}
//并网信息
LambdaQueryWrapper<HygfOnGrid> up4=new LambdaQueryWrapper();
up4.eq(HygfOnGrid::getWorkOrderId,workOrderId);
up4.eq(HygfOnGrid::getWorkOrderPowerStationId,workOrderPowerStationId);
HygfOnGrid hygfOnGrid=hygfOnGridMapper.selectOne(up4);
surveyInfoAllDto.setHygfOnGrid(hygfOnGrid!=null?hygfOnGrid:new HygfOnGrid());
surveyInfoAllDto.setPowerStationConstructionData(powerStationConstructionData!=null?powerStationConstructionData:new PowerStationConstructionData());
surveyInfoAllDto.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());
}
if(!StringUtils.isEmpty(processInstanceId)){
try {
Map<String, Object> flowLoggerMap = workflowFeignClient.getFlowLogger(processInstanceId).getResult();
List<LinkedHashMap> flowLogger = (List<LinkedHashMap>) flowLoggerMap.get("flowLogger");
if (flowLogger.size() > 0 ){
Collections.reverse(flowLogger);
}
List<LinkedHashMap> flowLoggernew =new ArrayList<>();
for (LinkedHashMap linkedHashMap : flowLogger) {
if(linkedHashMap.get("operateDate")!=null&&!linkedHashMap.get("operateDate").toString().isEmpty()){
LinkedHashMap linke=new LinkedHashMap();
linke.put("approvalStatue",linkedHashMap.get("approvalStatue").toString());
//审核意见
List<LinkedHashMap> approvalSuggestion = (List<LinkedHashMap>)linkedHashMap.get("approvalSuggestion");
if(approvalSuggestion!=null&&!approvalSuggestion.isEmpty()){
linke.put("approvalSuggestion",approvalSuggestion.get(0).get("message"));
}
linke.put("taskName",linkedHashMap.get("taskName").toString());
linke.put("operator",linkedHashMap.get("operator").toString());
linke.put("operateDate",linkedHashMap.get("operateDate").toString());
flowLoggernew.add(linke);
}
}
LoggerDto loggerDto =new LoggerDto();
loggerDto.setLogger(flowLoggernew);
surveyInfoAllDto.setOrderTracking(loggerDto);
} catch (Exception e){
e.printStackTrace();
}
}
return surveyInfoAllDto;
}
public JSONArray getRegionName(){
JSONArray jsonArray = new JSONArray();
if (redisUtils.hasKey(regionRedis)) {
jsonArray= JSONArray.parseArray(redisUtils.get(regionRedis).toString());
}else {
Collection<RegionModel> regionChild = new ArrayList<>();
RegionModel regionModel1 = new RegionModel();
regionChild.add(regionModel1);
FeignClientResult<Collection<RegionModel>> collectionFeignClientResult = Systemctl.regionClient.queryForTreeParent(610000L);
Collection<RegionModel> result = collectionFeignClientResult.getResult();
for (RegionModel regionModel : result) {
if(regionModel.getChildren()!=null&&!regionModel.getChildren().isEmpty()){
for (RegionModel child : regionModel.getChildren()) {
if(child.getChildren()!=null&&!child.getChildren().isEmpty()){
for (RegionModel childChild : child.getChildren()) {
jsonArray.add(childChild);
}
child.setChildren(regionChild);
jsonArray.add(child);
}
}
}
regionModel.setChildren(regionChild);
jsonArray.add(regionModel);
}
redisUtils.set(regionRedis,jsonArray);
}
return jsonArray;
}
}
public SurveyInfoAllDto querySurveyInfo(String surveyInformationId, String peasantHouseholdId,
String processInstanceId, AgencyUserModel userInfo) {
SurveyInfoAllDto surveyInfoAllDto = new SurveyInfoAllDto();
PeasantHousehold peasantHousehold = new PeasantHousehold();
if (!StringUtils.isEmpty(peasantHouseholdId)) {
LambdaQueryWrapper<PeasantHousehold> peasantHouseholdWrapper = new LambdaQueryWrapper<>();
peasantHouseholdWrapper.eq(PeasantHousehold::getSequenceNbr, peasantHouseholdId);
peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper().selectOne(peasantHouseholdWrapper);
surveyInformationId = String.valueOf(peasantHousehold.getSurveyInformationId());
} else {
QueryWrapper<PeasantHousehold> peasantHouseholdQueryWrapper = new QueryWrapper<>();
peasantHouseholdQueryWrapper.eq("survey_information_id", surveyInformationId);
peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper().selectOne(peasantHouseholdQueryWrapper);
}
// 勘察基本信息
LambdaQueryWrapper<SurveyInformation> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SurveyInformation::getSequenceNbr, surveyInformationId);
SurveyInformation surveyInformation = this.baseMapper.selectOne(queryWrapper);
surveyInfoAllDto.setSurveyInformation(BeanDtoUtils.convert(surveyInformation, SurveyInformationDto.class));
// 农户信息
// 获取用户所在经销商单位
UserUnitInformationDto userUnitInformationDto = personnelBusinessMapper
.getUserUnitInformationDto(peasantHousehold.getDeveloperUserId());
BeanUtils.copyProperties(peasantHousehold, surveyInfoAllDto.getSurveyInformation());
surveyInfoAllDto.getSurveyInformation().setDeveloperName(userUnitInformationDto.getAmosDealerName());
surveyInfoAllDto.getSurveyInformation().setDeveloperCode(userUnitInformationDto.getAmosDealerOrgCode());
surveyInfoAllDto.getSurveyInformation().setDeveloperId(userUnitInformationDto.getAmosDealerId());
if (surveyInfoAllDto.getSurveyInformation().getSalesmanId() == null) {
surveyInfoAllDto.getSurveyInformation().setSalesmanId(peasantHousehold.getDeveloperUserId());
surveyInfoAllDto.getSurveyInformation().setSalesman(peasantHousehold.getDeveloper());
surveyInfoAllDto.getSurveyInformation().setCreator(peasantHousehold.getDeveloper());
}
if (!StringUtils.isEmpty(peasantHousehold.getProjectAddressName())) {
surveyInfoAllDto.getSurveyInformation()
.setProjectAddressText(Arrays.asList(peasantHousehold.getProjectAddressName().split("/")));
}
if (!StringUtils.isEmpty(peasantHousehold.getPermanentAddressName())) {
surveyInfoAllDto.getSurveyInformation()
.setPermanentAddressText(Arrays.asList(peasantHousehold.getPermanentAddressName().split("/")));
}
if (peasantHousehold.getPermanentAddress() == null) {
surveyInfoAllDto.getSurveyInformation().setPermanentAddress(peasantHousehold.getProjectAddress());
surveyInfoAllDto.getSurveyInformation().setIsPermanent("1");
}
surveyInfoAllDto.getSurveyInformation().setSequenceNbr(surveyInformation.getSequenceNbr());
// 制单时间
surveyInfoAllDto.getSurveyInformation().setCreatorTime(surveyInformation.getCreatorTime());
QueryWrapper<SurveyDetails> surveyDetailsQueryWrapper = new QueryWrapper<>();
surveyDetailsQueryWrapper.eq("survey_information_id", surveyInformationId);
SurveyDetails surveyDetails = surveyDetailsService.getBaseMapper().selectOne(surveyDetailsQueryWrapper);
if (surveyDetails == null) {
surveyInfoAllDto.setSurveyDetails(new SurveyDetailsDto());
} else {
surveyInfoAllDto.setSurveyDetails(BeanDtoUtils.convert(surveyDetails, SurveyDetailsDto.class));
}
QueryWrapper<Information> informationQueryWrapper = new QueryWrapper<>();
informationQueryWrapper.eq("survey_information_id", surveyInformationId);
Information information = informationService.getBaseMapper().selectOne(informationQueryWrapper);
QueryWrapper<Commercial> commercialQueryWrapper = new QueryWrapper<>();
commercialQueryWrapper.eq("survey_information_id", surveyInformationId);
Commercial commercial = commercialService.getBaseMapper().selectOne(commercialQueryWrapper);
if (commercial == null) {
commercial = new Commercial();
}
if (information == null) {
surveyInfoAllDto.setInformation(new InformationDto());
} else {
information.setHouseProve(null == commercial ? new ArrayList<>()
: (CollectionUtil.isNotEmpty(commercial.getRealEstateLegal()) ? commercial.getRealEstateLegal()
: new ArrayList<>()));
information.setCardFile(null == commercial ? new ArrayList<>()
: (CollectionUtil.isNotEmpty(commercial.getIdCardCredit()) ? commercial.getIdCardCredit()
: new ArrayList<>()));
surveyInfoAllDto.setInformation(BeanDtoUtils.convert(information, InformationDto.class));
}
commercial.setApplicant(peasantHousehold.getOwnersName());
commercial.setIdCard(peasantHousehold.getIdCard());
commercial.setTelephone(peasantHousehold.getTelephone());
commercial.setProjectAddress(peasantHousehold.getProjectAddress());
commercial.setProjectAddressName(peasantHousehold.getProjectAddressName());
commercial.setProjectAddressDetail(peasantHousehold.getProjectAddressDetail());
commercial.setLegalContactTelephone(peasantHousehold.getTelephone());
List<Object> list = new ArrayList<>();
if (null != surveyDetails) {
if (CollectionUtil.isNotEmpty(surveyDetails.getSurroundingHouseSurvey())) {
list.addAll(surveyDetails.getSurroundingHouseSurvey());
}
if (CollectionUtil.isNotEmpty(surveyDetails.getOverallHousingSurvey())) {
list.addAll(surveyDetails.getOverallHousingSurvey());
}
if (CollectionUtil.isNotEmpty(surveyDetails.getPanoramaSurvey())) {
list.addAll(surveyDetails.getPanoramaSurvey());
}
if (CollectionUtil.isNotEmpty(surveyDetails.getPlanSketchSurvey())) {
list.addAll(surveyDetails.getPlanSketchSurvey());
}
if (CollectionUtil.isNotEmpty(surveyDetails.getAzimuthSurvey())) {
list.addAll(surveyDetails.getAzimuthSurvey());
}
}
commercial.setSurveyPhotosWeb(list);
if (information == null) {
CommercialDto commercialDto = BeanDtoUtils.convert(commercial, CommercialDto.class);
commercialDto.setType("zrr");
commercialDto.setLegalType("zjdnhw");
surveyInfoAllDto.setCommercial(commercialDto);
} else {
surveyInfoAllDto.setCommercial(BeanDtoUtils.convert(commercial, CommercialDto.class));
if (commercial != null && !StringUtils.isEmpty(commercial.getProjectAddressName())) {
surveyInfoAllDto.getCommercial()
.setProjectAddressText(Arrays.asList(commercial.getProjectAddressName().split("/")));
}
}
QueryWrapper<ExtendedInformation> extendedInformationQueryWrapper = new QueryWrapper<>();
extendedInformationQueryWrapper.eq("survey_information_id", surveyInformationId);
ExtendedInformation extendedInformation = extendedInformationService.getBaseMapper()
.selectOne(extendedInformationQueryWrapper);
if (information == null) {
surveyInfoAllDto.setExtendedInformation(new ExtendedInformationDto());
} else {
surveyInfoAllDto
.setExtendedInformation(BeanDtoUtils.convert(extendedInformation, ExtendedInformationDto.class));
}
QueryWrapper<DesignInformation> designInformationQueryWrapper = new QueryWrapper<>();
designInformationQueryWrapper.eq("peasant_household_id", peasantHousehold.getSequenceNbr());
DesignInformation designInformation = designInformationService.getBaseMapper()
.selectOne(designInformationQueryWrapper);
if (designInformation == null) {
surveyInfoAllDto.setDesignInformation(new DesignInformationDto());
} else {
surveyInfoAllDto.setDesignInformation(BeanDtoUtils.convert(designInformation, DesignInformationDto.class));
}
LambdaQueryWrapper<WorkOrderPowerStation> up1 = new LambdaQueryWrapper();
up1.eq(WorkOrderPowerStation::getPeasantHouseholdId, peasantHouseholdId);
WorkOrderPowerStation workOrderPowerStation = workOrderPowerStationMapper.selectOne(up1);
if (workOrderPowerStation != null) {
Long workOrderId = workOrderPowerStation.getWorkOrderId();
Long workOrderPowerStationId = workOrderPowerStation.getSequenceNbr();
// 派工单信息
LambdaQueryWrapper<WorkOrder> upl = new LambdaQueryWrapper();
upl.eq(WorkOrder::getSequenceNbr, workOrderId);
WorkOrder workOrder = workOrderMapper.selectOne(upl);
// 施工信息
LambdaQueryWrapper<PowerStationConstructionData> up2 = new LambdaQueryWrapper();
up2.eq(PowerStationConstructionData::getWorkOrderId, workOrderId);
up2.eq(PowerStationConstructionData::getWorkOrderPowerStationId, workOrderPowerStationId);
PowerStationConstructionData powerStationConstructionData = powerStationConstructionDataMapper
.selectOne(up2);
// 工程信息
LambdaQueryWrapper<PowerStationEngineeringInfo> up3 = new LambdaQueryWrapper();
up3.eq(PowerStationEngineeringInfo::getWorkOrderId, workOrderId);
up3.eq(PowerStationEngineeringInfo::getWorkOrderPowerStationId, workOrderPowerStationId);
PowerStationEngineeringInfo powerStationEngineeringInfo = powerStationEngineeringInfoMapper.selectOne(up3);
if (powerStationConstructionData != null) {
powerStationEngineeringInfo = powerStationEngineeringInfo != null ? powerStationEngineeringInfo
: new PowerStationEngineeringInfo();
powerStationEngineeringInfo
.setConstructionComponentInfo(powerStationConstructionData.getConstructionComponentInfo());
powerStationEngineeringInfo
.setConstructionInverterInfo(powerStationConstructionData.getConstructionInverterInfo());
powerStationEngineeringInfo.setConstructionCollectorBoxInfo(
powerStationConstructionData.getConstructionCollectorBoxInfo());
powerStationEngineeringInfo
.setConstructionGridBoxInfo(powerStationConstructionData.getConstructionGridBoxInfo());
powerStationEngineeringInfo.setProjectRegionManager(workOrder.getProjectRegionManager());
powerStationEngineeringInfo.setProjectRegionManagerPhone(workOrder.getProjectRegionManagerPhone());
powerStationEngineeringInfo.setConstructionRegionManager(workOrder.getConstructionRegionManager());
powerStationEngineeringInfo
.setConstructionRegionManagerPhone(workOrder.getConstructionRegionManagerPhone());
}
// 并网信息
LambdaQueryWrapper<HygfOnGrid> up4 = new LambdaQueryWrapper();
up4.eq(HygfOnGrid::getWorkOrderId, workOrderId);
up4.eq(HygfOnGrid::getWorkOrderPowerStationId, workOrderPowerStationId);
HygfOnGrid hygfOnGrid = hygfOnGridMapper.selectOne(up4);
surveyInfoAllDto.setHygfOnGrid(hygfOnGrid != null ? hygfOnGrid : new HygfOnGrid());
surveyInfoAllDto
.setPowerStationConstructionData(powerStationConstructionData != null ? powerStationConstructionData
: new PowerStationConstructionData());
surveyInfoAllDto
.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());
}
if (!StringUtils.isEmpty(processInstanceId)) {
try {
Map<String, Object> flowLoggerMap = workflowFeignClient.getFlowLogger(processInstanceId).getResult();
List<LinkedHashMap> flowLogger = (List<LinkedHashMap>) flowLoggerMap.get("flowLogger");
if (flowLogger.size() > 0) {
Collections.reverse(flowLogger);
}
List<LinkedHashMap> flowLoggernew = new ArrayList<>();
for (LinkedHashMap linkedHashMap : flowLogger) {
if (linkedHashMap.get("operateDate") != null
&& !linkedHashMap.get("operateDate").toString().isEmpty()) {
LinkedHashMap linke = new LinkedHashMap();
linke.put("approvalStatue", linkedHashMap.get("approvalStatue").toString());
// 审核意见
List<LinkedHashMap> approvalSuggestion = (List<LinkedHashMap>) linkedHashMap
.get("approvalSuggestion");
if (approvalSuggestion != null && !approvalSuggestion.isEmpty()) {
linke.put("approvalSuggestion", approvalSuggestion.get(0).get("message"));
}
linke.put("taskName", linkedHashMap.get("taskName").toString());
linke.put("operator", linkedHashMap.get("operator").toString());
linke.put("operateDate", linkedHashMap.get("operateDate").toString());
flowLoggernew.add(linke);
}
}
LoggerDto loggerDto = new LoggerDto();
loggerDto.setLogger(flowLoggernew);
surveyInfoAllDto.setOrderTracking(loggerDto);
} catch (Exception e) {
e.printStackTrace();
}
}
return surveyInfoAllDto;
}
public JSONArray getRegionName() {
JSONArray jsonArray = new JSONArray();
if (redisUtils.hasKey(regionRedis)) {
jsonArray = JSONArray.parseArray(redisUtils.get(regionRedis).toString());
} else {
Collection<RegionModel> regionChild = new ArrayList<>();
RegionModel regionModel1 = new RegionModel();
regionChild.add(regionModel1);
FeignClientResult<Collection<RegionModel>> collectionFeignClientResult = Systemctl.regionClient
.queryForTreeParent(610000L);
Collection<RegionModel> result = collectionFeignClientResult.getResult();
for (RegionModel regionModel : result) {
if (regionModel.getChildren() != null && !regionModel.getChildren().isEmpty()) {
for (RegionModel child : regionModel.getChildren()) {
if (child.getChildren() != null && !child.getChildren().isEmpty()) {
for (RegionModel childChild : child.getChildren()) {
jsonArray.add(childChild);
}
child.setChildren(regionChild);
jsonArray.add(child);
}
}
}
regionModel.setChildren(regionChild);
jsonArray.add(regionModel);
}
redisUtils.set(regionRedis, jsonArray);
}
return jsonArray;
}
}
\ No newline at end of file
......@@ -33,322 +33,281 @@ import java.util.*;
* @date 2024-01-02
*/
@Service
public class WorkOrderServiceImpl extends BaseService<WorkOrderDto,WorkOrder,WorkOrderMapper> implements IWorkOrderService {
@Autowired
RegionalCompaniesMapper regionalCompaniesMapper;
@Autowired
WorkOrderMapper workOrderMapper;
@Autowired
WorkOrderPowerStationServiceImpl workOrderPowerStationServiceImpl;
@Autowired
WorkOrderPowerStationMapper workOrderPowerStationMapper;
@Autowired
DesignInformationMapper designInformationMapper;
@Autowired
PowerStationConstructionDataServiceImpl powerStationConstructionDataService;
@Autowired
SurveyDetailsServiceImpl surveyDetailsService;
@Autowired
InformationServiceImpl informationService;
@Autowired
ExtendedInformationServiceImpl extendedInformationService;
@Autowired
CommercialServiceImpl commercialService;
@Autowired
PeasantHouseholdServiceImpl peasantHouseholdServiceImpl;
@Autowired
DesignInformationServiceImpl designInformationService;
@Autowired
PersonnelBusinessMapper personnelBusinessMapper;
@Autowired
SurveyInformationMapper surveyInformationMapper;
@Autowired
PowerStationConstructionDataMapper powerStationConstructionDataMapper;
@Autowired
PowerStationEngineeringInfoMapper powerStationEngineeringInfoMapper;
@Autowired
PowerStationEngineeringInfoServiceImpl powerStationEngineeringInfoService;
@Autowired
HygfOnGridMapper hygfOnGridMapper;
@Autowired
ConstructionRecordsServiceImpl constructionRecordsServiceImpl;
@Autowired
ConstructionRecordsMapper constructionRecordsMapper;
@Autowired
BasicGridAcceptanceMapper basicGridAcceptanceMapper;
@Autowired
WorkflowFeignClient workflowFeignClient;
@Autowired
PeasantHouseholdMapper peasantHouseholdMapper;
/**
* 分页查询
*/
public Page<WorkOrderDto> queryForWorkOrderPage(Page<WorkOrderDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<WorkOrderDto> queryForWorkOrderList() {
return this.queryForList("" , false);
}
@Transactional
public WorkOrder saveWorkOrder (WorkOrder model, UserUnitInformationDto userUnitInformationDto) {
//保存派工单
RegionalCompanies regionalCompanies= regionalCompaniesMapper.selectRegionName(model.getRegionCompanyId());
String code= NumberUtil.getCode(CodeEnum.派工单.getCode(),regionalCompanies.getCompanyCode(),regionalCompanies.getRegionalAddress());
model.setWorkOrderNum(code);
model.setRegionCompanyName(regionalCompanies.getRegionalCompaniesName());
model.setRegionCode(regionalCompanies.getRegionalCompaniesCode());
model.setWorkOrderStatus(WorkOrderEnum.待施工.getCode());
model.setRegionAddress(regionalCompanies.getRegionalAddress());
//获取经销商单位信息
model.setAmosDealerId(userUnitInformationDto.getAmosDealerId());
model.setAmosDealerName(userUnitInformationDto.getAmosDealerName());
model.setAmosDealerOrgCode(userUnitInformationDto.getAmosDealerOrgCode());
workOrderMapper.insert(model);
//保存派工单 电站信息
List<PeasantHousehold> peasantHouseholdId=model.getPeasantHouseholdId();
List<ConstructionRecords> constructionRecordlist=new ArrayList<>();
List<WorkOrderPowerStation> li=new ArrayList<>();
for (PeasantHousehold peasantHousehold : peasantHouseholdId) {
WorkOrderPowerStation workOrderPowerStation=new WorkOrderPowerStation();
workOrderPowerStation.setPeasantHouseholdId(peasantHousehold.getSequenceNbr());
workOrderPowerStation.setWorkOrderId(model.getSequenceNbr());
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.待施工.getCode());
li.add(workOrderPowerStation);
}
workOrderPowerStationServiceImpl.saveBatch(li);
for (WorkOrderPowerStation workOrderPowerStation : li) {
//增加操作日志
ConstructionRecords da=new ConstructionRecords(
workOrderPowerStation.getRecUserName(),
"新建派工单",
new Date(),
"",
workOrderPowerStation.getWorkOrderId(),
workOrderPowerStation.getSequenceNbr(),
workOrderPowerStation.getPeasantHouseholdId(),
"");
constructionRecordlist.add(da);
}
constructionRecordsServiceImpl.saveBatch(constructionRecordlist);
return model;
}
@Transactional
public WorkOrder updateWorkOrder (WorkOrder model, UserUnitInformationDto userUnitInformationDto) {
//保存派工单
RegionalCompanies regionalCompanies= regionalCompaniesMapper.selectRegionName(model.getRegionCompanyId());
model.setRegionCompanyName(regionalCompanies.getRegionalCompaniesName());
model.setRegionCode(regionalCompanies.getRegionalCompaniesCode());
model.setWorkOrderStatus(WorkOrderEnum.待施工.getCode());
model.setRegionAddress(regionalCompanies.getRegionalAddress());
//获取经销商单位信息
model.setAmosDealerId(userUnitInformationDto.getAmosDealerId());
model.setAmosDealerName(userUnitInformationDto.getAmosDealerName());
model.setAmosDealerOrgCode(userUnitInformationDto.getAmosDealerOrgCode());
workOrderMapper.updateById(model);
LambdaQueryWrapper<WorkOrderPowerStation> up=new LambdaQueryWrapper();
up.eq(WorkOrderPowerStation::getWorkOrderId,model.getSequenceNbr());
workOrderPowerStationMapper.delete(up);
//保存派工单 电站信息
List<PeasantHousehold> peasantHouseholdId=model.getPeasantHouseholdId();
List<WorkOrderPowerStation> li=new ArrayList<>();
for (PeasantHousehold peasantHousehold : peasantHouseholdId) {
WorkOrderPowerStation workOrderPowerStation=new WorkOrderPowerStation();
workOrderPowerStation.setPeasantHouseholdId(peasantHousehold.getSequenceNbr());
workOrderPowerStation.setWorkOrderId(model.getSequenceNbr());
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.待施工.getCode());
li.add(workOrderPowerStation);
}
workOrderPowerStationServiceImpl.saveBatch(li);
List<ConstructionRecords> constructionRecordlist=new ArrayList<>();
for (WorkOrderPowerStation workOrderPowerStation : li) {
//增加操作日志
ConstructionRecords da=new ConstructionRecords(
workOrderPowerStation.getRecUserName(),
"编辑派工单",
new Date(),
"",
workOrderPowerStation.getWorkOrderId(),
workOrderPowerStation.getSequenceNbr(),
workOrderPowerStation.getPeasantHouseholdId(),
"");
constructionRecordlist.add(da);
}
constructionRecordsServiceImpl.saveBatch(constructionRecordlist);
return model;
}
public WorkOrder selectOne(Long sequenceNbr) {
WorkOrder model= workOrderMapper.selectById(sequenceNbr);
List<PeasantHousehold> li=workOrderPowerStationMapper.selectPeasantHousehold(sequenceNbr,null);
model.setPeasantHouseholdId(li);
return model;
}
public Map<String,Object> selectOneall(Long sequenceNbr) {
WorkOrder model= workOrderMapper.selectById(sequenceNbr);
List<PeasantHousehold> lih=workOrderPowerStationMapper.selectPeasantHousehold(sequenceNbr,null);
//获取所有电站Bom,分组合并,暂时不相加
List<Long> ids=new ArrayList<>();
for (PeasantHousehold documentStation : lih) {
ids.add(documentStation.getSequenceNbr());
}
QueryWrapper<DesignInformation> designInformationQueryWrapper = new QueryWrapper<>();
designInformationQueryWrapper.in("peasant_household_id", ids);
List<DesignInformation> li = designInformationMapper.selectList(designInformationQueryWrapper);
DesignInformation designInformation=new DesignInformation();
//组件
List<Object> assembly=new ArrayList<>();
//逆变器
List<Object> inverter=new ArrayList<>();
//电表箱
List<Object> electricityMeter=new ArrayList<>();
//电缆
List<Object> cable=new ArrayList<>();
for (DesignInformation des : li) {
if(des.getAssembly()!=null&&!des.getAssembly().isEmpty()){
assembly.addAll(des.getAssembly());
}
if(des.getInverter()!=null&&!des.getInverter().isEmpty()){
inverter.addAll(des.getInverter());
}
if(des.getElectricityMeter()!=null&&!des.getElectricityMeter().isEmpty()){
electricityMeter.addAll(des.getElectricityMeter());
}
if(des.getCable()!=null&&!des.getCable().isEmpty()){
cable.addAll(des.getCable());
}
}
List<PeasantHousehold> list=workOrderPowerStationMapper.selectPeasantHousehold(sequenceNbr,null);
Map<String,Object> map =new HashMap<>();
designInformation.setAssembly(assembly);
designInformation.setInverter(inverter);
designInformation.setElectricityMeter(electricityMeter);
designInformation.setCable(cable);
map.put("workOrder",model);
map.put("designInformation",designInformation);
map.put("peasantHousehold",list);
return map;
}
@Transactional
public PowerStationConstructionData addOrUpdate(PowerStationConstructionData powerStationConstructionData){
public class WorkOrderServiceImpl extends BaseService<WorkOrderDto, WorkOrder, WorkOrderMapper>
implements IWorkOrderService {
@Autowired
RegionalCompaniesMapper regionalCompaniesMapper;
@Autowired
WorkOrderMapper workOrderMapper;
@Autowired
WorkOrderPowerStationServiceImpl workOrderPowerStationServiceImpl;
@Autowired
WorkOrderPowerStationMapper workOrderPowerStationMapper;
@Autowired
DesignInformationMapper designInformationMapper;
@Autowired
PowerStationConstructionDataServiceImpl powerStationConstructionDataService;
@Autowired
SurveyDetailsServiceImpl surveyDetailsService;
@Autowired
InformationServiceImpl informationService;
@Autowired
ExtendedInformationServiceImpl extendedInformationService;
@Autowired
CommercialServiceImpl commercialService;
@Autowired
PeasantHouseholdServiceImpl peasantHouseholdServiceImpl;
@Autowired
DesignInformationServiceImpl designInformationService;
@Autowired
PersonnelBusinessMapper personnelBusinessMapper;
@Autowired
SurveyInformationMapper surveyInformationMapper;
@Autowired
PowerStationConstructionDataMapper powerStationConstructionDataMapper;
@Autowired
PowerStationEngineeringInfoMapper powerStationEngineeringInfoMapper;
@Autowired
PowerStationEngineeringInfoServiceImpl powerStationEngineeringInfoService;
@Autowired
HygfOnGridMapper hygfOnGridMapper;
@Autowired
ConstructionRecordsServiceImpl constructionRecordsServiceImpl;
@Autowired
ConstructionRecordsMapper constructionRecordsMapper;
@Autowired
BasicGridAcceptanceMapper basicGridAcceptanceMapper;
@Autowired
WorkflowFeignClient workflowFeignClient;
@Autowired
PeasantHouseholdMapper peasantHouseholdMapper;
/**
* 分页查询
*/
public Page<WorkOrderDto> queryForWorkOrderPage(Page<WorkOrderDto> page) {
return this.queryForPage(page, null, false);
}
/**
* 列表查询 示例
*/
public List<WorkOrderDto> queryForWorkOrderList() {
return this.queryForList("", false);
}
@Transactional
public WorkOrder saveWorkOrder(WorkOrder model, UserUnitInformationDto userUnitInformationDto) {
// 保存派工单
RegionalCompanies regionalCompanies = regionalCompaniesMapper.selectRegionName(model.getRegionCompanyId());
String code = NumberUtil.getCode(CodeEnum.派工单.getCode(), regionalCompanies.getCompanyCode(),
regionalCompanies.getRegionalAddress());
model.setWorkOrderNum(code);
model.setRegionCompanyName(regionalCompanies.getRegionalCompaniesName());
model.setRegionCode(regionalCompanies.getRegionalCompaniesCode());
model.setWorkOrderStatus(WorkOrderEnum.待施工.getCode());
model.setRegionAddress(regionalCompanies.getRegionalAddress());
// 获取经销商单位信息
model.setAmosDealerId(userUnitInformationDto.getAmosDealerId());
model.setAmosDealerName(userUnitInformationDto.getAmosDealerName());
model.setAmosDealerOrgCode(userUnitInformationDto.getAmosDealerOrgCode());
workOrderMapper.insert(model);
// 保存派工单 电站信息
List<PeasantHousehold> peasantHouseholdId = model.getPeasantHouseholdId();
List<ConstructionRecords> constructionRecordlist = new ArrayList<>();
List<WorkOrderPowerStation> li = new ArrayList<>();
for (PeasantHousehold peasantHousehold : peasantHouseholdId) {
WorkOrderPowerStation workOrderPowerStation = new WorkOrderPowerStation();
workOrderPowerStation.setPeasantHouseholdId(peasantHousehold.getSequenceNbr());
workOrderPowerStation.setWorkOrderId(model.getSequenceNbr());
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.待施工.getCode());
li.add(workOrderPowerStation);
}
workOrderPowerStationServiceImpl.saveBatch(li);
for (WorkOrderPowerStation workOrderPowerStation : li) {
// 增加操作日志
ConstructionRecords da = new ConstructionRecords(workOrderPowerStation.getRecUserName(), "新建派工单",
new Date(), "", workOrderPowerStation.getWorkOrderId(), workOrderPowerStation.getSequenceNbr(),
workOrderPowerStation.getPeasantHouseholdId(), "");
constructionRecordlist.add(da);
}
constructionRecordsServiceImpl.saveBatch(constructionRecordlist);
return model;
}
@Transactional
public WorkOrder updateWorkOrder(WorkOrder model, UserUnitInformationDto userUnitInformationDto) {
// 保存派工单
RegionalCompanies regionalCompanies = regionalCompaniesMapper.selectRegionName(model.getRegionCompanyId());
model.setRegionCompanyName(regionalCompanies.getRegionalCompaniesName());
model.setRegionCode(regionalCompanies.getRegionalCompaniesCode());
model.setWorkOrderStatus(WorkOrderEnum.待施工.getCode());
model.setRegionAddress(regionalCompanies.getRegionalAddress());
// 获取经销商单位信息
model.setAmosDealerId(userUnitInformationDto.getAmosDealerId());
model.setAmosDealerName(userUnitInformationDto.getAmosDealerName());
model.setAmosDealerOrgCode(userUnitInformationDto.getAmosDealerOrgCode());
workOrderMapper.updateById(model);
LambdaQueryWrapper<WorkOrderPowerStation> up = new LambdaQueryWrapper();
up.eq(WorkOrderPowerStation::getWorkOrderId, model.getSequenceNbr());
workOrderPowerStationMapper.delete(up);
// 保存派工单 电站信息
List<PeasantHousehold> peasantHouseholdId = model.getPeasantHouseholdId();
List<WorkOrderPowerStation> li = new ArrayList<>();
for (PeasantHousehold peasantHousehold : peasantHouseholdId) {
WorkOrderPowerStation workOrderPowerStation = new WorkOrderPowerStation();
workOrderPowerStation.setPeasantHouseholdId(peasantHousehold.getSequenceNbr());
workOrderPowerStation.setWorkOrderId(model.getSequenceNbr());
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.待施工.getCode());
li.add(workOrderPowerStation);
}
workOrderPowerStationServiceImpl.saveBatch(li);
List<ConstructionRecords> constructionRecordlist = new ArrayList<>();
for (WorkOrderPowerStation workOrderPowerStation : li) {
// 增加操作日志
ConstructionRecords da = new ConstructionRecords(workOrderPowerStation.getRecUserName(), "编辑派工单",
new Date(), "", workOrderPowerStation.getWorkOrderId(), workOrderPowerStation.getSequenceNbr(),
workOrderPowerStation.getPeasantHouseholdId(), "");
constructionRecordlist.add(da);
}
constructionRecordsServiceImpl.saveBatch(constructionRecordlist);
return model;
}
public WorkOrder selectOne(Long sequenceNbr) {
WorkOrder model = workOrderMapper.selectById(sequenceNbr);
List<PeasantHousehold> li = workOrderPowerStationMapper.selectPeasantHousehold(sequenceNbr, null);
model.setPeasantHouseholdId(li);
return model;
}
public Map<String, Object> selectOneall(Long sequenceNbr) {
WorkOrder model = workOrderMapper.selectById(sequenceNbr);
List<PeasantHousehold> lih = workOrderPowerStationMapper.selectPeasantHousehold(sequenceNbr, null);
// 获取所有电站Bom,分组合并,暂时不相加
List<Long> ids = new ArrayList<>();
for (PeasantHousehold documentStation : lih) {
ids.add(documentStation.getSequenceNbr());
}
QueryWrapper<DesignInformation> designInformationQueryWrapper = new QueryWrapper<>();
designInformationQueryWrapper.in("peasant_household_id", ids);
List<DesignInformation> li = designInformationMapper.selectList(designInformationQueryWrapper);
DesignInformation designInformation = new DesignInformation();
// 组件
List<Object> assembly = new ArrayList<>();
// 逆变器
List<Object> inverter = new ArrayList<>();
// 电表箱
List<Object> electricityMeter = new ArrayList<>();
// 电缆
List<Object> cable = new ArrayList<>();
for (DesignInformation des : li) {
if (des.getAssembly() != null && !des.getAssembly().isEmpty()) {
assembly.addAll(des.getAssembly());
}
if (des.getInverter() != null && !des.getInverter().isEmpty()) {
inverter.addAll(des.getInverter());
}
if (des.getElectricityMeter() != null && !des.getElectricityMeter().isEmpty()) {
electricityMeter.addAll(des.getElectricityMeter());
}
if (des.getCable() != null && !des.getCable().isEmpty()) {
cable.addAll(des.getCable());
}
}
List<PeasantHousehold> list = workOrderPowerStationMapper.selectPeasantHousehold(sequenceNbr, null);
Map<String, Object> map = new HashMap<>();
designInformation.setAssembly(assembly);
designInformation.setInverter(inverter);
designInformation.setElectricityMeter(electricityMeter);
designInformation.setCable(cable);
map.put("workOrder", model);
map.put("designInformation", designInformation);
map.put("peasantHousehold", list);
return map;
}
@Transactional
public PowerStationConstructionData addOrUpdate(PowerStationConstructionData powerStationConstructionData) {
// if(powerStationConstructionData.getSequenceNbr()!=null){
//修改施工电站状态
LambdaUpdateWrapper<WorkOrderPowerStation> up=new LambdaUpdateWrapper();
up.eq(WorkOrderPowerStation::getSequenceNbr,powerStationConstructionData.getWorkOrderPowerStationId());
if(powerStationConstructionData.getConstructionStatus().equals("未完成")){
up.set(WorkOrderPowerStation::getPowerStationConstructionStatus,WorkOrderEnum.施工中.getCode());
}else{
up.set(WorkOrderPowerStation::getPowerStationConstructionStatus,WorkOrderEnum.待登记.getCode());
WorkOrderPowerStation basicGridAcceptanc= workOrderPowerStationMapper.selectById(powerStationConstructionData.getWorkOrderPowerStationId());
//施工完成
LambdaUpdateWrapper<PeasantHousehold> up1 =new LambdaUpdateWrapper<>();
up1.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.并网完成.getCode());
long idsk= basicGridAcceptanc.getPeasantHouseholdId();
up1.eq(PeasantHousehold::getSequenceNbr,idsk);
peasantHouseholdMapper.update(null,up1);
}
workOrderPowerStationMapper.update(null,up);
//修改派工单状态
LambdaQueryWrapper<WorkOrderPowerStation> qu=new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getWorkOrderId,powerStationConstructionData.getWorkOrderId());
List<String> d=new ArrayList<>();
d.add(WorkOrderEnum.施工中.getCode());
d.add(WorkOrderEnum.待施工.getCode());
qu.in(WorkOrderPowerStation::getPowerStationConstructionStatus,d);
List<WorkOrderPowerStation> list=workOrderPowerStationMapper.selectList(qu);
LambdaUpdateWrapper<WorkOrder> upq=new LambdaUpdateWrapper();
upq.eq(WorkOrder::getSequenceNbr,powerStationConstructionData.getWorkOrderId());
if(list!=null&&!list.isEmpty()){
upq.set(WorkOrder::getWorkOrderStatus,WorkOrderEnum.施工中.getCode());
}else{
upq.set(WorkOrder::getWorkOrderStatus,WorkOrderEnum.登记中.getCode());
}
workOrderMapper.update(null,upq);
//新增施工信息
powerStationConstructionDataService.saveOrUpdate(powerStationConstructionData);
//增加操作日志
if(powerStationConstructionData.getSequenceNbr()!=null){
ConstructionRecords da=new ConstructionRecords(
powerStationConstructionData.getRecUserName(),
"编辑施工资料",
new Date(),
"",
powerStationConstructionData.getWorkOrderId(),
powerStationConstructionData.getWorkOrderPowerStationId(),
null,
"");
constructionRecordsServiceImpl.save(da);
}else{
ConstructionRecords da=new ConstructionRecords(
powerStationConstructionData.getRecUserName(),
"新增施工资料",
new Date(),
"",
powerStationConstructionData.getWorkOrderId(),
powerStationConstructionData.getWorkOrderPowerStationId(),
null,
"");
constructionRecordsServiceImpl.save(da);
}
// 修改施工电站状态
LambdaUpdateWrapper<WorkOrderPowerStation> up = new LambdaUpdateWrapper();
up.eq(WorkOrderPowerStation::getSequenceNbr, powerStationConstructionData.getWorkOrderPowerStationId());
if (powerStationConstructionData.getConstructionStatus().equals("未完成")) {
up.set(WorkOrderPowerStation::getPowerStationConstructionStatus, WorkOrderEnum.施工中.getCode());
} else {
up.set(WorkOrderPowerStation::getPowerStationConstructionStatus, WorkOrderEnum.待登记.getCode());
WorkOrderPowerStation basicGridAcceptanc = workOrderPowerStationMapper
.selectById(powerStationConstructionData.getWorkOrderPowerStationId());
// 施工完成
LambdaUpdateWrapper<PeasantHousehold> up1 = new LambdaUpdateWrapper<>();
up1.set(PeasantHousehold::getConstructionState, ArrivalStateeEnum.并网完成.getCode());
long idsk = basicGridAcceptanc.getPeasantHouseholdId();
up1.eq(PeasantHousehold::getSequenceNbr, idsk);
peasantHouseholdMapper.update(null, up1);
}
workOrderPowerStationMapper.update(null, up);
// 修改派工单状态
LambdaQueryWrapper<WorkOrderPowerStation> qu = new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getWorkOrderId, powerStationConstructionData.getWorkOrderId());
List<String> d = new ArrayList<>();
d.add(WorkOrderEnum.施工中.getCode());
d.add(WorkOrderEnum.待施工.getCode());
qu.in(WorkOrderPowerStation::getPowerStationConstructionStatus, d);
List<WorkOrderPowerStation> list = workOrderPowerStationMapper.selectList(qu);
LambdaUpdateWrapper<WorkOrder> upq = new LambdaUpdateWrapper();
upq.eq(WorkOrder::getSequenceNbr, powerStationConstructionData.getWorkOrderId());
if (list != null && !list.isEmpty()) {
upq.set(WorkOrder::getWorkOrderStatus, WorkOrderEnum.施工中.getCode());
} else {
upq.set(WorkOrder::getWorkOrderStatus, WorkOrderEnum.登记中.getCode());
}
workOrderMapper.update(null, upq);
// 新增施工信息
powerStationConstructionDataService.saveOrUpdate(powerStationConstructionData);
// 增加操作日志
if (powerStationConstructionData.getSequenceNbr() != null) {
ConstructionRecords da = new ConstructionRecords(powerStationConstructionData.getRecUserName(), "编辑施工资料",
new Date(), "", powerStationConstructionData.getWorkOrderId(),
powerStationConstructionData.getWorkOrderPowerStationId(), null, "");
constructionRecordsServiceImpl.save(da);
} else {
ConstructionRecords da = new ConstructionRecords(powerStationConstructionData.getRecUserName(), "新增施工资料",
new Date(), "", powerStationConstructionData.getWorkOrderId(),
powerStationConstructionData.getWorkOrderPowerStationId(), null, "");
constructionRecordsServiceImpl.save(da);
}
// }else{
// //修改施工电站状态
......@@ -380,387 +339,399 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto,WorkOrder,Wor
//
// }
return powerStationConstructionData;
}
public Page<WorkOrder> selectPage( int pageNum,int pageSize, WorkOrder workOrder){
PageHelper.startPage(pageNum, pageSize);
List<WorkOrder> list=workOrderMapper.selectWorkOrderList(workOrder);
PageInfo<WorkOrder> page = new PageInfo(list);
Page<WorkOrder> pagenew = new Page<WorkOrder>();
pagenew.setCurrent(pageNum);
pagenew.setTotal(page.getTotal());
pagenew.setSize(pageSize);
pagenew.setRecords(page.getList());
return pagenew;
}
public Page<WorkOrderPage> queryForwgpage( int pageNum,int pageSize, WorkOrderPage workOrder){
PageHelper.startPage(pageNum, pageSize);
List<WorkOrderPage> list=workOrderMapper.queryForwgpage(workOrder);
PageInfo<WorkOrderPage> page = new PageInfo(list);
Page<WorkOrderPage> pagenew = new Page<WorkOrderPage>();
pagenew.setCurrent(pageNum);
pagenew.setTotal(page.getTotal());
pagenew.setSize(pageSize);
pagenew.setRecords(page.getList());
return pagenew;
}
public SurveyInfoAllDto getsurveyQueryxq(Long peasantHouseholdId,Long workOrderId,Long workOrderPowerStationId) {
SurveyInfoAllDto surveyInfoAllDto = new SurveyInfoAllDto();
PeasantHousehold peasantHousehold = new PeasantHousehold();
LambdaQueryWrapper<PeasantHousehold> peasantHouseholdWrapper = new LambdaQueryWrapper<>();
peasantHouseholdWrapper.eq(PeasantHousehold::getSequenceNbr, peasantHouseholdId);
peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper().selectOne(peasantHouseholdWrapper);
String surveyInformationId = String.valueOf(peasantHousehold.getSurveyInformationId());
//勘察基本信息
LambdaQueryWrapper<SurveyInformation> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SurveyInformation::getSequenceNbr, surveyInformationId);
SurveyInformation surveyInformation = surveyInformationMapper.selectOne(queryWrapper);
surveyInfoAllDto.setSurveyInformation(BeanDtoUtils.convert(surveyInformation, SurveyInformationDto.class));
//农户信息
//获取用户所在经销商单位
UserUnitInformationDto userUnitInformationDto=personnelBusinessMapper.getUserUnitInformationDto(peasantHousehold.getDeveloperUserId());
BeanUtils.copyProperties(peasantHousehold, surveyInfoAllDto.getSurveyInformation());
surveyInfoAllDto.getSurveyInformation().setDeveloperName(userUnitInformationDto.getAmosDealerName());
surveyInfoAllDto.getSurveyInformation().setDeveloperCode(userUnitInformationDto.getAmosDealerOrgCode());
surveyInfoAllDto.getSurveyInformation().setDeveloperId(userUnitInformationDto.getAmosDealerId());
if (!StringUtils.isEmpty(peasantHousehold.getProjectAddressName())) {
surveyInfoAllDto.getSurveyInformation().setProjectAddressText(Arrays.asList(peasantHousehold.getProjectAddressName().split("/")));
}
if(!StringUtils.isEmpty(peasantHousehold.getPermanentAddressName())){
surveyInfoAllDto.getSurveyInformation().setPermanentAddressText(Arrays.asList(peasantHousehold.getPermanentAddressName().split("/")));
}
if(peasantHousehold.getPermanentAddress() ==null){
surveyInfoAllDto.getSurveyInformation().setPermanentAddress(peasantHousehold.getProjectAddress());
surveyInfoAllDto.getSurveyInformation().setIsPermanent("1");
}
surveyInfoAllDto.getSurveyInformation().setSequenceNbr(surveyInformation.getSequenceNbr());
QueryWrapper<SurveyDetails> surveyDetailsQueryWrapper = new QueryWrapper<>();
surveyDetailsQueryWrapper.eq("survey_information_id", surveyInformationId);
SurveyDetails surveyDetails = surveyDetailsService.getBaseMapper().selectOne(surveyDetailsQueryWrapper);
if(surveyDetails == null){
surveyInfoAllDto.setSurveyDetails(new SurveyDetailsDto());
}else {
surveyInfoAllDto.setSurveyDetails(BeanDtoUtils.convert(surveyDetails, SurveyDetailsDto.class));
}
QueryWrapper<Information> informationQueryWrapper = new QueryWrapper<>();
informationQueryWrapper.eq("survey_information_id", surveyInformationId);
Information information = informationService.getBaseMapper().selectOne(informationQueryWrapper);
if(information == null){
surveyInfoAllDto.setInformation(new InformationDto());
}else {
surveyInfoAllDto.setInformation(BeanDtoUtils.convert(information, InformationDto.class));
}
QueryWrapper<Commercial> commercialQueryWrapper = new QueryWrapper<>();
commercialQueryWrapper.eq("survey_information_id", surveyInformationId);
Commercial commercial = commercialService.getBaseMapper().selectOne(commercialQueryWrapper);
if(commercial==null){
commercial=new Commercial();
}
commercial.setApplicant(peasantHousehold.getOwnersName());
commercial.setIdCard(peasantHousehold.getIdCard());
commercial.setTelephone(peasantHousehold.getTelephone());
commercial.setProjectAddress(peasantHousehold.getProjectAddress());
commercial.setProjectAddressName(peasantHousehold.getProjectAddressName());
commercial.setProjectAddressDetail(peasantHousehold.getProjectAddressDetail());
commercial.setLegalContactTelephone(peasantHousehold.getTelephone());
if(information == null){
CommercialDto commercialDto = BeanDtoUtils.convert(commercial, CommercialDto.class);
commercialDto.setType("zrr");
commercialDto.setLegalType("zjdnhw");
surveyInfoAllDto.setCommercial(commercialDto);
}else {
surveyInfoAllDto.setCommercial(BeanDtoUtils.convert(commercial, CommercialDto.class));
if(commercial !=null && !StringUtils.isEmpty(commercial.getProjectAddressName())){
surveyInfoAllDto.getCommercial().setProjectAddressText(Arrays.asList(commercial.getProjectAddressName().split("/")));
}
}
QueryWrapper<ExtendedInformation> extendedInformationQueryWrapper = new QueryWrapper<>();
extendedInformationQueryWrapper.eq("survey_information_id", surveyInformationId);
ExtendedInformation extendedInformation = extendedInformationService.getBaseMapper().selectOne(extendedInformationQueryWrapper);
if(information == null){
surveyInfoAllDto.setExtendedInformation(new ExtendedInformationDto());
}else {
surveyInfoAllDto.setExtendedInformation(BeanDtoUtils.convert(extendedInformation, ExtendedInformationDto.class));
}
QueryWrapper<DesignInformation> designInformationQueryWrapper = new QueryWrapper<>();
designInformationQueryWrapper.eq("peasant_household_id", peasantHousehold.getSequenceNbr());
DesignInformation designInformation = designInformationService.getBaseMapper().selectOne(designInformationQueryWrapper);
if(designInformation == null){
surveyInfoAllDto.setDesignInformation(new DesignInformationDto());
}else {
surveyInfoAllDto.setDesignInformation(BeanDtoUtils.convert(designInformation, DesignInformationDto.class));
}
//派工单信息
LambdaQueryWrapper<WorkOrder> upl=new LambdaQueryWrapper();
upl.eq(WorkOrder::getSequenceNbr,workOrderId);
WorkOrder workOrder= workOrderMapper.selectOne(upl);
//施工信息
LambdaQueryWrapper<PowerStationConstructionData> up2=new LambdaQueryWrapper();
up2.eq(PowerStationConstructionData::getWorkOrderId,workOrderId);
up2.eq(PowerStationConstructionData::getWorkOrderPowerStationId,workOrderPowerStationId);
PowerStationConstructionData powerStationConstructionData=powerStationConstructionDataMapper.selectOne(up2);
//工程信息
LambdaQueryWrapper<PowerStationEngineeringInfo> up3=new LambdaQueryWrapper();
up3.eq(PowerStationEngineeringInfo::getWorkOrderId,workOrderId);
up3.eq(PowerStationEngineeringInfo::getWorkOrderPowerStationId,workOrderPowerStationId);
PowerStationEngineeringInfo powerStationEngineeringInfo=powerStationEngineeringInfoMapper.selectOne(up3);
if(powerStationConstructionData!=null){
powerStationEngineeringInfo=powerStationEngineeringInfo!=null?powerStationEngineeringInfo:new PowerStationEngineeringInfo();
powerStationEngineeringInfo.setConstructionComponentInfo(powerStationConstructionData.getConstructionComponentInfo());
powerStationEngineeringInfo.setConstructionInverterInfo(powerStationConstructionData.getConstructionInverterInfo());
powerStationEngineeringInfo.setConstructionCollectorBoxInfo(powerStationConstructionData.getConstructionCollectorBoxInfo());
powerStationEngineeringInfo.setConstructionGridBoxInfo(powerStationConstructionData.getConstructionGridBoxInfo());
powerStationEngineeringInfo.setProjectRegionManager(workOrder.getProjectRegionManager());
powerStationEngineeringInfo.setProjectRegionManagerPhone(workOrder.getProjectRegionManagerPhone());
powerStationEngineeringInfo.setConstructionRegionManager(workOrder.getConstructionRegionManager());
powerStationEngineeringInfo.setConstructionRegionManagerPhone(workOrder.getConstructionRegionManagerPhone());
}
//施工自审
LambdaQueryWrapper<ConstructionRecords> up5=new LambdaQueryWrapper();
up5.eq(ConstructionRecords::getWorkOrderId,workOrderId);
up5.eq(ConstructionRecords::getWorkOrderPowerStationId,workOrderPowerStationId);
up5.orderByAsc(ConstructionRecords::getRecDate);
List<ConstructionRecords> li=constructionRecordsMapper.selectList(up5);
ConstructionRecords data=new ConstructionRecords();
data.setConstructionRecordsList(li);
surveyInfoAllDto.setConstructionRecords(data);
//并网信息
LambdaQueryWrapper<HygfOnGrid> up4=new LambdaQueryWrapper();
up4.eq(HygfOnGrid::getWorkOrderId,workOrderId);
up4.eq(HygfOnGrid::getWorkOrderPowerStationId,workOrderPowerStationId);
HygfOnGrid hygfOnGrid=hygfOnGridMapper.selectOne(up4);
surveyInfoAllDto.setHygfOnGrid(hygfOnGrid!=null?hygfOnGrid:new HygfOnGrid());
surveyInfoAllDto.setPowerStationConstructionData(powerStationConstructionData);
surveyInfoAllDto.setPowerStationEngineeringInfo(powerStationEngineeringInfo);
surveyInfoAllDto.setWorkOrder(workOrder);
return surveyInfoAllDto;
}
public PowerStationEngineeringInfoAllDto getPowerStationEngineeringInfo(Long workOrderPowerStationId) {
LambdaQueryWrapper<WorkOrderPowerStation> qu=new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getSequenceNbr,workOrderPowerStationId);
WorkOrderPowerStation workOrderPowerStation=workOrderPowerStationMapper.selectOne(qu);
Long peasantHouseholdId=workOrderPowerStation.getPeasantHouseholdId();
Long workOrderId=workOrderPowerStation.getWorkOrderId();
PowerStationEngineeringInfoAllDto surveyInfoAllDto = new PowerStationEngineeringInfoAllDto();
PeasantHousehold peasantHousehold = new PeasantHousehold();
LambdaQueryWrapper<PeasantHousehold> peasantHouseholdWrapper = new LambdaQueryWrapper<>();
peasantHouseholdWrapper.eq(PeasantHousehold::getSequenceNbr, peasantHouseholdId);
peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper().selectOne(peasantHouseholdWrapper);
String surveyInformationId = String.valueOf(peasantHousehold.getSurveyInformationId());
//勘察基本信息
LambdaQueryWrapper<SurveyInformation> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SurveyInformation::getSequenceNbr, surveyInformationId);
SurveyInformation surveyInformation = surveyInformationMapper.selectOne(queryWrapper);
surveyInfoAllDto.setSurveyInformation(BeanDtoUtils.convert(surveyInformation, SurveyInformationDto.class));
//农户信息
//获取用户所在经销商单位
UserUnitInformationDto userUnitInformationDto=personnelBusinessMapper.getUserUnitInformationDto(peasantHousehold.getDeveloperUserId());
BeanUtils.copyProperties(peasantHousehold, surveyInfoAllDto.getSurveyInformation());
surveyInfoAllDto.getSurveyInformation().setDeveloperName(userUnitInformationDto.getAmosDealerName());
surveyInfoAllDto.getSurveyInformation().setDeveloperCode(userUnitInformationDto.getAmosDealerOrgCode());
surveyInfoAllDto.getSurveyInformation().setDeveloperId(userUnitInformationDto.getAmosDealerId());
if (!StringUtils.isEmpty(peasantHousehold.getProjectAddressName())) {
surveyInfoAllDto.getSurveyInformation().setProjectAddressText(Arrays.asList(peasantHousehold.getProjectAddressName().split("/")));
}
if(!StringUtils.isEmpty(peasantHousehold.getPermanentAddressName())){
surveyInfoAllDto.getSurveyInformation().setPermanentAddressText(Arrays.asList(peasantHousehold.getPermanentAddressName().split("/")));
}
if(peasantHousehold.getPermanentAddress() ==null){
surveyInfoAllDto.getSurveyInformation().setPermanentAddress(peasantHousehold.getProjectAddress());
surveyInfoAllDto.getSurveyInformation().setIsPermanent("1");
}
surveyInfoAllDto.getSurveyInformation().setSequenceNbr(surveyInformation.getSequenceNbr());
QueryWrapper<SurveyDetails> surveyDetailsQueryWrapper = new QueryWrapper<>();
surveyDetailsQueryWrapper.eq("survey_information_id", surveyInformationId);
SurveyDetails surveyDetails = surveyDetailsService.getBaseMapper().selectOne(surveyDetailsQueryWrapper);
if(surveyDetails == null){
surveyInfoAllDto.setSurveyDetails(new SurveyDetailsDto());
}else {
surveyInfoAllDto.setSurveyDetails(BeanDtoUtils.convert(surveyDetails, SurveyDetailsDto.class));
}
return powerStationConstructionData;
}
public Page<WorkOrder> selectPage(int pageNum, int pageSize, WorkOrder workOrder) {
PageHelper.startPage(pageNum, pageSize);
List<WorkOrder> list = workOrderMapper.selectWorkOrderList(workOrder);
PageInfo<WorkOrder> page = new PageInfo(list);
Page<WorkOrder> pagenew = new Page<WorkOrder>();
pagenew.setCurrent(pageNum);
pagenew.setTotal(page.getTotal());
pagenew.setSize(pageSize);
pagenew.setRecords(page.getList());
return pagenew;
}
public Page<WorkOrderPage> queryForwgpage(int pageNum, int pageSize, WorkOrderPage workOrder) {
PageHelper.startPage(pageNum, pageSize);
List<WorkOrderPage> list = workOrderMapper.queryForwgpage(workOrder);
PageInfo<WorkOrderPage> page = new PageInfo(list);
Page<WorkOrderPage> pagenew = new Page<WorkOrderPage>();
pagenew.setCurrent(pageNum);
pagenew.setTotal(page.getTotal());
pagenew.setSize(pageSize);
pagenew.setRecords(page.getList());
return pagenew;
}
public SurveyInfoAllDto getsurveyQueryxq(Long peasantHouseholdId, Long workOrderId, Long workOrderPowerStationId) {
SurveyInfoAllDto surveyInfoAllDto = new SurveyInfoAllDto();
PeasantHousehold peasantHousehold = new PeasantHousehold();
LambdaQueryWrapper<PeasantHousehold> peasantHouseholdWrapper = new LambdaQueryWrapper<>();
peasantHouseholdWrapper.eq(PeasantHousehold::getSequenceNbr, peasantHouseholdId);
peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper().selectOne(peasantHouseholdWrapper);
String surveyInformationId = String.valueOf(peasantHousehold.getSurveyInformationId());
// 勘察基本信息
LambdaQueryWrapper<SurveyInformation> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SurveyInformation::getSequenceNbr, surveyInformationId);
SurveyInformation surveyInformation = surveyInformationMapper.selectOne(queryWrapper);
surveyInfoAllDto.setSurveyInformation(BeanDtoUtils.convert(surveyInformation, SurveyInformationDto.class));
// 农户信息
// 获取用户所在经销商单位
UserUnitInformationDto userUnitInformationDto = personnelBusinessMapper
.getUserUnitInformationDto(peasantHousehold.getDeveloperUserId());
BeanUtils.copyProperties(peasantHousehold, surveyInfoAllDto.getSurveyInformation());
surveyInfoAllDto.getSurveyInformation().setDeveloperName(userUnitInformationDto.getAmosDealerName());
surveyInfoAllDto.getSurveyInformation().setDeveloperCode(userUnitInformationDto.getAmosDealerOrgCode());
surveyInfoAllDto.getSurveyInformation().setDeveloperId(userUnitInformationDto.getAmosDealerId());
if (!StringUtils.isEmpty(peasantHousehold.getProjectAddressName())) {
surveyInfoAllDto.getSurveyInformation()
.setProjectAddressText(Arrays.asList(peasantHousehold.getProjectAddressName().split("/")));
}
if (!StringUtils.isEmpty(peasantHousehold.getPermanentAddressName())) {
surveyInfoAllDto.getSurveyInformation()
.setPermanentAddressText(Arrays.asList(peasantHousehold.getPermanentAddressName().split("/")));
}
if (peasantHousehold.getPermanentAddress() == null) {
surveyInfoAllDto.getSurveyInformation().setPermanentAddress(peasantHousehold.getProjectAddress());
surveyInfoAllDto.getSurveyInformation().setIsPermanent("1");
}
surveyInfoAllDto.getSurveyInformation().setSequenceNbr(surveyInformation.getSequenceNbr());
QueryWrapper<SurveyDetails> surveyDetailsQueryWrapper = new QueryWrapper<>();
surveyDetailsQueryWrapper.eq("survey_information_id", surveyInformationId);
SurveyDetails surveyDetails = surveyDetailsService.getBaseMapper().selectOne(surveyDetailsQueryWrapper);
if (surveyDetails == null) {
surveyInfoAllDto.setSurveyDetails(new SurveyDetailsDto());
} else {
surveyInfoAllDto.setSurveyDetails(BeanDtoUtils.convert(surveyDetails, SurveyDetailsDto.class));
}
QueryWrapper<Information> informationQueryWrapper = new QueryWrapper<>();
informationQueryWrapper.eq("survey_information_id", surveyInformationId);
Information information = informationService.getBaseMapper().selectOne(informationQueryWrapper);
if (information == null) {
surveyInfoAllDto.setInformation(new InformationDto());
} else {
surveyInfoAllDto.setInformation(BeanDtoUtils.convert(information, InformationDto.class));
}
QueryWrapper<Commercial> commercialQueryWrapper = new QueryWrapper<>();
commercialQueryWrapper.eq("survey_information_id", surveyInformationId);
Commercial commercial = commercialService.getBaseMapper().selectOne(commercialQueryWrapper);
if (commercial == null) {
commercial = new Commercial();
}
commercial.setApplicant(peasantHousehold.getOwnersName());
commercial.setIdCard(peasantHousehold.getIdCard());
commercial.setTelephone(peasantHousehold.getTelephone());
commercial.setProjectAddress(peasantHousehold.getProjectAddress());
commercial.setProjectAddressName(peasantHousehold.getProjectAddressName());
commercial.setProjectAddressDetail(peasantHousehold.getProjectAddressDetail());
commercial.setLegalContactTelephone(peasantHousehold.getTelephone());
if (information == null) {
CommercialDto commercialDto = BeanDtoUtils.convert(commercial, CommercialDto.class);
commercialDto.setType("zrr");
commercialDto.setLegalType("zjdnhw");
surveyInfoAllDto.setCommercial(commercialDto);
} else {
surveyInfoAllDto.setCommercial(BeanDtoUtils.convert(commercial, CommercialDto.class));
if (commercial != null && !StringUtils.isEmpty(commercial.getProjectAddressName())) {
surveyInfoAllDto.getCommercial()
.setProjectAddressText(Arrays.asList(commercial.getProjectAddressName().split("/")));
}
}
QueryWrapper<ExtendedInformation> extendedInformationQueryWrapper = new QueryWrapper<>();
extendedInformationQueryWrapper.eq("survey_information_id", surveyInformationId);
ExtendedInformation extendedInformation = extendedInformationService.getBaseMapper()
.selectOne(extendedInformationQueryWrapper);
if (information == null) {
surveyInfoAllDto.setExtendedInformation(new ExtendedInformationDto());
} else {
surveyInfoAllDto
.setExtendedInformation(BeanDtoUtils.convert(extendedInformation, ExtendedInformationDto.class));
}
QueryWrapper<DesignInformation> designInformationQueryWrapper = new QueryWrapper<>();
designInformationQueryWrapper.eq("peasant_household_id", peasantHousehold.getSequenceNbr());
DesignInformation designInformation = designInformationService.getBaseMapper()
.selectOne(designInformationQueryWrapper);
if (designInformation == null) {
surveyInfoAllDto.setDesignInformation(new DesignInformationDto());
} else {
surveyInfoAllDto.setDesignInformation(BeanDtoUtils.convert(designInformation, DesignInformationDto.class));
}
// 派工单信息
LambdaQueryWrapper<WorkOrder> upl = new LambdaQueryWrapper();
upl.eq(WorkOrder::getSequenceNbr, workOrderId);
WorkOrder workOrder = workOrderMapper.selectOne(upl);
// 施工信息
LambdaQueryWrapper<PowerStationConstructionData> up2 = new LambdaQueryWrapper();
up2.eq(PowerStationConstructionData::getWorkOrderId, workOrderId);
up2.eq(PowerStationConstructionData::getWorkOrderPowerStationId, workOrderPowerStationId);
PowerStationConstructionData powerStationConstructionData = powerStationConstructionDataMapper.selectOne(up2);
// 工程信息
LambdaQueryWrapper<PowerStationEngineeringInfo> up3 = new LambdaQueryWrapper();
up3.eq(PowerStationEngineeringInfo::getWorkOrderId, workOrderId);
up3.eq(PowerStationEngineeringInfo::getWorkOrderPowerStationId, workOrderPowerStationId);
PowerStationEngineeringInfo powerStationEngineeringInfo = powerStationEngineeringInfoMapper.selectOne(up3);
if (powerStationConstructionData != null) {
powerStationEngineeringInfo = powerStationEngineeringInfo != null ? powerStationEngineeringInfo
: new PowerStationEngineeringInfo();
powerStationEngineeringInfo
.setConstructionComponentInfo(powerStationConstructionData.getConstructionComponentInfo());
powerStationEngineeringInfo
.setConstructionInverterInfo(powerStationConstructionData.getConstructionInverterInfo());
powerStationEngineeringInfo
.setConstructionCollectorBoxInfo(powerStationConstructionData.getConstructionCollectorBoxInfo());
powerStationEngineeringInfo
.setConstructionGridBoxInfo(powerStationConstructionData.getConstructionGridBoxInfo());
powerStationEngineeringInfo.setProjectRegionManager(workOrder.getProjectRegionManager());
powerStationEngineeringInfo.setProjectRegionManagerPhone(workOrder.getProjectRegionManagerPhone());
powerStationEngineeringInfo.setConstructionRegionManager(workOrder.getConstructionRegionManager());
powerStationEngineeringInfo
.setConstructionRegionManagerPhone(workOrder.getConstructionRegionManagerPhone());
}
// 施工自审
LambdaQueryWrapper<ConstructionRecords> up5 = new LambdaQueryWrapper();
up5.eq(ConstructionRecords::getWorkOrderId, workOrderId);
up5.eq(ConstructionRecords::getWorkOrderPowerStationId, workOrderPowerStationId);
up5.orderByAsc(ConstructionRecords::getRecDate);
List<ConstructionRecords> li = constructionRecordsMapper.selectList(up5);
ConstructionRecords data = new ConstructionRecords();
data.setConstructionRecordsList(li);
surveyInfoAllDto.setConstructionRecords(data);
// 并网信息
LambdaQueryWrapper<HygfOnGrid> up4 = new LambdaQueryWrapper();
up4.eq(HygfOnGrid::getWorkOrderId, workOrderId);
up4.eq(HygfOnGrid::getWorkOrderPowerStationId, workOrderPowerStationId);
HygfOnGrid hygfOnGrid = hygfOnGridMapper.selectOne(up4);
surveyInfoAllDto.setHygfOnGrid(hygfOnGrid != null ? hygfOnGrid : new HygfOnGrid());
surveyInfoAllDto.setPowerStationConstructionData(powerStationConstructionData);
surveyInfoAllDto.setPowerStationEngineeringInfo(powerStationEngineeringInfo);
surveyInfoAllDto.setWorkOrder(workOrder);
return surveyInfoAllDto;
}
public PowerStationEngineeringInfoAllDto getPowerStationEngineeringInfo(Long workOrderPowerStationId) {
LambdaQueryWrapper<WorkOrderPowerStation> qu = new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getSequenceNbr, workOrderPowerStationId);
WorkOrderPowerStation workOrderPowerStation = workOrderPowerStationMapper.selectOne(qu);
Long peasantHouseholdId = workOrderPowerStation.getPeasantHouseholdId();
Long workOrderId = workOrderPowerStation.getWorkOrderId();
PowerStationEngineeringInfoAllDto surveyInfoAllDto = new PowerStationEngineeringInfoAllDto();
PeasantHousehold peasantHousehold = new PeasantHousehold();
LambdaQueryWrapper<PeasantHousehold> peasantHouseholdWrapper = new LambdaQueryWrapper<>();
peasantHouseholdWrapper.eq(PeasantHousehold::getSequenceNbr, peasantHouseholdId);
peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper().selectOne(peasantHouseholdWrapper);
String surveyInformationId = String.valueOf(peasantHousehold.getSurveyInformationId());
// 勘察基本信息
LambdaQueryWrapper<SurveyInformation> queryWrapper = new LambdaQueryWrapper<>();
queryWrapper.eq(SurveyInformation::getSequenceNbr, surveyInformationId);
SurveyInformation surveyInformation = surveyInformationMapper.selectOne(queryWrapper);
surveyInfoAllDto.setSurveyInformation(BeanDtoUtils.convert(surveyInformation, SurveyInformationDto.class));
// 农户信息
// 获取用户所在经销商单位
UserUnitInformationDto userUnitInformationDto = personnelBusinessMapper
.getUserUnitInformationDto(peasantHousehold.getDeveloperUserId());
BeanUtils.copyProperties(peasantHousehold, surveyInfoAllDto.getSurveyInformation());
surveyInfoAllDto.getSurveyInformation().setDeveloperName(userUnitInformationDto.getAmosDealerName());
surveyInfoAllDto.getSurveyInformation().setDeveloperCode(userUnitInformationDto.getAmosDealerOrgCode());
surveyInfoAllDto.getSurveyInformation().setDeveloperId(userUnitInformationDto.getAmosDealerId());
if (!StringUtils.isEmpty(peasantHousehold.getProjectAddressName())) {
surveyInfoAllDto.getSurveyInformation()
.setProjectAddressText(Arrays.asList(peasantHousehold.getProjectAddressName().split("/")));
}
if (!StringUtils.isEmpty(peasantHousehold.getPermanentAddressName())) {
surveyInfoAllDto.getSurveyInformation()
.setPermanentAddressText(Arrays.asList(peasantHousehold.getPermanentAddressName().split("/")));
}
if (peasantHousehold.getPermanentAddress() == null) {
surveyInfoAllDto.getSurveyInformation().setPermanentAddress(peasantHousehold.getProjectAddress());
surveyInfoAllDto.getSurveyInformation().setIsPermanent("1");
}
surveyInfoAllDto.getSurveyInformation().setSequenceNbr(surveyInformation.getSequenceNbr());
QueryWrapper<SurveyDetails> surveyDetailsQueryWrapper = new QueryWrapper<>();
surveyDetailsQueryWrapper.eq("survey_information_id", surveyInformationId);
SurveyDetails surveyDetails = surveyDetailsService.getBaseMapper().selectOne(surveyDetailsQueryWrapper);
if (surveyDetails == null) {
surveyInfoAllDto.setSurveyDetails(new SurveyDetailsDto());
} else {
surveyInfoAllDto.setSurveyDetails(BeanDtoUtils.convert(surveyDetails, SurveyDetailsDto.class));
}
// 商务信息
QueryWrapper<Commercial> commercialQueryWrapper = new QueryWrapper<>();
commercialQueryWrapper.eq("survey_information_id", surveyInformationId);
Commercial commercial = commercialService.getBaseMapper().selectOne(commercialQueryWrapper);
if(commercial==null){
commercial=new Commercial();
}
commercial.setApplicant(peasantHousehold.getOwnersName());
commercial.setIdCard(peasantHousehold.getIdCard());
commercial.setTelephone(peasantHousehold.getTelephone());
commercial.setProjectAddress(peasantHousehold.getProjectAddress());
commercial.setProjectAddressName(peasantHousehold.getProjectAddressName());
commercial.setProjectAddressDetail(peasantHousehold.getProjectAddressDetail());
commercial.setLegalContactTelephone(peasantHousehold.getTelephone());
QueryWrapper<Commercial> commercialQueryWrapper = new QueryWrapper<>();
commercialQueryWrapper.eq("survey_information_id", surveyInformationId);
Commercial commercial = commercialService.getBaseMapper().selectOne(commercialQueryWrapper);
if (commercial == null) {
commercial = new Commercial();
}
commercial.setApplicant(peasantHousehold.getOwnersName());
commercial.setIdCard(peasantHousehold.getIdCard());
commercial.setTelephone(peasantHousehold.getTelephone());
commercial.setProjectAddress(peasantHousehold.getProjectAddress());
commercial.setProjectAddressName(peasantHousehold.getProjectAddressName());
commercial.setProjectAddressDetail(peasantHousehold.getProjectAddressDetail());
commercial.setLegalContactTelephone(peasantHousehold.getTelephone());
// 资料归档
QueryWrapper<Information> informationQueryWrapper = new QueryWrapper<>();
informationQueryWrapper.eq("survey_information_id", surveyInformationId);
Information information = informationService.getBaseMapper().selectOne(informationQueryWrapper);
if(information == null){
surveyInfoAllDto.setInformation(new InformationDto());
}else {
// 将商务信息的房产证明文件数据赋值给资料归档的房产证明文件
information.setCardFile(commercial.getIdCardCredit());
surveyInfoAllDto.setInformation(BeanDtoUtils.convert(information, InformationDto.class));
}
if(information == null){
CommercialDto commercialDto = BeanDtoUtils.convert(commercial, CommercialDto.class);
commercialDto.setType("zrr");
commercialDto.setLegalType("zjdnhw");
surveyInfoAllDto.setCommercial(commercialDto);
}else {
surveyInfoAllDto.setCommercial(BeanDtoUtils.convert(commercial, CommercialDto.class));
if(commercial !=null && !StringUtils.isEmpty(commercial.getProjectAddressName())){
surveyInfoAllDto.getCommercial().setProjectAddressText(Arrays.asList(commercial.getProjectAddressName().split("/")));
}
}
QueryWrapper<ExtendedInformation> extendedInformationQueryWrapper = new QueryWrapper<>();
extendedInformationQueryWrapper.eq("survey_information_id", surveyInformationId);
ExtendedInformation extendedInformation = extendedInformationService.getBaseMapper().selectOne(extendedInformationQueryWrapper);
if(information == null){
surveyInfoAllDto.setExtendedInformation(new ExtendedInformationDto());
}else {
surveyInfoAllDto.setExtendedInformation(BeanDtoUtils.convert(extendedInformation, ExtendedInformationDto.class));
}
QueryWrapper<DesignInformation> designInformationQueryWrapper = new QueryWrapper<>();
designInformationQueryWrapper.eq("peasant_household_id", peasantHousehold.getSequenceNbr());
DesignInformation designInformation = designInformationService.getBaseMapper().selectOne(designInformationQueryWrapper);
if(designInformation == null){
surveyInfoAllDto.setDesignInformation(new DesignInformationDto());
}else {
surveyInfoAllDto.setDesignInformation(BeanDtoUtils.convert(designInformation, DesignInformationDto.class));
}
//派工单信息
LambdaQueryWrapper<WorkOrder> upl=new LambdaQueryWrapper();
upl.eq(WorkOrder::getSequenceNbr,workOrderId);
WorkOrder workOrder= workOrderMapper.selectOne(upl);
//施工信息
LambdaQueryWrapper<PowerStationConstructionData> up2=new LambdaQueryWrapper();
up2.eq(PowerStationConstructionData::getWorkOrderId,workOrderId);
up2.eq(PowerStationConstructionData::getWorkOrderPowerStationId,workOrderPowerStationId);
PowerStationConstructionData powerStationConstructionData=powerStationConstructionDataMapper.selectOne(up2);
//工程信息
LambdaQueryWrapper<PowerStationEngineeringInfo> up3=new LambdaQueryWrapper();
up3.eq(PowerStationEngineeringInfo::getWorkOrderId,workOrderId);
up3.eq(PowerStationEngineeringInfo::getWorkOrderPowerStationId,workOrderPowerStationId);
PowerStationEngineeringInfo powerStationEngineeringInfo=powerStationEngineeringInfoMapper.selectOne(up3);
if(powerStationConstructionData!=null){
powerStationEngineeringInfo=powerStationEngineeringInfo!=null?powerStationEngineeringInfo:new PowerStationEngineeringInfo();
powerStationEngineeringInfo.setConstructionComponentInfo(powerStationConstructionData.getConstructionComponentInfo());
powerStationEngineeringInfo.setConstructionInverterInfo(powerStationConstructionData.getConstructionInverterInfo());
powerStationEngineeringInfo.setConstructionCollectorBoxInfo(powerStationConstructionData.getConstructionCollectorBoxInfo());
powerStationEngineeringInfo.setConstructionGridBoxInfo(powerStationConstructionData.getConstructionGridBoxInfo());
powerStationEngineeringInfo.setProjectRegionManager(workOrder.getProjectRegionManager());
powerStationEngineeringInfo.setProjectRegionManagerPhone(workOrder.getProjectRegionManagerPhone());
powerStationEngineeringInfo.setConstructionRegionManager(workOrder.getConstructionRegionManager());
powerStationEngineeringInfo.setConstructionRegionManagerPhone(workOrder.getConstructionRegionManagerPhone());
}
//并网信息
LambdaQueryWrapper<HygfOnGrid> up4=new LambdaQueryWrapper();
up4.eq(HygfOnGrid::getWorkOrderId,workOrderId);
up4.eq(HygfOnGrid::getWorkOrderPowerStationId,workOrderPowerStationId);
HygfOnGrid hygfOnGrid=hygfOnGridMapper.selectOne(up4);
surveyInfoAllDto.setHygfOnGrid(hygfOnGrid!=null?hygfOnGrid:new HygfOnGrid());
surveyInfoAllDto.setPowerStationConstructionData(powerStationConstructionData);
surveyInfoAllDto.setPowerStationEngineeringInfo(powerStationEngineeringInfo);
surveyInfoAllDto.setWorkOrder(workOrder);
//施工自审
LambdaQueryWrapper<ConstructionRecords> up5=new LambdaQueryWrapper();
up5.eq(ConstructionRecords::getWorkOrderId,workOrderId);
up5.eq(ConstructionRecords::getWorkOrderPowerStationId,workOrderPowerStationId);
up5.orderByAsc(ConstructionRecords::getRecDate);
List<ConstructionRecords> li=constructionRecordsMapper.selectList(up5);
ConstructionRecords data=new ConstructionRecords();
data.setConstructionRecordsList(li);
surveyInfoAllDto.setConstructionRecords(data);
LambdaQueryWrapper<BasicGridAcceptance> quv=new LambdaQueryWrapper();
quv.eq(BasicGridAcceptance::getPeasantHouseholdId,peasantHouseholdId);
BasicGridAcceptance basicGridAcceptance= basicGridAcceptanceMapper.selectOne(quv);
//审核意见
if(Objects.nonNull(basicGridAcceptance) && !StringUtils.isEmpty(basicGridAcceptance.getInstanceId())){
try {
Map<String, Object> flowLoggerMap = workflowFeignClient.getFlowLogger(basicGridAcceptance.getInstanceId()).getResult();
List<LinkedHashMap> flowLogger = (List<LinkedHashMap>) flowLoggerMap.get("flowLogger");
if (flowLogger.size() > 0 ){
Collections.reverse(flowLogger);
}
List<LinkedHashMap> flowLoggernew =new ArrayList<>();
for (LinkedHashMap linkedHashMap : flowLogger) {
if(linkedHashMap.get("operateDate")!=null&&!linkedHashMap.get("operateDate").toString().isEmpty()){
LinkedHashMap linke=new LinkedHashMap();
linke.put("approvalStatue",linkedHashMap.get("approvalStatue").toString());
//审核意见
List<LinkedHashMap> approvalSuggestion = (List<LinkedHashMap>)linkedHashMap.get("approvalSuggestion");
if(approvalSuggestion!=null&&!approvalSuggestion.isEmpty()){
linke.put("approvalSuggestion",approvalSuggestion.get(0).get("message"));
}
linke.put("taskName",linkedHashMap.get("taskName").toString());
linke.put("operator",linkedHashMap.get("operator").toString());
linke.put("operateDate",linkedHashMap.get("operateDate").toString());
flowLoggernew.add(linke);
}
}
LoggerDto loggerDto =new LoggerDto();
loggerDto.setLogger(flowLoggernew);
surveyInfoAllDto.setLoggerDto(loggerDto);
} catch (Exception e){
e.printStackTrace();
}
}
return surveyInfoAllDto;
QueryWrapper<Information> informationQueryWrapper = new QueryWrapper<>();
informationQueryWrapper.eq("survey_information_id", surveyInformationId);
Information information = informationService.getBaseMapper().selectOne(informationQueryWrapper);
if (information == null) {
surveyInfoAllDto.setInformation(new InformationDto());
} else {
// 将商务信息的房产证明文件数据赋值给资料归档的房产证明文件
information.setCardFile(commercial.getIdCardCredit());
surveyInfoAllDto.setInformation(BeanDtoUtils.convert(information, InformationDto.class));
}
if (information == null) {
CommercialDto commercialDto = BeanDtoUtils.convert(commercial, CommercialDto.class);
commercialDto.setType("zrr");
commercialDto.setLegalType("zjdnhw");
surveyInfoAllDto.setCommercial(commercialDto);
} else {
surveyInfoAllDto.setCommercial(BeanDtoUtils.convert(commercial, CommercialDto.class));
if (commercial != null && !StringUtils.isEmpty(commercial.getProjectAddressName())) {
surveyInfoAllDto.getCommercial()
.setProjectAddressText(Arrays.asList(commercial.getProjectAddressName().split("/")));
}
}
QueryWrapper<ExtendedInformation> extendedInformationQueryWrapper = new QueryWrapper<>();
extendedInformationQueryWrapper.eq("survey_information_id", surveyInformationId);
ExtendedInformation extendedInformation = extendedInformationService.getBaseMapper()
.selectOne(extendedInformationQueryWrapper);
if (information == null) {
surveyInfoAllDto.setExtendedInformation(new ExtendedInformationDto());
} else {
surveyInfoAllDto
.setExtendedInformation(BeanDtoUtils.convert(extendedInformation, ExtendedInformationDto.class));
}
QueryWrapper<DesignInformation> designInformationQueryWrapper = new QueryWrapper<>();
designInformationQueryWrapper.eq("peasant_household_id", peasantHousehold.getSequenceNbr());
DesignInformation designInformation = designInformationService.getBaseMapper()
.selectOne(designInformationQueryWrapper);
if (designInformation == null) {
surveyInfoAllDto.setDesignInformation(new DesignInformationDto());
} else {
surveyInfoAllDto.setDesignInformation(BeanDtoUtils.convert(designInformation, DesignInformationDto.class));
}
// 派工单信息
LambdaQueryWrapper<WorkOrder> upl = new LambdaQueryWrapper();
upl.eq(WorkOrder::getSequenceNbr, workOrderId);
WorkOrder workOrder = workOrderMapper.selectOne(upl);
// 施工信息
LambdaQueryWrapper<PowerStationConstructionData> up2 = new LambdaQueryWrapper();
up2.eq(PowerStationConstructionData::getWorkOrderId, workOrderId);
up2.eq(PowerStationConstructionData::getWorkOrderPowerStationId, workOrderPowerStationId);
PowerStationConstructionData powerStationConstructionData = powerStationConstructionDataMapper.selectOne(up2);
// 工程信息
LambdaQueryWrapper<PowerStationEngineeringInfo> up3 = new LambdaQueryWrapper();
up3.eq(PowerStationEngineeringInfo::getWorkOrderId, workOrderId);
up3.eq(PowerStationEngineeringInfo::getWorkOrderPowerStationId, workOrderPowerStationId);
PowerStationEngineeringInfo powerStationEngineeringInfo = powerStationEngineeringInfoMapper.selectOne(up3);
if (powerStationConstructionData != null) {
powerStationEngineeringInfo = powerStationEngineeringInfo != null ? powerStationEngineeringInfo
: new PowerStationEngineeringInfo();
powerStationEngineeringInfo
.setConstructionComponentInfo(powerStationConstructionData.getConstructionComponentInfo());
powerStationEngineeringInfo
.setConstructionInverterInfo(powerStationConstructionData.getConstructionInverterInfo());
powerStationEngineeringInfo
.setConstructionCollectorBoxInfo(powerStationConstructionData.getConstructionCollectorBoxInfo());
powerStationEngineeringInfo
.setConstructionGridBoxInfo(powerStationConstructionData.getConstructionGridBoxInfo());
powerStationEngineeringInfo.setProjectRegionManager(workOrder.getProjectRegionManager());
powerStationEngineeringInfo.setProjectRegionManagerPhone(workOrder.getProjectRegionManagerPhone());
powerStationEngineeringInfo.setConstructionRegionManager(workOrder.getConstructionRegionManager());
powerStationEngineeringInfo
.setConstructionRegionManagerPhone(workOrder.getConstructionRegionManagerPhone());
}
// 并网信息
LambdaQueryWrapper<HygfOnGrid> up4 = new LambdaQueryWrapper();
up4.eq(HygfOnGrid::getWorkOrderId, workOrderId);
up4.eq(HygfOnGrid::getWorkOrderPowerStationId, workOrderPowerStationId);
HygfOnGrid hygfOnGrid = hygfOnGridMapper.selectOne(up4);
surveyInfoAllDto.setHygfOnGrid(hygfOnGrid != null ? hygfOnGrid : new HygfOnGrid());
surveyInfoAllDto.setPowerStationConstructionData(powerStationConstructionData);
surveyInfoAllDto.setPowerStationEngineeringInfo(powerStationEngineeringInfo);
surveyInfoAllDto.setWorkOrder(workOrder);
// 施工自审
LambdaQueryWrapper<ConstructionRecords> up5 = new LambdaQueryWrapper();
up5.eq(ConstructionRecords::getWorkOrderId, workOrderId);
up5.eq(ConstructionRecords::getWorkOrderPowerStationId, workOrderPowerStationId);
up5.orderByAsc(ConstructionRecords::getRecDate);
List<ConstructionRecords> li = constructionRecordsMapper.selectList(up5);
ConstructionRecords data = new ConstructionRecords();
data.setConstructionRecordsList(li);
surveyInfoAllDto.setConstructionRecords(data);
LambdaQueryWrapper<BasicGridAcceptance> quv = new LambdaQueryWrapper();
quv.eq(BasicGridAcceptance::getPeasantHouseholdId, peasantHouseholdId);
BasicGridAcceptance basicGridAcceptance = basicGridAcceptanceMapper.selectOne(quv);
// 审核意见
if (Objects.nonNull(basicGridAcceptance) && !StringUtils.isEmpty(basicGridAcceptance.getInstanceId())) {
try {
Map<String, Object> flowLoggerMap = workflowFeignClient
.getFlowLogger(basicGridAcceptance.getInstanceId()).getResult();
List<LinkedHashMap> flowLogger = (List<LinkedHashMap>) flowLoggerMap.get("flowLogger");
if (flowLogger.size() > 0) {
Collections.reverse(flowLogger);
}
List<LinkedHashMap> flowLoggernew = new ArrayList<>();
for (LinkedHashMap linkedHashMap : flowLogger) {
if (linkedHashMap.get("operateDate") != null
&& !linkedHashMap.get("operateDate").toString().isEmpty()) {
LinkedHashMap linke = new LinkedHashMap();
linke.put("approvalStatue", linkedHashMap.get("approvalStatue").toString());
// 审核意见
List<LinkedHashMap> approvalSuggestion = (List<LinkedHashMap>) linkedHashMap
.get("approvalSuggestion");
if (approvalSuggestion != null && !approvalSuggestion.isEmpty()) {
linke.put("approvalSuggestion", approvalSuggestion.get(0).get("message"));
}
linke.put("taskName", linkedHashMap.get("taskName").toString());
linke.put("operator", linkedHashMap.get("operator").toString());
linke.put("operateDate", linkedHashMap.get("operateDate").toString());
flowLoggernew.add(linke);
}
}
LoggerDto loggerDto = new LoggerDto();
loggerDto.setLogger(flowLoggernew);
surveyInfoAllDto.setLoggerDto(loggerDto);
} catch (Exception e) {
e.printStackTrace();
}
}
return surveyInfoAllDto;
// LambdaQueryWrapper<PeasantHousehold> peasantHouseholdWrapper = new LambdaQueryWrapper<>();
// peasantHouseholdWrapper.eq(PeasantHousehold::getSequenceNbr, peasantHouseholdId);
// peasantHousehold = peasantHouseholdServiceImpl.getBaseMapper().selectOne(peasantHouseholdWrapper);
......@@ -826,137 +797,140 @@ public class WorkOrderServiceImpl extends BaseService<WorkOrderDto,WorkOrder,Wor
// surveyInfoAllDto.setPowerStationEngineeringInfo(powerStationEngineeringInfo);
// return surveyInfoAllDto;
}
@Transactional(isolation = Isolation.REPEATABLE_READ)
public PowerStationEngineeringInfoAllDto addPowerStationEngineeringInfo(PowerStationEngineeringInfoAllDto powerStationEngineeringInfoAllDto){
LambdaQueryWrapper<WorkOrderPowerStation> qu=new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getSequenceNbr,powerStationEngineeringInfoAllDto.getWorkOrderPowerStationId());
WorkOrderPowerStation workOrderPowerStation=workOrderPowerStationMapper.selectOne(qu);
//修改电站状态
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.待审核.getCode());
workOrderPowerStationMapper.updateById(workOrderPowerStation);
//修改派工单状态PowerStationEngineeringInfo
LambdaQueryWrapper<WorkOrderPowerStation> qu1=new LambdaQueryWrapper();
qu1.eq(WorkOrderPowerStation::getWorkOrderId,workOrderPowerStation.getWorkOrderId());
List<String> d=new ArrayList<>();
d.add(WorkOrderEnum.施工中.getCode());
d.add(WorkOrderEnum.待施工.getCode());
d.add(WorkOrderEnum.待登记.getCode());
qu1.in(WorkOrderPowerStation::getPowerStationConstructionStatus,d);
List<WorkOrderPowerStation> list=workOrderPowerStationMapper.selectList(qu1);
LambdaUpdateWrapper<WorkOrder> upq=new LambdaUpdateWrapper();
upq.eq(WorkOrder::getSequenceNbr,workOrderPowerStation.getWorkOrderId());
if(list==null||list.isEmpty()){
upq.set(WorkOrder::getWorkOrderStatus,WorkOrderEnum.审核中.getCode());
workOrderMapper.update(null,upq);
}
//新增完工登记
PowerStationEngineeringInfo powerStationEngineeringInfo= powerStationEngineeringInfoAllDto.getPowerStationEngineeringInfo();
powerStationEngineeringInfo.setWorkOrderId(workOrderPowerStation.getWorkOrderId());
powerStationEngineeringInfo.setWorkOrderPowerStationId(powerStationEngineeringInfoAllDto.getWorkOrderPowerStationId());
powerStationEngineeringInfoService.saveOrUpdate(powerStationEngineeringInfo);
//增加操作日志
ConstructionRecords da=new ConstructionRecords(
powerStationEngineeringInfo.getRecUserName(),
"完工登记",
new Date(),
"",
workOrderPowerStation.getWorkOrderId(),
workOrderPowerStation.getSequenceNbr(),
workOrderPowerStation.getPeasantHouseholdId(),
"");
constructionRecordsServiceImpl.save(da);
return powerStationEngineeringInfoAllDto;
}
public PowerStationEngineeringInfoAllDto getConstructionRecords(Long workOrderPowerStationId,String rename) {
LambdaQueryWrapper<WorkOrderPowerStation> qu=new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getSequenceNbr,workOrderPowerStationId);
WorkOrderPowerStation workOrderPowerStation=workOrderPowerStationMapper.selectOne(qu);
Long peasantHouseholdId=workOrderPowerStation.getPeasantHouseholdId();
Long workOrderId=workOrderPowerStation.getWorkOrderId();
PowerStationEngineeringInfoAllDto surveyInfoAllDto = new PowerStationEngineeringInfoAllDto();
//施工自审
LambdaQueryWrapper<ConstructionRecords> up5=new LambdaQueryWrapper();
up5.eq(ConstructionRecords::getWorkOrderId,workOrderId);
up5.eq(ConstructionRecords::getWorkOrderPowerStationId,workOrderPowerStationId);
up5.orderByDesc(ConstructionRecords::getRecDate);
List<ConstructionRecords> li=constructionRecordsMapper.selectList(up5);
ConstructionRecords data=new ConstructionRecords();
data.setConstructionRecordsList(li);
data.setOperationTime(new Date());
data.setOperator(rename);
surveyInfoAllDto.setConstructionRecords(data);
return surveyInfoAllDto;
}
@Transactional(isolation = Isolation.REPEATABLE_READ)
}
@Transactional(isolation = Isolation.REPEATABLE_READ)
public PowerStationEngineeringInfoAllDto addPowerStationEngineeringInfo(
PowerStationEngineeringInfoAllDto powerStationEngineeringInfoAllDto) {
LambdaQueryWrapper<WorkOrderPowerStation> qu = new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getSequenceNbr, powerStationEngineeringInfoAllDto.getWorkOrderPowerStationId());
WorkOrderPowerStation workOrderPowerStation = workOrderPowerStationMapper.selectOne(qu);
// 修改电站状态
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.待审核.getCode());
workOrderPowerStationMapper.updateById(workOrderPowerStation);
// 修改派工单状态PowerStationEngineeringInfo
LambdaQueryWrapper<WorkOrderPowerStation> qu1 = new LambdaQueryWrapper();
qu1.eq(WorkOrderPowerStation::getWorkOrderId, workOrderPowerStation.getWorkOrderId());
List<String> d = new ArrayList<>();
d.add(WorkOrderEnum.施工中.getCode());
d.add(WorkOrderEnum.待施工.getCode());
d.add(WorkOrderEnum.待登记.getCode());
qu1.in(WorkOrderPowerStation::getPowerStationConstructionStatus, d);
List<WorkOrderPowerStation> list = workOrderPowerStationMapper.selectList(qu1);
LambdaUpdateWrapper<WorkOrder> upq = new LambdaUpdateWrapper();
upq.eq(WorkOrder::getSequenceNbr, workOrderPowerStation.getWorkOrderId());
if (list == null || list.isEmpty()) {
upq.set(WorkOrder::getWorkOrderStatus, WorkOrderEnum.审核中.getCode());
workOrderMapper.update(null, upq);
}
// 新增完工登记
PowerStationEngineeringInfo powerStationEngineeringInfo = powerStationEngineeringInfoAllDto
.getPowerStationEngineeringInfo();
powerStationEngineeringInfo.setWorkOrderId(workOrderPowerStation.getWorkOrderId());
powerStationEngineeringInfo
.setWorkOrderPowerStationId(powerStationEngineeringInfoAllDto.getWorkOrderPowerStationId());
powerStationEngineeringInfoService.saveOrUpdate(powerStationEngineeringInfo);
// 增加操作日志
ConstructionRecords da = new ConstructionRecords(powerStationEngineeringInfo.getRecUserName(), "完工登记",
new Date(), "", workOrderPowerStation.getWorkOrderId(), workOrderPowerStation.getSequenceNbr(),
workOrderPowerStation.getPeasantHouseholdId(), "");
constructionRecordsServiceImpl.save(da);
return powerStationEngineeringInfoAllDto;
}
public PowerStationEngineeringInfoAllDto getConstructionRecords(Long workOrderPowerStationId, String rename) {
LambdaQueryWrapper<WorkOrderPowerStation> qu = new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getSequenceNbr, workOrderPowerStationId);
WorkOrderPowerStation workOrderPowerStation = workOrderPowerStationMapper.selectOne(qu);
Long peasantHouseholdId = workOrderPowerStation.getPeasantHouseholdId();
Long workOrderId = workOrderPowerStation.getWorkOrderId();
PowerStationEngineeringInfoAllDto surveyInfoAllDto = new PowerStationEngineeringInfoAllDto();
// 施工自审
LambdaQueryWrapper<ConstructionRecords> up5 = new LambdaQueryWrapper();
up5.eq(ConstructionRecords::getWorkOrderId, workOrderId);
up5.eq(ConstructionRecords::getWorkOrderPowerStationId, workOrderPowerStationId);
up5.orderByDesc(ConstructionRecords::getRecDate);
List<ConstructionRecords> li = constructionRecordsMapper.selectList(up5);
ConstructionRecords data = new ConstructionRecords();
data.setConstructionRecordsList(li);
data.setOperationTime(new Date());
data.setOperator(rename);
surveyInfoAllDto.setConstructionRecords(data);
return surveyInfoAllDto;
}
@Transactional(isolation = Isolation.REPEATABLE_READ)
public ConstructionRecords addConstructionRecords(ConstructionRecords constructionRecords){
LambdaQueryWrapper<WorkOrderPowerStation> qu=new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getSequenceNbr,constructionRecords.getWorkOrderPowerStationId());
WorkOrderPowerStation workOrderPowerStation=workOrderPowerStationMapper.selectOne(qu);
if(constructionRecords.getOperationResults().equals("通过")){
//修改电站状态
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.已完工.getCode());
//修改完工时间
LambdaUpdateWrapper<PowerStationEngineeringInfo> upq1=new LambdaUpdateWrapper();
upq1.eq(PowerStationEngineeringInfo::getWorkOrderPowerStationId,workOrderPowerStation.getSequenceNbr());
upq1.set(PowerStationEngineeringInfo::getCompletionDate,new Date());
powerStationEngineeringInfoMapper.update(null,upq1);
BasicGridAcceptance dat=new BasicGridAcceptance();
dat.setWorkOrderId(workOrderPowerStation.getWorkOrderId());
dat.setWorkOrderPowerStationId(workOrderPowerStation.getSequenceNbr());
dat.setPeasantHouseholdId(workOrderPowerStation.getPeasantHouseholdId());
dat.setGridStatus("1");
//新增并网记录
basicGridAcceptanceMapper.insert(dat);
workOrderPowerStationMapper.updateById(workOrderPowerStation);
//修改派工单状态
LambdaQueryWrapper<WorkOrderPowerStation> qu1=new LambdaQueryWrapper();
qu1.eq(WorkOrderPowerStation::getWorkOrderId,workOrderPowerStation.getWorkOrderId());
List<String> d=new ArrayList<>();
d.add(WorkOrderEnum.施工中.getCode());
d.add(WorkOrderEnum.待施工.getCode());
d.add(WorkOrderEnum.待登记.getCode());
d.add(WorkOrderEnum.待审核.getCode());
qu1.in(WorkOrderPowerStation::getPowerStationConstructionStatus,d);
List<WorkOrderPowerStation> list=workOrderPowerStationMapper.selectList(qu1);
LambdaUpdateWrapper<WorkOrder> upq=new LambdaUpdateWrapper();
upq.eq(WorkOrder::getSequenceNbr,workOrderPowerStation.getWorkOrderId());
if(list==null||list.isEmpty()){
upq.set(WorkOrder::getWorkOrderStatus,WorkOrderEnum.已完工.getCode());
workOrderMapper.update(null,upq);
}
}else{
//修改电站状态
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.未通过.getCode());
workOrderPowerStationMapper.updateById(workOrderPowerStation);
LambdaUpdateWrapper<WorkOrder> upq=new LambdaUpdateWrapper();
upq.eq(WorkOrder::getSequenceNbr,workOrderPowerStation.getWorkOrderId());
upq.set(WorkOrder::getWorkOrderStatus,WorkOrderEnum.未通过
.getCode());
workOrderMapper.update(null,upq);
}
//增加操作日志
constructionRecords.setWorkOrderId(workOrderPowerStation.getWorkOrderId());
constructionRecords.setOperationContent("完工自审-"+constructionRecords.getOperationResults());
constructionRecords.setWorkOrderPowerStationId(workOrderPowerStation.getSequenceNbr());
constructionRecords.setPeasantHouseholdId(workOrderPowerStation.getPeasantHouseholdId());
constructionRecordsServiceImpl.save(constructionRecords);
synchronized (constructionRecords.getPeasantHouseholdId()) {
LambdaQueryWrapper<WorkOrderPowerStation> qu=new LambdaQueryWrapper();
qu.eq(WorkOrderPowerStation::getSequenceNbr,constructionRecords.getWorkOrderPowerStationId());
WorkOrderPowerStation workOrderPowerStation=workOrderPowerStationMapper.selectOne(qu);
if(constructionRecords.getOperationResults().equals("通过")){
//修改电站状态
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.已完工.getCode());
//修改完工时间
LambdaUpdateWrapper<PowerStationEngineeringInfo> upq1=new LambdaUpdateWrapper();
upq1.eq(PowerStationEngineeringInfo::getWorkOrderPowerStationId,workOrderPowerStation.getSequenceNbr());
upq1.set(PowerStationEngineeringInfo::getCompletionDate,new Date());
powerStationEngineeringInfoMapper.update(null,upq1);
BasicGridAcceptance dat=new BasicGridAcceptance();
dat.setWorkOrderId(workOrderPowerStation.getWorkOrderId());
dat.setWorkOrderPowerStationId(workOrderPowerStation.getSequenceNbr());
dat.setPeasantHouseholdId(workOrderPowerStation.getPeasantHouseholdId());
dat.setGridStatus("1");
//新增并网记录
LambdaQueryWrapper<BasicGridAcceptance> bga = new LambdaQueryWrapper<>();
bga.eq(BasicGridAcceptance::getPeasantHouseholdId, workOrderPowerStation.getPeasantHouseholdId());
BasicGridAcceptance b = basicGridAcceptanceMapper.selectOne(bga);
//防止重复增加
if(b==null)
{
basicGridAcceptanceMapper.insert(dat);
}
workOrderPowerStationMapper.updateById(workOrderPowerStation);
//修改派工单状态
LambdaQueryWrapper<WorkOrderPowerStation> qu1=new LambdaQueryWrapper();
qu1.eq(WorkOrderPowerStation::getWorkOrderId,workOrderPowerStation.getWorkOrderId());
List<String> d=new ArrayList<>();
d.add(WorkOrderEnum.施工中.getCode());
d.add(WorkOrderEnum.待施工.getCode());
d.add(WorkOrderEnum.待登记.getCode());
d.add(WorkOrderEnum.待审核.getCode());
qu1.in(WorkOrderPowerStation::getPowerStationConstructionStatus,d);
List<WorkOrderPowerStation> list=workOrderPowerStationMapper.selectList(qu1);
LambdaUpdateWrapper<WorkOrder> upq=new LambdaUpdateWrapper();
upq.eq(WorkOrder::getSequenceNbr,workOrderPowerStation.getWorkOrderId());
if(list==null||list.isEmpty()){
upq.set(WorkOrder::getWorkOrderStatus,WorkOrderEnum.已完工.getCode());
workOrderMapper.update(null,upq);
}
}else{
//修改电站状态
workOrderPowerStation.setPowerStationConstructionStatus(WorkOrderEnum.未通过.getCode());
workOrderPowerStationMapper.updateById(workOrderPowerStation);
LambdaUpdateWrapper<WorkOrder> upq=new LambdaUpdateWrapper();
upq.eq(WorkOrder::getSequenceNbr,workOrderPowerStation.getWorkOrderId());
upq.set(WorkOrder::getWorkOrderStatus,WorkOrderEnum.未通过
.getCode());
workOrderMapper.update(null,upq);
}
//增加操作日志
constructionRecords.setWorkOrderId(workOrderPowerStation.getWorkOrderId());
constructionRecords.setOperationContent("完工自审-"+constructionRecords.getOperationResults());
constructionRecords.setWorkOrderPowerStationId(workOrderPowerStation.getSequenceNbr());
constructionRecords.setPeasantHouseholdId(workOrderPowerStation.getPeasantHouseholdId());
constructionRecordsServiceImpl.save(constructionRecords);
}
return constructionRecords;
}
......
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