liujie
2026-09-15 5a95ec36565d7ecc1a5ecb261f26752c90dec120
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
package com.estate.expert.admin.service.impl;
 
import com.estate.expert.admin.domain.common.request.PageReq;
import com.estate.expert.admin.domain.common.response.PageResp;
import com.estate.expert.admin.domain.standard.measure.MeasureRule;
import com.estate.expert.admin.domain.standard.model.Model;
import com.estate.expert.admin.domain.standard.model.measure.MeasureModel;
import com.estate.expert.admin.domain.standard.model.measure.MeasureModelDto;
import com.estate.expert.admin.domain.standard.model.measure.MeasureModelRepository;
import com.estate.expert.admin.domain.user.User;
import com.estate.expert.admin.service.UserService;
import com.estate.expert.admin.service.common.CrudServiceBaseImpl;
import com.estate.expert.admin.service.model.MeasureModelService;
import org.springframework.stereotype.Service;
 
import javax.annotation.Resource;
import java.util.List;
 
/**
 * 实测实量模型服务实现
 */
@Service
public class MeasureModelServiceImpl extends CrudServiceBaseImpl<MeasureModel, MeasureModelDto>
    implements MeasureModelService {
 
    @Resource
    private MeasureModelRepository repository;
 
    @Resource
    private UserService userService;
 
    @Override
    public PageResp<MeasureModelDto> list(String keyword, PageReq pageReq) {
        var page = repository.findAllByKeyword(keyword, pageReq.toPageRequest());
        return PageResp.of(page, toDto(page.getContent()));
    }
 
    @Override
    public MeasureModel getDefaultModel() {
        return repository.findByName("默认实测实量模型");
    }
 
    @Override
    public MeasureModel add(User creator, MeasureModel entity) {
        entity.setVersion(0);
        return super.add(creator, entity);
    }
 
    @Override
    public void createDefaultModel() {
        var model = getDefaultModel();
        if (model != null) {
            return;
        }
 
        var modelDto = MeasureModelDto.builder()
            .name("默认实测实量模型")
            .description("详细说明")
            .version(0)
            .build();
        add(userService.getSystemUser(), modelDto);
    }
 
    @Override
    public List<MeasureRule> listRules(Model model) {
        return List.of();
    }
}