Commit fa7c814a authored by kongfm's avatar kongfm

企业人员列表 带分页搜索

parent 7a3f199b
...@@ -55,6 +55,26 @@ public class OrgPersonFormDto extends BaseEntity{ ...@@ -55,6 +55,26 @@ public class OrgPersonFormDto extends BaseEntity{
@ApiModelProperty(value = "动态表单值") @ApiModelProperty(value = "动态表单值")
private List<FormValue> dynamicFormAlert; private List<FormValue> dynamicFormAlert;
@ApiModelProperty(value = "扩展属性1")
private String orgExpandAttr1;
@ApiModelProperty(value = "扩展属性2")
private String orgExpandAttr2;
@ApiModelProperty(value = "扩展属性3")
private String orgExpandAttr3;
@ApiModelProperty(value = "扩展属性4")
private String orgExpandAttr4;
private String orgExpandAttr5;
private String orgExpandAttr6;
private String orgExpandAttr7;
private String orgExpandAttr8;
public OrgPersonFormDto() { public OrgPersonFormDto() {
} }
......
...@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField; ...@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import com.yeejoin.amos.boot.biz.common.constants.CommonConstant; import com.yeejoin.amos.boot.biz.common.constants.CommonConstant;
import com.yeejoin.amos.boot.biz.common.dto.BaseDto; import com.yeejoin.amos.boot.biz.common.dto.BaseDto;
import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto; import com.yeejoin.amos.boot.module.common.api.dto.AttachmentDto;
import com.yeejoin.amos.boot.module.common.api.dto.FormValue;
import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormInstance; import com.yeejoin.amos.boot.module.common.api.entity.DynamicFormInstance;
import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty; import io.swagger.annotations.ApiModelProperty;
...@@ -49,21 +50,29 @@ public class UnitPersonInfoDto extends BaseDto { ...@@ -49,21 +50,29 @@ public class UnitPersonInfoDto extends BaseDto {
private String parentName; private String parentName;
@ApiModelProperty(value = "用户名") @ApiModelProperty(value = "用户名")
private String org_expand_attr1; private String orgExpandAttr1;
@ApiModelProperty(value = "用户密码") @ApiModelProperty(value = "用户密码")
private String org_expand_attr2; private String orgExpandAttr2;
@ApiModelProperty(value = "所属组织id") @ApiModelProperty(value = "所属组织id")
private String org_expand_attr3; private String orgExpandAttr3;
@ApiModelProperty(value = "管理应用") @ApiModelProperty(value = "管理应用")
private String org_expand_attr4; private String orgExpandAttr4;
@ApiModelProperty(value = "角色") @ApiModelProperty(value = "角色")
private String org_expand_attr5; private String orgExpandAttr5;
@ApiModelProperty(value = "更新人") private String orgExpandAttr6;
private String orgExpandAttr7;
private String orgExpandAttr8;
@ApiModelProperty(value = "更新人")
@TableField(fill= FieldFill.INSERT_UPDATE) @TableField(fill= FieldFill.INSERT_UPDATE)
private String recUserName; private String recUserName;
...@@ -82,5 +91,14 @@ public class UnitPersonInfoDto extends BaseDto { ...@@ -82,5 +91,14 @@ public class UnitPersonInfoDto extends BaseDto {
@ApiModelProperty(value = "头像") @ApiModelProperty(value = "头像")
private List<AttachmentDto> headshot; private List<AttachmentDto> headshot;
@ApiModelProperty(value = "动态表单值")
private List<FormValue> dynamicFormAlert;
@ApiModelProperty(value = "二维码")
private List<AttachmentDto> qrcode;
} }
package com.yeejoin.amos.boot.module.tzs.flc.api.mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* 企业人员Mapper
*/
public interface UnitPersonMapper {
int selectPersonListCount(@Param("map")Map<String, Object> map);
List<Map<String, Object>> selectPersonList(@Param("map")Map<String, Object> map);
}
...@@ -23,7 +23,7 @@ public interface IUnitInfoService { ...@@ -23,7 +23,7 @@ public interface IUnitInfoService {
UnitInfoDto getDtoById(Long sequenceNbr); UnitInfoDto getDtoById(Long sequenceNbr);
UnitInfoDto getUnItDtoById(Long sequenceNbr); UnitInfoDto getUnitDtoById(Long sequenceNbr);
UnitInfoDto unitInfoToDto(UnitInfo source); UnitInfoDto unitInfoToDto(UnitInfo source);
......
...@@ -3,10 +3,16 @@ package com.yeejoin.amos.boot.module.tzs.flc.api.service; ...@@ -3,10 +3,16 @@ package com.yeejoin.amos.boot.module.tzs.flc.api.service;
import com.yeejoin.amos.boot.module.tzs.flc.api.dto.UnitPersonInfoDto; import com.yeejoin.amos.boot.module.tzs.flc.api.dto.UnitPersonInfoDto;
import java.util.Map;
/** /**
* 企业人员服务类 * 企业人员服务类
*/ */
public interface IUnitPersonService { public interface IUnitPersonService {
UnitPersonInfoDto saveUser(UnitPersonInfoDto unitPersonInfoDto); UnitPersonInfoDto saveUser(UnitPersonInfoDto unitPersonInfoDto);
UnitPersonInfoDto getPersonById(Long sequenceNbr);
Object pagePerson(Long parentId, String pageNum, String pageSize, Map<String, Object> requestBody);
} }
<?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.yeejoin.amos.boot.module.tzs.flc.api.mapper.UnitPersonMapper">
<select id="selectPersonListCount" resultType="Integer">
select count(1) from (
SELECT
DISTINCT
u.*,
g.*,
TIMESTAMPDIFF(YEAR, g.birthday, CURDATE()) as ages ,
case
when count(q.sequence_nbr) > 0 then '有'
else '无' end hasLicence
FROM
cb_org_usr u
LEFT JOIN
( SELECT
v.`instance_id`,
max(case v.field_code when 'person_type' then IFNULL(v.field_value_label,v.field_value) end) personType,
max(case v.field_code when 'sex' then IFNULL(v.field_value_label,v.field_value) end) sex,
max(case v.field_code when 'birthday' then IFNULL(v.field_value_label,v.field_value) end) birthday,
max(case v.field_code when 'licence_type' then IFNULL(v.field_value_label,v.field_value) end) licenceType,
max(case v.field_code when 'licence_code' then IFNULL(v.field_value_label,v.field_value) end) licenceCode,
max(case v.field_code when 'education' then IFNULL(v.field_value_label,v.field_value) end) education,
max(case v.field_code when 'major' then IFNULL(v.field_value_label,v.field_value) end) major,
max(case v.field_code when 'phone' then IFNULL(v.field_value_label,v.field_value) end) phone,
max(case v.field_code when 'email' then IFNULL(v.field_value_label,v.field_value) end) email,
max(case v.field_code when 'province' then IFNULL(v.field_value_label,v.field_value) end) province,
max(case v.field_code when 'city' then IFNULL(v.field_value_label,v.field_value) end) city,
max(case v.field_code when 'district' then IFNULL(v.field_value_label,v.field_value) end) district,
max(case v.field_code when 'address' then IFNULL(v.field_value_label,v.field_value) end) address
FROM
`cb_dynamic_form_instance` v
WHERE
v.group_code = 1106
GROUP BY
v.`instance_id`
) g
on u.sequence_nbr = g.instance_id
LEFT JOIN tz_flc_person_quality q on q.sequence_nbr = u.sequence_nbr
where
u.biz_org_type = 'person'
AND
u.is_delete = 0
AND u.parent_id = #{map.parentId}
GROUP BY
u.sequence_nbr ,
u.biz_org_name ,
u.biz_org_code
order by u.rec_date desc
)a where a.sequence_nbr is not null
<if test="map.ages != null">
<choose>
<when test="map.ages == 0">
AND a.ages <![CDATA[ >= ]]> 60
</when>
<when test="map.ages == 1">
AND a.ages <![CDATA[ <= ]]> 59 and a.ages <![CDATA[ >= ]]> 50
</when>
<when test="map.ages == 2">
AND a.ages <![CDATA[ <= ]]> 49 and a.ages <![CDATA[ >= ]]> 40
</when>
<when test="map.ages == 3">
AND a.ages <![CDATA[ <= ]]> 39 and a.ages <![CDATA[ >= ]]> 30
</when>
<when test="map.ages == 4">
AND a.ages <![CDATA[ <= ]]> 29 and a.ages <![CDATA[ >= ]]> 20
</when>
<when test="map.ages == 5">
AND a.ages <![CDATA[ < ]]> 20
</when>
</choose>
</if>
<if test="map.sql != null">
<foreach collection="map.sql" item="item"> ${item} </foreach>
</if>
</select>
<select id="selectPersonList" resultType="Map">
select * from (
SELECT
DISTINCT
u.*,
g.*,
TIMESTAMPDIFF(YEAR, g.birthday, CURDATE()) as ages ,
case
when count(q.sequence_nbr) > 0 then '有'
else '无' end hasLicence
FROM
cb_org_usr u
LEFT JOIN
( SELECT
v.`instance_id`,
max(case v.field_code when 'person_type' then IFNULL(v.field_value_label,v.field_value) end) personType,
max(case v.field_code when 'sex' then IFNULL(v.field_value_label,v.field_value) end) sex,
max(case v.field_code when 'birthday' then IFNULL(v.field_value_label,v.field_value) end) birthday,
max(case v.field_code when 'licence_type' then IFNULL(v.field_value_label,v.field_value) end) licenceType,
max(case v.field_code when 'licence_code' then IFNULL(v.field_value_label,v.field_value) end) licenceCode,
max(case v.field_code when 'education' then IFNULL(v.field_value_label,v.field_value) end) education,
max(case v.field_code when 'major' then IFNULL(v.field_value_label,v.field_value) end) major,
max(case v.field_code when 'phone' then IFNULL(v.field_value_label,v.field_value) end) phone,
max(case v.field_code when 'email' then IFNULL(v.field_value_label,v.field_value) end) email,
max(case v.field_code when 'province' then IFNULL(v.field_value_label,v.field_value) end) province,
max(case v.field_code when 'city' then IFNULL(v.field_value_label,v.field_value) end) city,
max(case v.field_code when 'district' then IFNULL(v.field_value_label,v.field_value) end) district,
max(case v.field_code when 'address' then IFNULL(v.field_value_label,v.field_value) end) address
FROM
`cb_dynamic_form_instance` v
WHERE
v.group_code = 1106
GROUP BY
v.`instance_id`
) g
on u.sequence_nbr = g.instance_id
LEFT JOIN tz_flc_person_quality q on q.sequence_nbr = u.sequence_nbr
where
u.biz_org_type = 'person'
AND
u.is_delete = 0
AND u.parent_id = #{map.parentId}
GROUP BY
u.sequence_nbr ,
u.biz_org_name ,
u.biz_org_code
order by u.rec_date desc
)a where a.sequence_nbr is not null
<if test="map.ages != null">
<choose>
<when test="map.ages == 0">
AND a.ages <![CDATA[ >= ]]> 60
</when>
<when test="map.ages == 1">
AND a.ages <![CDATA[ <= ]]> 59 and a.ages <![CDATA[ >= ]]> 50
</when>
<when test="map.ages == 2">
AND a.ages <![CDATA[ <= ]]> 49 and a.ages <![CDATA[ >= ]]> 40
</when>
<when test="map.ages == 3">
AND a.ages <![CDATA[ <= ]]> 39 and a.ages <![CDATA[ >= ]]> 30
</when>
<when test="map.ages == 4">
AND a.ages <![CDATA[ <= ]]> 29 and a.ages <![CDATA[ >= ]]> 20
</when>
<when test="map.ages == 5">
AND a.ages <![CDATA[ < ]]> 20
</when>
</choose>
</if>
<if test="map.sql != null">
<foreach collection="map.sql" item="item"> ${item} </foreach>
</if>
LIMIT #{map.pageNum}, #{map.pageSize}
</select>
</mapper>
...@@ -260,7 +260,7 @@ public class UnitInfoController extends BaseController { ...@@ -260,7 +260,7 @@ public class UnitInfoController extends BaseController {
if (ValidationUtil.isEmpty(sequenceNbr) ) { if (ValidationUtil.isEmpty(sequenceNbr) ) {
throw new BadRequest("参数校验失败."); throw new BadRequest("参数校验失败.");
} }
return ResponseHelper.buildResponse(unitInfoServiceImpl.getUnItDtoById(sequenceNbr)); return ResponseHelper.buildResponse(unitInfoServiceImpl.getUnitDtoById(sequenceNbr));
} }
......
...@@ -26,6 +26,7 @@ import org.springframework.web.bind.annotation.PathVariable; ...@@ -26,6 +26,7 @@ import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.RequestBody; import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping; import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod; import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController; import org.springframework.web.bind.annotation.RestController;
import org.typroject.tyboot.core.foundation.enumeration.UserType; import org.typroject.tyboot.core.foundation.enumeration.UserType;
import org.typroject.tyboot.core.foundation.utils.ValidationUtil; import org.typroject.tyboot.core.foundation.utils.ValidationUtil;
...@@ -37,6 +38,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel; ...@@ -37,6 +38,7 @@ import org.typroject.tyboot.core.restful.utils.ResponseModel;
import javax.servlet.http.HttpServletRequest; import javax.servlet.http.HttpServletRequest;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* 企业人员 * 企业人员
...@@ -143,6 +145,38 @@ public class UnitPersonController extends BaseController { ...@@ -143,6 +145,38 @@ public class UnitPersonController extends BaseController {
return ResponseHelper.buildResponse(list); return ResponseHelper.buildResponse(list);
} }
/**
* 根据sequenceNbr查询
*
* @param sequenceNbr 主键
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/{sequenceNbr}")
@ApiOperation(httpMethod = "GET",value = "根据sequenceNbr查询单个用户信息", notes = "根据sequenceNbr查询单个用户信息")
public ResponseModel<UnitPersonInfoDto> selectOne(@PathVariable Long sequenceNbr) {
return ResponseHelper.buildResponse( iUnitPersonService.getPersonById(sequenceNbr));
}
/**
* 根据当前登录人获取人员信息 带分页搜索
* @return
*/
@TycloudOperation(ApiLevel = UserType.AGENCY)
@GetMapping(value = "/listMyUnitPerson")
@ApiOperation(httpMethod = "GET",value = "根据当前登录人获取人员信息 带分页搜索", notes = "根据当前登录人获取人员信息 带分页搜索")
public ResponseModel<Object> listMyUnitPerson(@RequestParam(required = false) Map<String, Object> requestBody) throws Exception {
AgencyUserModel user = Privilege.agencyUserClient.getme().getResult();
List<CompanyModel> companys = user.getCompanys();
List<OrgMenuDto> menus = new ArrayList<>();
Long parentId = -1l;
for(CompanyModel c : companys) {
OrgUsr temp = iOrgUsrService.getOne(new LambdaQueryWrapper<OrgUsr>().eq(OrgUsr::getIsDelete,false).eq(OrgUsr::getAmosOrgId,c.getSequenceNbr()));
parentId = temp.getSequenceNbr();
}
return ResponseHelper.buildResponse(iUnitPersonService.pagePerson(parentId,requestBody.get("pageNum").toString(),requestBody.get("pageSize").toString(), requestBody));
}
} }
...@@ -373,7 +373,7 @@ public class UnitInfoServiceImpl extends BaseService<UnitInfoDto, UnitInfo, Unit ...@@ -373,7 +373,7 @@ public class UnitInfoServiceImpl extends BaseService<UnitInfoDto, UnitInfo, Unit
} }
@Override @Override
public UnitInfoDto getUnItDtoById(Long sequenceNbr) { public UnitInfoDto getUnitDtoById(Long sequenceNbr) {
UnitInfo unitInfo = this.getById(sequenceNbr); UnitInfo unitInfo = this.getById(sequenceNbr);
return unitInfoToDto(unitInfo); return unitInfoToDto(unitInfo);
} }
......
...@@ -421,6 +421,29 @@ ...@@ -421,6 +421,29 @@
</sql> </sql>
</changeSet> </changeSet>
<changeSet author="kongfm" id="2021-11-24-01">
<preConditions onFail="MARK_RAN">
<sqlCheck expectedResult="0">select count(*) from cb_dynamic_form_column where sequence_nbr = 1</sqlCheck>
</preConditions>
<comment>INSERT person info </comment>
<sql>
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (1, 'person_type', '人员类型', 'select', 7, 'eq', b'0', b'0', '1106', '{\"url\": \"\", \"data\": [], \"dict\": \"PERSON_TYPE\", \"type\": \"dict\"}', NULL, NULL, '2021-11-24 13:50:47', b'0', NULL, 1, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (2, 'sex', '人员性别', 'radio', 7, 'eq', b'0', b'0', '1106', '{\"url\": \"\", \"data\": [], \"dict\": \"XB\", \"type\": \"dict\"}', NULL, NULL, '2021-11-24 13:51:29', b'0', NULL, 2, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (3, 'birthday', '出生日期', 'datetime', 7, 'eq', b'0', b'0', '1106', NULL, NULL, NULL, '2021-11-24 13:53:12', b'0', NULL, 3, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (4, 'licence_type', '证件类型', 'radio', 7, 'eq', b'0', b'0', '1106', '{\"url\": \"\", \"data\": [], \"dict\": \"PERSON_LICENCE_TYPE\", \"type\": \"dict\"}', NULL, NULL, '2021-11-24 13:53:48', b'0', NULL, 4, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (5, 'licence_code', '证件编号', 'input', 7, 'like', b'0', b'0', '1106', NULL, NULL, NULL, NULL, b'0', NULL, 5, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (6, 'education', '学历', 'radio', 7, 'eq', b'0', b'0', '1106', '{\"url\": \"\", \"data\": [], \"dict\": \"XLLX\", \"type\": \"dict\"}', NULL, NULL, '2021-11-24 13:55:02', b'0', NULL, 6, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (7, 'major', '专业', 'input', 7, 'like', b'0', b'0', '1106', NULL, NULL, NULL, NULL, b'0', NULL, 7, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (8, 'phone', '电话', 'input', 7, 'like', b'0', b'0', '1106', NULL, NULL, NULL, NULL, b'0', NULL, 8, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (9, 'email', '邮箱', 'input', 7, 'like', b'0', b'0', '1106', NULL, NULL, NULL, NULL, b'0', NULL, 9, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (10, 'province', '省', 'provinceSelect', 7, 'like', b'0', b'0', '1106', NULL, NULL, NULL, NULL, b'0', NULL, 10, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (11, 'city', '市', 'citySelect', 7, 'like', b'0', b'0', '1106', NULL, NULL, NULL, NULL, b'0', NULL, 11, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (12, 'district', '区县', 'districtSelect', 7, 'like', b'0', b'0', '1106', NULL, NULL, NULL, NULL, b'0', NULL, 12, NULL);
INSERT INTO `cb_dynamic_form_column` (`sequence_nbr`, `field_code`, `field_name`, `field_type`, `group_id`, `query_strategy`, `not_null`, `block`, `group_code`, `column_config`, `rec_user_name`, `rec_user_id`, `rec_date`, `is_delete`, `remark`, `sort`, `org_code`) VALUES (13, 'address', '详细地址', 'input', 7, 'like', b'0', b'0', '1106', NULL, NULL, NULL, NULL, b'0', NULL, 13, NULL);
</sql>
</changeSet>
</databaseChangeLog> </databaseChangeLog>
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment