仓库信息字段更新1215

This commit is contained in:
2025-12-15 08:19:59 +08:00
parent 8e0d7b463a
commit 0fe1ee916c
3 changed files with 157 additions and 130 deletions

View File

@@ -8,6 +8,10 @@ import com.zg.framework.web.domain.BaseEntity;
/** /**
* 设备信息对象 device_info * 设备信息对象 device_info
* *
* ✅ 大小仓模型:
* - device_info 只落库warehouse_code小仓编码
* - parentWarehouseCode / parentWarehouseName 仅联查展示 & 查询过滤,不落库
*
* @author zg * @author zg
* @date 2025-04-14 * @date 2025-04-14
*/ */
@@ -25,19 +29,26 @@ public class DeviceInfo extends BaseEntity {
@Excel(name = "设备端口") @Excel(name = "设备端口")
private Long port; private Long port;
/** 所属仓库ID */ /** ✅ 所属小仓编码(落库字段) */
// @Excel(name = "所属仓库ID") private String warehouseCode;
private String warehouseId;
/** 所属场景ID */ /** 所属场景编码(落库字段) */
// @Excel(name = "所属场景ID")
private String sceneId; private String sceneId;
/** 仓库名称(非数据库字段) */ /** ======= 非数据库字段 ======= */
@Excel(name = "仓库名称")
/** ✅ 所属大仓编码(仅查询过滤/展示,不落库) */
private String parentWarehouseCode;
/** 大仓名称(联查字段) */
@Excel(name = "大仓名称")
private String parentWarehouseName;
/** 小仓名称(联查字段) */
@Excel(name = "小仓名称")
private String warehouseName; private String warehouseName;
/** 场景名称(非数据库字段) */ /** 场景名称(联查字段) */
@Excel(name = "场景名称") @Excel(name = "场景名称")
private String sceneName; private String sceneName;
@@ -45,70 +56,37 @@ public class DeviceInfo extends BaseEntity {
@Excel(name = "是否删除", readConverterExp = "0=否,1=是") @Excel(name = "是否删除", readConverterExp = "0=否,1=是")
private String isDelete; private String isDelete;
// Getter & Setter // ===== Getter & Setter =====
public void setDeviceId(Long deviceId) {
this.deviceId = deviceId;
}
public Long getDeviceId() { public Long getDeviceId() { return deviceId; }
return deviceId; public void setDeviceId(Long deviceId) { this.deviceId = deviceId; }
}
public void setIpAddress(String ipAddress) { public String getIpAddress() { return ipAddress; }
this.ipAddress = ipAddress; public void setIpAddress(String ipAddress) { this.ipAddress = ipAddress; }
}
public String getIpAddress() { public Long getPort() { return port; }
return ipAddress; public void setPort(Long port) { this.port = port; }
}
public void setPort(Long port) { public String getWarehouseCode() { return warehouseCode; }
this.port = port; public void setWarehouseCode(String warehouseCode) { this.warehouseCode = warehouseCode; }
}
public Long getPort() { public String getSceneId() { return sceneId; }
return port; public void setSceneId(String sceneId) { this.sceneId = sceneId; }
}
public void setWarehouseId(String warehouseId) { public String getParentWarehouseCode() { return parentWarehouseCode; }
this.warehouseId = warehouseId; public void setParentWarehouseCode(String parentWarehouseCode) { this.parentWarehouseCode = parentWarehouseCode; }
}
public String getWarehouseId() { public String getParentWarehouseName() { return parentWarehouseName; }
return warehouseId; public void setParentWarehouseName(String parentWarehouseName) { this.parentWarehouseName = parentWarehouseName; }
}
public void setSceneId(String sceneId) { public String getWarehouseName() { return warehouseName; }
this.sceneId = sceneId; public void setWarehouseName(String warehouseName) { this.warehouseName = warehouseName; }
}
public String getSceneId() { public String getSceneName() { return sceneName; }
return sceneId; public void setSceneName(String sceneName) { this.sceneName = sceneName; }
}
public void setWarehouseName(String warehouseName) { public String getIsDelete() { return isDelete; }
this.warehouseName = warehouseName; public void setIsDelete(String isDelete) { this.isDelete = isDelete; }
}
public String getWarehouseName() {
return warehouseName;
}
public void setSceneName(String sceneName) {
this.sceneName = sceneName;
}
public String getSceneName() {
return sceneName;
}
public void setIsDelete(String isDelete) {
this.isDelete = isDelete;
}
public String getIsDelete() {
return isDelete;
}
@Override @Override
public String toString() { public String toString() {
@@ -116,9 +94,11 @@ public class DeviceInfo extends BaseEntity {
.append("deviceId", getDeviceId()) .append("deviceId", getDeviceId())
.append("ipAddress", getIpAddress()) .append("ipAddress", getIpAddress())
.append("port", getPort()) .append("port", getPort())
.append("warehouseId", getWarehouseId()) .append("warehouseCode", getWarehouseCode())
.append("sceneId", getSceneId()) .append("parentWarehouseCode", getParentWarehouseCode())
.append("parentWarehouseName", getParentWarehouseName())
.append("warehouseName", getWarehouseName()) .append("warehouseName", getWarehouseName())
.append("sceneId", getSceneId())
.append("sceneName", getSceneName()) .append("sceneName", getSceneName())
.append("createBy", getCreateBy()) .append("createBy", getCreateBy())
.append("createTime", getCreateTime()) .append("createTime", getCreateTime())

View File

@@ -2,21 +2,25 @@
<!DOCTYPE mapper <!DOCTYPE mapper
PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
"http://mybatis.org/dtd/mybatis-3-mapper.dtd"> "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.zg.project.information.mapper.DeviceInfoMapper"> <mapper namespace="com.zg.project.information.mapper.DeviceInfoMapper">
<resultMap type="DeviceInfo" id="DeviceInfoResult"> <resultMap type="com.zg.project.information.domain.DeviceInfo" id="DeviceInfoResult">
<result property="deviceId" column="device_id" /> <result property="deviceId" column="device_id"/>
<result property="ipAddress" column="ip_address" /> <result property="ipAddress" column="ip_address"/>
<result property="port" column="port" /> <result property="port" column="port"/>
<result property="warehouseId" column="warehouse_id" /> <result property="warehouseCode" column="warehouse_code"/>
<result property="sceneId" column="scene_id" /> <result property="sceneId" column="scene_id"/>
<result property="warehouseName" column="warehouse_name" /> <result property="warehouseName" column="warehouse_name"/>
<result property="sceneName" column="scene_name" /> <result property="parentWarehouseCode" column="parent_warehouse_code"/>
<result property="createBy" column="create_by" /> <result property="parentWarehouseName" column="parent_warehouse_name"/>
<result property="createTime" column="create_time" /> <result property="sceneName" column="scene_name"/>
<result property="updateBy" column="update_by" />
<result property="updateTime" column="update_time" /> <result property="createBy" column="create_by"/>
<result property="isDelete" column="is_delete" /> <result property="createTime" column="create_time"/>
<result property="updateBy" column="update_by"/>
<result property="updateTime" column="update_time"/>
<result property="isDelete" column="is_delete"/>
</resultMap> </resultMap>
<sql id="selectDeviceInfoVo"> <sql id="selectDeviceInfoVo">
@@ -24,88 +28,129 @@
d.device_id, d.device_id,
d.ip_address, d.ip_address,
d.port, d.port,
d.warehouse_id, d.warehouse_code,
d.scene_id, d.scene_id,
w.warehouse_name AS warehouse_name,
s.scene_name AS scene_name, w.warehouse_name,
w.parent_warehouse_code,
w.parent_warehouse_name,
s.scene_name,
d.create_by, d.create_by,
d.create_time, d.create_time,
d.update_by, d.update_by,
d.update_time, d.update_time,
d.is_delete d.is_delete
FROM device_info d FROM device_info d
LEFT JOIN warehouse_info w ON d.warehouse_id = w.warehouse_code LEFT JOIN warehouse_info w
LEFT JOIN scene_mapping s ON d.scene_id = s.scene_code ON d.warehouse_code = w.warehouse_code
LEFT JOIN scene_mapping_bak s
ON d.scene_id = s.scene_code
</sql> </sql>
<select id="selectDeviceInfoList" parameterType="DeviceInfo" resultMap="DeviceInfoResult"> <!-- 列表 -->
<select id="selectDeviceInfoList"
parameterType="com.zg.project.information.domain.DeviceInfo"
resultMap="DeviceInfoResult">
<include refid="selectDeviceInfoVo"/> <include refid="selectDeviceInfoVo"/>
<where> <where>
<if test="ipAddress != null and ipAddress != ''"> and d.ip_address = #{ipAddress}</if> <!-- 默认未删除 -->
<if test="port != null "> and d.port = #{port}</if> <choose>
<if test="warehouseId != null "> and d.warehouse_id = #{warehouseId}</if> <when test="isDelete != null and isDelete != ''">
<if test="sceneId != null "> and d.scene_id = #{sceneId}</if> AND d.is_delete = #{isDelete}
<if test="isDelete != null and isDelete != ''"> and d.is_delete = #{isDelete}</if> </when>
<otherwise>
AND d.is_delete = '0'
</otherwise>
</choose>
<if test="ipAddress != null and ipAddress != ''">
AND d.ip_address = #{ipAddress}
</if>
<if test="port != null">
AND d.port = #{port}
</if>
<if test="warehouseCode != null and warehouseCode != ''">
AND d.warehouse_code = #{warehouseCode}
</if>
<if test="parentWarehouseCode != null and parentWarehouseCode != ''">
AND w.parent_warehouse_code = #{parentWarehouseCode}
</if>
<if test="sceneId != null and sceneId != ''">
AND d.scene_id = #{sceneId}
</if>
</where> </where>
ORDER BY d.device_id DESC
</select> </select>
<select id="selectDeviceInfoByDeviceId" parameterType="Long" resultMap="DeviceInfoResult"> <!-- 详情 -->
<select id="selectDeviceInfoByDeviceId"
parameterType="java.lang.Long"
resultMap="DeviceInfoResult">
<include refid="selectDeviceInfoVo"/> <include refid="selectDeviceInfoVo"/>
WHERE d.device_id = #{deviceId} WHERE d.device_id = #{deviceId}
</select> </select>
<insert id="insertDeviceInfo" parameterType="DeviceInfo"> <!-- 新增 -->
insert into device_info <insert id="insertDeviceInfo" parameterType="com.zg.project.information.domain.DeviceInfo">
<trim prefix="(" suffix=")" suffixOverrides=","> INSERT INTO device_info (
<if test="deviceId != null">device_id,</if> ip_address,
<if test="ipAddress != null">ip_address,</if> port,
<if test="port != null">port,</if> warehouse_code,
<if test="warehouseId != null">warehouse_id,</if> scene_id,
<if test="sceneId != null">scene_id,</if> create_by,
<if test="createBy != null">create_by,</if> create_time,
<if test="createTime != null">create_time,</if> update_by,
<if test="updateBy != null">update_by,</if> update_time,
<if test="updateTime != null">update_time,</if> is_delete
<if test="isDelete != null">is_delete,</if> ) VALUES (
</trim> #{ipAddress},
<trim prefix="values (" suffix=")" suffixOverrides=","> #{port},
<if test="deviceId != null">#{deviceId},</if> #{warehouseCode},
<if test="ipAddress != null">#{ipAddress},</if> #{sceneId},
<if test="port != null">#{port},</if> #{createBy},
<if test="warehouseId != null">#{warehouseId},</if> #{createTime},
<if test="sceneId != null">#{sceneId},</if> #{updateBy},
<if test="createBy != null">#{createBy},</if> #{updateTime},
<if test="createTime != null">#{createTime},</if> <choose>
<if test="updateBy != null">#{updateBy},</if> <when test="isDelete != null and isDelete != ''">#{isDelete}</when>
<if test="updateTime != null">#{updateTime},</if> <otherwise>'0'</otherwise>
<if test="isDelete != null">#{isDelete},</if> </choose>
</trim> )
</insert> </insert>
<update id="updateDeviceInfo" parameterType="DeviceInfo"> <!-- 修改 -->
update device_info <update id="updateDeviceInfo" parameterType="com.zg.project.information.domain.DeviceInfo">
UPDATE device_info
<trim prefix="SET" suffixOverrides=","> <trim prefix="SET" suffixOverrides=",">
<if test="ipAddress != null">ip_address = #{ipAddress},</if> <if test="ipAddress != null and ipAddress != ''">ip_address = #{ipAddress},</if>
<if test="port != null">port = #{port},</if> <if test="port != null">port = #{port},</if>
<if test="warehouseId != null">warehouse_id = #{warehouseId},</if> <if test="warehouseCode != null and warehouseCode != ''">warehouse_code = #{warehouseCode},</if>
<if test="sceneId != null">scene_id = #{sceneId},</if> <if test="sceneId != null and sceneId != ''">scene_id = #{sceneId},</if>
<if test="createBy != null">create_by = #{createBy},</if> <if test="updateBy != null and updateBy != ''">update_by = #{updateBy},</if>
<if test="createTime != null">create_time = #{createTime},</if>
<if test="updateBy != null">update_by = #{updateBy},</if>
<if test="updateTime != null">update_time = #{updateTime},</if> <if test="updateTime != null">update_time = #{updateTime},</if>
<if test="isDelete != null">is_delete = #{isDelete},</if> <if test="isDelete != null and isDelete != ''">is_delete = #{isDelete},</if>
</trim> </trim>
where device_id = #{deviceId} WHERE device_id = #{deviceId}
</update> </update>
<delete id="deleteDeviceInfoByDeviceId" parameterType="Long"> <delete id="deleteDeviceInfoByDeviceId" parameterType="java.lang.Long">
delete from device_info where device_id = #{deviceId} DELETE FROM device_info WHERE device_id = #{deviceId}
</delete> </delete>
<delete id="deleteDeviceInfoByDeviceIds" parameterType="String"> <delete id="deleteDeviceInfoByDeviceIds" parameterType="Long">
delete from device_info where device_id in DELETE FROM device_info
WHERE device_id IN
<foreach item="deviceId" collection="array" open="(" separator="," close=")"> <foreach item="deviceId" collection="array" open="(" separator="," close=")">
#{deviceId} #{deviceId}
</foreach> </foreach>
</delete> </delete>
</mapper> </mapper>

View File

@@ -1052,7 +1052,9 @@
<if test="warehouseCode != null and warehouseCode != ''"> <if test="warehouseCode != null and warehouseCode != ''">
AND ri.cangku = #{warehouseCode} AND ri.cangku = #{warehouseCode}
</if> </if>
<if test="parentWarehouseCode != null and parentWarehouseCode != ''">
AND wh.parent_warehouse_code = #{parentWarehouseCode}
</if>
<if test="startTime != null and startTime != ''"> <if test="startTime != null and startTime != ''">
AND ri.rk_time <![CDATA[ >= ]]> #{startTime} AND ri.rk_time <![CDATA[ >= ]]> #{startTime}
</if> </if>