RookeyFrame 搭建OA系统 (东莞黄江)【自带 工作流 自定义表单 表单设计器 权限组织架构 移动端 】持续更新中一

  1. 第一步 到 https://gitee.com/rookey/Rookey.Frame-v2.0
  2. 下载 作者最新版的 2.0 系统 本地部署

第二步 扩展原有 员工Model
[ModuleConfig(Name = “员工管理”, ModuleEditMode = (int)ModuleEditModeEnum.TabFormEdit, PrimaryKeyFields = “Code”, TitleKey = “Name”, StandardJsFolder = “OrgM”, Sort = 73 )]
public class OrgM_Emp : BaseOrgMEntity
{
#region 基础信息

    /// <summary>
    /// 员工编号
    /// </summary>
    [FieldConfig(Display = "工号", RowNum = 1, ColNum = 1, IsFrozen = true, IsRequired = true, IsUnique = true, GroupName = "基础信息", HeadSort = 0)]
    [StringLength(100)]
    public string Code { get; set; }

    /// <summary>
    /// 员工姓名
    /// </summary>
    [FieldConfig(Display = "姓名", RowNum = 1, ColNum = 2, IsFrozen = true, IsRequired = true, GroupName = "基础信息", HeadSort = 1)]
    [StringLength(100)]
    public string Name { get; set; }

    /// <summary>
    /// 英文名
    /// </summary>
    [FieldConfig(Display = "英文名", RowNum = 2, ColNum = 1, GroupName = "基础信息", HeadSort = 2)]
    [StringLength(100)]
    public string EName { get; set; }

    /// <summary>
    /// 性别
    /// </summary>
    [FieldConfig(Display = "性别", ControlType = (int)ControlTypeEnum.ComboBox, RowNum = 2, ColNum = 2, GroupName = "基础信息", HeadSort = 3)]
    public int Gender { get; set; }

    /// <summary>
    /// 员工性别(枚举类型)
    /// </summary>
    [Ignore]
    public GenderEnum GenderOfEnum
    {
        get
        {
            return (GenderEnum)Enum.Parse(typeof(GenderEnum), Gender.ToString());
        }
        set { Gender = (int)value; }
    }

    /// <summary>
    /// 出生日期
    /// </summary>
    [FieldConfig(Display = "出生日期", ControlType = (int)ControlTypeEnum.DateBox, RowNum = 3, ColNum = 1, GroupName = "基础信息", HeadSort = 4)]
    public DateTime? BirthdayDate { get; set; }

    #endregion

    #region 联系方式
    /// <summary>
    /// 移动电话
    /// </summary>
    [FieldConfig(Display = "移动电话", ControlType = (int)ControlTypeEnum.TextBox, RowNum = 4, ColNum = 1, GroupName = "联系方式", HeadSort = 5)]
    public string Mobile { get; set; }

    /// <summary>
    /// 办公电话
    /// </summary>
    [FieldConfig(Display = "分机号码", ControlType = (int)ControlTypeEnum.TextBox, RowNum = 4, ColNum = 2, GroupName = "联系方式", HeadSort = 6)]
    public string OfficePhone { get; set; }


    /// <summary>
    /// 电子邮箱
    /// </summary>
    [FieldConfig(Display = "电子邮箱", ControlType = (int)ControlTypeEnum.TextBox, RowNum = 5, ColNum = 1, GroupName = "联系方式", HeadSort = 7)]
    public string Email { get; set; }



    /// <summary>
    /// 短号
    /// </summary>
    [FieldConfig(Display = "短号", ControlType = (int)ControlTypeEnum.TextBox, RowNum = 5, ColNum = 2, GroupName = "联系方式", HeadSort = 8)]
    public string ShortCode { get; set; }

    #endregion

    #region 状态信息
    /// <summary>
    /// 员工状态
    /// </summary>
    [FieldConfig(Display = "员工状态", ControlType = (int)ControlTypeEnum.ComboBox, RowNum = 6, ColNum = 1, GroupName = "状态信息", HeadSort = 9)]
    public int EmpStatus { get; set; }

    /// <summary>
    /// 员工状态(枚举类型)
    /// </summary>
    [Ignore]
    public EmpStatusEnum EmpStatusOfEnum
    {
        get
        {
            return (EmpStatusEnum)Enum.Parse(typeof(EmpStatusEnum), EmpStatus.ToString());
        }
        set { EmpStatus = (int)value; }
    }

    /// <summary>
    /// 员工类型
    /// </summary>
    [FieldConfig(Display = "员工类型", ControlType = (int)ControlTypeEnum.ComboBox, RowNum = 6, ColNum = 2, GroupName = "状态信息", HeadSort = 9)]
    public int EmployeeType { get; set; }

