xuhy
2025-01-09 b9009a5abd3f4129784a8d5e5316622e95669b68
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
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
package com.stylefeng.guns.modular.system.controller.general;
 
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.stylefeng.guns.core.base.controller.BaseController;
import com.stylefeng.guns.core.common.constant.factory.PageFactory;
import com.stylefeng.guns.core.log.LogObjectHolder;
import com.stylefeng.guns.core.util.SinataUtil;
import com.stylefeng.guns.modular.system.model.TCarBrand;
import com.stylefeng.guns.modular.system.model.TDriver;
import com.stylefeng.guns.modular.system.model.TDriverFacialFail;
import com.stylefeng.guns.modular.system.service.ITCarBrandService;
import com.stylefeng.guns.modular.system.service.ITDriverFacialFailService;
import com.stylefeng.guns.modular.system.service.ITDriverService;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.ui.Model;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
 
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
import java.util.Map;
 
/**
 * 司机人脸识别异常记录管理控制器
 *
 * @author fengshuonan
 * @Date 2020-06-05 14:31:28
 */
@Controller
@RequestMapping("/tDriverFacialFail")
public class TDriverFacialFailController extends BaseController {
 
    private String PREFIX = "/system/tDriverFacialFail/";
 
    @Autowired
    private ITDriverFacialFailService tDriverFacialFailService;
    @Autowired
    private ITDriverService driverService;
 
    /**
     * 跳转到司机人脸识别异常记录管理首页
     */
    @RequestMapping("")
    public String index() {
        return PREFIX + "tDriverFacialFail.html";
    }
 
    /**
     * 跳转到添加司机人脸识别异常记录管理
     */
    @RequestMapping("/tDriverFacialFail_add")
    public String tDriverFacialFailAdd(Model model) {
        return PREFIX + "tDriverFacialFail_add.html";
    }
 
    /**
     * 跳转到修改司机人脸识别异常记录管理
     */
    @RequestMapping("/tDriverFacialFail_update/{tDriverFacialFailId}")
    public String tDriverFacialFailUpdate(@PathVariable Integer tDriverFacialFailId, Model model) {
        TDriverFacialFail tDriverFacialFail = tDriverFacialFailService.selectById(tDriverFacialFailId);
        TDriver driver = driverService.selectById(tDriverFacialFail.getDriverId());
        model.addAttribute("item",tDriverFacialFail);
        model.addAttribute("driverName",driver.getName());
        model.addAttribute("driverPhone",driver.getPhone());
        LogObjectHolder.me().set(tDriverFacialFail);
        return PREFIX + "tDriverFacialFail_edit.html";
    }
 
    /**
     * 获取司机人脸识别异常记录管理列表
     */
    @RequestMapping(value = "/list")
    @ResponseBody
    public Object list(String createTime,
                       String name,
                       String phone) {
        String beginTime = null;
        String endTime = null;
        if (SinataUtil.isNotEmpty(createTime)){
            String[] timeArray = createTime.split(" - ");
            beginTime = timeArray[0];
            endTime = timeArray[1];
        }
        Page<Map<String, Object>> page = new PageFactory<Map<String, Object>>().defaultPage();
        page.setRecords(tDriverFacialFailService.getDriverFacialFailList(page,beginTime,endTime,name,phone));
        return super.packForBT(page);
    }
 
    /**
     * 删除司机人脸识别异常记录管理
     */
    @RequestMapping(value = "/delete")
    @ResponseBody
    public Object delete(@RequestParam Integer tDriverFacialFailId) {
        TDriverFacialFail tDriverFacialFail = tDriverFacialFailService.selectById(tDriverFacialFailId);
        tDriverFacialFail.setIsDelete(2);
        tDriverFacialFailService.updateById(tDriverFacialFail);
        return SUCCESS_TIP;
    }
 
    /**
     * 删除司机人脸识别异常记录管理
     */
    @RequestMapping(value = "/deleteBatch")
    @ResponseBody
    public Object deleteBatch(@RequestParam String tDriverFacialFailIds) {
 
        if(!StringUtils.hasLength(tDriverFacialFailIds)){
            return ResultUtil.error("请选择要删除的数据");
        }
 
        String[] split = tDriverFacialFailIds.split(",");
        List<Integer> driverFacialFailIds = new ArrayList<>();
        for (String s : split) {
            driverFacialFailIds.add(Integer.valueOf(s));
        }
 
        List<TDriverFacialFail> driverFacialFails = tDriverFacialFailService.selectList(new EntityWrapper<TDriverFacialFail>()
                .in("id", driverFacialFailIds));
        driverFacialFails.forEach(tDriverFacialFail -> {
            tDriverFacialFail.setIsDelete(2);
        });
        tDriverFacialFailService.updateBatchById(driverFacialFails);
        return SUCCESS_TIP;
    }
 
    /**
     * 解封司机人脸识别
     */
    @RequestMapping(value = "/unsealing")
    @ResponseBody
    public Object unsealing(@RequestParam Integer tDriverFacialFailId) {
        TDriverFacialFail tDriverFacialFail = tDriverFacialFailService.selectById(tDriverFacialFailId);
        // 重置司机失败次数,并且更新是否需要进行人脸识别和识别时间
        TDriver driver = driverService.selectById(tDriverFacialFail.getDriverId());
        driver.setFailCount(0);
        driver.setIsNeedFacial(0);
        driver.setLastFacialTime(new Date());
        driverService.updateById(driver);
        return SUCCESS_TIP;
    }
 
 
}