SetSchedule.js 16 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311
  1. "use strict";
  2. (wx["webpackJsonp"] = wx["webpackJsonp"] || []).push([["pages/SetSchedule"],{
  3. /***/ "./node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./src/pages/SetSchedule.tsx":
  4. /*!********************************************************************************************************!*\
  5. !*** ./node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./src/pages/SetSchedule.tsx ***!
  6. \********************************************************************************************************/
  7. /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
  8. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  9. /* harmony export */ "default": function() { return /* binding */ Page; }
  10. /* harmony export */ });
  11. /* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
  12. /* harmony import */ var _features_trackTimeDuration_components_SetSchedule__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @features/trackTimeDuration/components/SetSchedule */ "./src/features/trackTimeDuration/components/SetSchedule.tsx");
  13. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react/jsx-runtime */ "webpack/container/remote/react/jsx-runtime");
  14. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__);
  15. function Page() {
  16. // const router = useRouter();
  17. // useEffect(() => {
  18. // console.log(router.params);
  19. // }, [router.params]);
  20. return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_2__.View, {
  21. className: "container",
  22. children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_features_trackTimeDuration_components_SetSchedule__WEBPACK_IMPORTED_MODULE_0__["default"], {})
  23. });
  24. }
  25. /***/ }),
  26. /***/ "./src/components/TimePickers.tsx":
  27. /*!****************************************!*\
  28. !*** ./src/components/TimePickers.tsx ***!
  29. \****************************************/
  30. /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
  31. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  32. /* harmony export */ "default": function() { return /* binding */ Component; }
  33. /* harmony export */ });
  34. /* harmony import */ var _Users_Work_hola_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js */ "./node_modules/@babel/runtime/helpers/esm/slicedToArray.js");
  35. /* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
  36. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "webpack/container/remote/react");
  37. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
  38. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react/jsx-runtime */ "webpack/container/remote/react/jsx-runtime");
  39. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__);
  40. function Component(props) {
  41. var _props$time$split$map = props.time.split(':').map(function (x) {
  42. return parseInt(x);
  43. }),
  44. _props$time$split$map2 = (0,_Users_Work_hola_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_2__["default"])(_props$time$split$map, 2),
  45. hour = _props$time$split$map2[0],
  46. minute = _props$time$split$map2[1];
  47. var m = Math.round(minute / 5) * 5;
  48. var v = [hour, m / 5];
  49. var _useState = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(v),
  50. _useState2 = (0,_Users_Work_hola_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_2__["default"])(_useState, 2),
  51. dt = _useState2[0],
  52. setDt = _useState2[1];
  53. (0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(function () {
  54. var _props$time$split$map3 = props.time.split(':').map(function (x) {
  55. return parseInt(x);
  56. }),
  57. _props$time$split$map4 = (0,_Users_Work_hola_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_2__["default"])(_props$time$split$map3, 2),
  58. hour = _props$time$split$map4[0],
  59. minute = _props$time$split$map4[1];
  60. var m = Math.round(minute / 5) * 5;
  61. var v = [hour, m / 5];
  62. setDt(v);
  63. }, [props.time]);
  64. var hours = [];
  65. for (var i = 0; i <= 23; i++) {
  66. hours.push(i);
  67. }
  68. var minutes = [];
  69. for (var _i = 0; _i <= 11; _i++) {
  70. minutes.push(_i * 5);
  71. }
  72. function onPickerChange(e) {
  73. var val = e.detail.value;
  74. setDt(val);
  75. var strHour = hours[val[0]] < 10 ? '0' + hours[val[0]] : hours[val[0]];
  76. var strMinute = minutes[val[1]] < 10 ? '0' + minutes[val[1]] : minutes[val[1]];
  77. console.log(strHour + ':' + strMinute);
  78. props.change(strHour + ':' + strMinute);
  79. }
  80. if (props.isPickerView) {
  81. return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.PickerView, {
  82. value: dt,
  83. onChange: onPickerChange,
  84. indicatorStyle: "height: 50px;",
  85. style: "width: 100%; height: 100px;",
  86. children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.PickerViewColumn, {
  87. children: hours.map(function (item) {
  88. return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.View, {
  89. style: {
  90. display: 'flex',
  91. alignItems: 'center',
  92. justifyContent: 'center'
  93. },
  94. children: item
  95. });
  96. })
  97. }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.PickerViewColumn, {
  98. children: minutes.map(function (item) {
  99. return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.View, {
  100. style: {
  101. display: 'flex',
  102. alignItems: 'center',
  103. justifyContent: 'center'
  104. },
  105. children: item
  106. });
  107. })
  108. })]
  109. });
  110. }
  111. return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.Picker, {
  112. mode: "multiSelector",
  113. range: [hours, minutes],
  114. onChange: onPickerChange,
  115. value: dt,
  116. children: /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_1__.jsx)(_tarojs_components__WEBPACK_IMPORTED_MODULE_3__.Text, {
  117. children: props.content
  118. })
  119. });
  120. }
  121. /***/ }),
  122. /***/ "./src/features/trackTimeDuration/components/SetSchedule.tsx":
  123. /*!*******************************************************************!*\
  124. !*** ./src/features/trackTimeDuration/components/SetSchedule.tsx ***!
  125. \*******************************************************************/
  126. /***/ (function(__unused_webpack_module, __webpack_exports__, __webpack_require__) {
  127. /* harmony export */ __webpack_require__.d(__webpack_exports__, {
  128. /* harmony export */ "default": function() { return /* binding */ Component; }
  129. /* harmony export */ });
  130. /* harmony import */ var _Users_Work_hola_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! ./node_modules/@babel/runtime/helpers/esm/slicedToArray.js */ "./node_modules/@babel/runtime/helpers/esm/slicedToArray.js");
  131. /* harmony import */ var _components_Buttons__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @/components/Buttons */ "./src/components/Buttons.tsx");
  132. /* harmony import */ var _services_trackTimeDuration__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! @/services/trackTimeDuration */ "./src/services/trackTimeDuration.tsx");
  133. /* harmony import */ var _store_scenario__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! @/store/scenario */ "./src/store/scenario.tsx");
  134. /* harmony import */ var _tarojs_components__WEBPACK_IMPORTED_MODULE_9__ = __webpack_require__(/*! @tarojs/components */ "./node_modules/@tarojs/plugin-platform-weapp/dist/components-react.js");
  135. /* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! @tarojs/taro */ "webpack/container/remote/@tarojs/taro");
  136. /* harmony import */ var _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default = /*#__PURE__*/__webpack_require__.n(_tarojs_taro__WEBPACK_IMPORTED_MODULE_3__);
  137. /* harmony import */ var _components_TimePickers__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! @/components/TimePickers */ "./src/components/TimePickers.tsx");
  138. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! react */ "webpack/container/remote/react");
  139. /* harmony import */ var react__WEBPACK_IMPORTED_MODULE_5___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_5__);
  140. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! react-redux */ "webpack/container/remote/react-redux");
  141. /* harmony import */ var react_redux__WEBPACK_IMPORTED_MODULE_6___default = /*#__PURE__*/__webpack_require__.n(react_redux__WEBPACK_IMPORTED_MODULE_6__);
  142. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! react/jsx-runtime */ "webpack/container/remote/react/jsx-runtime");
  143. /* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__);
  144. // import { AtList, AtListItem } from 'taro-ui'
  145. function Component() {
  146. var dispatch = (0,react_redux__WEBPACK_IMPORTED_MODULE_6__.useDispatch)();
  147. var scenario = (0,react_redux__WEBPACK_IMPORTED_MODULE_6__.useSelector)(function (state) {
  148. return state.scenario;
  149. });
  150. var scheduleObj;
  151. if (scenario.name == 'FAST') {
  152. scheduleObj = scenario.schedule.fast;
  153. } else if (scenario.name == 'SLEEP') {
  154. scheduleObj = scenario.schedule.sleep;
  155. } else {
  156. if (scenario.step == 'fast') {
  157. scheduleObj = scenario.schedule.fast;
  158. } else {
  159. scheduleObj = scenario.schedule.sleep;
  160. }
  161. }
  162. var _useState = (0,react__WEBPACK_IMPORTED_MODULE_5__.useState)(scheduleObj.start_time),
  163. _useState2 = (0,_Users_Work_hola_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_8__["default"])(_useState, 2),
  164. startTime = _useState2[0],
  165. setStartTime = _useState2[1];
  166. var _useState3 = (0,react__WEBPACK_IMPORTED_MODULE_5__.useState)(scheduleObj.end_time),
  167. _useState4 = (0,_Users_Work_hola_node_modules_babel_runtime_helpers_esm_slicedToArray_js__WEBPACK_IMPORTED_MODULE_8__["default"])(_useState3, 2),
  168. endTime = _useState4[0],
  169. setEndTime = _useState4[1];
  170. function start() {
  171. if (scenario.name == 'FAST' || scenario.name == 'SLEEP') {
  172. (0,_services_trackTimeDuration__WEBPACK_IMPORTED_MODULE_1__.setPlan)({
  173. scenario: scenario.name,
  174. schedule: scenario.name == 'FAST' ? {
  175. fast: {
  176. start_time: startTime,
  177. end_time: endTime
  178. }
  179. } : {
  180. sleep: {
  181. start_time: startTime,
  182. end_time: endTime
  183. }
  184. }
  185. }).then(function (res) {
  186. _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default().navigateBack({
  187. delta: 3
  188. });
  189. // console.log('success')
  190. });
  191. } else {
  192. if (scenario.step == 'fast') {
  193. var obj = JSON.parse(JSON.stringify(scenario));
  194. obj.schedule.fast = {
  195. start_time: startTime,
  196. end_time: endTime
  197. };
  198. dispatch((0,_store_scenario__WEBPACK_IMPORTED_MODULE_2__.setStep)('sleep'));
  199. dispatch((0,_store_scenario__WEBPACK_IMPORTED_MODULE_2__.setScenario)(obj));
  200. _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default().navigateTo({
  201. url: '/pages/SetSchedule'
  202. });
  203. } else {
  204. (0,_services_trackTimeDuration__WEBPACK_IMPORTED_MODULE_1__.setPlan)({
  205. scenario: scenario.name,
  206. schedule: {
  207. fast: {
  208. start_time: scenario.schedule.fast.start_time,
  209. end_time: scenario.schedule.fast.end_time
  210. },
  211. sleep: {
  212. start_time: startTime,
  213. end_time: endTime
  214. }
  215. }
  216. }).then(function (res) {
  217. dispatch((0,_store_scenario__WEBPACK_IMPORTED_MODULE_2__.setStep)('fast'));
  218. _tarojs_taro__WEBPACK_IMPORTED_MODULE_3___default().navigateBack({
  219. delta: 4
  220. });
  221. });
  222. }
  223. }
  224. }
  225. function onStartTimeChange(e) {
  226. setStartTime(e);
  227. }
  228. function onEndTimeChange(e) {
  229. setEndTime(e);
  230. }
  231. return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_9__.View, {
  232. children: [/*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsxs)(_tarojs_components__WEBPACK_IMPORTED_MODULE_9__.Text, {
  233. children: ["\u573A\u666F\u540D\u79F0", scenario.name]
  234. }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)(_components_TimePickers__WEBPACK_IMPORTED_MODULE_4__["default"], {
  235. time: startTime,
  236. content: '开始时间' + startTime,
  237. change: onStartTimeChange
  238. }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)(_components_TimePickers__WEBPACK_IMPORTED_MODULE_4__["default"], {
  239. time: endTime,
  240. content: '结束时间' + endTime,
  241. change: onEndTimeChange
  242. }), /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_7__.jsx)(_components_Buttons__WEBPACK_IMPORTED_MODULE_0__["default"], {
  243. title: "Start",
  244. onClick: function onClick() {
  245. return start();
  246. }
  247. })]
  248. });
  249. }
  250. /***/ }),
  251. /***/ "./src/pages/SetSchedule.tsx":
  252. /*!***********************************!*\
  253. !*** ./src/pages/SetSchedule.tsx ***!
  254. \***********************************/
  255. /***/ (function(__unused_webpack_module, __unused_webpack___webpack_exports__, __webpack_require__) {
  256. /* harmony import */ var _tarojs_runtime__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! @tarojs/runtime */ "webpack/container/remote/@tarojs/runtime");
  257. /* harmony import */ var _tarojs_runtime__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(_tarojs_runtime__WEBPACK_IMPORTED_MODULE_0__);
  258. /* harmony import */ var _node_modules_babel_loader_lib_index_js_ruleSet_1_rules_5_use_0_SetSchedule_tsx__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! ../../node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./SetSchedule.tsx */ "./node_modules/babel-loader/lib/index.js??ruleSet[1].rules[5].use[0]!./src/pages/SetSchedule.tsx");
  259. var config = {};
  260. var inst = Page((0,_tarojs_runtime__WEBPACK_IMPORTED_MODULE_0__.createPageConfig)(_node_modules_babel_loader_lib_index_js_ruleSet_1_rules_5_use_0_SetSchedule_tsx__WEBPACK_IMPORTED_MODULE_1__["default"], 'pages/SetSchedule', {root:{cn:[]}}, config || {}))
  261. /* unused harmony default export */ var __WEBPACK_DEFAULT_EXPORT__ = (_node_modules_babel_loader_lib_index_js_ruleSet_1_rules_5_use_0_SetSchedule_tsx__WEBPACK_IMPORTED_MODULE_1__["default"]);
  262. /***/ })
  263. },
  264. /******/ function(__webpack_require__) { // webpackRuntimeModules
  265. /******/ var __webpack_exec__ = function(moduleId) { return __webpack_require__(__webpack_require__.s = moduleId); }
  266. /******/ __webpack_require__.O(0, ["taro","vendors","common"], function() { return __webpack_exec__("./src/pages/SetSchedule.tsx"); });
  267. /******/ var __webpack_exports__ = __webpack_require__.O();
  268. /******/ }
  269. ]);
  270. //# sourceMappingURL=SetSchedule.js.map