初始代码

This commit is contained in:
wangmingwei
2026-04-21 16:49:46 +08:00
parent aae9dc4036
commit f0453ff3a3
2396 changed files with 256575 additions and 0 deletions

View File

@@ -0,0 +1,22 @@
<?xml version="1.0" encoding="UTF-8"?>
<project xmlns="http://maven.apache.org/POM/4.0.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://maven.apache.org/POM/4.0.0 http://maven.apache.org/xsd/maven-4.0.0.xsd">
<parent>
<artifactId>yunzhupaas-visualdev-portal</artifactId>
<groupId>com.yunzhupaas</groupId>
<version>5.2.0-RELEASE</version>
</parent>
<modelVersion>4.0.0</modelVersion>
<artifactId>yunzhupaas-visualdev-portal-entity</artifactId>
<dependencies>
<dependency>
<groupId>com.yunzhupaas</groupId>
<artifactId>yunzhupaas-common-all</artifactId>
<version>${project.version}</version>
</dependency>
</dependencies>
</project>

View File

@@ -0,0 +1,38 @@
package com.yunzhupaas.portal.constant;
/**
* 类功能
*
* @author 云筑产品开发平台组
* @version v3.4.6
* @copyrignt 深圳市乐程软件有限公司
* @date 2023-02-23
*/
public class PortalConst {
/* ========== platform ======== */
/**
* 网页端
*/
public final static String PC = "pc";
public final static String WEB = "Web";
/**
* 手机端
*/
public final static String APP = "App";
/**
* 模板
*/
public final static String MODEL = "model";
public final static String CUSTOM = "custom";
public final static String RELEASE = "release";
public final static String AUTHORIZE_PORTAL_MANAGE = "portalManage";
public final static String AUTHORIZE_PORTAL_ROLE = "role";
}

View File

@@ -0,0 +1,46 @@
package com.yunzhupaas.portal.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.base.entity.SuperEntity;
import lombok.Data;
import java.io.Serializable;
/**
* <p>
*
* </p>
*
* @author
* @since 2023-04-19
*/
@Data
@TableName("base_portal_data")
@Schema(description = "PortalData对象")
public class PortalDataEntity extends SuperEntity<String> implements Serializable {
@Schema(description = "门户ID")
@TableField("F_PORTAL_ID")
private String portalId;
@Schema(description = "PC:网页端 APP:手机端")
@TableField("F_PLATFORM")
private String platform;
@Schema(description = "表单配置JSON")
@TableField("F_FORM_DATA")
private String formData;
@Schema(description = "系统ID")
@TableField("F_SYSTEM_ID")
private String systemId;
@Schema(description = "类型mod模型、custom自定义")
@TableField("F_TYPE")
private String type;
}

View File

@@ -0,0 +1,57 @@
package com.yunzhupaas.portal.entity;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.base.entity.SuperExtendEntity;
import lombok.Data;
/**
* 门户
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司http://www.szlecheng.cn
* @date 2021/3/16
*/
@Data
@TableName("base_portal")
public class PortalEntity extends SuperExtendEntity.SuperExtendDEEntity<String> {
@Schema(description = "名称")
@TableField("F_FULL_NAME")
private String fullName;
@Schema(description = "编码")
@TableField("F_EN_CODE")
private String enCode;
@Schema(description = "分类(数据字典维护)")
@TableField("F_CATEGORY")
private String category;
@Schema(description = "类型(0-页面设计,1-自定义路径)")
@TableField("F_TYPE")
private Integer type;
@Schema(description = "静态页面路径")
@TableField("F_CUSTOM_URL")
private String customUrl;
@Schema(description = "类型(0-页面,1-外链)")
@TableField("F_LINK_TYPE")
private Integer linkType;
@TableField("F_STATE")
private Integer state;
@Schema(description = "移动锁定(0-未锁定,1-锁定)")
@TableField("F_ENABLED_LOCK")
private Integer enabledLock;
/**
* 发布时勾选平台类型
*/
@TableField("F_PLATFORM_RELEASE" )
private String platformRelease;
}

View File

@@ -0,0 +1,13 @@
package com.yunzhupaas.portal.model;
import com.alibaba.fastjson.annotation.JSONField;
import lombok.Data;
@Data
public class EmailVO {
private String id;
@JSONField(name="subject")
private String fullName;
private Long creatorTime;
}

