ZQN
2024-06-22 484bc1f21e7d29b480005f9c7077b03c64d8f86e
project-enforce/src/main/java/com/project/enforce/service/impl/EnforceOrderServiceImpl.java
@@ -8,13 +8,15 @@
import com.project.common.core.domain.entity.SysUser;
import com.project.common.enums.OrderPre;
import com.project.common.exception.base.BaseException;
import com.project.common.sms.YPSmsApi;
import com.project.common.utils.DateUtils;
import com.project.common.utils.JsonUtils;
import com.project.common.utils.SecurityUtils;
import com.project.common.utils.StringUtils;
import com.project.enforce.domain.*;
import com.project.enforce.domain.bo.editBo.*;
import com.project.enforce.domain.bo.editBo.EnforceComplaintLogBo;
import com.project.enforce.domain.bo.editBo.EnforceOrderBo;
import com.project.enforce.domain.bo.editBo.OrderComplaintBo;
import com.project.enforce.domain.bo.editBo.OrderResultBo;
import com.project.enforce.domain.bo.queryBo.EnforceOrderQueryBo;
import com.project.enforce.domain.bo.queryBo.OrderCheckedQueryBo;
import com.project.enforce.domain.vo.EnforceEvaluateVo;
@@ -27,7 +29,6 @@
import com.project.system.service.ISysUserService;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.scheduling.annotation.Async;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -51,8 +52,47 @@
    private final IEnforceCheckLogService checkLogService;
    private final IEnforceComplaintLogService complaintLogService;
    private final IEnforceEvaluateLogService evaluateLogService;
    private final YPSmsService smsService;
    private final EnforceOrderMapper orderMapper;
    @Override//列表查询
    /**
     * 通用列表-无权限
     * @param bo   参数
     * @return 列表
     */
    @Override
    public List<EnforceOrderVo> queryCommonList(EnforceOrderQueryBo bo)
    {
        QueryWrapper<EnforceOrder> qw = getQw(bo);
        List<EnforceOrder> list = this.list(qw);
        return Convert.toList(EnforceOrderVo.class , list);
    }
    @Override
    public Integer getDistinctCompanyNum() {
        return orderMapper.getDistinctCompanyNum();
    }
    /**
     * 企业执法单列表
     * @param bo   参数
     * @return 列表
     */
    @Override
    public List<EnforceOrderVo> queryCompanyList(EnforceOrderQueryBo bo)
    {
        QueryWrapper<EnforceOrder> qw = getQw(bo);
        qw.ge("order_status",2);
        List<EnforceOrder> list = this.list(qw);
        return Convert.toList(EnforceOrderVo.class , list);
    }
    /**
     * 执法申请单列表
     * @param bo   参数
     * @return 列表
     */
    @Override
    @DataScope(deptAlias = "apply_dept_id", userAlias = "apply_id")
    public List<EnforceOrderVo> queryList(EnforceOrderQueryBo bo)
    {
@@ -62,7 +102,12 @@
        return Convert.toList(EnforceOrderVo.class , list);
    }
    @Override//执法上报列表
    /**
     * 执法执行单列表
     * @param bo   参数
     * @return 列表
     */
    @Override
    @DataScope(deptAlias = "execute_dept_id", userAlias = "execute_id")
    public List<EnforceOrderVo> getExecuteList(EnforceOrderQueryBo bo) {
        QueryWrapper<EnforceOrder> qw = getQw(bo);
@@ -71,7 +116,12 @@
        return Convert.toList(EnforceOrderVo.class , list);
    }
    @Override//待审核列表
    /**
     * 待审核列表
     * @param bo   参数
     * @return 列表
     */
    @Override
    public List<EnforceOrderVo> queryCheckList(EnforceOrderQueryBo bo)
    {
        SysUser loginUser = SecurityUtils.getLoginUser().getUser();
@@ -85,6 +135,11 @@
        return this.baseMapper.selectCheckList(bo);
    }
    /**
     * 审批记录列表
     * @param bo   参数
     * @return 列表
     */
    @Override
    public List<EnforceOrderVo> queryCheckedList(OrderCheckedQueryBo bo)
    {
@@ -92,7 +147,12 @@
        return this.baseMapper.selectCheckedList(bo);
    }
    @Override//信息公式列表
    /**
     * 信息公式列表
     * @return 列表
     */
    @Override
    public List<EnforceOrderVo> showList()
    {
        List<EnforceOrder> list = this.list(lq()
@@ -102,7 +162,10 @@
        return Convert.toList(EnforceOrderVo.class, list);
    }
    @Override//id查询
    /**
     * id查询
     */
    @Override
    public EnforceOrderVo queryById(Long orderId)
    {
        EnforceOrder db = this.baseMapper.selectById(orderId);
@@ -114,12 +177,14 @@
            if (one!=null){
                String questionStatic = one.getQuestionStatic();
                if (StringUtils.isNotEmpty(questionStatic)){
                    EnforceEvaluateVo evaluateVo = Convert.convert(EnforceEvaluateVo.class, one);
                    try {
                        EnforceEvaluateVo evaluateVo = JsonUtils.jsonToPojo(questionStatic, EnforceEvaluateVo.class);
                        vo.setEvaluateVo(evaluateVo);
                        List<EnforceEvaluateQuestion> questions = JsonUtils.jsonToList(questionStatic, EnforceEvaluateQuestion.class);
                        evaluateVo.setQuestionList(questions);
                    } catch (Exception e) {
                        throw new BaseException("评价问券解析异常!");
                    }
                    vo.setEvaluateVo(evaluateVo);
                }
            }
        }
@@ -127,6 +192,9 @@
    }
    /**
     * 新增
     */
    @Override//添加
    @Transactional
    public Boolean insertByBo(EnforceOrderBo bo)
