From 802849a7552d2d51312188c83b91d769fd43b1c1 Mon Sep 17 00:00:00 2001
From: kongdeqiang <123456>
Date: 星期四, 13 三月 2025 11:26:33 +0800
Subject: [PATCH] fix: 代码生成
---
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceBaseModel.java | 37 +
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ContractItemMapper.java | 11
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ContractController.java | 119 ++++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ContractItemServiceImpl.java | 16
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ContractItemService.java | 8
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceDemandTotal.java | 3
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ReceivingNoteController.java | 119 ++++
platformx-device-biz/src/main/resources/mapper/ContractItemMapper.xml | 24
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceDemandSub.java | 3
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ContractItemController.java | 119 ++++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceInventoryController.java | 112 ++++
platformx-device-biz/src/main/resources/mapper/InventoryFlowWaterMapper.xml | 21
platformx-device-biz/src/main/resources/mapper/ReceivingNoteMapper.xml | 21
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ReceivingNote.java | 55 ++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ContractService.java | 15
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteItemServiceImpl.java | 16
platformx-boot/src/main/java/com/by4cloud/platformx/api/feign/RemoteDeptService.java | 15
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/InventoryFlowWaterService.java | 8
platformx-device-biz/src/main/resources/mapper/deviceInventoryMapper.xml | 21
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/InventoryFlowWaterMapper.java | 11
platformx-device-biz/src/main/resources/mapper/ContractMapper.xml | 29 +
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ReceivingNoteItemService.java | 8
platformx-device-api/pom.xml | 8
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java | 15
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ReceivingNoteItemController.java | 119 ++++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteItemMapper.java | 11
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceInventoryServiceImpl.java | 20
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteServiceImpl.java | 16
platformx-boot/src/main/java/com/by4cloud/platformx/api/feign/RemoteUserService.java | 16
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ContractItem.java | 37 +
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/InventoryFlowWaterController.java | 119 ++++
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/InventoryFlowWaterServiceImpl.java | 16
platformx-device-biz/src/main/resources/mapper/ReceivingNoteItemMapper.xml | 19
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/DeviceInventoryMapper.java | 11
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteMapper.java | 11
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ReceivingNoteService.java | 8
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceInventory.java | 48 +
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ContractServiceImpl.java | 68 ++
platformx-boot/src/main/resources/application.yml | 2
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/Contract.java | 107 +++
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/InventoryFlowWater.java | 53 +
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ReceivingNoteItem.java | 50 +
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/DeviceInventoryService.java | 9
platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/Device.java | 29
platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ContractMapper.java | 11
45 files changed, 1,577 insertions(+), 17 deletions(-)
diff --git a/platformx-boot/src/main/java/com/by4cloud/platformx/api/feign/RemoteDeptService.java b/platformx-boot/src/main/java/com/by4cloud/platformx/api/feign/RemoteDeptService.java
new file mode 100644
index 0000000..26af3c7
--- /dev/null
+++ b/platformx-boot/src/main/java/com/by4cloud/platformx/api/feign/RemoteDeptService.java
@@ -0,0 +1,15 @@
+package com.by4cloud.platformx.api.feign;
+
+import com.by4cloud.platformx.common.core.constant.ServiceNameConstants;
+import org.springframework.cloud.openfeign.FeignClient;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName RemoteDeptService.java
+ * @Description TODO
+ * @createTime 2025骞�03鏈�12鏃� 14:12:00
+ */
+@FeignClient(contextId = "remoteDeptService", value = ServiceNameConstants.UPMS_SERVICE,url="${servers.main-url}")
+public interface RemoteDeptService {
+}
diff --git a/platformx-boot/src/main/java/com/by4cloud/platformx/api/feign/RemoteUserService.java b/platformx-boot/src/main/java/com/by4cloud/platformx/api/feign/RemoteUserService.java
new file mode 100644
index 0000000..b267a2e
--- /dev/null
+++ b/platformx-boot/src/main/java/com/by4cloud/platformx/api/feign/RemoteUserService.java
@@ -0,0 +1,16 @@
+package com.by4cloud.platformx.api.feign;
+
+import com.by4cloud.platformx.common.core.constant.ServiceNameConstants;
+import org.springframework.cloud.openfeign.FeignClient;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName RemoteUserService.java
+ * @Description TODO
+ * @createTime 2025骞�03鏈�12鏃� 13:42:00
+ */
+@FeignClient(contextId = "remoteUserService", value = ServiceNameConstants.UPMS_SERVICE,url="${servers.main-url}")
+public interface RemoteUserService {
+
+}
diff --git a/platformx-boot/src/main/resources/application.yml b/platformx-boot/src/main/resources/application.yml
index fc91368..91a918f 100644
--- a/platformx-boot/src/main/resources/application.yml
+++ b/platformx-boot/src/main/resources/application.yml
@@ -2,6 +2,8 @@
port: 8888 # 椤圭洰绔彛
servlet:
context-path: /device # 椤圭洰璁块棶璺緞
+servers:
+ main-url: http://127.0.0.1:9999/admin
spring:
application:
diff --git a/platformx-device-api/pom.xml b/platformx-device-api/pom.xml
index 69b13cb..300a4a2 100644
--- a/platformx-device-api/pom.xml
+++ b/platformx-device-api/pom.xml
@@ -42,5 +42,13 @@
<groupId>com.by4cloud</groupId>
<artifactId>platformx-common-data</artifactId>
</dependency>
+ <dependency>
+ <groupId>com.by4cloud</groupId>
+ <artifactId>platformx-upms-api</artifactId>
+ </dependency>
+ <dependency>
+ <groupId>cn.hutool</groupId>
+ <artifactId>hutool-extra</artifactId>
+ </dependency>
</dependencies>
</project>
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/Contract.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/Contract.java
new file mode 100644
index 0000000..ce772e3
--- /dev/null
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/Contract.java
@@ -0,0 +1,107 @@
+package com.by4cloud.platformx.device.entity;
+
+import com.baomidou.mybatisplus.annotation.FieldStrategy;
+import com.baomidou.mybatisplus.annotation.TableField;
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.hibernate.annotations.Table;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import javax.persistence.Transient;
+import java.util.Date;
+import java.util.List;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName Contract.java
+ * @Description TODO
+ * @createTime 2025骞�03鏈�13鏃� 09:07:00
+ */
+@Data
+@Entity
+@TableName("contract")
+@javax.persistence.Table(name = "contract")
+@Table(appliesTo = "contract", comment = "鍚堝悓琛�")
+public class Contract extends BaseModel<Contract> {
+
+ @Schema(description = "鍚嶇О")
+ @Column(columnDefinition="VARCHAR(200) comment '鍚嶇О'")
+ private String name;
+ @Schema(description = "缂栧彿")
+ @Column(columnDefinition="VARCHAR(200) comment '缂栧彿'")
+ private String number;
+
+ @Schema(description = "鐢叉柟")
+ @Column(columnDefinition="VARCHAR(50) comment '鐢叉柟'")
+ private String partya;
+
+ @Schema(description = "涔欐柟")
+ @Column(columnDefinition="VARCHAR(50) comment '涔欐柟'")
+ private String partyb;
+
+ @Schema(description = "涓夋柟")
+ @Column(columnDefinition="VARCHAR(50) comment '涓夋柟'")
+ private String partyc;
+
+ /**
+ * 鍚堝悓閲戦
+ */
+ @Column(columnDefinition="double comment '鍚堝悓閲戦'")
+ private Double output;
+
+ /**
+ * 鎬婚噺
+ */
+ @Column(columnDefinition="double comment '鎬婚噺'")
+ private Double countExecutive;
+
+ /**
+ * 鎵ц閲�
+ */
+ @Column(columnDefinition="double comment '鎵ц閲�'")
+ private Double executive;
+
+ /**
+ * 鍚堝悓鏉℃
+ */
+ @TableField(updateStrategy = FieldStrategy.NOT_NULL)
+ @Column(columnDefinition="varchar(500) comment '鍚堝悓鏉℃'")
+ private String content;
+
+ /**
+ *
+ */
+ @TableField(updateStrategy = FieldStrategy.NOT_NULL)
+ @Column(columnDefinition="varchar(2000) comment '鏂囦欢鍚嶇О'")
+ private String fileName;
+
+ @TableField(updateStrategy = FieldStrategy.NOT_NULL)
+ @Column(columnDefinition="varchar(2000) comment '鏂囦欢鍦板潃'")
+ private String filePath;
+
+ @Schema(description = "绫诲瀷")
+ @Column(columnDefinition="int comment '绫诲瀷 0绉熻祦鍚堝悓锛�1璐拱鍚堝悓锛�2鎵跨鍚堝悓'")
+ private Integer type;
+
+ @Schema(description = "鐘舵��")
+ @Column(columnDefinition="int comment '绫诲瀷 0寰呭鎵癸紝1宸插鎵癸紝2瀹岀粨'")
+ private Integer status;
+
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Schema(description = "濉姤鏃堕棿")
+ @Column(columnDefinition = "datetime comment '濉姤鏃堕棿'")
+ private Date releaseDate;
+ @Transient
+ @TableField(exist = false)
+ private List<ContractItem> contractItemList;
+
+
+
+}
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ContractItem.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ContractItem.java
new file mode 100644
index 0000000..3221398
--- /dev/null
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ContractItem.java
@@ -0,0 +1,37 @@
+package com.by4cloud.platformx.device.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.hibernate.annotations.Table;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName ContractItem.java
+ * @Description TODO
+ * @createTime 2025骞�03鏈�13鏃� 09:42:00
+ */
+@Data
+@Entity
+@TableName("contract_item")
+@javax.persistence.Table(name = "contract_item")
+@Table(appliesTo = "contract_item", comment = "鍚堝悓鏄庣粏琛�")
+public class ContractItem extends DeviceBaseModel<ContractItem> {
+
+ /**
+ * 鍚堝悓Id
+ */
+ @Column(columnDefinition="long comment '鍚堝悓Id'")
+ private Long contractId;
+
+ @Schema(description = "璁惧ID")
+ @Column(columnDefinition="long comment '璁惧ID'")
+ private Long deviceId;
+
+
+}
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/Device.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/Device.java
index c54c664..26dc966 100644
--- a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/Device.java
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/Device.java
@@ -1,7 +1,11 @@
package com.by4cloud.platformx.device.entity;
+import cn.hutool.extra.spring.SpringUtil;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
+import com.baomidou.mybatisplus.core.toolkit.StringUtils;
+import com.by4cloud.platformx.admin.api.utils.UpmsCacheUtil;
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
@@ -25,7 +29,7 @@
@TableName("device")
@javax.persistence.Table(name = "device")
@Table(appliesTo = "device", comment = "鍑虹璁惧娓呭崟琛�")
-public class Device extends DeviceBaseModel<Device>{
+public class Device extends BaseModel<Device> {
@Schema(description = "鍒嗙被ID")
@Column(columnDefinition="long comment '鍒嗙被ID'")
private Long classId;
@@ -71,8 +75,25 @@
@Column(columnDefinition="int comment '搴撳瓨鏁�'")
private Integer num;
- @Transient
- @TableField(exist = false)
- private String reqCompName;
+ @Column(
+ columnDefinition = "varchar(100) comment '鍚嶇О'"
+ )
+ private String name;
+ @Column(
+ columnDefinition = "varchar(200) comment '瑙勬牸鍨嬪彿'"
+ )
+ private String specification;
+ @Column(
+ columnDefinition = "int comment '鍒拌揣鏈堜唤'"
+ )
+ private Integer month;
+ @Column(
+ columnDefinition = "varchar(20) comment '鍗曚綅'"
+ )
+ private String unit;
+ @Column(
+ columnDefinition = "double(10,2) comment '鍗曚环'"
+ )
+ private Double price;
}
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceBaseModel.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceBaseModel.java
index 43d265b..0eeecc5 100644
--- a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceBaseModel.java
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceBaseModel.java
@@ -1,13 +1,17 @@
package com.by4cloud.platformx.device.entity;
+import cn.hutool.core.util.StrUtil;
+import cn.hutool.extra.spring.SpringUtil;
import com.baomidou.mybatisplus.annotation.*;
import com.baomidou.mybatisplus.extension.activerecord.Model;
+import com.by4cloud.platformx.admin.api.utils.UpmsCacheUtil;
import com.by4cloud.platformx.common.data.mybatis.BaseModel;
import io.swagger.v3.oas.annotations.media.Schema;
import javax.persistence.Column;
import javax.persistence.Id;
import javax.persistence.MappedSuperclass;
+import javax.persistence.Transient;
import java.time.LocalDateTime;
/**
@@ -74,6 +78,21 @@
columnDefinition = "char(1) default '0'"
)
private String delFlag = "0";
+ @Schema(
+ description = "鍗曚綅id"
+ )
+ @TableField(
+ fill = FieldFill.INSERT
+ )
+ private Long compId;
+ @Transient
+ @TableField(
+ exist = false
+ )
+ @Schema(
+ description = "鍗曚綅鍚嶇О"
+ )
+ private String compName;
@Column(
columnDefinition = "varchar(100) comment '鍚嶇О'"
)
@@ -98,6 +117,14 @@
columnDefinition = "double(10,2) comment '鍗曚环'"
)
private Double price;
+ public String getCompName() {
+ if (StrUtil.isEmpty(this.compName)) {
+ UpmsCacheUtil upmsCacheUtil = (UpmsCacheUtil) SpringUtil.getBean(UpmsCacheUtil.class);
+ this.compName = upmsCacheUtil.getCompNameById(this.compId);
+ }
+
+ return this.compName;
+ }
public String getName() {
return name;
@@ -146,7 +173,15 @@
public void setPrice(Double price) {
this.price = price;
}
-
+ public void setCompId(final Long compId) {
+ this.compId = compId;
+ }
+ public Long getCompId() {
+ return this.compId;
+ }
+ public void setCompName(final String compName) {
+ this.compName = compName;
+ }
public Double getAmount() {
return amount;
}
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceDemandSub.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceDemandSub.java
index b8d9e35..e74e3ef 100644
--- a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceDemandSub.java
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceDemandSub.java
@@ -27,9 +27,6 @@
@Schema(description = "鎷熶娇鐢ㄥ湴鐐�")
@Column(columnDefinition="VARCHAR(64) comment '鎷熶娇鐢ㄥ湴鐐�'")
private String place;
- @Schema(description = "浣跨敤鍏徃")
- @Column(columnDefinition="int comment '浣跨敤鍏徃'")
- private Integer compId;
@Schema(description = "鐢宠閮ㄩ棬")
@Column(columnDefinition="int comment '鐢宠閮ㄩ棬'")
private Integer deptId;
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceDemandTotal.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceDemandTotal.java
index d6ce6c3..7d562bc 100644
--- a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceDemandTotal.java
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceDemandTotal.java
@@ -24,9 +24,6 @@
@Schema(description = "鎷熶娇鐢ㄥ湴鐐�")
@Column(columnDefinition="VARCHAR(64) comment '鎷熶娇鐢ㄥ湴鐐�'")
private String place;
- @Schema(description = "浣跨敤鍏徃")
- @Column(columnDefinition="int comment '浣跨敤鍏徃'")
- private Integer compId;
@Schema(description = "鐢宠閮ㄩ棬")
@Column(columnDefinition="int comment '鐢宠閮ㄩ棬'")
private Integer deptId;
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceInventory.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceInventory.java
new file mode 100644
index 0000000..267fc3b
--- /dev/null
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/DeviceInventory.java
@@ -0,0 +1,48 @@
+package com.by4cloud.platformx.device.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.hibernate.annotations.Table;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName DeviceInventory.java
+ * @Description TODO
+ * @createTime 2025骞�03鏈�13鏃� 08:23:00
+ */
+@Data
+@Entity
+@TableName("device_inventory")
+@javax.persistence.Table(name = "device_inventory")
+@Table(appliesTo = "device_inventory", comment = "鍑虹璁惧搴撳瓨琛�")
+public class DeviceInventory extends BaseModel<DeviceInventory> {
+
+ @Schema(description = "璁惧缂栫爜")
+ @Column(columnDefinition="VARCHAR(64) comment '璁惧缂栫爜'")
+ private String deviceNumber;
+
+ @Schema(description = "搴忓垪鍙�")
+ @Column(columnDefinition="VARCHAR(64) comment '搴忓垪鍙�'")
+ private String serialNo;
+
+ @Schema(description = "璁惧ID")
+ @Column(columnDefinition="long comment '璁惧ID'")
+ private Long deviceId;
+
+ @Column(
+ columnDefinition = "varchar(100) comment '鍚嶇О'"
+ )
+ private String name;
+
+ @Schema(description = "鏉ユ簮")
+ @Column(columnDefinition="int comment '鏉ユ簮 0浠撳簱 1璐拱 2瀛愬崟浣嶉棽缃�'")
+ private Integer source;
+
+
+}
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/InventoryFlowWater.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/InventoryFlowWater.java
new file mode 100644
index 0000000..3102bb6
--- /dev/null
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/InventoryFlowWater.java
@@ -0,0 +1,53 @@
+package com.by4cloud.platformx.device.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.hibernate.annotations.Table;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName InventoryFlowWater.java
+ * @Description TODO
+ * @createTime 2025骞�03鏈�13鏃� 08:40:00
+ */
+@Data
+@Entity
+@TableName("inventory_flow_water")
+@javax.persistence.Table(name = "inventory_flow_water")
+@Table(appliesTo = "inventory_flow_water", comment = "搴撳瓨娴佹按琛�")
+public class InventoryFlowWater extends BaseModel<InventoryFlowWater> {
+
+ @Schema(description = "鍒嗙被ID")
+ @Column(columnDefinition="long comment '鍒嗙被ID'")
+ private Long classId;
+
+ @Schema(description = "璁惧ID")
+ @Column(columnDefinition="long comment '璁惧ID'")
+ private Long deviceId;
+
+ @Schema(description = "璁″垝id")
+ @Column(columnDefinition="long comment '璁″垝id'")
+ private Long planId;
+
+ @Schema(description = "搴撳瓨ID")
+ @Column(columnDefinition="long comment '搴撳瓨ID'")
+ private Long inventoryId;
+
+ @Schema(description = "鏁伴噺")
+ @Column(columnDefinition="long comment '鏁伴噺'")
+ private Long num;
+
+ @Schema(description = "澶囨敞")
+ @Column(columnDefinition="VARCHAR(200) comment '澶囨敞'")
+ private String remark;
+
+
+
+
+}
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ReceivingNote.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ReceivingNote.java
new file mode 100644
index 0000000..c96a2df
--- /dev/null
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ReceivingNote.java
@@ -0,0 +1,55 @@
+package com.by4cloud.platformx.device.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.hibernate.annotations.Table;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import java.util.Date;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName ReceivingNote.java
+ * @Description TODO
+ * @createTime 2025骞�03鏈�13鏃� 09:51:00
+ */
+@Data
+@Entity
+@TableName("receiving_note")
+@javax.persistence.Table(name = "receiving_note")
+@Table(appliesTo = "receiving_note", comment = "楠屾敹琛�")
+public class ReceivingNote extends BaseModel<ReceivingNote> {
+ /**
+ * 鍚堝悓Id
+ */
+ @Column(columnDefinition="long comment '鍚堝悓Id'")
+ private Long contractId;
+ @Schema(description = "楠屾敹鍏徃")
+ @Column(columnDefinition="VARCHAR(64) comment '楠屾敹鍏徃'")
+ private String releaseCompName;
+ @Schema(description = "楠屾敹浜�")
+ @Column(columnDefinition="VARCHAR(64) comment '楠屾敹浜�'")
+ private String releasePerson;
+ @DateTimeFormat(pattern = "yyyy-MM-dd")
+ @JsonFormat(pattern = "yyyy-MM-dd")
+ @Schema(description = "楠屾敹鏃堕棿")
+ @Column(columnDefinition = "datetime comment '楠屾敹鏃堕棿'")
+ private Date releaseDate;
+ @Schema(description = "鎬绘暟")
+ @Column(columnDefinition="long comment '鎬绘暟'")
+ private Long count;
+ /**
+ * 鎬婚噾棰�
+ */
+ @Column(columnDefinition="double comment '鎬婚噾棰�'")
+ private Double output;
+
+
+
+}
diff --git a/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ReceivingNoteItem.java b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ReceivingNoteItem.java
new file mode 100644
index 0000000..0aea09c
--- /dev/null
+++ b/platformx-device-api/src/main/java/com/by4cloud/platformx/device/entity/ReceivingNoteItem.java
@@ -0,0 +1,50 @@
+package com.by4cloud.platformx.device.entity;
+
+import com.baomidou.mybatisplus.annotation.TableName;
+import com.by4cloud.platformx.common.data.mybatis.BaseModel;
+import com.fasterxml.jackson.annotation.JsonFormat;
+import io.swagger.v3.oas.annotations.media.Schema;
+import lombok.Data;
+import org.hibernate.annotations.Table;
+import org.springframework.format.annotation.DateTimeFormat;
+
+import javax.persistence.Column;
+import javax.persistence.Entity;
+import java.util.Date;
+
+/**
+ * @author kdq
+ * @version 1.0.0
+ * @ClassName ReceivingNote.java
+ * @Description TODO
+ * @createTime 2025骞�03鏈�13鏃� 09:51:00
+ */
+@Data
+@Entity
+@TableName("receiving_note_item")
+@javax.persistence.Table(name = "receiving_note_item")
+@Table(appliesTo = "receiving_note_item", comment = "楠屾敹瀛愰」琛�")
+public class ReceivingNoteItem extends BaseModel<ReceivingNoteItem> {
+ /**
+ * 楠屾敹涓昏〃Id
+ */
+ @Column(columnDefinition="long comment '楠屾敹涓昏〃Id'")
+ private Long noteId;
+ /**
+ * 鍚堝悓Id
+ */
+ @Column(columnDefinition="long comment '鍚堝悓瀛愰」Id'")
+ private Long contractItemId;
+
+ @Schema(description = "鏁伴噺")
+ @Column(columnDefinition="long comment '鏁伴噺'")
+ private Long num;
+ /**
+ * 楠屾敹閲戦
+ */
+ @Column(columnDefinition="double comment '楠屾敹閲戦'")
+ private Double output;
+
+
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ContractController.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ContractController.java
new file mode 100644
index 0000000..b75ded5
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ContractController.java
@@ -0,0 +1,119 @@
+package com.by4cloud.platformx.device.controller;
+
+import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.log.annotation.SysLog;
+import com.by4cloud.platformx.device.entity.Contract;
+import com.by4cloud.platformx.device.service.ContractService;
+import org.springframework.security.access.prepost.PreAuthorize;
+import com.by4cloud.platformx.common.excel.annotation.ResponseExcel;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import org.springdoc.api.annotations.ParameterObject;
+import org.springframework.http.HttpHeaders;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 鍚堝悓琛�
+ *
+ * @author pig
+ * @date 2025-03-13 10:20:35
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/contract" )
+@Tag(description = "contract" , name = "鍚堝悓琛ㄧ鐞�" )
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
+public class ContractController {
+
+ private final ContractService contractService;
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ * @param page 鍒嗛〉瀵硅薄
+ * @param contract 鍚堝悓琛�
+ * @return
+ */
+ @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
+ @GetMapping("/page" )
+ @PreAuthorize("@pms.hasPermission('platformx_contract_view')" )
+ public R getContractPage(@ParameterObject Page page, @ParameterObject Contract contract) {
+ LambdaQueryWrapper<Contract> wrapper = Wrappers.lambdaQuery();
+ return R.ok(contractService.page(page, wrapper));
+ }
+
+
+ /**
+ * 閫氳繃id鏌ヨ鍚堝悓琛�
+ * @param id id
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鏌ヨ" , description = "閫氳繃id鏌ヨ" )
+ @GetMapping("/{id}" )
+ @PreAuthorize("@pms.hasPermission('platformx_contract_view')" )
+ public R getById(@PathVariable("id" ) Long id) {
+ return R.ok(contractService.getById(id));
+ }
+
+ /**
+ * 鏂板鍚堝悓琛�
+ * @param contract 鍚堝悓琛�
+ * @return R
+ */
+ @Operation(summary = "鏂板鍚堝悓琛�" , description = "鏂板鍚堝悓琛�" )
+ @SysLog("鏂板鍚堝悓琛�" )
+ @PostMapping
+ @PreAuthorize("@pms.hasPermission('platformx_contract_add')" )
+ public R save(@RequestBody Contract contract) {
+ return R.ok(contractService.save(contract));
+ }
+
+ /**
+ * 淇敼鍚堝悓琛�
+ * @param contract 鍚堝悓琛�
+ * @return R
+ */
+ @Operation(summary = "淇敼鍚堝悓琛�" , description = "淇敼鍚堝悓琛�" )
+ @SysLog("淇敼鍚堝悓琛�" )
+ @PutMapping
+ @PreAuthorize("@pms.hasPermission('platformx_contract_edit')" )
+ public R updateById(@RequestBody Contract contract) {
+ return R.ok(contractService.updateById(contract));
+ }
+
+ /**
+ * 閫氳繃id鍒犻櫎鍚堝悓琛�
+ * @param ids id鍒楄〃
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鍒犻櫎鍚堝悓琛�" , description = "閫氳繃id鍒犻櫎鍚堝悓琛�" )
+ @SysLog("閫氳繃id鍒犻櫎鍚堝悓琛�" )
+ @DeleteMapping
+ @PreAuthorize("@pms.hasPermission('platformx_contract_del')" )
+ public R removeById(@RequestBody Long[] ids) {
+ return R.ok(contractService.removeBatchByIds(CollUtil.toList(ids)));
+ }
+
+
+ /**
+ * 瀵煎嚭excel 琛ㄦ牸
+ * @param contract 鏌ヨ鏉′欢
+ * @param ids 瀵煎嚭鎸囧畾ID
+ * @return excel 鏂囦欢娴�
+ */
+ @ResponseExcel
+ @GetMapping("/export")
+ @PreAuthorize("@pms.hasPermission('platformx_contract_export')" )
+ public List<Contract> export(Contract contract,Long[] ids) {
+ return contractService.list(Wrappers.lambdaQuery(contract).in(ArrayUtil.isNotEmpty(ids), Contract::getId, ids));
+ }
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ContractItemController.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ContractItemController.java
new file mode 100644
index 0000000..8a31ce0
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ContractItemController.java
@@ -0,0 +1,119 @@
+package com.by4cloud.platformx.device.controller;
+
+import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.log.annotation.SysLog;
+import com.by4cloud.platformx.device.entity.ContractItem;
+import com.by4cloud.platformx.device.service.ContractItemService;
+import org.springframework.security.access.prepost.PreAuthorize;
+import com.by4cloud.platformx.common.excel.annotation.ResponseExcel;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import org.springdoc.api.annotations.ParameterObject;
+import org.springframework.http.HttpHeaders;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 鍚堝悓鏄庣粏琛�
+ *
+ * @author pig
+ * @date 2025-03-13 10:48:44
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/contractItem" )
+@Tag(description = "contractItem" , name = "鍚堝悓鏄庣粏琛ㄧ鐞�" )
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
+public class ContractItemController {
+
+ private final ContractItemService contractItemService;
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ * @param page 鍒嗛〉瀵硅薄
+ * @param contractItem 鍚堝悓鏄庣粏琛�
+ * @return
+ */
+ @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
+ @GetMapping("/page" )
+ @PreAuthorize("@pms.hasPermission('platformx_contractItem_view')" )
+ public R getContractItemPage(@ParameterObject Page page, @ParameterObject ContractItem contractItem) {
+ LambdaQueryWrapper<ContractItem> wrapper = Wrappers.lambdaQuery();
+ return R.ok(contractItemService.page(page, wrapper));
+ }
+
+
+ /**
+ * 閫氳繃id鏌ヨ鍚堝悓鏄庣粏琛�
+ * @param id id
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鏌ヨ" , description = "閫氳繃id鏌ヨ" )
+ @GetMapping("/{id}" )
+ @PreAuthorize("@pms.hasPermission('platformx_contractItem_view')" )
+ public R getById(@PathVariable("id" ) Long id) {
+ return R.ok(contractItemService.getById(id));
+ }
+
+ /**
+ * 鏂板鍚堝悓鏄庣粏琛�
+ * @param contractItem 鍚堝悓鏄庣粏琛�
+ * @return R
+ */
+ @Operation(summary = "鏂板鍚堝悓鏄庣粏琛�" , description = "鏂板鍚堝悓鏄庣粏琛�" )
+ @SysLog("鏂板鍚堝悓鏄庣粏琛�" )
+ @PostMapping
+ @PreAuthorize("@pms.hasPermission('platformx_contractItem_add')" )
+ public R save(@RequestBody ContractItem contractItem) {
+ return R.ok(contractItemService.save(contractItem));
+ }
+
+ /**
+ * 淇敼鍚堝悓鏄庣粏琛�
+ * @param contractItem 鍚堝悓鏄庣粏琛�
+ * @return R
+ */
+ @Operation(summary = "淇敼鍚堝悓鏄庣粏琛�" , description = "淇敼鍚堝悓鏄庣粏琛�" )
+ @SysLog("淇敼鍚堝悓鏄庣粏琛�" )
+ @PutMapping
+ @PreAuthorize("@pms.hasPermission('platformx_contractItem_edit')" )
+ public R updateById(@RequestBody ContractItem contractItem) {
+ return R.ok(contractItemService.updateById(contractItem));
+ }
+
+ /**
+ * 閫氳繃id鍒犻櫎鍚堝悓鏄庣粏琛�
+ * @param ids id鍒楄〃
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鍒犻櫎鍚堝悓鏄庣粏琛�" , description = "閫氳繃id鍒犻櫎鍚堝悓鏄庣粏琛�" )
+ @SysLog("閫氳繃id鍒犻櫎鍚堝悓鏄庣粏琛�" )
+ @DeleteMapping
+ @PreAuthorize("@pms.hasPermission('platformx_contractItem_del')" )
+ public R removeById(@RequestBody Long[] ids) {
+ return R.ok(contractItemService.removeBatchByIds(CollUtil.toList(ids)));
+ }
+
+
+ /**
+ * 瀵煎嚭excel 琛ㄦ牸
+ * @param contractItem 鏌ヨ鏉′欢
+ * @param ids 瀵煎嚭鎸囧畾ID
+ * @return excel 鏂囦欢娴�
+ */
+ @ResponseExcel
+ @GetMapping("/export")
+ @PreAuthorize("@pms.hasPermission('platformx_contractItem_export')" )
+ public List<ContractItem> export(ContractItem contractItem,Long[] ids) {
+ return contractItemService.list(Wrappers.lambdaQuery(contractItem).in(ArrayUtil.isNotEmpty(ids), ContractItem::getId, ids));
+ }
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java
index e69afb0..8727174 100644
--- a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceController.java
@@ -6,8 +6,10 @@
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.admin.api.entity.SysDeptRelation;
import com.by4cloud.platformx.common.core.util.R;
import com.by4cloud.platformx.common.log.annotation.SysLog;
+import com.by4cloud.platformx.common.security.util.SecurityUtils;
import com.by4cloud.platformx.device.entity.Device;
import com.by4cloud.platformx.device.service.DeviceService;
import org.springframework.security.access.prepost.PreAuthorize;
@@ -86,15 +88,13 @@
/**
* 瀹℃壒閫氳繃
- * @param id id
* @return R
*/
@Operation(summary = "瀹℃壒閫氳繃" , description = "瀹℃壒閫氳繃" )
- @GetMapping("/pass/{id}" )
- public R passById(@PathVariable("id" ) Long id) {
- Device byId = deviceService.getById(id);
- byId.setReqStatus(1);
- deviceService.updateById(byId);
+ @PostMapping("/pass" )
+ public R passById(@RequestBody Device device) {
+ device.setReqStatus(1);
+ deviceService.updateById(device);
return R.ok();
}
/**
@@ -121,6 +121,9 @@
@PostMapping
@PreAuthorize("@pms.hasPermission('platformx_device_add')" )
public R save(@RequestBody Device device) {
+ if(device.getReqStatus() == 0){
+ device.setReqCompId(SecurityUtils.getUser().getDeptId());
+ }
return R.ok(deviceService.save(device));
}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceInventoryController.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceInventoryController.java
new file mode 100644
index 0000000..0856eae
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/DeviceInventoryController.java
@@ -0,0 +1,112 @@
+package com.by4cloud.platformx.device.controller;
+
+import cn.hutool.core.collection.CollUtil;
+import cn.hutool.core.util.ArrayUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.excel.annotation.ResponseExcel;
+import com.by4cloud.platformx.common.log.annotation.SysLog;
+import com.by4cloud.platformx.device.entity.DeviceInventory;
+import com.by4cloud.platformx.device.service.DeviceInventoryService;
+import io.swagger.v3.oas.annotations.Operation;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import lombok.RequiredArgsConstructor;
+import org.springdoc.api.annotations.ParameterObject;
+import org.springframework.http.HttpHeaders;
+import org.springframework.security.access.prepost.PreAuthorize;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+
+/**
+ * 搴撳瓨琛�
+ *
+ * @author pig
+ * @date 2025-03-13 10:22:39
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/deviceInventory" )
+@Tag(description = "deviceInventory" , name = "搴撳瓨琛ㄧ鐞�" )
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
+public class DeviceInventoryController {
+
+ private final DeviceInventoryService DeviceInventoryService;
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ * @param page 鍒嗛〉瀵硅薄
+ * @param deviceInventory 搴撳瓨琛�
+ * @return
+ */
+ @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
+ @GetMapping("/page" )
+ public R getDeviceInventoryPage(@ParameterObject Page page, @ParameterObject DeviceInventory deviceInventory) {
+ LambdaQueryWrapper<DeviceInventory> wrapper = Wrappers.lambdaQuery();
+ return R.ok(DeviceInventoryService.page(page, wrapper));
+ }
+
+
+ /**
+ * 閫氳繃id鏌ヨ搴撳瓨娴佹按琛�
+ * @param id id
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鏌ヨ" , description = "閫氳繃id鏌ヨ" )
+ @GetMapping("/{id}" )
+ public R getById(@PathVariable("id" ) Long id) {
+ return R.ok(DeviceInventoryService.getById(id));
+ }
+
+ /**
+ * 鏂板搴撳瓨娴佹按琛�
+ * @param DeviceInventory 搴撳瓨琛�
+ * @return R
+ */
+ @Operation(summary = "鏂板搴撳瓨琛�" , description = "鏂板搴撳瓨琛�" )
+ @SysLog("鏂板搴撳瓨娴佹按琛�" )
+ @PostMapping
+ public R save(@RequestBody DeviceInventory DeviceInventory) {
+ return R.ok(DeviceInventoryService.save(DeviceInventory));
+ }
+
+ /**
+ * 淇敼搴撳瓨琛�
+ * @param DeviceInventory 搴撳瓨琛�
+ * @return R
+ */
+ @SysLog("淇敼搴撳瓨琛�" )
+ @PutMapping
+ public R updateById(@RequestBody DeviceInventory DeviceInventory) {
+ return R.ok(DeviceInventoryService.updateById(DeviceInventory));
+ }
+
+ /**
+ * 閫氳繃id鍒犻櫎搴撳瓨娴佹按琛�
+ * @param ids id鍒楄〃
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鍒犻櫎搴撳瓨琛�" , description = "閫氳繃id鍒犻櫎搴撳瓨琛�" )
+ @SysLog("閫氳繃id鍒犻櫎搴撳瓨娴佹按琛�" )
+ @DeleteMapping
+ public R removeById(@RequestBody Long[] ids) {
+ return R.ok(DeviceInventoryService.removeBatchByIds(CollUtil.toList(ids)));
+ }
+
+
+ /**
+ * 瀵煎嚭excel 琛ㄦ牸
+ * @param deviceInventory 鏌ヨ鏉′欢
+ * @param ids 瀵煎嚭鎸囧畾ID
+ * @return excel 鏂囦欢娴�
+ */
+ @ResponseExcel
+ @GetMapping("/export")
+ @PreAuthorize("@pms.hasPermission('platformx_DeviceInventory_export')" )
+ public List<DeviceInventory> export(DeviceInventory deviceInventory,Long[] ids) {
+ return DeviceInventoryService.list(Wrappers.lambdaQuery(deviceInventory).in(ArrayUtil.isNotEmpty(ids), DeviceInventory::getId, ids));
+ }
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/InventoryFlowWaterController.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/InventoryFlowWaterController.java
new file mode 100644
index 0000000..9583c9a
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/InventoryFlowWaterController.java
@@ -0,0 +1,119 @@
+package com.by4cloud.platformx.device.controller;
+
+import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.log.annotation.SysLog;
+import com.by4cloud.platformx.device.entity.InventoryFlowWater;
+import com.by4cloud.platformx.device.service.InventoryFlowWaterService;
+import org.springframework.security.access.prepost.PreAuthorize;
+import com.by4cloud.platformx.common.excel.annotation.ResponseExcel;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import org.springdoc.api.annotations.ParameterObject;
+import org.springframework.http.HttpHeaders;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 搴撳瓨娴佹按琛�
+ *
+ * @author pig
+ * @date 2025-03-13 10:22:39
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/inventoryFlowWater" )
+@Tag(description = "inventoryFlowWater" , name = "搴撳瓨娴佹按琛ㄧ鐞�" )
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
+public class InventoryFlowWaterController {
+
+ private final InventoryFlowWaterService inventoryFlowWaterService;
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ * @param page 鍒嗛〉瀵硅薄
+ * @param inventoryFlowWater 搴撳瓨娴佹按琛�
+ * @return
+ */
+ @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
+ @GetMapping("/page" )
+ @PreAuthorize("@pms.hasPermission('platformx_inventoryFlowWater_view')" )
+ public R getInventoryFlowWaterPage(@ParameterObject Page page, @ParameterObject InventoryFlowWater inventoryFlowWater) {
+ LambdaQueryWrapper<InventoryFlowWater> wrapper = Wrappers.lambdaQuery();
+ return R.ok(inventoryFlowWaterService.page(page, wrapper));
+ }
+
+
+ /**
+ * 閫氳繃id鏌ヨ搴撳瓨娴佹按琛�
+ * @param id id
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鏌ヨ" , description = "閫氳繃id鏌ヨ" )
+ @GetMapping("/{id}" )
+ @PreAuthorize("@pms.hasPermission('platformx_inventoryFlowWater_view')" )
+ public R getById(@PathVariable("id" ) Long id) {
+ return R.ok(inventoryFlowWaterService.getById(id));
+ }
+
+ /**
+ * 鏂板搴撳瓨娴佹按琛�
+ * @param inventoryFlowWater 搴撳瓨娴佹按琛�
+ * @return R
+ */
+ @Operation(summary = "鏂板搴撳瓨娴佹按琛�" , description = "鏂板搴撳瓨娴佹按琛�" )
+ @SysLog("鏂板搴撳瓨娴佹按琛�" )
+ @PostMapping
+ @PreAuthorize("@pms.hasPermission('platformx_inventoryFlowWater_add')" )
+ public R save(@RequestBody InventoryFlowWater inventoryFlowWater) {
+ return R.ok(inventoryFlowWaterService.save(inventoryFlowWater));
+ }
+
+ /**
+ * 淇敼搴撳瓨娴佹按琛�
+ * @param inventoryFlowWater 搴撳瓨娴佹按琛�
+ * @return R
+ */
+ @Operation(summary = "淇敼搴撳瓨娴佹按琛�" , description = "淇敼搴撳瓨娴佹按琛�" )
+ @SysLog("淇敼搴撳瓨娴佹按琛�" )
+ @PutMapping
+ @PreAuthorize("@pms.hasPermission('platformx_inventoryFlowWater_edit')" )
+ public R updateById(@RequestBody InventoryFlowWater inventoryFlowWater) {
+ return R.ok(inventoryFlowWaterService.updateById(inventoryFlowWater));
+ }
+
+ /**
+ * 閫氳繃id鍒犻櫎搴撳瓨娴佹按琛�
+ * @param ids id鍒楄〃
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鍒犻櫎搴撳瓨娴佹按琛�" , description = "閫氳繃id鍒犻櫎搴撳瓨娴佹按琛�" )
+ @SysLog("閫氳繃id鍒犻櫎搴撳瓨娴佹按琛�" )
+ @DeleteMapping
+ @PreAuthorize("@pms.hasPermission('platformx_inventoryFlowWater_del')" )
+ public R removeById(@RequestBody Long[] ids) {
+ return R.ok(inventoryFlowWaterService.removeBatchByIds(CollUtil.toList(ids)));
+ }
+
+
+ /**
+ * 瀵煎嚭excel 琛ㄦ牸
+ * @param inventoryFlowWater 鏌ヨ鏉′欢
+ * @param ids 瀵煎嚭鎸囧畾ID
+ * @return excel 鏂囦欢娴�
+ */
+ @ResponseExcel
+ @GetMapping("/export")
+ @PreAuthorize("@pms.hasPermission('platformx_inventoryFlowWater_export')" )
+ public List<InventoryFlowWater> export(InventoryFlowWater inventoryFlowWater,Long[] ids) {
+ return inventoryFlowWaterService.list(Wrappers.lambdaQuery(inventoryFlowWater).in(ArrayUtil.isNotEmpty(ids), InventoryFlowWater::getId, ids));
+ }
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ReceivingNoteController.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ReceivingNoteController.java
new file mode 100644
index 0000000..c6e4689
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ReceivingNoteController.java
@@ -0,0 +1,119 @@
+package com.by4cloud.platformx.device.controller;
+
+import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.log.annotation.SysLog;
+import com.by4cloud.platformx.device.entity.ReceivingNote;
+import com.by4cloud.platformx.device.service.ReceivingNoteService;
+import org.springframework.security.access.prepost.PreAuthorize;
+import com.by4cloud.platformx.common.excel.annotation.ResponseExcel;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import org.springdoc.api.annotations.ParameterObject;
+import org.springframework.http.HttpHeaders;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 楠屾敹琛�
+ *
+ * @author pig
+ * @date 2025-03-13 11:03:52
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/receivingNote" )
+@Tag(description = "receivingNote" , name = "楠屾敹琛ㄧ鐞�" )
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
+public class ReceivingNoteController {
+
+ private final ReceivingNoteService receivingNoteService;
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ * @param page 鍒嗛〉瀵硅薄
+ * @param receivingNote 楠屾敹琛�
+ * @return
+ */
+ @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
+ @GetMapping("/page" )
+ @PreAuthorize("@pms.hasPermission('device_receivingNote_view')" )
+ public R getReceivingNotePage(@ParameterObject Page page, @ParameterObject ReceivingNote receivingNote) {
+ LambdaQueryWrapper<ReceivingNote> wrapper = Wrappers.lambdaQuery();
+ return R.ok(receivingNoteService.page(page, wrapper));
+ }
+
+
+ /**
+ * 閫氳繃id鏌ヨ楠屾敹琛�
+ * @param id id
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鏌ヨ" , description = "閫氳繃id鏌ヨ" )
+ @GetMapping("/{id}" )
+ @PreAuthorize("@pms.hasPermission('device_receivingNote_view')" )
+ public R getById(@PathVariable("id" ) Long id) {
+ return R.ok(receivingNoteService.getById(id));
+ }
+
+ /**
+ * 鏂板楠屾敹琛�
+ * @param receivingNote 楠屾敹琛�
+ * @return R
+ */
+ @Operation(summary = "鏂板楠屾敹琛�" , description = "鏂板楠屾敹琛�" )
+ @SysLog("鏂板楠屾敹琛�" )
+ @PostMapping
+ @PreAuthorize("@pms.hasPermission('device_receivingNote_add')" )
+ public R save(@RequestBody ReceivingNote receivingNote) {
+ return R.ok(receivingNoteService.save(receivingNote));
+ }
+
+ /**
+ * 淇敼楠屾敹琛�
+ * @param receivingNote 楠屾敹琛�
+ * @return R
+ */
+ @Operation(summary = "淇敼楠屾敹琛�" , description = "淇敼楠屾敹琛�" )
+ @SysLog("淇敼楠屾敹琛�" )
+ @PutMapping
+ @PreAuthorize("@pms.hasPermission('device_receivingNote_edit')" )
+ public R updateById(@RequestBody ReceivingNote receivingNote) {
+ return R.ok(receivingNoteService.updateById(receivingNote));
+ }
+
+ /**
+ * 閫氳繃id鍒犻櫎楠屾敹琛�
+ * @param ids id鍒楄〃
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鍒犻櫎楠屾敹琛�" , description = "閫氳繃id鍒犻櫎楠屾敹琛�" )
+ @SysLog("閫氳繃id鍒犻櫎楠屾敹琛�" )
+ @DeleteMapping
+ @PreAuthorize("@pms.hasPermission('device_receivingNote_del')" )
+ public R removeById(@RequestBody Long[] ids) {
+ return R.ok(receivingNoteService.removeBatchByIds(CollUtil.toList(ids)));
+ }
+
+
+ /**
+ * 瀵煎嚭excel 琛ㄦ牸
+ * @param receivingNote 鏌ヨ鏉′欢
+ * @param ids 瀵煎嚭鎸囧畾ID
+ * @return excel 鏂囦欢娴�
+ */
+ @ResponseExcel
+ @GetMapping("/export")
+ @PreAuthorize("@pms.hasPermission('device_receivingNote_export')" )
+ public List<ReceivingNote> export(ReceivingNote receivingNote,Long[] ids) {
+ return receivingNoteService.list(Wrappers.lambdaQuery(receivingNote).in(ArrayUtil.isNotEmpty(ids), ReceivingNote::getId, ids));
+ }
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ReceivingNoteItemController.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ReceivingNoteItemController.java
new file mode 100644
index 0000000..9220b00
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/controller/ReceivingNoteItemController.java
@@ -0,0 +1,119 @@
+package com.by4cloud.platformx.device.controller;
+
+import cn.hutool.core.util.ArrayUtil;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.by4cloud.platformx.common.core.util.R;
+import com.by4cloud.platformx.common.log.annotation.SysLog;
+import com.by4cloud.platformx.device.entity.ReceivingNoteItem;
+import com.by4cloud.platformx.device.service.ReceivingNoteItemService;
+import org.springframework.security.access.prepost.PreAuthorize;
+import com.by4cloud.platformx.common.excel.annotation.ResponseExcel;
+import io.swagger.v3.oas.annotations.security.SecurityRequirement;
+import org.springdoc.api.annotations.ParameterObject;
+import org.springframework.http.HttpHeaders;
+import io.swagger.v3.oas.annotations.tags.Tag;
+import io.swagger.v3.oas.annotations.Operation;
+import lombok.RequiredArgsConstructor;
+import org.springframework.web.bind.annotation.*;
+
+import java.util.List;
+import java.util.Objects;
+
+/**
+ * 楠屾敹瀛愰」琛�
+ *
+ * @author pig
+ * @date 2025-03-13 11:04:28
+ */
+@RestController
+@RequiredArgsConstructor
+@RequestMapping("/receivingNoteItem" )
+@Tag(description = "receivingNoteItem" , name = "楠屾敹瀛愰」琛ㄧ鐞�" )
+@SecurityRequirement(name = HttpHeaders.AUTHORIZATION)
+public class ReceivingNoteItemController {
+
+ private final ReceivingNoteItemService receivingNoteItemService;
+
+ /**
+ * 鍒嗛〉鏌ヨ
+ * @param page 鍒嗛〉瀵硅薄
+ * @param receivingNoteItem 楠屾敹瀛愰」琛�
+ * @return
+ */
+ @Operation(summary = "鍒嗛〉鏌ヨ" , description = "鍒嗛〉鏌ヨ" )
+ @GetMapping("/page" )
+ @PreAuthorize("@pms.hasPermission('device_receivingNoteItem_view')" )
+ public R getReceivingNoteItemPage(@ParameterObject Page page, @ParameterObject ReceivingNoteItem receivingNoteItem) {
+ LambdaQueryWrapper<ReceivingNoteItem> wrapper = Wrappers.lambdaQuery();
+ return R.ok(receivingNoteItemService.page(page, wrapper));
+ }
+
+
+ /**
+ * 閫氳繃id鏌ヨ楠屾敹瀛愰」琛�
+ * @param id id
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鏌ヨ" , description = "閫氳繃id鏌ヨ" )
+ @GetMapping("/{id}" )
+ @PreAuthorize("@pms.hasPermission('device_receivingNoteItem_view')" )
+ public R getById(@PathVariable("id" ) Long id) {
+ return R.ok(receivingNoteItemService.getById(id));
+ }
+
+ /**
+ * 鏂板楠屾敹瀛愰」琛�
+ * @param receivingNoteItem 楠屾敹瀛愰」琛�
+ * @return R
+ */
+ @Operation(summary = "鏂板楠屾敹瀛愰」琛�" , description = "鏂板楠屾敹瀛愰」琛�" )
+ @SysLog("鏂板楠屾敹瀛愰」琛�" )
+ @PostMapping
+ @PreAuthorize("@pms.hasPermission('device_receivingNoteItem_add')" )
+ public R save(@RequestBody ReceivingNoteItem receivingNoteItem) {
+ return R.ok(receivingNoteItemService.save(receivingNoteItem));
+ }
+
+ /**
+ * 淇敼楠屾敹瀛愰」琛�
+ * @param receivingNoteItem 楠屾敹瀛愰」琛�
+ * @return R
+ */
+ @Operation(summary = "淇敼楠屾敹瀛愰」琛�" , description = "淇敼楠屾敹瀛愰」琛�" )
+ @SysLog("淇敼楠屾敹瀛愰」琛�" )
+ @PutMapping
+ @PreAuthorize("@pms.hasPermission('device_receivingNoteItem_edit')" )
+ public R updateById(@RequestBody ReceivingNoteItem receivingNoteItem) {
+ return R.ok(receivingNoteItemService.updateById(receivingNoteItem));
+ }
+
+ /**
+ * 閫氳繃id鍒犻櫎楠屾敹瀛愰」琛�
+ * @param ids id鍒楄〃
+ * @return R
+ */
+ @Operation(summary = "閫氳繃id鍒犻櫎楠屾敹瀛愰」琛�" , description = "閫氳繃id鍒犻櫎楠屾敹瀛愰」琛�" )
+ @SysLog("閫氳繃id鍒犻櫎楠屾敹瀛愰」琛�" )
+ @DeleteMapping
+ @PreAuthorize("@pms.hasPermission('device_receivingNoteItem_del')" )
+ public R removeById(@RequestBody Long[] ids) {
+ return R.ok(receivingNoteItemService.removeBatchByIds(CollUtil.toList(ids)));
+ }
+
+
+ /**
+ * 瀵煎嚭excel 琛ㄦ牸
+ * @param receivingNoteItem 鏌ヨ鏉′欢
+ * @param ids 瀵煎嚭鎸囧畾ID
+ * @return excel 鏂囦欢娴�
+ */
+ @ResponseExcel
+ @GetMapping("/export")
+ @PreAuthorize("@pms.hasPermission('device_receivingNoteItem_export')" )
+ public List<ReceivingNoteItem> export(ReceivingNoteItem receivingNoteItem,Long[] ids) {
+ return receivingNoteItemService.list(Wrappers.lambdaQuery(receivingNoteItem).in(ArrayUtil.isNotEmpty(ids), ReceivingNoteItem::getId, ids));
+ }
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ContractItemMapper.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ContractItemMapper.java
new file mode 100644
index 0000000..72b7151
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ContractItemMapper.java
@@ -0,0 +1,11 @@
+package com.by4cloud.platformx.device.mapper;
+
+import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
+import com.by4cloud.platformx.device.entity.ContractItem;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface ContractItemMapper extends PlatformxBaseMapper<ContractItem> {
+
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ContractMapper.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ContractMapper.java
new file mode 100644
index 0000000..1c2d1a7
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ContractMapper.java
@@ -0,0 +1,11 @@
+package com.by4cloud.platformx.device.mapper;
+
+import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
+import com.by4cloud.platformx.device.entity.Contract;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface ContractMapper extends PlatformxBaseMapper<Contract> {
+
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/DeviceInventoryMapper.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/DeviceInventoryMapper.java
new file mode 100644
index 0000000..c059f90
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/DeviceInventoryMapper.java
@@ -0,0 +1,11 @@
+package com.by4cloud.platformx.device.mapper;
+
+import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
+import com.by4cloud.platformx.device.entity.DeviceInventory;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface DeviceInventoryMapper extends PlatformxBaseMapper<DeviceInventory> {
+
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/InventoryFlowWaterMapper.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/InventoryFlowWaterMapper.java
new file mode 100644
index 0000000..baae039
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/InventoryFlowWaterMapper.java
@@ -0,0 +1,11 @@
+package com.by4cloud.platformx.device.mapper;
+
+import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
+import com.by4cloud.platformx.device.entity.InventoryFlowWater;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface InventoryFlowWaterMapper extends PlatformxBaseMapper<InventoryFlowWater> {
+
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteItemMapper.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteItemMapper.java
new file mode 100644
index 0000000..042d9de
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteItemMapper.java
@@ -0,0 +1,11 @@
+package com.by4cloud.platformx.device.mapper;
+
+import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
+import com.by4cloud.platformx.device.entity.ReceivingNoteItem;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface ReceivingNoteItemMapper extends PlatformxBaseMapper<ReceivingNoteItem> {
+
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteMapper.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteMapper.java
new file mode 100644
index 0000000..a863374
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/mapper/ReceivingNoteMapper.java
@@ -0,0 +1,11 @@
+package com.by4cloud.platformx.device.mapper;
+
+import com.by4cloud.platformx.common.data.datascope.PlatformxBaseMapper;
+import com.by4cloud.platformx.device.entity.ReceivingNote;
+import org.apache.ibatis.annotations.Mapper;
+
+@Mapper
+public interface ReceivingNoteMapper extends PlatformxBaseMapper<ReceivingNote> {
+
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ContractItemService.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ContractItemService.java
new file mode 100644
index 0000000..57fc87f
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ContractItemService.java
@@ -0,0 +1,8 @@
+package com.by4cloud.platformx.device.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.by4cloud.platformx.device.entity.ContractItem;
+
+public interface ContractItemService extends IService<ContractItem> {
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ContractService.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ContractService.java
new file mode 100644
index 0000000..1d80c42
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ContractService.java
@@ -0,0 +1,15 @@
+package com.by4cloud.platformx.device.service;
+
+import com.by4cloud.platformx.device.entity.Contract;
+import com.github.yulichang.extension.mapping.base.MPJDeepService;
+
+public interface ContractService extends MPJDeepService<Contract> {
+ Boolean saveDeep(Contract contract);
+
+ Boolean updateDeep(Contract contract);
+
+ Boolean removeDeep(Long[] ids);
+
+ Boolean removeChild(Long[] ids);
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/DeviceInventoryService.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/DeviceInventoryService.java
new file mode 100644
index 0000000..7083605
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/DeviceInventoryService.java
@@ -0,0 +1,9 @@
+package com.by4cloud.platformx.device.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.by4cloud.platformx.device.entity.DeviceInventory;
+import com.by4cloud.platformx.device.entity.InventoryFlowWater;
+
+public interface DeviceInventoryService extends IService<DeviceInventory> {
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/InventoryFlowWaterService.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/InventoryFlowWaterService.java
new file mode 100644
index 0000000..4e1e008
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/InventoryFlowWaterService.java
@@ -0,0 +1,8 @@
+package com.by4cloud.platformx.device.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.by4cloud.platformx.device.entity.InventoryFlowWater;
+
+public interface InventoryFlowWaterService extends IService<InventoryFlowWater> {
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ReceivingNoteItemService.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ReceivingNoteItemService.java
new file mode 100644
index 0000000..f6fc7ab
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ReceivingNoteItemService.java
@@ -0,0 +1,8 @@
+package com.by4cloud.platformx.device.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.by4cloud.platformx.device.entity.ReceivingNoteItem;
+
+public interface ReceivingNoteItemService extends IService<ReceivingNoteItem> {
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ReceivingNoteService.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ReceivingNoteService.java
new file mode 100644
index 0000000..cff8e48
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/ReceivingNoteService.java
@@ -0,0 +1,8 @@
+package com.by4cloud.platformx.device.service;
+
+import com.baomidou.mybatisplus.extension.service.IService;
+import com.by4cloud.platformx.device.entity.ReceivingNote;
+
+public interface ReceivingNoteService extends IService<ReceivingNote> {
+
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ContractItemServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ContractItemServiceImpl.java
new file mode 100644
index 0000000..3643686
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ContractItemServiceImpl.java
@@ -0,0 +1,16 @@
+package com.by4cloud.platformx.device.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.device.entity.ContractItem;
+import com.by4cloud.platformx.device.mapper.ContractItemMapper;
+import com.by4cloud.platformx.device.service.ContractItemService;
+import org.springframework.stereotype.Service;
+/**
+ * 鍚堝悓鏄庣粏琛�
+ *
+ * @author pig
+ * @date 2025-03-13 10:48:44
+ */
+@Service
+public class ContractItemServiceImpl extends ServiceImpl<ContractItemMapper, ContractItem> implements ContractItemService {
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ContractServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ContractServiceImpl.java
new file mode 100644
index 0000000..312841b
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ContractServiceImpl.java
@@ -0,0 +1,68 @@
+package com.by4cloud.platformx.device.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+
+import com.by4cloud.platformx.device.entity.Contract;
+import com.by4cloud.platformx.device.entity.ContractItem;
+import com.by4cloud.platformx.device.mapper.ContractItemMapper;
+import com.by4cloud.platformx.device.mapper.ContractMapper;
+import com.by4cloud.platformx.device.service.ContractService;
+import org.springframework.stereotype.Service;
+import cn.hutool.core.collection.CollUtil;
+import com.baomidou.mybatisplus.core.toolkit.Wrappers;
+import org.springframework.transaction.annotation.Transactional;
+import lombok.RequiredArgsConstructor;
+import java.util.Objects;
+/**
+ * 鍚堝悓琛�
+ *
+ * @author pig
+ * @date 2025-03-13 10:20:35
+ */
+@Service
+@RequiredArgsConstructor
+public class ContractServiceImpl extends ServiceImpl<ContractMapper, Contract> implements ContractService {
+ private final ContractItemMapper contractItemMapper;
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Boolean saveDeep(Contract contract) {
+ baseMapper.insert(contract);
+ for (ContractItem contractItem : contract.getContractItemList()) {
+ contractItem.setContractId(contract.getId());
+ contractItemMapper.insert( contractItem);
+ }
+
+ return Boolean.TRUE;
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Boolean updateDeep(Contract contract) {
+ baseMapper.updateById(contract);
+ for (ContractItem contractItem : contract.getContractItemList()) {
+ if (Objects.isNull(contractItem.getId())) {
+ contractItem.setContractId(contract.getId());
+ contractItemMapper.insert(contractItem);
+ } else {
+ contractItemMapper.updateById(contractItem);
+ }
+ }
+ return Boolean.TRUE;
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Boolean removeDeep(Long[] ids) {
+ baseMapper.deleteBatchIds(CollUtil.toList(ids));
+ contractItemMapper.delete(Wrappers.<ContractItem>lambdaQuery().in(ContractItem::getContractId, ids));
+ return Boolean.TRUE;
+ }
+
+ @Override
+ @Transactional(rollbackFor = Exception.class)
+ public Boolean removeChild(Long[] ids) {
+ contractItemMapper.deleteBatchIds(CollUtil.toList(ids));
+ return Boolean.TRUE;
+ }
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceInventoryServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceInventoryServiceImpl.java
new file mode 100644
index 0000000..da0b221
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/DeviceInventoryServiceImpl.java
@@ -0,0 +1,20 @@
+package com.by4cloud.platformx.device.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.device.entity.DeviceInventory;
+import com.by4cloud.platformx.device.entity.InventoryFlowWater;
+import com.by4cloud.platformx.device.mapper.DeviceInventoryMapper;
+import com.by4cloud.platformx.device.mapper.InventoryFlowWaterMapper;
+import com.by4cloud.platformx.device.service.DeviceInventoryService;
+import com.by4cloud.platformx.device.service.InventoryFlowWaterService;
+import org.springframework.stereotype.Service;
+
+/**
+ * 搴撳瓨
+ *
+ * @author pig
+ * @date 2025-03-13 10:22:39
+ */
+@Service
+public class DeviceInventoryServiceImpl extends ServiceImpl<DeviceInventoryMapper, DeviceInventory> implements DeviceInventoryService {
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/InventoryFlowWaterServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/InventoryFlowWaterServiceImpl.java
new file mode 100644
index 0000000..f172139
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/InventoryFlowWaterServiceImpl.java
@@ -0,0 +1,16 @@
+package com.by4cloud.platformx.device.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.device.entity.InventoryFlowWater;
+import com.by4cloud.platformx.device.mapper.InventoryFlowWaterMapper;
+import com.by4cloud.platformx.device.service.InventoryFlowWaterService;
+import org.springframework.stereotype.Service;
+/**
+ * 搴撳瓨娴佹按琛�
+ *
+ * @author pig
+ * @date 2025-03-13 10:22:39
+ */
+@Service
+public class InventoryFlowWaterServiceImpl extends ServiceImpl<InventoryFlowWaterMapper, InventoryFlowWater> implements InventoryFlowWaterService {
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteItemServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteItemServiceImpl.java
new file mode 100644
index 0000000..3d30892
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteItemServiceImpl.java
@@ -0,0 +1,16 @@
+package com.by4cloud.platformx.device.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.device.entity.ReceivingNoteItem;
+import com.by4cloud.platformx.device.mapper.ReceivingNoteItemMapper;
+import com.by4cloud.platformx.device.service.ReceivingNoteItemService;
+import org.springframework.stereotype.Service;
+/**
+ * 楠屾敹瀛愰」琛�
+ *
+ * @author pig
+ * @date 2025-03-13 11:04:28
+ */
+@Service
+public class ReceivingNoteItemServiceImpl extends ServiceImpl<ReceivingNoteItemMapper, ReceivingNoteItem> implements ReceivingNoteItemService {
+}
diff --git a/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteServiceImpl.java b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteServiceImpl.java
new file mode 100644
index 0000000..0d6d1da
--- /dev/null
+++ b/platformx-device-biz/src/main/java/com/by4cloud/platformx/device/service/impl/ReceivingNoteServiceImpl.java
@@ -0,0 +1,16 @@
+package com.by4cloud.platformx.device.service.impl;
+
+import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
+import com.by4cloud.platformx.device.entity.ReceivingNote;
+import com.by4cloud.platformx.device.mapper.ReceivingNoteMapper;
+import com.by4cloud.platformx.device.service.ReceivingNoteService;
+import org.springframework.stereotype.Service;
+/**
+ * 楠屾敹琛�
+ *
+ * @author pig
+ * @date 2025-03-13 11:03:52
+ */
+@Service
+public class ReceivingNoteServiceImpl extends ServiceImpl<ReceivingNoteMapper, ReceivingNote> implements ReceivingNoteService {
+}
diff --git a/platformx-device-biz/src/main/resources/mapper/ContractItemMapper.xml b/platformx-device-biz/src/main/resources/mapper/ContractItemMapper.xml
new file mode 100644
index 0000000..f13d680
--- /dev/null
+++ b/platformx-device-biz/src/main/resources/mapper/ContractItemMapper.xml
@@ -0,0 +1,24 @@
+<?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.by4cloud.platformx.device.mapper.ContractItemMapper">
+
+ <resultMap id="contractItemMap" type="com.by4cloud.platformx.device.entity.ContractItem">
+ <id property="id" column="id"/>
+ <result property="amount" column="amount"/>
+ <result property="compId" column="comp_id"/>
+ <result property="month" column="month"/>
+ <result property="name" column="name"/>
+ <result property="num" column="num"/>
+ <result property="price" column="price"/>
+ <result property="specification" column="specification"/>
+ <result property="unit" column="unit"/>
+ <result property="contractId" column="contract_id"/>
+ <result property="deviceId" column="device_id"/>
+ <result property="createBy" column="create_by"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateBy" column="update_by"/>
+ <result property="updateTime" column="update_time"/>
+ <result property="delFlag" column="del_flag"/>
+ </resultMap>
+</mapper>
diff --git a/platformx-device-biz/src/main/resources/mapper/ContractMapper.xml b/platformx-device-biz/src/main/resources/mapper/ContractMapper.xml
new file mode 100644
index 0000000..cff2e80
--- /dev/null
+++ b/platformx-device-biz/src/main/resources/mapper/ContractMapper.xml
@@ -0,0 +1,29 @@
+<?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.by4cloud.platformx.device.mapper.ContractMapper">
+
+ <resultMap id="contractMap" type="com.by4cloud.platformx.device.entity.Contract">
+ <id property="id" column="id"/>
+ <result property="name" column="name"/>
+ <result property="compId" column="comp_id"/>
+ <result property="partya" column="partya"/>
+ <result property="partyb" column="partyb"/>
+ <result property="partyc" column="partyc"/>
+ <result property="content" column="content"/>
+ <result property="countExecutive" column="count_executive"/>
+ <result property="output" column="output"/>
+ <result property="executive" column="executive"/>
+ <result property="fileName" column="file_name"/>
+ <result property="filePath" column="file_path"/>
+ <result property="number" column="number"/>
+ <result property="releaseDate" column="release_date"/>
+ <result property="status" column="status"/>
+ <result property="type" column="type"/>
+ <result property="createBy" column="create_by"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateBy" column="update_by"/>
+ <result property="updateTime" column="update_time"/>
+ <result property="delFlag" column="del_flag"/>
+ </resultMap>
+</mapper>
diff --git a/platformx-device-biz/src/main/resources/mapper/InventoryFlowWaterMapper.xml b/platformx-device-biz/src/main/resources/mapper/InventoryFlowWaterMapper.xml
new file mode 100644
index 0000000..3ca2275
--- /dev/null
+++ b/platformx-device-biz/src/main/resources/mapper/InventoryFlowWaterMapper.xml
@@ -0,0 +1,21 @@
+<?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.by4cloud.platformx.device.mapper.InventoryFlowWaterMapper">
+
+ <resultMap id="inventoryFlowWaterMap" type="com.by4cloud.platformx.device.entity.InventoryFlowWater">
+ <id property="id" column="id"/>
+ <result property="inventoryId" column="inventory_id"/>
+ <result property="classId" column="class_id"/>
+ <result property="deviceId" column="device_id"/>
+ <result property="num" column="num"/>
+ <result property="planId" column="plan_id"/>
+ <result property="remark" column="remark"/>
+ <result property="compId" column="comp_id"/>
+ <result property="createBy" column="create_by"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateBy" column="update_by"/>
+ <result property="updateTime" column="update_time"/>
+ <result property="delFlag" column="del_flag"/>
+ </resultMap>
+</mapper>
diff --git a/platformx-device-biz/src/main/resources/mapper/ReceivingNoteItemMapper.xml b/platformx-device-biz/src/main/resources/mapper/ReceivingNoteItemMapper.xml
new file mode 100644
index 0000000..5cb7345
--- /dev/null
+++ b/platformx-device-biz/src/main/resources/mapper/ReceivingNoteItemMapper.xml
@@ -0,0 +1,19 @@
+<?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.by4cloud.platformx.device.mapper.ReceivingNoteItemMapper">
+
+ <resultMap id="receivingNoteItemMap" type="com.by4cloud.platformx.device.entity.ReceivingNoteItem">
+ <id property="id" column="id"/>
+ <result property="compId" column="comp_id"/>
+ <result property="noteId" column="note_id"/>
+ <result property="contractItemId" column="contract_item_id"/>
+ <result property="num" column="num"/>
+ <result property="output" column="output"/>
+ <result property="createBy" column="create_by"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateBy" column="update_by"/>
+ <result property="updateTime" column="update_time"/>
+ <result property="delFlag" column="del_flag"/>
+ </resultMap>
+</mapper>
diff --git a/platformx-device-biz/src/main/resources/mapper/ReceivingNoteMapper.xml b/platformx-device-biz/src/main/resources/mapper/ReceivingNoteMapper.xml
new file mode 100644
index 0000000..43d7177
--- /dev/null
+++ b/platformx-device-biz/src/main/resources/mapper/ReceivingNoteMapper.xml
@@ -0,0 +1,21 @@
+<?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.by4cloud.platformx.device.mapper.ReceivingNoteMapper">
+
+ <resultMap id="receivingNoteMap" type="com.by4cloud.platformx.device.entity.ReceivingNote">
+ <id property="id" column="id"/>
+ <result property="compId" column="comp_id"/>
+ <result property="contractId" column="contract_id"/>
+ <result property="count" column="count"/>
+ <result property="output" column="output"/>
+ <result property="releaseCompName" column="release_comp_name"/>
+ <result property="releaseDate" column="release_date"/>
+ <result property="releasePerson" column="release_person"/>
+ <result property="createBy" column="create_by"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateBy" column="update_by"/>
+ <result property="updateTime" column="update_time"/>
+ <result property="delFlag" column="del_flag"/>
+ </resultMap>
+</mapper>
diff --git a/platformx-device-biz/src/main/resources/mapper/deviceInventoryMapper.xml b/platformx-device-biz/src/main/resources/mapper/deviceInventoryMapper.xml
new file mode 100644
index 0000000..b84b53e
--- /dev/null
+++ b/platformx-device-biz/src/main/resources/mapper/deviceInventoryMapper.xml
@@ -0,0 +1,21 @@
+<?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.by4cloud.platformx.device.mapper.DeviceInventoryMapper">
+
+ <resultMap id="deviceInventoryMap" type="com.by4cloud.platformx.device.entity.DeviceInventory">
+ <id property="id" column="id"/>
+ <result property="deviceNumber" column="device_number"/>
+ <result property="serialNo" column="serial_no"/>
+ <result property="deviceId" column="device_id"/>
+ <result property="deviceId" column="device_id"/>
+ <result property="name" column="name"/>
+ <result property="source" column="source"/>
+ <result property="compId" column="comp_id"/>
+ <result property="createBy" column="create_by"/>
+ <result property="createTime" column="create_time"/>
+ <result property="updateBy" column="update_by"/>
+ <result property="updateTime" column="update_time"/>
+ <result property="delFlag" column="del_flag"/>
+ </resultMap>
+</mapper>
--
Gitblit v1.9.1