|
|
@ -53,6 +53,8 @@ import com.elink.esua.epdc.gird.shibei.api.ShiBeiCityGridApi; |
|
|
|
import com.elink.esua.epdc.gird.shibei.constant.CommonConstants; |
|
|
|
import com.elink.esua.epdc.gird.shibei.contants.ApiConstants; |
|
|
|
import com.elink.esua.epdc.gird.shibei.dto.GridDto; |
|
|
|
import com.elink.esua.epdc.gird.shibei.dto.SearchCaseProcessByTaskIdDto; |
|
|
|
import com.elink.esua.epdc.gird.shibei.dto.SearchCaseProcessByTaskIdItemDto; |
|
|
|
import com.elink.esua.epdc.gird.shibei.dto.form.ImageFile; |
|
|
|
import com.elink.esua.epdc.gird.shibei.dto.form.ReportFile; |
|
|
|
import com.elink.esua.epdc.gird.shibei.dto.form.SendInputInfoFormDto; |
|
|
@ -78,6 +80,7 @@ import org.springframework.stereotype.Service; |
|
|
|
import org.springframework.transaction.annotation.Transactional; |
|
|
|
|
|
|
|
import java.math.BigDecimal; |
|
|
|
import java.text.SimpleDateFormat; |
|
|
|
import java.util.*; |
|
|
|
|
|
|
|
/** |
|
|
@ -519,9 +522,9 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem |
|
|
|
itemHandleResultDTOS.add(itemHandleResultDTO1); |
|
|
|
|
|
|
|
ItemHandleResultDTO itemHandleResultDTO2 = new ItemHandleResultDTO(); |
|
|
|
itemHandleResultDTO1.setProcessResult(ItemHandleCategoryEnum.HANDLE_REPORT.getValue()); |
|
|
|
itemHandleResultDTO1.setProcessName(ItemHandleCategoryEnum.HANDLE_REPORT.getName()); |
|
|
|
itemHandleResultDTO1.setSelect(false); |
|
|
|
itemHandleResultDTO2.setProcessResult(ItemHandleCategoryEnum.HANDLE_REPORT.getValue()); |
|
|
|
itemHandleResultDTO2.setProcessName(ItemHandleCategoryEnum.HANDLE_REPORT.getName()); |
|
|
|
itemHandleResultDTO2.setSelect(false); |
|
|
|
itemHandleResultDTOS.add(itemHandleResultDTO2); |
|
|
|
resultDTO.setHandleResultDTOS(itemHandleResultDTOS); |
|
|
|
|
|
|
@ -627,7 +630,9 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem |
|
|
|
// 结案 保存部门满意度评价
|
|
|
|
if (ItemHandleCategoryEnum.HANDLE_CLOSING_CASE.getValue() == dto.getHandleCategory()) { |
|
|
|
informationFormDTO.setTitle(EventsNoticeConstant.NOTICE_ITEM_PROCESSED); |
|
|
|
itemEvaluateDeptService.saveEvaluateDepts(dto.getEvaluateDeptDTOS(), dto.getId(), SecurityUser.getDeptId()); |
|
|
|
if (null != dto.getEvaluateDeptDTOS()) { |
|
|
|
itemEvaluateDeptService.saveEvaluateDepts(dto.getEvaluateDeptDTOS(), dto.getId(), SecurityUser.getDeptId()); |
|
|
|
} |
|
|
|
} |
|
|
|
} |
|
|
|
// 记录处理记录
|
|
|
@ -869,21 +874,37 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem |
|
|
|
// 接口请求返回实体,getReturnCode 1失败 0成功(非空)
|
|
|
|
GridDto gridDto = shiBeiCityGridApi.newSendInputInfo(sendInputInfoFormDto); |
|
|
|
// 保存接口调用日志
|
|
|
|
InterfaceLogEntity interfaceLogEntity = new InterfaceLogEntity(); |
|
|
|
interfaceLogEntity.setReferenceId(dto.getId()); |
|
|
|
interfaceLogEntity.setBusinessType(InterfaceLogBusinessTypeEnum.REPORT_ITEM.getValue()); |
|
|
|
interfaceLogEntity.setInterfaceName(ApiConstants.newSendInputInfo); |
|
|
|
if ("1".equals(gridDto.getReturnCode())) {//保存结果 1失败 0成功(非空)
|
|
|
|
interfaceLogEntity.setSuccessFlag(YesOrNoEnum.NO.value()); |
|
|
|
} else if ("0".equals(gridDto.getReturnCode())) { |
|
|
|
interfaceLogEntity.setSuccessFlag(YesOrNoEnum.YES.value()); |
|
|
|
String successFlag = YesOrNoEnum.NO.value(); |
|
|
|
if (NumConstant.ZERO_STR.equals(gridDto.getReturnCode())) { |
|
|
|
successFlag = YesOrNoEnum.YES.value(); |
|
|
|
} |
|
|
|
interfaceLogEntity.setCallMsgBody(XstreamUtil.objectToXml(sendInputInfoFormDto)); |
|
|
|
interfaceLogEntity.setReturnMsgBody(XstreamUtil.objectToXml(gridDto)); |
|
|
|
interfaceLogService.insert(interfaceLogEntity); |
|
|
|
this.saveInterfaceLog(dto.getId(), InterfaceLogBusinessTypeEnum.REPORT_ITEM.getValue(), |
|
|
|
ApiConstants.newSendInputInfo, successFlag, XstreamUtil.objectToXml(sendInputInfoFormDto), |
|
|
|
XstreamUtil.objectToXml(gridDto)); |
|
|
|
return gridDto; |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* |
|
|
|
* 保存接口调用日志 |
|
|
|
* |
|
|
|
* @params [referenceId, businessType, interfaceName, successFlag, callMsgBody, returnMsgBody] |
|
|
|
* @return void |
|
|
|
* @author liuchuang |
|
|
|
* @since 2019/12/26 11:08 |
|
|
|
*/ |
|
|
|
private void saveInterfaceLog(String referenceId, String businessType, String interfaceName, |
|
|
|
String successFlag, String callMsgBody, String returnMsgBody) { |
|
|
|
InterfaceLogEntity interfaceLogEntity = new InterfaceLogEntity(); |
|
|
|
interfaceLogEntity.setReferenceId(referenceId); |
|
|
|
interfaceLogEntity.setBusinessType(businessType); |
|
|
|
interfaceLogEntity.setInterfaceName(interfaceName); |
|
|
|
interfaceLogEntity.setSuccessFlag(successFlag); |
|
|
|
interfaceLogEntity.setCallMsgBody(callMsgBody); |
|
|
|
interfaceLogEntity.setReturnMsgBody(returnMsgBody); |
|
|
|
interfaceLogService.insert(interfaceLogEntity); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* @param itemEntity |
|
|
|
* @return com.elink.esua.gird.shibei.dto.form.SendInputInfoFormDto |
|
|
@ -1000,12 +1021,110 @@ public class ItemServiceImpl extends BaseServiceImpl<ItemDao, ItemEntity> implem |
|
|
|
|
|
|
|
|
|
|
|
@Override |
|
|
|
@Transactional(rollbackFor = Exception.class) |
|
|
|
public Result queryItemHandle() { |
|
|
|
// 获取已上报网格平台未结案的项目
|
|
|
|
|
|
|
|
List<ItemGridPlatformDTO> gridPlatformDTOList = itemGridPlatformService.listOfGridPlatformItemNotEnd(); |
|
|
|
// 拉取处理情况
|
|
|
|
for (ItemGridPlatformDTO dto: |
|
|
|
gridPlatformDTOList) { |
|
|
|
SearchCaseProcessByTaskIdDto searchResultDot = shiBeiCityGridApi.searchCaseProcessByTaskId(dto.getTaskid()); |
|
|
|
String successFlag = YesOrNoEnum.NO.value(); |
|
|
|
String returnMsgBody = ""; |
|
|
|
if (null != searchResultDot) { |
|
|
|
successFlag = YesOrNoEnum.YES.value(); |
|
|
|
returnMsgBody = XstreamUtil.objectToXml(searchResultDot); |
|
|
|
List<SearchCaseProcessByTaskIdItemDto> progressList = searchResultDot.getRequest(); |
|
|
|
if (null != progressList && progressList.size() > 0) { |
|
|
|
// 删除已有处理记录
|
|
|
|
this.removeOldHandleProcess(dto.getId()); |
|
|
|
// 保存新的处理记录
|
|
|
|
this.insertNewHandleProcess(progressList, dto.getReferenceId(), dto.getId()); |
|
|
|
// 更新网格化平台当前处理状态
|
|
|
|
} |
|
|
|
} |
|
|
|
// 保存接口调用日志
|
|
|
|
this.saveInterfaceLog(dto.getReferenceId(), InterfaceLogBusinessTypeEnum.PULL_ITEM_HANDLE_PROCESS.getValue(), |
|
|
|
ApiConstants.SearchCaseProcessByTaskId, successFlag, dto.getTaskid(), returnMsgBody); |
|
|
|
} |
|
|
|
|
|
|
|
return new Result(); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* |
|
|
|
* 删除历史网格化平台处理记录 |
|
|
|
* |
|
|
|
* @params [id] |
|
|
|
* @return void |
|
|
|
* @author liuchuang |
|
|
|
* @since 2019/12/25 19:08 |
|
|
|
*/ |
|
|
|
private void removeOldHandleProcess(String itemGridPlatformId) { |
|
|
|
// 获取历史处理记录
|
|
|
|
List<String> oldLogs = gridPlatformHandleLogService.listOfHandleProcessLogByItemGridPlatFormId(itemGridPlatformId); |
|
|
|
// 删除项目处理进度表历史记录
|
|
|
|
baseDao.deleteBatchItemHandleIds(oldLogs); |
|
|
|
// 删除网格化平台处理记录表记录
|
|
|
|
gridPlatformHandleLogService.removeHandleProcessByItemGridPlatFormId(itemGridPlatformId); |
|
|
|
} |
|
|
|
|
|
|
|
/** |
|
|
|
* |
|
|
|
* 保存新的网格化平台处理记录 |
|
|
|
* |
|
|
|
* @params [progressList] |
|
|
|
* @return void |
|
|
|
* @author liuchuang |
|
|
|
* @since 2019/12/25 19:27 |
|
|
|
*/ |
|
|
|
private void insertNewHandleProcess(List<SearchCaseProcessByTaskIdItemDto> progressList, String itemId, String itemGridPlatformId) { |
|
|
|
|
|
|
|
try { |
|
|
|
for (SearchCaseProcessByTaskIdItemDto dto: |
|
|
|
progressList) { |
|
|
|
SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm"); |
|
|
|
Date insertTime = sdf.parse(dto.getInserttime()); |
|
|
|
String itemHandleProcessId = UUID.randomUUID().toString().replaceAll("-", ""); |
|
|
|
// 插入项目处理进度表
|
|
|
|
ItemHandleProcessDTO itemHandleProcessDto = new ItemHandleProcessDTO(); |
|
|
|
itemHandleProcessDto.setId(itemHandleProcessId); |
|
|
|
itemHandleProcessDto.setItemId(itemId); |
|
|
|
itemHandleProcessDto.setState(ItemGridPlatformHandleStatusEnum.getValueByName(dto.getItemname())); |
|
|
|
itemHandleProcessDto.setHandleAdvice(dto.getNote()); |
|
|
|
itemHandleProcessDto.setOutHandleAdvice(dto.getNote()); |
|
|
|
itemHandleProcessDto.setHandlerDept(dto.getDeptname()); |
|
|
|
itemHandleProcessDto.setCreatedTime(insertTime); |
|
|
|
itemHandleProcessDto.setUpdatedTime(insertTime); |
|
|
|
itemHandleProcessService.saveItemHandleProcess(itemHandleProcessDto); |
|
|
|
|
|
|
|
// 插入网格化平台处理记录表
|
|
|
|
GridPlatformHandleLogEntity gridPlatformHandleLogEntity = new GridPlatformHandleLogEntity(); |
|
|
|
gridPlatformHandleLogEntity.setItemGridPlatformId(itemGridPlatformId); |
|
|
|
gridPlatformHandleLogEntity.setItemHandleProcessId(itemHandleProcessId); |
|
|
|
gridPlatformHandleLogEntity.setStatus(ItemGridPlatformHandleStatusEnum.getValueByName(dto.getItemname())); |
|
|
|
gridPlatformHandleLogEntity.setHandler(dto.getUsername()); |
|
|
|
gridPlatformHandleLogEntity.setHandlingOpinions(dto.getNote()); |
|
|
|
gridPlatformHandleLogEntity.setHandlingDept(dto.getDeptname()); |
|
|
|
gridPlatformHandleLogEntity.setHandlingTime(insertTime); |
|
|
|
gridPlatformHandleLogService.insert(gridPlatformHandleLogEntity); |
|
|
|
} |
|
|
|
} catch (Exception e) { |
|
|
|
e.printStackTrace(); |
|
|
|
} |
|
|
|
} |
|
|
|
|
|
|
|
@Override |
|
|
|
public Result reportCallback(ItemPlatformProcessFormDTO formDto) { |
|
|
|
// 获取上报项目信息
|
|
|
|
ItemGridPlatformDTO platformDto = itemGridPlatformService.getInfoByTaskId(formDto.getTaskid()); |
|
|
|
if (null == platformDto) { |
|
|
|
return new Result(); |
|
|
|
} |
|
|
|
|
|
|
|
// 保存处理情况
|
|
|
|
// 保存网格化平台处理记录
|
|
|
|
SearchCaseProcessByTaskIdItemDto taskDto = ConvertUtils.sourceToTarget(formDto, SearchCaseProcessByTaskIdItemDto.class); |
|
|
|
this.insertNewHandleProcess(Collections.singletonList(taskDto), platformDto.getReferenceId(), platformDto.getId()); |
|
|
|
|
|
|
|
return new Result(); |
|
|
|
} |
|
|
|