View File

@@ -0,0 +1,16 @@
package com.yunzhupaas.portal.model;
import lombok.Data;
import java.util.ArrayList;
import java.util.List;
@Data
public class FlowTodo {
private List<String> flowToSignType = new ArrayList<>();
private List<String> flowTodoType = new ArrayList<>();
private List<String> flowDoingType = new ArrayList<>();
private List<String> flowDoneType = new ArrayList<>();
private List<String> flowCirculateType = new ArrayList<>();
}

View File

@@ -0,0 +1,12 @@
package com.yunzhupaas.portal.model;
import lombok.Data;
@Data
public class FlowTodoCountVO {
private Long flowToSign = 0L;
private Long flowTodo = 0L;
private Long flowDoing = 0L;
private Long flowDone = 0L;
private Long flowCirculate = 0L;
}

View File

@@ -0,0 +1,38 @@
package com.yunzhupaas.portal.model;
import lombok.Data;
/**
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @date 2024/3/16 8:49
*/
@Data
public class FlowTodoVO {
public String id;
public String fullName;
public String enCode;
public String flowId;
public Integer formType;
public Integer status;
public String processId;
public String taskNodeId;
public String taskOperatorId;
public Long creatorTime;
public Integer type;
public String taskId;
}

View File

@@ -0,0 +1,12 @@
package com.yunzhupaas.portal.model;
import lombok.Data;
@Data
public class MyFlowTodoVO {
private String id;
private Integer enabledMark;
private Long startTime;
private Long endTime;
private String content;
}

View File

@@ -0,0 +1,44 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司http://www.szlecheng.cn
* @date 2024-10-21 14:23:30
*/
@Data
@Schema(description="门户创建表单")
public class PortalCrForm {
@Schema(description = "名称")
private String fullName;
@Schema(description = "编码")
private String enCode;
@Schema(description = "是否启用")
private Integer enabledMark;
@Schema(description = "描述")
private String description;
@Schema(description = "表单数据json")
private String formData;
@Schema(description = "分类")
private String category;
@Schema(description = "排序")
private Long sortCode;
@Schema(description = "类型0-门户设计,1-配置路径")
private Integer type;
@Schema(description = "配置路径")
private String customUrl;
@Schema(description = "链接路径")
private String appCustomUrl;
@Schema(description = "链接类型")
private Integer linkType;
@Schema(description = "锁定开关0-未锁定1-锁定")
private Integer enabledLock;
}

View File

@@ -0,0 +1,61 @@
package com.yunzhupaas.portal.model;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yunzhupaas.base.MyBatisPrimaryBase;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.portal.constant.PortalConst;
import com.yunzhupaas.portal.entity.PortalDataEntity;
import com.yunzhupaas.util.UserProvider;
import com.yunzhupaas.util.context.SpringContext;
import lombok.Data;
import java.util.Objects;
/**
* 类功能
*
* @author 云筑产品开发平台组
* @version v3.4.8
* @copyrignt 深圳市乐程软件有限公司
* @date 2023-04-21
*/
@Data
public class PortalCustomPrimary extends MyBatisPrimaryBase<PortalDataEntity> {
/** 平台 */
private String platform = PortalConst.WEB;
/** 门户ID */
private String portalId;
/** 系统ID */
private String systemId;
/** 用户ID */
private String creatorId;
/** 类型mod模型、custom自定义 */
private String type = PortalConst.CUSTOM;
public PortalCustomPrimary(String platform, String portalId, String systemId, String userId) {
if(platform != null) this.platform = platform;
this.portalId = portalId;
this.systemId = systemId;
this.creatorId = userId;
}
public PortalCustomPrimary(String platform, String portalId){
if(platform != null) this.platform = platform;
this.portalId = portalId;
UserInfo userInfo = SpringContext.getBean(UserProvider.class).get();
this.systemId = Objects.equals(platform, PortalConst.WEB) ? userInfo.getSystemId() : userInfo.getAppSystemId();
this.creatorId = userInfo.getUserId();
}
public QueryWrapper<PortalDataEntity> getQuery(){
queryWrapper.lambda().eq(PortalDataEntity::getType, type);
if(this.platform != null) queryWrapper.lambda().eq(PortalDataEntity::getPlatform, platform);
if(this.portalId != null) queryWrapper.lambda().eq(PortalDataEntity::getPortalId, portalId);
if(this.systemId != null) queryWrapper.lambda().eq(PortalDataEntity::getSystemId, systemId);
// if(this.creatorId != null) queryWrapper.lambda().eq(PortalDataEntity::getCreatorUserId, creatorId);
return queryWrapper;
}
}

