拨号盘数字
authord15521469561 <d155214695615@qq.com>
Wed, 26 Apr 2023 07:08:09 +0000 (15:08 +0800)
committerd15521469561 <d155214695615@qq.com>
Wed, 26 Apr 2023 07:08:09 +0000 (15:08 +0800)
3.code/1.watch/2.code/appAlipay.py
3.code/1.watch/2.code/constants.py
3.code/1.watch/2.code/main_1.py
3.code/1.watch/2.code/mgr.py
3.code/1.watch/2.code/protocol.py
3.code/1.watch/2.code/ui.py
3.code/1.watch/2.code/ui_setting.py

index 5cef4d2..dd531f1 100644 (file)
@@ -467,8 +467,8 @@ alipay_invite_bg.add_style(style_alipay_img_default, lv.PART.MAIN|lv.STATE.DEFAU
 
 #提示词
 alipay_invite_label = lv.label(alipay_invite_bg)
-alipay_invite_label.set_pos(6, 8)
-alipay_invite_label.set_size(228, 48)
+alipay_invite_label.set_pos(0, 8)
+alipay_invite_label.set_size(240, 50)
 alipay_invite_label.set_long_mode(lv.label.LONG.WRAP)
 alipay_invite_label.set_text("请家长用手机支付宝扫一扫")
 alipay_invite_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
@@ -519,8 +519,8 @@ alipay_inviting_screen.add_style(style_alipay_screen_default, lv.PART.MAIN|lv.ST
 
 #提示词
 alipay_inviting_label = lv.label(alipay_inviting_screen)
-alipay_inviting_label.set_pos(30, 158)
-alipay_inviting_label.set_size(180, 24)
+alipay_inviting_label.set_pos(0, 158)
+alipay_inviting_label.set_size(240, 24)
 alipay_inviting_label.set_long_mode(lv.label.LONG.WRAP)
 alipay_inviting_label.set_text("绑定中,不要走开")
 alipay_inviting_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
@@ -562,8 +562,8 @@ alipay_success_bg.add_style(style_alipay_img_default, lv.PART.MAIN|lv.STATE.DEFA
 
 #提示词
 alipay_success_label = lv.label(alipay_success_screen)
-alipay_success_label.set_pos(68, 168)
-alipay_success_label.set_size(104, 29)
+alipay_success_label.set_pos(0, 168)
+alipay_success_label.set_size(240, 29)
 alipay_success_label.set_long_mode(lv.label.LONG.WRAP)
 alipay_success_label.set_text("绑定成功")
 alipay_success_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
@@ -578,7 +578,6 @@ class Alipay_success(Screen):
 
     def initialization(self):
         self.timer_Alipay_success.start(1000, 0, self.timeout_Alipay_success)
-        pass
    
     def post_processor_after_initialization(self):
         pass
@@ -620,8 +619,8 @@ alipay_paycode_cont.add_style(style_cont_alipay, lv.PART.MAIN | lv.STATE.DEFAULT
 
 #提示词
 alipay_paycode_label = lv.label(alipay_barcode)
-alipay_paycode_label.set_pos(10, 33)
-alipay_paycode_label.set_size(220, 24)
+alipay_paycode_label.set_pos(0, 33)
+alipay_paycode_label.set_size(240, 24)
 alipay_paycode_label.set_long_mode(lv.label.LONG.WRAP)
 alipay_paycode_label.set_text("收银员扫一扫,完成付款")
 alipay_paycode_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
@@ -645,8 +644,8 @@ alipay_qrcode = alipay_paycode.add_tile(1, 0,  lv.DIR.LEFT | lv.DIR.RIGHT)
 
 #提示词
 alipay_paycode_label1 = lv.label(alipay_qrcode)
-alipay_paycode_label1.set_pos(10, 33)
-alipay_paycode_label1.set_size(220, 24)
+alipay_paycode_label1.set_pos(0, 33)
+alipay_paycode_label1.set_size(240, 24)
 alipay_paycode_label1.set_long_mode(lv.label.LONG.WRAP)
 alipay_paycode_label1.set_text("收银员扫一扫,完成付款")
 alipay_paycode_label1.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
@@ -688,46 +687,48 @@ alipay_pay_success_screen.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
 # add style for watchface
 alipay_pay_success_screen.add_style(style_alipay_screen_default, lv.PART.MAIN|lv.STATE.DEFAULT)
 
-#支付成功LOGO
-alipay_pay_success_bg = lv.img(alipay_pay_success_screen)
-alipay_pay_success_bg.center()
-alipay_pay_success_bg.set_size(240,240)
-alipay_pay_success_bg.set_src("E:/static/APP/alipay/1_13_1_1.png")
-alipay_pay_success_bg.add_style(style_alipay_img_default, lv.PART.MAIN|lv.STATE.DEFAULT)
+  #支付成功LOGO
+alipay_pay_bg = lv.img(alipay_pay_success_screen)
+alipay_pay_bg.set_pos(82, 120)
+alipay_pay_bg.set_size(78,78)
+alipay_pay_bg.set_src("E:/static/APP/alipay/1_13_1_1.png")
+alipay_pay_bg.add_flag(lv.obj.FLAG.CLICKABLE)
+alipay_pay_bg.add_style(style_alipay_img_default, lv.PART.MAIN|lv.STATE.DEFAULT)
+
 
 #付款金额
-alipay_pay_success_label = lv.label(alipay_pay_success_screen)
-alipay_pay_success_label.set_pos(78, 114)
-alipay_pay_success_label.set_size(84, 43)
-alipay_pay_success_label.set_long_mode(lv.label.LONG.WRAP)
+alipay_pay_label = lv.label(alipay_pay_success_screen)
+alipay_pay_label.set_pos(0, 220)
+alipay_pay_label.set_size(240, 45)
+alipay_pay_label.set_long_mode(lv.label.LONG.WRAP)
+alipay_pay_label.set_text(" ")
+alipay_pay_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
+alipay_pay_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
 
-alipay_pay_success_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
-alipay_pay_success_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
 
 #完成按钮
-alipay_pay_success_btn = lv.btn(alipay_pay_success_screen)
-alipay_pay_success_btn.set_size(224,58)
-alipay_pay_success_btn.set_pos(8,174)
-alipay_pay_success_btn.remove_style_all()
-alipay_pay_success_btn.add_style(style_btn_alipay,0)
-
-alipay_pay_success_label_btn = lv.label(alipay_pay_success_btn)
-alipay_pay_success_label_btn.set_text("支付完成")
-alipay_pay_success_label_btn.center()
-alipay_pay_success_label_btn.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+alipay_pay_text = lv.label(alipay_pay_success_screen)
+alipay_pay_text.set_text("支付完成")
+alipay_pay_text.set_pos(8, 10)
+alipay_pay_text.set_size(220,40)
+alipay_pay_text.set_style_text_align(lv.TEXT_ALIGN.LEFT, 0)
+alipay_pay_text.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+
 class Alipay_pay_success(Screen):
     NAME = "alipay_pay_success"
 
     def __init__(self):
         super().__init__()
         self.meta = alipay_pay_success_screen
-
+        alipay_pay_bg.add_event_cb(lambda e: self.button_cb(e), lv.EVENT.CLICKED, None)
 
     def post_processor_after_initialization(self):
         print("money:",str(self.meta_info))
-        alipay_pay_success_label.set_text(str(self.meta_info))
+        alipay_pay_label.set_text(str(self.meta_info))
+
+    def button_cb(self,e):
+        EventMesh.publish("load_screen", {"screen": "main_menu"})
 
-   
     def initialization(self):
         pass
       
@@ -758,8 +759,8 @@ alipay_collect_alipay_qr.set_style_border_width(5, 0)
 
 #提示词
 alipay_collect_label = lv.label(alipay_collect_screen)
-alipay_collect_label.set_pos(20, 204)
-alipay_collect_label.set_size(200, 24)
+alipay_collect_label.set_pos(0, 204)
+alipay_collect_label.set_size(240, 50)
 alipay_collect_label.set_long_mode(lv.label.LONG.WRAP)
 alipay_collect_label.set_text("请对方使用支付宝扫码")
 alipay_collect_label.set_style_text_align(lv.TEXT_ALIGN.CENTER, 0)
index 2838048..480e1cf 100644 (file)
@@ -50,6 +50,12 @@ class PROTOCOL:
     TEMP_SEND = "temp_SEND"
     TEMP_RECV = "temp_RECV"
 
+    DLT_SEND = "DLT_SEND"
+    DLT_RECV = "DLT_RECV"
+
+    UPLOAD_SEND = "UPLOAD_SEND"
+    UPLOAD_RECV = "UPLOAD_RECV"
+
 class EVENT:
     CHANNEL_SOCKET_SEND = "CHANNEL_SOCKET_SEND"
     START_LOCATION = "START_LOCATION" 
index 8b38054..25b174d 100644 (file)
@@ -50,7 +50,7 @@ if __name__ == '__main__':
     from ext.lcd import tp_cst816
     print("init3:{}".format(utime.localtime()))
     from ext.btn_device_ec800m import BtnDevice
-    from ext.protocol import LK_ProtoCol,PING_ProtoCol,HEART_ProtoCol,OXYGEN_ProtoCol,OXYGEN_One_ProtoCol,HRSTART_ProtoCol,temp_ProtoCol,\
+    from ext.protocol import LK_ProtoCol,PING_ProtoCol,HEART_ProtoCol,OXYGEN_ProtoCol,OXYGEN_One_ProtoCol,HRSTART_ProtoCol,UPLOAD_ProtoCol,TEMP_ProtoCol,DLT_ProtoCol,\
         WT_ProtoCol,UD_ProtoCol,REMIND_ProtoCol, CR_ProtoCol,KA_ProtoCol,FIND_ProtoCol,POWEROFF_ProtoCol,ProtoColResolver,PHL_ProtoCol
     import ext.mgr as mgr
     print("init1:{}".format(utime.localtime()))
@@ -170,6 +170,7 @@ if __name__ == '__main__':
     app.append_manager(getHrTimeManager())
     app.append_manager(getBrightnessManager())
     app.append_manager(getStorageDataManager())
+
     print("init10:{}".format(utime.localtime()))    
     pcr = ProtoColResolver()
     pcr.add_support(LK_ProtoCol())
@@ -188,7 +189,9 @@ if __name__ == '__main__':
     pcr.add_support(HEART_ProtoCol())
     pcr.add_support(OXYGEN_ProtoCol())
     pcr.add_support(OXYGEN_One_ProtoCol())
-    pcr.add_support(temp_ProtoCol())
+    pcr.add_support(TEMP_ProtoCol())
+    pcr.add_support(DLT_ProtoCol())
+    pcr.add_support(UPLOAD_ProtoCol())
     sm = SockManager()
     sm.add_support_resolver(pcr)
     app.append_manager(sm)
index 847d5eb..9afa67b 100644 (file)
@@ -628,7 +628,7 @@ class DeviceInfoManager(Abstract):
             if msg_nums >= 50:
                 EventMesh.publish("load_screen", {"screen": "message_full"})
         
-        print("hr......01....{}\r\n".format(hr_time))
+        #print("hr......01....{}\r\n".format(hr_time))
         if hr_time != None:
             # print("hr......01....{}\r\n".format(hr_time))
             if hr_time > 0:
@@ -1801,3 +1801,4 @@ class getVolumSizeManager(Abstract):#设置或获取音量大小数据
     def get_volum_size(self, event, msg): 
         return self.volume_size
 
+
index aef49f3..88c9352 100644 (file)
@@ -703,7 +703,7 @@ class OXYGEN_One_ProtoCol(ProtoCol):#单次测量
                 EventMesh.publish("set_spo2_state",3)#3代表单次测量
         EventMesh.publish(constants.PROTOCOL.OXSTART_SEND)
 
-class temp_ProtoCol(ProtoCol):
+class TEMP_ProtoCol(ProtoCol):
     """上传体温测试数据"""
     TYPE = "temp"
     def send(self, event, msg):
@@ -728,6 +728,66 @@ class temp_ProtoCol(ProtoCol):
         """
         # print("HRSTART_ProtoCol RECV msg:")
         #EventMesh.publish(constants.PROTOCOL.TEMP_SEND)
+
+#解绑
+# [XT*334588000000156*0003*DLT]
+def reset_factory(msg):
+    if msg == 1:
+        Power.powerRestart()
+class DLT_ProtoCol(ProtoCol):
+    """解绑数据"""
+    TYPE = "DLT"
+    def send(self, event, msg):
+        # [XT*334588000000156*0004*temp]
+        send_data = "SZKW*%s*0003*DLT"%(self.imei)
+        MD5_SIGN = self.pack_MD5_head(send_data)
+        data = "[%s%s]"%(str(MD5_SIGN),send_data)
+        print("temp:data:%s"%(data))
+        # 通过socket发送到服务器端
+        EventMesh.publish(constants.EVENT.CHANNEL_SOCKET_SEND,data)
+
+    def recv(self, event, msg):
+        """
+        @param event:
+        @param msg: 接收到的下行数据
+        """
+        # print("DLT_ProtoCol RECV msg:")
+        reset_factory(1)
+
+#定位频率
+class UPLOAD_ProtoCol(ProtoCol):
+    """定位频率数据"""
+    TYPE = "UPLOAD"
+    def send(self, event, msg):
+        # [XT*334588000000156*0004*temp]
+        send_data = "SZKW*%s*0006*UPLOAD"%(self.imei)
+        MD5_SIGN = self.pack_MD5_head(send_data)
+        data = "[%s%s]"%(str(MD5_SIGN),send_data)
+        print("UPLOAD:data:%s"%(data))
+        # 通过socket发送到服务器端
+        EventMesh.publish(constants.EVENT.CHANNEL_SOCKET_SEND,data)
+
+    def recv(self, event, msg):
+        """
+        @param event:
+        @param msg: 接收到的下行数据
+        """
+        # b'[SZKW*867387060319166*000A*UPLOAD,600]'
+        # print("DLT_ProtoCol RECV msg:".format(msg))
+        msg = msg[1:-1]
+        msg_tmp = msg.decode('ascii')
+        msg_tmp = msg_tmp.split(',')
+        msg_tmp = msg_tmp[1]
+        # print("HRSTART_ProtoCol RECV msg:{} msg_:{}".format(msg,msg_tmp))
+        upload_time = int(msg_tmp)
+        storage_tmp = EventMesh.publish("get_storage_data")
+        storage_tmp["upload_time"] = upload_time
+        EventMesh.publish("set_storage_data", storage_tmp)
+        with open("/ext/static/storage_file/config.json","w",encoding="utf-8") as fd:
+            ujson.dump(storage_tmp,fd)
+        EventMesh.publish(constants.PROTOCOL.UPLOAD_SEND)
+        
+  
 class ProtoColResolver(object):
     def __init__(self):
         self.protocol_list = []
@@ -747,11 +807,11 @@ class ProtoColResolver(object):
         # elif data.startswith("Update;"):
         #     data = data[7:]
         #     EventMesh.publish(constants.PROTOCOL.H04_RECV, data)
-        # print("handler:{}".format(type(data)))
+        print("handler:{}".format(type(data)))
         data_tmp = data.decode('ascii')
         data_tmp = data_tmp.split(']')[0] #去掉]
         ProtoCol_type = data_tmp.split('*')[3] #拿到协议标识
         ProtoCol_type = ProtoCol_type.split(',')[0]
         ProtoCol_type = "%s_RECV"%(ProtoCol_type)
-        #print("ProtoColResolver:ProtoCol_type:%s\r\ndata:%s"%(ProtoCol_type,data))
+        # print("ProtoColResolver:ProtoCol_type:%s\r\ndata:%s"%(ProtoCol_type,data))
         EventMesh.publish(ProtoCol_type, data) #返回协议read
index 3dcd6a4..52a48df 100644 (file)
@@ -575,19 +575,19 @@ phone.set_size(240, 320)
 phone.add_style(style_screen, lv.PART.MAIN | lv.STATE.DEFAULT)
 
 
-line_points = [{"x":0,"y":0},{"x":0,"y":20}]
+line_points = [{"x":0,"y":0},{"x":0,"y":35}]
 phone_line = lv.line(phone)
 phone_line.set_points(line_points,2)
-phone_line.set_pos(235,74)
-phone_line.set_size(2,20)
+phone_line.set_pos(235,58)
+phone_line.set_size(2,35)
 phone_line.set_scrollbar_mode(lv.SCROLLBAR_MODE.OFF)
 phone_line.add_style(style_line,0)
 
 phone_label = lv.label(phone)
-phone_label.set_pos(0, 76)
-phone_label.set_size(0, 30)
+phone_label.set_pos(0, 45)
+phone_label.set_size(0, 55)
 phone_label.set_text(" ")
-phone_label.add_style(style_font_youyuan_20, lv.PART.MAIN | lv.STATE.DEFAULT)
+phone_label.add_style(style_font_youyuan_40, lv.PART.MAIN | lv.STATE.DEFAULT)
 phone_label.set_long_mode(lv.label.LONG.CLIP)
 phone_label.set_style_text_align(lv.TEXT_ALIGN.RIGHT, 0)
 
@@ -927,11 +927,11 @@ class PhoneScreen(Screen):
             voiceCall.callStart(self.phone_num)
         
     def show_num(self):
-        len_t = len(self.phone_list)*20
-        if len_t > 230:
-            len_t = 230
-        phone_label.set_size(len_t,30)
-        phone_label.set_pos(230-len_t,76)
+        len_t = len(self.phone_list)*40
+        if len_t > 235:
+            len_t = 235
+        phone_label.set_size(len_t,45)
+        phone_label.set_pos(235-len_t,60)
         phone_label.set_text(self.phone_num)
 
     def done_return(self):
index 9514adb..317d14c 100644 (file)
@@ -839,7 +839,12 @@ class RestoreScreen(Screen):
         if ret == True:
             ql_fs.rmdirs("/ext/static/storage_file")
             ql_fs.mkdirs("/ext/static/storage_file")
-        Power.powerRestart()
+        # [XT*334588000000156*0003*DLT]
+        EventMesh.publish(constants.PROTOCOL.DLT_SEND)
+        dlt_flag = EventMesh.publish("get_dlt_flag")
+        if dlt_flag == 1:
+            Power.powerRestart()
+        
         # EventMesh.publish("load_screen", {"screen": "setting"})
 
     def concel(self, e):