| | |
| | | package com.dy.pipIrrApp.issue; |
| | | |
| | | import com.alibaba.fastjson2.JSON; |
| | | import com.alibaba.fastjson2.JSONArray; |
| | | import com.alibaba.fastjson2.JSONObject; |
| | | import com.dy.common.webUtil.QueryResultVo; |
| | | import com.dy.common.webUtil.ResultCodeMsg; |
| | | import com.dy.pipIrrApp.issue.dto.DtoDeleteParam; |
| | | import com.dy.pipIrrApp.issue.qo.QoIssueReport; |
| | | import com.dy.pipIrrGlobal.daoOp.OpeIssueReportMapper; |
| | | import com.dy.pipIrrGlobal.daoOp.OpeReportReplyMapper; |
| | | import com.dy.pipIrrGlobal.pojoOp.OpeIssueReport; |
| | | import com.dy.pipIrrGlobal.pojoOp.OpeReportReply; |
| | | import com.dy.pipIrrGlobal.voOp.VoIssueReport; |
| | | import com.dy.pipIrrGlobal.voOp.VoIssueReportReply; |
| | | import com.dy.pipIrrGlobal.voOp.VoIssueReport_temp; |
| | | import lombok.extern.slf4j.Slf4j; |
| | | import org.apache.dubbo.common.utils.PojoUtils; |
| | | import org.springframework.beans.BeanUtils; |
| | | import org.springframework.beans.factory.annotation.Autowired; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.Date; |
| | | import java.util.*; |
| | | |
| | | /** |
| | | * @author ZhuBaoMin |
| | |
| | | public class IssueSv { |
| | | @Autowired |
| | | private OpeIssueReportMapper opeIssueReportMapper; |
| | | |
| | | @Autowired |
| | | private OpeReportReplyMapper opeReportReplyMapper; |
| | | |
| | | /** |
| | | * 添加巡检员问题上报 |
| | |
| | | } |
| | | |
| | | /** |
| | | * 添加巡检员问题上报信息 |
| | | * 根据条件获取巡检员问题上报记录 |
| | | * @param queryVo |
| | | * @return |
| | | */ |
| | | public QueryResultVo<List<VoIssueReport>> getIssueReports(QoIssueReport queryVo) { |
| | | //完善查询充值记录的起止时间 |
| | | String timeStart = queryVo.getTimeStart(); |
| | | String timeStop = queryVo.getTimeStop(); |
| | | if (timeStart != null) { |
| | | timeStart = timeStart + " 00:00:00"; |
| | | queryVo.setTimeStart(timeStart); |
| | | } |
| | | if (timeStop != null) { |
| | | timeStop = timeStop + " 23:59:59"; |
| | | queryVo.setTimeStop(timeStop); |
| | | } |
| | | |
| | | Map<String, Object> params = (Map<String, Object>) PojoUtils.generalize(queryVo); |
| | | |
| | | Long itemTotal = opeIssueReportMapper.getIssueReportsCount(params); |
| | | //QueryResultVo<List<VoIssueReport_temp>> rsVo = new QueryResultVo<>(); |
| | | QueryResultVo<List<VoIssueReport>> rsVo = new QueryResultVo<>(); |
| | | |
| | | rsVo.pageSize = queryVo.pageSize; |
| | | rsVo.pageCurr = queryVo.pageCurr; |
| | | |
| | | rsVo.calculateAndSet(itemTotal, params); |
| | | |
| | | List<VoIssueReport_temp> list_temp = opeIssueReportMapper.getIssueReports(params); |
| | | List<VoIssueReport> list = new ArrayList<>(); |
| | | for (int i = 0; i < list_temp.size(); i++) { |
| | | VoIssueReport_temp report_temp = list_temp.get(i); |
| | | VoIssueReport report = new VoIssueReport(); |
| | | BeanUtils.copyProperties(report_temp, report); |
| | | |
| | | JSONArray images_array = Optional.ofNullable(JSON.parseArray(report_temp.getImages())).orElse(new JSONArray()); |
| | | JSONArray audios_array = Optional.ofNullable(JSON.parseArray(report_temp.getAudios())).orElse(new JSONArray()); |
| | | JSONArray videos_array = Optional.ofNullable(JSON.parseArray(report_temp.getVideos())).orElse(new JSONArray()); |
| | | report.setImages(images_array); |
| | | report.setAudios(audios_array); |
| | | report.setVideos(videos_array); |
| | | list.add(report); |
| | | } |
| | | |
| | | rsVo.obj = list; |
| | | //rsVo.obj = opeIssueReportMapper.getIssueReports(params); |
| | | return rsVo; |
| | | } |
| | | |
| | | /** |
| | | * 逻辑删除巡检员问题上报,删除前先判断要删除的上报是否存在 |
| | | * @param po |
| | | * @return |
| | | */ |
| | | //public Long insertIssueReport(OpeIssueReport po) { |
| | | // opeIssueReportMapper.insert(po); |
| | | // return po.getId(); |
| | | //} |
| | | public String deleteIssueReport(DtoDeleteParam po) { |
| | | // 根据上报ID及巡检员ID获取未删除的上报,删除上报判断使用 |
| | | OpeIssueReport opeIssueReport = opeIssueReportMapper.getReport(po.getIssueReportId(), po.getInspectorId()); |
| | | if(opeIssueReport == null) { |
| | | return "您要删除的问题上报不存在"; |
| | | } |
| | | |
| | | if(opeIssueReportMapper.deleteIssueReport(po.getIssueReportId()) == 0) { |
| | | return "巡检员问题上报删除失败"; |
| | | } |
| | | |
| | | return "success"; |
| | | } |
| | | |
| | | /** |
| | | * 添加巡检员问题上报回复 |
| | | * 添加问题上报回复记录 |
| | | * 问题上报状态改为已回复 |
| | | * @param po |
| | | * @return |
| | | */ |
| | | public String replyReport(OpeReportReply po) { |
| | | po.setReplyTime(new Date()); |
| | | opeReportReplyMapper.insert(po); |
| | | if(po.getId() == 0) { |
| | | return "回复记录添加失败"; |
| | | } |
| | | |
| | | OpeIssueReport issueReport = new OpeIssueReport(); |
| | | issueReport.setId(po.getReportId()); |
| | | issueReport.setState((byte)2); |
| | | Integer rec = opeIssueReportMapper.updateByPrimaryKeySelective(issueReport); |
| | | if(rec == 0) { |
| | | return "巡检员问题上报状态修改失败"; |
| | | } |
| | | return "sucess"; |
| | | } |
| | | |
| | | /** |
| | | * 获取上报回复信息 |
| | | * @param reportId |
| | | * @return |
| | | */ |
| | | public JSONObject getReportReply(Long reportId) { |
| | | JSONObject result = new JSONObject(); |
| | | if(reportId == null) { |
| | | result.put("code", ResultCodeMsg.RsCode.ERROR_CODE); |
| | | result.put("msg","请选择一个问题上报"); |
| | | return result; |
| | | } |
| | | |
| | | VoIssueReportReply issueReportReply = opeReportReplyMapper.getReportReplyByReportId(reportId); |
| | | if(issueReportReply != null) { |
| | | result.put("code", ResultCodeMsg.RsCode.SUCCESS_CODE); |
| | | result.put("msg","success"); |
| | | result.put("data", issueReportReply); |
| | | return result; |
| | | } |
| | | result.put("code", ResultCodeMsg.RsCode.ERROR_CODE); |
| | | result.put("msg","未获取到上报回复信息"); |
| | | return result; |
| | | |
| | | } |
| | | |
| | | } |