• ERP中的序列管理


    1、序列管理

    序列管理主要实现系统用到序列生成规则的配置、主要包含序列配置、序列生产两个功能点。

    2、术语说明

    序列号:指序列中按步长递进的数字。

    序列值:指按规则组合了 “拥有者、序列类型、序列时间、序列号” 的字符串。

    重复周期:对应系统枚举SequenceCircles在重复周期内,序号不归零,一般按天、月、季、年为序号周期,也可以无周期,一直递增。

    3、支持因子

     

    名称

    替换符

    说明

    拥有者

    {{Owner}}

    序列拥有者,一般不同工厂传入不同工厂代码,此因子一般不用,在实际的序列模板中通过前缀实现标识。

    序列类型

    {{Kind}}

    对应系统中的SequenceKinds枚举

    序列时间

    {{Date}}

    对应产生序列的时间,通过格式化支持天、分、秒、毫秒

    序列号

    {{No}}

    按步长递进的数字

    4、序列配置

    序列配置包含如下字段

    字段

    名称

    说明

    MaxNo

    最大序列号

    长度应与NoLength一致

    NoLength

    序列号长度

    产生序号的最大长度

    NoFormat

    序列号格式符

    生成序列值时提供序号格式化支持

    NoRegex

    序号匹配正则

    从序列值中匹配出序列号正则Pattern,通过组名No,标注匹配出的序列号

    DateFormat

    日期格式符

    生成序列值时提供时间格式化支持

    KindFormat

    类型格式符

    生成序列值时提供SequenceKinds对应序列类型格式化支持

    Template

    序列值模板

    用于因子替换后生成序列值

    5、序列表(Kernals.SequenceItem)

    Code

    编码

    Name

    名称

    Description

    说明

    SequenceKey

    序列键

    Nvarchar类型主键

    CurrentValue

    当前值

    序列周期内的当前分配值

    InitValue

    初始值

    序列周期重置时CurrentValue恢复的值

    ValueStep

    值变化步长

    序列号递增步长

    RepeatCircle

    重复周期

    对应系统枚举SequenceCircles

    ConfigVlaue

    配置值

    序列化存储 序列配置SequenceConfig 信息

    ConfigParser

    配置解析器

    JsonParseProvider或XmlParseProvider

    OwnerKind

    拥有者类型

    当前支持:1=公司,该字段保留,在UI中暂不体现。

    OwnerKey

    拥有者标识

    序列拥有者

    TenantId

    租户Id

     

    UpdateTime

    修改日期

    序列值最后更新时间

    6、配置列表

    主要实现序列配置功能,当前支持拥有者为公司,可以通过拥有者筛选序列后进行配置。

    注:SequenceConfig中的属性和序列值生成无直接关系,初始值、步长、周期和序列值生成有关系。

    序列列表显示:序列键、初始值、变化步长、重复周期、拥有者。

    7、配置窗体

    序列配置包含初始值、步长、周期、和ConfigValue对应的SequenceConfig相关属性。

    注:详情查看窗体同配置窗体,不能编辑

    8、序列生成

    序列生成由业务逻辑层负责。具体实现见Logics.Infra  Sequences文件夹下相关代码。

    通过ISequence seq = SequenceManager.GetSequence(SequenceKinds.BatchSequence, 1, "ownerKey");获取序列接口实例,调用相关方法或属性(如下图示) 

    属性:

    方法:

    接口:


     文章作者:花生(OutMan)

    发布地址:http://www.cnblogs.com/WangHuaiSheng/ 

    发布时间:2018年1月23日

    本文版权归作者和博客园共有,欢迎转载,

    但未经作者同意必须保留此段声明,

    且在文章页面明显位置给出原文连接。

     
  • 相关阅读:
    面向对象1 继承与接口
    简易版爬虫(豆瓣)
    调用模块与包
    正则表达式2 以及configparser模块,subprocess模块简单介绍
    正则表达式(re模块)
    sys,logging,json模块
    常用模块(time,os,random,hashlib)
    内置函数与匿名函数
    day 19 yeild的表达式 面向过程 内置函数
    mysql中写存储过程加定时任务
  • 原文地址:https://www.cnblogs.com/WangHuaiSheng/p/8335595.html
Copyright © 2020-2023  润新知