|
@@ -2,24 +2,60 @@ package com.example.user.controller;
|
|
|
|
|
|
|
|
|
import com.example.user.domain.User;
|
|
|
+import com.mongodb.client.result.DeleteResult;
|
|
|
+import com.mongodb.client.result.UpdateResult;
|
|
|
+import io.swagger.annotations.Api;
|
|
|
+import io.swagger.annotations.ApiOperation;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.data.mongodb.core.MongoTemplate;
|
|
|
-import org.springframework.web.bind.annotation.PostMapping;
|
|
|
-import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
-import org.springframework.web.bind.annotation.RestController;
|
|
|
+import org.springframework.data.mongodb.core.query.Criteria;
|
|
|
+import org.springframework.data.mongodb.core.query.Query;
|
|
|
+import org.springframework.data.mongodb.core.query.Update;
|
|
|
+import org.springframework.validation.annotation.Validated;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
|
|
|
@RestController
|
|
|
@RequestMapping("/user")
|
|
|
+@Api("用户接口")
|
|
|
public class UserController {
|
|
|
|
|
|
@Autowired
|
|
|
MongoTemplate mongoTemplate;
|
|
|
|
|
|
- //@PostMapping("/save")
|
|
|
- public User add(){
|
|
|
- User user = new User();
|
|
|
- user.setUsername("zhangyang");
|
|
|
- System.out.println(mongoTemplate.insert(user));
|
|
|
- return mongoTemplate.insert(user);
|
|
|
+ @PostMapping("/save")
|
|
|
+ @ApiOperation("新增用户")
|
|
|
+ public User add(@Validated @RequestBody User user){
|
|
|
+ return mongoTemplate.insert( user );
|
|
|
}
|
|
|
+
|
|
|
+ @ApiOperation("根据id删除用户")
|
|
|
+ @DeleteMapping("/remove/{userIds}")
|
|
|
+ public DeleteResult delete(@PathVariable String[] userIds){
|
|
|
+
|
|
|
+ Query query = new Query(Criteria.where("userId").is(userIds) );
|
|
|
+ return mongoTemplate.remove(query,User.class);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation("根据userId查询内容")
|
|
|
+ @GetMapping("/{userId}")
|
|
|
+ public User get(@PathVariable Long userId){
|
|
|
+ Query query = new Query(Criteria.where("userId").is(userId) );
|
|
|
+ return (User) mongoTemplate.find(query,User.class);
|
|
|
+ }
|
|
|
+
|
|
|
+ @ApiOperation("修改用户")
|
|
|
+ @PutMapping("/update")
|
|
|
+ public UpdateResult edit(@RequestBody User user){
|
|
|
+ Query query = new Query(Criteria.where("userId").is(user.get_id()) );
|
|
|
+ Update update = new Update();
|
|
|
+ if(user.getUsername() != null && user.getUsername() != ""){
|
|
|
+ update.set("username",user.getUsername());
|
|
|
+ }
|
|
|
+ if(user.getAge() != null){
|
|
|
+ update.set("age",user.getAge());
|
|
|
+ }
|
|
|
+ return mongoTemplate.upsert(query,update,User.class);
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
}
|