二开检验单实测值如何获取实测值判定结果,项目检验结果,样本检验结果,质量决策
一、案例需求描述
客户现场二开了检验单,在表单上增加了实测值的引入功能,同时引入单个物料的多个项目对应的实测值,希望在实测值引入之后获得实测值的判定结果,项目检验结果,样本检验结果,质量决策信息。
二、解决方案
【温馨提示:因企业业务场景存在不同程度的差异,此案例仅供参考,请根据现场实际业务情况探讨最优解决方案,并在上线前进行充分验证。】
标准产品提供实测值判定微服务,用于二开获取实测值判定相关结论,二开在引入实测值后,调用标准产品服务,获取相关结论后对结论字段进行赋值处理。
标准产品提供了以后服务供二开选择。
1、获取实测值判定结果微服务,该服务返回对应实测值的判定结果,不返回项目检验结果,样本检验结果,质量决策信息。
调用方式: DispatchServiceHelper.invokeBizService("qmc", "qcbd", "IInspectJudgeMeasureService", "judgeMeasureValResult", String类型参数);
入参 [ { "matchflag": "1007736669203406848", //比较符id "normtype": "A", //指标类型 "sampleId": 1758623917422940160, //样本id "specvalue": "10", //标准值 "projUuid": "3HYYIUE27/WA", //项目行唯一标识 "downvalue": "5.0000000000", //下限值 "topvalue": "15.0000000000", //上限值 "measuredValRat": "8" //实测值定量 "measuredValDeter": "" //实测值定性 }, { "matchflag": "1007736669203406848", "normtype": "A", "sampleId": 1758623917422940161, "specvalue": "10", "projUuid": "3HYYIUE27/WA", "downvalue": "5.0000000000", "topvalue": "15.0000000000", "measuredValRat": "16" } ] 出参 { "data": [ { "measureResult": "Y", //实测值结果 "projUuid": "3HYYIUE27/WA", //项目行唯一标识 "sampleId": 1758623917422940160 //样本id }, { "measureResult": "N", "projUuid": "3HYYIUE27/WA", "sampleId": 1758623917422940161 } ], "retCode": "1", "retMsg": "" }
2、通过实测值获取检验判定结论微服务,该服务返回对应实测值的判定结果,同时返回项目检验结果,样本检验结果,质量决策信息。
调用方式: DispatchServiceHelper.invokeBizService("qmc", "qcbd", "InspectService", "getJudgeResByMeasureVal", String类型参数);
入参 { "id": 1753047647540765696, --物料分录id "materialid": 1250711817878118400, --物料主数据id "unitfield": 5, --计量单位id "baseunit": 5, --基本单位id "rinsqty": 20.0000000000, --样本数量 "acstr": "10", --允收数 "inspsubentity": [ { "uquuid": "3HAOE4YXSVDH", --唯一标识 "isjoininspect": false, --联合检验项 false 联合检验项 true 非联合检验项 "joininspectstatus": "", --联合检验状态 "P" 计划 "Y" 已完成 "normtype": "A", --指标类型 "A" 定量 "B" 定性 "matchflag": 0, --比较符id "specvalue": "50", --标准值 "topvalue": 101.0000000000, --上限值 "downvalue": 1.0000000000, --下限值 "projsampqty": 100.0000000000, --项目样本数量 "projacceptqty": 10.0000000000 --项目允收数 } ], "subsampleresentity": [ { "samplenumid": 1753047642356604930 --样本编号ID } ], "submeasuredvalentity": [ { "projuuid": "3HAOE4YXSVDH", --按项目分录唯一标识 "exmapleid": 1753047642356604930, --样本编号ID "measuredval_deter": "", --实测值(定性) "measuredval_rat": "" --实测值(定量) } ] } 出参 {"data": { "id": 1753047647540765696, --物料分录id "sampqualqty": 0, --样本合格数 "basesampqlyqty": 0, --基本单位样本合格数 "samunqualqty": 0, --样本不合格数 "basesampuqlyqty": 0, --基本单位样本不合格数 "samplingresult": "", --质量判定 "B" 接受 "C" 不接受 为空表示无法判定 不要覆盖原有结果 "inspsubentity": [ --对于是联合检验项,并且联合检验状态不为空的检验项目(当前场景:申请单下推的联合检验项目) ,不返回检验结论,实测值判定结论,避免覆盖联合检验的结论。 { "uquuid": "3HAOE4YXSVDH", --唯一标识 "projqualifiyqty": 0, --项目合格数 "projunqualifiyqty": 0, --项目不合格数 "choosesampqty": 2, --选择样本数量 "projckval": 1, --实测值(数量) "projckresult": "" --项目检验结果 "Y" 合格 "N" 不合格 为空表示无法判定,不要覆盖原有结果 } ], "subsampleresentity": [ { "samplenumid": 1753047642356604930, --样本编号ID "sampckval": 0, --实测值(数量) "sampleres": "" --样本检验结果 "Y" 合格 "N" 不合格 为空表示无法判定,不要覆盖原有结果 } ], "submeasuredvalentity": [ --对于是联合检验项,并且联合检验状态不为空的检验项目(当前场景:申请单下推的联合检验项目) ,不返回检验结论,实测值判定结论,避免覆盖联合检验的结论。 { "projuuid": "3HAOE4YXSVDH", --按项目分录唯一标识 "exmapleid": 1753047642356604930, --样本编号ID "measuredval_judge": "" --实测值判定结果 "Y" 合格 "N" 不合格 为空表示无法判定,不要覆盖原有结果 } ] }, "retCode": "1", "retMsg": "" }
3、通过实测值判定结果获取检验判定结论,该服务返回项目检验结果,样本检验结果,质量决策信息。
调用方式: DispatchServiceHelper.invokeBizService("qmc", "qcbd", "InspectService", "getJudgeResByMeasureRes", String类型参数);
入参 { "id": 1753047647540765696, --物料分录id "materialid": 1250711817878118400, --物料主数据id "unitfield": 5, --计量单位id "baseunit": 5, --基本单位id "rinsqty": 20.0000000000, --样本数量 "acstr": "10", --允收数 "inspsubentity": [ { "uquuid": "3HAOE4YXSVDH", --唯一标识 "isjoininspect": false, --联合检验项 false 联合检验项 true 非联合检验项 "joininspectstatus": "", --联合检验状态 "P" 计划 "Y" 已完成 "projsampqty": 100.0000000000, --项目样本数量 "projacceptqty": 10.0000000000 --项目允收数 } ], "subsampleresentity": [ { "samplenumid": 1753047642356604930 --样本编号ID } ], "submeasuredvalentity": [ { "projuuid": "3HAOE4YXSVDH", --按项目分录唯一标识 "exmapleid": 1753047642356604930, --样本编号ID "measuredval_deter": "", --实测值(定性) "measuredval_rat": "", --实测值(定量) "measuredval_judge": "" --实测值判定结果 "Y" 合格 "N" 不合格 } ] } 出参 {"data": { "id": 1753047647540765696, --物料分录id "sampqualqty": 0, --样本合格数 "basesampqlyqty": 0, --基本单位样本合格数 "samunqualqty": 0, --样本不合格数 "basesampuqlyqty": 0, --基本单位样本不合格数 "samplingresult": "", --质量判定 "B" 接受 "C" 不接受 为空表示无法判定 不要覆盖原有结果 "inspsubentity": [ { "uquuid": "3HAOE4YXSVDH", --唯一标识 "projqualifiyqty": 0, --项目合格数 "projunqualifiyqty": 0, --项目不合格数 "choosesampqty": 2, --选择样本数量 "projckval": 1, --实测值(数量) "projckresult": "" --项目检验结果 "Y" 合格 "N" 不合格 为空表示无法判定,不要覆盖原有结果 } ], "subsampleresentity": [ --对于是联合检验项,并且联合检验状态不为空的检验项目(当前场景:申请单下推的联合检验项目) ,不返回检验结论,实测值判定结论,避免覆盖联合检验的结论。 { "samplenumid": 1753047642356604930, --样本编号ID "sampckval": 0, --实测值(数量) "sampleres": "" --样本检验结果 "Y" 合格 "N" 不合格 为空表示无法判定,不要覆盖原有结果 } ] }, "retCode": "1", "retMsg": "" }
三、实现步骤
二开获取引入实测值后,批量获取单个物料对应的多个项目和样本,构建实测值请求信息,调用微服务获取判定结论。
参考qcbd_inspectservice_test【单元测试模块】(检验服务测试)的插件进行请求数据的组装。
四、用户操作效果演示
五、开发环境及版本
苍穹版本号:V6.0.4及以上版本
星瀚版本号:V6.0.4及以上版本
六、适用单据范围
来料检验单,生产检验单,销售检验单,库存检验单,来料联合检验单,生产联合检验单,销售联合检验单,库存联合检验单
七、附件
无
二开检验单实测值如何获取实测值判定结果,项目检验结果,样本检验结果,质量决策
本文2024-09-23 00:07:50发表“云星瀚知识”栏目。
本文链接:https://wenku.my7c.com/article/kingdee-xinghan-137505.html