|
@@ -1,16 +1,61 @@
|
|
|
package com.xynet.marketing.service.impl;
|
|
|
|
|
|
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
|
|
|
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
|
|
|
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
|
|
|
import com.xynet.marketing.entity.Project;
|
|
|
import com.xynet.marketing.mapper.ProjectMapper;
|
|
|
import com.xynet.marketing.service.ProjectService;
|
|
|
+import com.xynet.marketing.utils.Emptys;
|
|
|
+import com.xynet.marketing.utils.collections.map.JHashMap;
|
|
|
+import com.xynet.marketing.utils.collections.map.JMap;
|
|
|
import org.springframework.stereotype.Service;
|
|
|
|
|
|
+import java.util.List;
|
|
|
+import java.util.Map;
|
|
|
+
|
|
|
/**
|
|
|
+ * 项目服务实现类
|
|
|
* @author hechunping
|
|
|
* @date 2025/1/15
|
|
|
*/
|
|
|
@Service
|
|
|
public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> implements ProjectService {
|
|
|
+ /**
|
|
|
+ * 通用查询构建器
|
|
|
+ * @param param
|
|
|
+ * @return
|
|
|
+ */
|
|
|
+ private LambdaQueryWrapper<Project> commonQueryWrapper(JMap<String,Object> param) {
|
|
|
+ LambdaQueryWrapper<Project> lqw = new LambdaQueryWrapper<Project>()
|
|
|
+ .eq(Emptys.check(param.getInt("id")), Project::getId, param.getInt("id"))
|
|
|
+ .eq(Emptys.check(param.getString("code")), Project::getCode, param.getString("code"))
|
|
|
+ .like(Emptys.check(param.getString("name")), Project::getName, param.getString("name"))
|
|
|
+ ;
|
|
|
+ return lqw;
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Map<String,Object> obj(JMap<String,Object> param) {
|
|
|
+ LambdaQueryWrapper<Project> lqw = commonQueryWrapper(param).last("limit 1");
|
|
|
+ Project project = getOne(lqw);
|
|
|
+ return JHashMap.copy(project);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public List<Map<String, Object>> list(JMap<String, Object> param) {
|
|
|
+ LambdaQueryWrapper<Project> lqw = commonQueryWrapper(param).orderByAsc(Project::getId);
|
|
|
+ List<Project> list = list(lqw);
|
|
|
+ return JHashMap.copy(list);
|
|
|
+ }
|
|
|
+
|
|
|
+ @Override
|
|
|
+ public Page<Map<String, Object>> page(JMap<String, Object> param) {
|
|
|
+ LambdaQueryWrapper<Project> lqw = commonQueryWrapper(param).orderByAsc(Project::getId);
|
|
|
+ Page<Project> page = new Page<>(param.getInt("pageCurrent"), param.getInt("pageSize"),true);
|
|
|
+ Page<Project> list = page(page, lqw);
|
|
|
+ return JHashMap.copy(list);
|
|
|
+ }
|
|
|
|
|
|
-}
|
|
|
+}
|