22 changed files with 709 additions and 9 deletions
@ -0,0 +1,78 @@ |
|||
package com.ccsens.cloudutil.bean.tall.dto; |
|||
|
|||
import cn.hutool.core.collection.CollectionUtil; |
|||
import cn.hutool.core.util.StrUtil; |
|||
import com.ccsens.util.CodeEnum; |
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
import org.springframework.beans.BeanUtils; |
|||
|
|||
import javax.validation.constraints.NotNull; |
|||
import java.util.List; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: wuHuiJuan |
|||
* @create: 2019/12/05 10:37 |
|||
*/ |
|||
public class MemberRoleDto { |
|||
@ApiModel("MemberRoleDtoAssign") |
|||
@Data |
|||
public static class Assign{ |
|||
@ApiModelProperty("项目ID") |
|||
private Long projectId; |
|||
@ApiModelProperty("项目名称") |
|||
private String projectName; |
|||
@ApiModelProperty("角色") |
|||
private List<String> roleNames; |
|||
@ApiModelProperty("用户ID") |
|||
@NotNull |
|||
private Long userId; |
|||
@ApiModelProperty("用户名") |
|||
@NotNull |
|||
private String name; |
|||
@ApiModelProperty("操作人ID") |
|||
@NotNull |
|||
private Long createBy; |
|||
|
|||
|
|||
public CodeEnum check(){ |
|||
//至少有一个条件
|
|||
boolean hasProject = (projectId == null || projectId == 0 ) && StrUtil.isBlank(projectName); |
|||
if (!hasProject) { |
|||
return CodeEnum.PARAM_ERROR; |
|||
} |
|||
return CodeEnum.SUCCESS; |
|||
} |
|||
} |
|||
|
|||
@ApiModel("MemberRoleDtoDelete") |
|||
@Data |
|||
public static class Delete{ |
|||
@ApiModelProperty("项目ID") |
|||
private Long projectId; |
|||
@ApiModelProperty("项目名称") |
|||
private String projectName; |
|||
@ApiModelProperty("角色") |
|||
private List<String> roleNames; |
|||
@ApiModelProperty("用户ID") |
|||
@NotNull |
|||
private Long userId; |
|||
|
|||
public CodeEnum check(){ |
|||
//至少有一个条件
|
|||
boolean hasProject = (projectId == null || projectId == 0 ) && StrUtil.isBlank(projectName); |
|||
if (!hasProject) { |
|||
return CodeEnum.PARAM_ERROR; |
|||
} |
|||
return CodeEnum.SUCCESS; |
|||
} |
|||
|
|||
public Assign toAssign(){ |
|||
Assign assign = new Assign(); |
|||
BeanUtils.copyProperties(this, assign); |
|||
return assign; |
|||
} |
|||
} |
|||
} |
@ -0,0 +1,28 @@ |
|||
package com.ccsens.cloudutil.bean.tall.dto; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
import javax.validation.constraints.NotEmpty; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: wuHuiJuan |
|||
* @create: 2019/12/05 10:22 |
|||
*/ |
|||
public class UserDto { |
|||
//默认注册
|
|||
@Data |
|||
@ApiModel("UserDtoDefaultUserSingup") |
|||
public static class DefaultUserSingup{ |
|||
@ApiModelProperty("手机号") |
|||
@NotEmpty(message = "手机号不能为空") |
|||
private String phone; |
|||
@ApiModelProperty("账号") |
|||
@NotEmpty(message = "账号不能为空.") |
|||
private String account; |
|||
@ApiModelProperty("来源") |
|||
private byte source; |
|||
} |
|||
} |
@ -0,0 +1,20 @@ |
|||
package com.ccsens.cloudutil.bean.tall.vo; |
|||
|
|||
import io.swagger.annotations.ApiModel; |
|||
import io.swagger.annotations.ApiModelProperty; |
|||
import lombok.Data; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: wuHuiJuan |
|||
* @create: 2019/12/05 10:22 |
|||
*/ |
|||
public class UserVo { |
|||
//默认注册
|
|||
@Data |
|||
@ApiModel("UserVoDefaultUserSingup") |
|||
public static class DefaultUserSingup{ |
|||
@ApiModelProperty("用户ID") |
|||
private Long id; |
|||
} |
|||
} |
@ -0,0 +1,87 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE generatorConfiguration |
|||
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> |
|||
|
|||
<generatorConfiguration> |
|||
<context id="MySQL" targetRuntime="MyBatis3"> |
|||
<!-- 为生成的Java模型创建一个toString方法 --> |
|||
<plugin type="org.mybatis.generator.plugins.ToStringPlugin"></plugin> |
|||
|
|||
<!-- 自定义的序列化 类文件 插件 --> |
|||
<plugin type="org.mybatis.generator.plugins.SerializablePlugin"></plugin> |
|||
|
|||
<!-- 重新生成xml文件,而不是追加 --> |
|||
<plugin type="org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin" /> |
|||
|
|||
<commentGenerator> |
|||
<!-- 是否去除自动生成的注释 true:是 : false:否 --> |
|||
<property name="suppressAllComments" value="true" /> |
|||
</commentGenerator> |
|||
|
|||
<!--数据库连接的信息:驱动类、连接地址、用户名、密码 --> |
|||
<jdbcConnection driverClass="com.mysql.jdbc.Driver" |
|||
connectionURL="jdbc:mysql://49.233.89.188:3306/ht?useUnicode=true&characterEncoding=UTF-8&tinyInt1isBit=false" |
|||
userId="root" |
|||
password="po3OynBO[M3579p6L7)o"> |
|||
</jdbcConnection> |
|||
|
|||
<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和 |
|||
NUMERIC 类型解析为java.math.BigDecimal --> |
|||
<javaTypeResolver> |
|||
<property name="forceBigDecimals" value="true" /> |
|||
</javaTypeResolver> |
|||
|
|||
<!-- targetProject:生成PO类的位置 --> |
|||
<javaModelGenerator targetPackage="com.ccsens.ht.bean.po" |
|||
targetProject=".\src\main\java"> |
|||
<!-- enableSubPackages:是否让schema作为包的后缀 --> |
|||
<property name="enableSubPackages" value="false" /> |
|||
<!-- 从数据库返回的值被清理前后的空格 --> |
|||
<property name="trimStrings" value="true" /> |
|||
</javaModelGenerator> |
|||
|
|||
<!-- targetProject:mapper映射文件生成的位置 --> |
|||
<sqlMapGenerator targetPackage="mapper_raw" |
|||
targetProject=".\src\main\resources"> |
|||
<!-- enableSubPackages:是否让schema作为包的后缀 --> |
|||
<property name="enableSubPackages" value="false" /> |
|||
</sqlMapGenerator> |
|||
|
|||
<!-- targetPackage:mapper接口生成的位置 --> |
|||
<javaClientGenerator type="XMLMAPPER" |
|||
targetPackage="com.ccsens.ht.persist.mapper" |
|||
targetProject=".\src\main\java"> |
|||
<!-- enableSubPackages:是否让schema作为包的后缀 --> |
|||
<property name="enableSubPackages" value="false" /> |
|||
</javaClientGenerator> |
|||
<!--<table tableName="t_ht_doctor" domainObjectName="HtDoctor"></table> |
|||
<table tableName="t_ht_doctor_audit" domainObjectName="HtDoctorAudit"></table> |
|||
<table tableName="t_ht_opretion_log" domainObjectName="HtOperationLog"></table> |
|||
<table tableName="t_ht_patient" domainObjectName="HtPatient"></table> |
|||
<table tableName="t_ht_patient_acp" domainObjectName="HtPatientAcp"></table> |
|||
<table tableName="t_ht_patient_body" domainObjectName="HtPatientBody"></table> |
|||
<table tableName="t_ht_patient_family" domainObjectName="HtPatientFamily"></table> |
|||
<table tableName="t_ht_patient_family_illness" domainObjectName="HtPatientFamilyIllness"></table> |
|||
<table tableName="t_ht_patient_follow_up" domainObjectName="HtPatientFollowUp"></table> |
|||
<table tableName="t_ht_patient_illness_history" domainObjectName="HtPatientIllnessHistory"></table> |
|||
<table tableName="t_ht_patient_parent_illness" domainObjectName="HtPatientParentIllness"></table> |
|||
<table tableName="t_ht_patient_persional" domainObjectName="HtPatientPersional"></table> |
|||
<table tableName="t_ht_patient_question_record" domainObjectName="HtPatientQuestionRecord"></table> |
|||
<table tableName="t_ht_patient_report" domainObjectName="HtPatientReport"></table> |
|||
<table tableName="t_ht_patient_score" domainObjectName="HtPatientScore"></table> |
|||
<table tableName="t_ht_position" domainObjectName="HtPosition"></table> |
|||
<table tableName="t_ht_question" domainObjectName="HtQuestion"></table> |
|||
<table tableName="t_ht_question_introducer" domainObjectName="HtQuestionIntroducer"></table> |
|||
<table tableName="t_ht_question_option" domainObjectName="HtQuestionOption"></table> |
|||
<table tableName="t_ht_question_scoring_rule" domainObjectName="HtQuestionScoringRule"></table> |
|||
<table tableName="t_ht_relation" domainObjectName="HtRelation"></table> |
|||
<table tableName="t_ht_report" domainObjectName="HtReport"></table> |
|||
<table tableName="t_ht_title" domainObjectName="HtTitle"></table>--> |
|||
<table tableName="t_ht_patient_report_record" domainObjectName="HtPatientReportRecord"></table> |
|||
<!-- 有些表的字段需要指定java类型 |
|||
<table schema="" tableName=""> |
|||
<columnOverride column="" javaType="" /> |
|||
</table> --> |
|||
</context> |
|||
</generatorConfiguration> |
@ -1,8 +1,12 @@ |
|||
package com.ccsens.tall.persist.dao; |
|||
|
|||
import com.ccsens.tall.bean.po.ProMemberRole; |
|||
import com.ccsens.tall.persist.mapper.ProMemberRoleMapper; |
|||
import org.springframework.stereotype.Repository; |
|||
|
|||
import java.util.List; |
|||
|
|||
@Repository |
|||
public interface ProMemberRoleDao extends ProMemberRoleMapper{ |
|||
void insertBatch(List<ProMemberRole> members); |
|||
} |
|||
|
@ -1,7 +1,27 @@ |
|||
package com.ccsens.tall.service; |
|||
|
|||
import com.ccsens.cloudutil.bean.tall.dto.MemberRoleDto; |
|||
import com.ccsens.tall.bean.po.ProMemberRole; |
|||
import com.ccsens.util.CodeEnum; |
|||
|
|||
public interface IProMemberRoleService { |
|||
void saveMemberRole(ProMemberRole memberRole); |
|||
|
|||
/** |
|||
*@Description: 为用户分配角色 |
|||
* @param assign |
|||
*@return: CodeEnum |
|||
*@Author: wuhuijuan |
|||
*@date: 2019/10/28 10:49 |
|||
*/ |
|||
CodeEnum assignRoles(MemberRoleDto.Assign assign); |
|||
|
|||
/** |
|||
*@Description:删除用户角色 |
|||
* @param deleteDto |
|||
*@return: com.ccsens.ptpro.util.CodeEnum |
|||
*@Author: wuhuijuan |
|||
*@date: 2019/10/28 11:53 |
|||
*/ |
|||
CodeEnum deleteRole(MemberRoleDto.Delete deleteDto); |
|||
} |
|||
|
@ -1,21 +1,163 @@ |
|||
package com.ccsens.tall.service; |
|||
|
|||
import com.ccsens.tall.bean.po.ProMemberRole; |
|||
import cn.hutool.core.collection.CollectionUtil; |
|||
import cn.hutool.core.lang.Snowflake; |
|||
import cn.hutool.core.util.StrUtil; |
|||
import com.ccsens.cloudutil.bean.tall.dto.MemberRoleDto; |
|||
import com.ccsens.tall.bean.po.*; |
|||
import com.ccsens.tall.bean.vo.MemberVo; |
|||
import com.ccsens.tall.persist.dao.ProMemberDao; |
|||
import com.ccsens.tall.persist.dao.ProMemberRoleDao; |
|||
import com.ccsens.tall.persist.dao.ProRoleDao; |
|||
import com.ccsens.tall.persist.dao.SysProjectDao; |
|||
import com.ccsens.util.CodeEnum; |
|||
import com.ccsens.util.WebConstant; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.stereotype.Service; |
|||
import org.springframework.transaction.annotation.Propagation; |
|||
import org.springframework.transaction.annotation.Transactional; |
|||
|
|||
import java.util.ArrayList; |
|||
import java.util.List; |
|||
|
|||
|
|||
@Slf4j |
|||
@Service |
|||
@Transactional(propagation = Propagation.REQUIRED,rollbackFor = Exception.class) |
|||
public class ProMemberRoleService implements IProMemberRoleService{ |
|||
@Autowired |
|||
private ProMemberRoleDao proMemberRoleDao; |
|||
@Autowired |
|||
private ProRoleDao proRoleDao; |
|||
@Autowired |
|||
private IUserService userService; |
|||
@Autowired |
|||
private SysProjectDao sysProjectDao; |
|||
@Autowired |
|||
private ProMemberDao proMemberDao; |
|||
@Autowired |
|||
private Snowflake snowflake; |
|||
|
|||
@Override |
|||
public void saveMemberRole(ProMemberRole memberRole) { |
|||
proMemberRoleDao.insertSelective(memberRole); |
|||
} |
|||
|
|||
@Override |
|||
public CodeEnum assignRoles(MemberRoleDto.Assign assign) { |
|||
log.info("分配角色参数:{}", assign); |
|||
CodeEnum check = assign.check(); |
|||
|
|||
if (check != CodeEnum.SUCCESS) { |
|||
log.info("没有填入项目信息"); |
|||
return check; |
|||
} |
|||
Long projectId = getaProjectId(assign.getProjectId(), assign.getProjectName()); |
|||
//查询项目下的角色信息
|
|||
assign.setProjectId(projectId); |
|||
List<ProRole> roles = proRoleDao.selectByProjectAndName(assign); |
|||
log.info("角色信息:{}", roles); |
|||
if (CollectionUtil.isEmpty(roles)) { |
|||
return CodeEnum.ROLE_NOT_FOUND; |
|||
} |
|||
|
|||
//查找用户手机号
|
|||
String mobile = userService.getPhone(assign.getUserId()); |
|||
if (StrUtil.isEmpty(mobile)) { |
|||
log.info("没有找到{}的手机号", assign.getUserId()); |
|||
return CodeEnum.PARAM_ERROR; |
|||
} |
|||
log.info("{}对应的手机号:{}", assign.getUserId(), mobile); |
|||
|
|||
|
|||
|
|||
//查询项目下是否有用户
|
|||
MemberVo.MemberInfo memberInfo = proMemberDao.selectByProjectIdAndUserId(projectId, assign.getUserId()); |
|||
final Long memberId; |
|||
if (memberInfo != null) { |
|||
memberId = memberInfo.getId(); |
|||
} else { |
|||
log.info("添加用户"); |
|||
ProMember proMember = new ProMember(); |
|||
proMember.setId(snowflake.nextId()); |
|||
proMember.setProjectId(projectId); |
|||
proMember.setNickname(assign.getName()); |
|||
proMember.setPhone(mobile); |
|||
proMember.setJoinTime(System.currentTimeMillis()); |
|||
proMemberDao.insertSelective(proMember); |
|||
memberId = proMember.getId(); |
|||
} |
|||
|
|||
//封装members对象
|
|||
List<ProMemberRole> memberRoles = new ArrayList<>(); |
|||
roles.forEach(role -> { |
|||
//判断是否已为用户分配角色
|
|||
ProMemberRoleExample example = new ProMemberRoleExample(); |
|||
example.createCriteria().andMemberIdEqualTo(memberId).andRoleIdEqualTo(role.getId()); |
|||
List<ProMemberRole> proMemberRoles = proMemberRoleDao.selectByExample(example); |
|||
if (CollectionUtil.isEmpty(proMemberRoles)) { |
|||
ProMemberRole memberRole = new ProMemberRole(); |
|||
memberRole.setId(snowflake.nextId()); |
|||
memberRole.setMemberId(memberId); |
|||
memberRole.setRoleId(role.getId()); |
|||
memberRoles.add(memberRole); |
|||
} |
|||
}); |
|||
if (CollectionUtil.isNotEmpty(memberRoles)) { |
|||
log.info("批量添加用户角色"); |
|||
proMemberRoleDao.insertBatch(memberRoles); |
|||
} |
|||
return CodeEnum.SUCCESS; |
|||
} |
|||
|
|||
/** |
|||
* 获取项目ID |
|||
* @param projectId |
|||
* @param projectName |
|||
* @return |
|||
*/ |
|||
private Long getaProjectId(Long projectId, String projectName) { |
|||
Long id = projectId; |
|||
if (id == null || id == 0) { |
|||
SysProjectExample projectExample = new SysProjectExample(); |
|||
projectExample.createCriteria().andNameEqualTo(projectName); |
|||
List<SysProject> sysProjects = sysProjectDao.selectByExample(projectExample); |
|||
if (CollectionUtil.isEmpty(sysProjects)) { |
|||
log.info("未找到项目:{}", projectName); |
|||
return null; |
|||
} |
|||
id = sysProjects.get(0).getId(); |
|||
} |
|||
return id; |
|||
} |
|||
|
|||
@Override |
|||
public CodeEnum deleteRole(MemberRoleDto.Delete deleteDto) { |
|||
//查询项目下的角色信息
|
|||
List<ProRole> roles = proRoleDao.selectByProjectAndName(deleteDto.toAssign()); |
|||
log.info("角色信息:{}", roles); |
|||
if (CollectionUtil.isEmpty(roles)) { |
|||
return CodeEnum.ROLE_NOT_FOUND; |
|||
} |
|||
List<Long> roleIds = new ArrayList<>(); |
|||
roles.forEach(role -> { |
|||
roleIds.add(role.getId()); |
|||
}); |
|||
|
|||
//获取项目ID
|
|||
Long projectId = getaProjectId(deleteDto.getProjectId(), deleteDto.getProjectName()); |
|||
log.info("项目ID:{}", projectId); |
|||
if (projectId == null) { |
|||
return CodeEnum.PARAM_ERROR; |
|||
} |
|||
//查询项目下是否有用户
|
|||
MemberVo.MemberInfo memberInfo = proMemberDao.selectByProjectIdAndUserId(projectId, deleteDto.getUserId()); |
|||
ProMemberRoleExample whereExample = new ProMemberRoleExample(); |
|||
whereExample.createCriteria().andMemberIdEqualTo(memberInfo.getId()).andRoleIdIn(roleIds); |
|||
ProMemberRole role = new ProMemberRole(); |
|||
role.setRecStatus(WebConstant.STATUS_DELETE); |
|||
proMemberRoleDao.updateByExampleSelective(role, whereExample); |
|||
return CodeEnum.SUCCESS; |
|||
} |
|||
} |
|||
|
@ -0,0 +1,45 @@ |
|||
package com.ccsens.tall.web; |
|||
|
|||
import com.ccsens.cloudutil.bean.tall.vo.UserVo; |
|||
import com.ccsens.tall.bean.dto.UserDto; |
|||
import com.ccsens.tall.service.IProMemberRoleService; |
|||
import com.ccsens.tall.service.IUserService; |
|||
import com.ccsens.util.JsonResponse; |
|||
import io.swagger.annotations.Api; |
|||
import io.swagger.annotations.ApiImplicitParam; |
|||
import io.swagger.annotations.ApiImplicitParams; |
|||
import io.swagger.annotations.ApiOperation; |
|||
import lombok.extern.slf4j.Slf4j; |
|||
import org.springframework.beans.factory.annotation.Autowired; |
|||
import org.springframework.validation.annotation.Validated; |
|||
import org.springframework.web.bind.annotation.RequestBody; |
|||
import org.springframework.web.bind.annotation.RequestMapping; |
|||
import org.springframework.web.bind.annotation.RestController; |
|||
|
|||
import java.util.Map; |
|||
|
|||
/** |
|||
* @description: |
|||
* @author: wuHuiJuan |
|||
* @create: 2019/12/05 10:17 |
|||
*/ |
|||
@Slf4j |
|||
@Api(tags = "用户角色相关操作API" , description = "MemberRoleController | 项目中用户角色添加/删除") |
|||
@RestController |
|||
public class MemberRoleController { |
|||
|
|||
@Autowired |
|||
private IProMemberRoleService memberRoleService; |
|||
@Autowired |
|||
private IUserService userService; |
|||
|
|||
@ApiOperation(value = "默认注册",notes = "默认帮助用户注册") |
|||
@RequestMapping("defaultRegister") |
|||
public JsonResponse defaultRegister(@Validated @RequestBody com.ccsens.cloudutil.bean.tall.dto.UserDto.DefaultUserSingup signup) { |
|||
|
|||
long userId = userService.defaultRegisterUser(signup); |
|||
UserVo.DefaultUserSingup upVo = new UserVo.DefaultUserSingup(); |
|||
upVo.setId(userId); |
|||
return JsonResponse.newInstance().ok(upVo); |
|||
} |
|||
} |
@ -0,0 +1,15 @@ |
|||
<?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.ccsens.tall.persist.dao.ProMemberRoleDao"> |
|||
|
|||
<insert id="insertBatch" parameterType="List"> |
|||
insert into t_pro_member_role (id, member_id, role_id, |
|||
created_at, updated_at, rec_status |
|||
) values |
|||
<foreach collection="list" item="item" separator=","> |
|||
(#{item.id,jdbcType=BIGINT}, #{item.memberId,jdbcType=BIGINT}, #{item.roleId,jdbcType=BIGINT}, now(), now(), 0) |
|||
</foreach> |
|||
|
|||
</insert> |
|||
|
|||
</mapper> |
@ -0,0 +1,85 @@ |
|||
<?xml version="1.0" encoding="UTF-8"?> |
|||
<!DOCTYPE generatorConfiguration |
|||
PUBLIC "-//mybatis.org//DTD MyBatis Generator Configuration 1.0//EN" |
|||
"http://mybatis.org/dtd/mybatis-generator-config_1_0.dtd"> |
|||
|
|||
<generatorConfiguration> |
|||
<context id="MySQL" targetRuntime="MyBatis3"> |
|||
<!-- 为生成的Java模型创建一个toString方法 --> |
|||
<plugin type="org.mybatis.generator.plugins.ToStringPlugin"></plugin> |
|||
|
|||
<!-- 自定义的序列化 类文件 插件 --> |
|||
<plugin type="org.mybatis.generator.plugins.SerializablePlugin"></plugin> |
|||
|
|||
<!-- 重新生成xml文件,而不是追加 --> |
|||
<plugin type="org.mybatis.generator.plugins.UnmergeableXmlMappersPlugin" /> |
|||
|
|||
<commentGenerator> |
|||
<!-- 是否去除自动生成的注释 true:是 : false:否 --> |
|||
<property name="suppressAllComments" value="true" /> |
|||
</commentGenerator> |
|||
|
|||
<!--数据库连接的信息:驱动类、连接地址、用户名、密码 --> |
|||
<jdbcConnection driverClass="com.mysql.jdbc.Driver" |
|||
connectionURL="jdbc:mysql://49.233.89.188:3306/tall?useUnicode=true&characterEncoding=UTF-8&tinyInt1isBit=false" |
|||
userId="root" |
|||
password="po3OynBO[M3579p6L7)o"> |
|||
</jdbcConnection> |
|||
|
|||
<!-- 默认false,把JDBC DECIMAL 和 NUMERIC 类型解析为 Integer,为 true时把JDBC DECIMAL 和 |
|||
NUMERIC 类型解析为java.math.BigDecimal --> |
|||
<javaTypeResolver> |
|||
<property name="forceBigDecimals" value="true" /> |
|||
</javaTypeResolver> |
|||
|
|||
<!-- targetProject:生成PO类的位置 --> |
|||
<javaModelGenerator targetPackage="com.ccsens.tall.bean.po" |
|||
targetProject=".\src\main\java"> |
|||
<!-- enableSubPackages:是否让schema作为包的后缀 --> |
|||
<property name="enableSubPackages" value="false" /> |
|||
<!-- 从数据库返回的值被清理前后的空格 --> |
|||
<property name="trimStrings" value="true" /> |
|||
</javaModelGenerator> |
|||
|
|||
<!-- targetProject:mapper映射文件生成的位置 --> |
|||
<sqlMapGenerator targetPackage="mapper_raw" |
|||
targetProject=".\src\main\resources"> |
|||
<!-- enableSubPackages:是否让schema作为包的后缀 --> |
|||
<property name="enableSubPackages" value="false" /> |
|||
</sqlMapGenerator> |
|||
|
|||
<!-- targetPackage:mapper接口生成的位置 --> |
|||
<javaClientGenerator type="XMLMAPPER" |
|||
targetPackage="com.ccsens.tall.persist.mapper" |
|||
targetProject=".\src\main\java"> |
|||
<!-- enableSubPackages:是否让schema作为包的后缀 --> |
|||
<property name="enableSubPackages" value="false" /> |
|||
</javaClientGenerator> |
|||
<!--<table tableName="t_sys_user" domainObjectName="SysUser"></table> |
|||
<table tableName="t_sys_auth" domainObjectName="SysAuth"></table> |
|||
<table tableName="t_sys_grade" domainObjectName="SysGrade"></table> |
|||
<table tableName="t_sys_balance_log" domainObjectName="SysBalanceLog"></table> |
|||
<table tableName="t_sys_project" domainObjectName="SysProject"></table> |
|||
<table tableName="t_pro_scene" domainObjectName="ProScene"></table> |
|||
<table tableName="t_pro_role" domainObjectName="ProRole"></table> |
|||
<table tableName="t_pro_member_role" domainObjectName="ProMemberRole"></table> |
|||
<table tableName="t_pro_member" domainObjectName="ProMember"></table> |
|||
<table tableName="t_pro_exclude_role" domainObjectName="ProExcludeRole"></table> |
|||
<table tableName="t_pro_task" domainObjectName="ProTask"></table> |
|||
<table tableName="t_sub_task" domainObjectName="SubTask"></table> |
|||
<table tableName="t_pro_log" domainObjectName="ProLog"></table> |
|||
<table tableName="t_task_plugin" domainObjectName="TaskPlugin"></table> |
|||
<table tableName="t_task_deliver" domainObjectName="TaskDeliver"></table> |
|||
<table tableName="t_deliver_post_log" domainObjectName="DeliverPostLog"></table> |
|||
<table tableName="t_commited_file" domainObjectName="CommitedFile"></table> |
|||
<table tableName="t_msg" domainObjectName="Msg"></table> |
|||
<table tableName="t_msg_log" domainObjectName="MsgLog"></table> |
|||
<table tableName="t_stakeholder" domainObjectName="Stakeholder"></table> |
|||
<table tableName="t_task_hardware" domainObjectName="TaskHardware"></table>--> |
|||
<table tableName="t_sys_user" domainObjectName="SysUser"></table> |
|||
<!-- 有些表的字段需要指定java类型 |
|||
<table schema="" tableName=""> |
|||
<columnOverride column="" javaType="" /> |
|||
</table> --> |
|||
</context> |
|||
</generatorConfiguration> |
Loading…
Reference in new issue