问题描述:
(tip:影像状态
0无影像
1上传中,移动上传影像才可能有这个状态
2已上传,有影像
3影像退回重扫。业务上来说影像有问题才退扫,能否查看到是第三方影像系统决定。
4影像已重传,有影像
)
单据已经上传了影像,后台查看t_wsc_billimagemap(单据影像映射表)里面影像状态为2或者4,且单据序时簿可以正常查看影像。但是,在共享任务池管理或者共享任务池里面查看影像提示“单据无影像,请上传影像!”
问题原因:
问题产生原因,是由于共享查看影像和单据查看影像的逻辑不一样。查看影像是EAS通过webservice接口和影像系统交互,影像系统返还url,由EAS展示影像系统的url。查看影像的webservice接口需要将影像编码传给影像系统。
单据寻找影像编码是通过查询t_wsc_billimagemap里面的fimagenumber字段,共享任务处理中的任务则是查找t_ssc_dynamicvalue表里面动态属性FDYNAMICIDID为barcodeid对应的值。查询sql如下(FDINAMICVALUE就是共享任务池查看影像传给影像系统的影像编码):
select FDINAMICVALUE from t_ssc_dynamicvalue
where FDYNAMICIDID in(select fid from T_SSC_DynamicAttribute where FNUMBER ='barCodeID' )
and FJOBIDID in(select fid from t_ssc_job where FBILLID ='单据id')
如果t_ssc_dynamicvalue表里面对应的FDINAMICVALUE 值为空,那么共享任务查看影像就会异常。
解决方案:
上面表t_ssc_dynamicvalue里面值的获取是通过工作流创建影像映射节点配置的,如果为空,可以在先新增一个获取影像信息的节点,然后创建共享任务节点后置脚本里面通过脚本给barCodeID赋值即可。脚本格式如下:
shareCenter.put("barCodeID",imageNo);
if(imageMap!=null)
{ if(imageMap.get("imageNumber")!=null)
{ imageNo=imageMap.get("imageNumber");
}
}
历史单据修复:(1)修改t_ssc_job表影像标识为1
(2)修改t_ssc_dynamicvalue里面FDINAMICVALUE 值为影像编码
推荐阅读