Skip to content

POST /dm-store/supplier/add

Content-Type: application/json

触发按钮:supplierAdd

入参

传递对象:SupplierVo

字段类型必填多选校验规则说明
supplierCodeString-供应商编码
supplierNameString-供应商名称
addressString-地址
contacterString-联系人
phoneString-联系电话
emailString-邮箱
faxString-传真
urlString-网址
descriptionString-备注
validFlagInteger-是否可用

出参

传递对象:ResultData

前端校验规则

前端校验
├── 权限校验
│   └── 新增按钮权限
│       └── v-auth: information:supplier:add:popup
├── 表单校验
│   ├── supplierCode
│   │   └── 必填,trigger: blur
│   ├── supplierName
│   │   └── 必填,trigger: blur
│   └── email
│       └── 格式校验:^[^\s@]+@[^\s@]+\.[^\s@]+$,trigger: blur
└── 提交拦截校验
    └── 表单校验通过后才触发新增提交

后端逻辑

业务流程:校验供应商名称、编码、联系电话唯一性,生成供应商编号并保存供应商记录

├── 校验供应商唯一性
│   ├── 校验名称是否重复:SupplierServiceImpl.checkSupplierNameExist :169-176
│   ├── 校验编码是否重复:SupplierServiceImpl.checkSupplierCodeExist :185-193
│   └── 校验联系电话是否重复:SupplierServiceImpl.checkSupplierPhoneExist :201-209
├── 生成供应商编号:RedisService.getCommonSeqNo :129
└── 保存供应商记录:save :132

后端校验规则

后端校验
└── 业务唯一性校验
    ├── 供应商名称不能重复:SupplierServiceImpl.validData :146-150
    │   ├── 按 supplierName 且 isDelete=0 校验
    │   └── 异常码:StoreExceptionCode.EX201011
    ├── 供应商编码不能重复:SupplierServiceImpl.validData :151-155
    │   ├── 按 supplierCode 且 isDelete=0 校验
    │   └── 异常码:StoreExceptionCode.EX201012
    └── 联系电话不能重复:SupplierServiceImpl.validData :156-160
        ├── 按 phone 且 isDelete=0 校验
        └── 异常码:StoreExceptionCode.EX201055

涉及数据库表

库名.表名mapper.statement描述
store.supplierSupplierMapper.insert新增supplier数据