zhubaomin
2024-11-11 4f023af6fd0eac21b28bfec1369245dd73cc1496
pipIrr-platform/pipIrr-web/pipIrr-web-wechat/src/main/java/com/dy/pipIrrWechat/issue/IssueSv.java
@@ -1,10 +1,21 @@
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
@@ -19,13 +30,102 @@
    @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);
        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);
    }
}