Преглед на файлове

feat(service): 新增项目新增或修改功能

hechunping преди 5 месеца
родител
ревизия
c8519d0780

+ 34 - 9
src/main/java/com/xynet/marketing/controller/TestController.java

@@ -1,14 +1,18 @@
 package com.xynet.marketing.controller;
 
-import com.xynet.marketing.service.factory.plus.PlusFactory;
-import com.xynet.marketing.utils.FactoryUtils;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.xynet.marketing.service.ProjectService;
 import com.xynet.marketing.utils.R;
-import com.xynet.marketing.utils.error.BusinessException;
-import com.xynet.marketing.utils.redis.utils.RedisService;
+import com.xynet.marketing.utils.collections.map.JHashMap;
+import com.xynet.marketing.utils.collections.map.JMap;
 import lombok.AllArgsConstructor;
 import lombok.extern.slf4j.Slf4j;
-import org.springframework.web.bind.annotation.*;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
 
+import java.util.List;
 import java.util.Map;
 
 @RestController
@@ -16,11 +20,32 @@ import java.util.Map;
 @AllArgsConstructor
 @Slf4j
 public class TestController {
-    private RedisService<Object> redisService;
+    private ProjectService projectService;
+
+    @PostMapping("save")
+    public Object save(@RequestBody Map<String,Object> param){
+        projectService.saveOrUpdate(new JHashMap<>(param));
+        return R.ok();
+    }
+
+    @PostMapping("test")
+    public Object test(@RequestBody Map<String,Object> param){
+        JMap<String, Object> param1 = new JHashMap<>(param);
+        JMap<String, Object> page = param1.getMap("page");
+        return R.ok(page.getInt("current"));
+    }
 
     @PostMapping("aa")
-    public R<String> aa(@RequestBody Map<String,Object> param) {
-        String v = FactoryUtils.getService(PlusFactory.class, param.get("v").toString()).save(param);
-        return R.ok(v);
+    public R<List<Map<String, Object>>> aa(@RequestBody Map<String,Object> param) {
+        JMap<String, Object> param1 = new JHashMap<>(param);
+        List<Map<String, Object>> list = projectService.list(param1);
+        return R.ok(list);
+    }
+
+    @PostMapping("page")
+    public R<Page<Map<String, Object>>> page(@RequestBody Map<String,Object> param) {
+        JMap<String, Object> param1 = new JHashMap<>(param);
+        Page<Map<String, Object>> list = projectService.page(param1);
+        return R.ok(list);
     }
 }

+ 6 - 6
src/main/java/com/xynet/marketing/service/ProjectService.java

@@ -14,12 +14,12 @@ public interface ProjectService {
      */
     Map<String,Object> obj(JMap<String,Object> param);
 
-//    /**
-//     * 新增或修改
-//     * @param dto
-//     * @return
-//     */
-//    ProjectDto.Vo saveOrUpdate(ProjectDto.SaveOrUpdateDto dto);
+    /**
+     * 新增或修改
+     * @param param
+     * @return
+     */
+    void saveOrUpdate(JMap<String, Object> param);
 
     /**
      * 列表查询

+ 11 - 0
src/main/java/com/xynet/marketing/service/impl/ProjectServiceImpl.java

@@ -1,5 +1,6 @@
 package com.xynet.marketing.service.impl;
 
+import cn.hutool.core.bean.BeanUtil;
 import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
@@ -58,4 +59,14 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
         return JHashMap.copy(list);
     }
 
+    @Override
+    public void saveOrUpdate(JMap<String, Object> param) {
+        Project project = BeanUtil.copyProperties(param, Project.class);
+        if(Emptys.check(project.getId())){
+            updateById(project);
+        }else{
+            save(project);
+        }
+    }
+
 }