diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/TraceabilityCodeController.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/TraceabilityCodeController.java new file mode 100644 index 00000000..bd05dff9 --- /dev/null +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/TraceabilityCodeController.java @@ -0,0 +1,102 @@ +package cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode; + +import cn.iocoder.yudao.framework.apilog.core.annotation.ApiAccessLog; +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.framework.excel.core.util.ExcelUtils; +import cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode.vo.TraceabilityCodePageReqVO; +import cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode.vo.TraceabilityCodeRespVO; +import cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode.vo.TraceabilityCodeSaveReqVO; +import cn.iocoder.yudao.module.farm.dal.dataobject.traceabilitycode.TraceabilityCodeDO; +import cn.iocoder.yudao.module.farm.service.traceabilitycode.TraceabilityCodeService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import jakarta.servlet.http.HttpServletResponse; +import jakarta.validation.Valid; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.*; + +import java.io.IOException; +import java.util.List; + +import static cn.iocoder.yudao.framework.apilog.core.enums.OperateTypeEnum.EXPORT; +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +@Tag(name = "管理后台 - 溯源-溯源码") +@RestController +@RequestMapping("/farm/traceability-code") +@Validated +public class TraceabilityCodeController { + + @Resource + private TraceabilityCodeService traceabilityCodeService; + + @PostMapping("/create") + @Operation(summary = "创建溯源-溯源码") + public CommonResult createTraceabilityCode(@Valid @RequestBody TraceabilityCodeSaveReqVO createReqVO) { + return success(traceabilityCodeService.createTraceabilityCode(createReqVO)); + } + + @PutMapping("/update") + @Operation(summary = "更新溯源-溯源码") + public CommonResult updateTraceabilityCode(@Valid @RequestBody TraceabilityCodeSaveReqVO updateReqVO) { + traceabilityCodeService.updateTraceabilityCode(updateReqVO); + return success(true); + } + + @DeleteMapping("/delete") + @Operation(summary = "删除溯源-溯源码") + @Parameter(name = "id", description = "编号", required = true) + public CommonResult deleteTraceabilityCode(@RequestParam("id") String id) { + traceabilityCodeService.deleteTraceabilityCode(id); + return success(true); + } + + @DeleteMapping("/delete-list") + @Parameter(name = "ids", description = "编号", required = true) + @Operation(summary = "批量删除溯源-溯源码") + public CommonResult deleteTraceabilityCodeList(@RequestParam("ids") List ids) { + traceabilityCodeService.deleteTraceabilityCodeListByIds(ids); + return success(true); + } + + @GetMapping("/get") + @Operation(summary = "获得溯源-溯源码") + @Parameter(name = "id", description = "编号", required = true, example = "1024") + public CommonResult getTraceabilityCode(@RequestParam("id") String id) { + TraceabilityCodeDO traceabilityCode = traceabilityCodeService.getTraceabilityCode(id); + return success(BeanUtils.toBean(traceabilityCode, TraceabilityCodeRespVO.class)); + } + + @GetMapping("/page") + @Operation(summary = "获得溯源-溯源码分页") + public CommonResult> getTraceabilityCodePage(@Valid TraceabilityCodePageReqVO pageReqVO) { + PageResult pageResult = traceabilityCodeService.getTraceabilityCodePage(pageReqVO); + return success(BeanUtils.toBean(pageResult, TraceabilityCodeRespVO.class)); + } + + @GetMapping("/export-excel") + @Operation(summary = "导出溯源-溯源码 Excel") + @ApiAccessLog(operateType = EXPORT) + public void exportTraceabilityCodeExcel(@Valid TraceabilityCodePageReqVO pageReqVO, + HttpServletResponse response) throws IOException { + pageReqVO.setPageSize(PageParam.PAGE_SIZE_NONE); + List list = traceabilityCodeService.getTraceabilityCodePage(pageReqVO).getList(); + // 导出 Excel + ExcelUtils.write(response, "溯源-溯源码.xls", "数据", TraceabilityCodeRespVO.class, + BeanUtils.toBean(list, TraceabilityCodeRespVO.class)); + } + + + @GetMapping("/scan") + @Operation(summary = "扫码获取溯源码") + @Parameter(name = "id", description = "编号", required = true) + public CommonResult scanTraceabilityCode(@RequestParam("id") String id) { + TraceabilityCodeDO traceabilityCode = traceabilityCodeService.scanTraceabilityCode(id); + return success(BeanUtils.toBean(traceabilityCode, TraceabilityCodeRespVO.class)); + } +} \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/vo/TraceabilityCodePageReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/vo/TraceabilityCodePageReqVO.java new file mode 100644 index 00000000..fefc5ffa --- /dev/null +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/vo/TraceabilityCodePageReqVO.java @@ -0,0 +1,127 @@ +package cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode.vo; + +import lombok.*; +import java.util.*; +import io.swagger.v3.oas.annotations.media.Schema; +import cn.iocoder.yudao.framework.common.pojo.PageParam; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +import static cn.iocoder.yudao.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND; + +@Schema(description = "管理后台 - 溯源-溯源码分页 Request VO") +@Data +public class TraceabilityCodePageReqVO extends PageParam { + + @Schema(description = "物种分类code") + private String speciesCode; + + @Schema(description = "物种分类名称", example = "李四") + private String speciesName; + + @Schema(description = "基地id", example = "26184") + private String baseId; + + @Schema(description = "基地", example = "赵六") + private String baseName; + + @Schema(description = "地块ID", example = "30494") + private String plotId; + + @Schema(description = "地块", example = "王五") + private String plotName; + + @Schema(description = "租户id", example = "19700") + private String tenantId; + + @Schema(description = "采收时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] harvestDate; + + @Schema(description = "农事记录", example = "24734") + private Long farmingInputCount; + + @Schema(description = "商品id", example = "6627") + private String productId; + + @Schema(description = "商品名称", example = "李四") + private String productName; + + @Schema(description = "商品规格") + private String packingSpec; + + @Schema(description = "商品图片") + private String productImage; + + @Schema(description = "商标名称", example = "芋艿") + private String brandName; + + @Schema(description = "商品介绍") + private String introduce; + + @Schema(description = "商品认证") + private String brandAuthentication; + + @Schema(description = "企业id", example = "25407") + private String businessId; + + @Schema(description = "企业名称", example = "张三") + private String businessName; + + @Schema(description = "是否显示企业名称") + private Long isShowBusinessName; + + @Schema(description = "联系电话") + private String businessPhone; + + @Schema(description = "是否显示联系电话") + private Long isShowBusinessPhone; + + @Schema(description = "企业网店", example = "李四") + private String storeName; + + @Schema(description = "是否显示企业网店") + private Long isShowStoreName; + + @Schema(description = "企业地址") + private String businessAddress; + + @Schema(description = "是否显示企业地址") + private Long isShowBusinessAddress; + + @Schema(description = "宣传图片") + private String publicityImage; + + @Schema(description = "是否显示宣传图片") + private Long isShowPublicityImage; + + @Schema(description = "企业简介") + private String publicityProfile; + + @Schema(description = "是否显示企业简介") + private Long isShowPublicityProfile; + + @Schema(description = "批次检验报告") + private String inspectionReport; + + @Schema(description = "批次采收图片") + private String collectImages; + + @Schema(description = "摄像头信息") + private String cameraInformation; + + @Schema(description = "出码量", example = "6456") + private Long codeOutCount; + + @Schema(description = "二维码") + private String qrCode; + + @Schema(description = "状态 0=正常,1=废弃", example = "2") + private Long status; + + @Schema(description = "创建时间") + @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND) + private LocalDateTime[] createTime; + private String codeOutBatch; + private Long scanCodeCount; +} \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/vo/TraceabilityCodeRespVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/vo/TraceabilityCodeRespVO.java new file mode 100644 index 00000000..48e0407f --- /dev/null +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/vo/TraceabilityCodeRespVO.java @@ -0,0 +1,164 @@ +package cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; +import cn.idev.excel.annotation.*; + +@Schema(description = "管理后台 - 溯源-溯源码 Response VO") +@Data +@ExcelIgnoreUnannotated +public class TraceabilityCodeRespVO { + + @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "29122") + @ExcelProperty("id") + private String id; + + @Schema(description = "物种分类code") + @ExcelProperty("物种分类code") + private String speciesCode; + + @Schema(description = "物种分类名称", example = "李四") + @ExcelProperty("物种分类名称") + private String speciesName; + + @Schema(description = "基地id", example = "26184") + @ExcelProperty("基地id") + private String baseId; + + @Schema(description = "基地", example = "赵六") + @ExcelProperty("基地") + private String baseName; + + @Schema(description = "地块ID", example = "30494") + @ExcelProperty("地块ID") + private String plotId; + + @Schema(description = "地块", example = "王五") + @ExcelProperty("地块") + private String plotName; + + @Schema(description = "租户id", example = "19700") + @ExcelProperty("租户id") + private String tenantId; + + @Schema(description = "采收时间") + @ExcelProperty("采收时间") + private LocalDateTime harvestDate; + + @Schema(description = "农事记录", example = "24734") + @ExcelProperty("农事记录") + private Long farmingInputCount; + + @Schema(description = "商品id", example = "6627") + @ExcelProperty("商品id") + private String productId; + + @Schema(description = "商品名称", example = "李四") + @ExcelProperty("商品名称") + private String productName; + + @Schema(description = "商品规格") + @ExcelProperty("商品规格") + private String packingSpec; + + @Schema(description = "商品图片") + @ExcelProperty("商品图片") + private String productImage; + + @Schema(description = "商标名称", example = "芋艿") + @ExcelProperty("商标名称") + private String brandName; + + @Schema(description = "商品介绍") + @ExcelProperty("商品介绍") + private String introduce; + + @Schema(description = "商品认证") + @ExcelProperty("商品认证") + private String brandAuthentication; + + @Schema(description = "企业id", example = "25407") + @ExcelProperty("企业id") + private String businessId; + + @Schema(description = "企业名称", example = "张三") + @ExcelProperty("企业名称") + private String businessName; + + @Schema(description = "是否显示企业名称", example = "张三") + @ExcelProperty("是否显示企业名称") + private Long isShowBusinessName; + + @Schema(description = "联系电话") + @ExcelProperty("联系电话") + private String businessPhone; + + @Schema(description = "是否显示联系电话") + @ExcelProperty("是否显示联系电话") + private Long isShowBusinessPhone; + + @Schema(description = "企业网店", example = "李四") + @ExcelProperty("企业网店") + private String storeName; + + @Schema(description = "是否显示企业网店", example = "张三") + @ExcelProperty("是否显示企业网店") + private Long isShowStoreName; + + @Schema(description = "企业地址") + @ExcelProperty("企业地址") + private String businessAddress; + + @Schema(description = "是否显示企业地址") + @ExcelProperty("是否显示企业地址") + private Long isShowBusinessAddress; + + @Schema(description = "宣传图片") + @ExcelProperty("宣传图片") + private String publicityImage; + + @Schema(description = "是否显示宣传图片") + @ExcelProperty("是否显示宣传图片") + private Long isShowPublicityImage; + + @Schema(description = "企业简介") + @ExcelProperty("企业简介") + private String publicityProfile; + + @Schema(description = "是否显示企业简介") + @ExcelProperty("是否显示企业简介") + private Long isShowPublicityProfile; + + @Schema(description = "批次检验报告") + @ExcelProperty("批次检验报告") + private String inspectionReport; + + @Schema(description = "批次采收图片") + @ExcelProperty("批次采收图片") + private String collectImages; + + @Schema(description = "摄像头信息") + @ExcelProperty("摄像头信息") + private String cameraInformation; + + @Schema(description = "出码量", example = "6456") + @ExcelProperty("出码量") + private Long codeOutCount; + + @Schema(description = "二维码") + @ExcelProperty("二维码") + private String qrCode; + + @Schema(description = "状态 0=正常,1=废弃", example = "2") + @ExcelProperty("状态 0=正常,1=废弃") + private Long status; + + @Schema(description = "创建时间") + @ExcelProperty("创建时间") + private LocalDateTime createTime; + private String codeOutBatch; + private Long scanCodeCount; +} diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/vo/TraceabilityCodeSaveReqVO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/vo/TraceabilityCodeSaveReqVO.java new file mode 100644 index 00000000..f33eda0c --- /dev/null +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/admin/traceabilitycode/vo/TraceabilityCodeSaveReqVO.java @@ -0,0 +1,123 @@ +package cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode.vo; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.*; +import java.util.*; +import jakarta.validation.constraints.*; +import org.springframework.format.annotation.DateTimeFormat; +import java.time.LocalDateTime; + +@Schema(description = "管理后台 - 溯源-溯源码新增/修改 Request VO") +@Data +public class TraceabilityCodeSaveReqVO { + + @Schema(description = "id", requiredMode = Schema.RequiredMode.REQUIRED, example = "29122") + private String id; + + @Schema(description = "物种分类code") + private String speciesCode; + + @Schema(description = "物种分类名称", example = "李四") + private String speciesName; + + @Schema(description = "基地id", example = "26184") + private String baseId; + + @Schema(description = "基地", example = "赵六") + private String baseName; + + @Schema(description = "地块ID", example = "30494") + private String plotId; + + @Schema(description = "地块", example = "王五") + private String plotName; + + @Schema(description = "租户id", example = "19700") + private String tenantId; + + @Schema(description = "采收时间") + private LocalDateTime harvestDate; + + @Schema(description = "农事记录", example = "24734") + private Long farmingInputCount; + + @Schema(description = "商品id", example = "6627") + private String productId; + + @Schema(description = "商品名称", example = "李四") + private String productName; + + @Schema(description = "商品规格") + private String packingSpec; + + @Schema(description = "商品图片") + private String productImage; + + @Schema(description = "商标名称", example = "芋艿") + private String brandName; + + @Schema(description = "商品介绍") + private String introduce; + + @Schema(description = "商品认证") + private String brandAuthentication; + + @Schema(description = "企业id", example = "25407") + private String businessId; + + @Schema(description = "企业名称", example = "张三") + private String businessName; + + @Schema(description = "是否显示企业名称", example = "张三") + private Long isShowBusinessName; + + @Schema(description = "联系电话") + private String businessPhone; + + @Schema(description = "是否显示联系电话") + private Long isShowBusinessPhone; + + @Schema(description = "企业网店", example = "李四") + private String storeName; + + @Schema(description = "是否显示企业网店", example = "张三") + private Long isShowStoreName; + + @Schema(description = "企业地址") + private String businessAddress; + + @Schema(description = "是否显示企业地址") + private Long isShowBusinessAddress; + + @Schema(description = "宣传图片") + private String publicityImage; + + @Schema(description = "是否显示宣传图片") + private Long isShowPublicityImage; + + @Schema(description = "企业简介") + private String publicityProfile; + + @Schema(description = "是否显示企业简介") + private Long isShowPublicityProfile; + + @Schema(description = "批次检验报告") + private String inspectionReport; + + @Schema(description = "批次采收图片") + private String collectImages; + + @Schema(description = "摄像头信息") + private String cameraInformation; + + @Schema(description = "出码量", example = "6456") + private Long codeOutCount; + + @Schema(description = "二维码") + private String qrCode; + + @Schema(description = "状态 0=正常,1=废弃", example = "2") + private Long status; + private String codeOutBatch; + private Long scanCodeCount; +} \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/app/traceabilitycode/TraceabilityCodeController.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/app/traceabilitycode/TraceabilityCodeController.java new file mode 100644 index 00000000..384d1f47 --- /dev/null +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/controller/app/traceabilitycode/TraceabilityCodeController.java @@ -0,0 +1,37 @@ +package cn.iocoder.yudao.module.farm.controller.app.traceabilitycode; + +import cn.iocoder.yudao.framework.common.pojo.CommonResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode.vo.TraceabilityCodeRespVO; +import cn.iocoder.yudao.module.farm.dal.dataobject.traceabilitycode.TraceabilityCodeDO; +import cn.iocoder.yudao.module.farm.service.traceabilitycode.TraceabilityCodeService; +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.tags.Tag; +import jakarta.annotation.Resource; +import org.springframework.validation.annotation.Validated; +import org.springframework.web.bind.annotation.GetMapping; +import org.springframework.web.bind.annotation.RequestMapping; +import org.springframework.web.bind.annotation.RequestParam; +import org.springframework.web.bind.annotation.RestController; + +import static cn.iocoder.yudao.framework.common.pojo.CommonResult.success; + +@Tag(name = "管理后台 - 溯源-溯源码") +@RestController +@RequestMapping("/app/traceability-code") +@Validated +public class TraceabilityCodeController { + + @Resource + private TraceabilityCodeService traceabilityCodeService; + + + @GetMapping("/scan") + @Operation(summary = "扫码获取溯源") + @Parameter(name = "id", description = "编号", required = true) + public CommonResult scanTraceabilityCode(@RequestParam("id") String id) { + TraceabilityCodeDO traceabilityCode = traceabilityCodeService.scanTraceabilityCode(id); + return success(BeanUtils.toBean(traceabilityCode, TraceabilityCodeRespVO.class)); + } +} \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/traceabilitycode/TraceabilityCodeDO.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/traceabilitycode/TraceabilityCodeDO.java new file mode 100644 index 00000000..92a8b2c8 --- /dev/null +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/dataobject/traceabilitycode/TraceabilityCodeDO.java @@ -0,0 +1,174 @@ +package cn.iocoder.yudao.module.farm.dal.dataobject.traceabilitycode; + +import cn.iocoder.yudao.framework.mybatis.core.dataobject.BaseDO; +import com.baomidou.mybatisplus.annotation.IdType; +import com.baomidou.mybatisplus.annotation.KeySequence; +import com.baomidou.mybatisplus.annotation.TableId; +import com.baomidou.mybatisplus.annotation.TableName; +import lombok.*; + +import java.time.LocalDateTime; + +/** + * 溯源-溯源码 DO + * + * @author 芋道源码 + */ +@TableName("farm_traceability_code") +@KeySequence("farm_traceability_code_seq") // 用于 Oracle、PostgreSQL、Kingbase、DB2、H2 数据库的主键自增。如果是 MySQL 等数据库,可不写。 +@Data +@EqualsAndHashCode(callSuper = true) +@ToString(callSuper = true) +@Builder +@NoArgsConstructor +@AllArgsConstructor +public class TraceabilityCodeDO extends BaseDO { + + /** + * id + */ + @TableId(type = IdType.INPUT) + private String id; + /** + * 物种分类code + */ + private String speciesCode; + /** + * 物种分类名称 + */ + private String speciesName; + /** + * 基地id + */ + private String baseId; + /** + * 基地 + */ + private String baseName; + /** + * 地块ID + */ + private String plotId; + /** + * 地块 + */ + private String plotName; + /** + * 采收时间 + */ + private LocalDateTime harvestDate; + /** + * 农事记录 + */ + private Long farmingInputCount; + /** + * 商品id + */ + private String productId; + /** + * 商品名称 + */ + private String productName; + /** + * 商品规格 + */ + private String packingSpec; + /** + * 商品图片 + */ + private String productImage; + /** + * 商标名称 + */ + private String brandName; + /** + * 商品介绍 + */ + private String introduce; + /** + * 商品认证 + */ + private String brandAuthentication; + /** + * 企业id + */ + private String businessId; + /** + * 企业名称 + */ + private String businessName; + /** + * 是否显示企业名称 + */ + private Long isShowBusinessName; + /** + * 联系电话 + */ + private String businessPhone; + /** + * 是否显示联系电话 + */ + private Long isShowBusinessPhone; + /** + * 企业网店 + */ + private String storeName; + /** + * 是否显示企业网店 + */ + private Long isShowStoreName; + /** + * 企业地址 + */ + private String businessAddress; + /** + * 是否显示企业地址 + */ + private Long isShowBusinessAddress; + /** + * 宣传图片 + */ + private String publicityImage; + /** + * 是否显示宣传图片 + */ + private Long isShowPublicityImage; + /** + * 企业简介 + */ + private String publicityProfile; + /** + * 是否显示企业简介 + */ + private Long isShowPublicityProfile; + /** + * 批次检验报告 + */ + private String inspectionReport; + /** + * 批次采收图片 + */ + private String collectImages; + /** + * 摄像头信息 + */ + private String cameraInformation; + /** + * 出码量 + */ + private Long codeOutCount; + /** + * 二维码 + */ + private String qrCode; + /** + * 状态 0=正常,1=废弃 + */ + private Long status; + + private String tenantId; + + private String codeOutBatch; + + private Long scanCodeCount; +} diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/baseinfo/BaseInfoMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/baseinfo/BaseInfoMapper.java index bf41109b..62bda433 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/baseinfo/BaseInfoMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/baseinfo/BaseInfoMapper.java @@ -23,7 +23,7 @@ public interface BaseInfoMapper extends BaseMapperX { .eqIfPresent(BaseInfoDO::getPoint, reqVO.getPoint()) .betweenIfPresent(BaseInfoDO::getCreateTime, reqVO.getCreateTime()) .eqIfPresent(BaseInfoDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(BaseInfoDO::getId)); + .orderByDesc(BaseInfoDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/companyinfo/CompanyInfoMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/companyinfo/CompanyInfoMapper.java index 67c8c163..064468cd 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/companyinfo/CompanyInfoMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/companyinfo/CompanyInfoMapper.java @@ -33,7 +33,7 @@ public interface CompanyInfoMapper extends BaseMapperX { .eqIfPresent(CompanyInfoDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(CompanyInfoDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(CompanyInfoDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(CompanyInfoDO::getId)); + .orderByDesc(CompanyInfoDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/cultivationarea/CultivationAreaMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/cultivationarea/CultivationAreaMapper.java index e74b0b1c..9a1a7144 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/cultivationarea/CultivationAreaMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/cultivationarea/CultivationAreaMapper.java @@ -27,7 +27,7 @@ public interface CultivationAreaMapper extends BaseMapperX { .eqIfPresent(CultivationAreaDO::getDelStatus, reqVO.getDelStatus()) .eqIfPresent(CultivationAreaDO::getTenantId, reqVO.getTenantId()) .betweenIfPresent(CultivationAreaDO::getCreateTime, reqVO.getCreateTime()) - .orderByDesc(CultivationAreaDO::getId)); + .orderByDesc(CultivationAreaDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/deviceinfo/DeviceInfoMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/deviceinfo/DeviceInfoMapper.java index ccec91a3..c7e96d05 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/deviceinfo/DeviceInfoMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/deviceinfo/DeviceInfoMapper.java @@ -50,7 +50,7 @@ public interface DeviceInfoMapper extends BaseMapperX { .eqIfPresent(DeviceInfoDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(DeviceInfoDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(DeviceInfoDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(DeviceInfoDO::getId)); + .orderByDesc(DeviceInfoDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/deviceplotrelation/DevicePlotRelationMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/deviceplotrelation/DevicePlotRelationMapper.java index c4d245e3..2f03aba9 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/deviceplotrelation/DevicePlotRelationMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/deviceplotrelation/DevicePlotRelationMapper.java @@ -29,7 +29,7 @@ public interface DevicePlotRelationMapper extends BaseMapperX { .eqIfPresent(DisasterDataDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(DisasterDataDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(DisasterDataDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(DisasterDataDO::getId)); + .orderByDesc(DisasterDataDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/environmentindexconfig/EnvironmentIndexConfigMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/environmentindexconfig/EnvironmentIndexConfigMapper.java index 1f8efa6f..2767544e 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/environmentindexconfig/EnvironmentIndexConfigMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/environmentindexconfig/EnvironmentIndexConfigMapper.java @@ -27,7 +27,7 @@ public interface EnvironmentIndexConfigMapper extends BaseMapperX { .likeIfPresent(FarmingRecordDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(FarmingRecordDO::getTenantId, reqVO.getTenantId()) .betweenIfPresent(FarmingRecordDO::getCreateTime, reqVO.getCreateTime()) - .orderByDesc(FarmingRecordDO::getId)); + .orderByDesc(FarmingRecordDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/farmingrecordinput/FarmingRecordInputMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/farmingrecordinput/FarmingRecordInputMapper.java index 53266694..0b575a5c 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/farmingrecordinput/FarmingRecordInputMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/farmingrecordinput/FarmingRecordInputMapper.java @@ -34,7 +34,7 @@ public interface FarmingRecordInputMapper extends BaseMapperX { .eqIfPresent(FertilizerIndexDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(FertilizerIndexDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(FertilizerIndexDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(FertilizerIndexDO::getId)); + .orderByDesc(FertilizerIndexDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/foundationinfo/FoundationInfoMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/foundationinfo/FoundationInfoMapper.java index 2f409233..4e688e40 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/foundationinfo/FoundationInfoMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/foundationinfo/FoundationInfoMapper.java @@ -28,7 +28,7 @@ public interface FoundationInfoMapper extends BaseMapperX { .eqIfPresent(FoundationInfoDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(FoundationInfoDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(FoundationInfoDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(FoundationInfoDO::getId)); + .orderByDesc(FoundationInfoDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/inputlibrary/InputLibraryMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/inputlibrary/InputLibraryMapper.java index 87cc635e..6a9a93ae 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/inputlibrary/InputLibraryMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/inputlibrary/InputLibraryMapper.java @@ -37,7 +37,7 @@ public interface InputLibraryMapper extends BaseMapperX { .eqIfPresent(InputLibraryDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(InputLibraryDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(InputLibraryDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(InputLibraryDO::getId)); + .orderByDesc(InputLibraryDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/messagecenter/MessageCenterMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/messagecenter/MessageCenterMapper.java index f4ff2c61..89910ea4 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/messagecenter/MessageCenterMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/messagecenter/MessageCenterMapper.java @@ -29,7 +29,7 @@ public interface MessageCenterMapper extends BaseMapperX { .likeIfPresent(MessageCenterDO::getBaseName, reqVO.getBaseName()) .eqIfPresent(MessageCenterDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(MessageCenterDO::getPlotName, reqVO.getPlotName()) - .orderByDesc(MessageCenterDO::getId)); + .orderByDesc(MessageCenterDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelcycle/ModelCycleMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelcycle/ModelCycleMapper.java index 03858897..cc37bed9 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelcycle/ModelCycleMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelcycle/ModelCycleMapper.java @@ -30,7 +30,7 @@ public interface ModelCycleMapper extends BaseMapperX { .eqIfPresent(ModelCycleDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(ModelCycleDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(ModelCycleDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(ModelCycleDO::getId)); + .orderByDesc(ModelCycleDO::getCreateTime)); } List selectListByModelId(String modelId); diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelenvironmentindex/ModelEnvironmentIndexMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelenvironmentindex/ModelEnvironmentIndexMapper.java index 499a6ec8..1b6534bb 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelenvironmentindex/ModelEnvironmentIndexMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelenvironmentindex/ModelEnvironmentIndexMapper.java @@ -31,7 +31,7 @@ public interface ModelEnvironmentIndexMapper extends BaseMapperX selectByCycleId(String cycleId); diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelfarmingoperation/ModelFarmingOperationMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelfarmingoperation/ModelFarmingOperationMapper.java index 876f11c8..3e781a56 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelfarmingoperation/ModelFarmingOperationMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelfarmingoperation/ModelFarmingOperationMapper.java @@ -32,7 +32,7 @@ public interface ModelFarmingOperationMapper extends BaseMapperX selectByCycleId(String cycleId); diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelfarmingoperationinput/ModelFarmingOperationInputMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelfarmingoperationinput/ModelFarmingOperationInputMapper.java index 4b6482a4..2f26e53a 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelfarmingoperationinput/ModelFarmingOperationInputMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelfarmingoperationinput/ModelFarmingOperationInputMapper.java @@ -31,7 +31,7 @@ public interface ModelFarmingOperationInputMapper extends BaseMapperX selectByFarmingId(String farmingId); diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelmanagement/ModelManagementMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelmanagement/ModelManagementMapper.java index 0115b010..01037db3 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelmanagement/ModelManagementMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelmanagement/ModelManagementMapper.java @@ -34,7 +34,7 @@ public interface ModelManagementMapper extends BaseMapperX { .eqIfPresent(ModelManagementDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(ModelManagementDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(ModelManagementDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(ModelManagementDO::getId) + .orderByDesc(ModelManagementDO::getCreateTime) // 连表:物种库 .leftJoin(SpeciesLibraryDO.class, SpeciesLibraryDO::getId, ModelManagementDO::getSpeciesId) .selectAs(SpeciesLibraryDO::getCultivarName, ModelManagementDO::getSpeciesName) diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelpestdiseaseweed/ModelPestDiseaseWeedMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelpestdiseaseweed/ModelPestDiseaseWeedMapper.java index f34b45b6..0f962f83 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelpestdiseaseweed/ModelPestDiseaseWeedMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelpestdiseaseweed/ModelPestDiseaseWeedMapper.java @@ -30,7 +30,7 @@ public interface ModelPestDiseaseWeedMapper extends BaseMapperX selectByCycleId(String cycleId); diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelweatherdisaster/ModelWeatherDisasterMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelweatherdisaster/ModelWeatherDisasterMapper.java index bb32bdfa..5f581065 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelweatherdisaster/ModelWeatherDisasterMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/modelweatherdisaster/ModelWeatherDisasterMapper.java @@ -30,7 +30,7 @@ public interface ModelWeatherDisasterMapper extends BaseMapperX selectByCycleId(String cycleId); diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/personnelmanagement/PersonnelManagementMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/personnelmanagement/PersonnelManagementMapper.java index de7e239a..9f4d2f32 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/personnelmanagement/PersonnelManagementMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/personnelmanagement/PersonnelManagementMapper.java @@ -29,7 +29,7 @@ public interface PersonnelManagementMapper extends BaseMapperX { .eqIfPresent(PlotInfoDO::getPoint, reqVO.getPoint()) .eqIfPresent(PlotInfoDO::getEmployeeId, reqVO.getEmployeeId()) .betweenIfPresent(PlotInfoDO::getCreateTime, reqVO.getCreateTime()) - .orderByDesc(PlotInfoDO::getId)); + .orderByDesc(PlotInfoDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/productionplan/ProductionPlanMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/productionplan/ProductionPlanMapper.java index eccde486..0ade6321 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/productionplan/ProductionPlanMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/productionplan/ProductionPlanMapper.java @@ -28,7 +28,7 @@ public interface ProductionPlanMapper extends BaseMapperX { .eqIfPresent(ProductionPlanDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(ProductionPlanDO::getPlotName, reqVO.getPlotName()) .betweenIfPresent(ProductionPlanDO::getCreateTime, reqVO.getCreateTime()) - .orderByDesc(ProductionPlanDO::getId)); + .orderByDesc(ProductionPlanDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/productmanagement/ProductManagementMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/productmanagement/ProductManagementMapper.java index 7d8fec7a..1d834dd4 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/productmanagement/ProductManagementMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/productmanagement/ProductManagementMapper.java @@ -33,7 +33,7 @@ public interface ProductManagementMapper extends BaseMapperX { .eqIfPresent(SpeciesLibraryDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(SpeciesLibraryDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(SpeciesLibraryDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(SpeciesLibraryDO::getId)); + .orderByDesc(SpeciesLibraryDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/traceabilitycode/TraceabilityCodeMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/traceabilitycode/TraceabilityCodeMapper.java new file mode 100644 index 00000000..62c558e9 --- /dev/null +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/traceabilitycode/TraceabilityCodeMapper.java @@ -0,0 +1,61 @@ +package cn.iocoder.yudao.module.farm.dal.mysql.traceabilitycode; + +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.mybatis.core.mapper.BaseMapperX; +import cn.iocoder.yudao.framework.mybatis.core.query.LambdaQueryWrapperX; +import cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode.vo.TraceabilityCodePageReqVO; +import cn.iocoder.yudao.module.farm.dal.dataobject.traceabilitycode.TraceabilityCodeDO; +import org.apache.ibatis.annotations.Mapper; + +/** + * 溯源-溯源码 Mapper + * + * @author 芋道源码 + */ +@Mapper +public interface TraceabilityCodeMapper extends BaseMapperX { + + default PageResult selectPage(TraceabilityCodePageReqVO reqVO) { + return selectPage(reqVO, new LambdaQueryWrapperX() + .eqIfPresent(TraceabilityCodeDO::getSpeciesCode, reqVO.getSpeciesCode()) + .likeIfPresent(TraceabilityCodeDO::getSpeciesName, reqVO.getSpeciesName()) + .eqIfPresent(TraceabilityCodeDO::getBaseId, reqVO.getBaseId()) + .likeIfPresent(TraceabilityCodeDO::getBaseName, reqVO.getBaseName()) + .eqIfPresent(TraceabilityCodeDO::getPlotId, reqVO.getPlotId()) + .likeIfPresent(TraceabilityCodeDO::getPlotName, reqVO.getPlotName()) + .eqIfPresent(TraceabilityCodeDO::getTenantId, reqVO.getTenantId()) + .betweenIfPresent(TraceabilityCodeDO::getHarvestDate, reqVO.getHarvestDate()) + .eqIfPresent(TraceabilityCodeDO::getFarmingInputCount, reqVO.getFarmingInputCount()) + .eqIfPresent(TraceabilityCodeDO::getProductId, reqVO.getProductId()) + .likeIfPresent(TraceabilityCodeDO::getProductName, reqVO.getProductName()) + .eqIfPresent(TraceabilityCodeDO::getPackingSpec, reqVO.getPackingSpec()) + .eqIfPresent(TraceabilityCodeDO::getProductImage, reqVO.getProductImage()) + .likeIfPresent(TraceabilityCodeDO::getBrandName, reqVO.getBrandName()) + .eqIfPresent(TraceabilityCodeDO::getIntroduce, reqVO.getIntroduce()) + .eqIfPresent(TraceabilityCodeDO::getBrandAuthentication, reqVO.getBrandAuthentication()) + .eqIfPresent(TraceabilityCodeDO::getBusinessId, reqVO.getBusinessId()) + .likeIfPresent(TraceabilityCodeDO::getBusinessName, reqVO.getBusinessName()) + .eqIfPresent(TraceabilityCodeDO::getIsShowBusinessName, reqVO.getIsShowBusinessName()) + .eqIfPresent(TraceabilityCodeDO::getBusinessPhone, reqVO.getBusinessPhone()) + .eqIfPresent(TraceabilityCodeDO::getIsShowBusinessPhone, reqVO.getIsShowBusinessPhone()) + .likeIfPresent(TraceabilityCodeDO::getStoreName, reqVO.getStoreName()) + .eqIfPresent(TraceabilityCodeDO::getIsShowStoreName, reqVO.getIsShowStoreName()) + .eqIfPresent(TraceabilityCodeDO::getBusinessAddress, reqVO.getBusinessAddress()) + .eqIfPresent(TraceabilityCodeDO::getIsShowBusinessAddress, reqVO.getIsShowBusinessAddress()) + .eqIfPresent(TraceabilityCodeDO::getPublicityImage, reqVO.getPublicityImage()) + .eqIfPresent(TraceabilityCodeDO::getIsShowPublicityImage, reqVO.getIsShowPublicityImage()) + .eqIfPresent(TraceabilityCodeDO::getPublicityProfile, reqVO.getPublicityProfile()) + .eqIfPresent(TraceabilityCodeDO::getIsShowPublicityProfile, reqVO.getIsShowPublicityProfile()) + .eqIfPresent(TraceabilityCodeDO::getInspectionReport, reqVO.getInspectionReport()) + .eqIfPresent(TraceabilityCodeDO::getCollectImages, reqVO.getCollectImages()) + .eqIfPresent(TraceabilityCodeDO::getCameraInformation, reqVO.getCameraInformation()) + .eqIfPresent(TraceabilityCodeDO::getCodeOutCount, reqVO.getCodeOutCount()) + .eqIfPresent(TraceabilityCodeDO::getQrCode, reqVO.getQrCode()) + .eqIfPresent(TraceabilityCodeDO::getStatus, reqVO.getStatus()) + .eqIfPresent(TraceabilityCodeDO::getCodeOutBatch, reqVO.getCodeOutBatch()) + .eqIfPresent(TraceabilityCodeDO::getScanCodeCount, reqVO.getScanCodeCount()) + .betweenIfPresent(TraceabilityCodeDO::getCreateTime, reqVO.getCreateTime()) + .orderByDesc(TraceabilityCodeDO::getCreateTime)); + } + +} \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/varietydata/VarietyDataMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/varietydata/VarietyDataMapper.java index 5906db2b..df800534 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/varietydata/VarietyDataMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/varietydata/VarietyDataMapper.java @@ -29,7 +29,7 @@ public interface VarietyDataMapper extends BaseMapperX { .eqIfPresent(VarietyDataDO::getPlotId, reqVO.getPlotId()) .likeIfPresent(VarietyDataDO::getPlotName, reqVO.getPlotName()) .eqIfPresent(VarietyDataDO::getTenantId, reqVO.getTenantId()) - .orderByDesc(VarietyDataDO::getId)); + .orderByDesc(VarietyDataDO::getCreateTime)); } } \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/weatherdisasterlibrary/WeatherDisasterLibraryMapper.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/weatherdisasterlibrary/WeatherDisasterLibraryMapper.java index b04917d6..64181489 100644 --- a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/weatherdisasterlibrary/WeatherDisasterLibraryMapper.java +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/dal/mysql/weatherdisasterlibrary/WeatherDisasterLibraryMapper.java @@ -28,7 +28,7 @@ public interface WeatherDisasterLibraryMapper extends BaseMapperX ids); + + /** + * 获得溯源-溯源码 + * + * @param id 编号 + * @return 溯源-溯源码 + */ + TraceabilityCodeDO getTraceabilityCode(String id); + + /** + * 获得溯源-溯源码分页 + * + * @param pageReqVO 分页查询 + * @return 溯源-溯源码分页 + */ + PageResult getTraceabilityCodePage(TraceabilityCodePageReqVO pageReqVO); + + TraceabilityCodeDO scanTraceabilityCode(String id); +} \ No newline at end of file diff --git a/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/traceabilitycode/TraceabilityCodeServiceImpl.java b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/traceabilitycode/TraceabilityCodeServiceImpl.java new file mode 100644 index 00000000..9c3582a9 --- /dev/null +++ b/yudao-module-farm/src/main/java/cn/iocoder/yudao/module/farm/service/traceabilitycode/TraceabilityCodeServiceImpl.java @@ -0,0 +1,101 @@ +package cn.iocoder.yudao.module.farm.service.traceabilitycode; + +import cn.hutool.core.util.IdUtil; +import cn.iocoder.yudao.framework.common.pojo.PageResult; +import cn.iocoder.yudao.framework.common.util.object.BeanUtils; +import cn.iocoder.yudao.framework.security.core.LoginUser; +import cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode.vo.TraceabilityCodePageReqVO; +import cn.iocoder.yudao.module.farm.controller.admin.traceabilitycode.vo.TraceabilityCodeSaveReqVO; +import cn.iocoder.yudao.module.farm.dal.dataobject.traceabilitycode.TraceabilityCodeDO; +import cn.iocoder.yudao.module.farm.dal.mysql.traceabilitycode.TraceabilityCodeMapper; +import jakarta.annotation.Resource; +import org.springframework.stereotype.Service; +import org.springframework.validation.annotation.Validated; + +import java.text.SimpleDateFormat; +import java.util.Date; +import java.util.List; + +import static cn.iocoder.yudao.framework.common.exception.util.ServiceExceptionUtil.exception; +import static cn.iocoder.yudao.framework.security.core.util.SecurityFrameworkUtils.getLoginUser; +import static cn.iocoder.yudao.module.farm.enums.ErrorCodeConstants.TRACEABILITY_CODE_NOT_EXISTS; + +/** + * 溯源-溯源码 Service 实现类 + * + * @author 芋道源码 + */ +@Service +@Validated +public class TraceabilityCodeServiceImpl implements TraceabilityCodeService { + + @Resource + private TraceabilityCodeMapper traceabilityCodeMapper; + + @Override + public String createTraceabilityCode(TraceabilityCodeSaveReqVO createReqVO) { + LoginUser user = getLoginUser(); + // 插入 + TraceabilityCodeDO traceabilityCode = BeanUtils.toBean(createReqVO, TraceabilityCodeDO.class); + Long count = traceabilityCode.getCodeOutCount(); + SimpleDateFormat sf = new SimpleDateFormat("yyyyMMddHHmmss"); + String dateStr = sf.format(new Date()); + for (int i = 0; i < count; i++) { + traceabilityCode.setId(IdUtil.fastUUID()); + traceabilityCode.setTenantId(String.valueOf(user.getTenantId())); + traceabilityCode.setCodeOutBatch(dateStr); + traceabilityCodeMapper.insert(traceabilityCode); + } + // 返回 + return traceabilityCode.getId(); + } + + @Override + public void updateTraceabilityCode(TraceabilityCodeSaveReqVO updateReqVO) { + // 校验存在 + validateTraceabilityCodeExists(updateReqVO.getId()); + // 更新 + TraceabilityCodeDO updateObj = BeanUtils.toBean(updateReqVO, TraceabilityCodeDO.class); + traceabilityCodeMapper.updateById(updateObj); + } + + @Override + public void deleteTraceabilityCode(String id) { + // 校验存在 + validateTraceabilityCodeExists(id); + // 删除 + traceabilityCodeMapper.deleteById(id); + } + + @Override + public void deleteTraceabilityCodeListByIds(List ids) { + // 删除 + traceabilityCodeMapper.deleteByIds(ids); + } + + + private void validateTraceabilityCodeExists(String id) { + if (traceabilityCodeMapper.selectById(id) == null) { + throw exception(TRACEABILITY_CODE_NOT_EXISTS); + } + } + + @Override + public TraceabilityCodeDO getTraceabilityCode(String id) { + return traceabilityCodeMapper.selectById(id); + } + + @Override + public PageResult getTraceabilityCodePage(TraceabilityCodePageReqVO pageReqVO) { + return traceabilityCodeMapper.selectPage(pageReqVO); + } + + @Override + public TraceabilityCodeDO scanTraceabilityCode(String id) { + TraceabilityCodeDO traceabilityCodeDO = traceabilityCodeMapper.selectById(id); + traceabilityCodeDO.setScanCodeCount(traceabilityCodeDO.getScanCodeCount() + 1); + traceabilityCodeMapper.updateById(traceabilityCodeDO); + return traceabilityCodeDO; + } + +} \ No newline at end of file diff --git a/yudao-module-farm/src/main/resources/mapper/traceabilitycode/TraceabilityCodeMapper.xml b/yudao-module-farm/src/main/resources/mapper/traceabilitycode/TraceabilityCodeMapper.xml new file mode 100644 index 00000000..1197fb1f --- /dev/null +++ b/yudao-module-farm/src/main/resources/mapper/traceabilitycode/TraceabilityCodeMapper.xml @@ -0,0 +1,12 @@ + + + + + + + \ No newline at end of file