李旭东
2023-10-27 2d8dafdddd85653371e463ee43f960f2366d9313
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
package com.thhy.engineering.modules.biz.engineering.service.impl;
 
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.github.pagehelper.util.StringUtil;
import com.thhy.engineering.modules.biz.engineering.entity.SysProject;
import com.thhy.engineering.modules.biz.engineering.entity.SysSegmentNeed;
import com.thhy.engineering.modules.biz.engineering.entity.SysSegment;
import com.thhy.engineering.modules.biz.engineering.mapper.SysProjectMapper;
import com.thhy.engineering.modules.biz.engineering.mapper.SysSegmentMapper;
import com.thhy.engineering.modules.biz.engineering.service.SysSegmentService;
import com.thhy.general.common.BasicResult;
import com.thhy.general.config.SysUserInfo;
import com.thhy.general.utils.UserInfoUtils;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
 
import javax.annotation.Resource;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
/**
 * 单位工程管理(标段)
 */
@Service
public class SysSegmentServiceImpl implements SysSegmentService {
 
    @Resource
    private SysSegmentMapper segmentMapper;
 
    @Override
    @Transactional
    public BasicResult segmentInsert(Map<String, Object> values) {
 
        String unitProjectName = values.get("unitProjectName").toString();
 
        String segmentId =  segmentMapper.segmentNameByProjectName(unitProjectName);
        if(!StringUtil.isEmpty(segmentId)){
            return  BasicResult.faild("11111","error","标段名称被占用");
        }
        values.put("segmentId","");
        segmentMapper.segmentInsert(values);
        //添加返回主键
        String segment_id = values.get("segmentId").toString();
 
        //List<SysSegmentNeed> segmentList = (List<SysSegmentNeed>) values.get("segmentList");
        List<Map<String,Object>> segmentList1 = (List<Map<String, Object>>) values.get("segmentList");
        //System.out.println("segmentList1segmentList1"+segmentList1);
        for (Map<String,Object> segmentNeed : segmentList1){
            HashMap<String, Object> hashMap = new HashMap<>();
           // segmentNeed.put("segmentId",segment_id);
            hashMap.put("id","");
            hashMap.put("segmentId",segment_id);
            hashMap.put("needType",segmentNeed.get("needType").toString());
            hashMap.put("needNum",Integer.valueOf(segmentNeed.get("needNum").toString()));
            System.out.println(hashMap);
            segmentMapper.segmentNeedInsert(hashMap);
        }
        return BasicResult.success("添加成功");
    }
 
    @Override
    public BasicResult segmentList(Map<String, Object> values) {
        //当前登录人 -- 公司id
        SysUserInfo sysUserInfo = UserInfoUtils.getInstance().getUserInfo();
        String companyId = sysUserInfo.getCompanyId();
        values.put("companyId",companyId);
 
        Object pageSize = values.get("pageSize");
        Object pageNum = values.get("pageNum");
        PageHelper.startPage((Integer) pageNum,(Integer) pageSize);
        List<SysSegment> sysSegments = segmentMapper.segmentList(values);
        PageInfo<SysSegment> sysSegmentPageInfo = new PageInfo<>(sysSegments);
        return BasicResult.success(sysSegmentPageInfo);
    }
 
    @Override
    public BasicResult segmentInfo(String segmentId) {
        SysSegment sysSegment = segmentMapper.segmentInfo(segmentId);
       List<SysSegmentNeed>  segmentNeeds = segmentMapper.segmentNeedList(sysSegment.getSegmentId());
        sysSegment.setSegmentNeeds(segmentNeeds);
        return BasicResult.success(sysSegment);
    }
 
    @Override
    public BasicResult segmentDel(String segmentId) {
        segmentMapper.segmentDel(segmentId);
        return BasicResult.success("删除成功");
    }
 
    @Override
    @Transactional
    public BasicResult segmentUpdate(Map<String, Object> values) {
        String segmentId1 = values.get("segmentId").toString();
 
        String unitProjectName = values.get("unitProjectName").toString();
 
        String segmentId =  segmentMapper.segmentNameByProjectName(unitProjectName);
        if(StringUtils.isNotBlank(segmentId) && !segmentId1.equals(segmentId)){
            return  BasicResult.faild("11111","error","标段名称被占用");
        }
        segmentMapper.segmentUpdate(values);
        segmentMapper.segmentNeedDel(segmentId1);
        //List<SysSegmentNeed> segmentList = (List<SysSegmentNeed>) values.get("segmentList");
        List<Map<String,Object>> segmentList1 = (List<Map<String, Object>>) values.get("segmentList");
        //System.out.println("segmentList1segmentList1"+segmentList1);
        for (Map<String,Object> segmentNeed : segmentList1){
            //segmentNeed.put("segmentId",segmentId1);
            HashMap<String, Object> hashMap = new HashMap<>();
            // segmentNeed.put("segmentId",segment_id);
            hashMap.put("id","");
            hashMap.put("segmentId",segmentId1);
            hashMap.put("needType",segmentNeed.get("needType").toString());
            hashMap.put("needNum",Integer.valueOf(segmentNeed.get("needNum").toString()));
            segmentMapper.segmentNeedInsert(hashMap);
        }
        return BasicResult.success("修改成功");
    }
}