upgrade
parent
e6781ffdfd
commit
a27889839a
|
|
@ -2,6 +2,7 @@ package org.qinan.safetyeval.client.co;
|
|||
|
||||
import io.swagger.annotations.ApiModelProperty;
|
||||
import lombok.Data;
|
||||
import org.qinan.safetyeval.domain.entity.CapabilityAssessmentDTO;
|
||||
|
||||
import java.time.LocalDate;
|
||||
import java.util.List;
|
||||
|
|
@ -58,4 +59,7 @@ public class QualFilingPersonnelInfoCO {
|
|||
|
||||
@ApiModelProperty(value = "能力codeList")
|
||||
private List<PersonnelCertFilingPageCO> personnelCertFilingPageCOList;
|
||||
|
||||
@ApiModelProperty(value = "能力认定")
|
||||
private List<CapabilityAssessmentDTO> capabilityAssessment;
|
||||
}
|
||||
|
|
|
|||
|
|
@ -0,0 +1,50 @@
|
|||
package org.qinan.safetyeval.infrastructure.handler;
|
||||
|
||||
import cn.hutool.json.JSONUtil;
|
||||
import org.apache.ibatis.type.BaseTypeHandler;
|
||||
import org.apache.ibatis.type.JdbcType;
|
||||
import org.apache.ibatis.type.MappedJdbcTypes;
|
||||
import org.qinan.safetyeval.domain.entity.CapabilityAssessmentDTO;
|
||||
|
||||
import java.sql.CallableStatement;
|
||||
import java.sql.PreparedStatement;
|
||||
import java.sql.ResultSet;
|
||||
import java.sql.SQLException;
|
||||
import java.util.Collections;
|
||||
import java.util.List;
|
||||
|
||||
/**
|
||||
* MyBatis TypeHandler: 在数据库的 varchar/text 列中以 JSON 数组字符串形式存储 List<CapabilityAssessmentDTO>。
|
||||
*
|
||||
* @author safety-eval
|
||||
*/
|
||||
@MappedJdbcTypes(JdbcType.VARCHAR)
|
||||
public class CapabilityAssessmentListTypeHandler extends BaseTypeHandler<List<CapabilityAssessmentDTO>> {
|
||||
|
||||
@Override
|
||||
public void setNonNullParameter(PreparedStatement ps, int i, List<CapabilityAssessmentDTO> parameter, JdbcType jdbcType) throws SQLException {
|
||||
ps.setString(i, JSONUtil.toJsonStr(parameter));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CapabilityAssessmentDTO> getNullableResult(ResultSet rs, String columnName) throws SQLException {
|
||||
return parse(rs.getString(columnName));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CapabilityAssessmentDTO> getNullableResult(ResultSet rs, int columnIndex) throws SQLException {
|
||||
return parse(rs.getString(columnIndex));
|
||||
}
|
||||
|
||||
@Override
|
||||
public List<CapabilityAssessmentDTO> getNullableResult(CallableStatement cs, int columnIndex) throws SQLException {
|
||||
return parse(cs.getString(columnIndex));
|
||||
}
|
||||
|
||||
private List<CapabilityAssessmentDTO> parse(String json) {
|
||||
if (json == null || json.isEmpty()) {
|
||||
return Collections.emptyList();
|
||||
}
|
||||
return JSONUtil.toList(json, CapabilityAssessmentDTO.class);
|
||||
}
|
||||
}
|
||||
|
|
@ -68,11 +68,17 @@
|
|||
</foreach>
|
||||
</select>
|
||||
|
||||
<!-- 资质备案人员分页查询 resultMap -->
|
||||
<resultMap id="FilingPersonnelInfoMap" type="org.qinan.safetyeval.client.co.QualFilingPersonnelInfoCO">
|
||||
<result column="capability_assessment" property="capabilityAssessment"
|
||||
typeHandler="org.qinan.safetyeval.infrastructure.handler.CapabilityAssessmentListTypeHandler"/>
|
||||
</resultMap>
|
||||
|
||||
<!-- 资质备案人员分页查询,直接返回 CO -->
|
||||
<select id="filingPage" resultType="org.qinan.safetyeval.client.co.QualFilingPersonnelInfoCO">
|
||||
<select id="filingPage" resultMap="FilingPersonnelInfoMap">
|
||||
SELECT p.id source_personnel_id, p.id, p.user_name personName, d.dept_name, po.position_name, p.post_id, p.gender_code, p.gender_name
|
||||
, p.birth_date, p.register_engineer_flag, p.technical_director_flag, p.process_control_leader_flag
|
||||
, p.evaluator_cert_no, p.join_work_date
|
||||
, p.evaluator_cert_no, p.join_work_date, p.capability_assessment
|
||||
FROM org_personnel p
|
||||
left join org_department d on p.dept_id = d.id and d.delete_enum = 'false'
|
||||
left join org_position po on po.id = p.post_id and po.delete_enum = 'false'
|
||||
|
|
|
|||
Loading…
Reference in New Issue