View File

@@ -0,0 +1,27 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 类功能
*
* @author 云筑产品开发平台组
* @version v3.4.8
* @copyrignt 深圳市乐程软件有限公司
* @date 2023-04-19
*/
@Data
public class PortalDataForm {
@Schema(description = "门户id")
private String portalId;
@Schema(description = "PC:网页端 APP:手机端 ")
private String platform;
@Schema(description = "PC:网页端 APP:手机端 ")
private String formData;
}

View File

@@ -0,0 +1,29 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 类功能
*
* @author 云筑产品开发平台组
* @version v3.4.6
* @copyrignt 深圳市乐程软件有限公司
* @date 2023-03-24
*/
@Data
public class PortalDefaultDTO {
@Schema(description = "默认门户ID")
private String defaultPortalId;
@Schema(description = "系统ID")
private String systemId;
public PortalDefaultDTO(){
}
}

View File

@@ -0,0 +1,57 @@
package com.yunzhupaas.portal.model;
import lombok.Data;
import java.util.Date;
/**
* 门户导入导出
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司http://www.szlecheng.cn
* @date 2021/7/15
*/
@Data
public class PortalExportDataVo {
private String id;
private String description;
private Long sortCode;
private Integer enabledMark;
private Date creatorTime;
private String creatorUser;
private Date lastModifyTime;
private String lastModifyUser;
private Integer deleteMark;
private Date deleteTime;
private String deleteUserId;
private String fullName;
private String enCode;
private String category;
private String formData;
private Integer type;
private String customUrl;
private Integer linkType;
private String modelType;
private Integer enabledLock;
}

View File

@@ -0,0 +1,30 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
*
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司http://www.szlecheng.cn
* @author 云筑产品开发平台组
* @date 2024/3/16
*/
@Data
@Schema(description="门户信息")
public class PortalInfoAuthVO {
@Schema(description = "表单josn")
private String formData;
@Schema(description = "门户类型0-用户配置1-自定义外链")
private Integer type;
@Schema(description = "链接路径")
private String customUrl;
@Schema(description = "链接路径")
private String appCustomUrl;
@Schema(description = "链接类型")
private Integer linkType;
@Schema(description = "锁定开关0-未锁定1锁定")
private Integer enabledLock;
}

View File

@@ -0,0 +1,42 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
*
*
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @author 管理员/admin
* @date 2024-10-21 14:23:30
*/
@Data
public class PortalInfoVO extends PortalCrForm {
private String id;
@Schema(description = "pc发布标识")
Integer pcIsRelease;
@Schema(description = "app发布标识")
Integer appIsRelease;
@Schema(description = "pc是否发布门户" )
private Integer pcPortalIsRelease;
@Schema(description = "app是否发布门户" )
private Integer appPortalIsRelease;
@Schema(description = "pc已发布菜单名称" )
private String pcReleaseName;
@Schema(description = "app已发布菜单名称" )
private String appReleaseName;
@Schema(description = "pc已发布门户名称" )
private String pcPortalReleaseName;
@Schema(description = "app已发布门户名称" )
private String appPortalReleaseName;
@Schema(description = "发布时勾选平台类型" )
private String platformRelease;
}

View File

@@ -0,0 +1,27 @@
package com.yunzhupaas.portal.model;
import lombok.Data;
/**
* 可视化列表模型
*
* @author 云筑产品开发平台组
* @version V3.2.8
* @copyright 深圳市乐程软件有限公司http://www.szlecheng.cn
* @date 2021/11/20
*/
@Data
public class PortalListModel {
private String category;
private Long creatorTime;
private String creatorUser;
private String enCode;
private Integer enabledMark;
private String fullName;
private String id;
private Integer type;
private Long lastModifyTime;
private String lastModifyUser;
private Long sortCode;
}

