基于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、效果图

相关文章
|
7月前
|
BI
基于Jeecgboot前后端分离的ERP系统开发代码生成(三)
基于Jeecgboot前后端分离的ERP系统开发代码生成(三)
549 0
|
7月前
|
JavaScript 前端开发
基于Jeecgboot前后端分离的ERP系统开发代码生成(四)
基于Jeecgboot前后端分离的ERP系统开发代码生成(四)
565 1
|
7月前
|
JavaScript 前端开发
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(2)
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(2)
81 1
|
7月前
|
BI 数据库
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(1)
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(1)
86 1
|
7月前
|
移动开发 供应链 前端开发
基于jeecgboot的ERP部分演示功能发布
基于jeecgboot的ERP部分演示功能发布
133 0
|
7月前
|
数据库
基于Jeecgboot前后端分离的ERP系统开发代码生成(六)
基于Jeecgboot前后端分离的ERP系统开发代码生成(六)
463 0
|
7月前
|
前端开发
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(3)
基于Jeecgboot前后端分离的ERP系统开发系列--出库单(3)
93 0
|
7月前
基于Jeecgboot前后端分离的ERP系统开发代码生成(五)
基于Jeecgboot前后端分离的ERP系统开发代码生成(五)
435 0
|
3月前
|
前端开发 JavaScript 关系型数据库
如何开发一个ERP系统:从零开始构建
【9月更文第4天】企业资源计划(ERP)系统是现代企业管理不可或缺的一部分,它集成了公司的关键业务流程,并提供了统一的数据管理平台。本文将探讨如何从零开始构建一个简单的ERP系统,并提供一些基本的代码示例来演示关键组件的开发过程。
860 3
|
4天前
|
监控 JavaScript 数据可视化
实施模切ERP系统,为模切企业带来哪些效益
在众多制造企业中,工厂的日常运营依旧依赖于人工管理,导致生产效率低、反应慢、容易出错。 1、急单交期短、订单频繁变更怎么办? 2、物料、半成品如何及时跟上生产? 3、 客户验厂,品质质量如何追溯? 4、机台信息不清楚,时间配置情况不确定?
21 2
下一篇
DataWorks