@@ -156,11 +224,14 @@
        }
        boolean savePeers = peerService.saveOrUpdateBatch(bo.getPeers());
        if (savePeers && StringUtils.isNotEmpty(phones)) {
            sendApplyMsg(phones, add.getApplyUser());
            smsService.sendApplyMsg(phones, add.getApplyUser());
        }
        return savePeers;
    }
    /**
     * 修改
     */
    @Override//修改
    @Transactional
    public Boolean updateByBo(EnforceOrderBo bo)
@@ -170,6 +241,9 @@
        return this.updateById(update);
    }
    /**
     * 删除
     */
    @Override//删除
    @Transactional
    public Boolean deleteByIds(Collection<Long> ids)
@@ -180,6 +254,9 @@
        return this.removeByIds(ids);
    }
    /**
     * 获取下一级审批人电话
     */
    @Override
    public List<String> getCheckPhones(Integer checkLevel, Long applyDeptId)
    {
@@ -301,20 +378,10 @@
    }
//-------------------------------------------------------------------------------------
    /**
     * 发送审批短信
     * @param phones    手机号
     * @param applyUser 申请人
     */
    @Async
    public void sendApplyMsg(List<String> phones, String applyUser)
    {
        String applyMsg = StringUtils.format(StringUtils.format(YPSmsApi.APPLY_TMP, applyUser));
        phones.forEach(phone-> YPSmsApi.sendSms(phone, applyMsg));
    }
    //保存前校验
    private void validEntityBeforeSave(EnforceOrder entity)
@@ -385,6 +452,8 @@
        qw.eq(bo.getIsShow() != null, "is_show", bo.getIsShow());
        qw.eq(bo.getIsEva() != null, "is_eva", bo.getIsEva());
        qw.eq(bo.getTotalScore() != null, "total_score", bo.getTotalScore());
        qw.ge(StringUtils.isNotEmpty(bo.getBeginTime()), "in_time", bo.getBeginTime());
        qw.le(StringUtils.isNotEmpty(bo.getEndTime()), "in_time", bo.getEndTime());
        if (StringUtils.isNotEmpty(bo.getIsAsc()) && StringUtils.isNotEmpty(bo.getOrderByColumn())){
            if ("acs".equals(bo.getIsAsc())) {
                qw.orderByAsc(bo.getOrderByColumn());