跳到主要内容

抄表待办

功能描述

无需下发计划,对用户进行在线抄表操作 抄表完成后状态是‘待审核’

项目:ReadMeterClient

组件:PhoneHandManagerOnline

组件别名:phone-hand-manage-online

查询条件

条件描述实际取值字段
表类型f_meter_classify
客户编号f_userinfo_code
客户姓名f_user_name
客户地址f_address
小区f_residential_area
楼栋f_building
单元f_unit
门牌f_room
楼层f_floor
表号f_meternumber
抄表册f_book_name
调压箱f_adjustable_name
表册开始位置f_meter_book_sort_begin
表册结束位置f_meter_book_sort_end
用户证号f_book_no

查询列表

,,,,,,,,,,,

字段名称实际取值字段
客户编号f_userinfo_code
客户名称f_user_name
客户地址f_address
客户电话f_user_phone
表号f_meternumber
表箱号f_adjustable_id
表类型f_meter_classify
账户结余f_balance
上次抄表时间f_last_input_date
上期抄表始数f_last_startbase
上期用气量f_last_gas
上期底数f_last_tablebase
上次安检时间f_last_checkdate
Details

查询主要sql PcHandInfo.sql


select * from (
SELECT
{ entity.findDialect() == $SqlServer$:$
DATEDIFF (day , uf.f_hand_date,getDate())
$,$
ROUND((sysdate-TO_DATE(TO_char(uf.f_hand_date,'yyyy-mm-dd hh:mi:ss'),'yyyy-mm-dd hh:mi:ss')),0)
$} f_unhand_date,
isnull(c.num,0) num,

isnull(h.f_oughtfee,0) f_oughtfee,
isnull(h.f_oughtfee,0)+ isnull(h.f_overdue,0) f_real_oughtfee,
isnull(uf.f_meter_base,0) f_last_tablebase,
uf.f_hand_date f_last_input_date,
uf.f_orgid,
uf.f_table_state,
uf.f_filialeid,
uf.f_user_id,
case when isnull(uf.f_capacity, 0) > 0 then uf.f_capacity else gm.f_capacity end f_capacity, --表最大量程
uf.f_meternumber,
uf.f_userfiles_id,
uf.f_user_type,
uf.f_gasproperties,
uf.f_price_id,
uf.f_inputtor,
uf.f_meter_book_sort,
u.f_userinfo_id,
u.f_userinfo_code,
u.f_user_name,
u.f_user_phone,
u.f_balance,
u.f_user_state,
u.f_user_level, --用户等级
u.f_rent_phone, --备用电话
u.f_book_no,
u.f_comments f_phone_comments, --备注
ua.f_address,
ua.f_residential_area,
ua.f_building,
ua.f_unit,
ua.f_floor,
ua.f_room,
ua.f_last_check_date f_last_checkdate,
gb.f_meter_brand,
uf.f_meter_classify,
isnull(uf.f_total_gas,0) f_total_gas,
isnull(uf.f_initial_base,0) f_initial_base,
isnull(uf.f_total_usegas_amount,0) f_total_usegas_amount,
uf.version,
gm.f_meter_style,
mb.id mbid,
mb.f_book_name,
ad.f_adjustable_name,
ad.f_adjustable_id,
h1.handid,
case when uf.f_meter_classify like '%卡表' then h3.f_last_result_state else h2.f_last_result_state end f_last_result_state,
isnull(case when uf.f_meter_classify='机表' then h2.f_last_startbase else h3.f_last_startbase end ,0) f_last_startbase,
isnull(case when uf.f_meter_classify='机表' then h2.f_last_gas else h3.f_last_gas end,0) f_last_gas,
isnull(f_last_shengyu_gas,0) f_last_shengyu_gas,
isnull(case when uf.f_meter_classify='机表' then h2.f_last_oughtamount else h3.f_last_oughtamount end ,0) f_last_oughtamount,
isnull(case when uf.f_meter_classify='机表' then a1.f_ave_gas else a2.f_ave_gas end,0) f_ave_gas
FROM
t_userfiles uf
LEFT JOIN t_user_address ua ON uf.f_useraddress_id = ua.id
LEFT JOIN t_userinfo u ON u.f_userinfo_id = uf.f_userinfo_id
left join t_gasbrand gb on uf.f_gasbrand_id = gb.id
left join t_gasmodel gm on uf.f_gasmodel_id=gm.id
left join t_meter_book mb on uf.f_meter_book_num=mb.id
left join (
select max(id) handid,f_userfiles_id from t_handplan
where f_hand_state='有效' and f_meter_state='未抄表' group by f_userfiles_id
) h1 on uf.f_userfiles_id=h1.f_userfiles_id
left join (
select f_userfiles_id, count(*)num from t_handplan
where f_hand_state='有效' and f_meter_state='待审核'
group by f_userfiles_id
)c on uf.f_userfiles_id=c.f_userfiles_id
left join (
select f_userfiles_id,max(id) maxid,
{ entity.findDialect() == $SqlServer$:$
cast(sum(f_oughtamount)/count(*) as numeric(9,2))
$,$
ROUND(sum(f_oughtamount)/count(*),2)
$}
f_ave_gas
from t_handplan
where f_hand_state='有效' and f_meter_state='已抄表' group by f_userfiles_id
)a1 on uf.f_userfiles_id=a1.f_userfiles_id
left join (select id,f_oughtamount f_last_oughtamount,f_result_state f_last_result_state,f_last_tablebase f_last_startbase,
f_oughtamount f_last_gas
from t_handplan) h2 on a1.maxid=h2.id
left join (
select f_userfiles_id,max(id) maxid,
{ entity.findDialect() == $SqlServer$:$
cast(max(f_tablebase)/count(*) as numeric(9,2))
$,$
ROUND(max(f_tablebase)/count(*),2)
$}
f_ave_gas
from t_cardhand where f_meter_state='已抄表' group by f_userfiles_id
) a2 on uf.f_userfiles_id=a2.f_userfiles_id
left join (select id,f_real_amount as f_last_oughtamount,f_shengyu_gas as f_last_shengyu_gas,
f_last_tablebase f_last_startbase,f_real_amount f_last_gas,f_result_state f_last_result_state
from t_cardhand)h3
on a2.maxid=h3.id
left join (
select
f_userfiles_id,
sum(f_oughtfee) f_oughtfee,
0 f_overdue
from (
select
h.f_userfiles_id,
h.f_oughtamount,
isnull(f_debt_money,0) f_debt_money,
h.f_oughtfee-isnull(f_debt_money,0) f_oughtfee,
u.f_balance,
u.f_userinfo_code
from t_handplan h left join (
select f_hand_id,sum(f_debt_money) f_debt_money
from t_sellinghand group by f_hand_id
) sh on h.id = sh.f_hand_id
left join t_userinfo u on h.f_userinfo_id = u.f_userinfo_id
where f_whether_pay='否' and f_meter_state='已抄表' and f_hand_state='有效'
) s
group by s.f_userfiles_id
) h on uf.f_userfiles_id = h.f_userfiles_id
left join t_area a on ua.f_residential_area_id = a.id
LEFT JOIN t_adjustablebox ad ON uf.f_adjustable_id = ad.id
)t
where {condition} AND f_meter_classify != '物联网表' AND f_table_state = '正常' and f_user_state='正常' and num=0
order by f_book_name,f_meter_book_sort,f_adjustable_id,mbid,f_address {sort}

按钮操作

查询

发送请求从手机端本地查询未抄表用户

清空

清空查询条件

####扫码

扫描表号,得到表具信息

列表操作

跳转到抄表单页面

配置说明

没有特殊暂不阐述