Open wuwenyishi opened 7 months ago
不是代码问题,是由于点位数据采集的表的数据量太大,导致查询周期太长,导致定时任务执行一次后无法执行。
解决方式:
因不是代码问题,所以代码不用修改。涉及到的表增加普通索引,索引字段为 link_plc_id
, 索引方法为BTREE。
在大数量下,索引的重要性能够很明显的体现出来
在读取占用数和剩余数是使用 bis_container_pos_ins表的pos_state 字段值来判断的。由于BIS出库的逻辑问题,在处理bis_container_pos_ins表时把sample_no字段值置为了空,却把pos_state子段值置为了1, 此问题需要在3.0.0版本处理;
数据大屏现在读取未使用孔位的数据,只能判断sample_no字段值是否为空或者null来获取,在用孔位总数减去未使用的数量等于已经使用的数据量
详情看接口文档
sql
SELECT
bis_sample_transfer.id,
bis_sample_transfer.transfer_code,
bis_sample_transfer.create_time,
bis_sample_transfer.transfer_state,
bis_sample_transfer.operator,
COUNT(bis_sample_transfer_details.name) transfer_count
FROM
bis_sample_transfer
LEFT JOIN bis_sample_transfer_details ON bis_sample_transfer.id = bis_sample_transfer_details.transfer_id
<if test="ew.emptyOfWhere == false">
${ew.customSqlSegment}
</if>
GROUP BY
bis_sample_transfer.id,
bis_sample_transfer.transfer_code,
bis_sample_transfer.create_time,
bis_sample_transfer.transfer_state,
bis_sample_transfer.operator
是由于后端代码的问题; 还未确定客户现场是使用的哪个版本的代码,先查看tofflon-pbs-basic的xya-dev 分支。新建分支xya-dev-v1.0.2
星YIA项目,Python代码pbs_two_client代码dev分支,exper_curve_pane.py的343行的 0 改为 float('nan') 即可
https://blog.xuemingde.com/posts/1VD1V8V.html
一花一世界,一念一菩提