磅单入库锁定接口
接口说明
接口地址: /gys/inspection-micro-service-web-api/bill/syncBillStatus
接口用途: 导入磅单引用关系接口,磅单入库锁定/解锁接口
请求方式: POST
请求参数: JSON格式字符串
注意事项:
1、请求中任意一条单据锁定失败,则全体回滚,锁定失败
2、单据列表出现重复单据,但状态不同,以最后一条单据状态为准。
3、单据解锁,必须所有条件(项目+来源产品+引用单据类型+引用单据三方ID+guid+磅单材料行id),一致才能解锁
4、同磅单,同来源单据,允许重复锁定或重复解锁
5、磅单不存在锁定记录,允许推送解锁操作
6、唯一性判断条件:项目+来源产品+引用单据类型+引用单据三方ID+guid+磅单材料行id
7、校验数据一致性字段传值null不验证该字段,number字段传0验证字段值为0或null,string字段传空字符串验证字段值为空串或null
请求参数
参数 | 类型 | 必须 | 取值范围 | 默认值 | 描述 |
---|---|---|---|---|---|
lockLevel | String | 否 | SINGLE | 锁定粒度:SINGLE,表示同来源产品,一条磅单材料,只保留一个锁,默认值; MULTI,表示同来源产品,一条磅单材料可以被多个单据锁,保留多个锁; 空,表示默认为SINGLE; |
推送JSONObject对象说明
单据引用主表属性
参数 | 类型 | 必须 | 取值范围(字符长度) | 默认值 | 描述 |
---|---|---|---|---|---|
projectId | long | 否 | 20 | 项目id(projectId和syncCode有且只能其一有值) | |
syncCode | String | 否 | 50 | 同步编码(projectId和syncCode有且只能其一有值) | |
source | String | 是 | 50 | 来源产品 | |
lockBizType | long | 否 | 8 | 锁定业务类型(原因):8GEPS入库,4对账 | |
billList | Array | 是 | 单据列表。属性详见【单据详情billList属性】 |
单据详情billList属性
参数 | 类型 | 必须 | 取值范围(字符长度) | 默认值 | 描述 |
---|---|---|---|---|---|
billType | Number | 是 | 11 | 磅单类型 0收料,1发料,2直入直出,8:其他磅单 | |
guid | String | 是 | 50 | 磅单唯一标识(guid) | |
originBizRefId | String | 是 | 255 | 引用单据三方ID | |
originBizType | String | 是 | 100 | 引用单据类型:入库单、到货点验、小票、直入直出、物资处置 | |
materials | Array | 是 | 磅单材料细表。属性详见【单据材料详情materials属性】 | ||
extend | String | 否 | 扩展字段,json |
单据材料详情materials属性
参数 | 类型 | 必须 | 取值范围(字符长度) | 默认值 | 描述 |
---|---|---|---|---|---|
materialRowId | Number | 是 | 20 | 磅单材料行id | |
globalStatus | Number | 是 | 11 | 锁定状态,锁定:8,解锁:-8,不处理:0 | |
materialCode | String | 否 | 255 | 材料编码,用于校验数据一致性,null不验证 | |
materialName | String | 否 | 255 | 材料名称,用于校验数据一致性,null不验证 | |
billQuantity | Number | 否 | 12.5 | 运单数量,用于校验数据一致性,null不验证 | |
realQuantity | Number | 否 | 12.5 | 实际数量,用于校验数据一致性,null不验证 | |
confirmationQuantity | Number | 否 | 12.5 | 确认量,用于校验数据一致性,null不验证 | |
surcharges | Array | 否 | 附加费列表,用于校验数据一致性,null不验证。属性详见【附加费详情surcharges属性】 |
附加费详情surcharges属性
参数 | 类型 | 必须 | 取值范围(字符长度) | 默认值 | 描述 |
---|---|---|---|---|---|
id | Number | 是 | 20 | 附加费id,用于校验数据一致性 | |
name | String | 否 | 64 | 附加费名称,用于校验数据一致性,null不验证 | |
code | String | 否 | 64 | 附加费编码,用于校验数据一致性,null不验证 |
返回结果
参数 | 类型 | 必须 | 取值范围 | 默认值 | 描述 |
---|---|---|---|---|---|
success | Boolen | 是 | 状态。true成功,false失败 | ||
data | Object | 是 | 同步结果说明 | ||
data.successList | Array | 是 | 处理成功的数据,属性详见【单据详情billList属性】 | ||
data.errorList | Array | 是 | 处理失败的数据,属性详见【单据详情billList属性】,额外属性:errMsg失败原因,errCode失败编码 | ||
data.message | String | 是 | 结果说明。如:成功:1条,失败:1条 |
常见异常信息
响应端异常提示 | 请求端处理意见 |
---|---|
同步数据不能为空 | 调用接口前校验入参列表非空 |
系统内部错误 | 服务器异常、磅单修改时间戳不一致导致,稍等重新同步磅单后再重试 |
XXXX不允许为空 | 必填字段为空 |
XXXX长度不允许大于XX | 字段超长 |
XX状态非法 | 枚举字段值不在提供范围 |
同步编码不存在 | 检查授权文件是否与当前项目一致;检查syncCode是否正确 |
必填字段不合法 | 必填字段、字段长度、字段取值范围不合法 |
单据列表不能为空 | 入参单据列表不能为空 |
关联磅单校验失败 | 磅单不存在、磅单已经被修改,稍等重新同步磅单后再重试 |
单据引用关系保存失败 | 磅单已经被修改,稍等重新同步磅单后再重试 |
请求参数格式示例
{
"syncCode":"xrqhhgj", //类型:String 必有字段 备注:项目同步编码
"source":"GEPS", //类型:String 必有字段 备注:来源产品
"billList":[ //类型:Array 必有字段 备注:单据列表
{ //类型:Object 必有字段 备注:磅单详情
"billType":0, //类型:Number 必有字段 备注:磅单类型 0收料,1发料,2直入直出,8:其他磅单
"guid":"08fc8be6-aabf-462f-8c12-e79532409354", //类型:String 必有字段 备注:磅单唯一标示(guid)
"originBizRefId":"20170228100600", //类型:String 必有字段 备注:引用三方单据ID
"originBizType":"入库单", //类型:String 必有字段 备注:引用单据类型:入库单、到货点验、小票、直入直出、物资处置
"materials":[ //类型:Array 必有字段 备注:磅单材料细表
{ //类型:Object 必有字段 备注:磅单材料
"materialRowId":111, //类型:Number 必有字段 备注:磅单材料行id
"globalStatus":8, //类型:Number 必有字段 备注:磅单入库状态,已入库:8,取消入库:-8,不修改:0
"materialName":"挂篮模板", //类型:String 可有字段 备注:材料名称,用于校验数据一致性,空不校验
"materialCode":"12", //类型:String 可有字段 备注:材料编码,用于校验数据一致性,空不校验
"billQuantity":1.02, //类型:Number 可有字段 备注:运单数量,用于校验数据一致性,空不校验
"realQuantity":1.3, //类型:Number 可有字段 备注:实际数量,用于校验数据一致性,空不校验
"confirmationQuantity":1.4, //类型:Number 可有字段 备注:确认量,用于校验数据一致性,空不校验
"surcharges":[ //类型:Array 可有字段 备注:附加费列表,用于校验数据一致性,空不校验
{ //类型:Object 可有字段 备注:附加费,用于校验数据一致性,空不校验
"id":12222, //类型:Number 必有字段 备注:附加费id,用于校验数据一致性
"name":"附加费1", //类型:String 可有字段 备注:附加费名称,用于校验数据一致性,空不校验
"code":"fjf11" //类型:String 可有字段 备注:附加费编码,用于校验数据一致性,空不校验
}
]
}
]
}
]
}
返回结果格式
{
"code":200, //类型:Number 必有字段 备注:状态码
"success":true, //类型:Boolean 必有字段 备注:接口是否成功
"message":"操作成功", //类型:String 必有字段 备注:接口状态信息
"data":{ //类型:Object 必有字段 备注:处理结果
"successList":[ //类型:Array 必有字段 备注:成功列表
{ //类型:Object 必有字段 备注:磅单详情
"billType":0, //类型:Number 必有字段 备注:磅单类型 0收料,1发料,2直入直出,8:其他磅单
"guid":"08fc8be6-aabf-462f-8c12-e79532409354", //类型:String 必有字段 备注:磅单唯一标示(guid)
"originBizRefId":"20170228100600", //类型:String 必有字段 备注:引用三方单据ID
"originBizType":"入库单", //类型:String 必有字段 备注:引用单据类型:入库单、到货点验、小票、直入直出、物资处置
"materials":[ //类型:Array 必有字段 备注:磅单材料细表
{ //类型:Object 必有字段 备注:磅单材料
"materialRowId":111, //类型:Number 必有字段 备注:磅单材料行id
"globalStatus":8, //类型:Number 必有字段 备注:磅单入库状态,已入库:8,取消入库:-8,不修改:0
"materialName":"挂篮模板", //类型:String 可有字段 备注:材料名称,用于校验数据一致性,空不校验
"materialCode":"12", //类型:String 可有字段 备注:材料编码,用于校验数据一致性,空不校验
"billQuantity":1.02, //类型:Number 可有字段 备注:运单数量,用于校验数据一致性,空不校验
"realQuantity":1.3, //类型:Number 可有字段 备注:实际数量,用于校验数据一致性,空不校验
"confirmationQuantity":1.4, //类型:Number 可有字段 备注:确认量,用于校验数据一致性,空不校验
"surcharges":[ //类型:Array 可有字段 备注:附加费列表,用于校验数据一致性,空不校验
{ //类型:Object 可有字段 备注:附加费,用于校验数据一致性,空不校验
"id":12222, //类型:Number 必有字段 备注:附加费id,用于校验数据一致性
"name":"附加费1", //类型:String 可有字段 备注:附加费名称,用于校验数据一致性,空不校验
"code":"fjf11" //类型:String 可有字段 备注:附加费编码,用于校验数据一致性,空不校验
}
]
}
]
}
],
"errorList":[ //类型:Array 必有字段 备注:失败列表
[ //类型:Array 必有字段 备注:无
{ //类型:Object 必有字段 备注:磅单详情
"errCode":"NOT_EXIST", //类型:String 必有字段 备注:失败编码
"errMsg":"billType为空", //类型:String 必有字段 备注:失败原因
"billType":0, //类型:Number 必有字段 备注:磅单类型 0收料,1发料,2直入直出,8:其他磅单
"guid":"08fc8be6-aabf-462f-8c12-e79532409354", //类型:String 必有字段 备注:磅单唯一标示(guid)
"originBizRefId":"20170228100600", //类型:String 必有字段 备注:引用三方单据ID
"originBizType":"入库单", //类型:String 必有字段 备注:引用单据类型:入库单、到货点验、小票、直入直出、物资处置
"materials":[ //类型:Array 必有字段 备注:磅单材料细表
{ //类型:Object 必有字段 备注:磅单材料
"materialRowId":111, //类型:Number 必有字段 备注:磅单材料行id
"globalStatus":8, //类型:Number 必有字段 备注:磅单入库状态,已入库:8,取消入库:-8,不修改:0
"materialName":"挂篮模板", //类型:String 可有字段 备注:材料名称,用于校验数据一致性,空不校验
"materialCode":"12", //类型:String 可有字段 备注:材料编码,用于校验数据一致性,空不校验
"billQuantity":1.02, //类型:Number 可有字段 备注:运单数量,用于校验数据一致性,空不校验
"realQuantity":1.3, //类型:Number 可有字段 备注:实际数量,用于校验数据一致性,空不校验
"confirmationQuantity":1.4, //类型:Number 可有字段 备注:确认量,用于校验数据一致性,空不校验
"surcharges":[ //类型:Array 可有字段 备注:附加费列表,用于校验数据一致性,空不校验
{ //类型:Object 可有字段 备注:附加费,用于校验数据一致性,空不校验
"id":12222, //类型:Number 必有字段 备注:附加费id,用于校验数据一致性
"name":"附加费1", //类型:String 可有字段 备注:附加费名称,用于校验数据一致性,空不校验
"code":"fjf11" //类型:String 可有字段 备注:附加费编码,用于校验数据一致性,空不校验
}
]
}
]
}
]
],
"message":"成功:1条,失败:1条" //类型:String 必有字段 备注:结果说明
}
}