From 3d6c572e5027273cf841883eea6507b219906db9 Mon Sep 17 00:00:00 2001
From: huminmin <mac@MacBook-Pro.local>
Date: 星期一, 05 一月 2026 16:00:08 +0800
Subject: [PATCH] 生产报工列表api
---
src/main/java/com/ruoyi/production/service/ProductionProductMainService.java | 8 ++
src/main/java/com/ruoyi/production/pojo/ProductWorkOrder.java | 54 ++++++++++++++++++
src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java | 21 ++++++
src/main/resources/mapper/production/ProductionProductMainMapper.xml | 34 +++++++++++
src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java | 8 ++
src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java | 6 +
src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java | 9 +++
7 files changed, 135 insertions(+), 5 deletions(-)
diff --git a/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java b/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java
index 231b143..a32cd4c 100644
--- a/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java
+++ b/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java
@@ -6,6 +6,7 @@
import com.ruoyi.production.pojo.ProductionProductMain;
import com.ruoyi.production.service.ProductionProductMainService;
import io.swagger.annotations.Api;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@@ -15,10 +16,11 @@
@Api(value = "鐢熶骇鎶ュ伐")
public class ProductionProductMainController {
+ @Autowired
private ProductionProductMainService productionProductMainService;
- @GetMapping("page")
+ @GetMapping("listPage")
public R page(Page<ProductionProductMainDto> page, ProductionProductMainDto productionProductMainDto) {
- return R.ok();
+ return R.ok(productionProductMainService.listPageProductionProductMainDto(page, productionProductMainDto));
}
}
diff --git a/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java b/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
index a7a7a3b..c90bf87 100644
--- a/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
+++ b/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
@@ -1,8 +1,17 @@
package com.ruoyi.production.dto;
import com.ruoyi.production.pojo.ProductionProductMain;
+import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
@Data
public class ProductionProductMainDto extends ProductionProductMain {
+ @ApiModelProperty(value = "宸ュ崟缂栧彿")
+ private String workOrderNo;
+
+ @ApiModelProperty(value = "宸ュ崟鐘舵��")
+ private String workOrderStatus;
+
+ @ApiModelProperty(value = "鎶ュ伐浜哄憳鏄电О")
+ private String nickName;
}
diff --git a/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java b/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
index f66e1b3..dd99553 100644
--- a/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
+++ b/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
@@ -1,12 +1,18 @@
package com.ruoyi.production.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.production.dto.ProductOrderDto;
+import com.ruoyi.production.dto.ProductionProductMainDto;
import com.ruoyi.production.pojo.ProductionProductMain;
import org.apache.ibatis.annotations.Mapper;
+import org.apache.ibatis.annotations.Param;
import javax.annotation.ManagedBean;
+import java.util.List;
@Mapper
public interface ProductionProductMainMapper extends BaseMapper<ProductionProductMain> {
-
+ IPage<ProductionProductMainDto> listPageProductionProductMainDto(Page page, @Param("c") ProductionProductMainDto productionProductMainDto);
}
diff --git a/src/main/java/com/ruoyi/production/pojo/ProductWorkOrder.java b/src/main/java/com/ruoyi/production/pojo/ProductWorkOrder.java
new file mode 100644
index 0000000..bffa732
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/pojo/ProductWorkOrder.java
@@ -0,0 +1,54 @@
+package com.ruoyi.production.pojo;
+
+import com.baomidou.mybatisplus.annotation.*;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.io.Serializable;
+import java.time.LocalDateTime;
+
+@Data
+@TableName("product_work_order")
+public class ProductWorkOrder implements Serializable {
+
+ private static final long serialVersionUID = 1L;
+
+ @TableId(value = "id", type = IdType.AUTO)
+ private Long id;
+
+ /**
+ * 宸ヨ壓璺嚎椤圭洰id
+ */
+ @ApiModelProperty(value = "宸ヨ壓璺嚎椤圭洰id")
+ private Long productProcessRouteItemId;
+
+ /**
+ * 宸ュ崟缂栧彿
+ */
+ @ApiModelProperty(value = "鐢熶骇璁㈠崟鍙�")
+ private String workOrderNo;
+
+ /**
+ * 鐢熶骇鐘舵�� 1 寰呯‘璁� 2 寰呯敓浜� 3鐢熶骇涓� 4宸茬敓浜�
+ */
+ @ApiModelProperty(value = "鐢熶骇鐘舵�� 1 寰呯‘璁� 2 寰呯敓浜� 3鐢熶骇涓� 4宸茬敓浜�")
+ private String status;
+
+ /**
+ * 绉熸埛id
+ */
+ @ApiModelProperty(value = "绉熸埛id")
+ @TableField(fill = FieldFill.INSERT)
+ private Long tenantId;
+
+ //鍒涘缓鏃堕棿
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ @TableField(fill = FieldFill.INSERT)
+ private LocalDateTime createTime;
+
+ //淇敼鏃堕棿
+ @ApiModelProperty(value = "淇敼鏃堕棿")
+ @TableField(fill = FieldFill.UPDATE)
+ private LocalDateTime updateTime;
+
+}
diff --git a/src/main/java/com/ruoyi/production/service/ProductionProductMainService.java b/src/main/java/com/ruoyi/production/service/ProductionProductMainService.java
index ce10aff..8e1ec9a 100644
--- a/src/main/java/com/ruoyi/production/service/ProductionProductMainService.java
+++ b/src/main/java/com/ruoyi/production/service/ProductionProductMainService.java
@@ -1,7 +1,15 @@
package com.ruoyi.production.service;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.production.dto.ProcessRouteItemDto;
+import com.ruoyi.production.dto.ProductOrderDto;
+import com.ruoyi.production.dto.ProductionProductMainDto;
import com.ruoyi.production.pojo.ProductionProductMain;
+import java.util.List;
+
public interface ProductionProductMainService extends IService<ProductionProductMain> {
+ IPage<ProductionProductMainDto> listPageProductionProductMainDto(Page page, ProductionProductMainDto productionProductMainDto);
}
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
index 5c6c244..2a958ef 100644
--- a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -1,12 +1,29 @@
package com.ruoyi.production.service.impl;
+import com.baomidou.mybatisplus.core.metadata.IPage;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.production.dto.ProcessRouteItemDto;
+import com.ruoyi.production.dto.ProductOrderDto;
+import com.ruoyi.production.dto.ProductionProductMainDto;
+import com.ruoyi.production.mapper.ProcessRouteItemMapper;
import com.ruoyi.production.mapper.ProductionProductMainMapper;
import com.ruoyi.production.pojo.ProductionProductMain;
import com.ruoyi.production.service.ProductionProductMainService;
+import lombok.AllArgsConstructor;
+import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
-@Service
-public class ProductionProductMainServiceImpl extends ServiceImpl<ProductionProductMainMapper, ProductionProductMain> implements ProductionProductMainService {
+import java.util.List;
+@Service
+@AllArgsConstructor
+public class ProductionProductMainServiceImpl extends ServiceImpl<ProductionProductMainMapper, ProductionProductMain> implements ProductionProductMainService {
+ @Autowired
+ private ProductionProductMainMapper productionProductMainMapper;
+
+ @Override
+ public IPage<ProductionProductMainDto> listPageProductionProductMainDto(Page page, ProductionProductMainDto productionProductMainDto) {
+ return productionProductMainMapper.listPageProductionProductMainDto(page, productionProductMainDto);
+ }
}
diff --git a/src/main/resources/mapper/production/ProductionProductMainMapper.xml b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
index 4a6d7c4..24feb0d 100644
--- a/src/main/resources/mapper/production/ProductionProductMainMapper.xml
+++ b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
@@ -2,5 +2,39 @@
"http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.ruoyi.production.mapper.ProductionProductMainMapper">
+ <resultMap id="basicMap" type="com.ruoyi.production.pojo.ProductionProductMain">
+ <id property="id" column="id"/>
+ <result property="productNo" column="product_no"/>
+ <result property="userId" column="user_id"/>
+ <result property="workOrderId" column="work_order_id"/>
+ <result property="tenantId" column="tenant_id"/>
+ <result property="createTime" column="create_time"/>
+ <result property="status" column="status"/>
+ </resultMap>
+ <select id="listPageProductionProductMainDto" resultType="com.ruoyi.production.dto.ProductionProductMainDto">
+ select ppm.*,
+ pwo.work_order_no as workOrderNo,
+ pwo.status as workOrderStatus,
+ u.nick_name as nickName
+ from
+ production_product_main ppm
+ left join product_work_order pwo on pwo.id = ppm.work_order_id
+ left join sys_user u on u.user_id = ppm.user_id
+ <where>
+ <if test="c.nickName != null and c.nickName != ''">
+ and u.nick_name like concat('%',#{c.nickName},'%')
+ </if>
+ <if test="c.workOrderNo != null and c.workOrderNo != ''">
+ and pwo.work_order_no like concat('%',#{c.workOrderNo},'%')
+ </if>
+ <if test="c.workOrderStatus != null and c.workOrderStatus != ''">
+ and pwo.status = #{c.workOrderStatus}
+ </if>
+ <if test="c.status != null and c.status != ''">
+ and ppm.status = #{c.status}
+ </if>
+ </where>
+ order by ppm.id
+ </select>
</mapper>
--
Gitblit v1.9.3