From 8d9a2d656e4ae007590c622e5f7c228adacdca49 Mon Sep 17 00:00:00 2001
From: rain <167982779@qq.com>
Date: Fri, 14 Jun 2024 10:11:36 +0800
Subject: [PATCH] 统一风格

---
 src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java |  126 +++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 123 insertions(+), 3 deletions(-)

diff --git a/src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java b/src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java
index a1a294a..3f2c128 100644
--- a/src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java
+++ b/src/main/java/com/dji/sample/patches/service/impl/GetPatchesServiceImpl.java
@@ -1,30 +1,150 @@
 package com.dji.sample.patches.service.impl;
 
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
 import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
 import com.dji.sample.common.model.Pagination;
 import com.dji.sample.common.model.PaginationData;
+import com.dji.sample.media.dao.IFileMapper;
+import com.dji.sample.media.model.MediaFileEntity;
 import com.dji.sample.patches.dao.GetPatchesMapper;
 import com.dji.sample.patches.model.Param.PatchesParam;
 import com.dji.sample.patches.model.entity.LotInfo;
 import com.dji.sample.patches.service.GetPatchesService;
+import com.dji.sample.patches.utils.DistrictCodeUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.stereotype.Service;
 
+import java.util.ArrayList;
 import java.util.List;
+import java.util.Objects;
 import java.util.stream.Collectors;
 
 @Service
 public class GetPatchesServiceImpl implements GetPatchesService {
     @Autowired
     private GetPatchesMapper mapper;
+    @Autowired
+    private IFileMapper fileMapper;
 
+    /**
+     * 分页获取数据的接口实现。
+     *
+     * @param param 包含分页信息和查询条件的工作空间ID。
+     * @return 返回一个包含查询结果和分页信息的PaginationData对象。
+     */
     @Override
     public PaginationData<LotInfo> limitGet(PatchesParam param) {
-        Page<LotInfo> page = mapper.selectPage(new Page<LotInfo>(param.getPage(), param.getPageSize()), null);
-        List<LotInfo> records = page.getRecords()
+        // 创建分页对象
+        Page<LotInfo> page = new Page<>(param.getPage(), param.getPageSize());
+
+        // 创建查询条件对象
+        LambdaQueryWrapper<LotInfo> queryWrapper = new LambdaQueryWrapper<>();
+
+        // 添加查询条件
+        queryWrapper.eq(LotInfo::getWorkspaceId, param.getWorkspaceId());
+
+        if (param.getDkbh() != null && !param.getDkbh().isEmpty()) {
+            queryWrapper.like(LotInfo::getDkbh, param.getDkbh());
+        }
+        if (param.getInvestigate() != null) {
+            queryWrapper.eq(LotInfo::getInvestigate, param.getInvestigate());
+        }
+        if (param.getDkbh() != null && !param.getDkbh().isEmpty()) {
+            queryWrapper.like(LotInfo::getDkbh, param.getDkbh());
+        }
+        if (param.getXzqdm() != null && !param.getXzqdm().isEmpty()) {
+            queryWrapper.like(LotInfo::getXzqdm, param.getXzqdm());
+        }
+        if (param.getXmc() != null && !param.getXmc().isEmpty()) {
+            queryWrapper.like(LotInfo::getXmc, param.getXmc());
+        }
+        if (param.getBsm() != null && !param.getBsm().isEmpty()) {
+            queryWrapper.like(LotInfo::getXmc, param.getBsm());
+        }
+
+        // 执行分页查询
+        Page<LotInfo> resultPage = mapper.selectPage(page, queryWrapper);
+
+        // 处理查询结果
+        List<LotInfo> records = resultPage.getRecords()
                 .stream()
+                .peek(lotInfo -> {
+                    // 修改 xzqdm 字段的值
+                     lotInfo.setXmc(DistrictCodeUtils.codeToName(lotInfo.getXzqdm()));
+                })
                 .collect(Collectors.toList());
-        return new PaginationData<LotInfo>(records, new Pagination(page));
+
+        // 返回分页数据
+        return new PaginationData<>(records, new Pagination(resultPage));
+    }
+    @Override
+    public int delPatches(String workspaceId) {
+        return mapper.delete(new LambdaQueryWrapper<LotInfo>().eq(LotInfo::getWorkspaceId,workspaceId));
     }
 
+    @Override
+    public int deleteOne(int id) {
+        return mapper.deleteById(id);
+    }
+
+
+    /**
+     * 根据条件获取照片的分页数据
+     *
+     * @param param 包含分页信息和查询条件的参数对象
+     * @param dkbh  查询条件中带有地块编号关键字,用于文件名的模糊搜索
+     * @return 返回照片的分页数据,包括分页信息和照片实体列表
+     */
+    @Override
+    public PaginationData<MediaFileEntity> getPhoto(PatchesParam param, String dkbh) {
+        Page<MediaFileEntity> page = fileMapper.selectPage(new Page<MediaFileEntity>(param.getPage(), param.getPageSize()),
+                new LambdaQueryWrapper<MediaFileEntity>().like(MediaFileEntity::getFileName, "%" + dkbh + "~" + "%"));
+        List<MediaFileEntity> records = page.getRecords()
+                .stream()
+                .collect(Collectors.toList());
+        return new PaginationData<MediaFileEntity>(records, new Pagination(page));
+    }
+
+    /**
+     * 根据条件获取照片的分页数据
+     *
+     * @param workspaceId 工作空间的ID,用于指定查询的工作空间
+     * @param dkbh        查询条件中带有地块编号关键字,用于文件名的模糊搜索
+     * @return 返回照片的分页数据,包括分页信息和照片实体列表
+     */
+    public List<MediaFileEntity> listPohto(String dkbh, String workspaceId) {
+        return fileMapper.selectList(new LambdaQueryWrapper<MediaFileEntity>().like(MediaFileEntity::getFileName, "%" + dkbh + "%")
+                .eq(MediaFileEntity::getWorkspaceId, workspaceId));
+    }
+
+    /**
+     * 根据地块编号和工作空间ID获取地块信息。
+     *
+     * @param dkbh        地块编号,用于查询特定定单的地块信息。
+     * @param workspaceId 工作空间ID,用于查询属于特定工作空间的地块信息。
+     * @return 返回匹配给定地块编号和工作空间ID的地块信息对象。如果找不到匹配的记录,则返回null。
+     */
+    public LotInfo getLotinfo(String dkbh, String workspaceId) {
+        return mapper.selectOne(new LambdaQueryWrapper<LotInfo>().eq(LotInfo::getDkbh, dkbh)
+                .eq(LotInfo::getWorkspaceId, workspaceId));
+    }
+
+    public LotInfo getLotinfoToDb(String dkbh) {
+        return mapper.selectOne(new LambdaQueryWrapper<LotInfo>().eq(LotInfo::getDkbh, dkbh));
+    }
+
+    public List<LotInfo> listLotinfo() {
+        return mapper.selectList(null);
+    }
+    @Override
+    public LotInfo getPatchesFromId(String patchesId){
+        return mapper.selectOne(new LambdaQueryWrapper<LotInfo>().eq(LotInfo::getId,patchesId));
+    }
+    @Override
+    public void insertLotinfo(List<LotInfo> list) {
+        for (int i = 0; i < list.size(); i++) {
+            mapper.insert(list.get(i));
+        }
+    }
 }

--
Gitblit v1.9.3