View File

@@ -0,0 +1,29 @@
package com.yunzhupaas.portal.model;
import lombok.Data;
import java.util.List;
/**
*
*
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
* @author 管理员/admin
* @date 2024-10-21 14:23:30
*/
@Data
public class PortalListVO{
private String id;
private Long num;
private String fullName;
private String enCode;
private Integer enabledMark;
private Long creatorTime;
private String creatorUser;
private Long lastModifyTime;
private String lastModifyUser;
private Long sortCode;
private List<PortalListVO> children;
private Integer enabledLock;
}

View File

@@ -0,0 +1,41 @@
package com.yunzhupaas.portal.model;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yunzhupaas.base.MyBatisPrimaryBase;
import com.yunzhupaas.portal.constant.PortalConst;
import com.yunzhupaas.portal.entity.PortalDataEntity;
import lombok.Data;
/**
* 类功能
*
* @author 云筑产品开发平台组
* @version v3.4.8
* @copyrignt 深圳市乐程软件有限公司
* @date 2023-04-21
*/
@Data
public class PortalModPrimary extends MyBatisPrimaryBase<PortalDataEntity> {
/**
* 门户ID
*/
private String portalId;
/**
* 类型model模型、custom自定义
*/
private String type = PortalConst.MODEL;
public PortalModPrimary(String portalId){
this.portalId = portalId;
}
public QueryWrapper<PortalDataEntity> getQuery(){
queryWrapper.lambda().eq(PortalDataEntity::getType, type);
if(this.portalId != null) queryWrapper.lambda().eq(PortalDataEntity::getPortalId, portalId);
return queryWrapper;
}
}

View File

@@ -0,0 +1,34 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import com.yunzhupaas.base.Pagination;
import lombok.Data;
/**
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司http://www.szlecheng.cn
* @date 2024-10-21 14:23:30
*/
@Data
@Schema(description="查询条件")
public class PortalPagination extends Pagination {
@Schema(description = "分类(字典)")
private String category;
@Schema(description = "类型(0-门户设计,1-配置路径)")
private Integer type;
@Schema(description = "锁定(0-禁用,1-启用)")
private Integer enabledLock;
@Schema(description = "平台")
private String platform = "web";
@Schema(description = "状态0-未发布1-已发布2-已修改")
private Integer isRelease;
}

View File

@@ -0,0 +1,33 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
* 发布(同步)表单
*
* @author 云筑产品开发平台组
* @version v3.4.6
* @copyrignt 深圳市乐程软件有限公司
* @date 2023-02-23
*/
@Data
@Schema(description="门户创建表单")
public class PortalReleaseForm extends ReleaseModel {
@Schema(description = "pc标识")
private Integer pcPortal;
@Schema(description = "pc应用集合")
private List<String> pcPortalSystemId;
@Schema(description = "app标识")
private Integer appPortal;
@Schema(description = "app应用集合")
private List<String> appPortalSystemId;
@Schema(description = "发布选中平台" )
private String platformRelease;
}

View File

@@ -0,0 +1,45 @@
package com.yunzhupaas.portal.model;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.yunzhupaas.base.MyBatisPrimaryBase;
import com.yunzhupaas.portal.constant.PortalConst;
import com.yunzhupaas.portal.entity.PortalDataEntity;
import lombok.Data;
/**
* 类功能
*
* @author 云筑产品开发平台组
* @version v3.4.8
* @copyrignt 深圳市乐程软件有限公司
* @date 2023-04-21
*/
@Data
public class PortalReleasePrimary extends MyBatisPrimaryBase<PortalDataEntity> {
/**
* 门户ID
*/
private String portalId;
private String platform;
/**
* 类型model模型、custom自定义、release发布
*/
private String type = PortalConst.RELEASE;
public PortalReleasePrimary(String portalId, String platform){
this.portalId = portalId;
this.platform = platform;
}
public QueryWrapper<PortalDataEntity> getQuery(){
queryWrapper.lambda().eq(PortalDataEntity::getType, type);
if(this.portalId != null) queryWrapper.lambda().eq(PortalDataEntity::getPortalId, portalId);
if(this.platform != null) queryWrapper.lambda().eq(PortalDataEntity::getPlatform, platform);
return queryWrapper;
}
}

