--- /dev/null
+
+#ifndef __SCHEDULEDATA_H__
+#define __SCHEDULEDATA_H__
+
+// #include "ohos_types.h"
+#include <string>
+
+#ifdef __cplusplus
+#if __cplusplus
+extern "C" {
+#endif
+#endif
+
+namespace OHOS
+{
+ typedef struct
+ {
+ std::string date; // 7/8
+ std::string topic; // xxxx
+ std::string time; //10:30-14:00
+ std::string content; // yyyyyyy
+ }ScheduleRevData;
+
+ #define SCHEDULE_DATA_COUNT_MAX (20)
+
+ void C_ScheduleSetByApp(ScheduleRevData * data, uint8_t index, bool is_finish);
+ int C_ScheduleDataReadFromFile();
+ int C_ScheduleDataWriteToFile();
+}
+
+
+#ifdef __cplusplus
+#if __cplusplus
+}
+#endif
+#endif
+
+#endif
\ No newline at end of file
\r
#include "ohos_types.h"\r
#include "schedule/include/ScheduleListItem.h"\r
+#include "schedule/include/ScheduleData.h"\r
\r
\r
namespace OHOS\r
{\r
- typedef struct\r
- {\r
- std::string date; // 7/8\r
- std::string topic; // xxxx\r
- std::string time; //10:30-14:00\r
- std::string content; // yyyyyyy\r
- }ScheduleRevData;\r
-\r
- #define SCHEDULE_DATA_COUNT_MAX (20)\r
-\r
- \r
class ScheduleModel\r
{\r
public:\r
static ScheduleModel &GetInstance(void);\r
- uint8_t ScheduleDataInfoSet(void);\r
bool ScheduleDataIsEmpty(void);\r
ScheduleListItemInfo * ScheduleDataInfoGet(void);\r
+ uint8_t ScheduleDataItemCountGet(void);\r
\r
std::string ScheduleInfoDateStrGet(uint8_t index);\r
std::string ScheduleInfoTopicStrGet(uint8_t index);\r
\r
void ScheduleSetByApp(ScheduleRevData * data, uint8_t index, bool is_finish);\r
\r
- void ScheduleDataToInfo(void);\r
-\r
private:\r
ScheduleModel();\r
~ScheduleModel();\r
ScheduleModel(const ScheduleModel &) = delete;\r
ScheduleModel &operator=(const ScheduleModel &) = delete;\r
\r
+ void ScheduleDataItemCountSet(uint8_t count);\r
+ void ScheduleDataToInfo(void);\r
+\r
ScheduleRevData ScheduleRevData_[SCHEDULE_DATA_COUNT_MAX] = {nullptr, nullptr, nullptr, nullptr};\r
ScheduleListItemInfo ScheduleDataInfo_[SCHEDULE_DATA_COUNT_MAX*2] = {nullptr, nullptr, nullptr, nullptr, 0, false, 0, 0};\r
+ uint8_t ItemCount_{0};\r
};\r
}\r
\r
return instance;\r
}\r
\r
- static ScheduleListItemInfo t_data[10] = {\r
- {"10-10", "date00", "a", "a", 0, true, 4, 0},\r
- {"10-10", "date000", "05:05", "jkguqpfhklal", 0, false, 0, 0},\r
- {"10-10", "date000", "06:06", "dalguqpfhklal", 0, false, 0, 1},\r
- {"10-10", "date002", "07:07", "atzdflal", 0, false, 0, 2},\r
- {"10-10", "date003", "08:08", "gjqpljkal", 0, false, 0, 3},\r
-\r
- {"10-18", "date01", "b", "b", 0, true, 2, 0},\r
- {"10-18", "date011", "09:09", "qpfal", 0, false, 0, 0},\r
- {"10-18", "date011", "10:10", "tttccccccckgl", 0, false, 0, 1},\r
-\r
- {"11-30", "date02", "c", "c", 0, true, 1, 0},\r
- {"11-30", "date020", "11:11", "qyq4100000fg21al", 0, false, 0, 0} \r
- };\r
-\r
- uint8_t ScheduleModel::ScheduleDataInfoSet(void)\r
+ bool ScheduleModel::ScheduleDataIsEmpty(void)\r
{\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ScheduleModel::ScheduleDataInfoSet 00");\r
- uint8_t count = 0;\r
-\r
- for(uint8_t i = 0; i < 10; i++)\r
- {\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "[%d]:ScheduleModel::ScheduleDataInfoSet", __LINE__);\r
- ScheduleDataInfo_[i].DateStr.assign(t_data[i].DateStr);\r
- ScheduleDataInfo_[i].TopicStr.assign(t_data[i].TopicStr);\r
- ScheduleDataInfo_[i].TimeStr.assign(t_data[i].TimeStr);\r
- ScheduleDataInfo_[i].DataStr.assign(t_data[i].DataStr);\r
-\r
- ScheduleDataInfo_[i].index = t_data[i].index;\r
- ScheduleDataInfo_[i].is_date_item = t_data[i].is_date_item;\r
- ScheduleDataInfo_[i].child_num = t_data[i].child_num;\r
- ScheduleDataInfo_[i].child_index = t_data[i].child_index;\r
- }\r
-\r
- WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ScheduleModel::ScheduleDataInfoSet 10");\r
+ if(0 == ItemCount_)\r
+ return true;\r
+ \r
+ return false;\r
+ }\r
\r
- return count;\r
+ uint8_t ScheduleModel::ScheduleDataItemCountGet(void)\r
+ {\r
+ return ItemCount_;\r
}\r
\r
- bool ScheduleModel::ScheduleDataIsEmpty(void)\r
+ void ScheduleModel::ScheduleDataItemCountSet(uint8_t count)\r
{\r
- if(ScheduleDataInfo_[0].DateStr.length())\r
- return false;\r
- \r
- return true;\r
+ ItemCount_ = count;\r
}\r
\r
ScheduleListItemInfo * ScheduleModel::ScheduleDataInfoGet(void)\r
\r
void ScheduleModel::ScheduleSetByApp(ScheduleRevData * data, uint8_t index, bool is_finish)\r
{\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ScheduleModel::ScheduleSetByApp,%d,%d", index, is_finish);\r
+\r
ScheduleRevData_[index].date.assign(data->date);\r
ScheduleRevData_[index].topic.assign(data->topic);\r
ScheduleRevData_[index].time.assign(data->time);\r
\r
void ScheduleModel::ScheduleDataToInfo(void)\r
{\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ScheduleModel::ScheduleDataToInfo");\r
uint8_t i = 0;\r
uint8_t j = 0;\r
uint8_t count = 0;\r
\r
memset(ScheduleDataInfo_, 0x0, sizeof(ScheduleListItemInfo) * SCHEDULE_DATA_COUNT_MAX*2);\r
\r
- count = 0;\r
+ count = 1;\r
\r
- for(i = 0, j = 0; i < count, j < SCHEDULE_DATA_COUNT_MAX * 2; i++)\r
+ for(i = 0, j = 0; i < count; i++)\r
{\r
if(0 == i)\r
{\r
ScheduleDataInfo_[j].child_index = 0;\r
}\r
}\r
+ \r
+ if((SCHEDULE_DATA_COUNT_MAX * 2) <= j)\r
+ {\r
+ break;\r
+ }\r
}\r
+\r
+ ScheduleDataItemCountSet(j + 1);\r
+ WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "ScheduleModel::ScheduleDataToInfo,%d,%s", j, ScheduleDataInfo_[0].DateStr.c_str());\r
}\r
\r
+\r
+ void C_ScheduleSetByApp(ScheduleRevData * data, uint8_t index, bool is_finish)\r
+ {\r
+ ScheduleModel::GetInstance().ScheduleSetByApp(data, index, is_finish);\r
+ }\r
+\r
+ int C_ScheduleDataReadFromFile()\r
+ {\r
+ return 0;\r
+ }\r
+\r
+ int C_ScheduleDataWriteToFile()\r
+ {\r
+ return 0;\r
+ }\r
}\r
{\r
WEARABLE_LOGE(WEARABLE_LOG_MODULE_APP, "SchedulePresenter::OnStart");\r
Presenter<ScheduleView, ScheduleModel>::OnStart();\r
-\r
- ScheduleModel_->ScheduleDataInfoSet();\r
}\r
\r
// 页面已经展示后的调用逻辑\r
}\r
\r
ScheduleListItemInfo * ItemInfo = ScheduleModel_->ScheduleDataInfoGet();\r
- for (uint8_t i = 0; i < 10; i++)\r
+ for (uint8_t i = 0; i < ScheduleModel_->ScheduleDataItemCountGet(); i++)\r
{\r
view_->AddItemToList(ItemInfo[i]);\r
}\r
${ROOT_DIR}/application/wearable/fd230app/nativeui/aivoice/include
${ROOT_DIR}/application/wearable/fd230app/nativeui/alarm/include
${ROOT_DIR}/application/wearable/fd230app/nativeui/musicplayer/include
+${ROOT_DIR}/application/wearable/fd230app/nativeui/schedule/include
#/home/hcj/FD230/code/sdk/application/wearable/fd230app/nativeui/alarm/include/AlarmClockModel.h
#/home/hcj/FD230/code/sdk/middleware/services/media/foundation/player/interfaces/kits/player.h
#include <dirent.h>
#include <ppg_service.h>
#include "power_display_service.h"
+#include "ScheduleData.h"
#define before_file_day 30
bool Ble_Set_ScheduleInfo(uint8_t id,uint32_t timetamp_begin,uint32_t timetamp_end,char *title,char *data)
{
- OHOS::ScheduleInfo info;
- info.id=id;
- info.timetamp_begin=timetamp_begin;
- info.timetamp_end=timetamp_end;
- info.titel.clear();
- info.content.clear();
- info.titel.append(title,strlen(title)+1);
- info.content.append(data,strlen(data)+1);
- printf("///////////////////日程数据////////////////////\r\n");
- printf("id:%d\r\n",info.id);
- printf("timetamp_begin:%d\r\n",info.timetamp_begin);
- printf("timetamp_end:%d\r\n",info.timetamp_end);
- printf("titel:%s\r\n",info.titel.c_str());
- printf("content:%s\r\n",info.content.c_str());
+ OHOS::ScheduleRevData info_;
+
+ info_.topic.clear();
+ info_.content.clear();
+ info_.topic.append(title,strlen(title)+1);
+ info_.content.append(data,strlen(data)+1);
+ time_t currtime=timetamp_begin;
+ struct tm *timeinfo;
+ timeinfo = localtime(&currtime);
+ int y=timeinfo->tm_year+ 1900;
+ int m=timeinfo->tm_mon+1;
+ int d=timeinfo->tm_mday;
+ int h=timeinfo->tm_hour;
+ int min=timeinfo->tm_min;
+ char day_buf[24]={0};
+ sprintf_s(day_buf,24,"%d/%d",m,d);
+ info_.date.clear();
+ info_.date.append(day_buf,strlen(day_buf)+1);
+
+ currtime=timetamp_end;
+ timeinfo = localtime(&currtime);
+
+ int h_=timeinfo->tm_hour;
+ int min_=timeinfo->tm_min;
+ char time_buf[24]={0};
+ sprintf_s(time_buf,24,"%02d:%02d-%02d:%02d",h,min,h_,min_);
+ info_.time.clear();
+ info_.time.append(time_buf,strlen(time_buf)+1);
+
+ printf("///////////////////日程数据////////////////////\r\n");
+ printf("date:%s\r\n",info_.date.c_str());
+ printf("time:%s\r\n",info_.time.c_str());
+ printf("titel:%s\r\n",info_.topic.c_str());
+ printf("content:%s\r\n",info_.content.c_str());
printf("//////////////////////////////////////////////\r\n");
- return true;
+ //printf("delete_before_file now day%d %d %d\r\n ",y,m,d);
-
+ OHOS::C_ScheduleSetByApp(&info_, id - 1, false);
+
+ return true;
}