From a9929779109bb42865811b619448f0ca2c58a44e Mon Sep 17 00:00:00 2001 From: zyh <2066096076@qq.com> Date: Tue, 6 Jan 2026 13:54:52 +0800 Subject: [PATCH 01/16] =?UTF-8?q?=E5=86=BB=E8=83=9A=E8=83=9A=E8=83=8E?= =?UTF-8?q?=E7=AD=89=E7=BA=A7=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhyc/module/frozen/controller/DdFeController.java | 6 ------ .../zhyc/module/frozen/service/impl/DdFeServiceImpl.java | 9 +++++++-- .../src/main/resources/mapper/frozen/DdFeMapper.xml | 2 -- 3 files changed, 7 insertions(+), 10 deletions(-) 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/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/resources/mapper/frozen/DdFeMapper.xml b/zhyc-module/src/main/resources/mapper/frozen/DdFeMapper.xml index 682d1f3..83264bd 100644 --- a/zhyc-module/src/main/resources/mapper/frozen/DdFeMapper.xml +++ b/zhyc-module/src/main/resources/mapper/frozen/DdFeMapper.xml @@ -170,8 +170,6 @@ grade_b gradeB, grade_c gradeC, grade_d gradeD, - cell_2_4 cell24, - cell_8 cell8, donor_male_no ramId FROM sc_embryo_flush WHERE donor_female_no = #{eweNo} From 0ae3359363158f7a6d8f37626e8297e732fb4eaf Mon Sep 17 00:00:00 2001 From: wyt <414651037@qq.com> Date: Tue, 6 Jan 2026 16:22:59 +0800 Subject: [PATCH 02/16] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=BE=8A=E5=8F=AA?= =?UTF-8?q?=E6=A1=A3=E6=A1=88=E5=AF=BC=E5=87=BA=E5=8A=9F=E8=83=BD?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/controller/SheepFileController.java | 108 ++++++++++-------- .../zhyc/module/base/domain/SheepFile.java | 63 +++++++--- 2 files changed, 106 insertions(+), 65 deletions(-) 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..41be2d4 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 * @@ -147,68 +151,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; + } From b3d9a865dca2217d23c8ba9092717423a02b7cff Mon Sep 17 00:00:00 2001 From: wyt <414651037@qq.com> Date: Mon, 12 Jan 2026 23:36:09 +0800 Subject: [PATCH 03/16] =?UTF-8?q?=E4=BF=AE=E6=94=B9=E7=BE=8A=E5=8F=AA?= =?UTF-8?q?=E6=A1=A3=E6=A1=88=E6=98=BE=E7=A4=BA=E6=8E=92=E5=BA=8F=EF=BC=8C?= =?UTF-8?q?=E5=AF=BC=E5=85=A5=E6=B5=8B=E8=AF=95=E6=95=B0=E6=8D=AE?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../base/controller/SheepFileController.java | 16 ++++++++++++++++ .../module/base/mapper/SheepFileSqlProvider.java | 2 +- .../resources/mapper/base/SheepFileMapper.xml | 3 ++- 3 files changed, 19 insertions(+), 2 deletions(-) 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 41be2d4..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 @@ -59,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 对象 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/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 From af262045bd97be71e2891ac77f8c6dc66179bbf3 Mon Sep 17 00:00:00 2001 From: zyh <2066096076@qq.com> Date: Tue, 13 Jan 2026 11:17:19 +0800 Subject: [PATCH 04/16] =?UTF-8?q?=E6=94=B9=E5=A4=87=E6=B3=A8=EF=BC=8C?= =?UTF-8?q?=E6=94=B9=E8=80=B3=E5=8F=B7=EF=BC=8C=E6=94=B9=E5=93=81=E7=A7=8D?= =?UTF-8?q?=EF=BC=8C=E8=BD=AC=E5=9C=BA=E9=83=A8=E5=88=86=E6=A8=A1=E7=B3=8A?= =?UTF-8?q?=E6=9F=A5=E8=AF=A2+=E5=A4=9A=E8=80=B3=E5=8F=B7=E8=BE=93?= =?UTF-8?q?=E5=85=A5?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../com/zhyc/module/frozen/domain/DdFe.java | 2 +- .../controller/ScChangeCommentController.java | 14 +++--- .../controller/ScChangeEarController.java | 15 +++--- .../controller/ScChangeVarietyController.java | 14 +++--- .../ScTransitionInfoController.java | 14 +++--- .../manage_sheep/domain/ScChangeComment.java | 4 ++ .../manage_sheep/domain/ScChangeEar.java | 4 ++ .../manage_sheep/domain/ScChangeVariety.java | 3 ++ .../manage_sheep/domain/ScTransitionInfo.java | 4 +- .../mapper/ScChangeCommentMapper.java | 10 ++++ .../mapper/ScChangeEarMapper.java | 11 ++++ .../mapper/ScChangeVarietyMapper.java | 11 ++++ .../mapper/ScTransitionInfoMapper.java | 9 ++++ .../service/IScChangeCommentService.java | 5 ++ .../service/IScChangeEarService.java | 2 + .../service/IScChangeVarietyService.java | 2 + .../service/IScTransitionInfoService.java | 1 + .../impl/ScChangeCommentServiceImpl.java | 9 +++- .../service/impl/ScChangeEarServiceImpl.java | 10 +++- .../impl/ScChangeVarietyServiceImpl.java | 8 ++- .../impl/ScTransitionInfoServiceImpl.java | 8 ++- .../manage_sheep/ScChangeCommentMapper.xml | 42 ++++++++++------ .../manage_sheep/ScChangeEarMapper.xml | 50 ++++++++++--------- .../manage_sheep/ScChangeVarietyMapper.xml | 42 +++++++++------- .../manage_sheep/ScTransitionInfoMapper.xml | 43 +++++++++------- 25 files changed, 224 insertions(+), 113 deletions(-) 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/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/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/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/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..c57ee71 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..ac9af02 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..c4c0714 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/ScTransitionInfoMapper.java b/zhyc-module/src/main/java/com/zhyc/module/produce/manage_sheep/mapper/ScTransitionInfoMapper.java index ce67176..6cdf29a 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/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/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/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/resources/mapper/produce/manage_sheep/ScChangeCommentMapper.xml b/zhyc-module/src/main/resources/mapper/produce/manage_sheep/ScChangeCommentMapper.xml index 607963b..4dbd2ce 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,31 @@ 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 +116,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..520e403 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,26 @@ 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 +116,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..790abde 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,26 @@ 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 +152,13 @@ #{id} + + \ No newline at end of file From 458a440f632867d7d2e35aa25b1a0e8023c6157f Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BC=82=E6=B3=8A?= <1913856125@qq.com> Date: Tue, 13 Jan 2026 21:46:01 +0800 Subject: [PATCH 05/16] =?UTF-8?q?=E6=B4=BE=E5=B7=A5=E5=8D=95=E4=BF=AE?= =?UTF-8?q?=E6=94=B9=EF=BC=8C=E6=9D=83=E9=99=90=E4=BF=AE=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../service/impl/DewormServiceImpl.java | 12 +++--- .../service/impl/HealthServiceImpl.java | 16 ++++--- .../service/impl/ImmunityServiceImpl.java | 13 +++--- .../work/controller/WorkOrderController.java | 1 + .../zhyc/module/work/domain/WorkOrder.java | 18 +++++--- .../service/impl/WorkOrderServiceImpl.java | 35 ++++++++++++++++ .../resources/mapper/work/WorkOrderMapper.xml | 42 ++++++++++++++++--- 7 files changed, 106 insertions(+), 31 deletions(-) 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..6dfa036 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 @@ -90,12 +90,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/HealthServiceImpl.java b/zhyc-module/src/main/java/com/zhyc/module/biosafety/service/impl/HealthServiceImpl.java index 1d5a4e0..d7170bd 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; @@ -92,12 +94,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..2ec4e0f 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 @@ -97,13 +97,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/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/work/WorkOrderMapper.xml b/zhyc-module/src/main/resources/mapper/work/WorkOrderMapper.xml index 5d426ae..eecd519 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 + + + 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 4dbd2ce..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 @@ -38,7 +38,6 @@ - bs.manage_tags like concat('%', #{tag}, '%') - - and scv.sheep_id = #{sc.sheepId} and bs.sheepfold_id = #{sc.sheepfoldId} and scv.variety_old like concat('%', #{sc.varietyOld}, '%') 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 790abde..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 @@ -47,14 +47,11 @@ + + 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/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 From d7732e8e4a6cf7dbfff89e3a2518690ff84e4cf2 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BC=82=E6=B3=8A?= <1913856125@qq.com> Date: Fri, 16 Jan 2026 21:08:23 +0800 Subject: [PATCH 09/16] =?UTF-8?q?opi(execl=E8=A1=A8=E6=A0=BC)=E4=BE=9D?= =?UTF-8?q?=E8=B5=96=E5=86=B2=E7=AA=81=E8=A7=A3=E5=86=B3=EF=BC=8C=E8=BF=98?= =?UTF-8?q?=E6=9C=89=E6=9D=83=E9=99=90=E5=AD=97=E7=AC=A6=E4=B8=B2=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- pom.xml | 146 +++++++++++++++++- zhyc-admin/pom.xml | 12 +- zhyc-common/pom.xml | 4 + .../controller/BasSheepTypeController.java | 12 +- .../base/controller/DaRanchController.java | 14 +- .../controller/SwDiseaseController.java | 12 +- 6 files changed, 169 insertions(+), 31 deletions(-) diff --git a/pom.xml b/pom.xml index 729e2b1..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 @@ -35,7 +42,6 @@ 1.2.13 5.7.12 5.3.39 - @@ -149,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 @@ -176,6 +251,7 @@ jjwt ${jwt.version} + pro.fessional @@ -217,6 +293,7 @@ zhyc-common ${zhyc.version} + zhyc zhyc-module @@ -235,6 +312,7 @@ zhyc-common zhyc-module + pom @@ -250,6 +328,24 @@ + + + org.apache.maven.plugins + maven-dependency-plugin + 3.1.2 + + + analyze + + analyze-only + + + false + + + + + @@ -262,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 + + @@ -276,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-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/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) From e6b68bff8c96c794a7614b6321dd332833557c19 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BC=82=E6=B3=8A?= <1913856125@qq.com> Date: Sat, 17 Jan 2026 20:37:03 +0800 Subject: [PATCH 10/16] =?UTF-8?q?app=E6=96=B0=E5=A2=9E=E6=8E=A5=E5=8F=A3?= =?UTF-8?q?=E5=89=8D=E7=AB=AF=E4=BC=A0=E5=85=A5=E8=B7=AF=E5=BE=84=E8=8E=B7?= =?UTF-8?q?=E5=8F=96base64?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../app/controller/ImageController.java | 66 +++++++++++++++++++ .../module/app/controller/OrcController.java | 1 + 2 files changed, 67 insertions(+) create mode 100644 zhyc-module/src/main/java/com/zhyc/module/app/controller/ImageController.java 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..dcb273f --- /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 index 48d277f..101e15f 100644 --- 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 @@ -8,6 +8,7 @@ import org.springframework.web.bind.annotation.PostMapping; import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RestController; +//文字识别 @RestController @RequestMapping("/ocr") public class OrcController { From d3f4b6a700805a17dfbc0b4239fb899a95bf94ce Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BC=82=E6=B3=8A?= <1913856125@qq.com> Date: Sun, 18 Jan 2026 14:55:35 +0800 Subject: [PATCH 11/16] =?UTF-8?q?=E6=9D=83=E9=99=90=E4=BF=AE=E6=94=B9?= =?UTF-8?q?=EF=BC=8Capp=E7=9B=B8=E5=85=B3=E6=8E=A5=E5=8F=A3=E4=BF=AE?= =?UTF-8?q?=E6=94=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../zhyc/common/core/domain/AjaxResult.java | 1 + .../app/controller/ImageController.java | 2 +- .../module/app/controller/OrcController.java | 36 ++++++++++++++----- .../frozen/controller/DdFsController.java | 14 ++++---- 4 files changed, 37 insertions(+), 16 deletions(-) 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/src/main/java/com/zhyc/module/app/controller/ImageController.java b/zhyc-module/src/main/java/com/zhyc/module/app/controller/ImageController.java index dcb273f..9279a25 100644 --- 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 @@ -36,7 +36,7 @@ public AjaxResult getImageBase64(String path) { // 返回base64数据,格式为 data:image/xxx;base64,xxxxx String result = "data:" + mimeType + ";base64," + base64String; - return AjaxResult.success(result); + return AjaxResult.success("操作成功",result); } catch (Exception e) { return AjaxResult.error("读取图片失败: " + e.getMessage()); } 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 index 101e15f..6ffb0d6 100644 --- 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 @@ -8,23 +8,43 @@ 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("路径不能为空"); - } +@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; - String recognize =ocrRecognizeUtil.recognizeTwo(path); - return AjaxResult.success(recognize); + + // 验证文件是否存在 + 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/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) { From 3ea03e3c19eef31507bd075d36ae3466df5fee71 Mon Sep 17 00:00:00 2001 From: HashMap Date: Sun, 18 Jan 2026 14:57:59 +0800 Subject: [PATCH 12/16] =?UTF-8?q?feat(module/feed):=20=E6=94=AF=E6=8C=81?= =?UTF-8?q?=E5=89=8D=E7=AB=AF=E5=8E=9F=E6=96=99=E7=AE=A1=E7=90=86=E9=9D=A2?= =?UTF-8?q?=E6=9D=BF?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit 添加对前端原料管理页面的支持 --- .../Exception/MaterialExceptionHandler.java | 21 ++++++ .../feed/controller/SgMaterialController.java | 16 ++--- .../zhyc/module/feed/domain/SgMaterial.java | 65 +++++++++++++++++-- .../module/feed/mapper/SgMaterialMapper.java | 18 ++--- .../feed/service/ISgMaterialService.java | 30 ++++----- .../service/impl/SgMaterialServiceImpl.java | 34 ++++------ .../mapper/feed/SgMaterialMapper.xml | 20 +++--- 7 files changed, 135 insertions(+), 69 deletions(-) create mode 100644 zhyc-module/src/main/java/com/zhyc/module/feed/controller/Exception/MaterialExceptionHandler.java 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/resources/mapper/feed/SgMaterialMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml index f4960c9..6129720 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 @@ - + + - and formula_id = #{formulaId} - and formula_batch_id = #{formulaBatchId} - and zookeeper = #{zookeeper} + and formula_id LIKE CONCAT('%',#{formulaId},'%') + and formula_batch_id LIKE CONCAT('%',#{formulaBatchId},'%') + and zookeeper LIKE CONCAT('%',#{zookeeper},'%') and deploy_date = #{deployDate} ORDER BY deploy_date ASC, formula_id ASC, formula_batch_id ASC diff --git a/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml b/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml index cf23ac3..8d7af3f 100644 --- a/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml +++ b/zhyc-module/src/main/resources/mapper/feed/SgFeedPlanMapper.xml @@ -36,9 +36,9 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" - and formula_id = #{formulaId} - and formula_batch_id = #{formulaBatchId} + and formula_id LIKE CONCAT('%',#{formulaId},'%') + and formula_batch_id = LIKE CONCAT('%',#{formulaBatchId},'%') and silage_loss_rate = #{silageLossRate} 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 6129720..c593ff4 100644 --- a/zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml +++ b/zhyc-module/src/main/resources/mapper/feed/SgMaterialMapper.xml @@ -17,7 +17,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"