Skip to content

POST /dm-store/processModel/add

Content-Type: application/json

触发按钮:processModelAdd

入参

出参

传递对象:ResultData

前端校验规则

权限校验
├── 新增按钮权限
│   └── v-auth: 'information:processModel:add:popup'
├── 表单校验
│   ├── lineNo
│   │   └── required: true, trigger: change
│   ├── modelCode
│   │   ├── required: true, trigger: blur
│   │   └── 长度限制:最大 100
│   ├── modelName
│   │   ├── required: true, trigger: blur
│   │   └── 长度限制:最大 100
│   └── brand
│       ├── required: true, trigger: blur
│       └── 长度限制:最大 100
├── 提交拦截校验
│   └── approvalAction
│       └── this.$refs.form.validate 返回 valid=true 时才触发 addAction;未通过时直接拦截
└── 字段编辑权限控制
    └── productLineName
        └── disabled: true

后端逻辑

业务流程:校验机型唯一性 -> 生成机型编号 -> 保存产品机型

├── 校验机型唯一性:ProductModelServiceImpl.validData :141
│   ├── 校验机型名称唯一:ProductModelServiceImpl.checkProductModelNameExist :160
│   │   └── 查询未删除同名机型 :183-185
│   │       └── 条件:
│   │           ├── modelName
│   │           └── isDelete=0
│   └── 校验机型编码唯一:ProductModelServiceImpl.checkProductModelCodeExist :166
│       └── 查询未删除同编码机型 :199-201
│           └── 条件:
│               ├── modelCode
│               └── isDelete=0
├── 生成机型编号:RedisService.getCommonSeqNo :143
│   ├── RedisKey: COMMON_SEQ_PREFIX:CODE:PRODUCT_MODEL
│   ├── 编号规则
│   │   └── 6位流水号
│   └── 获取全局流水:GlobalSerialClient.getAndIncrment :32
│       └── 全局流水递增:GlobalSerialServiceImpl.getAndIncrment :23-38
│           ├── Redis锁:RedisLockUtil.tryLock :25
│           ├── 查询当前流水:GlobalSerialMapper.getCurrentValue :27
│           ├── 首次创建流水
│           │   └── GlobalSerialMapper.insert :30
│           └── 已有流水
│               └── GlobalSerialMapper.updateCurrentValue :35
├── 绑定机型编号
└── 保存产品机型:save :146

后端校验规则

业务唯一性校验
├── 校验产品机型名称是否重复:validData :158-164
│   ├── 判定条件:存在 is_delete=0 且 model_name=入参名称 的记录
│   └── StoreExceptionCode.EX201022
└── 校验产品机型编码是否重复:validData :166-170
    ├── 判定条件:存在 is_delete=0 且 model_code=入参编码 的记录
    └── StoreExceptionCode.EX201023

涉及数据库表

库名.表名mapper.statement描述
process_modelProcessModelMapper.insert新增processModel数据