riku
2021-09-24 4f1b7973c53b45f57e451191bfd5a3d2136a004c
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
package cn.flightfeather.supervision.lightshare.web
 
import cn.flightfeather.supervision.domain.entity.Userinfo
import cn.flightfeather.supervision.lightshare.service.UserinfoService
import cn.flightfeather.supervision.lightshare.vo.LoginRequestVo
import cn.flightfeather.supervision.lightshare.vo.UserSearchCondition
import io.swagger.annotations.Api
import io.swagger.annotations.ApiOperation
import org.springframework.web.bind.annotation.*
import org.springframework.web.multipart.MultipartFile
import javax.servlet.http.HttpServletResponse
 
@Api(tags = ["用户信息API接口"])
@RestController
@RequestMapping("/userInfo")
class UserinfoController(val userinfoService: UserinfoService) {
//    @GetMapping("")
//    fun getAll() = userinfoService.findAll()
 
    @GetMapping("/{id}")
    fun getById(@PathVariable id: String) = userinfoService.findOne(id)
 
    @PutMapping("")
    fun add(@RequestBody userinfo: Userinfo) = userinfoService.save(userinfo)
 
    @PostMapping("")
    fun update(@RequestBody userinfo: Userinfo) = userinfoService.update(userinfo)
 
//    @DeleteMapping("/{id}")
//    fun delete(@PathVariable id: String) = userinfoService.delete(id)
 
    @ApiOperation(value = "登录")
    @PostMapping("/login")
    fun login(@RequestBody loginRequestVo: LoginRequestVo) = userinfoService.login(loginRequestVo)
 
    @ApiOperation(value = "注册")
    @PostMapping("/register")
    fun register(@RequestBody loginRequestVo: LoginRequestVo) = userinfoService.register(loginRequestVo)
 
    @ApiOperation(value = "获取用户通讯录")
    @GetMapping("/addressBook")
    fun getAddressBook(@RequestParam("userId") userId: String) = userinfoService.getAddressBook(userId)
 
    @ApiOperation(value = "上传用户头像")
    @PostMapping("/accountPic/upLoad")
    fun upLoadUserAccountPic(
            @RequestParam("userId") userId: String,
            @RequestPart("images") files: Array<MultipartFile>
    ) = userinfoService.upLoadAccountPic(userId, files)
 
    @ApiOperation(value = "修改密码")
    @PostMapping("/password/change/{userId}")
    fun changePassword(
            @RequestParam("userId") userId: String,
            @RequestParam("oldPassword") oldPassword: String,
            @RequestParam("newPassword") newPassword: String
    ) = userinfoService.changePassword(userId, oldPassword, newPassword)
 
    @ApiOperation(value = "根据查询者,找到同区县的用户")
    @PostMapping("/searchUser/{userId}")
    fun searchUser(
            @PathVariable("userId") userId: String,
            @RequestBody condition: UserSearchCondition,
            @RequestParam(value = "page") page: Int,
            @RequestParam(value = "per_page") perPage: Int,
            response: HttpServletResponse
    ) = userinfoService.searchUser(userId, condition, page, perPage, response)
 
    @ApiOperation(value = "获取用户基本信息")
    @GetMapping("/baseInfo")
    fun getBaseInfo(
            @RequestParam("userId") userId: String
    ) = userinfoService.getBaseInfo(userId)
}