diff --git a/zt-module-system/zt-module-system-server/src/main/java/com/zt/plat/module/system/convert/databus/DatabusDeptConvert.java b/zt-module-system/zt-module-system-server/src/main/java/com/zt/plat/module/system/convert/databus/DatabusDeptConvert.java new file mode 100644 index 00000000..e601729b --- /dev/null +++ b/zt-module-system/zt-module-system-server/src/main/java/com/zt/plat/module/system/convert/databus/DatabusDeptConvert.java @@ -0,0 +1,36 @@ +package com.zt.plat.module.system.convert.databus; + +import com.zt.plat.module.databus.api.data.DatabusDeptData; +import com.zt.plat.module.system.dal.dataobject.dept.DeptDO; +import org.mapstruct.Mapper; +import org.mapstruct.Mapping; +import org.mapstruct.factory.Mappers; + +import java.util.List; + +/** + * 部门数据转换器 + *
+ * 用于将 DeptDO 转换为 DatabusDeptData + * + * @author ZT + */ +@Mapper +public interface DatabusDeptConvert { + + DatabusDeptConvert INSTANCE = Mappers.getMapper(DatabusDeptConvert.class); + + /** + * DeptDO → DatabusDeptData + *
+ * 注意:deptType 和 leaderUserName 字段需要额外处理,这里不做映射
+ */
+ @Mapping(target = "deptType", ignore = true)
+ @Mapping(target = "leaderUserName", ignore = true)
+ DatabusDeptData convert(DeptDO dept);
+
+ /**
+ * List
+ * 用于将 PostDO 转换为 DatabusPostData
+ *
+ * @author ZT
+ */
+@Mapper
+public interface DatabusPostConvert {
+
+ DatabusPostConvert INSTANCE = Mappers.getMapper(DatabusPostConvert.class);
+
+ /**
+ * PostDO → DatabusPostData
+ *
+ * 注意:tenantId 字段在 PostDO 中不存在,需要额外处理
+ */
+ @Mapping(target = "tenantId", ignore = true)
+ DatabusPostData convert(PostDO post);
+
+ /**
+ * List
+ * 用于将 AdminUserDO 转换为 DatabusAdminUserData
+ *
+ * @author ZT
+ */
+@Mapper
+public interface DatabusUserConvert {
+
+ DatabusUserConvert INSTANCE = Mappers.getMapper(DatabusUserConvert.class);
+
+ /**
+ * AdminUserDO → DatabusAdminUserData
+ *
+ * 注意:depts 和 posts 字段需要额外查询和处理,这里不做映射
+ */
+ @Mapping(target = "depts", ignore = true)
+ @Mapping(target = "posts", ignore = true)
+ DatabusAdminUserData convert(AdminUserDO user);
+
+ /**
+ * List