View File

@@ -0,0 +1,23 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
* 类功能
*
* @author 云筑产品开发平台组
* @version v3.4.8
* @copyrignt 深圳市乐程软件有限公司
* @date 2023-04-23
*/
@Data
public class PortalReleaseVO {
@Schema(description = "pc发布标识")
Integer pcIsRelease;
@Schema(description = "app发布标识")
Integer appIsRelease;
}

View File

@@ -0,0 +1,21 @@
package com.yunzhupaas.portal.model;
import com.alibaba.fastjson.annotation.JSONField;
import com.yunzhupaas.util.treeutil.SumTree;
import lombok.Data;
/**
*
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司http://www.szlecheng.cn
* @author 云筑产品开发平台组
* @date 2024/3/16
*/
@Data
public class PortalSelectModel extends SumTree {
private String fullName;
private Long sortCode;
@JSONField(name="category")
private String parentId;
}

View File

@@ -0,0 +1,35 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
/**
*
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司http://www.szlecheng.cn
* @author 云筑产品开发平台组
* @date 2024/3/16
*/
@Data
public class PortalSelectVO {
private String id;
private List<PortalSelectVO> children;
private Boolean hasChildren;
private String parentId;
private Long sortCode;
@Schema(description = "门户名")
private String fullName;
@Schema(description = "编码")
private String enCode;
@Schema(description = "字典类型")
private String category;
@Schema(description = "分类ID")
private String categoryId;
@Schema(description = "分类名")
private String categoryName;
}

View File

@@ -0,0 +1,24 @@
package com.yunzhupaas.portal.model;
import com.yunzhupaas.util.treeutil.SumTree;
import lombok.Data;
/**
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司
*/
@Data
public class PortalTreeModel extends SumTree {
private String fullName;
private Long num;
private String enCode;
private Long creatorTime;
private Integer enabledMark;
private String creatorUser;
private Long lastModifyTime;
private String lastModifyUser;
private Long sortCode;
}

View File

@@ -0,0 +1,29 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
/**
*
* @author 云筑产品开发平台组
* @version V3.1.0
* @copyright 深圳市乐程软件有限公司http://www.szlecheng.cn
* @date 2024-10-21 14:23:30
*/
@Data
@Schema(description="门户修改表单")
public class PortalUpForm extends PortalCrForm {
@Schema(description = "门户id")
private String id;
@Schema(description = "PC:网页端 APP:手机端 ")
String platform;
@Schema(description = "PC:网页端 APP:手机端 ")
Integer state;
}

View File

@@ -0,0 +1,38 @@
package com.yunzhupaas.portal.model;
import com.yunzhupaas.base.MyBatisPrimaryBase;
import com.yunzhupaas.base.UserInfo;
import com.yunzhupaas.portal.constant.PortalConst;
import com.yunzhupaas.portal.entity.PortalEntity;
import com.yunzhupaas.util.UserProvider;
import lombok.Data;
/**
* 类功能
*
* @author 云筑产品开发平台组
* @version v3.4.8
* @copyrignt 深圳市乐程软件有限公司
* @date 2023-04-21
*/
@Data
public class PortalViewPrimary extends MyBatisPrimaryBase<PortalEntity> {
private String creatorId;
private String portalId;
private String platForm = PortalConst.WEB;
private String systemId;
public PortalViewPrimary(String platForm, String portalId){
if(platForm != null) this.platForm = platForm;
this.portalId = portalId;
UserInfo userInfo = UserProvider.getUser();
this.systemId = PortalConst.WEB.equals(platForm) ? userInfo.getSystemId() : userInfo.getAppSystemId();
this.creatorId = userInfo.getId();
}
}

View File

@@ -0,0 +1,26 @@
package com.yunzhupaas.portal.model;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import java.util.List;
@Data
public class ReleaseModel {
@Schema(description = "pc标识")
private Integer pc;
@Schema(description = "pc应用集合")
private String pcSystemId;
@Schema(description = "app标识")
private Integer app;
@Schema(description = "pc应用集合")
private String appSystemId;
@Schema(description = "app上级菜单")
private List<String> appModuleParentId;
@Schema(description = "pc上级菜单")
private List<String> pcModuleParentId;
}