liusheng
2023-09-21 bdb5b994b566f50dd0acac4b02fc697c656fc94e
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
130
131
132
133
134
135
136
package com.ruoyi.project.service.impl;
 
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import com.ruoyi.common.utils.StringUtils;
import com.ruoyi.project.domain.BaseFinancesubject;
import com.ruoyi.project.domain.vo.*;
import com.ruoyi.project.mapper.BaseFinancesubjectMapper;
import com.ruoyi.project.service.IBaseFinancesubjectService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
 
import java.util.ArrayList;
import java.util.List;
 
/**
 * 收入费用科目Service业务层处理
 * 
 * @author ruoyi
 * @date 2022-01-11
 */
@Service
public class BaseFinancesubjectServiceImpl extends ServiceImpl<BaseFinancesubjectMapper, BaseFinancesubject> implements IBaseFinancesubjectService 
{
 
    @Autowired
    BaseFinancesubjectMapper baseFinancesubjectMapper;
 
 
    /**
     * 查询收入费用科目列表
     * 
     * @param baseFinancesubject 收入费用科目
     * @return 收入费用科目
     */
    @Override
    public List<BaseFinancesubject> queryList(BaseFinancesubject baseFinancesubject) {
        LambdaQueryWrapper<BaseFinancesubject> wrappers = Wrappers.lambdaQuery();
        if (StringUtils.isNotBlank(baseFinancesubject.getItemtype())){
            wrappers.eq(BaseFinancesubject::getItemtype ,baseFinancesubject.getItemtype());
        }
        if (StringUtils.isNotBlank(baseFinancesubject.getItemname())){
            wrappers.like(BaseFinancesubject::getItemname ,baseFinancesubject.getItemname());
        }
        if (StringUtils.isNotBlank(baseFinancesubject.getUsestate())){
            wrappers.eq(BaseFinancesubject::getUsestate ,baseFinancesubject.getUsestate());
        }
        if (StringUtils.isNotBlank(baseFinancesubject.getExpensetype())){
            wrappers.eq(BaseFinancesubject::getExpensetype ,baseFinancesubject.getExpensetype());
        }
        return this.list(wrappers);
    }
 
    @Override
    public List<FinanceSubjectVO> getItemName(String itemType) {
        List<FinanceSubjectVO> l = baseFinancesubjectMapper.getItemName(itemType);
 
        return l;
    }
 
    @Override
    public List<SpServiceDonationcost> getDonationCost(String DonorNo) {
        List<SpServiceDonationcost> l = baseFinancesubjectMapper.getDonationCost(DonorNo);
 
        return l;
    }
 
    @Override
    public List<FinanceSubjectItemType> getItemType(String ExpenseType) {
        List<FinanceSubjectItemType> l = baseFinancesubjectMapper.getItemType(ExpenseType);
 
        return l;
    }
 
    @Override
    public List<BaseFinancesubject> selectBaseFinancesubjectList(BaseFinancesubject baseFinancesubject) {
        return baseFinancesubjectMapper.selectBaseFinancesubjectList(baseFinancesubject);
    }
 
    @Override
    public List<ItemTypeVO> getDetails(String expenseType) {
        List<BaseFinancesubject> l = baseFinancesubjectMapper.getAllInfoByExpenseType(expenseType);
        List<ItemTypeVO> list = new ArrayList<>();
        boolean isExists = false;
 
        for(BaseFinancesubject b : l){
            ItemTypeVO temp = new ItemTypeVO();
            for(int i = 0; i < list.size(); i++){
                if(list.get(i).getItemType().equals(b.getItemtype())){
                    isExists = true;
                    temp = list.get(i);
                }
            }
 
            if (isExists == false) {
                ItemTypeVO itemTypeVO = new ItemTypeVO();
                itemTypeVO.setItemType(b.getItemtype());
                itemTypeVO.setItemTypeName(b.getItemtypename());
                itemTypeVO.setSubjecttype(b.getSubjecttype());
                itemTypeVO.setSubjecttypename(b.getSubjecttypename());
 
                ItemDetailVO id = new ItemDetailVO();
                id.setId(b.getId());
                id.setItemCode(b.getItemcode());
                id.setItemDescribe(b.getItemdescribe());
                id.setItemName(b.getItemname());
                id.setItemPinyin(b.getItempinyin());
 
                List<ItemDetailVO> idList = new ArrayList<>();
                idList.add(id);
                itemTypeVO.setItemDetails(idList);
                list.add(itemTypeVO);
            }
            else{
 
                List<ItemDetailVO> idList = temp.getItemDetails();
                ItemDetailVO id = new ItemDetailVO();
                id.setId(b.getId());
                id.setItemCode(b.getItemcode());
                id.setItemDescribe(b.getItemdescribe());
                id.setItemName(b.getItemname());
                id.setItemPinyin(b.getItempinyin());
 
                idList.add(id);
                temp.setItemDetails(idList);
                isExists = false;
 
            }
 
        }
 
        return list;
    }
 
}