ZQN
2024-06-22 b2c1822dc9ae8a67872193d182d9335d9a99655c
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
package com.project.enforce.service.impl;
 
import cn.hutool.core.convert.Convert;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.project.common.exception.base.BaseException;
import com.project.common.utils.JsonUtils;
import com.project.common.utils.StringUtils;
import com.project.enforce.domain.EnforceEvaluateLog;
import com.project.enforce.domain.bo.editBo.EnforceEvaluateLogBo;
import com.project.enforce.domain.bo.queryBo.EnforceEvaluateLogQueryBo;
import com.project.enforce.domain.vo.EnforceEvaluateLogVo;
import com.project.enforce.domain.vo.EnforceEvaluateVo;
import com.project.enforce.mapper.EnforceEvaluateLogMapper;
import com.project.enforce.service.IEnforceEvaluateLogService;
import lombok.RequiredArgsConstructor;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import java.util.Collection;
import java.util.List;
 
/**
 * 执法评价记录Service业务层处理
 *
 * @author manton
 */
@Service
@RequiredArgsConstructor(onConstructor_ = @Autowired)
public class EnforceEvaluateLogServiceImpl extends ServiceImpl<EnforceEvaluateLogMapper, EnforceEvaluateLog> implements IEnforceEvaluateLogService {
 
 
 
    @Override//列表查询
    public List<EnforceEvaluateLogVo> queryList(EnforceEvaluateLogQueryBo bo)
    {
        QueryWrapper<EnforceEvaluateLog> qw = getQw(bo);
        List<EnforceEvaluateLog> list = this.list(qw);
        return Convert.toList(EnforceEvaluateLogVo.class , list);
    }
 
    @Override//id查询
    public EnforceEvaluateLogVo queryById(Long id)
    {
        EnforceEvaluateLog db = this.baseMapper.selectById(id);
        EnforceEvaluateLogVo vo = Convert.convert(EnforceEvaluateLogVo.class, db);
        String questionStatic = vo.getQuestionStatic();
        if (StringUtils.isNotEmpty(questionStatic)){
            try {
                EnforceEvaluateVo evaluateVo = JsonUtils.jsonToPojo(questionStatic, EnforceEvaluateVo.class);
                vo.setEvaluateVo(evaluateVo);
            } catch (Exception e) {
                throw new BaseException("评价问券解析异常!");
            }
        }
        return vo;
    }
 
 
    @Override//添加
    @Transactional
    public Boolean insertByBo(EnforceEvaluateLogBo bo)
    {
        EnforceEvaluateLog add = Convert.convert(EnforceEvaluateLog.class, bo);
        validEntityBeforeSave(bo);
        String questionStatic = JsonUtils.objectToJson(bo.getEvaluateVo());
        add.setQuestionStatic(questionStatic);
        return this.save(add);
    }
 
    @Override//修改
    @Transactional
    public Boolean updateByBo(EnforceEvaluateLogBo bo)
    {
        EnforceEvaluateLog update = Convert.convert(EnforceEvaluateLog.class, bo);
        validEntityBeforeSave(bo);
        String questionStatic = JsonUtils.objectToJson(bo.getEvaluateVo());
        update.setQuestionStatic(questionStatic);
        return this.updateById(update);
    }
 
    @Override//删除
    @Transactional
    public Boolean deleteByIds(Collection<Long> ids)
    {
        //做一些业务上的校验,判断是否需要校验
        return this.removeByIds(ids);
    }
 
 
//-------------------------------------------------------------------------------------
 
    //保存前校验
    private void validEntityBeforeSave(EnforceEvaluateLogBo bo)
    {
        if (bo.getEvaluateVo()==null) {
            throw new BaseException("请上传评价问券内容!");
        }
    }
 
    //获取查询参数
    private QueryWrapper<EnforceEvaluateLog> getQw(EnforceEvaluateLogQueryBo bo)
    {
        QueryWrapper<EnforceEvaluateLog> qw = Wrappers.query();
 
            qw.eq(StringUtils.isNotEmpty(bo.getOrderId()), "order_id", bo.getOrderId());
            qw.eq(StringUtils.isNotEmpty(bo.getOrderNo()), "order_no", bo.getOrderNo());
            qw.eq(bo.getCompanyId() != null, "company_id", bo.getCompanyId());
            qw.like(StringUtils.isNotEmpty(bo.getCompanyName()), "company_name", bo.getCompanyName());
            qw.eq(StringUtils.isNotEmpty(bo.getCompanyUser()), "company_user", bo.getCompanyUser());
            qw.eq(StringUtils.isNotEmpty(bo.getCompanyPhone()), "company_phone", bo.getCompanyPhone());
            qw.eq(bo.getExecuteUser() != null, "execute_user", bo.getExecuteUser());
            qw.eq(bo.getExecutePhone() != null, "execute_phone", bo.getExecutePhone());
            qw.like(bo.getExecuteDeptName() != null, "execute_dept_name", bo.getExecuteDeptName());
            qw.eq(StringUtils.isNotEmpty(bo.getQuestionRemark()), "question_remark", bo.getQuestionRemark());
            qw.eq(StringUtils.isNotEmpty(bo.getQuestionStatic()), "question_static", bo.getQuestionStatic());
            qw.eq(bo.getTotalScore() != null, "total_score", bo.getTotalScore());
        if (StringUtils.isNotEmpty(bo.getIsAsc()) && StringUtils.isNotEmpty(bo.getOrderByColumn())){
            if ("acs".equals(bo.getIsAsc())) {
                qw.orderByAsc(bo.getOrderByColumn());
            } else if ("desc".equals(bo.getIsAsc())) {
                qw.orderByDesc(bo.getOrderByColumn());
            }
        }
        return qw;
    }
}