企业在线办公系统逻辑设计

面对疫情防控的严峻形势和经济下行的压力,许多企业纷纷向数字化转型,在内部启用各类信息系统,工作模式也逐渐从线下转到线上,以期维持正常的工作秩序,提升办公效率。因此,基于企业普遍的工作要求,本文主要研究后疫情时代的背景下企业在线办公系统的设计与开发。

  • 总体设计

  

  • 数据库设计

  • 登录安全设计

非授权访问是黑客常用的手段,黑客通过这种方式攻击系统的目的有两种:一是获取并更改系统数据,二是远程控制计算机来下载病毒。为防止非授权访问,前端通过Axios技术设置拦截器,当用户登录成功后,系统会将账号保存在sessionStorage中。而当非授权访问时,前端通过路由导航守卫判断sessionStorage中是否存储了账号,若未存储,则默认跳转到登录界面。

设置拦截器的代码如下:

axios.interceptors.request.use(config=>{

    if(window.sessionStorage.getItem('username')){

        config.headers['Authorization']=window.sessionStorage.getItem('username')

    }

    return config;

},error=>{

    console.log(error);

})

路由导航守卫的代码如下:

router.beforeEach((to,from,next)=>{

  if(window.sessionStorage.getItem("username")){

    // 跳转到主页

    next();

  }else{//当用户在登录界面时,允许用户进入登录界面

    if(to.path=='/')

      next();

    else{//对用户进行拦截,重定向到登录界面

      next('/?redirect='+to.path);

    }

  }

  •  前后端交互设计

前端利用Axios技术发送请求,通过跨域代理的方式,将发送的请求地址统一进行转换并将数据以JSON格式传给后端,后端调用方法获取参数并处理,再用renderJson()传回数据。具体的跨域代理配置如下:

proxyObj['/work']={

    ws:false,

    // 目标地址

    target:'http://localhost:8082',

    changeOrigin:true,

    // 不重写请求地址

    pathReWrite:{

        '^/work':'/'

    }

}

//前端请求地址是http://localhost:8082/work/

  • 系统详细设计

  • 入职办理

人力专员把入职办理的人员信息进行汇总后,交由人力主管,再由人力主管在系统中录入入职人员的信息。在录入时,系统需要判断身份证号是否重复,如果不重复,系统会添加该人员的信息,并自动添加合同签订的记录;如果重复,系统会判断该人员是否是再次入职。如果是再次入职, 当人力主管同意该人员入职时,系统会添加该人员的信息,并自动添加合同签订的记录;如果不是再次入职,则提示“员工信息错误”。

  • 调动办理 

部门主管统计部门内员工的调动情况,在系统中进行申请,再由人力主管进行审核。当审核通过后,由调入部门的主管修改调动人员的工资账套,员工即可调入到新部门,而离职人员需要办理合同解除业务,与公司解除劳动关系;如果审核不通过,则该员工仍在原部门工作。

  • 请假管理 

员工在系统中填写请假单并提交后,系统根据岗位名称判断是否是部门主管,如果是,则由总经理进行审核,否则由部门主管进行审核。

  • 考勤管理

员工在系统点击签到时,系统会从是否工作日、是否请假、签到时间和地点是否正确上进行判断,确定是否计入考勤。 

 

  • 薪资管理

用户在填写并提交员工信息后,如果该人员未分配工资账套,需要先分配账套,然后继续填写员工信息;如果分配了工资账套,系统会判断该员工本月的工资信息是否存在,如果已经存在,则不需要添加,否则系统会查询员工的考勤、奖惩信息,计算并添加员工的工资信息。

  • 14
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值