package com.dy.pipIrrWechat.issue;
|
|
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.pipIrrWechat.issue.qo.QoIssueReport;
|
import lombok.extern.slf4j.Slf4j;
|
import org.apache.dubbo.common.utils.PojoUtils;
|
import org.springframework.beans.factory.annotation.Autowired;
|
import org.springframework.stereotype.Service;
|
|
import java.util.Date;
|
import java.util.List;
|
import java.util.Map;
|
|
/**
|
* @author ZhuBaoMin
|
* @date 2024-10-30 10:34
|
* @LastEditTime 2024-10-30 10:34
|
* @Description 农户问题上报服务类
|
*/
|
|
@Slf4j
|
@Service
|
public class IssueSv {
|
@Autowired
|
private SeIssueReportMapper seIssueReportMapper;
|
|
@Autowired
|
private SeReportReplyMapper seReportReplyMapper;
|
|
/**
|
* 添加用户问题上报
|
* @param po
|
* @return
|
*/
|
public String addIssueReport(SeIssueReport po) {
|
po.setReportTime(new Date());
|
po.setState((byte)1);
|
seIssueReportMapper.insert(po);
|
Long issueReportId = po.getId();
|
if(issueReportId == null) {
|
return "农户问题上报失败";
|
}
|
|
return "success";
|
}
|
|
/**
|
* 修改农户问题上报状态,回复及删除时使用
|
* @param po
|
* @return
|
*/
|
public Integer updateIssueReport(SeIssueReport po) {
|
return seIssueReportMapper.updateByPrimaryKeySelective(po);
|
}
|
|
/**
|
* 根据指定条件获取农户问题上报
|
* @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 = seIssueReportMapper.getIssueReportsCount(params);
|
QueryResultVo<List<VoIssueReport>> rsVo = new QueryResultVo<>();
|
|
rsVo.pageSize = queryVo.pageSize;
|
rsVo.pageCurr = queryVo.pageCurr;
|
|
rsVo.calculateAndSet(itemTotal, params);
|
rsVo.obj = seIssueReportMapper.getIssueReports(params);
|
return rsVo;
|
}
|
|
/**
|
* 根据上报ID及农户ID获取未删除的上报,删除上报判断使用
|
* @param issueReportId
|
* @param clientId
|
* @return
|
*/
|
public SeIssueReport getReport(Long issueReportId, Long clientId) {
|
return seIssueReportMapper.getReport(issueReportId, clientId);
|
}
|
|
/**
|
* 删除农户问题上报
|
* @param issueReportId
|
* @return
|
*/
|
public Integer deleteIssueReport(Long issueReportId) {
|
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);
|
}
|
|
}
|