|
|
@@ -0,0 +1,102 @@
|
|
|
+package org.linlinjava.litemall.admin.web;
|
|
|
+
|
|
|
+import org.apache.commons.logging.Log;
|
|
|
+import org.apache.commons.logging.LogFactory;
|
|
|
+import org.linlinjava.litemall.admin.annotation.LoginAdmin;
|
|
|
+import org.linlinjava.litemall.core.util.RegexUtil;
|
|
|
+import org.linlinjava.litemall.core.util.ResponseUtil;
|
|
|
+import org.linlinjava.litemall.core.validator.Order;
|
|
|
+import org.linlinjava.litemall.core.validator.Sort;
|
|
|
+import org.linlinjava.litemall.db.domain.LitemallFeedback;
|
|
|
+import org.linlinjava.litemall.db.service.LitemallFeedbackService;
|
|
|
+import org.springframework.beans.factory.annotation.Autowired;
|
|
|
+import org.springframework.validation.annotation.Validated;
|
|
|
+import org.springframework.web.bind.annotation.*;
|
|
|
+
|
|
|
+import javax.validation.constraints.NotNull;
|
|
|
+import java.time.LocalDateTime;
|
|
|
+import java.util.HashMap;
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
+/**
|
|
|
+ * @author Yogeek
|
|
|
+ * @date 2018/8/26 1:11
|
|
|
+ */
|
|
|
+@RestController
|
|
|
+@RequestMapping("/admin/feedback")
|
|
|
+@Validated
|
|
|
+public class AdminFeedbackController {
|
|
|
+ private final Log logger = LogFactory.getLog(AdminFeedbackController.class);
|
|
|
+
|
|
|
+ @Autowired
|
|
|
+ private LitemallFeedbackService feedbackService;
|
|
|
+
|
|
|
+ @GetMapping("/list")
|
|
|
+ public Object list(@LoginAdmin Integer adminId,
|
|
|
+ Integer userId, String username,
|
|
|
+ @RequestParam(defaultValue = "1") Integer page,
|
|
|
+ @RequestParam(defaultValue = "10") Integer limit,
|
|
|
+ @Sort @RequestParam(defaultValue = "add_time") String sort,
|
|
|
+ @Order @RequestParam(defaultValue = "desc") String order) {
|
|
|
+ if(adminId == null){
|
|
|
+ return ResponseUtil.unlogin();
|
|
|
+ }
|
|
|
+ List<LitemallFeedback> feedbackList = feedbackService.querySelective(userId, username, page, limit, sort, order);
|
|
|
+ int total = feedbackService.countSelective(userId, username, page, limit, sort, order);
|
|
|
+ Map<String, Object> data = new HashMap<>();
|
|
|
+ data.put("total", total);
|
|
|
+ data.put("items", feedbackList);
|
|
|
+
|
|
|
+ return ResponseUtil.ok(data);
|
|
|
+ }
|
|
|
+
|
|
|
+ @PostMapping("/create")
|
|
|
+ public Object create(@LoginAdmin Integer adminId, @RequestBody LitemallFeedback feedback) {
|
|
|
+ if(adminId == null){
|
|
|
+ return ResponseUtil.unlogin();
|
|
|
+ }
|
|
|
+
|
|
|
+ String mobile = feedback.getMobile();
|
|
|
+ if(!RegexUtil.isMobileExact(mobile)){
|
|
|
+ return ResponseUtil.fail(403, "手机号格式不正确");
|
|
|
+ }
|
|
|
+
|
|
|
+ feedback.setAddTime(LocalDateTime.now());
|
|
|
+ feedbackService.add(feedback);
|
|
|
+
|
|
|
+ return ResponseUtil.ok(feedback);
|
|
|
+ }
|
|
|
+
|
|
|
+ @GetMapping("/read")
|
|
|
+ public Object read(@LoginAdmin Integer adminId, @NotNull Integer id){
|
|
|
+ if(adminId == null){
|
|
|
+ return ResponseUtil.unlogin();
|
|
|
+ }
|
|
|
+
|
|
|
+ if(id == null){
|
|
|
+ return ResponseUtil.badArgument();
|
|
|
+ }
|
|
|
+
|
|
|
+ LitemallFeedback feedback = feedbackService.findById(id);
|
|
|
+ return ResponseUtil.ok(feedback);
|
|
|
+ }
|
|
|
+
|
|
|
+ @PostMapping("/update")
|
|
|
+ public Object update(@LoginAdmin Integer adminId, @RequestBody LitemallFeedback feedback) {
|
|
|
+ if(adminId == null){
|
|
|
+ return ResponseUtil.unlogin();
|
|
|
+ }
|
|
|
+ feedbackService.updateById(feedback);
|
|
|
+ return ResponseUtil.ok(feedback);
|
|
|
+ }
|
|
|
+
|
|
|
+ @PostMapping("/delete")
|
|
|
+ public Object delete(@LoginAdmin Integer adminId, @RequestBody LitemallFeedback feedback){
|
|
|
+ if(adminId == null){
|
|
|
+ return ResponseUtil.unlogin();
|
|
|
+ }
|
|
|
+ feedbackService.delete(feedback.getId());
|
|
|
+ return ResponseUtil.ok();
|
|
|
+ }
|
|
|
+}
|