diff --git a/pom.xml b/pom.xml index b4f8e0f..ff96c7d 100644 --- a/pom.xml +++ b/pom.xml @@ -2,8 +2,8 @@ - 4.0.0 - + 4.0.0 + zhyc zhyc 3.8.9 @@ -11,7 +11,7 @@ zhyc http://www.ruoyi.vip 智慧羊场 - + 3.8.9 UTF-8 @@ -27,7 +27,14 @@ 2.0.53 6.8.1 2.19.0 - 4.1.2 + + 5.2.3 + + 1.26.2 + 5.2.0 + 4.4 + 1.08 + 3.6.1 2.3 0.9.1 @@ -148,11 +155,80 @@ ${commons.io.version} - + + + + org.apache.poi + poi + ${poi.version} + + org.apache.poi poi-ooxml ${poi.version} + + + org.apache.poi + poi + + + org.apache.poi + poi-ooxml-schemas + + + stax + stax-api + + + commons-codec + commons-codec + + + + + + org.apache.poi + poi-ooxml-schemas + ${poi.version} + + + + + org.apache.commons + commons-compress + ${commons-compress.version} + + + + org.apache.xmlbeans + xmlbeans + ${xmlbeans.version} + + + + org.apache.commons + commons-collections4 + ${commons-collections4.version} + + + + com.github.virtuald + curvesapi + ${curvesapi.version} + + + + org.apache.commons + commons-math3 + ${commons-math3.version} + + + + + commons-codec + commons-codec + 1.16.1 @@ -175,6 +251,7 @@ jjwt ${jwt.version} + pro.fessional @@ -216,6 +293,7 @@ zhyc-common ${zhyc.version} + zhyc zhyc-module @@ -234,6 +312,7 @@ zhyc-common zhyc-module + pom @@ -249,6 +328,24 @@ + + + org.apache.maven.plugins + maven-dependency-plugin + 3.1.2 + + + analyze + + analyze-only + + + false + + + + + @@ -261,6 +358,32 @@ true + + + + spring + Spring Repository + https://maven.aliyun.com/repository/spring + + true + + + false + + + + + + apache + Apache Repository + https://repository.apache.org/content/repositories/releases/ + + true + + + false + + @@ -275,6 +398,18 @@ false + + + spring + Spring Plugin Repository + https://maven.aliyun.com/repository/spring-plugin + + true + + + false + + \ No newline at end of file diff --git a/zhyc-admin/pom.xml b/zhyc-admin/pom.xml index eb68fae..c637a6d 100644 --- a/zhyc-admin/pom.xml +++ b/zhyc-admin/pom.xml @@ -87,15 +87,15 @@ - - org.apache.maven.plugins - maven-war-plugin - 3.1.0 + + org.apache.maven.plugins + maven-war-plugin + 3.1.0 false ${project.artifactId} - - + + ${project.artifactId} diff --git a/zhyc-common/pom.xml b/zhyc-common/pom.xml index da6df39..188d7ee 100644 --- a/zhyc-common/pom.xml +++ b/zhyc-common/pom.xml @@ -118,6 +118,10 @@ javax.servlet javax.servlet-api + + org.apache.poi + poi + diff --git a/zhyc-common/src/main/java/com/zhyc/common/core/domain/AjaxResult.java b/zhyc-common/src/main/java/com/zhyc/common/core/domain/AjaxResult.java index 5369d24..2191b87 100644 --- a/zhyc-common/src/main/java/com/zhyc/common/core/domain/AjaxResult.java +++ b/zhyc-common/src/main/java/com/zhyc/common/core/domain/AjaxResult.java @@ -90,6 +90,7 @@ public class AjaxResult extends HashMap return AjaxResult.success(msg, null); } + /** * 返回成功消息 * diff --git a/zhyc-module/pom.xml b/zhyc-module/pom.xml index 36df6fd..e597815 100644 --- a/zhyc-module/pom.xml +++ b/zhyc-module/pom.xml @@ -12,7 +12,135 @@ zhyc-module + + windows-x86_64 + win-x86_64 + + + + + + + cn.smartjavaai + bom + 1.1.1 + pom + + import + + + + + + cn.smartjavaai + common + 1.1.1 + + + commons-cli + commons-cli + 1.9.0 + + + + commons-io + commons-io + 2.17.0 + + + + org.testng + testng + 7.10.2 + test + + + + + ch.qos.logback + logback-classic + 1.2.3 + + + + com.alibaba + fastjson + 1.2.83 + + + + junit + junit + 4.13.2 + + + + + + + cn.smartjavaai + ocr + + + com.microsoft.onnxruntime + onnxruntime + + + + + + com.microsoft.onnxruntime + onnxruntime + 1.20.0 + runtime + + + + + ai.djl.pytorch + pytorch-jni + 2.7.1-0.34.0 + runtime + + + + + + org.bytedeco + javacpp + 1.5.11 + ${javacv.platform.windows-x86_64} + + + org.bytedeco + ffmpeg + 6.1.1-1.5.10 + ${javacv.platform.windows-x86_64} + + + + org.bytedeco + openblas + 0.3.26-1.5.10 + ${javacv.platform.windows-x86_64} + + + + org.bytedeco + opencv + 4.9.0-1.5.10 + ${javacv.platform.windows-x86_64} + + + + ai.djl.pytorch + pytorch-native-cpu + ${djl.platform.windows-x86_64} + 2.7.1 + runtime + + zhyc zhyc-common diff --git a/zhyc-module/src/main/java/com/zhyc/module/app/controller/ImageController.java b/zhyc-module/src/main/java/com/zhyc/module/app/controller/ImageController.java new file mode 100644 index 0000000..9279a25 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/app/controller/ImageController.java @@ -0,0 +1,66 @@ +package com.zhyc.module.app.controller; + +import com.zhyc.common.config.RuoYiConfig; +import com.zhyc.common.core.domain.AjaxResult; +import com.zhyc.module.app.util.OcrRecognizeUtil; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +//图片返回base64 +@RestController +@RequestMapping("/app/image") +public class ImageController { + +@PostMapping +public AjaxResult getImageBase64(String path) { + // 添加空值检查 + if (path == null || path.trim().isEmpty()) { + return AjaxResult.error("路径不能为空"); + } + path = path.replace("/profile", ""); + + try { + // 构建完整的文件路径 + String fullPath = RuoYiConfig.getProfile() + path; + + // 读取文件并转换为字节数组 + byte[] fileBytes = java.nio.file.Files.readAllBytes(java.nio.file.Paths.get(fullPath)); + + // 将字节数组转换为base64字符串 + String base64String = java.util.Base64.getEncoder().encodeToString(fileBytes); + + // 获取文件扩展名以确定MIME类型 + String mimeType = getMimeType(path); + + // 返回base64数据,格式为 data:image/xxx;base64,xxxxx + String result = "data:" + mimeType + ";base64," + base64String; + + return AjaxResult.success("操作成功",result); + } catch (Exception e) { + return AjaxResult.error("读取图片失败: " + e.getMessage()); + } +} + +/** + * 根据文件扩展名获取MIME类型 + */ +private String getMimeType(String fileName) { + String extension = fileName.substring(fileName.lastIndexOf(".") + 1).toLowerCase(); + switch (extension) { + case "jpg": + case "jpeg": + return "image/jpeg"; + case "png": + return "image/png"; + case "gif": + return "image/gif"; + case "bmp": + return "image/bmp"; + default: + return "image/jpeg"; // 默认返回jpeg类型 + } +} + +} + diff --git a/zhyc-module/src/main/java/com/zhyc/module/app/controller/OrcController.java b/zhyc-module/src/main/java/com/zhyc/module/app/controller/OrcController.java new file mode 100644 index 0000000..6ffb0d6 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/app/controller/OrcController.java @@ -0,0 +1,50 @@ +package com.zhyc.module.app.controller; + +import com.zhyc.common.config.RuoYiConfig; +import com.zhyc.common.core.domain.AjaxResult; +import com.zhyc.module.app.util.OcrRecognizeUtil; +import org.springframework.beans.factory.annotation.Value; +import org.springframework.web.bind.annotation.PostMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RestController; + +import java.io.File; + +//文字识别 +@RestController +@RequestMapping("/ocr") +public class OrcController { + +@PostMapping +public AjaxResult orcSheepNo(String path) { + // 添加空值检查 + if (path == null || path.trim().isEmpty()) { + return AjaxResult.error("路径不能为空"); + } + + try { + OcrRecognizeUtil ocrRecognizeUtil = new OcrRecognizeUtil(); + // 移除 /profile + path = path.replace("/profile", ""); + path = RuoYiConfig.getProfile() + path; + + // 验证文件是否存在 + File file = new File(path); + if (!file.exists()) { + return AjaxResult.error("文件不存在: " + path); + } + if (!file.isFile()) { + return AjaxResult.error("路径不是一个有效文件: " + path); + } + if (!file.canRead()) { + return AjaxResult.error("无权限读取文件: " + path); + } + + String recognize = ocrRecognizeUtil.recognizeTwo(path); + return AjaxResult.success("操作成功", recognize); + } catch (Exception e) { + return AjaxResult.error("OCR识别失败: " + e.getMessage()); + } +} + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/app/util/OcrRecognizeUtil.java b/zhyc-module/src/main/java/com/zhyc/module/app/util/OcrRecognizeUtil.java new file mode 100644 index 0000000..155d198 --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/app/util/OcrRecognizeUtil.java @@ -0,0 +1,257 @@ +package com.zhyc.module.app.util; + +import ai.djl.modality.cv.Image; +import cn.smartjavaai.common.cv.SmartImageFactory; +import cn.smartjavaai.common.enums.DeviceEnum; +import cn.smartjavaai.common.utils.ImageUtils; +import cn.smartjavaai.ocr.config.DirectionModelConfig; +import cn.smartjavaai.ocr.config.OcrDetModelConfig; +import cn.smartjavaai.ocr.config.OcrRecModelConfig; +import cn.smartjavaai.ocr.config.OcrRecOptions; +import cn.smartjavaai.ocr.entity.OcrInfo; +import cn.smartjavaai.ocr.enums.CommonDetModelEnum; +import cn.smartjavaai.ocr.enums.CommonRecModelEnum; +import cn.smartjavaai.ocr.enums.DirectionModelEnum; +import cn.smartjavaai.ocr.factory.OcrModelFactory; +import cn.smartjavaai.ocr.model.common.detect.OcrCommonDetModel; +import cn.smartjavaai.ocr.model.common.direction.OcrDirectionModel; +import cn.smartjavaai.ocr.model.common.recognize.OcrCommonRecModel; +import com.alibaba.fastjson.JSONObject; +import com.zhyc.common.config.RuoYiConfig; +import lombok.extern.slf4j.Slf4j; +import org.junit.BeforeClass; +import org.junit.Test; + +import java.io.File; +import java.io.IOException; +import java.nio.file.Path; +import java.nio.file.Paths; +import java.util.List; + +/** + * OCR 文本识别 示例 + * 模型下载地址:https://pan.baidu.com/s/1MLfd73Vjdpnuls9-oqc9uw?pwd=1234 提取码: 1234 + * 开发文档:http://doc.smartjavaai.cn/ + */ +/** + * OCR识别工具类 + * 提供文本识别相关的功能,包括获取不同类型的识别模型、文本检测模型、方向检测模型等 + * 支持普通识别、手写识别、带方向矫正的识别以及批量识别等功能 + */ +@Slf4j +public class OcrRecognizeUtil { + + //设备类型 + public static DeviceEnum device =DeviceEnum.CPU; + + + /** + * 测试初始化方法,在所有测试用例执行前调用一次 + * 设置SmartImageFactory使用的引擎为OpenCV,并可选配置缓存路径 + * + * @throws IOException 当初始化过程中发生IO异常时抛出 + */ + @BeforeClass + public static void beforeAll() throws IOException { + SmartImageFactory.setEngine(SmartImageFactory.Engine.OPENCV); + //修改缓存路径 + //Config.setCachePath("/Users/xxx/smartjavaai_cache"); + } + + /** + * 获取通用识别模型(高精确度模型) + * 注意事项:高精度模型,识别准确度高,速度慢 + * + * @return 返回高精度的OCR通用识别模型实例 + */ + public OcrCommonRecModel getProRecModel(){ + OcrRecModelConfig recModelConfig = new OcrRecModelConfig(); + //指定文本识别模型,切换模型需要同时修改modelEnum及modelPath + recModelConfig.setRecModelEnum(CommonRecModelEnum.PP_OCR_V5_SERVER_REC_MODEL); + //指定识别模型位置,需要更改为自己的模型路径(下载地址请查看文档) + recModelConfig.setRecModelPath("C:/wwwroot/ocr/rec/PP-OCRv5_server_rec_infer/PP-OCRv5_server_rec.onnx"); + recModelConfig.setDevice(device); + recModelConfig.setTextDetModel(getProDetectionModel()); + recModelConfig.setDirectionModel(getDirectionModel()); + return OcrModelFactory.getInstance().getRecModel(recModelConfig); + } + + /** + * 获取通用识别模型(极速模型) + * 注意事项:极速模型,识别准确度低,速度快 + * + * @return 返回极速的OCR通用识别模型实例 + */ + public OcrCommonRecModel getFastRecModel(){ + OcrRecModelConfig recModelConfig = new OcrRecModelConfig(); + //指定文本识别模型,切换模型需要同时修改modelEnum及modelPath + recModelConfig.setRecModelEnum(CommonRecModelEnum.PP_OCR_V5_MOBILE_REC_MODEL); + //指定识别模型位置,需要更改为自己的模型路径(下载地址请查看文档) + recModelConfig.setRecModelPath("C:/wwwroot/ocr/rec/PP-OCRv5_mobile_rec_infer/PP-OCRv5_mobile_rec_infer.onnx"); + recModelConfig.setDevice(device); + recModelConfig.setTextDetModel(getFastDetectionModel()); + recModelConfig.setDirectionModel(getDirectionModel()); // 添加方向模型配置 + return OcrModelFactory.getInstance().getRecModel(recModelConfig); + } + + + /** + * 获取文本检测模型(极速模型) + * 注意事项:极速模型,识别准确度低,速度快 + * + * @return 返回极速的OCR通用检测模型实例 + */ + public OcrCommonDetModel getFastDetectionModel() { + OcrDetModelConfig config = new OcrDetModelConfig(); + //指定检测模型,切换模型需要同时修改modelEnum及modelPath + config.setModelEnum(CommonDetModelEnum.PP_OCR_V5_MOBILE_DET_MODEL); + //指定模型位置,需要更改为自己的模型路径(下载地址请查看文档) + config.setDetModelPath("C:/wwwroot/ocr/det/PP-OCRv5_mobile_det_infer/PP-OCRv5_mobile_det_infer.onnx"); + config.setDevice(device); + return OcrModelFactory.getInstance().getDetModel(config); + } + + /** + * 获取文本检测模型(高精确度模型) + * 注意事项:高精度模型,识别准确度高,速度慢 + * + * @return 返回高精度的OCR通用检测模型实例 + */ + public OcrCommonDetModel getProDetectionModel() { + OcrDetModelConfig config = new OcrDetModelConfig(); + //指定检测模型,切换模型需要同时修改modelEnum及modelPath + config.setModelEnum(CommonDetModelEnum.PP_OCR_V5_SERVER_DET_MODEL); + //指定模型位置,需要更改为自己的模型路径(下载地址请查看文档) + config.setDetModelPath("C:/wwwroot/ocr/det/PP-OCRv5_server_det_infer/PP-OCRv5_server_det.onnx"); + config.setDevice(device); + return OcrModelFactory.getInstance().getDetModel(config); + } + + /** + * 获取方向检测模型 + * + * @return 返回OCR方向检测模型实例 + */ + public OcrDirectionModel getDirectionModel(){ + DirectionModelConfig directionModelConfig = new DirectionModelConfig(); + //指定行文本方向检测模型,切换模型需要同时修改modelEnum及modelPath + directionModelConfig.setModelEnum(DirectionModelEnum.PP_LCNET_X0_25); + //指定行文本方向检测模型路径,需要更改为自己的模型路径(下载地址请查看文档) + directionModelConfig.setModelPath("C:/wwwroot/ocr/ori/PP-LCNet_x0_25_textline_ori_infer.onnx"); + directionModelConfig.setDevice(device); + return OcrModelFactory.getInstance().getDirectionModel(directionModelConfig); + } + + + + /** + * 文本识别 + * 支持简体中文、繁体中文、英文、日文四种主要语言,以及手写、竖版、拼音、生僻字 + * 流程:文本检测 -> 文本识别 + * 注意事项: + * 1、批量检测时,模型应统一放在外层 try 中使用,避免重复加载,自动释放资源更安全。 + * 2、模型文件需要放在单独文件夹 + */ + public String recognize(String path){ + try { + OcrCommonRecModel recModel = getFastRecModel(); + //不带方向矫正,分行返回文本 + OcrRecOptions options = new OcrRecOptions(false, true); + //创建Image对象,可以从文件、url、InputStream创建、BufferedImage、Base64创建,具体使用方法可以查看文档 + Image image = SmartImageFactory.getInstance().fromFile(path); + OcrInfo ocrInfo = recModel.recognize(image, options); + log.info("OCR识别结果:{}", JSONObject.toJSONString(ocrInfo.getFullText())); + + // 识别成功后删除原图片 + deleteFile(path); + return ocrInfo.getFullText(); + } catch (Exception e) { + e.printStackTrace(); + } + return null; + } + + + /** + * 文本识别(手写字) + * 支持简体中文、繁体中文、英文、日文四种主要语言,以及手写、竖版、拼音、生僻字 + * 流程:文本检测 -> 文本识别 + * 注意事项: + * 1、批量检测时,模型应统一放在外层 try 中使用,避免重复加载,自动释放资源更安全。 + * 2、模型文件需要放在单独文件夹 + * 3、识别完成后会删除原图片文件 + */ + public void recognizeHandWriting(String path){ + try { + OcrCommonRecModel recModel = getFastRecModel(); + //创建Image对象,可以从文件、url、InputStream创建、BufferedImage、Base64创建,具体使用方法可以查看文档 + Image image = SmartImageFactory.getInstance().fromFile(path); + OcrInfo ocrInfo = recModel.recognize(image, new OcrRecOptions()); + log.info("OCR识别结果:{}", JSONObject.toJSONString(ocrInfo)); + + // 识别成功后删除原图片 + deleteFile(path); + } catch (Exception e) { + e.printStackTrace(); + } + } + +/** + * 文本识别(带方向矫正) + * 支持简体中文、繁体中文、英文、日文四种主要语言,以及手写、竖版、拼音、生僻字 + * 本方法支持多角度文字识别 + * 流程:文本检测 -> 方向检测 -> 方向矫正 -> 文本识别 + * 注意事项: + * 1、批量检测时,模型应统一放在外层 try 中使用,避免重复加载,自动释放资源更安全。 + * 2、模型文件需要放在单独文件夹 + * 3、识别完成后会删除原图片文件 + */ +public String recognizeTwo(String path){ + try { + OcrCommonRecModel recModel = getFastRecModel(); + //带方向矫正,分行返回文本 + OcrRecOptions options = new OcrRecOptions(true, true); + //创建Image对象,可以从文件、url、InputStream创建、BufferedImage、Base64创建,具体使用方法可以查看文档 + Image image = SmartImageFactory.getInstance().fromFile(path); + OcrInfo ocrInfo = recModel.recognize(image, options); + log.info("OCR识别结果:{}", JSONObject.toJSONString(ocrInfo)); + + // 识别成功后删除原图片 + deleteFile(path); + return ocrInfo.getFullText(); + } catch (Exception e) { + e.printStackTrace(); + } + return null; +} + + + /** + * 删除指定路径的文件 + * + * @param filePath 要删除的文件路径 + * @return 删除是否成功 + */ + private boolean deleteFile(String filePath) { + try { + File file = new File(filePath); + if (file.exists()) { + boolean deleted = file.delete(); + if (deleted) { + log.info("已删除文件: {}", filePath); + } else { + log.warn("删除文件失败: {}", filePath); + } + return deleted; + } else { + log.warn("文件不存在: {}", filePath); + return false; + } + } catch (Exception e) { + log.error("删除文件时发生异常: {}", filePath, e); + return false; + } + } + + +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java index 1667a96..eb6e52f 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/BasSheepTypeController.java @@ -41,7 +41,7 @@ public class BasSheepTypeController extends BaseController /** * 查询羊只类型列表 */ - @PreAuthorize("@ss.hasPermi('base:base:list')") +// @PreAuthorize("@ss.hasPermi('base:base:list')") @GetMapping("/list") public TableDataInfo list(BasSheepType basSheepType) { @@ -53,7 +53,7 @@ public class BasSheepTypeController extends BaseController /** * 导出羊只类型列表 */ - @PreAuthorize("@ss.hasPermi('base:base:export')") +// @PreAuthorize("@ss.hasPermi('base:base:export')") @Log(title = "羊只类型", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, BasSheepType basSheepType) @@ -66,7 +66,7 @@ public class BasSheepTypeController extends BaseController /** * 获取羊只类型详细信息 */ - @PreAuthorize("@ss.hasPermi('base:base:query')") +// @PreAuthorize("@ss.hasPermi('base:base:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Integer id) { @@ -76,7 +76,7 @@ public class BasSheepTypeController extends BaseController /** * 新增羊只类型 */ - @PreAuthorize("@ss.hasPermi('base:base:add')") +// @PreAuthorize("@ss.hasPermi('base:base:add')") @Log(title = "羊只类型", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody BasSheepType basSheepType) @@ -87,7 +87,7 @@ public class BasSheepTypeController extends BaseController /** * 修改羊只类型 */ - @PreAuthorize("@ss.hasPermi('base:base:edit')") +// @PreAuthorize("@ss.hasPermi('base:base:edit')") @Log(title = "羊只类型", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody BasSheepType basSheepType) @@ -98,7 +98,7 @@ public class BasSheepTypeController extends BaseController /** * 删除羊只类型 */ - @PreAuthorize("@ss.hasPermi('base:base:remove')") +// @PreAuthorize("@ss.hasPermi('base:base:remove')") @Log(title = "羊只类型", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Integer[] ids) diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java index a519335..14a3ac5 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/DaRanchController.java @@ -42,7 +42,7 @@ public class DaRanchController extends BaseController /** * 查询牧场管理列表 */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:list')") +// @PreAuthorize("@ss.hasPermi('ranch:ranch:list')") @GetMapping("/list") public TableDataInfo list(DaRanch daRanch) { @@ -54,7 +54,7 @@ public class DaRanchController extends BaseController /** * 导出牧场管理列表 */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:export')") +// @PreAuthorize("@ss.hasPermi('ranch:ranch:export')") @Log(title = "牧场管理", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, DaRanch daRanch) @@ -67,7 +67,7 @@ public class DaRanchController extends BaseController /** * 获取牧场管理详细信息 */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:query')") +// @PreAuthorize("@ss.hasPermi('ranch:ranch:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { @@ -77,7 +77,7 @@ public class DaRanchController extends BaseController /** * 获取指定牧场下的所有羊只耳号 */ - @GetMapping("/getSheepByRanchId/{ranchId}") +// @GetMapping("/getSheepByRanchId/{ranchId}") public AjaxResult getSheepByRanchId(@PathVariable Long ranchId) { List sheepList = basSheepService.getSheepByRanchId(ranchId); return AjaxResult.success(sheepList); @@ -87,7 +87,7 @@ public class DaRanchController extends BaseController /** * 新增牧场管理 */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:add')") +// @PreAuthorize("@ss.hasPermi('ranch:ranch:add')") @Log(title = "牧场管理", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody DaRanch daRanch) @@ -98,7 +98,7 @@ public class DaRanchController extends BaseController /** * 修改牧场管理 */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:edit')") +// @PreAuthorize("@ss.hasPermi('ranch:ranch:edit')") @Log(title = "牧场管理", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody DaRanch daRanch) @@ -109,7 +109,7 @@ public class DaRanchController extends BaseController /** * 删除牧场管理 */ - @PreAuthorize("@ss.hasPermi('ranch:ranch:remove')") +// @PreAuthorize("@ss.hasPermi('ranch:ranch:remove')") @Log(title = "牧场管理", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java b/zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java index b7e207f..6391bc2 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/controller/SheepFileController.java @@ -5,6 +5,7 @@ import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; import com.zhyc.common.core.page.TableDataInfo; +import com.zhyc.common.core.text.Convert; import com.zhyc.common.enums.BusinessType; import com.zhyc.common.utils.poi.ExcelUtil; import com.zhyc.module.base.domain.SheepFile; @@ -19,6 +20,9 @@ import java.util.HashMap; import java.util.List; import java.util.Map; +import org.apache.commons.lang3.StringUtils; +import javax.servlet.http.HttpServletRequest; + /** * 羊只档案Controller * @@ -55,13 +59,29 @@ public class SheepFileController extends BaseController } catch (NumberFormatException e) { // 使用默认值 } + } else if (queryParams.containsKey("page") && queryParams.get("page") != null) { + // 如果 pageNum 不存在,则尝试使用 page + try { + pageNum = Integer.parseInt(queryParams.get("page").toString()); + } catch (NumberFormatException e) { + // 使用默认值 + } } + + if (queryParams.containsKey("pageSize") && queryParams.get("pageSize") != null) { try { pageSize = Integer.parseInt(queryParams.get("pageSize").toString()); } catch (NumberFormatException e) { // 使用默认值 } + }else if (queryParams.containsKey("limit") && queryParams.get("limit") != null) { + // 如果 pageSize 不存在,则尝试使用 limit + try { + pageSize = Integer.parseInt(queryParams.get("limit").toString()); + } catch (NumberFormatException e) { + // 使用默认值 + } } // 提取常规查询参数到 SheepFile 对象 @@ -147,68 +167,80 @@ public class SheepFileController extends BaseController */ @PreAuthorize("@ss.hasPermi('sheep_file:sheep_file:export')") @Log(title = "羊只档案", businessType = BusinessType.EXPORT) - @PostMapping("/export") // 改为 POST 请求 - public void export(HttpServletResponse response, @RequestBody(required = false) Map queryParams) + @PostMapping("/export") + public void export(HttpServletResponse response, HttpServletRequest request) { - // 解析查询参数 + // 构建查询条件对象 SheepFile sheepFile = new SheepFile(); Map customParams = new HashMap<>(); - if (queryParams != null && !queryParams.isEmpty()) { - // 提取常规查询参数到 SheepFile 对象 - if (queryParams.containsKey("bsManageTags") && queryParams.get("bsManageTags") != null) { - sheepFile.setBsManageTags(queryParams.get("bsManageTags").toString()); - } - if (queryParams.containsKey("electronicTags") && queryParams.get("electronicTags") != null) { - sheepFile.setElectronicTags(queryParams.get("electronicTags").toString()); - } - if (queryParams.containsKey("drRanch") && queryParams.get("drRanch") != null) { - sheepFile.setDrRanch(queryParams.get("drRanch").toString()); - } - if (queryParams.containsKey("variety") && queryParams.get("variety") != null) { - sheepFile.setVariety(queryParams.get("variety").toString()); - } - if (queryParams.containsKey("name") && queryParams.get("name") != null) { - sheepFile.setName(queryParams.get("name").toString()); - } - if (queryParams.containsKey("gender") && queryParams.get("gender") != null) { - sheepFile.setGender(convertToLong(queryParams.get("gender"))); - } - if (queryParams.containsKey("statusId") && queryParams.get("statusId") != null) { - sheepFile.setStatusId(convertToLong(queryParams.get("statusId"))); - } - if (queryParams.containsKey("breed") && queryParams.get("breed") != null) { - sheepFile.setBreed(queryParams.get("breed").toString()); - } + // 解析所有请求参数 + Map parameterMap = request.getParameterMap(); - // 提取自定义筛选参数 - for (Map.Entry entry : queryParams.entrySet()) { - String key = entry.getKey(); - Object value = entry.getValue(); + for (Map.Entry entry : parameterMap.entrySet()) { + String key = entry.getKey(); + String[] values = entry.getValue(); - // 跳过常规参数和分页参数 - if ("bsManageTags".equals(key) || "electronicTags".equals(key) || - "drRanch".equals(key) || "variety".equals(key) || - "name".equals(key) || "gender".equals(key) || - "statusId".equals(key) || "breed".equals(key) || - "pageNum".equals(key) || "pageSize".equals(key)) { - continue; - } + if (values != null && values.length > 0 && StringUtils.isNotBlank(values[0])) { + String value = values[0]; - // 添加到自定义参数中 - if (value != null) { - customParams.put(key, value); + // 使用若依框架的工具方法处理参数 + switch (key) { + case "bsManageTags": + sheepFile.setBsManageTags(convertToString(value)); + break; + case "electronicTags": + sheepFile.setElectronicTags(convertToString(value)); + break; + case "drRanch": + sheepFile.setDrRanch(convertToString(value)); + break; + case "variety": + sheepFile.setVariety(convertToString(value)); + break; + case "name": + sheepFile.setName(convertToString(value)); + break; + case "gender": + sheepFile.setGender(Convert.toLong(value)); + break; + case "statusId": + sheepFile.setStatusId(Convert.toLong(value)); + break; + case "breed": + sheepFile.setBreed(convertToString(value)); + break; + case "pageNum": + case "pageSize": + // 忽略分页参数 + break; + default: + // 自定义参数 + customParams.put(key, value); + break; } } } - // 调用支持复杂查询的Service方法获取数据(不分页) + // 调用Service获取数据 List list = sheepFileService.selectSheepFileListByCondition(customParams, sheepFile); - ExcelUtil util = new ExcelUtil(SheepFile.class); + // 使用若依框架的Excel工具类导出 + ExcelUtil util = new ExcelUtil<>(SheepFile.class); util.exportExcel(response, list, "羊只档案数据"); } + + /** + * 字符串转换工具方法 + */ + private String convertToString(Object value) { + if (value == null) { + return null; + } + return value.toString().trim(); + } + /** * 获取羊只档案详细信息 */ diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java b/zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java index bd85d0b..4dc4784 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/domain/SheepFile.java @@ -30,7 +30,7 @@ public class SheepFile extends BaseEntity private String bsManageTags; /** 牧场id */ - @Excel(name = "牧场id") +// @Excel(name = "牧场id") private Long ranchId; /** 牧场名称 */ @@ -38,7 +38,7 @@ public class SheepFile extends BaseEntity private String drRanch; /** 羊舍id */ - @Excel(name = "羊舍id") +// @Excel(name = "羊舍id") private Long sheepfoldId; /** 羊舍名称 */ @@ -50,7 +50,7 @@ public class SheepFile extends BaseEntity private String electronicTags; /** 品种id */ - @Excel(name = "品种id") +// @Excel(name = "品种id") private Long varietyId; /** 品种 */ @@ -65,8 +65,12 @@ public class SheepFile extends BaseEntity @Excel(name = "羊只类型") private String name; - /** 性别 */ - @Excel(name = "性别") +// /** 性别 */ +//// @Excel(name = "性别") +// private Long gender; + + /** 性别 - 使用字典转换 */ + @Excel(name = "性别", dictType = "sheep_gender") // 添加 dictType private Long gender; /** 出生日期 */ @@ -95,10 +99,11 @@ public class SheepFile extends BaseEntity @Excel(name = "断奶日期", width = 30, dateFormat = "yyyy-MM-dd") private Date weaningDate; - /** 羊只状态 */ - @Excel(name = "羊只状态") + /** 羊只状态 - 使用字典转换 */ + @Excel(name = "羊只状态", dictType = "sheep_status") private Long statusId; + /** 断奶体重 */ @Excel(name = "断奶体重") private Double weaningWeight; @@ -117,7 +122,7 @@ public class SheepFile extends BaseEntity private Double weaningDailyGain; /** 繁育状态id */ - @Excel(name = "繁育状态id") +// @Excel(name = "繁育状态id") private Long breedStatusId; /** 繁殖状态 */ @@ -125,7 +130,7 @@ public class SheepFile extends BaseEntity private String breed; /** 父号id */ - @Excel(name = "父号id") +// @Excel(name = "父号id") private Long bsFatherId; /** 父亲管理耳号 */ @@ -133,7 +138,7 @@ public class SheepFile extends BaseEntity private String fatherManageTags; /** 母号id */ - @Excel(name = "母号id") +// @Excel(name = "母号id") private Long bsMotherId; /** 母亲管理耳号 */ @@ -141,7 +146,7 @@ public class SheepFile extends BaseEntity private String motherManageTags; /** 受体id */ - @Excel(name = "受体id") +// @Excel(name = "受体id") private Long receptorId; /** 受体管理耳号 */ @@ -149,7 +154,7 @@ public class SheepFile extends BaseEntity private String receptorManageTags; /** 祖父号id */ - @Excel(name = "祖父号id") +// @Excel(name = "祖父号id") private Long fatherFatherId; /** 祖父管理耳号 */ @@ -157,7 +162,7 @@ public class SheepFile extends BaseEntity private String grandfatherManageTags; /** 祖母号id */ - @Excel(name = "祖母号id") +// @Excel(name = "祖母号id") private Long fatherMotherId; /** 祖母管理耳号 */ @@ -165,7 +170,7 @@ public class SheepFile extends BaseEntity private String grandmotherManageTags; /** 外祖父号id */ - @Excel(name = "外祖父号id") +// @Excel(name = "外祖父号id") private Long fatherId; /** 外祖父管理耳号 */ @@ -173,7 +178,7 @@ public class SheepFile extends BaseEntity private String maternalGrandfatherManageTags; /** 外祖母号id */ - @Excel(name = "外祖母号id") +// @Excel(name = "外祖母号id") private Long motherId; /** 外祖母管理耳号 */ @@ -186,7 +191,7 @@ public class SheepFile extends BaseEntity private Date matingDate; /** 配种类型 */ - @Excel(name = "配种类型") + @Excel(name = "配种类型",dictType = "breed_type") private Long matingTypeId; /** 孕检日期 */ @@ -245,7 +250,7 @@ public class SheepFile extends BaseEntity private String comment; /** 是否性控 */ - @Excel(name = "是否性控") + @Excel(name = "是否性控",dictType = "controlled") private Long controlled; /** 体况评分 */ @@ -257,7 +262,7 @@ public class SheepFile extends BaseEntity private Long breast; /** 入群来源 */ - @Excel(name = "入群来源") + @Excel(name = "入群来源",dictType = "source") private String source; /** 入群日期 */ @@ -266,7 +271,7 @@ public class SheepFile extends BaseEntity private Date sourceDate; /** 来源牧场id */ - @Excel(name = "来源牧场id") +// @Excel(name = "来源牧场id") private Long sourceRanchId; /** 来源牧场 */ @@ -276,5 +281,25 @@ public class SheepFile extends BaseEntity /** 是否删除 */ private Long isDelete; + /** 修改人 */ + @Excel(name = "修改人") + private String updateBy; + + + /** 修改日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "修改日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date updateTime; + + /** 创建人 */ + @Excel(name = "创建人") + private String createBy; + + + /** 创建日期 */ + @JsonFormat(pattern = "yyyy-MM-dd") + @Excel(name = "创建日期", width = 30, dateFormat = "yyyy-MM-dd") + private Date createTime; + } diff --git a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileSqlProvider.java b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileSqlProvider.java index b6b1a2b..106a227 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileSqlProvider.java +++ b/zhyc-module/src/main/java/com/zhyc/module/base/mapper/SheepFileSqlProvider.java @@ -33,7 +33,7 @@ public class SheepFileSqlProvider { // 添加动态条件 addDynamicConditions(sql, conditions); - sql.ORDER_BY("id DESC"); + sql.ORDER_BY("id ASC"); return sql.toString(); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java index d049ae6..3f7011e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/controller/SwDiseaseController.java @@ -37,7 +37,7 @@ public class SwDiseaseController extends BaseController /** * 查询疾病列表 */ - @PreAuthorize("@ss.hasPermi('disease:disease:list')") + @PreAuthorize("@ss.hasPermi('biosafety:disease:list')") @GetMapping("/list") public AjaxResult list(SwDisease swDisease) { @@ -48,7 +48,7 @@ public class SwDiseaseController extends BaseController /** * 导出疾病列表 */ - @PreAuthorize("@ss.hasPermi('disease:disease:export')") + @PreAuthorize("@ss.hasPermi('biosafety:disease:export')") @Log(title = "疾病", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, SwDisease swDisease) @@ -61,7 +61,7 @@ public class SwDiseaseController extends BaseController /** * 获取疾病详细信息 */ - @PreAuthorize("@ss.hasPermi('disease:disease:query')") + @PreAuthorize("@ss.hasPermi('biosafety:disease:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { @@ -71,7 +71,7 @@ public class SwDiseaseController extends BaseController /** * 新增疾病 */ - @PreAuthorize("@ss.hasPermi('disease:disease:add')") + @PreAuthorize("@ss.hasPermi('biosafety:disease:add')") @Log(title = "疾病", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody SwDisease swDisease) @@ -82,7 +82,7 @@ public class SwDiseaseController extends BaseController /** * 修改疾病 */ - @PreAuthorize("@ss.hasPermi('disease:disease:edit')") + @PreAuthorize("@ss.hasPermi('biosafety:disease:edit')") @Log(title = "疾病", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody SwDisease swDisease) @@ -93,7 +93,7 @@ public class SwDiseaseController extends BaseController /** * 删除疾病 */ - @PreAuthorize("@ss.hasPermi('disease:disease:remove')") + @PreAuthorize("@ss.hasPermi('biosafety:disease:remove')") @Log(title = "疾病", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java index a062db2..dfbf2fa 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Deworm.java @@ -34,6 +34,8 @@ public class Deworm extends BaseEntity /** 羊只id */ @Excel(name = "羊只耳号") private String sheepNo; + private String[] sheepNos; + @Excel(name = "品种") private String variety; @Excel(name = "羊只类别") diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java index b394a6d..c594ce6 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Diagnosis.java @@ -37,6 +37,7 @@ public class Diagnosis extends BaseEntity /** 羊只id */ @Excel(name = "羊只耳号") private String sheepNo; + private String[] sheepNos; private Long sheepId; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java index 1a2c69d..f61fd2a 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Health.java @@ -37,6 +37,8 @@ public class Health extends BaseEntity /** 羊只id */ @Excel(name = "羊只耳号") private String sheepNo; + private String[] sheepNos; + @Excel(name = "品种") private String variety; @Excel(name = "羊只类别") diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java index ea3fe8b..062069f 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Immunity.java @@ -36,6 +36,8 @@ public class Immunity extends BaseEntity /** 羊只id */ @Excel(name = "羊只耳号") private String sheepNo; + private String[] sheepNos; + @Excel(name = "品种") private String variety; diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java index 665c4c3..73287f9 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/QuarantineReport.java @@ -36,6 +36,8 @@ public class QuarantineReport extends BaseEntity @Excel(name = "羊只耳号") private String sheepNo; + private String[] sheepNos; + @Excel(name = "羊只类别") private String sheepType; @Excel(name = "羊只性别") diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java index 2fc778f..ed9c717 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/domain/Treatment.java @@ -32,6 +32,7 @@ public class Treatment extends BaseEntity /** 羊只耳号 */ @Excel(name = "羊只耳号") private String sheepNo; + private String[] sheepNos; private Long sheepId; // 用于批量新增 diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java index 9e1d867..d1d9502 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DewormServiceImpl.java @@ -59,6 +59,15 @@ public class DewormServiceImpl implements IDewormService @Override public List selectDewormList(Deworm deworm) { + String[] sheepNos = null; + if (deworm.getSheepNo() != null && !deworm.getSheepNo().isEmpty()) { + if (deworm.getSheepNo().contains(",")) { + sheepNos = deworm.getSheepNo().split(","); + } else { + sheepNos = new String[]{deworm.getSheepNo()}; + } + } + deworm.setSheepNos(sheepNos); return dewormMapper.selectDewormList(deworm); } @@ -90,12 +99,12 @@ public class DewormServiceImpl implements IDewormService Deworm dew = new Deworm(); BeanUtils.copyProperties(deworm, dew); dew.setSheepId(Long.valueOf(sheepId)); - dew.setVariety(sheepFile.getVariety()); - dew.setSheepType(sheepFile.getName()); - dew.setMonthAge(sheepFile.getMonthAge()); - dew.setGender(String.valueOf(sheepFile.getGender())); - dew.setBreed(sheepFile.getBreed()); - dew.setParity(sheepFile.getParity()); + dew.setVariety(sheepFile.getVariety() != null ? sheepFile.getVariety() : ""); + dew.setSheepType(sheepFile.getName() != null ? sheepFile.getName() : ""); + dew.setMonthAge(sheepFile.getMonthAge() != null ? sheepFile.getMonthAge() : 0); + dew.setGender(sheepFile.getGender() != null ? String.valueOf(sheepFile.getGender()) : ""); + dew.setBreed(sheepFile.getBreed() != null ? sheepFile.getBreed() : ""); + dew.setParity(sheepFile.getParity() != null ? sheepFile.getParity() : 0); medicineUsage.setSheepId(sheepId); // 获取药品使用记录的id diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java index 8447684..ac68499 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/DiagnosisServiceImpl.java @@ -49,6 +49,7 @@ public class DiagnosisServiceImpl implements IDiagnosisService @Override public Diagnosis selectDiagnosisById(Long id) { + return diagnosisMapper.selectDiagnosisById(id); } @@ -61,6 +62,15 @@ public class DiagnosisServiceImpl implements IDiagnosisService @Override public List selectDiagnosisList(Diagnosis diagnosis) { + String[] sheepNos = null; + if (diagnosis.getSheepNo() != null && !diagnosis.getSheepNo().isEmpty()) { + if (diagnosis.getSheepNo().contains(",")) { + sheepNos = diagnosis.getSheepNo().split(","); + } else { + sheepNos = new String[]{diagnosis.getSheepNo()}; + } + } + diagnosis.setSheepNos(sheepNos); return diagnosisMapper.selectDiagnosisList(diagnosis); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java index 1d5a4e0..80140cf 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java @@ -3,6 +3,8 @@ package com.zhyc.module.biosafety.service.impl; import java.beans.Transient; import java.util.ArrayList; import java.util.List; +import java.util.Optional; + import com.zhyc.common.utils.DateUtils; import com.zhyc.common.utils.SecurityUtils; import com.zhyc.common.utils.bean.BeanUtils; @@ -62,6 +64,15 @@ public class HealthServiceImpl implements IHealthService @Override public List selectHealthList(Health health) { + String[] sheepNos = null; + if (health.getSheepNo() != null && !health.getSheepNo().isEmpty()) { + if (health.getSheepNo().contains(",")) { + sheepNos = health.getSheepNo().split(","); + } else { + sheepNos = new String[]{health.getSheepNo()}; + } + } + health.setSheepNos(sheepNos); return healthMapper.selectHealthList(health); } @@ -92,12 +103,14 @@ public class HealthServiceImpl implements IHealthService Health heal = new Health(); BeanUtils.copyProperties(health, heal); heal.setSheepId(Long.valueOf(sheepId)); - heal.setVariety(sheepFile.getVariety()); - heal.setSheepType(sheepFile.getName()); - heal.setMonthAge(sheepFile.getMonthAge()); - heal.setGender(String.valueOf(sheepFile.getGender())); - heal.setBreed(sheepFile.getBreed()); - heal.setParity(sheepFile.getParity()); +// 处理数据为空的情况 + heal.setVariety(sheepFile.getVariety() != null ? sheepFile.getVariety() : ""); + heal.setSheepType(sheepFile.getName() != null ? sheepFile.getName() : ""); + heal.setMonthAge(sheepFile.getMonthAge() != null ? sheepFile.getMonthAge() : 0); + heal.setGender(sheepFile.getGender() != null ? String.valueOf(sheepFile.getGender()) : ""); + heal.setBreed(sheepFile.getBreed() != null ? sheepFile.getBreed() : ""); + heal.setParity(sheepFile.getParity() != null ? sheepFile.getParity() : 0); + medicineUsage.setSheepId(sheepId); // 获取药品使用记录的id diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java index 7649217..61af3b2 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/ImmunityServiceImpl.java @@ -63,6 +63,15 @@ public class ImmunityServiceImpl implements IImmunityService @Override public List selectImmunityList(Immunity immunity) { + String[] sheepNos = null; + if (immunity.getSheepNo() != null && !immunity.getSheepNo().isEmpty()) { + if (immunity.getSheepNo().contains(",")) { + sheepNos = immunity.getSheepNo().split(","); + } else { + sheepNos = new String[]{immunity.getSheepNo()}; + } + } + immunity.setSheepNos(sheepNos); return immunityMapper.selectImmunityList(immunity); } @@ -97,13 +106,12 @@ public class ImmunityServiceImpl implements IImmunityService Immunity imm = new Immunity(); BeanUtils.copyProperties(immunity, imm); imm.setSheepId(Long.valueOf(sheepId)); - imm.setVariety(sheepFile.getVariety()); - imm.setSheepType(sheepFile.getName()); - imm.setMonthAge(sheepFile.getMonthAge()); - imm.setGender(String.valueOf(sheepFile.getGender())); - imm.setBreed(sheepFile.getBreed()); - imm.setParity(sheepFile.getParity()); - + imm.setVariety(sheepFile.getVariety() != null ? sheepFile.getVariety() : ""); + imm.setSheepType(sheepFile.getName() != null ? sheepFile.getName() : ""); + imm.setMonthAge(sheepFile.getMonthAge() != null ? sheepFile.getMonthAge() : 0); + imm.setGender(sheepFile.getGender() != null ? String.valueOf(sheepFile.getGender()) : ""); + imm.setBreed(sheepFile.getBreed() != null ? sheepFile.getBreed() : ""); + imm.setParity(sheepFile.getParity() != null ? sheepFile.getParity() : 0); medicineUsage.setSheepId(sheepId); // 获取药品使用记录的id Integer usageId = medicineUsageService.insertSwMedicineUsage(medicineUsage); diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java index ce4fa2f..ae6b728 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/QuarantineReportServiceImpl.java @@ -48,6 +48,15 @@ public class QuarantineReportServiceImpl implements IQuarantineReportService @Override public List selectQuarantineReportList(QuarantineReport quarantineReport) { + String[] sheepNos = null; + if (quarantineReport.getSheepNo() != null && !quarantineReport.getSheepNo().isEmpty()) { + if (quarantineReport.getSheepNo().contains(",")) { + sheepNos = quarantineReport.getSheepNo().split(","); + } else { + sheepNos = new String[]{quarantineReport.getSheepNo()}; + } + } + quarantineReport.setSheepNos(sheepNos); return quarantineReportMapper.selectQuarantineReportList(quarantineReport); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java index da29233..293fdff 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/TreatmentServiceImpl.java @@ -67,6 +67,15 @@ public class TreatmentServiceImpl implements ITreatmentService @Override public List selectTreatmentList(Treatment treatment) { + String[] sheepNos = null; + if (treatment.getSheepNo() != null && !treatment.getSheepNo().isEmpty()) { + if (treatment.getSheepNo().contains(",")) { + sheepNos = treatment.getSheepNo().split(","); + } else { + sheepNos = new String[]{treatment.getSheepNo()}; + } + } + treatment.setSheepNos(sheepNos); return treatmentMapper.selectTreatmentList(treatment); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/common/controller/UserPostController.java b/zhyc-module/src/main/java/com/zhyc/module/common/controller/UserPostController.java index f9fad3c..6e9fa5e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/common/controller/UserPostController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/common/controller/UserPostController.java @@ -32,7 +32,7 @@ public class UserPostController { // 获取岗位(部门) @GetMapping("/getPost") - public AjaxResult getPost(){ + public AjaxResult getPost(String postName){ List list = postService.selectPostList(); return AjaxResult.success(list); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/common/mapper/PostMapper.java b/zhyc-module/src/main/java/com/zhyc/module/common/mapper/PostMapper.java index bc60bc2..e2bc5d2 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/common/mapper/PostMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/common/mapper/PostMapper.java @@ -7,6 +7,6 @@ import java.util.List; public interface PostMapper { - @Select("select * from sys_post where status = '0' and post_name like '%部'") + @Select("select * from sys_post where status = '0'") List selectPostList(); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/Exception/MaterialExceptionHandler.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/Exception/MaterialExceptionHandler.java new file mode 100644 index 0000000..71bd09a --- /dev/null +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/Exception/MaterialExceptionHandler.java @@ -0,0 +1,21 @@ +package com.zhyc.module.feed.controller.Exception; + +import com.zhyc.common.core.domain.AjaxResult; +import org.springframework.web.bind.annotation.ControllerAdvice; +import org.springframework.web.bind.annotation.ExceptionHandler; + +import javax.servlet.http.HttpServletRequest; + +@ControllerAdvice +public class MaterialExceptionHandler { + + @ExceptionHandler({Exception.class, RuntimeException.class}) + public AjaxResult handleException(HttpServletRequest request, Exception ex) { + AjaxResult ajaxResult = new AjaxResult(); + ajaxResult.put("message", ex.getMessage()); + ajaxResult.put("url", request.getRequestURL().toString()); + ajaxResult.put("status", 500); + ajaxResult.put("error", "出现了一些错误"); + return ajaxResult; + } +} diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgMaterialController.java b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgMaterialController.java index b3e5ab0..69c51ac 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgMaterialController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/controller/SgMaterialController.java @@ -3,6 +3,7 @@ package com.zhyc.module.feed.controller; import java.util.List; import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.web.bind.annotation.GetMapping; import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.PutMapping; @@ -22,19 +23,16 @@ import com.zhyc.common.core.page.TableDataInfo; /** * 原料Controller - * + * * @author HashMap - * @date 2025-08-11 + * @date 2026-01-16 */ @RestController @RequestMapping("/feed/material") public class SgMaterialController extends BaseController { - private final ISgMaterialService sgMaterialService; - - public SgMaterialController(ISgMaterialService sgMaterialService) { - this.sgMaterialService = sgMaterialService; - } + @Autowired + private ISgMaterialService sgMaterialService; /** * 查询原料列表 @@ -57,7 +55,7 @@ public class SgMaterialController extends BaseController public void export(HttpServletResponse response, SgMaterial sgMaterial) { List list = sgMaterialService.selectSgMaterialList(sgMaterial); - ExcelUtil util = new ExcelUtil<>(SgMaterial.class); + ExcelUtil util = new ExcelUtil(SgMaterial.class); util.exportExcel(response, list, "原料数据"); } @@ -98,7 +96,7 @@ public class SgMaterialController extends BaseController */ @PreAuthorize("@ss.hasPermi('feed:material:remove')") @Log(title = "原料", businessType = BusinessType.DELETE) - @DeleteMapping("/{materialIds}") + @DeleteMapping("/{materialIds}") public AjaxResult remove(@PathVariable String[] materialIds) { return toAjax(sgMaterialService.deleteSgMaterialByMaterialIds(materialIds)); diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java index a9634be..316b999 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/domain/SgMaterial.java @@ -1,15 +1,68 @@ package com.zhyc.module.feed.domain; +import org.apache.commons.lang3.builder.ToStringBuilder; +import org.apache.commons.lang3.builder.ToStringStyle; +import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; -import lombok.Getter; -import lombok.Setter; -@Setter -@Getter -public class SgMaterial extends BaseEntity { +/** + * 原料对象 sg_material + * + * @author HashMap + * @date 2026-01-16 + */ +public class SgMaterial extends BaseEntity +{ private static final long serialVersionUID = 1L; + /** 原料编码 */ + @Excel(name = "原料编码") private String materialId; + + /** 原料名称 */ + @Excel(name = "原料名称") private String materialName; - private String isGranular; + + /** 颗粒料 */ + @Excel(name = "颗粒料") + private Integer isGranular; + + public void setMaterialId(String materialId) + { + this.materialId = materialId; + } + + public String getMaterialId() + { + return materialId; + } + + public void setMaterialName(String materialName) + { + this.materialName = materialName; + } + + public String getMaterialName() + { + return materialName; + } + + public void setIsGranular(Integer isGranular) + { + this.isGranular = isGranular; + } + + public Integer getIsGranular() + { + return isGranular; + } + + @Override + public String toString() { + return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE) + .append("materialId", getMaterialId()) + .append("materialName", getMaterialName()) + .append("isGranular", getIsGranular()) + .toString(); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgMaterialMapper.java b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgMaterialMapper.java index a7a3d70..a466966 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgMaterialMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/mapper/SgMaterialMapper.java @@ -6,16 +6,16 @@ import org.apache.ibatis.annotations.Mapper; /** * 原料Mapper接口 - * + * * @author HashMap - * @date 2025-08-11 + * @date 2026-01-16 */ @Mapper -public interface SgMaterialMapper +public interface SgMaterialMapper { /** * 查询原料 - * + * * @param materialId 原料主键 * @return 原料 */ @@ -23,7 +23,7 @@ public interface SgMaterialMapper /** * 查询原料列表 - * + * * @param sgMaterial 原料 * @return 原料集合 */ @@ -31,7 +31,7 @@ public interface SgMaterialMapper /** * 新增原料 - * + * * @param sgMaterial 原料 * @return 结果 */ @@ -39,7 +39,7 @@ public interface SgMaterialMapper /** * 修改原料 - * + * * @param sgMaterial 原料 * @return 结果 */ @@ -47,7 +47,7 @@ public interface SgMaterialMapper /** * 删除原料 - * + * * @param materialId 原料主键 * @return 结果 */ @@ -55,7 +55,7 @@ public interface SgMaterialMapper /** * 批量删除原料 - * + * * @param materialIds 需要删除的数据主键集合 * @return 结果 */ diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgMaterialService.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgMaterialService.java index ba1e6ac..c402fe5 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgMaterialService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/ISgMaterialService.java @@ -5,57 +5,57 @@ import com.zhyc.module.feed.domain.SgMaterial; /** * 原料Service接口 - * + * * @author HashMap - * @date 2025-08-11 + * @date 2026-01-16 */ -public interface ISgMaterialService +public interface ISgMaterialService { /** * 查询原料 - * + * * @param materialId 原料主键 * @return 原料 */ - SgMaterial selectSgMaterialByMaterialId(String materialId); + public SgMaterial selectSgMaterialByMaterialId(String materialId); /** * 查询原料列表 - * + * * @param sgMaterial 原料 * @return 原料集合 */ - List selectSgMaterialList(SgMaterial sgMaterial); + public List selectSgMaterialList(SgMaterial sgMaterial); /** * 新增原料 - * + * * @param sgMaterial 原料 * @return 结果 */ - int insertSgMaterial(SgMaterial sgMaterial); + public int insertSgMaterial(SgMaterial sgMaterial); /** * 修改原料 - * + * * @param sgMaterial 原料 * @return 结果 */ - int updateSgMaterial(SgMaterial sgMaterial); + public int updateSgMaterial(SgMaterial sgMaterial); /** * 批量删除原料 - * + * * @param materialIds 需要删除的原料主键集合 * @return 结果 */ - int deleteSgMaterialByMaterialIds(String[] materialIds); + public int deleteSgMaterialByMaterialIds(String[] materialIds); /** * 删除原料信息 - * + * * @param materialId 原料主键 * @return 结果 */ - int deleteSgMaterialByMaterialId(String materialId); + public int deleteSgMaterialByMaterialId(String materialId); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java index b858ae3..60c787b 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/feed/service/impl/SgMaterialServiceImpl.java @@ -2,6 +2,7 @@ package com.zhyc.module.feed.service.impl; import java.util.List; +import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import com.zhyc.module.feed.mapper.SgMaterialMapper; import com.zhyc.module.feed.domain.SgMaterial; @@ -11,16 +12,12 @@ import com.zhyc.module.feed.service.ISgMaterialService; * 原料Service业务层处理 * * @author HashMap - * @date 2025-08-11 + * @date 2026-01-16 */ @Service -public class SgMaterialServiceImpl implements ISgMaterialService -{ - private final SgMaterialMapper sgMaterialMapper; - - public SgMaterialServiceImpl(SgMaterialMapper sgMaterialMapper) { - this.sgMaterialMapper = sgMaterialMapper; - } +public class SgMaterialServiceImpl implements ISgMaterialService { + @Autowired + private SgMaterialMapper sgMaterialMapper; /** * 查询原料 @@ -29,8 +26,7 @@ public class SgMaterialServiceImpl implements ISgMaterialService * @return 原料 */ @Override - public SgMaterial selectSgMaterialByMaterialId(String materialId) - { + public SgMaterial selectSgMaterialByMaterialId(String materialId) { return sgMaterialMapper.selectSgMaterialByMaterialId(materialId); } @@ -41,8 +37,7 @@ public class SgMaterialServiceImpl implements ISgMaterialService * @return 原料 */ @Override - public List selectSgMaterialList(SgMaterial sgMaterial) - { + public List selectSgMaterialList(SgMaterial sgMaterial) { return sgMaterialMapper.selectSgMaterialList(sgMaterial); } @@ -53,8 +48,10 @@ public class SgMaterialServiceImpl implements ISgMaterialService * @return 结果 */ @Override - public int insertSgMaterial(SgMaterial sgMaterial) - { + public int insertSgMaterial(SgMaterial sgMaterial) { + if (sgMaterialMapper.selectSgMaterialByMaterialId(sgMaterial.getMaterialId()) != null) { + throw new RuntimeException("重复的编码或名称"); + } return sgMaterialMapper.insertSgMaterial(sgMaterial); } @@ -65,8 +62,7 @@ public class SgMaterialServiceImpl implements ISgMaterialService * @return 结果 */ @Override - public int updateSgMaterial(SgMaterial sgMaterial) - { + public int updateSgMaterial(SgMaterial sgMaterial) { return sgMaterialMapper.updateSgMaterial(sgMaterial); } @@ -77,8 +73,7 @@ public class SgMaterialServiceImpl implements ISgMaterialService * @return 结果 */ @Override - public int deleteSgMaterialByMaterialIds(String[] materialIds) - { + public int deleteSgMaterialByMaterialIds(String[] materialIds) { return sgMaterialMapper.deleteSgMaterialByMaterialIds(materialIds); } @@ -89,8 +84,7 @@ public class SgMaterialServiceImpl implements ISgMaterialService * @return 结果 */ @Override - public int deleteSgMaterialByMaterialId(String materialId) - { + public int deleteSgMaterialByMaterialId(String materialId) { return sgMaterialMapper.deleteSgMaterialByMaterialId(materialId); } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/frozen/controller/DdFeController.java b/zhyc-module/src/main/java/com/zhyc/module/frozen/controller/DdFeController.java index 3c8c9c4..e0bdc66 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/frozen/controller/DdFeController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/frozen/controller/DdFeController.java @@ -134,12 +134,6 @@ public class DdFeController extends BaseController { case "D": qty = (Integer) flush.getOrDefault("gradeD", 0); break; - case "囊胚": - qty = (Integer) flush.getOrDefault("cell24", 0); - break; - case "桑椹胚": - qty = (Integer) flush.getOrDefault("cell8", 0); - break; default: qty = 0; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/frozen/controller/DdFsController.java b/zhyc-module/src/main/java/com/zhyc/module/frozen/controller/DdFsController.java index cda2832..b9c33d1 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/frozen/controller/DdFsController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/frozen/controller/DdFsController.java @@ -37,7 +37,7 @@ public class DdFsController extends BaseController /** * 查询冻精库存列表 */ - @PreAuthorize("@ss.hasPermi('sperm:sperm:list')") + @PreAuthorize("@ss.hasPermi('frozen:sperm:list')") @GetMapping("/list") public TableDataInfo list(DdFs ddFs) { @@ -49,7 +49,7 @@ public class DdFsController extends BaseController /** * 导出冻精库存列表 */ - @PreAuthorize("@ss.hasPermi('sperm:sperm:export')") + @PreAuthorize("@ss.hasPermi('frozen:sperm:export')") @Log(title = "冻精库存", businessType = BusinessType.EXPORT) @PostMapping("/export") public void export(HttpServletResponse response, DdFs ddFs) @@ -62,7 +62,7 @@ public class DdFsController extends BaseController /** * 获取冻精库存详细信息 */ - @PreAuthorize("@ss.hasPermi('sperm:sperm:query')") + @PreAuthorize("@ss.hasPermi('frozen:sperm:query')") @GetMapping(value = "/{id}") public AjaxResult getInfo(@PathVariable("id") Long id) { @@ -72,7 +72,7 @@ public class DdFsController extends BaseController /** * 新增冻精库存 */ - @PreAuthorize("@ss.hasPermi('sperm:sperm:add')") + @PreAuthorize("@ss.hasPermi('frozen:sperm:add')") @Log(title = "冻精库存", businessType = BusinessType.INSERT) @PostMapping public AjaxResult add(@RequestBody DdFs ddFs) @@ -83,7 +83,7 @@ public class DdFsController extends BaseController /** * 修改冻精库存 */ - @PreAuthorize("@ss.hasPermi('sperm:sperm:edit')") + @PreAuthorize("@ss.hasPermi('frozen:sperm:edit')") @Log(title = "冻精库存", businessType = BusinessType.UPDATE) @PutMapping public AjaxResult edit(@RequestBody DdFs ddFs) @@ -94,7 +94,7 @@ public class DdFsController extends BaseController /** * 删除冻精库存 */ - @PreAuthorize("@ss.hasPermi('sperm:sperm:remove')") + @PreAuthorize("@ss.hasPermi('frozen:sperm:remove')") @Log(title = "冻精库存", businessType = BusinessType.DELETE) @DeleteMapping("/{ids}") public AjaxResult remove(@PathVariable Long[] ids) @@ -105,7 +105,7 @@ public class DdFsController extends BaseController /** * 批量废弃 */ - @PreAuthorize("@ss.hasPermi('sperm:sperm:discard')") + @PreAuthorize("@ss.hasPermi('frozen:sperm:discard')") @Log(title = "冻精库存", businessType = BusinessType.UPDATE) @PutMapping("/discard") public AjaxResult discard(@RequestBody List list) { diff --git a/zhyc-module/src/main/java/com/zhyc/module/frozen/domain/DdFe.java b/zhyc-module/src/main/java/com/zhyc/module/frozen/domain/DdFe.java index 0bbab98..1d8a3c7 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/frozen/domain/DdFe.java +++ b/zhyc-module/src/main/java/com/zhyc/module/frozen/domain/DdFe.java @@ -90,7 +90,7 @@ public class DdFe extends BaseEntity @Excel(name = "废弃原因") private String discardTxt; - public void setId(Long id) + public void setId(Long id) { this.id = id; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/frozen/service/impl/DdFeServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/frozen/service/impl/DdFeServiceImpl.java index 70dc496..f936cb8 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/frozen/service/impl/DdFeServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/frozen/service/impl/DdFeServiceImpl.java @@ -109,7 +109,7 @@ public class DdFeServiceImpl implements IDdFeService @Override public Map getLastFlushInfoByEwe(String eweNo) { - // 1. 冲胚数据(冻胚自己的 SQL) + // 1. 冲胚数据 Map flush = ddFeMapper.selectFlushByEwe(eweNo); if (flush == null) return null; @@ -118,10 +118,16 @@ public class DdFeServiceImpl implements IDdFeService // 2. 公羊品种 Map ram = scEmbryoFlushMapper.selectSheepInfoByManageTag(ramId); + if (ram == null) { + throw new ServiceException("供体公羊耳号在羊只档案中未找到"); + } String ramBreed = (String) ram.get("variety"); // 3. 母羊品种 Map ewe = scEmbryoFlushMapper.selectSheepInfoByManageTag(eweNo); + if (ewe == null) { + throw new ServiceException("供体母羊耳在羊只档案中未找到"); + } String eweBreed = (String) ewe.get("variety"); // 4. 胚胎品种 @@ -133,7 +139,6 @@ public class DdFeServiceImpl implements IDdFeService rsp.put("drBreed", ramBreed); rsp.put("deBreed", eweBreed); rsp.put("embBreed", embryoBreed); - // 如果以后需要等级数量,也从这个 flush map 里取 rsp.put("gradeA", flush.get("gradeA")); rsp.put("gradeB", flush.get("gradeB")); rsp.put("gradeC", flush.get("gradeC")); diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java index b94a01b..80a3e6a 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyMeasureController.java @@ -5,14 +5,7 @@ import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; @@ -103,4 +96,9 @@ public class ScBodyMeasureController extends BaseController { return toAjax(scBodyMeasureService.deleteScBodyMeasureByIds(ids)); } + + @GetMapping("/search_ear_numbers") + public AjaxResult searchEarNumbers(@RequestParam("query") String query){ + return success(scBodyMeasureService.searchEarNumbers(query.trim())); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java index d2438a7..2ee2ca7 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBodyScoreController.java @@ -4,14 +4,7 @@ import java.util.List; import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; @@ -101,4 +94,9 @@ public class ScBodyScoreController extends BaseController { return toAjax(scBodyScoreService.deleteScBodyScoreByIds(ids)); } + + @GetMapping("/search_ear_numbers") + public AjaxResult searchEarNumbers(@RequestParam("query") String query){ + return success(scBodyScoreService.searchEarNumbers(query.trim())); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java index e6a9cad..670b566 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/controller/ScBreastRatingController.java @@ -4,14 +4,7 @@ import java.util.List; import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; @@ -101,4 +94,9 @@ public class ScBreastRatingController extends BaseController { return toAjax(scBreastRatingService.deleteScBreastRatingByIds(ids)); } + + @GetMapping("/search_ear_numbers") + public AjaxResult searchEarNumbers(@RequestParam("query") String query){ + return success(scBreastRatingService.searchEarNumbers(query.trim())); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java index 25f6410..a569280 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyMeasure.java @@ -8,6 +8,7 @@ import com.zhyc.common.core.domain.BaseEntity; import java.math.BigDecimal; import java.time.LocalDate; +import java.util.List; /** * 体尺测量对象 sc_body_measure @@ -184,13 +185,7 @@ public class ScBodyMeasure extends BaseEntity { @Excel(name = "技术员") private String technician; - /** - * 排序字段 - */ - private String orderBy; - /** - * 排序方向 - */ - private String sortDirection; + /** 前端多耳号查询条件,非表字段 */ + private List manageTagsList; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java index eb010ff..1c455cc 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBodyScore.java @@ -1,6 +1,7 @@ package com.zhyc.module.produce.bodyManage.domain; import java.util.Date; +import java.util.List; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; @@ -77,13 +78,6 @@ public class ScBodyScore extends BaseEntity { @Excel(name = "技术员") private String technician; - /** - * 排序字段 - */ - private String orderBy; - - /** - * 排序方向 - */ - private String sortDirection; + /** 前端多耳号查询条件,非表字段 */ + private List manageTagsList; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java index 057dda1..e7b0852 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/domain/ScBreastRating.java @@ -8,6 +8,7 @@ import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; import java.time.LocalDate; +import java.util.List; /** * 乳房评分对象 sc_breast_rating @@ -110,13 +111,7 @@ public class ScBreastRating extends BaseEntity { @Excel(name = "技术员") private String technician; - /** - * 排序字段 - */ - private String orderBy; - /** - * 排序方向 - */ - private String sortDirection; + /** 前端多耳号查询条件,非表字段 */ + private List manageTagsList; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java index 7566ff1..f0fd460 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyMeasureMapper.java @@ -2,6 +2,7 @@ package com.zhyc.module.produce.bodyManage.mapper; import java.util.List; import com.zhyc.module.produce.bodyManage.domain.ScBodyMeasure; +import org.apache.ibatis.annotations.Param; /** * 体尺测量Mapper接口 @@ -58,4 +59,14 @@ public interface ScBodyMeasureMapper * @return 结果 */ public int deleteScBodyMeasureByIds(Long[] ids); + + /** + * 模糊搜索耳号 + */ + List searchEarNumbers(@Param("query") String query); + + /* 列表查询支持多耳号模糊 */ + List selectScBodyMeasureList( + @Param("sc") ScBodyMeasure sc, + @Param("manageTagsList") List manageTagsList); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java index 1e7a4e6..c513b5b 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBodyScoreMapper.java @@ -2,6 +2,7 @@ package com.zhyc.module.produce.bodyManage.mapper; import java.util.List; import com.zhyc.module.produce.bodyManage.domain.ScBodyScore; +import org.apache.ibatis.annotations.Param; /** * 体况评分Mapper接口 @@ -58,4 +59,13 @@ public interface ScBodyScoreMapper * @return 结果 */ public int deleteScBodyScoreByIds(Long[] ids); + /** + * 模糊搜索耳号 + */ + List searchEarNumbers(@Param("query") String query); + + /* 列表查询支持多耳号模糊 */ + List selectScBodyScoreList( + @Param("sc") ScBodyScore sc, + @Param("manageTagsList") List manageTagsList); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java index 485043a..dedcb4b 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/mapper/ScBreastRatingMapper.java @@ -2,6 +2,7 @@ package com.zhyc.module.produce.bodyManage.mapper; import java.util.List; import com.zhyc.module.produce.bodyManage.domain.ScBreastRating; +import org.apache.ibatis.annotations.Param; /** * 乳房评分Mapper接口 @@ -58,4 +59,14 @@ public interface ScBreastRatingMapper * @return 结果 */ public int deleteScBreastRatingByIds(Long[] ids); + + /** + * 模糊搜索耳号 + */ + List searchEarNumbers(@Param("query") String query); + + /* 列表查询支持多耳号模糊 */ + List selectScBreastRatingList( + @Param("sc") ScBreastRating sc, + @Param("manageTagsList") List manageTagsList); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java index f86848f..2ae7c75 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyMeasureService.java @@ -58,4 +58,6 @@ public interface IScBodyMeasureService * @return 结果 */ public int deleteScBodyMeasureById(Long id); + + List searchEarNumbers(String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java index 78ac57d..ccd4823 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBodyScoreService.java @@ -58,4 +58,6 @@ public interface IScBodyScoreService * @return 结果 */ public int deleteScBodyScoreById(Long id); + + List searchEarNumbers(String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java index 81b408f..a5c7c14 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/IScBreastRatingService.java @@ -58,4 +58,6 @@ public interface IScBreastRatingService * @return 结果 */ public int deleteScBreastRatingById(Long id); + + List searchEarNumbers(String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java index dad69e0..e528b17 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyMeasureServiceImpl.java @@ -44,9 +44,14 @@ public class ScBodyMeasureServiceImpl implements IScBodyMeasureService * @return 体尺测量 */ @Override - public List selectScBodyMeasureList(ScBodyMeasure scBodyMeasure) - { - return scBodyMeasureMapper.selectScBodyMeasureList(scBodyMeasure); + public List selectScBodyMeasureList(ScBodyMeasure scBodyMeasure) { + return scBodyMeasureMapper.selectScBodyMeasureList(scBodyMeasure, + scBodyMeasure.getManageTagsList()); + } + + @Override + public List searchEarNumbers(String query) { + return scBodyMeasureMapper.searchEarNumbers(query.trim()); } /** diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java index 1a55d69..e25bce9 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBodyScoreServiceImpl.java @@ -49,7 +49,13 @@ public class ScBodyScoreServiceImpl implements IScBodyScoreService { */ @Override public List selectScBodyScoreList(ScBodyScore scBodyScore) { - return scBodyScoreMapper.selectScBodyScoreList(scBodyScore); + return scBodyScoreMapper.selectScBodyScoreList(scBodyScore, + scBodyScore.getManageTagsList()); + } + + @Override + public List searchEarNumbers(String query) { + return scBodyScoreMapper.searchEarNumbers(query.trim()); } /** diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java index 09cd767..4fd01cd 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/bodyManage/service/impl/ScBreastRatingServiceImpl.java @@ -52,7 +52,13 @@ public class ScBreastRatingServiceImpl implements IScBreastRatingService { */ @Override public List selectScBreastRatingList(ScBreastRating scBreastRating) { - return scBreastRatingMapper.selectScBreastRatingList(scBreastRating); + return scBreastRatingMapper.selectScBreastRatingList(scBreastRating, + scBreastRating.getManageTagsList()); + } + + @Override + public List searchEarNumbers(String query) { + return scBreastRatingMapper.searchEarNumbers(query.trim()); } /** diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java index 756e4a5..f6f5d88 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeCommentController.java @@ -4,14 +4,7 @@ import java.util.List; import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; @@ -101,4 +94,9 @@ public class ScChangeCommentController extends BaseController { return toAjax(scChangeCommentService.deleteScChangeCommentByIds(ids)); } + + @GetMapping("/search_ear_numbers") + public AjaxResult searchEarNumbers(@RequestParam("query") String query){ + return success(scChangeCommentService.searchEarNumbers(query.trim())); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java index cd6b28b..a1cb289 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeEarController.java @@ -7,14 +7,7 @@ import com.zhyc.module.base.domain.BasSheep; import com.zhyc.module.base.service.IBasSheepService; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; @@ -23,6 +16,7 @@ import com.zhyc.module.produce.manage_sheep.domain.ScChangeEar; import com.zhyc.module.produce.manage_sheep.service.IScChangeEarService; import com.zhyc.common.utils.poi.ExcelUtil; import com.zhyc.common.core.page.TableDataInfo; +import org.springframework.web.bind.annotation.RequestParam; /** * 修改电子耳号记录Controller @@ -116,4 +110,9 @@ public class ScChangeEarController extends BaseController { return toAjax(scChangeEarService.deleteScChangeEarByIds(ids)); } + + @GetMapping("/search_ear_numbers") + public AjaxResult searchEarNumbers(@RequestParam("query") String query){ + return success(scChangeEarService.searchEarNumbers(query.trim())); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java index fd5b092..5bd289e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScChangeVarietyController.java @@ -4,14 +4,7 @@ import java.util.List; import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; @@ -101,4 +94,9 @@ public class ScChangeVarietyController extends BaseController { return toAjax(scChangeVarietyService.deleteScChangeVarietyByIds(ids)); } + + @GetMapping("/search_ear_numbers") + public AjaxResult searchEarNumbers(@RequestParam("query") String query){ + return success(scChangeVarietyService.searchEarNumbers(query.trim())); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java index 24518d4..192ed1f 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransGroupController.java @@ -8,14 +8,7 @@ import com.zhyc.module.produce.manage_sheep.domain.ScTransGroup; import com.zhyc.module.produce.manage_sheep.service.IScTransGroupService; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; @@ -97,12 +90,8 @@ public class ScTransGroupController extends BaseController { return toAjax(scTransGroupService.deleteScTransGroupByIds(ids)); } - - /** - * 审批转群记录 - */ -// @PutMapping("/approve") -// public AjaxResult approve(@RequestBody ScTransGroup scTransGroup) { -// return toAjax(scTransGroupService.approveScTransGroup(scTransGroup)); -// } + @GetMapping("/search_ear_numbers") + public AjaxResult searchEarNumbers(@RequestParam("query") String query){ + return success(scTransGroupService.searchEarNumbers(query.trim())); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java index 6307706..49e4578 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/controller/ScTransitionInfoController.java @@ -5,14 +5,7 @@ import javax.servlet.http.HttpServletResponse; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; @@ -116,4 +109,9 @@ public class ScTransitionInfoController extends BaseController { int rows = scTransitionInfoService.approveScTransitionInfo(scTransitionInfo); return toAjax(rows); } + + @GetMapping("/search_ear_numbers") + public AjaxResult searchEarNumbers(@RequestParam("query") String query){ + return success(scTransitionInfoService.searchEarNumbers(query.trim())); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java index e462111..4bb4444 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScAddSheep.java @@ -90,7 +90,9 @@ public class ScAddSheep extends BaseEntity { @Excel(name = "技术员") private String technician; - + /** 断奶体重(仅接收,不入库) */ + @Excel(name = "断奶体重") + private BigDecimal weaningWeight; private String createBy; private Date createTime; diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java index 2fd53e3..8979aef 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeComment.java @@ -8,6 +8,7 @@ import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; import java.util.Date; +import java.util.List; /** * 改备注对象 sc_change_comment @@ -67,4 +68,7 @@ public class ScChangeComment extends BaseEntity { */ @Excel(name = "技术员") private String technician; + + /** 前端多耳号条件,非数据库字段 */ + private List manageTagsList; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java index 76dc820..bd5b584 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeEar.java @@ -8,6 +8,7 @@ import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; import java.util.Date; +import java.util.List; /** * 修改电子耳号记录对象 sc_change_ear @@ -84,4 +85,7 @@ public class ScChangeEar extends BaseEntity { @Excel(name = "技术员") private String technician; + + /** 前端多耳号查询条件,非表字段 */ + private List manageTagsList; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java index a93f079..319de6f 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScChangeVariety.java @@ -1,6 +1,7 @@ package com.zhyc.module.produce.manage_sheep.domain; import java.util.Date; +import java.util.List; import com.fasterxml.jackson.annotation.JsonFormat; import lombok.AllArgsConstructor; @@ -77,4 +78,6 @@ public class ScChangeVariety extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd") private Date eventDate; + /** 前端多耳号查询条件,非表字段 */ + private List manageTagsList; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java index f45435e..32edd57 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransGroup.java @@ -6,6 +6,8 @@ import lombok.NoArgsConstructor; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; +import java.util.List; + /** * 转群记录对象 sc_trans_group * @@ -112,5 +114,6 @@ public class ScTransGroup extends BaseEntity { @Excel(name = "备注") private String comment; - + /** 前端多耳号查询条件,非表字段 */ + private List manageTagsList; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java index 8176046..7aceb3e 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/domain/ScTransitionInfo.java @@ -7,6 +7,7 @@ import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; import java.time.LocalDate; +import java.util.List; /** * 转场对象 sc_transition_info @@ -96,5 +97,6 @@ public class ScTransitionInfo extends BaseEntity { @Excel(name = "备注") private String comment; - + /** 前端多耳号查询条件,非表字段 */ + private List manageTagsList; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java index cd71536..51c85f5 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeCommentMapper.java @@ -2,6 +2,7 @@ package com.zhyc.module.produce.manage_sheep.mapper; import java.util.List; import com.zhyc.module.produce.manage_sheep.domain.ScChangeComment; +import org.apache.ibatis.annotations.Param; /** * 改备注Mapper接口 @@ -58,4 +59,13 @@ public interface ScChangeCommentMapper * @return 结果 */ public int deleteScChangeCommentByIds(Long[] ids); + + List selectScChangeCommentList( + @Param("sc") ScChangeComment sc, + @Param("manageTagsList") List manageTagsList); + + /** + * 模糊搜索耳号 + */ + List searchEarNumbers(@Param("query") String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java index 5699a46..7bab60d 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeEarMapper.java @@ -2,6 +2,7 @@ package com.zhyc.module.produce.manage_sheep.mapper; import java.util.List; import com.zhyc.module.produce.manage_sheep.domain.ScChangeEar; +import org.apache.ibatis.annotations.Param; /** * 修改电子耳号记录Mapper接口 @@ -58,4 +59,14 @@ public interface ScChangeEarMapper * @return 结果 */ public int deleteScChangeEarByIds(Integer[] ids); + + /** + * 模糊搜索耳号 + */ + List searchEarNumbers(@Param("query") String query); + + /* 列表查询支持多耳号模糊 */ + List selectScChangeEarList( + @Param("sc") ScChangeEar sc, + @Param("manageTagsList") List manageTagsList); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java index 12d9075..46d67b2 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScChangeVarietyMapper.java @@ -2,6 +2,7 @@ package com.zhyc.module.produce.manage_sheep.mapper; import java.util.List; import com.zhyc.module.produce.manage_sheep.domain.ScChangeVariety; +import org.apache.ibatis.annotations.Param; /** * 改品种记录Mapper接口 @@ -58,4 +59,14 @@ public interface ScChangeVarietyMapper * @return 结果 */ public int deleteScChangeVarietyByIds(Integer[] ids); + + /** + * 模糊搜索耳号 + */ + List searchEarNumbers(@Param("query") String query); + + /* 列表查询支持多耳号模糊 */ + List selectScChangeVarietyList( + @Param("sc") ScChangeVariety sc, + @Param("manageTagsList") List manageTagsList); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java index 5746adc..981f28b 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransGroupMapper.java @@ -4,6 +4,7 @@ import java.util.List; import com.zhyc.module.produce.manage_sheep.domain.ScTransGroup; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 转群记录Mapper接口 @@ -60,4 +61,14 @@ public interface ScTransGroupMapper { * @return 结果 */ public int deleteScTransGroupByIds(Integer[] ids); + + /** + * 模糊搜索耳号 + */ + List searchEarNumbers(@Param("query") String query); + + /* 列表查询支持多耳号模糊 */ + List selectScTransGroupList( + @Param("sc") ScTransGroup sc, + @Param("manageTagsList") List manageTagsList); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java index ce67176..af07511 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java @@ -64,4 +64,13 @@ public interface ScTransitionInfoMapper //批量转场 int insertScTransitionInfoBatch(@Param("list") List transitionInfoList); + /** + * 模糊搜索耳号 + */ + List searchEarNumbers(@Param("query") String query); + + /* 列表查询支持多耳号模糊 */ + List selectScTransitionInfoList( + @Param("sc") ScTransitionInfo sc, + @Param("manageTagsList") List manageTagsList); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java index cd11f0c..153cc4a 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeCommentService.java @@ -58,4 +58,9 @@ public interface IScChangeCommentService * @return 结果 */ public int deleteScChangeCommentById(Long id); + + /** + * 远程模糊搜索耳号(下拉用) + */ + List searchEarNumbers(String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java index 93133ea..ff78473 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeEarService.java @@ -58,4 +58,6 @@ public interface IScChangeEarService * @return 结果 */ public int deleteScChangeEarById(Integer id); + + List searchEarNumbers(String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java index 7de8f59..0a73b97 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScChangeVarietyService.java @@ -58,4 +58,6 @@ public interface IScChangeVarietyService * @return 结果 */ public int deleteScChangeVarietyById(Integer id); + + List searchEarNumbers(String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java index 6430d38..305438b 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransGroupService.java @@ -64,4 +64,6 @@ public interface IScTransGroupService { * 审批转群记录 */ int approveScTransGroup(ScTransGroup scTransGroup); + + List searchEarNumbers(String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java index c9cb5c5..d4c85ea 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/IScTransitionInfoService.java @@ -71,4 +71,5 @@ public interface IScTransitionInfoService { //审批转场 public int approveScTransitionInfo(ScTransitionInfo scTransitionInfo); + List searchEarNumbers(String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java index 4f3b0f2..073a562 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScAddSheepServiceImpl.java @@ -61,6 +61,7 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { bs.setFatherId(null); bs.setMotherId(null); bs.setBirthWeight(scAddSheep.getBornWeight().longValue()); + bs.setWeaningWeight(scAddSheep.getWeaningWeight().longValue()); bs.setSource(String.valueOf(2)); bs.setBirthday(scAddSheep.getBirthday()); bs.setGender(scAddSheep.getGender().longValue()); @@ -72,6 +73,7 @@ public class ScAddSheepServiceImpl implements IScAddSheepService { bs.setVarietyId(scAddSheep.getVarietyId().longValue()); bs.setSourceDate(scAddSheep.getJoinDate()); bs.setComment(scAddSheep.getComment()); + bs.setCreateBy(scAddSheep.getCreateBy()); bs.setCreateTime(new Date()); if (scAddSheep.getTypeId() != null) { diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java index 1a3ae46..9d582d4 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeCommentServiceImpl.java @@ -49,9 +49,14 @@ public class ScChangeCommentServiceImpl implements IScChangeCommentService @Override public List selectScChangeCommentList(ScChangeComment scChangeComment) { - return scChangeCommentMapper.selectScChangeCommentList(scChangeComment); + // 把实体和独立参数一起传过去 + return scChangeCommentMapper.selectScChangeCommentList(scChangeComment, + scChangeComment.getManageTagsList()); + } + @Override + public List searchEarNumbers(String query) { + return scChangeCommentMapper.searchEarNumbers(query); } - /** * 新增改备注 * diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java index e9126a5..fd968ff 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeEarServiceImpl.java @@ -67,8 +67,8 @@ public class ScChangeEarServiceImpl implements IScChangeEarService */ @Override public List selectScChangeEarList(ScChangeEar scChangeEar) { - List list = scChangeEarMapper.selectScChangeEarList(scChangeEar); - return list; + return scChangeEarMapper.selectScChangeEarList(scChangeEar, + scChangeEar.getManageTagsList()); } /** @@ -166,4 +166,10 @@ public class ScChangeEarServiceImpl implements IScChangeEarService { return scChangeEarMapper.deleteScChangeEarById(id); } + + + @Override + public List searchEarNumbers(String query) { + return scChangeEarMapper.searchEarNumbers(query.trim()); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java index 735aa49..be56bde 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScChangeVarietyServiceImpl.java @@ -52,7 +52,8 @@ public class ScChangeVarietyServiceImpl implements IScChangeVarietyService @Override public List selectScChangeVarietyList(ScChangeVariety scChangeVariety) { - return scChangeVarietyMapper.selectScChangeVarietyList(scChangeVariety); + return scChangeVarietyMapper.selectScChangeVarietyList(scChangeVariety, + scChangeVariety.getManageTagsList()); } /** @@ -133,4 +134,9 @@ public class ScChangeVarietyServiceImpl implements IScChangeVarietyService { return scChangeVarietyMapper.deleteScChangeVarietyById(id); } + + @Override + public List searchEarNumbers(String query) { + return scChangeVarietyMapper.searchEarNumbers(query.trim()); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java index d1ffb9c..59f8d59 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransGroupServiceImpl.java @@ -56,7 +56,8 @@ public class ScTransGroupServiceImpl implements IScTransGroupService { */ @Override public List selectScTransGroupList(ScTransGroup scTransGroup) { - List list = scTransGroupMapper.selectScTransGroupList(scTransGroup); + List list = scTransGroupMapper.selectScTransGroupList(scTransGroup, + scTransGroup.getManageTagsList()); list.forEach(group -> { group.setReasonText(convertReason(group.getReason())); group.setStatusText(convertStatus(group.getStatus())); @@ -209,4 +210,9 @@ public class ScTransGroupServiceImpl implements IScTransGroupService { eventTypeMap.put(4, "预售转群"); return eventTypeMap.getOrDefault(eventType, "未知"); } + + @Override + public List searchEarNumbers(String query) { + return scTransGroupMapper.searchEarNumbers(query.trim()); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java index f399396..1831c5d 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/service/impl/ScTransitionInfoServiceImpl.java @@ -55,7 +55,8 @@ public class ScTransitionInfoServiceImpl implements IScTransitionInfoService @Override public List selectScTransitionInfoList(ScTransitionInfo scTransitionInfo) { - return scTransitionInfoMapper.selectScTransitionInfoList(scTransitionInfo); + return scTransitionInfoMapper.selectScTransitionInfoList(scTransitionInfo, + scTransitionInfo.getManageTagsList()); } /** @@ -212,4 +213,9 @@ public class ScTransitionInfoServiceImpl implements IScTransitionInfoService transTypeMap.put(2, "育肥调拨"); return transTypeMap.getOrDefault(transTypeCode, "未知类型"); } + + @Override + public List searchEarNumbers(String query) { + return scTransitionInfoMapper.searchEarNumbers(query.trim()); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java index 914a781..57a0411 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScCastrateController.java @@ -7,14 +7,7 @@ import com.zhyc.module.produce.other.domain.ScCastrate; import com.zhyc.module.produce.other.service.IScCastrateService; import org.springframework.security.access.prepost.PreAuthorize; import org.springframework.beans.factory.annotation.Autowired; -import org.springframework.web.bind.annotation.GetMapping; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.PutMapping; -import org.springframework.web.bind.annotation.DeleteMapping; -import org.springframework.web.bind.annotation.PathVariable; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import com.zhyc.common.annotation.Log; import com.zhyc.common.core.controller.BaseController; import com.zhyc.common.core.domain.AjaxResult; @@ -102,4 +95,9 @@ public class ScCastrateController extends BaseController { return toAjax(scCastrateService.deleteScCastrateByIds(ids)); } + + @GetMapping("/search_ear_numbers") + public AjaxResult searchEarNumbers(@RequestParam("query") String query){ + return success(scCastrateService.searchEarNumbers(query.trim())); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java index 9f97e71..fb20b18 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/controller/ScFixHoofController.java @@ -107,7 +107,10 @@ public class ScFixHoofController extends BaseController return toAjax(scFixHoofService.deleteScFixHoofByIds(ids)); } - + @GetMapping("/search_ear_numbers") + public AjaxResult searchEarNumbers(@RequestParam("query") String query){ + return success(scFixHoofService.searchEarNumbers(query.trim())); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java index 3426e4b..fcbe256 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScCastrate.java @@ -7,6 +7,8 @@ import lombok.NoArgsConstructor; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; +import java.util.List; + /** * 去势对象 sc_castrate * @@ -72,5 +74,6 @@ public class ScCastrate extends BaseEntity { @JsonFormat(pattern = "yyyy-MM-dd") private String eventDate; - + /** 前端多耳号查询条件,非表字段 */ + private List manageTagsList; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java index bd2a20b..5d2fb0d 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/domain/ScFixHoof.java @@ -7,6 +7,8 @@ import lombok.NoArgsConstructor; import com.zhyc.common.annotation.Excel; import com.zhyc.common.core.domain.BaseEntity; +import java.util.List; + /** * 修蹄对象 sc_fix_hoof * @@ -62,4 +64,7 @@ public class ScFixHoof extends BaseEntity @Excel(name = "事件日期", width = 15, dateFormat = "yyyy-MM-dd") @JsonFormat(pattern = "yyyy-MM-dd") private String eventDate; + + /** 前端多耳号查询条件,非表字段 */ + private List manageTagsList; } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java index 8b09e94..29d7d7d 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScCastrateMapper.java @@ -4,6 +4,7 @@ import java.util.List; import com.zhyc.module.produce.other.domain.ScCastrate; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 去势Mapper接口 @@ -61,4 +62,14 @@ public interface ScCastrateMapper * @return 结果 */ public int deleteScCastrateByIds(Long[] ids); + + /** + * 模糊搜索耳号 + */ + List searchEarNumbers(@Param("query") String query); + + /* 列表查询支持多耳号模糊 */ + List selectScCastrateList( + @Param("sc") ScCastrate sc, + @Param("manageTagsList") List manageTagsList); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java index 490ddc4..16141da 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/mapper/ScFixHoofMapper.java @@ -4,6 +4,7 @@ import java.util.List; import com.zhyc.module.produce.other.domain.ScFixHoof; import org.apache.ibatis.annotations.Mapper; +import org.apache.ibatis.annotations.Param; /** * 修蹄Mapper接口 @@ -61,5 +62,13 @@ public interface ScFixHoofMapper { */ public int deleteScFixHoofByIds(Integer[] ids); + /** + *模糊搜索耳号 + */ + List searchEarNumbers(@Param("query") String query); + /* 列表查询支持多耳号模糊 */ + List selectScFixHoofList( + @Param("sc") ScFixHoof sc, + @Param("manageTagsList") List manageTagsList); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java index 293a6bf..33daad3 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScCastrateService.java @@ -59,5 +59,5 @@ public interface IScCastrateService { */ public int deleteScCastrateById(Long id); - + List searchEarNumbers(String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java index 32d9263..7cfd571 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/IScFixHoofService.java @@ -67,5 +67,5 @@ public interface IScFixHoofService { */ Long findIdByManageTags(String manageTags); - + List searchEarNumbers(String query); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java index 74f80eb..f000dd3 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScCastrateServiceImpl.java @@ -44,7 +44,8 @@ public class ScCastrateServiceImpl implements IScCastrateService { */ @Override public List selectScCastrateList(ScCastrate scCastrate) { - return scCastrateMapper.selectScCastrateList(scCastrate); + return scCastrateMapper.selectScCastrateList(scCastrate, + scCastrate.getManageTagsList()); } /** @@ -105,4 +106,10 @@ public class ScCastrateServiceImpl implements IScCastrateService { public int deleteScCastrateById(Long id) { return scCastrateMapper.deleteScCastrateById(id); } + + + @Override + public List searchEarNumbers(String query) { + return scCastrateMapper.searchEarNumbers(query.trim()); + } } diff --git a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java index 298d6c5..ed77ff9 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/produce/other/service/impl/ScFixHoofServiceImpl.java @@ -51,9 +51,11 @@ public class ScFixHoofServiceImpl implements IScFixHoofService { */ @Override public List selectScFixHoofList(ScFixHoof scFixHoof) { - return scFixHoofMapper.selectScFixHoofList(scFixHoof); + return scFixHoofMapper.selectScFixHoofList(scFixHoof, + scFixHoof.getManageTagsList()); } + /** * 新增修蹄 * @@ -118,5 +120,8 @@ public class ScFixHoofServiceImpl implements IScFixHoofService { return sheep.getId(); } - + @Override + public List searchEarNumbers(String query) { + return scFixHoofMapper.searchEarNumbers(query.trim()); + } } \ No newline at end of file diff --git a/zhyc-module/src/main/java/com/zhyc/module/work/controller/WorkOrderController.java b/zhyc-module/src/main/java/com/zhyc/module/work/controller/WorkOrderController.java index e50ad0a..37ecfab 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/work/controller/WorkOrderController.java +++ b/zhyc-module/src/main/java/com/zhyc/module/work/controller/WorkOrderController.java @@ -44,6 +44,7 @@ public class WorkOrderController extends BaseController { startPage(); List list = workOrderService.selectWorkOrderList(workOrder); + return getDataTable(list); } diff --git a/zhyc-module/src/main/java/com/zhyc/module/work/domain/WorkOrder.java b/zhyc-module/src/main/java/com/zhyc/module/work/domain/WorkOrder.java index c4d9f34..1f3948c 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/work/domain/WorkOrder.java +++ b/zhyc-module/src/main/java/com/zhyc/module/work/domain/WorkOrder.java @@ -42,6 +42,8 @@ public class WorkOrder extends BaseEntity /** 业务类型:1免疫 2保健 3转群 4称重 5配种 6干奶 7淘汰 8消毒 9饲喂,必填 */ @Excel(name = "业务类型:1免疫 2保健 3转群 4称重 5配种 6干奶 7淘汰 8消毒 9饲喂,必填") private Integer bizType; + private String bizTypes; + private Integer [] bizTypeArray; /** 简短任务标 */ @Excel(name = "简短任务标") @@ -100,10 +102,14 @@ public class WorkOrder extends BaseEntity /** 状态:0待派工 1已派工 2执行中 3已完成 4已取消 5异常,必填 */ @Excel(name = "状态:0待派工 1已派工 2执行中 3已完成 4已取消 5异常,必填") private Integer status; + private String statuss; + private Integer [] statusArray; /** 优先级:1普通 2重要 3紧急,必填 */ @Excel(name = "优先级:1普通 2重要 3紧急,必填") private Integer priority; + private String prioritys; + private Integer [] priorityArray; /** 派工人用户 */ @Excel(name = "派工人用户") @@ -113,8 +119,8 @@ public class WorkOrder extends BaseEntity private String issuer; /** 派工时间 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "派工时间", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "派工时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date issueTime; /** 接工人用户 */ @@ -125,13 +131,13 @@ public class WorkOrder extends BaseEntity private String receiver; /** 接工时间 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "接工时间", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "接工时间", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date receiveTime; /** 实际完成时间,可空 */ - @JsonFormat(pattern = "yyyy-MM-dd") - @Excel(name = "实际完成时间,可空", width = 30, dateFormat = "yyyy-MM-dd") + @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") + @Excel(name = "实际完成时间,可空", width = 30, dateFormat = "yyyy-MM-dd HH:mm:ss") private Date finishTime; /** 执行结果填报,可空 */ diff --git a/zhyc-module/src/main/java/com/zhyc/module/work/service/impl/WorkOrderServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/work/service/impl/WorkOrderServiceImpl.java index b5d4ba9..92303a0 100644 --- a/zhyc-module/src/main/java/com/zhyc/module/work/service/impl/WorkOrderServiceImpl.java +++ b/zhyc-module/src/main/java/com/zhyc/module/work/service/impl/WorkOrderServiceImpl.java @@ -43,9 +43,44 @@ public class WorkOrderServiceImpl implements IWorkOrderService public List selectWorkOrderList(WorkOrder workOrder) { String username = SecurityUtils.getLoginUser().getUser().getNickName(); + + // 业务类型处理 + if (workOrder.getBizTypes() != null && !workOrder.getBizTypes().isEmpty() && + !workOrder.getBizTypes().equals("0")) { + String[] bizTypeStrs = workOrder.getBizTypes().split(","); + Integer[] bizTypes = new Integer[bizTypeStrs.length]; + for (int i = 0; i < bizTypeStrs.length; i++) { + bizTypes[i] = Integer.parseInt(bizTypeStrs[i].trim()); + } + workOrder.setBizTypeArray(bizTypes); + } + + // 优先级处理 + if (workOrder.getPrioritys() != null && !workOrder.getPrioritys().isEmpty() && + !workOrder.getPrioritys().equals("0")) { + String[] priorityStrs = workOrder.getPrioritys().split(","); + Integer[] prioritys = new Integer[priorityStrs.length]; + for (int i = 0; i < priorityStrs.length; i++) { + prioritys[i] = Integer.parseInt(priorityStrs[i].trim()); + } + workOrder.setPriorityArray(prioritys); + } + + // 状态处理 + if (workOrder.getStatuss() != null && !workOrder.getStatuss().isEmpty() && + !workOrder.getStatuss().equals("0")) { + String[] statusStrs = workOrder.getStatuss().split(","); + Integer[] statuss = new Integer[statusStrs.length]; + for (int i = 0; i < statusStrs.length; i++) { + statuss[i] = Integer.parseInt(statusStrs[i].trim()); + } + workOrder.setStatusArray(statuss); + } + return workOrderMapper.selectWorkOrderList(workOrder); } + /** * 新增派工单 * diff --git a/zhyc-module/src/main/resources/mapper/base/SheepFileMapper.xml b/zhyc-module/src/main/resources/mapper/base/SheepFileMapper.xml index 2479840..1d6964c 100644 --- a/zhyc-module/src/main/resources/mapper/base/SheepFileMapper.xml +++ b/zhyc-module/src/main/resources/mapper/base/SheepFileMapper.xml @@ -90,6 +90,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and status_id = #{statusId} and breed = #{breed} + ORDER BY id ASC diff --git a/zhyc-module/src/main/resources/mapper/biosafety/DewormMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/DewormMapper.xml index 7ac6e53..f15b440 100644 --- a/zhyc-module/src/main/resources/mapper/biosafety/DewormMapper.xml +++ b/zhyc-module/src/main/resources/mapper/biosafety/DewormMapper.xml @@ -36,6 +36,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and sheep_id = #{sheepId} and bs.manage_tags like concat('%',#{sheepNo},'%') + + AND ( + + bs.manage_tags LIKE CONCAT('%', #{item}, '%') + + ) + + and datetime between #{params.beginDatetime} and #{params.endDatetime} diff --git a/zhyc-module/src/main/resources/mapper/biosafety/DiagnosisMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/DiagnosisMapper.xml index 7786273..11ec16b 100644 --- a/zhyc-module/src/main/resources/mapper/biosafety/DiagnosisMapper.xml +++ b/zhyc-module/src/main/resources/mapper/biosafety/DiagnosisMapper.xml @@ -45,6 +45,13 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and sd.sheep_id = #{sheepId} and sf.bs_manage_tags like concat('%', #{sheepNo}, '%') + + AND ( + + bs.manage_tags LIKE CONCAT('%', #{item}, '%') + + ) + and datetime between #{params.beginDatetime} and #{params.endDatetime} and disease_pid = #{diseasePid} and disease_id = #{diseaseId} diff --git a/zhyc-module/src/main/resources/mapper/biosafety/HealthMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/HealthMapper.xml index 8c520e0..c769afb 100644 --- a/zhyc-module/src/main/resources/mapper/biosafety/HealthMapper.xml +++ b/zhyc-module/src/main/resources/mapper/biosafety/HealthMapper.xml @@ -43,6 +43,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and datetime = #{datetime} and bs.manage_tags like concat('%',#{sheepNo},'%') + + AND ( + + bs.manage_tags LIKE CONCAT('%', #{item}, '%') + + ) + + and datetime between #{params.beginDatetime} and #{params.endDatetime} and technical = #{technical} diff --git a/zhyc-module/src/main/resources/mapper/biosafety/ImmunityMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/ImmunityMapper.xml index c0ac758..4a27ef6 100644 --- a/zhyc-module/src/main/resources/mapper/biosafety/ImmunityMapper.xml +++ b/zhyc-module/src/main/resources/mapper/biosafety/ImmunityMapper.xml @@ -41,6 +41,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and sheep_id = #{sheepId} and sheep_type = #{sheepType} and bs.manage_tags like concat('%',#{sheepNo},'%') + + AND ( + + bs.manage_tags LIKE CONCAT('%', #{item}, '%') + + ) + + and datetime between #{params.beginDatetime} and #{params.endDatetime} and technical = #{technical} diff --git a/zhyc-module/src/main/resources/mapper/biosafety/QuarantineReportMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/QuarantineReportMapper.xml index 748148e..6d18f13 100644 --- a/zhyc-module/src/main/resources/mapper/biosafety/QuarantineReportMapper.xml +++ b/zhyc-module/src/main/resources/mapper/biosafety/QuarantineReportMapper.xml @@ -45,7 +45,15 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and sheep_id = #{sheepId} + and bs.manage_tags like concat('%',#{sheepNo},'%') and datetime between #{params.beginDatetime} and #{params.endDatetime} + + AND ( + + bs.manage_tags LIKE CONCAT('%', #{item}, '%') + + ) + and quar_item = #{quarItem} and sample_type = #{sampleType} and sampler like concat('%',#{sampler},'%') diff --git a/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml b/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml index a6dad45..b02ab4a 100644 --- a/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml +++ b/zhyc-module/src/main/resources/mapper/biosafety/TreatmentMapper.xml @@ -55,6 +55,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and sheep_id = #{sheepId} and bs.manage_tags like concat('%',#{sheepNo},'%') + + AND ( + + bs.manage_tags LIKE CONCAT('%', #{item}, '%') + + ) + + and datetime between #{params.beginDatetime} and #{params.endDatetime} and disease_id = #{diseaseId} and status = #{status} diff --git a/zhyc-module/src/main/resources/mapper/common/UserMapper.xml b/zhyc-module/src/main/resources/mapper/common/UserMapper.xml index 212858f..8e289e2 100644 --- a/zhyc-module/src/main/resources/mapper/common/UserMapper.xml +++ b/zhyc-module/src/main/resources/mapper/common/UserMapper.xml @@ -11,7 +11,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - SELECT u.user_id, nick_name , post_name , post_code FROM sys_role r JOIN sys_user_role ur ON r.role_id = ur.role_id diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFeedListMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFeedListMapper.xml index 86932be..ae43230 100644 --- a/zhyc-module/src/main/resources/mapper/feed/SgFeedListMapper.xml +++ b/zhyc-module/src/main/resources/mapper/feed/SgFeedListMapper.xml @@ -19,9 +19,9 @@ - and formula_id = #{formulaId} - and batch_id = #{batchId} - and sheep_house_id = #{sheepHouseId} + and formula_id LIKE CONCAT('%',#{formulaId},'%') + and batch_id LIKE CONCAT('%',#{batchId},'%') + and sheep_house_id LIKE CONCAT('%',#{sheepHouseId},'%') and plan_date = #{planDate} ORDER BY plan_date ASC, formula_id ASC , batch_id ASC diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFeedStatisticMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFeedStatisticMapper.xml index 0bd9657..4cd4a36 100644 --- a/zhyc-module/src/main/resources/mapper/feed/SgFeedStatisticMapper.xml +++ b/zhyc-module/src/main/resources/mapper/feed/SgFeedStatisticMapper.xml @@ -31,8 +31,8 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFormulaListMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFormulaListMapper.xml index f422ccb..98d1018 100644 --- a/zhyc-module/src/main/resources/mapper/feed/SgFormulaListMapper.xml +++ b/zhyc-module/src/main/resources/mapper/feed/SgFormulaListMapper.xml @@ -22,9 +22,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFormulaManagementMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFormulaManagementMapper.xml index 17602f1..38f923a 100644 --- a/zhyc-module/src/main/resources/mapper/feed/SgFormulaManagementMapper.xml +++ b/zhyc-module/src/main/resources/mapper/feed/SgFormulaManagementMapper.xml @@ -21,9 +21,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" diff --git a/zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml index f4960c9..c593ff4 100644 --- a/zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml +++ b/zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml @@ -1,9 +1,9 @@ +PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" +"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + @@ -16,13 +16,13 @@ - + + + SELECT DISTINCT bs.manage_tags + FROM bas_sheep bs + WHERE bs.manage_tags LIKE CONCAT('%', #{query}, '%') + AND bs.is_delete = 0 + ORDER BY bs.manage_tags + LIMIT 50 + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBodyScoreMapper.xml b/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBodyScoreMapper.xml index 6da0595..c95d978 100644 --- a/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBodyScoreMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBodyScoreMapper.xml @@ -41,24 +41,26 @@ left join bas_sheep_variety bsv on bs.variety_id = bsv.id - - and sbs.sheep_id = #{sheepId} - and bsv.id = #{varietyId} - and bs.sheepfold_id = #{sheepfold} - - and sbs.datetime between #{params.beginDatetime} and #{params.endDatetime} + + + bs.manage_tags like concat('%', #{tag}, '%') + - and score = #{score} - - and sbs.create_time between #{params.beginCreateTime} and #{params.endCreateTime} + and sbs.sheep_id = #{sc.sheepId} + and bsv.id = #{sc.varietyId} + and bs.sheepfold_id = #{sc.sheepfold} + and sbs.score = #{sc.score} + + and sbs.datetime between #{sc.params.beginDatetime} and #{sc.params.endDatetime} - - and bs.manage_tags like concat('%', #{manageTags}, '%') + + and sbs.create_time between #{sc.params.beginCreateTime} and #{sc.params.endCreateTime} - ORDER BY sbs.create_time DESC + ORDER BY sbs.create_time DESC + SELECT DISTINCT bs.manage_tags + FROM bas_sheep bs + WHERE bs.manage_tags LIKE CONCAT('%', #{query}, '%') + AND bs.is_delete = 0 + ORDER BY bs.manage_tags + LIMIT 50 + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBreastRatingMapper.xml b/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBreastRatingMapper.xml index d4d5c40..a8564f2 100644 --- a/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBreastRatingMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/bodyManage/ScBreastRatingMapper.xml @@ -41,22 +41,24 @@ left join da_sheepfold sf on bs.sheepfold_id = sf.id - - - and bs.manage_tags like concat('%', #{manageTags}, '%') + + + bs.manage_tags like concat('%', #{tag}, '%') + - and bsv.id = #{varietyId} - and sf.id = #{sheepfoldId} - - and sbr.event_date between #{params.beginEventDate} and #{params.endEventDate} + and bsv.id = #{sc.varietyId} + and sf.id = #{sc.sheepfoldId} + + and sbr.event_date between #{sc.params.beginEventDate} and #{sc.params.endEventDate} - - and sbr.create_time between #{params.beginCreateTime} and #{params.endCreateTime} + + and sbr.create_time between #{sc.params.beginCreateTime} and #{sc.params.endCreateTime} - ORDER BY sbr.create_time DESC + ORDER BY sbr.create_time DESC + SELECT DISTINCT bs.manage_tags + FROM bas_sheep bs + WHERE bs.manage_tags LIKE CONCAT('%', #{query}, '%') + AND bs.is_delete = 0 + ORDER BY bs.manage_tags + LIMIT 50 + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeCommentMapper.xml b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeCommentMapper.xml index 607963b..cb80d10 100644 --- a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeCommentMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeCommentMapper.xml @@ -35,26 +35,30 @@ left join da_sheepfold sf on bs.sheepfold_id = sf.id - - - and bs.manage_tags like concat('%', #{manageTags}, '%') + + + bs.manage_tags like concat('%', #{tag}, '%') + - and bs.sheepfold_id = #{sheepfoldId} - - and scc.new_comment like concat('%', #{newComment}, '%') + + and bs.sheepfold_id = #{sc.sheepfoldId} - - and scc.old_comment like concat('%', #{oldComment}, '%') + + and scc.new_comment like concat('%', #{sc.newComment}, '%') - - and scc.create_time between #{params.beginCreateTime} and #{params.endCreateTime} + + and scc.old_comment like concat('%', #{sc.oldComment}, '%') - - and scc.event_date between #{params.beginEventDate} and #{params.endEventDate} + + and scc.create_time between #{sc.params.beginCreateTime} and #{sc.params.endCreateTime} + + + and scc.event_date between #{sc.params.beginEventDate} and #{sc.params.endEventDate} ORDER BY scc.create_time DESC @@ -111,4 +115,13 @@ #{id} + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeEarMapper.xml b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeEarMapper.xml index c85b4ab..c2c2204 100644 --- a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeEarMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeEarMapper.xml @@ -43,34 +43,27 @@ LEFT JOIN da_sheepfold sf ON bs.sheepfold_id = sf.id - - and sce.sheep_id = #{sheepId} - - and ( - bs.manage_tags LIKE CONCAT('%', #{manageTags}, '%') - OR - bs.electronic_tags LIKE CONCAT('%', #{manageTags}, '%') - ) + and sce.sheep_id = #{sc.sheepId} + + + (bs.manage_tags like concat('%', #{tag}, '%') + or bs.electronic_tags like concat('%', #{tag}, '%')) + - and bs.sheepfold_id = #{sheepfoldId} - - and sf.sheepfold_name LIKE CONCAT('%', #{sheepfoldName}, '%') + and bs.sheepfold_id = #{sc.sheepfoldId} + and sce.ear_type = #{sc.earType} + and sce.newTag like concat('%', #{sc.newTag}, '%') + and sce.oldTag like concat('%', #{sc.oldTag}, '%') + + and sce.create_time between #{sc.params.beginCreateTime} and #{sc.params.endCreateTime} - and sce.ear_type = #{earType} - - and sce.newTag LIKE CONCAT('%', #{newTag}, '%') - - - and sce.oldTag LIKE CONCAT('%', #{oldTag}, '%') - - - and sce.create_time between #{params.beginCreateTime} and #{params.endCreateTime} - - - and sce.event_date between #{params.beginEventDate} and #{params.endEventDate} + + and sce.event_date between #{sc.params.beginEventDate} and #{sc.params.endEventDate} ORDER BY sce.create_time DESC @@ -133,4 +126,13 @@ #{id} + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeVarietyMapper.xml b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeVarietyMapper.xml index 4370ad8..323b692 100644 --- a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeVarietyMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeVarietyMapper.xml @@ -37,27 +37,23 @@ left join da_sheepfold sf on bs.sheepfold_id = sf.id - - and scv.sheep_id = #{sheepId} - - and bs.manage_tags like concat('%', #{manageTags}, '%') + + + bs.manage_tags like concat('%', #{tag}, '%') + - and bs.sheepfold_id = #{sheepfoldId} - - and scv.variety_old like concat('%', #{varietyOld}, '%') + and scv.sheep_id = #{sc.sheepId} + and bs.sheepfold_id = #{sc.sheepfoldId} + and scv.variety_old like concat('%', #{sc.varietyOld}, '%') + and scv.variety_new like concat('%', #{sc.varietyNew}, '%') + + and scv.create_time between #{sc.params.beginCreateTime} and #{sc.params.endCreateTime} - - and scv.variety_new like concat('%', #{varietyNew}, '%') - - - and scv.create_time between #{params.beginCreateTime} and #{params.endCreateTime} - - - and scv.event_date between #{params.beginEventDate} and #{params.endEventDate} + + and scv.event_date between #{sc.params.beginEventDate} and #{sc.params.endEventDate} ORDER BY scv.create_time DESC @@ -117,4 +113,13 @@ #{id} + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransGroupMapper.xml b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransGroupMapper.xml index ada406b..60b55ec 100644 --- a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransGroupMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransGroupMapper.xml @@ -51,25 +51,23 @@ LEFT JOIN bas_sheep_variety bv ON tg.variety_id = bv.id - - and sheep_id = #{sheepId} - - and s.manage_tags like concat('%', #{manageTags}, '%') + + + s.manage_tags like concat('%', #{tag}, '%') + - - - and tg.trans_date between #{params.beginTransDate} and #{params.endTransDate} + and tg.sheep_id = #{sc.sheepId} + and tg.fold_to = #{sc.foldTo} + and tg.fold_from = #{sc.foldFrom} + and tg.status = #{sc.status} + and tg.variety_id = #{sc.varietyId} + and st.id = #{sc.sheepTypeId} + + and tg.trans_date between #{sc.params.beginTransDate} and #{sc.params.endTransDate} - and fold_to = #{foldTo} - and fold_from = #{foldFrom} - and status = #{status} - and tg.variety_id = #{varietyId} - and st.id = #{sheepTypeId} - - - ORDER BY tg.create_time DESC @@ -144,4 +142,13 @@ #{id} + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransitionInfoMapper.xml b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransitionInfoMapper.xml index 89b81f3..7c7ece3 100644 --- a/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransitionInfoMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScTransitionInfoMapper.xml @@ -44,28 +44,23 @@ LEFT JOIN bas_sheep_variety bv ON bs.variety_id = bv.id - - and sheep_id = #{sheepId} - - and bs.manage_tags LIKE CONCAT('%', #{manageTags}, '%') + + + bs.manage_tags like concat('%', #{tag}, '%') + - - - - and t.trans_type = #{transType} - - and t.transition_date between #{params.beginTransitionDate} and #{params.endTransitionDate} + and t.sheep_id = #{sc.sheepId} + and t.trans_type = #{sc.transType} + and bs.variety_id = #{sc.varietyId} + and t.trans_to = #{sc.transTo} + and t.trans_from = #{sc.transFrom} + and t.status = #{sc.status} + + and t.transition_date between #{sc.params.beginTransitionDate} and #{sc.params.endTransitionDate} - and bs.variety_id = #{varietyId} - and trans_to = #{transTo} - and trans_from = #{transFrom} - and status = #{status} - - - ORDER BY t.create_time DESC @@ -154,4 +149,13 @@ #{id} + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/produce/other/ScCastrateMapper.xml b/zhyc-module/src/main/resources/mapper/produce/other/ScCastrateMapper.xml index a3b2eac..e56cb4b 100644 --- a/zhyc-module/src/main/resources/mapper/produce/other/ScCastrateMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/other/ScCastrateMapper.xml @@ -40,21 +40,22 @@ left join bas_sheep_variety bv on bs.variety_id = bv.id - - - and bs.manage_tags like concat('%', #{manageTags}, '%') + + + bs.manage_tags like concat('%', #{tag}, '%') + - and bs.sheepfold_id = #{sheepfold} - and bs.variety_id = #{varietyId} - and sc.technician like concat('%', #{technician}, '%') + and bs.sheepfold_id = #{sc.sheepfold} + and bs.variety_id = #{sc.varietyId} + and sc.technician like concat('%', #{sc.technician}, '%') + + and sc.create_time between #{sc.params.beginCreateTime} and #{sc.params.endCreateTime} - - and sc.create_time between #{params.beginCreateTime} and #{params.endCreateTime} - - - and sc.event_date between #{params.beginEventDate} and #{params.endEventDate} + + and sc.event_date between #{sc.params.beginEventDate} and #{sc.params.endEventDate} ORDER BY sc.create_time DESC @@ -115,4 +116,13 @@ #{id} + + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/produce/other/ScFixHoofMapper.xml b/zhyc-module/src/main/resources/mapper/produce/other/ScFixHoofMapper.xml index 77ca28d..706675b 100644 --- a/zhyc-module/src/main/resources/mapper/produce/other/ScFixHoofMapper.xml +++ b/zhyc-module/src/main/resources/mapper/produce/other/ScFixHoofMapper.xml @@ -37,21 +37,22 @@ left join bas_sheep_variety bv on bs.variety_id = bv.id - - and sheep_id = #{sheepId} - and bs.sheepfold_id = #{sheepfold} - and bs.variety_id = #{varietyId} - - and fh.create_time between #{params.beginCreateTime} and #{params.endCreateTime} + + + bs.manage_tags like concat('%', #{tag}, '%') + - - and bs.manage_tags like concat('%', #{manageTags}, '%') + and bs.sheepfold_id = #{sc.sheepfold} + and bs.variety_id = #{sc.varietyId} + and fh.technician like concat('%', #{sc.technician}, '%') + + and fh.create_time between #{sc.params.beginCreateTime} and #{sc.params.endCreateTime} - - and fh.event_date between #{params.beginEventDate} and #{params.endEventDate} + + and fh.event_date between #{sc.params.beginEventDate} and #{sc.params.endEventDate} ORDER BY fh.create_time DESC @@ -111,5 +112,12 @@ - + \ No newline at end of file diff --git a/zhyc-module/src/main/resources/mapper/work/WorkOrderMapper.xml b/zhyc-module/src/main/resources/mapper/work/WorkOrderMapper.xml index 5d426ae..0937b9a 100644 --- a/zhyc-module/src/main/resources/mapper/work/WorkOrderMapper.xml +++ b/zhyc-module/src/main/resources/mapper/work/WorkOrderMapper.xml @@ -45,21 +45,51 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and order_no like concat('%', #{orderNo}, '%') and plan_id = #{planId} - and biz_type = #{bizType} + + + and biz_type in + + #{item} + + + + + and biz_type = #{bizType} + and title like concat('%', #{title},'%') and content = #{content} and department = #{department} and executor like concat('%',#{executor},'%') - and execute_date between #{beginPlanDate} and #{endPlanDate} - + and execute_date between #{beginPlanDate} and #{endPlanDate} + and execute_time = #{executeTime} and sheep_scope = #{sheepScope} and location = #{location} and material_list = #{materialList} and tool_list = #{toolList} - and status = #{status} - and priority = #{priority} + + + and status in + + #{item} + + + + + and status = #{status} + + + + and priority in + + #{item} + + + + + and priority = #{priority} + and issuer like concat('%',#{issuer},'%') and issue_time = #{issueTime} and receiver_id = #{receiverId} @@ -67,12 +97,12 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and finish_time between #{beginFinishDate} and #{endFinishDate} - and result = #{result} order by execute_date desc +