puzhibing
2023-07-09 d9c4252c54adc1684de9b56ad810465945e442a8
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
package com.stylefeng.guns.modular.api;
 
 
import com.stylefeng.guns.modular.system.model.BankCard;
import com.stylefeng.guns.modular.system.service.IBankCardService;
import com.stylefeng.guns.modular.system.service.IDriverService;
import com.stylefeng.guns.modular.system.util.ResultUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.bind.annotation.RestController;
 
import javax.servlet.http.HttpServletRequest;
import java.util.List;
 
 
@Api
@RestController
@RequestMapping("/api/bankCard")
public class BankCardController {
 
    @Autowired
    private IBankCardService bankCardService;
 
    @Autowired
    private IDriverService driverService;
 
 
    /**
     * 保存银行卡号
     * @param bank
     * @param name
     * @param code
     * @param request
     * @return
     */
    @ResponseBody
    @PostMapping("/saveBankCard")
    @ApiOperation(value = "保存银行卡信息【1.1】", tags = {"司机端-个人中心"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "银行名称", name = "bank", required = true, dataType = "String"),
            @ApiImplicitParam(value = "开户人姓", name = "lastName", required = true, dataType = "String"),
            @ApiImplicitParam(value = "开户人名", name = "firstName", required = true, dataType = "String"),
            @ApiImplicitParam(value = "银行卡号", name = "code", required = true, dataType = "String"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil saveBankCard(String bank, String lastName,String firstName, String code, Integer language,  HttpServletRequest request){
        try {
            Integer driverId = driverService.getUserIdFormRedis(request);
            if(null == driverId){
                return ResultUtil.tokenErr();
            }
            return bankCardService.saveBankCard(bank, lastName, firstName, code, driverId, language);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
        }
    }
 
    @ResponseBody
    @PostMapping("/updateBankCard")
    @ApiOperation(value = "保存银行卡信息【1.1】", tags = {"司机端-个人中心"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "银行卡id", name = "id", required = true, dataType = "int"),
            @ApiImplicitParam(value = "银行名称", name = "bank", required = true, dataType = "String"),
            @ApiImplicitParam(value = "开户人姓", name = "lastName", required = true, dataType = "String"),
            @ApiImplicitParam(value = "开户人名", name = "firstName", required = true, dataType = "String"),
            @ApiImplicitParam(value = "银行卡号", name = "code", required = true, dataType = "String"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil updateBankCard(Integer id, String bank, String lastName,String firstName, String code, Integer language,  HttpServletRequest request){
        try {
            Integer driverId = driverService.getUserIdFormRedis(request);
            if(null == driverId){
                return ResultUtil.tokenErr();
            }
            return bankCardService.updateBankCard(id, bank, lastName, firstName, code, driverId, language);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
        }
    }
 
    /**
     * 删除银行卡号
     * @param id
     * @param request
     * @return
     */
    @ResponseBody
    @PostMapping("/delBankCard")
    @ApiOperation(value = "删除银行卡信息", tags = {"司机端-个人中心"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "银行卡id", name = "id", required = true, dataType = "int"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil delBankCard(Integer id, Integer language, HttpServletRequest request){
        try {
            Integer driverId = driverService.getUserIdFormRedis(request);
            if(null == driverId){
                return ResultUtil.tokenErr();
            }
            return bankCardService.delBankCard(id, driverId, language);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
        }
    }
 
 
    /**
     * 获取银行卡号列表
     * @param pageNum
     * @param size
     * @param request
     * @return
     */
    @ResponseBody
    @PostMapping("/queryBankCard")
    @ApiOperation(value = "获取银行卡号列表", tags = {"司机端-个人中心"}, notes = "")
    @ApiImplicitParams({
            @ApiImplicitParam(value = "页码,首页1", name = "pageNum", required = true, dataType = "int"),
            @ApiImplicitParam(value = "页条数", name = "size", required = true, dataType = "int"),
            @ApiImplicitParam(name = "Authorization", value = "Bearer +token", required = true, dataType = "String", paramType = "header", defaultValue = "Bearer eyJhbGciOiJIUzUxMiJ9.....")
    })
    public ResultUtil queryBankCard(Integer pageNum, Integer size, HttpServletRequest request){
        try {
            Integer driverId = driverService.getUserIdFormRedis(request);
            if(null == driverId){
                return ResultUtil.tokenErr();
            }
            List<BankCard> bankCards = bankCardService.queryBankCard(pageNum, size, driverId);
            return ResultUtil.success(bankCards);
        }catch (Exception e){
            e.printStackTrace();
            return ResultUtil.runErr();
        }
    }
 
}