|  |  |  | 
|---|
|  |  |  | package com.dy.pipIrrWechat.issue; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | import com.alibaba.fastjson2.JSON; | 
|---|
|  |  |  | import com.alibaba.fastjson2.JSONArray; | 
|---|
|  |  |  | import com.dy.common.webUtil.QueryResultVo; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.daoSe.SeIssueReportMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.daoSe.SeReportReplyMapper; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.pojoSe.SeIssueReport; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.pojoSe.SeReportReply; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSe.VoIssueReport; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSe.VoIssueReportReply; | 
|---|
|  |  |  | import com.dy.pipIrrGlobal.voSe.VoIssueReport_temp; | 
|---|
|  |  |  | import com.dy.pipIrrWechat.issue.qo.QoIssueReport; | 
|---|
|  |  |  | 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.List; | 
|---|
|  |  |  | import java.util.Map; | 
|---|
|  |  |  | import java.util.*; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * @author ZhuBaoMin | 
|---|
|  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SeIssueReportMapper seIssueReportMapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | private SeReportReplyMapper seReportReplyMapper; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 添加问题上报信息 | 
|---|
|  |  |  | * 添加用户问题上报 | 
|---|
|  |  |  | * @param po | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public Long insertIssueReport(SeIssueReport po) { | 
|---|
|  |  |  | public String addIssueReport(SeIssueReport po) { | 
|---|
|  |  |  | po.setReportTime(new Date()); | 
|---|
|  |  |  | po.setState((byte)1); | 
|---|
|  |  |  | seIssueReportMapper.insert(po); | 
|---|
|  |  |  | return po.getId(); | 
|---|
|  |  |  | Long issueReportId = po.getId(); | 
|---|
|  |  |  | if(issueReportId == null) { | 
|---|
|  |  |  | return "农户问题上报失败"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return "success"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 修改农户问题上报状态,回复及删除时使用 | 
|---|
|  |  |  | * @param po | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public Integer updateIssueReport(SeIssueReport po) { | 
|---|
|  |  |  | return seIssueReportMapper.updateByPrimaryKeySelective(po); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | rsVo.pageCurr = queryVo.pageCurr; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | rsVo.calculateAndSet(itemTotal, params); | 
|---|
|  |  |  | rsVo.obj = seIssueReportMapper.getIssueReports(params); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<VoIssueReport_temp> list_temp = seIssueReportMapper.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; | 
|---|
|  |  |  | return rsVo; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 根据上报ID及农户ID获取未删除的上报,删除上报判断使用 | 
|---|
|  |  |  | * @param issueReportId | 
|---|
|  |  |  | * @param clientId | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public SeIssueReport getReport(Long issueReportId, Long clientId) { | 
|---|
|  |  |  | return seIssueReportMapper.getReport(issueReportId, clientId); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | return seIssueReportMapper.deleteIssueReport(issueReportId); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 添加农户问题上报回复 | 
|---|
|  |  |  | * @param po | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public Long insertReportReply(SeReportReply po) { | 
|---|
|  |  |  | seReportReplyMapper.insert(po); | 
|---|
|  |  |  | return po.getId(); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 根据问题上报ID获取上报回复信息 | 
|---|
|  |  |  | * @param reportId | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | public VoIssueReportReply getReportReplyByReportId(Long reportId) { | 
|---|
|  |  |  | return seReportReplyMapper.getReportReplyByReportId(reportId); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|