V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
albin504
V2EX  ›  程序员

弄了一个判断日期类型的库(判断某一天是工作日、法定节假日、周末?)

  •  
  •   albin504 · 312 天前 · 3089 次点击
    这是一个创建于 312 天前的主题,其中的信息可能已经有所发展或是发生改变。
    27 条回复    2023-06-22 16:37:12 +08:00
    hxzhouh1
        1
    hxzhouh1  
       312 天前
    2024 年的数据,从哪里更新呢?
    hxzhouh1
        2
    hxzhouh1  
       312 天前
    @hxzhouh1 看到了,手动更新
    pkoukk
        3
    pkoukk  
       312 天前   ❤️ 3
    一般来说,我们都用 API....
    x86
        4
    x86  
       312 天前
    一般人事会提前通知🐶
    c2const
        5
    c2const  
       312 天前   ❤️ 1
    本地库确实会有需求,但你这连 2024 都不支持。
    提个建议,把 2099 年以前的数据都离线本地支持,应该会有人用,不过工作量应该也不小。
    c2const
        6
    c2const  
       312 天前
    除了内置预测的数据,可能设计也得改改?
    Yuesh1
        7
    Yuesh1  
       312 天前
    @c2const 之前做过调研,第二年的假期一般在前一年的 10 月份由国务院发布,包括调休补班这些,所以每一年的数据没办法提前设置
    albin504
        8
    albin504  
    OP
       312 天前
    @Yuesh1 #7
    是的。没法提前支持。

    技术上能否做到“每年我更新了配置之后,调用方不用更新依赖的版本,就自动应用最新的配置”?
    wxf666
        9
    wxf666  
       312 天前
    @Yuesh1 @albin504 能不能根据过去放假数据,总结规律,预测出未来的假期呢?(假设节日种类及放假调休天数不变)
    xmumiffy
        10
    xmumiffy  
       312 天前 via Android
    @Yuesh1 我记得是 12 月才会公布的
    thinkershare
        11
    thinkershare  
       312 天前
    @wxf666 没啥规律,因为这个玩意就是人为规定的。
    未来还可能会继续修改。如果可以预测和有规律,就不需要公务员公布了。
    我们现在统计考勤也是每年获取一下数据,存储到本地。
    TsubasaHanekaw
        12
    TsubasaHanekaw  
       312 天前
    谁知道 2099 年的法定节假日还是现在这些呢.
    foolishcrab
        13
    foolishcrab  
       312 天前 via iPhone
    这种东西要用自己公司人事部出的接口,
    否则你公司有“特殊安排”但是你这里算假日了,会出奇怪的问题的。

    人事维护一个这种查询接口成本也很低
    NoOneNoBody
        14
    NoOneNoBody  
       312 天前
    要么省时要么省力,这个东西省了什么?
    guxin0123
        15
    guxin0123  
       312 天前
    支持特殊省份吗?有些地方可是要多放几天假的
    4pmBaoZi
        16
    4pmBaoZi  
       312 天前
    这种直接搞个 json 或者 sql 这种通用版,发电的人才多,未来数据是不固定的,因为调休等原因,必须每年进行维护
    SimonOne
        17
    SimonOne  
       312 天前
    @c2const #5 你怎么提前知道国务院公布的下一年调休计划的?国务院一般在 10-12 月才公布,去年甚至是 12 月 27 号才公布 2023 年完整的调休假。调休计划是老爷们定的,老爷想咋定就咋定,有规律但是老爷可以违反往年规律。维护到 2099 年,结果错几个,这不画蛇添足吗。
    limngyang
        18
    limngyang  
       312 天前
    carbon 不好用?
    Hstar
        19
    Hstar  
       312 天前
    这种库不敢用开源的,都是自己封或者找 OA 的人要接口。以前用过 github 上一个开源的,更新贼慢,后来直接不更新了,我们只能哼哧哼哧换成自己包的库。
    breadykidliu
        20
    breadykidliu  
       312 天前
    18 年写过,一个工具类,外加指定休假日和工作日的外置配置(配置文件,甚至搞个 map 都可),不明白一个类的代码量还要搞个 maven 依赖是要干嘛
    zyy314680012
        21
    zyy314680012  
       312 天前 via Android
    网上好像有接口
    angryfish
        22
    angryfish  
       312 天前
    还不如专门维护一个 sql 或者 json 。库真的没必要了
    albin504
        23
    albin504  
    OP
       312 天前
    @angryfish #22 这里面是有一些逻辑在的,光配置不行。
    比如,判断某一天是否是工作日,需要两个条件:这一天是周一到周五,并且不是节假日。
    albin504
        24
    albin504  
    OP
       312 天前
    @breadykidliu #20 爱用 mavan 包管理就用 maven 下载依赖,不爱用就把配置和工具类 copy 到代码库就行了。
    chensuiyi
        25
    chensuiyi  
       311 天前   ❤️ 1
    https://gitee.com/6tail/lunar-javascript
    这个专门做日历,节假日了,希望可以给你提供参考。
    wxf666
        26
    wxf666  
       311 天前 via Android
    @albin504 请教一下,会不会搞一个《假期表》好一些?

    这个表假设所有 [周一, 周五] 是工作日,[周六, 周日] 是周末。

    其余不同之处才添加记录至该表。(比如,添加 22 ~ 24 日为节假日,25 日为工作日)

    各个地方可根据需要,添加自己的节日(比如广西三月三)。

    各个公司有特殊需要,也能添加自己的特殊日子。

    员工特殊请假、调休等,也才添加进去。

    这样,同一条 SQL ,都能兼顾上述所有情况,算出需要的数据了?

    每年只需添加十来条新数据即可?
    albin504
        27
    albin504  
    OP
       311 天前
    @wxf666 #26 这个配置,保存的就是你提到的不同之处。 每年大概有 30 天不同的配置(包含节假日,以及工作日周末调休补回)

    "各个地方可根据需要,添加自己的节日(比如广西三月三)。" 我之前还不知道每个省会单独放假,这个应该支持。
    “各个公司有特殊需要,也能添加自己的特殊日子。”, 小公司可能会有这种行为,大公司我还没遇到过自行放假的,都是根据国家安排。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   2952 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 00:04 · PVG 08:04 · LAX 17:04 · JFK 20:04
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.