    /// <summary>
    /// 员工类型(枚举类型)
    /// </summary>
    [Ignore]
    public EmployeeTypeEnum EmployeeTypeOfEnum
    {
        get
        {
            return (EmployeeTypeEnum)Enum.Parse(typeof(EmployeeTypeEnum), EmployeeType.ToString());
        }
        set { EmployeeType = (int)value; }
    }

    #endregion

    #region 其他
    /// <summary>
    /// 部门ID
    /// </summary>
    [Ignore]
    public Guid? DeptId { get; set; }

    /// <summary>
    /// 部门名称
    /// </summary>
    [Ignore]
    public string DeptName { get; set; }

    /// <summary>
    /// 职务ID
    /// </summary>
    [Ignore]
    public Guid? DutyId { get; set; }

    /// <summary>
    /// 职务名称
    /// </summary>
    [Ignore]
    public string DutyName { get; set; }

    /// <summary>
    /// 自定义字段1
    /// </summary>
    [NoField]
    [StringLength(100)]
    public string F1 { get; set; }

    /// <summary>
    /// 自定义字段2
    /// </summary>
    [NoField]
    [StringLength(100)]
    public string F2 { get; set; }

    /// <summary>
    /// 自定义字段3
    /// </summary>
    [NoField]
    [StringLength(100)]
    public string F3 { get; set; }
    #endregion
}

扩展的目的 是让其 与后期的通讯录 可以同步使用

第三部 改造 登录注册方式 (让新添加的员工 就具备以工号为 账号 并初始密码为 123456)
那样员工 登录后就可以 申请一些流程 比如请假,出差 , 派车 等等
找到 Web.Config 下面
App.Setting
在这里插入图片描述
稍做配置 就可以了
最开始 我并不清楚 自己写触发过程 同步 ,后面发现同步后多了 几个null 用户
系统 自带此类功能

Rookey.Frame是一套基于.NET MVC easyui的企业级极速开发框架,支持简单逻辑模块零代码编程、支持工作流(BPM)、支持二次开发,具有高扩展性、高复用性、高伸缩性。   框架特点 (1)简单逻辑模块实现零代码编程,通过简单配置即可实现增、删、改、查、数据列表、导入、导出、单字段编辑、批量编辑、复制、回收站、草稿箱、附 属模块显示配置、列表搜索框和表单外键字段自动完成、列表视图自定义表单自定义表单附件、权限控制、缓存配置、数据库配置、单据编号配置、模块功能控 制等功能,可线上增加功能模块、可线上增加字段 (2)完善的RABC权限体系,包括功能权限、字段权限、数据权限,支持菜单权限、列表按钮权限、字段查看、新增、编辑权限控制、数据查看、编辑、删除范围控制 (3)在系统中可支持模块分库,可实现读写分离,可方便的将系统数据库与业务数据库分离 (4)模块缓存可配置,支持本地缓存、Memcached分布式缓存和Redis分布式缓存,可扩展其他缓存方式 (5)支持列表视图自定义,用户可定义多个视图(包括外侧树视图、树网格视图、分组视图),可定义关联模块视图,视图可自由切换 (6)支持视图字段自定义、搜索字段自定义、排序字段自定义、列表操作按钮自定义 (7)支持角色表单功能,对于同一模块针对不同的角色可建立不同的表单 (8)支持表单布局自定义,可自由配置成带tab标签、panel面板的表单;多种编辑方式支持包括弹出表单编辑、打开tab标签编辑、网格内行编辑、网格内表单编辑 (9)支持表单字段自定义,包括可编辑性自定义、控件类型和宽度自定义、字段验证自定义 (10)支持单据编码规则自定义 (11)支持日志功能,包括登录日志、操作日志、异常日志 (12)支持图标管理,可自行上传图标,将其应用到菜单、按钮、树及需要图标的地方 (13)模块开发简单,实体类建立后即具备第一条所述功能 (14)实体层、数据层、业务层、操作事件层可配置 (15)支持SQL语句操作、支持Lamda表达式与SQL联合查询、支持读写分离 (16)多种关系类型数据库支持,目前支持的数据库类型有mssql,mysql,oracle,可扩展支持其他 (17)支持非关系型数据库Mongodb,可扩展支持其他 (18)支持自定义工作桌面,可为不同的角色定制不同的工作桌面 (19)支持IM(即时通迅)功能,支持单聊、群聊,支持图片、文件发送,支持头像设置 (20)系统任何模块以及后续加入模块均自动支持WebApi接口操作 (21)增加对工作流的支持,可在线设计、配置流程,支持单行、并行审批,支持子流程、分流、合流,支持回退、指派 框架整体架构图:   部分系统截图:   更多截图请参考作者博客:http://www.cnblogs.com/rookey/p/5230945.html 更多介绍:http://rookey.gotoip2.com/Page/Main.html?page=Main   开源地址:https://git.oschina.net/rookey/Rookey.Frame           标签:开发框架  easyui
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

lisuyan0

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值