起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 2777|回复: 1

[处理中] 如何在JS中自动生成序列

[复制链接]

29

主题

82

帖子

248

积分

中级会员

Rank: 3Rank: 3

积分
248
QQ
发表于 2017-8-31 14:19:07 | 显示全部楼层 |阅读模式
想使用BX5自建组织机构,组织机构编码想自动生成,子机构编码规则=父机构编码+自动生成的序列
如何在JS中自动生成如下序列,如下图(系统自带的组织机构表sa_oporg中的),具体实现代码在哪里?
序列.png

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36067
发表于 2017-8-31 14:42:35 | 显示全部楼层
这个底层封装的不提供源码,就是java标准去计算的,不是js中计算的,下面贴的主要的实现逻辑,需要自己进步修改实现newSequence就是最后算出来的值

就是定义两个变量一个最大值和一个序号格式的

private static final String SEQUENCE_CODE_FORMAT = "%03d";
private static final int SEQUENCE_CODE_MAX = 999;

然后java定义方法去通过格式和最大值进行计算
        private static String formatSequenceString(int sequence) {
                return String.format(SEQUENCE_CODE_FORMAT, sequence);
        }


               private static void checkSequenceMaxSize(String parentID, int inc) {
                String maxSequence = getMaxSequence(parentID, null, false);
                if (Utils.isEmptyString(maxSequence))
                        return;
                int maxSequenceNumber = getSequenceNumber(maxSequence);
                if ((maxSequenceNumber + inc) > SEQUENCE_CODE_MAX)
                        resequenceAll(parentID);
        }


private static String getNewSequence(String parentID, String parentSequence, String orgKindID) {
                String maxSequence = getMaxSequence(parentID, orgKindID, true);
                if (Utils.isEmptyString(maxSequence))
                        maxSequence = OpmUtils.createFileFullName(parentSequence, formatSequenceString(1), "");
                else
                        maxSequence = incSequence(maxSequence);
                return maxSequence;
        }               


String newSequence = getNewSequence(parentID, parentSequence, orgKindID);


如果是自己输入的要拼接可以参考http://docs.wex5.com/bex5-ui-question-list-10160/中全路径的维护


远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-23 18:01 , Processed in 0.083699 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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