Skip to content

Commit 12d9c3a

Browse files
committed
数据类型空值处理
1 parent ea02fdf commit 12d9c3a

3 files changed

Lines changed: 10 additions & 9 deletions

File tree

rebar.config

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -28,7 +28,7 @@
2828
%% Release profiles
2929
%% To create a release just run
3030
%% rebar3 as prod release
31-
{relx, [{release, {eadm, "0.1.41"},
31+
{relx, [{release, {eadm, "0.1.42"},
3232
[eadm, nova, epgsql, poolboy, lager, sasl, inets, observer, runtime_tools]},
3333
{mode, minimal},
3434
{extended_start_script, true},

src/apis/api_watch.erl

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -102,7 +102,8 @@ index(#{params := Params}) ->
102102
<<"10">> ->
103103
% 血糖
104104
try
105-
BloodSugar = erlang:binary_to_float(maps:get(<<"bloodSugar">>, Params, <<"0">>)),
105+
BloodSugar = erlang:list_to_float(erlang:binary_to_list(
106+
maps:get(<<"bloodSugar">>, Params, <<"0">>))),
106107
BTUtcTime = eadm_utils:parse_date_time(maps:get(<<"BTUtcTime">>, Params, <<"1970/1/1 00:00:00">>)),
107108
eadm_pgpool:equery(pool_pg, "insert into lc_watchbs(ptime, bloodsugar)
108109
values($1, $2) on conflict (ptime)
@@ -128,10 +129,10 @@ index(#{params := Params}) ->
128129
<<"12">> ->
129130
% 体温数据
130131
try
131-
BodyTemperature = erlang:binary_to_float(maps:get(<<"bodyTemperature">>, Params, <<"0">>)),
132+
BodyTemperature = maps:get(<<"bodyTemperature">>, Params, <<"0">>),
132133
BTUtcTime = eadm_utils:parse_date_time(maps:get(<<"BTUtcTime">>, Params, <<"1970/1/1 00:00:00">>)),
133134
eadm_pgpool:equery(pool_pg, "insert into lc_watchbt(ptime, bodytemperature)
134-
values($1, $2) on conflict (ptime)
135+
values($1, $2::real) on conflict (ptime)
135136
do update set bodytemperature=excluded.bodytemperature;", [BTUtcTime, BodyTemperature]),
136137
#{<<"success">> => true}
137138
catch
@@ -141,11 +142,11 @@ index(#{params := Params}) ->
141142
<<"14">> ->
142143
% 体温数据
143144
try
144-
BodyTemperature = erlang:binary_to_float(maps:get(<<"bodyTemperature">>, Params, <<"0">>)),
145-
WristTemperature = erlang:binary_to_float(maps:get(<<"wristTemperature">>, Params, <<"0">>)),
145+
BodyTemperature = maps:get(<<"bodyTemperature">>, Params, <<"0">>),
146+
WristTemperature = maps:get(<<"wristTemperature">>, Params, <<"0">>),
146147
BTUtcTime = eadm_utils:parse_date_time(maps:get(<<"BTUtcTime">>, Params, <<"1970/1/1 00:00:00">>)),
147148
eadm_pgpool:equery(pool_pg, "insert into lc_watchbt(ptime, bodytemperature, wristtemperature)
148-
values($1, $2, $3) on conflict (ptime)
149+
values($1, $2::real, $3::real) on conflict (ptime)
149150
do update set bodytemperature=excluded.bodytemperature,
150151
wristtemperature=excluded.wristtemperature;",
151152
[BTUtcTime, BodyTemperature, WristTemperature]),
@@ -180,7 +181,7 @@ index(#{params := Params}) ->
180181
values($1, $2, $3) on conflict (ptime)
181182
do update set signal=excluded.signal, battery=excluded.battery;",
182183
[BTUtcTime, Signal, Battery]),
183-
Steps = maps:get(<<"steps">>, Params, <<"0">>),
184+
Steps = erlang:binary_to_integer(maps:get(<<"steps">>, Params, <<"0">>)),
184185
eadm_pgpool:equery(pool_pg, "insert into lc_watchstep(ptime, steps)
185186
values($1, $2) on conflict (ptime)
186187
do update set steps=excluded.steps;", [BTUtcTime, Steps]),

src/eadm.app.src

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,7 @@
11
%% -*- mode: erlang;erlang-indent-level: 4;indent-tabs-mode: nil -*-
22
{application, eadm,
33
[{description, "RG管理平台"},
4-
{vsn, "0.1.41"},
4+
{vsn, "0.1.42"},
55
{registered, []},
66
{mod, {eadm_app, []}},
77
{included_applications, []},

0 commit comments

Comments
 (0)