基于jeecgboot的ERP单据中增加编号的方法

简介: 基于jeecgboot的ERP单据中增加编号的方法

    我们在开发ERP单据的时候,一个有规则自定义的单据编号是需要的,所以今天我们来讲讲在jeecgboot中如何增加自定义有自己规则的单据编号。

   下面就以销售出库单据的编号为例:

   1、首先根据jeecgboot单据编号规则,我们建立一个继承自IFillRuleHandler的类

如下代码:

/**
 * 填值规则:生成销售出库单号
 * 
 */
public class SaleOutNumberRule implements IFillRuleHandler {
    @Override
    public Object execute(JSONObject params, JSONObject formData) {
        String prefix = "XSCK";
        //订单前缀默认为XSCK 如果规则参数不为空,则取自定义前缀
        if (params != null) {
            Object obj = params.get("prefix");
            if (obj != null) prefix = obj.toString();
        }
        SimpleDateFormat format = new SimpleDateFormat("yyyyMMddHHmmss");
        int random = RandomUtils.nextInt(90) + 10;
        String value = prefix + format.format(new Date()) + random;
        // 根据formData的值的不同,生成不同的订单号
        String name = formData.getString("name");
        if (!StringUtils.isEmpty(name)) {
            value += name;
        }
        return value;
    }
}

   上面设置了前缀为XSCK

   2、在在线开发里的系统编码规则里增加一条记录如下

对应的实现类就是上面的

3、在生成的销售出库单前端代码里ErpSaleOutForm.vue增加如下内容:

import { getAction, putAction } from '@/api/manage'
const ruleBaseURL = '/sys/fillRule/executeRuleByCode/'
url: {
          add: "/sale/erpSaleOut/add",
          edit: "/sale/erpSaleOut/edit",
          queryById: "/sale/erpSaleOut/queryById",
          erpSaleOutDetail: {
            list: '/sale/erpSaleOut/queryErpSaleOutDetailByMainId'
          },
          rule: {
            orderCode: ruleBaseURL + 'sale_out_no'
          },
        }
getOrderCode() {
        putAction(this.url.rule.orderCode, this.model).then(res => {
         // 执行成功,获取返回的订单编号值,并赋到页面上
        if (res.success) {
        this.model.code = res.result
        }
       })
      },
      addBefore(){
        this.erpSaleOutDetailTable.dataSource=[]
        this.getOrderCode()
      },

4、效果图

相关文章
|
5天前
|
BI
基于Jeecgboot前后端分离的ERP系统开发代码生成(三)
基于Jeecgboot前后端分离的ERP系统开发代码生成(三)
17 0
|
5天前
|
JavaScript 前端开发
基于Jeecgboot前后端分离的ERP系统开发代码生成(四)
基于Jeecgboot前后端分离的ERP系统开发代码生成(四)
12 1
|
5天前
|
移动开发 供应链 前端开发
基于jeecgboot的ERP部分演示功能发布
基于jeecgboot的ERP部分演示功能发布
10 0
|
5天前
|
数据库
基于Jeecgboot前后端分离的ERP系统开发代码生成(六)
基于Jeecgboot前后端分离的ERP系统开发代码生成(六)
|
5天前
|
前端开发
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(3)
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(3)
12 0
|
5天前
|
JavaScript 前端开发
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(2)
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(2)
|
5天前
|
BI 数据库
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(1)
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(1)
10 1
|
5天前
基于Jeecgboot前后端分离的ERP系统开发代码生成(五)
基于Jeecgboot前后端分离的ERP系统开发代码生成(五)
10 0
|
5天前
|
监控 供应链 物联网
ERP系统中的在制品管理与工艺路线规划
ERP系统中的在制品管理与工艺路线规划
51 2
|
5天前
|
数据采集 监控 供应链
ERP系统在大型企业中的实施案例研究
ERP系统在大型企业中的实施案例研究
51 0