huangjiayang
2025-04-23 9337373a74743824938368b69fcc10f6b277aa64
【UPDATE】修改日历内容jsonB字段适配代码
已修改2个文件
已添加1个文件
50 ■■■■■ 文件已修改
aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsWorkCalendar.java 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/java/com/aps/core/typeHandler/JsonTypeHandler.java 42 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/resources/mapper/core/ApsWorkCalendarMapper.xml 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
aps-modules/aps-core/src/main/java/com/aps/core/domain/ApsWorkCalendar.java
@@ -41,7 +41,7 @@
    /** 鏃ュ巻鍐呭 */
    @Excel(name = "鏃ュ巻鍐呭")
    private String content;
    private Object content;
    /** 閫傜敤宸ュ巶 */
    @Excel(name = "閫傜敤宸ュ巶")
@@ -105,12 +105,12 @@
        return expiringDate;
    }
    public void setContent(String content)
    public void setContent(Object content)
    {
        this.content = content;
    }
    public String getContent()
    public Object getContent()
    {
        return content;
    }
aps-modules/aps-core/src/main/java/com/aps/core/typeHandler/JsonTypeHandler.java
对比新文件
@@ -0,0 +1,42 @@
package com.aps.core.typeHandler;
import com.alibaba.fastjson2.JSON;
import org.apache.ibatis.type.BaseTypeHandler;
import org.apache.ibatis.type.JdbcType;
import org.apache.ibatis.type.MappedTypes;
import org.postgresql.util.PGobject;
import java.sql.CallableStatement;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;
@MappedTypes({Object.class})
public class JsonTypeHandler extends BaseTypeHandler<Object> {
    private static final PGobject jsonObject = new PGobject();
    @Override
    public void setNonNullParameter(PreparedStatement preparedStatement, int i, Object o, JdbcType jdbcType) throws SQLException {
        jsonObject.setType("jsonb");
        jsonObject.setValue(JSON.toJSONString(o));
        preparedStatement.setObject(i, jsonObject);
    }
    @Override
    public Object getNullableResult(ResultSet resultSet, String s) throws SQLException {
        return resultSet.getString(s);
    }
    @Override
    public Object getNullableResult(ResultSet resultSet, int i) throws SQLException {
        return resultSet.getString(i);
    }
    @Override
    public Object getNullableResult(CallableStatement callableStatement, int i) throws SQLException {
        return callableStatement.getString(i);
    }
}
aps-modules/aps-core/src/main/resources/mapper/core/ApsWorkCalendarMapper.xml
@@ -66,7 +66,7 @@
            <if test="type != null">#{type},</if>
            <if test="effectiveDate != null">#{effectiveDate},</if>
            <if test="expiringDate != null">#{expiringDate},</if>
            <if test="content != null">#{content},</if>
            <if test="content != null">#{content, typeHandler=com.aps.core.typeHandler.JsonTypeHandler, jdbcType=OTHER},</if>
            <if test="applicableFactory != null">#{applicableFactory},</if>
            <if test="applicableWorkshop != null">#{applicableWorkshop},</if>
            <if test="applicableProcess != null">#{applicableProcess},</if>