mitao
2025-01-03 75aa42c51ae2a63d7c1e5e813c0a88fd303bdbf4
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
package com.sinata.web.controller.applet;
 
import com.sinata.common.core.domain.R;
import com.sinata.common.core.domain.entity.SysUser;
import com.sinata.common.entity.PageDTO;
import com.sinata.common.utils.SecurityUtils;
import com.sinata.system.domain.MwTransitRoute;
import com.sinata.system.domain.MwTransitRouteCar;
import com.sinata.system.domain.MwTransitRoutePoints;
import com.sinata.system.domain.SysDepartment;
import com.sinata.system.domain.dto.MwTransitRouteDTO;
import com.sinata.system.domain.query.MwTransitRouteQuery;
import com.sinata.system.domain.vo.MwTransitRouteVO;
import com.sinata.system.service.*;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import lombok.RequiredArgsConstructor;
import org.springframework.validation.annotation.Validated;
import org.springframework.web.bind.annotation.*;
 
import javax.validation.Valid;
import java.util.ArrayList;
import java.util.List;
 
/**
 * <p>
 * 转运线路 前端控制器
 * </p>
 *
 * @author mitao
 * @since 2024-12-02
 */
@Validated
@RestController
@RequiredArgsConstructor
@Api(tags = {"运输路线"})
@RequestMapping("/applet/mwTransitRoute")
public class AppMwTransitRouteController {
    private final MwTransitRouteService mwTransitRouteService;
    private final MwTransitRouteCarService transitRouteCarService;
    private final MwTransitRoutePointsService pointsService;
    private final SysDepartmentService departmentService;
    private final ISysUserService userService;
 
    /**
     * 分页列表
     *
     * @param query
     * @return
     */
 
    @ApiOperation("线路列表")
    @PostMapping("/line")
    public R<List<MwTransitRoute>> line() {
        //获取当前用户的车辆
        SysUser sysUser1 = SecurityUtils.getLoginUser().getUser();
        SysUser sysUser = userService.getById(sysUser1.getUserId());
        Long carId = sysUser.getCarId();
        //根据车辆获取线路列表
        List<MwTransitRouteCar> list = transitRouteCarService.lambdaQuery().eq(MwTransitRouteCar::getCarId, carId).list();
        List<Long> routeIds = new ArrayList<>();
        for (MwTransitRouteCar mwTransitRouteCar : list) {
            routeIds.add(mwTransitRouteCar.getRouteId());
        }
        if (routeIds.isEmpty()){
            return R.ok();
        }
 
        List<MwTransitRoute> list1 = mwTransitRouteService.lambdaQuery().in(MwTransitRoute::getId, routeIds).list();
        for (MwTransitRoute mwTransitRoute : list1) {
            SysDepartment byId = departmentService.getById(mwTransitRoute.getDepartmentId());
            if (byId != null) {
                mwTransitRoute.setHospitalName(byId.getDepartmentName());
            }
        }
        return R.ok(list1);
    }
    @ApiOperation("获取途径点")
    @PostMapping("/get")
    public R<List<MwTransitRoutePoints>> pageList(@RequestParam Long routeId) {
        List<MwTransitRoutePoints> list1 = pointsService.lambdaQuery().eq(MwTransitRoutePoints::getRouteId, routeId).orderByAsc(MwTransitRoutePoints::getSortOrder).list();
        for (MwTransitRoutePoints mwTransitRoutePoints : list1) {
            SysDepartment byId = departmentService.getById(mwTransitRoutePoints.getDepartmentId());
            mwTransitRoutePoints.setDepartmentName(byId.getDepartmentName());
        }
        return R.ok(list1);
    }
 
 
 
}