From 810b00c05fb7c9c6099cd8d011718e0ca59162bb Mon Sep 17 00:00:00 2001
From: liyong <18434998025@163.com>
Date: 星期一, 05 一月 2026 13:50:37 +0800
Subject: [PATCH] feat(production): 生产报工
---
src/main/java/com/ruoyi/production/pojo/ProductionProductInput.java | 33 ++++++++
src/main/resources/mapper/production/ProductionProductInputMapper.xml | 6 +
src/main/java/com/ruoyi/production/mapper/ProductionProductOutputMapper.java | 9 ++
src/main/java/com/ruoyi/production/pojo/ProductionProductOutput.java | 33 ++++++++
src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java | 12 +++
src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java | 12 +++
src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java | 24 ++++++
src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java | 8 ++
src/main/java/com/ruoyi/production/service/ProductionProductMainService.java | 7 +
src/main/java/com/ruoyi/production/pojo/ProductionProductMain.java | 35 ++++++++
src/main/resources/mapper/production/ProductionProductOutputMapper.xml | 6 +
src/main/resources/mapper/production/ProductionProductMainMapper.xml | 6 +
src/main/java/com/ruoyi/production/mapper/ProductionProductInputMapper.java | 9 ++
doc/create_table_production_product_main.sql | 36 +++++++++
14 files changed, 236 insertions(+), 0 deletions(-)
diff --git a/doc/create_table_production_product_main.sql b/doc/create_table_production_product_main.sql
new file mode 100644
index 0000000..18fb92d
--- /dev/null
+++ b/doc/create_table_production_product_main.sql
@@ -0,0 +1,36 @@
+drop table if exists production_product_main;
+create table production_product_main
+(
+ id bigint auto_increment
+ primary key,
+ product_no varchar(255) not null comment '鎶ュ伐鍗曞彿',
+ user_id bigint not null comment '鎶ュ伐鐢ㄦ埛id',
+ work_order_id bigint not null comment '宸ュ崟id',
+ status int not null comment '鐘舵�� 0 寰呮姤宸� 1 寰呯‘璁�',
+ create_time datetime null comment '褰曞叆鏃堕棿',
+ tenant_id bigint not null comment '绉熸埛id'
+);
+
+drop table if exists production_product_output;
+create table production_product_output
+(
+ id bigint auto_increment
+ primary key,
+ product_main_id bigint not null comment '鎶ュ伐鍗昳d',
+ product_model_id bigint not null comment '浜у搧id',
+ quantity numeric(16, 4) not null comment '鏁伴噺',
+ create_time datetime null comment '褰曞叆鏃堕棿',
+ tenant_id bigint not null comment '绉熸埛id'
+);
+
+drop table if exists production_product_input;
+create table production_product_input
+(
+ id bigint auto_increment
+ primary key,
+ product_main_id bigint not null comment '鎶ュ伐鍗昳d',
+ product_model_id bigint not null comment '浜у搧id',
+ quantity numeric(16, 4) not null comment '鏁伴噺',
+ create_time datetime null comment '褰曞叆鏃堕棿',
+ tenant_id bigint not null comment '绉熸埛id'
+)
diff --git a/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java b/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java
new file mode 100644
index 0000000..231b143
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/controller/ProductionProductMainController.java
@@ -0,0 +1,24 @@
+package com.ruoyi.production.controller;
+
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.ruoyi.framework.web.domain.R;
+import com.ruoyi.production.dto.ProductionProductMainDto;
+import com.ruoyi.production.pojo.ProductionProductMain;
+import com.ruoyi.production.service.ProductionProductMainService;
+import io.swagger.annotations.Api;
+import org.springframework.web.bind.annotation.GetMapping;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+@RequestMapping("productionProductMain")
+@RestController
+@Api(value = "鐢熶骇鎶ュ伐")
+public class ProductionProductMainController {
+
+ private ProductionProductMainService productionProductMainService;
+
+ @GetMapping("page")
+ public R page(Page<ProductionProductMainDto> page, ProductionProductMainDto productionProductMainDto) {
+ return R.ok();
+ }
+}
diff --git a/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java b/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
new file mode 100644
index 0000000..a7a7a3b
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/dto/ProductionProductMainDto.java
@@ -0,0 +1,8 @@
+package com.ruoyi.production.dto;
+
+import com.ruoyi.production.pojo.ProductionProductMain;
+import lombok.Data;
+
+@Data
+public class ProductionProductMainDto extends ProductionProductMain {
+}
diff --git a/src/main/java/com/ruoyi/production/mapper/ProductionProductInputMapper.java b/src/main/java/com/ruoyi/production/mapper/ProductionProductInputMapper.java
new file mode 100644
index 0000000..dba437c
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/mapper/ProductionProductInputMapper.java
@@ -0,0 +1,9 @@
+package com.ruoyi.production.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.production.pojo.ProductionProductInput;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface ProductionProductInputMapper extends BaseMapper<ProductionProductInput> {
+}
diff --git a/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java b/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
new file mode 100644
index 0000000..f66e1b3
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/mapper/ProductionProductMainMapper.java
@@ -0,0 +1,12 @@
+package com.ruoyi.production.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.production.pojo.ProductionProductMain;
+import org.apache.ibatis.annotations.Mapper;
+
+import javax.annotation.ManagedBean;
+
+@Mapper
+public interface ProductionProductMainMapper extends BaseMapper<ProductionProductMain> {
+
+}
diff --git a/src/main/java/com/ruoyi/production/mapper/ProductionProductOutputMapper.java b/src/main/java/com/ruoyi/production/mapper/ProductionProductOutputMapper.java
new file mode 100644
index 0000000..cdcd121
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/mapper/ProductionProductOutputMapper.java
@@ -0,0 +1,9 @@
+package com.ruoyi.production.mapper;
+
+import com.baomidou.mybatisplus.core.mapper.BaseMapper;
+import com.ruoyi.production.pojo.ProductionProductOutput;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface ProductionProductOutputMapper extends BaseMapper<ProductionProductOutput> {
+}
diff --git a/src/main/java/com/ruoyi/production/pojo/ProductionProductInput.java b/src/main/java/com/ruoyi/production/pojo/ProductionProductInput.java
new file mode 100644
index 0000000..6502a33
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/pojo/ProductionProductInput.java
@@ -0,0 +1,33 @@
+package com.ruoyi.production.pojo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+@Data
+public class ProductionProductInput {
+
+ @TableId
+ private Long id;
+
+ @ApiModelProperty(value = "鎶ュ伐id")
+ private Long productionProductId;
+
+ @ApiModelProperty(value = "浜у搧id")
+ private Long productModelId;
+
+ @ApiModelProperty(value = "鏁伴噺")
+ private BigDecimal quantity;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty(value = "绉熸埛ID")
+ @TableField(fill = FieldFill.INSERT)
+ private Long tenantId;
+}
diff --git a/src/main/java/com/ruoyi/production/pojo/ProductionProductMain.java b/src/main/java/com/ruoyi/production/pojo/ProductionProductMain.java
new file mode 100644
index 0000000..af1a21d
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/pojo/ProductionProductMain.java
@@ -0,0 +1,35 @@
+package com.ruoyi.production.pojo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.time.LocalDateTime;
+
+@Data
+public class ProductionProductMain {
+
+ @TableId
+ private Long id;
+
+ @ApiModelProperty(value = "鎶ュ伐鍗曞彿")
+ private String productNo;
+
+ @ApiModelProperty(value = "鎶ュ伐浜哄憳id")
+ private Long userId;
+
+ @ApiModelProperty(value = "宸ュ崟id")
+ private String workOrderId;
+
+ @ApiModelProperty(value = "鎶ュ伐鐘舵��")
+ private Integer status;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty(value = "绉熸埛ID")
+ @TableField(fill = FieldFill.INSERT)
+ private Long tenantId;
+}
diff --git a/src/main/java/com/ruoyi/production/pojo/ProductionProductOutput.java b/src/main/java/com/ruoyi/production/pojo/ProductionProductOutput.java
new file mode 100644
index 0000000..67e2fde
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/pojo/ProductionProductOutput.java
@@ -0,0 +1,33 @@
+package com.ruoyi.production.pojo;
+
+import com.baomidou.mybatisplus.annotation.FieldFill;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableId;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.math.BigDecimal;
+import java.time.LocalDateTime;
+
+@Data
+public class ProductionProductOutput {
+
+ @TableId
+ private Long id;
+
+ @ApiModelProperty(value = "鎶ュ伐id")
+ private Long productionProductId;
+
+ @ApiModelProperty(value = "浜у搧id")
+ private Long productModelId;
+
+ @ApiModelProperty(value = "鏁伴噺")
+ private BigDecimal quantity;
+
+ @ApiModelProperty(value = "鍒涘缓鏃堕棿")
+ private LocalDateTime createTime;
+
+ @ApiModelProperty(value = "绉熸埛ID")
+ @TableField(fill = FieldFill.INSERT)
+ private Long tenantId;
+}
diff --git a/src/main/java/com/ruoyi/production/service/ProductionProductMainService.java b/src/main/java/com/ruoyi/production/service/ProductionProductMainService.java
new file mode 100644
index 0000000..ce10aff
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/service/ProductionProductMainService.java
@@ -0,0 +1,7 @@
+package com.ruoyi.production.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.ruoyi.production.pojo.ProductionProductMain;
+
+public interface ProductionProductMainService extends IService<ProductionProductMain> {
+}
diff --git a/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
new file mode 100644
index 0000000..5c6c244
--- /dev/null
+++ b/src/main/java/com/ruoyi/production/service/impl/ProductionProductMainServiceImpl.java
@@ -0,0 +1,12 @@
+package com.ruoyi.production.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.ruoyi.production.mapper.ProductionProductMainMapper;
+import com.ruoyi.production.pojo.ProductionProductMain;
+import com.ruoyi.production.service.ProductionProductMainService;
+import org.springframework.stereotype.Service;
+
+@Service
+public class ProductionProductMainServiceImpl extends ServiceImpl<ProductionProductMainMapper, ProductionProductMain> implements ProductionProductMainService {
+
+}
diff --git a/src/main/resources/mapper/production/ProductionProductInputMapper.xml b/src/main/resources/mapper/production/ProductionProductInputMapper.xml
new file mode 100644
index 0000000..bd92aaf
--- /dev/null
+++ b/src/main/resources/mapper/production/ProductionProductInputMapper.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+ "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.production.mapper.ProductionProductInputMapper">
+
+
+</mapper>
diff --git a/src/main/resources/mapper/production/ProductionProductMainMapper.xml b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
new file mode 100644
index 0000000..4a6d7c4
--- /dev/null
+++ b/src/main/resources/mapper/production/ProductionProductMainMapper.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+ "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.production.mapper.ProductionProductMainMapper">
+
+
+</mapper>
diff --git a/src/main/resources/mapper/production/ProductionProductOutputMapper.xml b/src/main/resources/mapper/production/ProductionProductOutputMapper.xml
new file mode 100644
index 0000000..790c100
--- /dev/null
+++ b/src/main/resources/mapper/production/ProductionProductOutputMapper.xml
@@ -0,0 +1,6 @@
+<?xml version="1.0" encoding="UTF-8" ?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
+ "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
+<mapper namespace="com.ruoyi.production.mapper.ProductionProductOutputMapper">
+
+
+</mapper>
--
Gitblit v1.9.3