xuefei
2020-12-11 386e4215819efd8dd5e0f60b363708871bb7686d
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
package cn.cetc54.platform.zhyl.api;
 
import cn.cetc54.platform.core.common.utils.ResultUtil;
import cn.cetc54.platform.core.common.vo.Result;
import cn.cetc54.platform.zhyl.entity.OrgFuwu;
import cn.cetc54.platform.zhyl.entity.OrgYanglao;
import cn.cetc54.platform.zhyl.entity.SubsidyEmum;
import cn.cetc54.platform.zhyl.service.IOrderService;
import cn.cetc54.platform.zhyl.service.IOrgFuwuService;
import cn.cetc54.platform.zhyl.service.IOrgYanglaoService;
import cn.cetc54.platform.zhyl.service.ISubsidyLogService;
import cn.hutool.core.util.StrUtil;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
 
import java.util.HashMap;
import java.util.List;
import java.util.Map;
 
/**
 * @author xfei
 * @date 2020/12/10
 */
@Slf4j
@RestController
@Api(description = "首页接口")
@RequestMapping("/api/index")
public class IndexController {
    @Autowired
    private IOrgYanglaoService iOrgYanglaoService;
    @Autowired
    private ISubsidyLogService iSubsidyLogService;
    @Autowired
    private IOrgFuwuService iOrgFuwuService;
    @Autowired
    private IOrderService iOrderService;
    @GetMapping("/getSubsidyStatics")
    @ApiOperation(value = "补贴统计")
    public Result getSubsidyStatics(String areaId){
        double total = iSubsidyLogService.getTotalMoney(areaId,null);
        List<Map<String,Object>> list = iSubsidyLogService.getTypeMoney(areaId);
        list.forEach(e->{
            int type = (int) e.get("type");
            e.put("typeName", SubsidyEmum.values()[type].name());
        });
        Map<String,Object> resMap = new HashMap<>();
        resMap.put("total",total);
        resMap.put("list",list);
        return ResultUtil.data(resMap);
    }
    @GetMapping("/getOrgFWStatics")
    @ApiOperation(value = "服务机构统计")
    public Result getOrgFWStatics(String areaId){
        QueryWrapper<OrgFuwu> wrapper = new QueryWrapper<>();
        wrapper.eq("area_id",areaId);
        int total = iOrgFuwuService.list(wrapper).size();
        List list = iOrderService.getTypeStatics(areaId);
 
        Map<String,Object> resMap = new HashMap<>();
        resMap.put("total",total);
        resMap.put("list",list);
        return ResultUtil.data(resMap);
    }
    @GetMapping("/getYlOrgYLStatics")
    @ApiOperation(value = "养老机构统计")
    public Result getYlOrgStatics(String areaId){
        QueryWrapper<OrgYanglao> wrapper = new QueryWrapper<>();
        if (StrUtil.isNotBlank(areaId)){
            wrapper.eq("area_id",areaId);
        }
        List<OrgYanglao> list = iOrgYanglaoService.list(wrapper);
        int total = list.size();//养老机构总个数
        int type0 =0;//养老院个数
        int type1 =0;//敬老院个数
        int type2 =0;//疗养院个数
        double square =0;//总面积
        int bedNumber = 0;//床位个数
        int nurseNumber = 0;//护理人员个数
        int duixiangNumber = 0;//入住老人个数
 
        for (OrgYanglao org:list){
            switch (org.getType()){
                case 0:
                    type0++;
                    break;
                case 1:
                    type1++;
                    break;
                case 2:
                    type2++;
                    break;
            }
            square+=org.getSquare();
            bedNumber+= org.getBedNumber();
            nurseNumber+= org.getNurseNumber();
            duixiangNumber+=org.getDuixiangNumber();
        }
        Map<String,Object> resMap = new HashMap<>();
        resMap.put("total",total);
        resMap.put("type0",type0);
        resMap.put("type1",type1);
        resMap.put("type2",type2);
        resMap.put("square",square);
        resMap.put("bedNumber",bedNumber);
        resMap.put("nurseNumber",nurseNumber);
        resMap.put("duixiangNumber",duixiangNumber);
        return ResultUtil.data(resMap);
 
    }
    @GetMapping("/getFuwuPersonStatics")
    @ApiOperation(value = "服务对象统计")
    public Result getFuwuPersonStatics(String areaId){
        int total = iSubsidyLogService.getTotalNum(areaId,null);
        List<Map<String,Object>> list = iSubsidyLogService.getTypeNum(areaId);
        list.forEach(e->{
            int type = (int) e.get("type");
            e.put("typeName", SubsidyEmum.values()[type].name());
        });
        Map<String,Object> resMap = new HashMap<>();
        resMap.put("total",total);
        resMap.put("list",list);
        return ResultUtil.data(resMap);
    }
 
    
}