天翎MyApps技术社区 - 低代码平台 | 流程管理系统 | BPM软件

 找回密码
 注册成为天翎用户
查看: 3966|回复: 14

[已解决] 工作日历的问题

[复制链接]
塞普克 发表于 2012-5-14 13:48:37 | 显示全部楼层 |阅读模式
本帖最后由 bess 于 2012-5-21 18:01 编辑

请问,如何得到当前登录用户的工作日历,并根据工作日历算出3个小时后的时间?
比如userA是5×8工作时间,每天9:00-17:00, 当前是16点,那么根据工作日历,三个小时后应该是第二个工作日的11:00
谢谢!
purple 发表于 2012-5-14 14:35:14 | 显示全部楼层
您好,平台封装的计算时间差函数都是根据工作日历计算的,请问您具体是要实现功能呢?
 楼主| 塞普克 发表于 2012-5-14 14:56:43 | 显示全部楼层
我上面说的需求还不够明确?你要写的多明确?
根据工作日历算出3个小时后的时间, 这句话你能理解么?
purple 发表于 2012-5-14 15:12:45 | 显示全部楼层
因为平台没有直接封装实现您需求的方法,所以才会问您具体的业务需求,以便我们这边结合平台,提供最优的解决方案。既然您觉得我在为难您,关于工作日历这部分,具体相关文件路径:/obpm/src/main/java/cn/myapps/core/workcalendar/calendar。请您自己查阅源码。带来不便,敬请见谅。
 楼主| 塞普克 发表于 2012-5-15 12:56:04 | 显示全部楼层
aaaa.png

图中有个字段叫预期响应时间,是创建时间加上3小时后得到的时间,这3个小时是工作日历中的工作时间。就用系统默认的标准日历。

这么解释你能明白了么?
shary 发表于 2012-5-15 14:26:14 | 显示全部楼层
您好,关于您的业务需求请参看这个帖子:http://www.teemlink.com/bbs/view ... mp;extra=#pid193524
 楼主| 塞普克 发表于 2012-5-21 08:06:40 | 显示全部楼层
aaaa.png
按照你的例子,出了这个错误,为啥?
kimi 发表于 2012-5-21 09:18:10 | 显示全部楼层
您好:根据您的错误信息提示是说找不到CalendarProcessBean这个类。可否把您的脚本贴出来呢?
 楼主| 塞普克 发表于 2012-5-21 14:18:15 | 显示全部楼层
额,我自己解决了
var cprocess = createProcess("cn.myapps.core.workcalendar.calendar.ejb.CalendarProcessBean");
这行我改成:
var cprocess = new Packages.cn.myapps.core.workcalendar.calendar.ejb.CalendarProcessBean();
就好用了...不知为啥。
我还有个问题,如何根据2个时间算出时间差,这个时间差要工作日内的时间差,如 9:00-17:00工作时间,
那个2012-05-21 16:15:00 和2012-05-22 09:10:00 就差了55分钟。
shary 发表于 2012-5-21 14:29:06 | 显示全部楼层
回复 9# 塞普克


    您好,关于您的第一个实例化类的问题我看了源代码因为createProcess()函数是我们自己分装的。里面可以去实例化比较常用的java类。没有包含工作日历这个。而new Packages.这种方式对应是全部java类都通用的实例化的方式。关于您的第二个问题您可以用如下函数:
    getWorkingTimesCount(startDate, endDate);//获取相隔工作小时数.第一个参数为开始时间,第二个参数为结束时间。

本版积分规则

QQ|手机版|天翎MyApps技术社区 ( 粤ICP备11093750号 )

GMT+8, 2026-8-12 07:32

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表