if (typeof Promise !== "undefined" && !Promise.prototype.finally) { Promise.prototype.finally = function(callback) { const promise = this.constructor; return this.then( (value) => promise.resolve(callback()).then(() => value), (reason) => promise.resolve(callback()).then(() => { throw reason; }) ); }; } ; if (typeof uni !== "undefined" && uni && uni.requireGlobal) { const global = uni.requireGlobal(); ArrayBuffer = global.ArrayBuffer; Int8Array = global.Int8Array; Uint8Array = global.Uint8Array; Uint8ClampedArray = global.Uint8ClampedArray; Int16Array = global.Int16Array; Uint16Array = global.Uint16Array; Int32Array = global.Int32Array; Uint32Array = global.Uint32Array; Float32Array = global.Float32Array; Float64Array = global.Float64Array; BigInt64Array = global.BigInt64Array; BigUint64Array = global.BigUint64Array; } ; if (uni.restoreGlobal) { uni.restoreGlobal(Vue, weex, plus, setTimeout, clearTimeout, setInterval, clearInterval); } (function(vue) { "use strict"; const ON_SHOW = "onShow"; const ON_HIDE = "onHide"; const ON_LOAD = "onLoad"; function formatAppLog(type, filename, ...args) { if (uni.__log__) { uni.__log__(type, filename, ...args); } else { console[type].apply(console, [...args, filename]); } } const createHook = (lifecycle) => (hook, target = vue.getCurrentInstance()) => { !vue.isInSSRComponentSetup && vue.injectHook(lifecycle, hook, target); }; const onShow = /* @__PURE__ */ createHook(ON_SHOW); const onHide = /* @__PURE__ */ createHook(ON_HIDE); const onLoad = /* @__PURE__ */ createHook(ON_LOAD); const _export_sfc = (sfc, props) => { const target = sfc.__vccOpts || sfc; for (const [key, val] of props) { target[key] = val; } return target; }; const _sfc_main$6 = { __name: "Drawer", setup(__props, { expose: __expose }) { const isVisible = vue.ref(false); const openDrawer = () => { isVisible.value = true; }; const closeDrawer = () => { isVisible.value = false; }; __expose({ openDrawer, closeDrawer }); const __returned__ = { isVisible, openDrawer, closeDrawer, ref: vue.ref }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }; function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", null, [ vue.createCommentVNode(" 遮罩层 "), $setup.isVisible ? (vue.openBlock(), vue.createElementBlock("view", { key: 0, class: "overlay", onClick: $setup.closeDrawer })) : vue.createCommentVNode("v-if", true), vue.createCommentVNode(" 抽屉 "), vue.createElementVNode( "view", { class: vue.normalizeClass(["drawer", { "drawer-open": $setup.isVisible }]) }, [ vue.createElementVNode("view", { class: "drawer-content" }, [ vue.createCommentVNode(" 抽屉内容 "), vue.renderSlot(_ctx.$slots, "default", {}, void 0, true) ]) ], 2 /* CLASS */ ) ]); } const Drawer = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$5], ["__scopeId", "data-v-40fcca19"], ["__file", "D:/hldy_app/component/public/Drawer.vue"]]); const _sfc_main$5 = /* @__PURE__ */ vue.defineComponent({ __name: "index", props: { isshow: { type: Boolean, required: true }, darkFans: { type: Boolean, required: true } }, emits: ["darkchange"], setup(__props, { expose: __expose, emit: __emit }) { __expose(); const drawer = vue.ref(null); const circles = [ { label: "指令" }, { label: "转单" }, { label: "完成" } ]; const lineWidth = vue.computed(() => { switch (circlesNumber.value) { case 0: return "0"; case 1: return "calc(100% - 600rpx)"; case 2: return "calc(100% - 120rpx)"; default: return "100%"; } }); const circlesNumber = vue.ref(0); const props = __props; const isPopupVisible = vue.ref(false); const isPopupVisiblefiropen = vue.ref(false); const isPopupVisiblesec = vue.ref(false); const isPopupVisiblefiropensec = vue.ref(false); const isPopupVisiblethi = vue.ref(false); const isPopupVisiblefiropenthi = vue.ref(false); const currentTime = vue.ref(""); const fullDate = vue.ref(""); const weekDay = vue.ref(""); const undericonList = vue.ref([ { url: "/static/index/undericons/alarm.png", targetUrl: "/static/index/undericons/alarmdark.png", name: "服务考核" }, { url: "/static/index/undericons/linshitime.png", targetUrl: "/static/index/undericons/linshitimedark.png", name: "护理流程" }, { url: "/static/index/darkicon/zhaomingdark.png", targetUrl: "/static/index/roomicons/zhaomingtar.png", name: "电子医嘱" }, { url: "/static/index/darkicon/kontiaodark.png", targetUrl: "/static/index/roomicons/kongtiaotar.png", name: "进销存" }, { url: "/static/index/darkicon/nuanfengdark.png", targetUrl: "/static/index/roomicons/nuanfengtar.png", name: "实时监控" }, { url: "/static/index/darkicon/dianqidark.png", targetUrl: "/static/index/roomicons/dianqitar.png", name: "我的指令" } ]); const huliList = vue.ref([ { url: "/static/index/hulilist/zhuandan.png", name: "转单执行" }, { url: "/static/index/hulilist/xiezhu.png", name: "协助执行" }, { url: "/static/index/hulilist/zhongdian.png", name: "重点追踪" } ]); const huliListDark = vue.ref([ { url: "/static/index/darkicon/zhuandandark.png", name: "转单执行" }, { url: "/static/index/darkicon/xiezhudark.png", name: "协助执行" }, { url: "/static/index/darkicon/zhongdiandark.png", name: "重点追踪" } ]); const mediumList = vue.ref([ { url: "/static/index/medium/yaopin.png", name: "药品信息", number: 0 }, { url: "/static/index/medium/qingling.png", name: "请领指令", number: 60 }, { url: "/static/index/medium/peiyao.png", name: "配药指令", number: 100 }, { url: "/static/index/medium/xinxi.png", name: "信息反馈", number: 0 }, { url: "/static/index/medium/xinxi.png", name: "信息反馈2", number: 0 } ]); const mediumListdark = vue.ref([ { url: "/static/index/darkicon/yaopindark.png", name: "药品信息", number: 55 }, { url: "/static/index/darkicon/qinglingdark.png", name: "请领指令", number: 10 }, { url: "/static/index/darkicon/peiyaodark.png", name: "配药指令", number: 100 }, { url: "/static/index/darkicon/xinxidark.png", name: "信息反馈", number: 15 }, { url: "/static/index/darkicon/xinxidark.png", name: "信息反馈2", number: 20 } ]); const roomBtttonList = vue.ref([ { url: "/static/index/roomicons/zhaoming.png", targetUrl: "/static/index/roomicons/zhaomingtar.png", name: "照明" }, { url: "/static/index/roomicons/kongtiao.png", targetUrl: "/static/index/roomicons/kongtiaotar.png", name: "空调" }, { url: "/static/index/roomicons/nuanfeng.png", targetUrl: "/static/index/roomicons/nuanfengtar.png", name: "暖风" }, { url: "/static/index/roomicons/dianqi.png", targetUrl: "/static/index/roomicons/dianqitar.png", name: "电器" } ]); const roomBtttonListdark = vue.ref([ { url: "/static/index/darkicon/zhaomingdark.png", targetUrl: "/static/index/roomicons/zhaomingtar.png", name: "照明" }, { url: "/static/index/darkicon/kontiaodark.png", targetUrl: "/static/index/roomicons/kongtiaotar.png", name: "空调" }, { url: "/static/index/darkicon/nuanfengdark.png", targetUrl: "/static/index/roomicons/nuanfengtar.png", name: "暖风" }, { url: "/static/index/darkicon/dianqidark.png", targetUrl: "/static/index/roomicons/dianqitar.png", name: "电器" } ]); const menuIndex = vue.ref(0); const undermenuIndex = vue.ref(0); const underFans = vue.ref(false); const roomTar = vue.ref([]); const firstcurrentIndex = vue.ref(0); const firstcurrentIndexup = vue.ref(0); const secondcurrentIndexup = vue.ref(0); const secondcurrentIndex = vue.ref(0); const thirdcurrentIndex = vue.ref(0); const emit = __emit; const darkFanschange = () => { emit("darkchange", !props.darkFans); }; const changeMenu = (index) => { menuIndex.value = index; }; const changeMenuUnder = (index) => { undermenuIndex.value = index; }; const saveItem = (index) => { if (roomTar.value.includes(index)) { let array = []; roomTar.value.forEach((res) => { if (res !== index) { array.push(res); } }); roomTar.value = array; } else { roomTar.value.push(index); } }; const updateTime = () => { const now = /* @__PURE__ */ new Date(); const hours = now.getHours().toString().padStart(2, "0"); const minutes = now.getMinutes().toString().padStart(2, "0"); currentTime.value = `${hours}:${minutes}`; const year = now.getFullYear(); const month = (now.getMonth() + 1).toString().padStart(2, "0"); const day = now.getDate().toString().padStart(2, "0"); fullDate.value = `${year}年${month}月${day}日`; const weekDays = ["星期日", "星期一", "星期二", "星期三", "星期四", "星期五", "星期六"]; const week = weekDays[now.getDay()]; weekDay.value = week; }; const onSwiperChange = (event) => { firstcurrentIndexup.value = event.detail.current; }; const onSwiperChangesec = (event) => { secondcurrentIndexup.value = event.detail.current; }; const jumpTonew = (path) => { const pages = getCurrentPages(); if (pages.length === 0) return; const currentPage = pages[pages.length - 1]; const currentPath = "/" + currentPage.route; if (currentPath !== path && path) { uni.redirectTo({ url: path }); } }; const showPopup = () => { isPopupVisible.value = !isPopupVisible.value; isPopupVisiblefiropen.value = true; isPopupVisiblesec.value = false; isPopupVisiblethi.value = false; setTimeout(() => { isPopupVisiblefiropen.value = false; }, 500); }; const showPopupsec = () => { isPopupVisiblesec.value = !isPopupVisiblesec.value; isPopupVisible.value = false; isPopupVisiblethi.value = false; isPopupVisiblefiropensec.value = true; setTimeout(() => { isPopupVisiblefiropensec.value = false; }, 500); }; const showPopupthi = () => { isPopupVisiblethi.value = !isPopupVisiblethi.value; isPopupVisiblefiropenthi.value = true; isPopupVisible.value = false; isPopupVisiblesec.value = false; setTimeout(() => { isPopupVisiblefiropenthi.value = false; }, 500); }; let timerId = null; const openhuliList = (index) => { drawer.value.openDrawer(); }; vue.onMounted(() => { timerId = updateTime(); setInterval(updateTime, 1e3); }); vue.onBeforeUnmount(() => { clearInterval(timerId); }); const __returned__ = { drawer, circles, lineWidth, circlesNumber, props, isPopupVisible, isPopupVisiblefiropen, isPopupVisiblesec, isPopupVisiblefiropensec, isPopupVisiblethi, isPopupVisiblefiropenthi, currentTime, fullDate, weekDay, undericonList, huliList, huliListDark, mediumList, mediumListdark, roomBtttonList, roomBtttonListdark, menuIndex, undermenuIndex, underFans, roomTar, firstcurrentIndex, firstcurrentIndexup, secondcurrentIndexup, secondcurrentIndex, thirdcurrentIndex, emit, darkFanschange, changeMenu, changeMenuUnder, saveItem, updateTime, onSwiperChange, onSwiperChangesec, jumpTonew, showPopup, showPopupsec, showPopupthi, get timerId() { return timerId; }, set timerId(v) { timerId = v; }, openhuliList, Drawer }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); const _imports_0$2 = "/static/index/customer.png"; const _imports_1$1 = "/static/index/undericons/upguang.png"; function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock( "view", { class: "right-container", style: vue.normalizeStyle($props.isshow ? { opacity: `1` } : { opacity: `0` }) }, [ vue.createElementVNode("view", { class: "right-container-title-nav" }, [ vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-title-no-dark` : `right-container-title-no`) }, " ID:12345678 ", 2 /* CLASS */ ), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-title-no-dark` : `right-container-title-no`) }, " 名称:未命名01 ", 2 /* CLASS */ ), vue.createElementVNode("view", { class: "right-icons" }, [ vue.createElementVNode("image", { class: "right-icons-img", src: `/static/index/undericons/man.png` }, null, 8, ["src"]), vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `right-icons-font-dark` : `right-icons-font`) }, "王金福", 2 /* CLASS */ ), vue.createElementVNode("image", { class: "right-icons-img-icon", src: $props.darkFans ? `/static/index/undericons/face.png` : `/static/index/undericons/facelight.png` }, null, 8, ["src"]), vue.createElementVNode("image", { class: "right-icons-img-icon", src: $props.darkFans ? `/static/index/undericons/hand.png` : `/static/index/undericons/handlight.png` }, null, 8, ["src"]), vue.createElementVNode("image", { class: "right-icons-img-icon", src: $props.darkFans ? `/static/index/undericons/out.png` : `/static/index/undericons/outlight.png` }, null, 8, ["src"]) ]), vue.withDirectives(vue.createElementVNode( "view", { class: "right-container-title-class-anhei-button", onClick: _cache[0] || (_cache[0] = ($event) => $setup.darkFanschange()) }, [ vue.createElementVNode("text", { class: "right-container-title-class-anhei" }, " 切换到暗黑模式 ") ], 512 /* NEED_PATCH */ ), [ [vue.vShow, !$props.darkFans] ]), vue.withDirectives(vue.createElementVNode( "view", { class: "right-container-title-class-anhei-button", style: vue.normalizeStyle($props.darkFans ? { backgroundColor: "#fff" } : {}), onClick: _cache[1] || (_cache[1] = ($event) => $setup.darkFanschange()) }, [ vue.createElementVNode( "text", { class: "right-container-title-class-anhei", style: vue.normalizeStyle($props.darkFans ? { color: "black" } : {}) }, " 取消暗黑模式 ", 4 /* STYLE */ ) ], 4 /* STYLE */ ), [ [vue.vShow, $props.darkFans] ]) ]), vue.createElementVNode("view", { class: "right-container-fir" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass([$setup.isPopupVisible ? `right-container-big` : `right-container-small`, "right-container-fir-left-nav"]), style: vue.normalizeStyle($setup.isPopupVisiblefiropen || $setup.isPopupVisible ? { zIndex: 999 } : { zIndex: 998 }) }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `right-container-fir-left-card-dark` : `right-container-fir-left-card`) }, [ vue.createElementVNode("image", { class: "right-container-fir-left-card-hulilei", src: `/static/index/hulilei.png` }, null, 8, ["src"]), vue.createElementVNode("div", { class: "right-container-fir-left-card-hulilei-font", onClick: $setup.showPopup }, "护理类"), $props.darkFans ? (vue.openBlock(), vue.createElementBlock("image", { key: 0, class: "card-upfaguang", src: `/static/index/cardbgc/uplight.png` }, null, 8, ["src"])) : vue.createCommentVNode("v-if", true), vue.createElementVNode("view", { class: "right-container-fir-left-carousel" }, [ vue.createElementVNode("view", { class: "carousel" }, [ vue.createElementVNode("view", { class: "dots" }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 2, 3], (item, index) => { return vue.createElementVNode( "span", { key: index, class: vue.normalizeClass($props.darkFans ? `dot-dark` : `dot`), style: vue.normalizeStyle(index === $setup.firstcurrentIndexup ? { backgroundColor: `#01A0FE` } : {}) }, null, 6 /* CLASS, STYLE */ ); }), 64 /* STABLE_FRAGMENT */ )) ]) ]) ]), vue.createElementVNode("view", { class: "right-container-fir-left-card-main" }, [ vue.createElementVNode("swiper", { current: $setup.firstcurrentIndexup, class: "swiper savehundred", circular: "", "indicator-dots": false, vertical: true, interval: 4e3, duration: 500, onChange: $setup.onSwiperChange }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 2, 3], (item, index) => { return vue.createElementVNode("swiper-item", { class: "swiper-item-flex", key: index }, [ vue.createElementVNode("view", { class: "right-container-fir-left-card-flex" }, [ vue.createElementVNode("view", { class: "uni-margin-wrap-fir" }, [ vue.createElementVNode("swiper", { current: $setup.firstcurrentIndex, class: "swiper", circular: "", "indicator-dots": false, interval: 4e3, duration: 500 }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 2, 3], (item2, index2) => { return vue.createElementVNode("swiper-item", { class: "swiper-item-flex", key: index2 }, [ vue.createElementVNode("view", { class: "right-container-fir-left-card-card" }, [ vue.createElementVNode("view", { class: "right-container-fir-left-card-zhixing" }, [ vue.createElementVNode("div", { class: "right-container-fir-left-card-zhixing-font" }, "待执行 ") ]), vue.createElementVNode("image", { class: "right-container-fir-left-card-img", src: `/static/index/teeth.png`, onClick: $setup.showPopup }, null, 8, ["src"]), vue.createElementVNode("view", { class: "right-container-fir-left-card-main-laba-video" }, [ vue.createElementVNode("image", { class: "right-container-fir-left-card-main-laba", src: $props.darkFans ? `/static/index/darkicon/labadark.png` : `/static/index/laba.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-fir-left-card-main-font-dark` : `right-container-fir-left-card-main-font`) }, " 准备洁具(口腔) ", 2 /* CLASS */ ), vue.createElementVNode("image", { class: "right-container-fir-left-card-main-video", src: $props.darkFans ? `/static/index/indexvideo.png` : `/static/index/indexvideo.png` }, null, 8, ["src"]) ]) ]), vue.createElementVNode("view", { class: "split-line" }), vue.createElementVNode("view", { class: "time-tra-fir" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `time-font-dark` : `time-font`) }, " 10:00 - 10:10 ", 2 /* CLASS */ ), vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `time-text-dark` : `time-text`) }, " 为老人提供口腔清洁器具,牙膏、牙刷及水杯,看护完成 ", 2 /* CLASS */ ), vue.createElementVNode("view", { class: "time-people-two" }, [ vue.createElementVNode("view", { class: "time-people-fir" }, [ vue.createElementVNode("image", { class: "time-people-img", src: $props.darkFans ? `/static/index/darkicon/zhixingpeopledark.png` : `/static/index/cardicons/zhixing.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-people-font-dark` : `time-people-font`) }, " 单人执行 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "time-people-sec" }, [ vue.createElementVNode("image", { class: "time-people-img", src: $props.darkFans ? `/static/index/medium/dopeopledark.png` : `/static/index/cardicons/zhifa.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-people-font-dark` : `time-people-font`) }, " -- ", 2 /* CLASS */ ) ]) ]), vue.createElementVNode("view", { class: "time-button-view" }, [ vue.createElementVNode("view", { class: "time-button-start" }, " 开始服务 "), vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `time-button-end-dark` : `time-button-end`) }, " 服务结束 ", 2 /* CLASS */ ) ]) ]) ]); }), 64 /* STABLE_FRAGMENT */ )) ], 8, ["current"]) ]), vue.createElementVNode( "view", { class: "split-line-white-right-left", style: vue.normalizeStyle($props.darkFans ? `background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, #386997 50%, rgba(0, 0, 0, 0) 100%);` : ``) }, [ $props.darkFans ? (vue.openBlock(), vue.createElementBlock("image", { key: 0, class: "split-line-white-img", src: `/static/index/cardbgc/leftlight.png` }, null, 8, ["src"])) : vue.createCommentVNode("v-if", true) ], 4 /* STYLE */ ) ]) ]); }), 64 /* STABLE_FRAGMENT */ )) ], 40, ["current"]), vue.createElementVNode("view", { class: "right-huli-sec" }, [ vue.createElementVNode("image", { class: "right-huli-shang", src: `/static/index/hulilist/shang.png` }, null, 8, ["src"]), !$props.darkFans ? (vue.openBlock(), vue.createElementBlock("scroll-view", { key: 0, "show-scrollbar": false, "scroll-y": "true", class: "right-huli-view" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.huliList, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index, class: "right-huli-view-dis", onClick: ($event) => $setup.openhuliList(index) }, [ vue.createElementVNode("image", { class: "right-huli-img", src: item.url }, null, 8, ["src"]), vue.createElementVNode( "text", { class: "right-huli-text" }, vue.toDisplayString(item.name), 1 /* TEXT */ ) ], 8, ["onClick"]); }), 128 /* KEYED_FRAGMENT */ )) ])) : vue.createCommentVNode("v-if", true), vue.createCommentVNode(" 暗黑模式 "), $props.darkFans ? (vue.openBlock(), vue.createElementBlock("scroll-view", { key: 1, "show-scrollbar": false, "scroll-y": "true", class: "right-huli-view" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.huliListDark, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index, class: "right-huli-view-dis" }, [ vue.createElementVNode("image", { class: "right-huli-img", src: item.url }, null, 8, ["src"]), vue.createElementVNode( "text", { class: "right-huli-text-dark" }, vue.toDisplayString(item.name), 1 /* TEXT */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ])) : vue.createCommentVNode("v-if", true), vue.createElementVNode("image", { class: "right-huli-xia", src: `/static/index/hulilist/xia.png` }, null, 8, ["src"]) ]) ]) ], 2 /* CLASS */ ) ], 6 /* CLASS, STYLE */ ), vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `right-container-fir-right-dark` : `right-container-fir-right`) }, [ vue.createElementVNode("view", { class: "right-container-card" }, [ vue.createElementVNode("view", { class: "right-container-card-right" }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 2, 3, 4], (item, index) => { return vue.createElementVNode("view", { class: "", key: index }, [ vue.createElementVNode("image", { class: "right-container-card-right-img", src: _imports_0$2 }) ]); }), 64 /* STABLE_FRAGMENT */ )) ]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-title-dark` : `right-container-title`) }, vue.toDisplayString($setup.currentTime), 3 /* TEXT, CLASS */ ), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-date-dark` : `right-container-date`) }, vue.toDisplayString($setup.fullDate), 3 /* TEXT, CLASS */ ), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-day-dark` : `right-container-day`) }, vue.toDisplayString($setup.weekDay), 3 /* TEXT, CLASS */ ), vue.createElementVNode("view", { class: "right-container-tem" }, [ vue.createElementVNode("image", { class: "right-container-tem-img", src: $props.darkFans ? `/static/index/darkicon/wendudark.png` : `/static/index/roomicons/wendu.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-tem-text-dark` : `right-container-tem-text`) }, "23°C", 2 /* CLASS */ ), vue.createElementVNode("image", { class: "right-container-tem-img", src: $props.darkFans ? `/static/index/roomicons/shidu.png` : `/static/index/darkicon/shidudark.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-tem-text-dark` : `right-container-tem-text`) }, "39%", 2 /* CLASS */ ) ]), vue.createCommentVNode(" 分割线 "), vue.createElementVNode("view", { class: "right-container-fenge" }), !$props.darkFans ? (vue.openBlock(), vue.createElementBlock("view", { key: 0, class: "right-container-button" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.roomBtttonList, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index, class: "right-container-button-any" }, [ vue.withDirectives(vue.createElementVNode("image", { class: "right-container-button-ray", src: `/static/index/cardicons/ray2.png` }, null, 8, ["src"]), [ [vue.vShow, $setup.roomTar.includes(index)] ]), vue.createElementVNode("image", { class: "right-container-button-img", src: $setup.roomTar.includes(index) ? item.targetUrl : item.url, onClick: ($event) => $setup.saveItem(index) }, null, 8, ["src", "onClick"]), vue.createElementVNode( "text", { class: "right-container-button-text", style: vue.normalizeStyle($setup.roomTar.includes(index) ? { color: "#167ED7" } : {}) }, vue.toDisplayString(item.name), 5 /* TEXT, STYLE */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ])) : vue.createCommentVNode("v-if", true), vue.createCommentVNode(" 暗黑模式 "), $props.darkFans ? (vue.openBlock(), vue.createElementBlock("view", { key: 1, class: "right-container-button" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.roomBtttonListdark, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index, class: "right-container-button-any" }, [ vue.withDirectives(vue.createElementVNode("image", { class: "right-container-button-ray", src: `/static/index/cardicons/ray2.png` }, null, 8, ["src"]), [ [vue.vShow, $setup.roomTar.includes(index)] ]), vue.createElementVNode("image", { class: "right-container-button-img", src: $setup.roomTar.includes(index) ? item.targetUrl : item.url, onClick: ($event) => $setup.saveItem(index) }, null, 8, ["src", "onClick"]), vue.createElementVNode( "text", { class: "right-container-button-text", style: vue.normalizeStyle($setup.roomTar.includes(index) ? { color: "#167ED7" } : { color: "#fff" }) }, vue.toDisplayString(item.name), 5 /* TEXT, STYLE */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ])) : vue.createCommentVNode("v-if", true) ]) ], 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "right-container-sec" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($setup.isPopupVisiblesec ? `right-container-left-big` : `right-container-left-small`), style: vue.normalizeStyle($setup.isPopupVisiblefiropensec || $setup.isPopupVisiblesec ? { zIndex: 999 } : { zIndex: 0 }) }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `right-container-left-dark` : `right-container-left`) }, [ vue.createElementVNode("image", { class: "right-container-left-type", src: `/static/index/yiliao/yiliaolei.png` }, null, 8, ["src"]), vue.createElementVNode("div", { class: "right-container-left-font", onClick: $setup.showPopupsec }, "医疗类"), vue.createElementVNode("view", { class: "right-container-fir-left-carousel" }, [ vue.createElementVNode("view", { class: "carousel" }, [ vue.createElementVNode("view", { class: "dots" }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 2, 3], (item, index) => { return vue.createElementVNode( "span", { key: index, class: vue.normalizeClass($props.darkFans ? `dot-dark` : `dot`), style: vue.normalizeStyle(index === $setup.secondcurrentIndexup ? { backgroundColor: `#01A0FE` } : {}) }, null, 6 /* CLASS, STYLE */ ); }), 64 /* STABLE_FRAGMENT */ )) ]) ]) ]), $props.darkFans ? (vue.openBlock(), vue.createElementBlock("image", { key: 0, class: "card-upfaguang-down", src: `/static/index/cardbgc/uplight.png` }, null, 8, ["src"])) : vue.createCommentVNode("v-if", true), vue.createElementVNode("swiper", { current: $setup.secondcurrentIndexup, class: "swiper savehundred", circular: "", "indicator-dots": false, vertical: true, interval: 4e3, duration: 500, onChange: $setup.onSwiperChangesec }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 2, 3], (item, index) => { return vue.createElementVNode("swiper-item", { class: "swiper-item-flex", key: index }, [ vue.createElementVNode("div", { class: "right-container-fir-left-card-flex-sec" }, [ vue.createElementVNode("view", { class: "uni-margin-wrap" }, [ vue.createElementVNode("swiper", { current: $setup.secondcurrentIndex, class: "swiper", circular: "", "indicator-dots": false, autoplay: false, interval: 4e3, duration: 500 }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 2, 3], (item2, index2) => { return vue.createElementVNode("swiper-item", { class: "swiper-item-flex", key: index2 }, [ vue.createElementVNode("div", { class: "right-container-left-font-spec" }, "进行中 "), vue.createElementVNode("view", { class: "time-tra-sec" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `time-font-dark` : `time-font`) }, " 10:00 - 10:10 ", 2 /* CLASS */ ), vue.createElementVNode("view", { class: "time-people-thi" }, [ vue.createElementVNode("image", { class: "time-people-img", src: $props.darkFans ? `/static/index/medium/doctorsaydark.png` : `/static/index/medium/doctorsay.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-people-font-dark` : `time-people-font`) }, " 医嘱类型:药品 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "time-people-thi" }, [ vue.createElementVNode("image", { class: "time-people-img", src: $props.darkFans ? `/static/index/medium/howtododark.png` : `/static/index/medium/howtodo.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-people-font-dark` : `time-people-font`) }, " 处置方式:肌肉注射 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "time-people-thi" }, [ vue.createElementVNode("image", { class: "time-people-img", src: $props.darkFans ? `/static/index/medium/useMed.png` : `/static/index/medium/yongyao.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-people-font-dark` : `time-people-font`) }, " 用药类型:抗生素类 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "time-people-thi" }, [ vue.createElementVNode("image", { class: "time-people-img", src: $props.darkFans ? `/static/index/medium/domanydark.png` : `/static/index/medium/domany.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-people-font-dark` : `time-people-font`) }, " 执行方式:周期一日执行一次 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "time-people-thi" }, [ vue.createElementVNode("image", { class: "time-people-img", src: $props.darkFans ? `/static/index/darkicon/zhixingpeopledark.png` : `/static/index/cardicons/zhixing.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-people-font-dark` : `time-people-font`) }, " 单人执行 ", 2 /* CLASS */ ), vue.createElementVNode("image", { class: "time-people-img", src: $props.darkFans ? `/static/index/medium/dopeopledark.png` : `/static/index/cardicons/zhifa.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-people-font-dark` : `time-people-font`) }, " 赵宇 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "time-button-view" }, [ vue.createElementVNode("view", { class: "time-button-start" }, " 开始服务 "), vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `time-button-end-dark` : `time-button-end`) }, " 服务结束 ", 2 /* CLASS */ ) ]) ]), vue.createElementVNode("view", { class: "right-container-photo" }, [ vue.createElementVNode("image", { class: "right-container-photo-img", src: `/static/index/yiliao/project2.png`, onClick: $setup.showPopupsec }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-photo-text-dark` : `right-container-photo-text`) }, " 脑膜炎(1/2) ", 2 /* CLASS */ ) ]) ]); }), 64 /* STABLE_FRAGMENT */ )) ], 8, ["current"]) ]) ]) ]); }), 64 /* STABLE_FRAGMENT */ )) ], 40, ["current"]), vue.createElementVNode( "view", { class: "split-line-white-sec", style: vue.normalizeStyle($props.darkFans ? `background: linear-gradient(to top, rgba(0, 0, 0, 0) 0%, #386997 50%, rgba(0, 0, 0, 0) 100%);` : ``) }, [ $props.darkFans ? (vue.openBlock(), vue.createElementBlock("image", { key: 0, class: "split-line-white-img", src: `/static/index/cardbgc/leftlight.png` }, null, 8, ["src"])) : vue.createCommentVNode("v-if", true) ], 4 /* STYLE */ ), vue.createElementVNode("view", { class: "right-huli-fir" }, [ vue.createElementVNode("image", { class: "right-huli-shang", src: `/static/index/hulilist/shang.png` }, null, 8, ["src"]), !$props.darkFans ? (vue.openBlock(), vue.createElementBlock("scroll-view", { key: 0, "show-scrollbar": false, "scroll-y": "true", class: "right-huli-view" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.mediumList, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index, class: "right-huli-view-dis" }, [ vue.createElementVNode("image", { class: "right-huli-img", src: item.url }, null, 8, ["src"]), vue.createElementVNode( "text", { class: "right-huli-text" }, vue.toDisplayString(item.name), 1 /* TEXT */ ), vue.withDirectives(vue.createElementVNode( "div", { class: "progress-bar-container" }, [ vue.createElementVNode( "div", { style: vue.normalizeStyle({ width: `${item.number}%` }), class: "progress-bar" }, null, 4 /* STYLE */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, item.number !== 0] ]) ]); }), 128 /* KEYED_FRAGMENT */ )) ])) : vue.createCommentVNode("v-if", true), $props.darkFans ? (vue.openBlock(), vue.createElementBlock("scroll-view", { key: 1, "show-scrollbar": false, "scroll-y": "true", class: "right-huli-view" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.mediumListdark, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index, class: "right-huli-view-dis" }, [ vue.createElementVNode("image", { class: "right-huli-img", src: item.url }, null, 8, ["src"]), vue.createElementVNode( "text", { class: "right-huli-text-dark" }, vue.toDisplayString(item.name), 1 /* TEXT */ ), vue.withDirectives(vue.createElementVNode( "div", { class: "progress-bar-container" }, [ vue.createElementVNode( "div", { style: vue.normalizeStyle({ width: `${item.number}%` }), class: "progress-bar" }, null, 4 /* STYLE */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, item.number !== 0] ]) ]); }), 128 /* KEYED_FRAGMENT */ )) ])) : vue.createCommentVNode("v-if", true), vue.createElementVNode("image", { class: "right-huli-xia", src: `/static/index/hulilist/xia.png` }, null, 8, ["src"]) ]) ], 2 /* CLASS */ ) ], 6 /* CLASS, STYLE */ ), vue.createElementVNode( "view", { style: vue.normalizeStyle($setup.isPopupVisiblefiropenthi || $setup.isPopupVisiblethi ? { zIndex: 999 } : { zIndex: 0 }), class: vue.normalizeClass([$setup.isPopupVisiblethi ? "right-container-right-big" : "right-container-right-small"]) }, [ vue.createElementVNode( "view", { class: vue.normalizeClass([$props.darkFans ? "right-container-right-father-dark" : "right-container-right-father"]) }, [ vue.createElementVNode("view", { class: "right-container-right-down-father" }, [ vue.createElementVNode("div", { class: "right-container-fir-left-card-flex-sec" }, [ vue.createElementVNode("image", { class: "right-container-fir-left-card-flex-sec-img", src: `/static/index/baojielei.png` }, null, 8, ["src"]), vue.createElementVNode("div", { class: "right-container-fir-left-card-flex-sec-font", onClick: $setup.showPopupthi }, "保洁类"), vue.createElementVNode("image", { class: "right-container-fir-left-card-flex-sec-imgright-fir", src: `/static/index/baojieleft.png` }, null, 8, ["src"]), vue.createElementVNode("image", { class: "right-container-fir-left-card-flex-sec-imgright-sec", src: `/static/index/baojieright.png` }, null, 8, ["src"]), vue.createElementVNode("view", { class: "uni-margin-wrap" }, [ vue.createElementVNode("swiper", { current: $setup.secondcurrentIndex, class: "swiper", circular: "", "indicator-dots": false, autoplay: false, interval: 4e3, duration: 500 }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 2, 3], (item, index) => { return vue.createElementVNode("swiper-item", { class: "swiper-item-flex", key: index }, [ vue.createElementVNode("view", { class: "time-tra-thi" }, [ vue.createElementVNode("view", { class: "time-tra-thi-zhixing" }, [ vue.createElementVNode("div", { class: "time-tra-thi-zhixing-font" }, "待执行 ") ]), vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `time-font-dark` : `time-font`) }, " 10:00 - 10:10 ", 2 /* CLASS */ ), vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `time-text-dark` : `time-text`) }, " 为老人提供口腔清洁器具,牙膏、牙刷及水杯,看护完成 ", 2 /* CLASS */ ), vue.createElementVNode("view", { class: "time-people-two" }, [ vue.createElementVNode("image", { class: "time-people-img", src: $props.darkFans ? `/static/index/darkicon/zhixingpeopledark.png` : `/static/index/cardicons/zhixing.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-people-font-dark` : `time-people-font`) }, " 单人执行 ", 2 /* CLASS */ ), vue.createElementVNode("image", { class: "time-people-img", src: $props.darkFans ? `/static/index/medium/dopeopledark.png` : `/static/index/cardicons/zhifa.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-people-font-dark` : `time-people-font`) }, " 王金福 / 李贵田 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "time-button-view" }, [ vue.createElementVNode("view", { class: "time-button-start" }, " 开始服务 "), vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `time-button-end-dark` : `time-button-end`) }, " 服务结束 ", 2 /* CLASS */ ) ]) ]), vue.createElementVNode("view", { class: "time-tra-thi-photo" }, [ vue.createElementVNode("image", { class: "time-tra-thi-photo-img", src: `/static/index/project3.png`, onClick: $setup.showPopupthi }, null, 8, ["src"]), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `time-tra-thi-photo-font-dark` : `time-tra-thi-photo-font`) }, " 更换纸尿裤 ", 2 /* CLASS */ ) ]) ]); }), 64 /* STABLE_FRAGMENT */ )) ], 8, ["current"]) ]) ]) ]) ], 2 /* CLASS */ ) ], 6 /* CLASS, STYLE */ ), vue.createElementVNode("view", { class: "under-father" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.undericonList, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { class: "under-father-view", key: index, onClick: ($event) => $setup.changeMenuUnder(index) }, [ vue.withDirectives(vue.createElementVNode( "image", { class: "under-father-light", src: _imports_1$1 }, null, 512 /* NEED_PATCH */ ), [ [vue.vShow, index === $setup.undermenuIndex] ]), vue.createElementVNode("image", { class: "under-father-img", src: index === $setup.undermenuIndex ? item.targetUrl : item.url }, null, 8, ["src"]), vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `under-father-img-font-dark` : `under-father-img-font`) }, vue.toDisplayString(item.name), 3 /* TEXT, CLASS */ ) ], 8, ["onClick"]); }), 128 /* KEYED_FRAGMENT */ )) ]) ]), vue.createVNode( $setup["Drawer"], { ref: "drawer" }, { default: vue.withCtx(() => [ vue.createElementVNode("view", { class: "draw-all" }, [ vue.createElementVNode("view", { class: "draw-title" }, [ vue.createElementVNode("view", { class: "draw-title-gun" }), vue.createElementVNode("view", { class: "draw-title-font" }, "转单执行") ]), vue.createElementVNode("view", { class: "draw-contain" }, [ vue.createElementVNode("view", { class: "container-father" }, [ vue.createElementVNode("view", { class: "draw-contain-white-sha" }), vue.createElementVNode("view", { class: "container" }, [ vue.createElementVNode( "div", { class: "line", style: vue.normalizeStyle({ width: $setup.lineWidth }) }, null, 4 /* STYLE */ ), vue.createElementVNode("div", { class: "line-gray" }), (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.circles, (item, index) => { return vue.createElementVNode("div", { key: index, class: vue.normalizeClass($setup.circlesNumber >= index ? `outer-circle-target` : `outer-circle`), onClick: ($event) => $setup.circlesNumber = index }, [ vue.createElementVNode( "div", { class: vue.normalizeClass($setup.circlesNumber >= index ? `inner-circle-target` : `inner-circle`) }, [ vue.createElementVNode( "span", null, vue.toDisplayString(item.label), 1 /* TEXT */ ) ], 2 /* CLASS */ ) ], 10, ["onClick"]); }), 64 /* STABLE_FRAGMENT */ )) ]), vue.createElementVNode("view", { class: "draw-contain-gray" }), vue.createElementVNode("view", { class: "draw-contain-white" }) ]) ]) ]) ]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ) ], 4 /* STYLE */ ); } const rightItemsfirst = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$4], ["__scopeId", "data-v-9f74ebdb"], ["__file", "D:/hldy_app/component/rightItemsindex/index.vue"]]); const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({ __name: "index", props: { isshow: { type: Boolean, required: true }, darkFans: { type: Boolean, required: true }, canmove: { type: Boolean, required: true }, liang: { type: Object } }, emits: ["darkchange", "savename", "saveruler", "closename", "changefangkuang"], setup(__props, { expose: __expose, emit: __emit }) { const props = __props; vue.watch( () => props.canmove, () => { bottomisShaking.value = false; } ); vue.watch( () => props.isshow, () => { bottomisShaking.value = false; shakyTable.value = false; } ); vue.onMounted(() => { downList.value = bigArray[0].data; }); const bottomItems = vue.ref([ { name: "纸尿裤", url: "/static/index/niao.png" }, { name: "呕吐", url: "/static/index/tu.png" }, { name: "吸痰", url: "/static/index/ou.png" }, { name: "大便", url: "/static/index/baba.png" }, { name: "纸尿裤", url: "/static/index/niao.png" }, { name: "呕吐", url: "/static/index/tu.png" }, { name: "吸痰", url: "/static/index/ou.png" }, { name: "大便", url: "/static/index/baba.png" }, { name: "纸尿裤", url: "/static/index/niao.png" }, { name: "呕吐", url: "/static/index/tu.png" }, { name: "吸痰", url: "/static/index/ou.png" }, { name: "大便", url: "/static/index/baba.png" }, { name: "纸尿裤", url: "/static/index/niao.png" }, { name: "呕吐", url: "/static/index/tu.png" }, { name: "吸痰", url: "/static/index/ou.png" }, { name: "大便", url: "/static/index/baba.png" } ]); const timeArray = [ `00`, `05`, `10`, `15`, `20`, `25`, `30`, `35`, `40`, `45`, `50`, `55` ]; const weekDays = ["周一", "周二", "周三", "周四", "周五", "周六", "周日"]; const days = Array.from({ length: 31 }, (_, i) => (i + 1).toString().padStart(2, "0")); const isweek = vue.ref(true); const scrollLeft = vue.ref(0); const scrollTop = vue.ref(0); const downList = vue.ref(); const rightList = vue.ref([ // "三分段", // "四分段", ]); const isopen = vue.ref(false); const songisopen = vue.ref(false); const isopacity = vue.ref(false); const songisopacity = vue.ref(false); const deleteisopen = vue.ref(false); const deletename = vue.ref(""); const deleteisopacity = vue.ref(false); const currentNumber = vue.ref(1); const scrollKey = vue.ref(0); function pseudoRandom(index0, index1) { const seed = index0 * 55.9898 + index1 * 78.233; return Math.abs(Math.sin(seed) * 43758.5453) % 1; } function computeDelay(index0, index1) { const range = 2; return pseudoRandom(index0, index1) * range; } const changecurrentNumber = (event) => { currentNumber.value = event.detail.current; vue.nextTick(() => { scrollTop.value = moveDownNumber.value; }); }; const dragOffset = vue.ref(0); const moveDownNumber = vue.ref(0); function handleScrolltime(e) { let num = e.detail.scrollTop; let formattedNum = parseFloat(num.toFixed(2)); moveDownNumber.value = formattedNum; } const changeBug = vue.ref(true); const nextItems = () => { currentNumber.value > 2 ? currentNumber.value = 0 : currentNumber.value++; }; const getClass = (item, index0, index1) => { if (!props.canmove && props.liang.index0 === index0 && props.liang.index1 === index1 && (redNameindex0.value.includes(index0 + currentNumber.value * 6) || redNameindex1.value != index1)) { return "title-time-border-red"; } else if (!props.canmove && props.liang.index0 === index0 && props.liang.index1 === index1) { return "title-time-border-blue"; } else if (item.type === "日常") { if (flyNumber.value.index0 === index0 + currentNumber.value * 6 && flyNumber.value.index1 === index1 && shakyTable.value) { return "title-time-border-yellow-active-transparent"; } else if (shakyTable.value) { return "title-time-border-yellow-active"; } else { return "title-time-border-yellow"; } } else if (item.type) { if (flyNumber.value.index0 === index0 + currentNumber.value * 6 && flyNumber.value.index1 === index1 && shakyTable.value) { return "title-time-border-pouple-active-transparent"; } else if (shakyTable.value) { return "title-time-border-pouple-active"; } else { return "title-time-border-pouple"; } } return "title-time-border"; }; const doctorsayList = vue.ref([ { url: "/static/index/doctorsay/light/clean.png", targetUrl: "/static/index/doctorsay/dark/clean.png", name: "清洁" }, { url: "/static/index/doctorsay/light/drink.png", targetUrl: "/static/index/doctorsay/dark/drink.png", name: "饮食" }, { url: "/static/index/doctorsay/light/bed.png", targetUrl: "/static/index/doctorsay/dark/bed.png", name: "睡眠" }, { url: "/static/index/doctorsay/light/shi.png", targetUrl: "/static/index/doctorsay/dark/shi.png", name: "排泻" }, { url: "/static/index/doctorsay/light/use.png", targetUrl: "/static/index/doctorsay/dark/use.png", name: "日常" } ]); const rightListIndex = vue.ref(1); const upmenuIndex = vue.ref(0); const downmenuIndex = vue.ref(999); const underFans = vue.ref(false); const roomTar = vue.ref([]); const emit = __emit; const darkFanschange = () => { emit("darkchange", !props.darkFans); }; const changLeft = (index) => { upmenuIndex.value = index; downList.value = bigArray[index].data; downmenuIndex.value = 999; }; const rightListClick = (index) => { rightListIndex.value = index; }; const timer = vue.ref(null); const elementsInfo = vue.ref({}); const moveX = vue.ref(0); const moveY = vue.ref(0); const openX = vue.ref(0); const openY = vue.ref(0); const flyNumber = vue.ref({ index0: 999, index1: 999, serve: "" }); const deletebottomindex = vue.ref(-1); const deletedownisopen = vue.ref(false); const deletedownisopacity = vue.ref(false); const deletebottom = (index, name) => { bottomisShaking.value = false; deletebottomindex.value = index; shakyTable.value = false; deletedownisopacity.value = false; deletedownisopen.value = true; deletename.value = name; setTimeout(() => { deletedownisopacity.value = true; }, 200); }; const deleteindex = vue.ref([-1, -1]); const deleteItems = (name, index0, index1) => { deleteindex.value = [-1, -1]; shakyTable.value = false; bottomisShaking.value = false; deleteisopacity.value = false; deleteisopen.value = true; deleteindex.value = [index0 + currentNumber.value * 6, index1]; deletename.value = name; setTimeout(() => { deleteisopacity.value = true; }, 200); }; const touchindex1 = vue.ref(-1); const rulerTouchClick = (item, index0, index1, e) => { if (item.value) { touchindex1.value = index1; const query = uni.createSelectorQuery(); query.selectAll(".super-card-time-card").boundingClientRect((data) => { data.forEach(async (res) => { if (res.left > 200 && res.left < 1067 && res.top < 570 && res.top > 140 && res.dataset.index0 == index0 && res.dataset.index1 == index1) { if (res.left > 200 && res.left < 500) { openX.value = Math.floor(res.left) + 520; } else { openX.value = Math.floor(res.left); } if (res.top > 140 && res.top < 300) { openY.value = Math.floor(res.top) + 250; } else { openY.value = Math.floor(res.top); } await vue.nextTick(); isopen.value = true; isopacity.value = false; setTimeout(() => { isopacity.value = true; }, 100); } }); }).exec(); } }; const shakyTable = vue.ref(false); const reldata = vue.ref([]); const rulerTouchStart = (item, index0, index1, e) => { scrollTop.value = moveDownNumber.value; redNameindex0.value = []; let index1Number = -1; moveX.value = Math.floor(e.touches[0].pageX); moveY.value = Math.floor(e.touches[0].pageY); timer.value = setTimeout(() => { if (item.value) { timearr.value.forEach((element0, index02) => { element0.children.forEach((element1) => { if (element1.serve === item.serve && element1.value) { redNameindex0.value.push(index02); } if (element1.value) { index1Number = index02; } }); }); if (redNameindex0.value.length) { redNameindex1.value = index1; } else { redNameindex1.value = index1Number + 1; } flyNumber.value.serve = item.serve; flyNumber.value.index0 = index0 + currentNumber.value * 6; flyNumber.value.index1 = index1; indexsave.value = [-1, -1]; reldata.value = []; isTuoing.value = true; const query = uni.createSelectorQuery(); query.selectAll(".super-card-time-card").boundingClientRect((data) => { data.forEach(async (res) => { if (res.left > 200 && res.left < 1067 && res.top < 570 && res.top > 140) { shakyTable.value = true; reldata.value.push(res); } }); }).exec(); emit("saveruler", item, reldata.value); } }, 100); }; const rulerTouchMove = (e) => { const moveXa = Math.floor(e.touches[0].pageX); const moveYa = Math.floor(e.touches[0].pageY); if (Math.abs(moveXa - moveX.value) > 0 || Math.abs(moveYa - moveY.value) > 0) { if (timer.value) { clearTimeout(timer.value); timer.value = null; } } }; const rulerTouchEnd = () => { isTuoing.value = false; if (timer.value) { clearTimeout(timer.value); timer.value = null; } }; const deleteRuler = (index0, index1) => { timearr.value[index0].children[index1] = { value: "" }; isopen.value = false; flyNumber.value.index0 = 999; flyNumber.value.index1 = 999; let emptyChildIndices = []; let emptyChildNumber = 0; timearr.value.forEach((res, rowIndex) => { emptyChildIndices = []; emptyChildNumber = res.children.length; res.children.forEach((child, index) => { if (child.value === null || child.value === "" || child.value === void 0) { const isEmptyInAllRows = timearr.value.every((otherRes) => { const otherChild = otherRes.children[index]; return otherChild === void 0 || otherChild.value === null || otherChild.value === "" || otherChild.value === void 0; }); if (isEmptyInAllRows) { emptyChildIndices.push(index); } } }); }); if (emptyChildNumber > 4 && emptyChildIndices.length > 1) { timearr.value.forEach((res, rowIndex) => { res.children.splice(emptyChildIndices[0], 1); }); } else { timearr.value.forEach((res, rowIndex) => { res.children.splice(emptyChildIndices[0], 1); res.children.push({ value: "" }); }); } deleteisopen.value = false; }; const longPressTimer = vue.ref(null); const isScrolling = vue.ref(false); let scrollTimeout = null; function handleScroll(e) { isScrolling.value = true; if (scrollTimeout) clearTimeout(scrollTimeout); scrollTimeout = setTimeout(() => { isScrolling.value = false; }, 400); } const isBack = vue.ref(false); const saveX = vue.ref(0); const saveY = vue.ref(0); const isTuoing = vue.ref(false); const redNameindex0 = vue.ref([]); const redNameindex1 = vue.ref(-1); const handleTouchStart = (item, index, e) => { scrollTop.value = moveDownNumber.value; shakyTable.value = false; saveX.value = Math.floor(e.touches[0].pageX); saveY.value = Math.floor(e.touches[0].pageY); longPressTimer.value = setTimeout(() => { let noHave = false; timearr.value[0].children.forEach((element, index0) => { if (element.serve === item) { scrollTop.value = 0; scrollTop.value = index0 * 104; noHave = true; } }); if (!noHave) { scrollTop.value = 0; scrollTop.value = 999; } }, 190); longPressTimer.value = setTimeout(() => { redNameindex0.value = []; if (isScrolling.value) return; let index1save = -1; let indexanthersave = -1; timearr.value.forEach((element0, index0) => { element0.children.forEach((element1, index1) => { if (element1.serve === item && element1.value) { redNameindex0.value.push(index0); index1save = index1; } if (element1.value) { if (index1 > indexanthersave) { indexanthersave = index1; } } }); }); if (redNameindex0.value.length) { redNameindex1.value = index1save; } else { redNameindex1.value = indexanthersave + 1; } isBack.value = true; downmenuIndex.value = index; indexsave.value = [-1, -1]; isTuoing.value = true; reldata.value = []; const query = uni.createSelectorQuery(); query.selectAll(".super-card-time-card").boundingClientRect((data) => { data.forEach((res) => { if (res.left > 200 && res.left < 1067 && res.top < 570 && res.top > 140) { reldata.value.push(res); } }); }).exec(); emit("savename", item, reldata.value); }, 200); }; function isblue() { if (!openOp.value && cardsumit.value.startTime || openOp.value === 1 && cardsumit.value.startTime && (cardsumit.value.weekTime || cardsumit.value.monthTime) || openOp.value === 2) { return true; } else { return false; } } const handleTouchMove = (e) => { const moveX2 = Math.floor(e.touches[0].pageX); const moveY2 = Math.floor(e.touches[0].pageY); if (Math.abs(moveX2 - saveX.value) > 0 || Math.abs(moveY2 - saveY.value) > 0) { if (longPressTimer.value) { clearTimeout(longPressTimer.value); longPressTimer.value = null; } } }; const handleTouchEnd = () => { isTuoing.value = false; if (longPressTimer.value) { clearTimeout(longPressTimer.value); longPressTimer.value = null; } }; const bottomTimer = vue.ref(null); const bottomisShaking = vue.ref(false); const bottomTouchStart = (e) => { saveX.value = Math.floor(e.touches[0].pageX); saveY.value = Math.floor(e.touches[0].pageY); bottomTimer.value = setTimeout(() => { bottomisShaking.value = true; }, 500); }; const bottomTouchMove = (e) => { const moveX2 = Math.floor(e.touches[0].pageX); const moveY2 = Math.floor(e.touches[0].pageY); if (Math.abs(moveX2 - saveX.value) > 0 || Math.abs(moveY2 - saveY.value) > 0) { if (bottomTimer.value) { clearTimeout(bottomTimer.value); bottomTimer.value = null; } } }; const bottomTouchEnd = () => { if (bottomTimer.value) { clearTimeout(bottomTimer.value); bottomTimer.value = null; } }; const openValue = vue.ref({ time: "", array: [] }); const cardsumit = vue.ref({ op: { name: "", index: [-1, -1, -1] }, startTime: "", monthTime: "", weekTime: "" }); const openOp = vue.ref(0); const clickOp = (index, name, op) => { cardsumit.value.startTime = ""; cardsumit.value.monthTime = ""; cardsumit.value.weekTime = ""; if (cardsumit.value.op.index[2] === index) { cardsumit.value.op.index[2] = -1; cardsumit.value.op.name = ""; openOp.value = -1; } else { cardsumit.value.op.index[2] = index; cardsumit.value.op.name = name; openOp.value = op; } }; const clickTime = (index) => { if (cardsumit.value.startTime == index) { cardsumit.value.startTime = ""; } else { cardsumit.value.startTime = index; } }; const clickweek = (index) => { if (cardsumit.value.weekTime == index) { cardsumit.value.weekTime = ""; } else { cardsumit.value.weekTime = index; } }; const clickmonth = (index) => { if (cardsumit.value.monthTime == index) { cardsumit.value.monthTime = ""; } else { cardsumit.value.monthTime = index; } }; const indexsave = vue.ref([-1, -1]); const rulerEnd = async (res) => { isBack.value = false; if (props.liang.index0 !== 999 && res) { if (redNameindex0.value.includes(props.liang.index0 + currentNumber.value * 6) || redNameindex1.value !== props.liang.index1) { return false; } cardsumit.value = { op: { name: "", index: [-1, -1, -1] }, startTime: "", monthTime: "", weekTime: "" }; songisopacity.value = false; songisopen.value = true; setTimeout(() => { songisopacity.value = true; }, 200); cardsumit.value.op.index[0] = upmenuIndex.value; cardsumit.value.op.index[1] = downmenuIndex.value; openValue.value.time = timearr.value[props.liang.index0 + currentNumber.value * 6].time; openValue.value.array = bigArray[upmenuIndex.value].data[downmenuIndex.value].data; indexsave.value = [props.liang.index0 + currentNumber.value * 6, props.liang.index1]; clickOp(0, openValue.value.array[0].type, openValue.value.array[0].op); } }; const rulerMoveEnd = (object) => { if (props.liang.index0 !== 999 && object.type) { if (redNameindex0.value.includes(props.liang.index0 + currentNumber.value * 6) || redNameindex1.value !== props.liang.index1) { return false; } indexsave.value = [props.liang.index0 + currentNumber.value * 6, props.liang.index1]; let savaIndex = -1; let emptyChildIndices = []; timearr.value.forEach((res, rowIndex) => { emptyChildIndices = []; res.children.forEach((child, index) => { if (child.value === null || child.value === "" || child.value === void 0) { const isEmptyInAllRows = timearr.value.every((otherRes) => { const otherChild = otherRes.children[index]; return otherChild === void 0 || otherChild.value === null || otherChild.value === "" || otherChild.value === void 0; }); if (isEmptyInAllRows) { emptyChildIndices.push(index); } } }); res.children.forEach((item, index) => { if (item.serve == object.serve) { savaIndex = index; } }); }); if (savaIndex === -1) { savaIndex = emptyChildIndices[0]; } let haveAnyItem = 0; let saveServe = ""; timearr.value.forEach((element) => { if (element.children[0].value) { haveAnyItem++; saveServe = element.children[0].serve; } }); if (haveAnyItem > 1) { timearr.value[flyNumber.value.index0].children[flyNumber.value.index1] = { value: "", serve: saveServe }; } else { timearr.value[flyNumber.value.index0].children[flyNumber.value.index1] = { value: "" }; } timearr.value[indexsave.value[0]].children[savaIndex] = object; const parentHour = parseInt(timearr.value[indexsave.value[0]].time, 10); object.time = object.time.split("-").map((item) => { const parts = item.split(":"); return `${parentHour}:${parts[1]}`; }).join("-"); const shouldAdd = timearr.value.some((obj) => { const children = obj.children; return children[children.length - 1].value.trim() !== ""; }); if (shouldAdd) { timearr.value.forEach((obj) => { obj.children.push({ value: "" }); }); scrollTop.value = 999; scrollTop.value = 9999; } } }; const scrollContainer = vue.ref(null); const movetoruler = async () => { songisopen.value = false; isweek.value = true; let savaIndex = -1; let emptyChildIndices = []; if (openOp.value === 2) { scrollLeft.value = 1; vue.nextTick(() => { scrollLeft.value = 0; bottomItems.value.unshift({ name: cardsumit.value.op.name, url: "/static/index/ou.png", target: `#00a8ff` }); setTimeout(() => { bottomItems.value[0].target = `#fff`; }, 1500); setTimeout(() => { bottomItems.value[0].target = ""; }, 3e3); }); return; } timearr.value.forEach((res, rowIndex) => { emptyChildIndices = []; res.children.forEach((child, index) => { if (child.value === null || child.value === "" || child.value === void 0) { const isEmptyInAllRows = timearr.value.every((otherRes) => { const otherChild = otherRes.children[index]; return otherChild === void 0 || otherChild.value === null || otherChild.value === "" || otherChild.value === void 0; }); if (isEmptyInAllRows) { emptyChildIndices.push(index); } } }); res.children.forEach((item, index) => { if (item.serve == bigArray[cardsumit.value.op.index[0]].data[cardsumit.value.op.index[1]].type) { savaIndex = index; } }); }); if (savaIndex === -1) { savaIndex = emptyChildIndices[0]; } let saveserve = bigArray[cardsumit.value.op.index[0]].data[cardsumit.value.op.index[1]].type; await vue.nextTick(); timearr.value.forEach((element, index) => { element.children[savaIndex].serve = saveserve; element.serve = saveserve; }); if (!openOp.value) { timearr.value[indexsave.value[0]].children[savaIndex].type = "日常"; } else if (openOp.value === 1) { timearr.value[indexsave.value[0]].children[savaIndex].type = cardsumit.value.weekTime || cardsumit.value.monthTime + "号"; } timearr.value[indexsave.value[0]].children[savaIndex].value = cardsumit.value.op.name; const startHour = Number(openValue.value.time); const startMinute = Number(cardsumit.value.startTime); const endMinute = startMinute + 10; const endHour = startHour + Math.floor(endMinute / 60); const formattedStart = `${String(startHour)}:${String(startMinute).padStart(2, "0")}`; const formattedEnd = `${String(endHour)}:${String(endMinute % 60).padStart(2, "0")}`; if (savaIndex !== -1) { timearr.value[indexsave.value[0]].children[savaIndex].time = `${formattedStart}-${formattedEnd}`; } else { timearr.value[indexsave.value[0]].children[indexsave.value[1]].time = `${formattedStart}-${formattedEnd}`; } const shouldAdd = timearr.value.some((obj) => { const children = obj.children; return children[children.length - 1].value.trim() !== ""; }); if (shouldAdd) { timearr.value.forEach((obj) => { obj.children.push({ value: "" }); }); scrollTop.value = 999; await vue.nextTick(); scrollTop.value = 9999; } }; const routerPush = () => { uni.setStorageSync("timearr", timearr.value); uni.navigateTo({ url: `/pages/timeMatrix/index?currentNumber=${currentNumber.value}` }); }; const saveRulerTime = vue.ref({ index0: -1, index1: -1 }); const targetRuler = vue.ref({ index0: -1, index1: -1, current: -1, bordershow: true }); const whereEvent = (data) => { scrollTop.value = 0; scrollTop.value = data.index1 * 104; if (currentNumber.value === Math.floor(data.index0 / 6)) { targetRuler.value.index0 = data.index0 - currentNumber.value * 6; targetRuler.value.index1 = data.index1; saveRulerTime.value.index0 = targetRuler.value.index0; saveRulerTime.value.index1 = targetRuler.value.index1; targetRuler.value.current = currentNumber.value; targetRuler.value.bordershow = false; setTimeout(() => { targetRuler.value.index0 = -1; targetRuler.value.index1 = -1; targetRuler.value.current = -1; }, 400); setTimeout(() => { targetRuler.value.bordershow = true; saveRulerTime.value.index0 = -1; saveRulerTime.value.index1 = -1; }, 1e3); } else { setTimeout(() => { currentNumber.value = Math.floor(data.index0 / 6); }, 100); setTimeout(() => { targetRuler.value.index0 = data.index0 - currentNumber.value * 6; targetRuler.value.index1 = data.index1; saveRulerTime.value.index0 = targetRuler.value.index0; saveRulerTime.value.index1 = targetRuler.value.index1; targetRuler.value.current = currentNumber.value; targetRuler.value.bordershow = false; }, 800); setTimeout(() => { targetRuler.value.index0 = -1; targetRuler.value.index1 = -1; targetRuler.value.current = -1; }, 1400); setTimeout(() => { targetRuler.value.bordershow = true; saveRulerTime.value.index0 = -1; saveRulerTime.value.index1 = -1; }, 2200); } }; onShow(() => { uni.$on("where", whereEvent); }); onHide(() => { uni.$off("where", whereEvent); }); __expose({ rulerEnd, rulerMoveEnd, nextItems }); const moveNumber = vue.ref({ index0: 999, index1: 999 }); const timearr = vue.ref([ { time: "00", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "01", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "02", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "03", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "04", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "05", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "06", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "07", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "08", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "09", children: [ { value: "" // type: '日常', // time: '9:00-9:30', }, { value: "" // type: '周一', // time: '9:00-9:33', // serve:'' }, { value: "" }, { value: "" } ] }, { time: "10", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "11", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "12", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "13", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "14", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "15", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "16", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "17", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "18", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "19", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "20", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "21", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "22", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] }, { time: "23", children: [ { value: "" }, { value: "" }, { value: "" }, { value: "" } ] } ]); function splitString(str) { let result = []; let remainingStr = str; let regex = /([^((]*)[((]([^))]+)[))]/; while (regex.test(remainingStr)) { let match = remainingStr.match(regex); if (match) { if (match[1].trim()) { result.push(match[1].trim()); } if (match[2].trim()) { result.push(match[2].trim()); } remainingStr = remainingStr.replace(match[0], "").trim(); } } if (remainingStr.trim()) { result.push(remainingStr.trim()); } return result; } const bigArray = [ { "type": "清洁照料", "data": [ { "type": "口腔清洁", "data": [ { "type": "准备洁具(口腔)", "data": "为老人提供口腔清洁器具,牙膏牙刷及水杯.看护完成" }, { "type": "协助清洁(口腔)", "data": "准备水杯.牙刷牙膏.纸巾.协助完成清洁." }, { "type": "义齿清洁(口腔)", "data": "准备凉开水浸泡.取下流水冲洗.盐水棉球擦拭口腔.漱口.水.协助清洁" }, { "type": "棉球清洁(口腔)", "data": "准备好盐水棉球.镊子.止血钳.压舌板.垫巾.手电筒.完成清洁" } ] }, { "type": "头部清洁", "data": [ { "type": "准备洁具(头部)", "data": "准备温水.一次性面巾.洗发水.清洗头部." }, { "type": "协助洗头", "data": "准备温水.毛巾.洗发水.清洗头部.擦干头部." }, { "type": "卧式洗头", "data": "" }, { "type": "擦头", "data": "" }, { "type": "刮头", "data": "" } ] }, { "type": "面部清洁", "data": [ { "type": "准备洁具(面部)", "data": "" }, { "type": "协助洁面", "data": "准备温水.一次性面巾.洁面乳.清洁面部.涂抹面霜.棉签擦拭耳朵.鼻孔." } ] }, { "type": "躯干清洁", "data": [ { "type": "准备洁具(躯干)", "data": "准备温水.一次性面巾.香皂.换洗衣物.清洁皮肤.完成后涂抹身体保湿乳." }, { "type": "协助清洁(躯干)", "data": "" }, { "type": "卧床清洁(躯干)", "data": "" } ] }, { "type": "四肢清洁", "data": [ { "type": "准备洁具(四肢)", "data": "" }, { "type": "协助清洁(四肢)", "data": "准备温水.一次性面巾.香皂.清洁后涂抹身体保湿乳." }, { "type": "卧床清洁(四肢)", "data": "" }, { "type": "肌张力高(清洁)", "data": "准备温水.一次性面巾.香皂.清洁后涂抹身体保湿乳." } ] }, { "type": "会阴清洁", "data": [ { "type": "会阴清洁(男)", "data": "准备手套.盐水棉球.碘伏棉球.干棉球.环形完成清洁" }, { "type": "会阴清洁(女)", "data": "准备手套.碘伏棉球.盐水棉球.干棉球.纵向完成擦拭" } ] }, { "type": "肛周清洁", "data": [ { "type": "肛周清洁", "data": "准备手套.碘伏棉球.盐水棉球.干棉球完成清洁" } ] }, { "type": "手清洁", "data": [ { "type": "洗手", "data": "" }, { "type": "泡手", "data": "准备温水水盆.洗手液.一次性面巾.清洁后涂抹润手霜" }, { "type": "准备洁具", "data": "" }, { "type": "协助洗手", "data": "" }, { "type": "强直屈曲洗手", "data": "" } ] }, { "type": "足清洁", "data": [ { "type": "泡脚", "data": "准备温水水盆.毛巾完成清洁后涂抹保湿乳" }, { "type": "卧式泡脚", "data": "" } ] }, { "type": "剃须", "data": [ { "type": "修睫毛", "data": "" }, { "type": "剃须", "data": "准备剃须液.剃须刀.一次性面巾.温水.协助剃须" } ] }, { "type": "修甲", "data": [ { "type": "角质增生(修甲)", "data": "准备指甲刀.纸巾.进行修剪" }, { "type": "灰指甲(修甲)", "data": "准备专用指甲刀.纸巾.盐水棉球.进行修剪" }, { "type": "正常(修甲)", "data": "准备指甲刀.纸巾.进行修剪" } ] }, { "type": "理发", "data": [ { "type": "理发", "data": "准备围巾.推子理发后.温水清洗." }, { "type": "理发(颅骨缺损)", "data": "" } ] }, { "type": "沐浴", "data": [ { "type": "床上沐浴", "data": "准备温水.一次性毛巾.香皂.洗发水.身体保湿乳协助清洗." }, { "type": "深度清洁", "data": "准备温水.一次性面巾.洗发水.香皂.棉签.指甲刀.身体保湿乳.盐水棉球.完成清洁" }, { "type": "浴间洗浴", "data": "准备平车.换洗衣物.浴巾.洗发水.澡巾.香皂.被子.完成清洁" }, { "type": "床上沐浴(大体重)", "data": "" }, { "type": "深度清洁(大体重)", "data": "" }, { "type": "浴间洗浴(大体重)", "data": "" } ] }, { "type": "气切消毒", "data": [ { "type": "内套管清洁", "data": "" }, { "type": "更换气切纱布", "data": "" } ] } ] }, { "type": "饮食照料", "data": [ { "type": "正餐饮食", "data": [ { "type": "准备餐具", "data": "按需床头摇起" }, { "type": "协助进餐(正常)", "data": "按需床头摇起" }, { "type": "协助进餐(超时)", "data": "按需床头摇起" }, { "type": "鼻胃管进餐", "data": "床头摇起45度角" }, { "type": "鼻肠管进餐", "data": "床头摇起45度角" }, { "type": "轮椅进餐", "data": "" }, { "type": "轮椅进餐(大体重)", "data": "" } ] }, { "type": "辅餐饮食", "data": [ { "type": "准备餐具", "data": "按需床头摇起" }, { "type": "协助进餐(正常)", "data": "按需床头摇起" }, { "type": "协助进餐(超时)", "data": "按需床头摇起" }, { "type": "鼻胃管进餐", "data": "床头摇起45度角" }, { "type": "鼻肠管进餐", "data": "床头摇起45度角" } ] }, { "type": "果汁饮食", "data": [ { "type": "准备餐具", "data": "按需床头摇起" }, { "type": "协助进餐(正常)", "data": "按需床头摇起" }, { "type": "协助进餐(超时)", "data": "按需床头摇起" }, { "type": "鼻胃管进餐", "data": "床头摇起45度角" }, { "type": "鼻肠管进餐", "data": "床头摇起45度角" } ] }, { "type": "饮水饮食", "data": [ { "type": "吸管喂药", "data": "" }, { "type": "准备水杯", "data": "" }, { "type": "协助饮水", "data": "" }, { "type": "协助饮水(超时)", "data": "" }, { "type": "鼻胃管饮水", "data": "床头摇起45度角" }, { "type": "鼻肠管饮水", "data": "床头摇起45度角" }, { "type": "准备水杯", "data": "按需床头摇起" }, { "type": "协助饮水", "data": "按需床头摇起" }, { "type": "协助饮水(超时)", "data": "按需床头摇起" }, { "type": "鼻胃管饮水", "data": "" }, { "type": "鼻肠管饮水", "data": "" } ] }, { "type": "加餐饮食", "data": [ { "type": "准备餐具", "data": "" }, { "type": "协助进餐", "data": "" }, { "type": "协助进餐(超时)", "data": "" }, { "type": "鼻胃管进餐", "data": "" }, { "type": "胃肠管进餐", "data": "" }, { "type": "准备餐具", "data": "" }, { "type": "协助进餐", "data": "" }, { "type": "协助进餐(超时)", "data": "" }, { "type": "鼻胃管进餐", "data": "" }, { "type": "胃肠管进餐", "data": "" }, { "type": "食物加工", "data": "" } ] } ] }, { "type": "睡眠照料", "data": [ { "type": "巡视", "data": [ { "type": "巡视", "data": "巡视中.避免说话.走路轻." }, { "type": "体位调整", "data": "巡视过程中发现老人体位不正确或踢蹬被褥,进行体位调整和盖被褥" } ] }, { "type": "体位调整", "data": [ { "type": "防坠床", "data": "" }, { "type": "被褥调整", "data": "老人踢蹬被褥,调成被褥" }, { "type": "睡姿调整", "data": "" } ] }, { "type": "睡眠指令", "color": "#FFC363", "data": [ { "type": "被褥调整", "data": "老人踢蹬被褥,调成被褥", "op": 0 }, { "type": "被褥调整(超时1)(超时2)", "data": "老人踢蹬被褥,调成被褥", "op": 1 }, { "type": "被褥调整", "data": "老人踢蹬被褥,调成被褥", "op": 2 } ] } ] }, { "type": "排泄照料", "data": [ { "type": "小便", "data": [ { "type": "更换尿袋", "data": "准备尿袋一次性面巾.温水.进行操作" }, { "type": "更换隔尿垫", "data": "准备尿片.尿裤.温水.一次性面巾.进行操作" }, { "type": "使用尿盆", "data": "准备尿盆.温水.一次性面巾进行操作" }, { "type": "使用尿壶", "data": "准备尿壶.温水.一次性面巾.协助操作" }, { "type": "协助入厕", "data": "准备轮椅.推至卫生间.协助如厕" }, { "type": "坐便椅", "data": "准备坐便椅.手纸.床椅转移.协助如厕" }, { "type": "留置尿袋", "data": "准备尿液指定容器夹闭尿管.将.尿液倒出后.关闭开关." }, { "type": "更换纸尿裤", "data": "" }, { "type": "热敷抚触排尿", "data": "" }, { "type": "协助坐便椅", "data": "" }, { "type": "更换尿片", "data": "" } ] }, { "type": "大便", "data": [ { "type": "床上排便", "data": "准备尿片.尿裤.温水.一次性面巾.手纸.进行操作" }, { "type": "协助坐便椅", "data": "准备坐便椅.手纸." }, { "type": "协助入厕", "data": "准备轮椅" }, { "type": "人工取便", "data": "准备排便手套.开塞露.温水.一次性面巾.手纸.尿片.尿裤." }, { "type": "造瘘袋", "data": "准备手套.便器.温水." }, { "type": "坐便椅", "data": "" } ] }, { "type": "吸痰", "data": [ { "type": "口腔吸痰", "data": "准备吸痰器.吸痰管.泡管液.冲管水.盐水棉球.纱布.完成吸痰" }, { "type": "气切吸痰", "data": "准备吸痰器.吸痰管.冲管水.泡管液.纱布块.完成操作" } ] }, { "type": "呕吐", "data": [ { "type": "呕吐", "data": "准备换洗衣物.被褥.吸痰器.吸痰管.冲管水.漱口水.纱布.完成操作." } ] }, { "type": "引流", "data": [ { "type": "腹腔引流护理", "data": "" } ] } ] }, { "type": "日常照料", "data": [ { "type": "协助喂药", "data": [ { "type": "协助喂药", "data": "准备好服用药物.温水.看护服用" }, { "type": "鼻饲喂药", "data": "床头摇起45度角,准备温水.灌注器.药物.匀速灌注." }, { "type": "注射器/吸管喂药", "data": "" } ] }, { "type": "床椅转移", "data": [ { "type": "床椅转移", "data": "准备轮椅.换好衣物手纸.水杯.食物.进行转移" }, { "type": "床椅转移(大体重)", "data": "" }, { "type": "协助床椅转移", "data": "" } ] }, { "type": "压疮防护", "data": [ { "type": "一级压疮防护", "data": "准备好体位垫.整理好衣物.进行翻身.扣背" }, { "type": "二级压疮防护", "data": "翻身扣背垫枕开始操作" }, { "type": "三级压疮防护", "data": "带压疮翻身扣背垫枕.进行操作" }, { "type": "一级压疮防护(大体重)(小体重)", "data": "" }, { "type": "二级压疮防护(大体重)", "data": "" }, { "type": "三级压疮防护(大体重)", "data": "" } ] }, { "type": "轮椅防护", "data": [ { "type": "轮椅防护", "data": "准备好安全带.坐垫.1小内将长者抬起.放松肌肉." }, { "type": "轮椅防护(大体重)", "data": "" }, { "type": "轮椅防护", "data": "" }, { "type": "床椅转移(大体重)", "data": "" } ] }, { "type": "约束防护", "data": [ { "type": "约束位按摩(手)", "data": "约束位置用约束手套或束缚带.2小时.解开.放松." }, { "type": "约束位按摩(足)", "data": "使用约束带.约束位置2小时按摩.用温水清洁." }, { "type": "约束位按摩(全)", "data": "约束位置2小时放松.清洗." }, { "type": "防护网约束", "data": "通过防护网对老人进行约束看护" } ] }, { "type": "按摩保健", "data": [ { "type": "协助行走", "data": "准备舒适鞋子.水杯.手纸.协助行走" }, { "type": "放松按摩", "data": "手法放松.舒筋活血." }, { "type": "心灵慰藉", "data": "陪同倾听.肢体放松.互动.安抚." }, { "type": "躁狂", "data": "针对躁狂老人的狂燥期,发出喊叫,敲打等动作的忍受服务" } ] }, { "type": "更换衣物", "data": [ { "type": "准备衣物", "data": "准备舒适衣裤" }, { "type": "协助更换", "data": "" }, { "type": "肢体障碍(半侧)", "data": "" }, { "type": "肢体障碍(全身)", "data": "" }, { "type": "准备衣物", "data": "" }, { "type": "协助更换", "data": "" }, { "type": "肢体障碍(半侧)", "data": "" }, { "type": "肢体障碍(全身)", "data": "" }, { "type": "协助更换(大体重)", "data": "" }, { "type": "肢体障碍(半侧)(大体重)", "data": "" }, { "type": "肢体障碍(全测)(大体重)", "data": "" }, { "type": "肢体障碍(半测)(大体重)", "data": "" } ] }, { "type": "调整坐卧", "data": [ { "type": "坐起", "data": "为老人调整床位60度角" }, { "type": "躺下", "data": "为老人调整床位180度角" } ] }, { "type": "殡仪服务", "data": [ { "type": "遗体净身", "data": "" }, { "type": "遗体穿衣", "data": "" }, { "type": "遗体转移", "data": "" }, { "type": "床位消毒", "data": "" } ] }, { "type": "换床上用品", "data": [ { "type": "更换床上用品(全部)", "data": "" }, { "type": "隔尿褥子更换", "data": "" } ] }, { "type": "临终服务", "data": [ { "type": "临终护理", "data": "" } ] }, { "type": "制氧机应用", "data": [ { "type": "制氧机吸氧", "data": "制氧机吸氧" }, { "type": "制氧机维护", "data": "制氧机维护,清洁维护,更换湿化瓶" } ] } ] } ]; const __returned__ = { props, bottomItems, timeArray, weekDays, days, isweek, scrollLeft, scrollTop, downList, rightList, isopen, songisopen, isopacity, songisopacity, deleteisopen, deletename, deleteisopacity, currentNumber, scrollKey, pseudoRandom, computeDelay, changecurrentNumber, dragOffset, moveDownNumber, handleScrolltime, changeBug, nextItems, getClass, doctorsayList, rightListIndex, upmenuIndex, downmenuIndex, underFans, roomTar, emit, darkFanschange, changLeft, rightListClick, timer, elementsInfo, moveX, moveY, openX, openY, flyNumber, deletebottomindex, deletedownisopen, deletedownisopacity, deletebottom, deleteindex, deleteItems, touchindex1, rulerTouchClick, shakyTable, reldata, rulerTouchStart, rulerTouchMove, rulerTouchEnd, deleteRuler, longPressTimer, isScrolling, get scrollTimeout() { return scrollTimeout; }, set scrollTimeout(v) { scrollTimeout = v; }, handleScroll, isBack, saveX, saveY, isTuoing, redNameindex0, redNameindex1, handleTouchStart, isblue, handleTouchMove, handleTouchEnd, bottomTimer, bottomisShaking, bottomTouchStart, bottomTouchMove, bottomTouchEnd, openValue, cardsumit, openOp, clickOp, clickTime, clickweek, clickmonth, indexsave, rulerEnd, rulerMoveEnd, scrollContainer, movetoruler, routerPush, saveRulerTime, targetRuler, whereEvent, moveNumber, timearr, splitString, bigArray }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); const _imports_0$1 = "/static/index/shexiang.png"; const _imports_1 = "/static/index/cheng.png"; const _imports_2 = "/static/index/deleteicon.png"; function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) { var _a, _b, _c, _d; return vue.openBlock(), vue.createElementBlock( vue.Fragment, null, [ vue.createCommentVNode(" click是让抖动停止 "), vue.createElementVNode( "view", { class: "right-container", style: vue.normalizeStyle($props.isshow ? { opacity: `1` } : { opacity: `0` }), onClick: _cache[20] || (_cache[20] = ($event) => { $setup.bottomisShaking = false; $setup.shakyTable = false; }) }, [ vue.createElementVNode("view", { class: "right-container-title-nav" }, [ vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-title-no-dark` : `right-container-title-no`) }, " ID:12345678 ", 2 /* CLASS */ ), vue.createElementVNode( "text", { class: vue.normalizeClass($props.darkFans ? `right-container-title-no-dark` : `right-container-title-no`) }, " 名称:未命名01 ", 2 /* CLASS */ ), vue.createElementVNode("view", { class: "right-icons" }, [ vue.createElementVNode("image", { class: "right-icons-img", src: `/static/index/undericons/man.png` }, null, 8, ["src"]), vue.createElementVNode( "view", { class: vue.normalizeClass($props.darkFans ? `right-icons-font-dark` : `right-icons-font`) }, "王金福", 2 /* CLASS */ ), vue.createElementVNode("image", { class: "right-icons-img-icon", src: $props.darkFans ? `/static/index/undericons/face.png` : `/static/index/undericons/facelight.png` }, null, 8, ["src"]), vue.createElementVNode("image", { class: "right-icons-img-icon", src: $props.darkFans ? `/static/index/undericons/hand.png` : `/static/index/undericons/handlight.png` }, null, 8, ["src"]), vue.createElementVNode("image", { class: "right-icons-img-icon", src: $props.darkFans ? `/static/index/undericons/out.png` : `/static/index/undericons/outlight.png` }, null, 8, ["src"]) ]), vue.withDirectives(vue.createElementVNode( "view", { class: "right-container-title-class-anhei-button", onClick: _cache[0] || (_cache[0] = ($event) => $setup.darkFanschange()) }, [ vue.createElementVNode("text", { class: "right-container-title-class-anhei" }, " 切换到暗黑模式 ") ], 512 /* NEED_PATCH */ ), [ [vue.vShow, !$props.darkFans] ]), vue.withDirectives(vue.createElementVNode( "view", { class: "right-container-title-class-anhei-button", style: vue.normalizeStyle($props.darkFans ? { backgroundColor: "#fff" } : {}), onClick: _cache[1] || (_cache[1] = ($event) => $setup.darkFanschange()) }, [ vue.createElementVNode( "text", { class: "right-container-title-class-anhei", style: vue.normalizeStyle($props.darkFans ? { color: "black" } : {}) }, " 取消暗黑模式 ", 4 /* STYLE */ ) ], 4 /* STYLE */ ), [ [vue.vShow, $props.darkFans] ]) ]), vue.createElementVNode("view", { class: "doctorsay-container-view" }, [ vue.createElementVNode("view", { class: "doctorsay-container-items" }, [ vue.createElementVNode("view", { class: "doctorsay-container-up" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.doctorsayList, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index, onClick: ($event) => $setup.changLeft(index) }, [ vue.createElementVNode( "view", { class: "doctorsay-container-card", style: vue.normalizeStyle(index === $setup.upmenuIndex ? { background: "linear-gradient(to right bottom, #00c9ff, #0076ff)" } : {}) }, [ vue.createElementVNode("image", { class: "doctorsay-container-card-img", src: index === $setup.upmenuIndex ? item.targetUrl : item.url }, null, 8, ["src"]), vue.createElementVNode( "view", { class: vue.normalizeClass(index === $setup.upmenuIndex ? `doctorsay-container-card-font-dark` : `doctorsay-container-card-font`) }, vue.toDisplayString(item.name), 3 /* TEXT, CLASS */ ) ], 4 /* STYLE */ ) ], 8, ["onClick"]); }), 128 /* KEYED_FRAGMENT */ )), vue.createElementVNode("view", null, [ vue.createElementVNode("view", { class: "doctorsay-container-card", style: { "background": "linear-gradient(135deg, #01e7be 0%, #0080dd 100%)" } }, [ vue.createElementVNode("image", { class: "doctorsay-container-card-img", src: _imports_0$1 }), vue.createElementVNode("view", { class: "doctorsay-container-card-font-dark" }, " 监控 ") ]) ]) ]), vue.createElementVNode("view", { class: "doctorsay-container-down" }, [ vue.createElementVNode("view", { class: "doctorsay-top" }, [ vue.createElementVNode("view", { class: "doctorsay-top-gun" }), vue.createElementVNode("view", { class: "doctorsay-top-font" }, "服务类型") ]), vue.createElementVNode("scroll-view", { "scroll-y": $props.canmove, class: "doctorsay-container-scroll", onScroll: $setup.handleScroll }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.downList, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index }, [ vue.createElementVNode("view", { class: "doctorsay-container-button", onTouchstart: ($event) => $setup.handleTouchStart(item.type, index, $event), onTouchmove: $setup.handleTouchMove, onTouchend: $setup.handleTouchEnd }, [ vue.createElementVNode( "text", { class: vue.normalizeClass($setup.downmenuIndex === index ? `doctorsay-container-text-target` : `doctorsay-container-text`), style: vue.normalizeStyle({ backgroundColor: item.color ? item.color : "", ...$setup.isBack ? {} : { width: "250rpx", height: "75rpx", fontSize: "30rpx", borderRadius: "10rpx" } }) }, vue.toDisplayString(item.type), 7 /* TEXT, CLASS, STYLE */ ), vue.withDirectives(vue.createElementVNode("image", { class: "doctorsay-container-button-uplight", style: vue.normalizeStyle($setup.isBack ? {} : { top: "30rpx" }), src: `/static/index/cardicons/uplight.png` }, null, 12, ["src"]), [ [vue.vShow, $setup.downmenuIndex === index] ]) ], 40, ["onTouchstart"]) ]); }), 128 /* KEYED_FRAGMENT */ )) ], 40, ["scroll-y"]) ]) ]), vue.createElementVNode("view", { class: "doctorsay-container-container" }, [ vue.createElementVNode("view", { class: "doctorsay-container-title" }, [ vue.createElementVNode("view", { class: "doctorsay-container-left" }, [ vue.createElementVNode("view", { class: "doctorsay-container-left-gun" }), vue.createElementVNode("view", { class: "doctorsay-container-left-font" }, "时间矩阵") ]), vue.createElementVNode("view", { class: "doctorsay-container-right" }, [ vue.createElementVNode("view", { class: "doctorsay-container-right-kuai-cheng" }), vue.createElementVNode("view", { class: "doctorsay-container-kuai-font" }, "日常"), vue.createElementVNode("view", { class: "doctorsay-container-right-kuai-zi" }), vue.createElementVNode("view", { class: "doctorsay-container-kuai-font" }, "周期"), (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.rightList, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { class: "doctorsay-container-button-father", key: index }, [ vue.createElementVNode("view", { class: vue.normalizeClass($setup.rightListIndex === index ? `doctorsay-container-button-target` : `doctorsay-container-button`), onClick: ($event) => $setup.rightListClick(index) }, vue.toDisplayString(item), 11, ["onClick"]) ]); }), 128 /* KEYED_FRAGMENT */ )), vue.createElementVNode("view", { class: "doctorsay-container-juzhen", onClick: $setup.routerPush }, " 预览 ") ]) ]), vue.createElementVNode("view", { class: "super-card" }, [ vue.createElementVNode("view", { class: "super-card-container" }, [ vue.createCommentVNode(" 气泡 top: `${2 * scrollTop - 253}rpx` "), vue.createElementVNode("view", { class: "boom" }, [ vue.createElementVNode( "view", { style: vue.normalizeStyle({ marginTop: `-${2 * $setup.moveDownNumber}rpx` }) }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.timearr[0].children, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index }, [ vue.withDirectives(vue.createElementVNode( "view", { class: vue.normalizeClass($setup.touchindex1 === index || $props.liang.index1 === index && !$props.canmove || $setup.flyNumber.index1 === index && $setup.shakyTable ? `boom-son-target` : `boom-son`) }, vue.toDisplayString(item.serve), 3 /* TEXT, CLASS */ ), [ [vue.vShow, item.serve] ]) ]); }), 128 /* KEYED_FRAGMENT */ )) ], 4 /* STYLE */ ) ]), vue.createElementVNode("swiper", { "disable-touch": !$props.canmove || $setup.shakyTable, current: $setup.currentNumber, class: "scroll-x", circular: "", "indicator-dots": false, onChange: $setup.changecurrentNumber, interval: 4e3, duration: 500 }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 2, 3, 4], (item, index) => { return vue.createElementVNode("swiper-item", { key: index }, [ vue.createElementVNode("view", { style: { "display": "flex", "box-shadow": "10rpx 10rpx 20rpx rgba(0, 0, 0, 0.1)", "background": "linear-gradient(to right, #c4dbf4,#c9c2ef, #c6dcf3)" } }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.timearr.slice(index * 6, (index + 1) * 6), (item0, index0) => { return vue.openBlock(), vue.createElementBlock("view", { key: index0 }, [ vue.createElementVNode( "view", { class: "super-card-time", style: vue.normalizeStyle($setup.rightListIndex ? { width: "274rpx" } : { width: "206rpx" }) }, vue.toDisplayString(item0.time + ":00"), 5 /* TEXT, STYLE */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ]), vue.createElementVNode("view", { style: { "display": "flex", "height": "calc(100% - 80rpx)" } }, [ vue.createElementVNode("scroll-view", { style: vue.normalizeStyle([{ "height": "100%" }, $setup.rightListIndex ? { width: "6700rpx" } : { width: "5000rpx" }]), "scroll-top": $setup.scrollTop, "scroll-y": $props.canmove && !$setup.shakyTable, onScroll: $setup.handleScrolltime, "show-scrollbar": false }, [ vue.createElementVNode("view", { style: { "display": "flex", "height": "100%" } }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.timearr.slice(index * 6, (index + 1) * 6), (item0, index0) => { return vue.openBlock(), vue.createElementBlock("view", { key: index0 }, [ vue.createElementVNode( "view", { class: "super-card-time-und", style: vue.normalizeStyle($setup.rightListIndex ? { width: "274rpx" } : { width: "206rpx" }) }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList(item0.children, (item1, index1) => { return vue.openBlock(), vue.createElementBlock("view", { style: { "width": "100%" }, key: index1 }, [ vue.createElementVNode("view", { class: vue.normalizeClass($setup.targetRuler.current === $setup.currentNumber && $setup.targetRuler.index0 === index0 && $setup.targetRuler.index1 === index1 ? $setup.targetRuler.index1 ? `title-time-border-big` : `title-time-border-big-top` : `super-card-time-card`), style: vue.normalizeStyle([!$setup.targetRuler.bordershow && $setup.saveRulerTime.index0 === index0 && $setup.saveRulerTime.index1 === index1 ? { zIndex: 999 } : { borderTop: "1rpx solid transparent" }, { "position": "relative" }]), id: `a${index0}_${index1}`, onClick: ($event) => $setup.rulerTouchClick(item1, index0, index1, $event), onTouchstart: ($event) => $setup.rulerTouchStart(item1, index0, index1, $event), onTouchmove: $setup.rulerTouchMove, onTouchend: _cache[2] || (_cache[2] = ($event) => $setup.rulerTouchEnd()), "data-index0": index0, "data-index1": index1 }, [ item1.value && $setup.shakyTable ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("view", { key: 0, class: "title-time-delete", onClick: vue.withModifiers(($event) => $setup.deleteItems(item1.value, index0, index1), ["stop"]) }, " - ", 8, ["onClick"])), [ [vue.vShow, $props.liang.index0 !== index0 || $props.liang.index1 !== index1 || $props.canmove] ]) : vue.createCommentVNode("v-if", true), vue.createElementVNode( "view", { class: vue.normalizeClass($setup.getClass(item1, index0, index1)), style: vue.normalizeStyle([{ "font-size": "30rpx", "overflow": "hidden" }, { animationDelay: `-${$setup.computeDelay(index0, index1).toFixed(2)}s` }]) }, [ item1.time ? vue.withDirectives((vue.openBlock(), vue.createElementBlock( "view", { key: 0, class: "title-time", style: { "margin-top": "5rpx" } }, [ vue.createElementVNode( "view", { class: "title-time-time", style: { "font-size": "30rpx" } }, vue.toDisplayString(item1.time), 1 /* TEXT */ ), vue.createElementVNode("image", { class: "title-time-button", src: item1.type == "日常" ? `/static/index/yellowbian.png` : `/static/index/puoplebian.png` }, null, 8, ["src"]), vue.createElementVNode( "view", { class: "title-time-font" }, vue.toDisplayString(item1.type), 1 /* TEXT */ ) ], 512 /* NEED_PATCH */ )), [ [vue.vShow, $props.liang.index0 !== index0 || $props.liang.index1 !== index1 || $props.canmove] ]) : vue.createCommentVNode("v-if", true), vue.withDirectives(vue.createElementVNode( "view", { style: { "margin-top": "20rpx", "font-weight": "700" } }, vue.toDisplayString($setup.splitString(item1.value)[0]), 513 /* TEXT, NEED_PATCH */ ), [ [vue.vShow, $props.liang.index0 !== index0 || $props.liang.index1 !== index1 || $props.canmove] ]), $setup.splitString(item1.value)[1] ? vue.withDirectives((vue.openBlock(), vue.createElementBlock( "view", { key: 1, class: "down-icons", style: vue.normalizeStyle(item1.type != "日常" ? { backgroundColor: `rgb(212,203,255)` } : {}) }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.splitString(item1.value).slice(1), (item2, index2) => { return vue.openBlock(), vue.createElementBlock("view", { class: "", key: index2 }, [ vue.createElementVNode( "view", { class: "icon", style: vue.normalizeStyle(item1.type != "日常" ? { backgroundColor: `rgb(123,97,255)` } : {}) }, vue.toDisplayString($setup.splitString(item1.value)[index2 + 1]), 5 /* TEXT, STYLE */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ], 4 /* STYLE */ )), [ [vue.vShow, $props.liang.index0 !== index0 || $props.liang.index1 !== index1 || $props.canmove] ]) : vue.createCommentVNode("v-if", true) ], 6 /* CLASS, STYLE */ ) ], 46, ["id", "onClick", "onTouchstart", "data-index0", "data-index1"]) ]); }), 128 /* KEYED_FRAGMENT */ )) ], 4 /* STYLE */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ]) ], 44, ["scroll-top", "scroll-y"]) ]) ]); }), 64 /* STABLE_FRAGMENT */ )) ], 40, ["disable-touch", "current"]) ]) ]), vue.createElementVNode("view", { class: "super-card-end" }, [ vue.createElementVNode("view", { class: "super-end-father" }, [ vue.createElementVNode("view", { class: "super-end-font-father" }, [ vue.createElementVNode("view", { class: "super-end-font-gun" }), vue.createElementVNode("view", { class: "super-end-font-font" }, "即时指令") ]), vue.createElementVNode("scroll-view", { "scroll-x": "", class: "super-end-items-all", "scroll-left": $setup.scrollLeft }, [ vue.createElementVNode("view", { class: "super-end-items" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.bottomItems, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index }, [ vue.createElementVNode( "view", { onTouchstart: $setup.bottomTouchStart, onTouchmove: $setup.bottomTouchMove, onTouchend: $setup.bottomTouchEnd, style: vue.normalizeStyle(item.target ? { background: item.target, transition: `all 1.5s ease-in-out` } : { transition: `all 1.5s ease-in-out` }), class: "super-end-items-father" }, [ vue.withDirectives(vue.createElementVNode("view", { class: "super-end-items-father-close-father", onClick: vue.withModifiers(($event) => $setup.deletebottom(index, item.name), ["stop"]) }, " - ", 8, ["onClick"]), [ [vue.vShow, $setup.bottomisShaking] ]), vue.createElementVNode( "view", { style: vue.normalizeStyle({ animationDelay: `-${index * 0.1}s` }), class: vue.normalizeClass($setup.bottomisShaking ? `super-end-items-img-father-active` : `super-end-items-img-father`) }, [ vue.createElementVNode("image", { class: "super-end-items-img", src: item.url }, null, 8, ["src"]) ], 6 /* CLASS, STYLE */ ), vue.createElementVNode( "view", { class: "super-end-items-font" }, vue.toDisplayString(item.name), 1 /* TEXT */ ) ], 36 /* STYLE, NEED_HYDRATION */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ]) ], 8, ["scroll-left"]) ]) ]) ]) ]), vue.createCommentVNode(" 长按的弹出层 "), vue.withDirectives(vue.createElementVNode( "view", { class: "popup-overlay", onClick: _cache[4] || (_cache[4] = ($event) => { $setup.isopen = false; $setup.flyNumber.index0 = 999; $setup.touchindex1 = -1; }) }, [ vue.createElementVNode( "view", { class: "popup-overlay-content", style: vue.normalizeStyle({ top: 2 * $setup.openY - 350 + "rpx", left: 2 * $setup.openX - 780 + "rpx", opacity: $setup.isopacity ? 1 : 0, backgroundColor: ((_b = (_a = $setup.timearr[$setup.flyNumber.index0]) == null ? void 0 : _a.children[$setup.flyNumber.index1]) == null ? void 0 : _b.type) === "日常" ? "#fffcf6" : "rgb(246, 244, 254)" }), onClick: _cache[3] || (_cache[3] = vue.withModifiers(() => { }, ["stop"])) }, [ vue.createElementVNode("view", { class: "popup-overlay-content-left" }, [ vue.createElementVNode("image", { class: "popup-overlay-content-left-img", src: `/static/index/teeth.png` }, null, 8, ["src"]), vue.createElementVNode( "text", { class: "popup-overlay-content-left-font" }, vue.toDisplayString((_d = (_c = $setup.timearr[$setup.flyNumber.index0]) == null ? void 0 : _c.children[$setup.flyNumber.index1]) == null ? void 0 : _d.value), 1 /* TEXT */ ) ]), vue.createElementVNode("view", { class: "popup-overlay-content-right" }, [ vue.createElementVNode("view", { class: "time-font" }, " 10:00 - 10:10 "), vue.createElementVNode("view", { class: "time-text" }, " 为老人提供口腔清洁器具,牙膏、牙刷及水杯,看护完成 ") ]) ], 4 /* STYLE */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.isopen] ]), vue.createCommentVNode(" 拉动松手的弹出层 "), $setup.songisopen ? (vue.openBlock(), vue.createElementBlock("view", { key: 0, class: "popup-song", onClick: _cache[11] || (_cache[11] = ($event) => $setup.songisopen = false) }, [ vue.createElementVNode( "view", { class: "popup-song-contain", style: vue.normalizeStyle({ opacity: $setup.songisopacity ? 1 : 0 }), onClick: _cache[10] || (_cache[10] = vue.withModifiers(() => { }, ["stop"])) }, [ vue.createElementVNode("view", { class: "popup-song-father" }, [ vue.createElementVNode("image", { class: "shu-up-img", src: _imports_1 }), vue.createElementVNode("view", { class: "shu-up-font" }, [ vue.createElementVNode( "view", { class: "" }, " 服务时段:" + vue.toDisplayString($setup.openValue.time + ":00"), 1 /* TEXT */ ), vue.createElementVNode("view", { style: { "margin-left": "30rpx" } }, " 护理时长:10分钟 ") ]), vue.createElementVNode("view", { class: "shu-container-left" }, [ vue.createElementVNode("view", { class: "shu-container-left-gun" }), vue.createElementVNode("view", { class: "shu-container-left-font" }, "服务指令") ]), vue.createElementVNode("view", { class: "arrayindex" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.openValue.array, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index }, [ vue.createElementVNode("view", { style: { "position": "relative", "box-shadow": "10rpx 10rpx 20rpx rgba(105, 129, 178, 0.4)" }, class: vue.normalizeClass($setup.cardsumit.op.index[2] === index ? `arrayindex-one-target` : `arrayindex-one`), onClick: ($event) => $setup.clickOp(index, item.type, item.op) }, [ vue.withDirectives(vue.createElementVNode("image", { class: "ri-img", src: $setup.cardsumit.op.index[2] !== index ? `/static/index/ridark.png` : `/static/index/ri.png` }, null, 8, ["src"]), [ [vue.vShow, !item.op] ]), vue.withDirectives(vue.createElementVNode("image", { class: "ri-img", src: $setup.cardsumit.op.index[2] == index ? `/static/index/zhoudark.png` : `/static/index/zhou.png` }, null, 8, ["src"]), [ [vue.vShow, item.op === 1] ]), vue.withDirectives(vue.createElementVNode("image", { class: "ri-img", src: $setup.cardsumit.op.index[2] == index ? `/static/index/jidark.png` : `/static/index/ji.png` }, null, 8, ["src"]), [ [vue.vShow, item.op === 2] ]), vue.createTextVNode( " " + vue.toDisplayString(item.type), 1 /* TEXT */ ) ], 10, ["onClick"]) ]); }), 128 /* KEYED_FRAGMENT */ )) ]), vue.withDirectives(vue.createElementVNode( "view", { class: "shu-container-left", style: { "margin-top": "50rpx" } }, [ vue.createElementVNode("view", { class: "shu-container-left-gun" }), vue.createElementVNode("view", { class: "shu-container-left-font" }, "开始分钟") ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.openOp != 2] ]), vue.withDirectives(vue.createElementVNode( "view", { class: "time-father" }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.timeArray, (item, index) => { return vue.createElementVNode("view", { key: index }, [ vue.withDirectives(vue.createElementVNode( "view", { class: "time-one-hui" }, vue.toDisplayString(item), 513 /* TEXT, NEED_PATCH */ ), [ [vue.vShow, Number(item) >= 50] ]), vue.withDirectives(vue.createElementVNode("view", { class: vue.normalizeClass($setup.cardsumit.startTime === item ? `time-one-target` : `time-one`), onClick: ($event) => $setup.clickTime(item) }, vue.toDisplayString(item), 11, ["onClick"]), [ [vue.vShow, Number(item) < 50] ]) ]); }), 64 /* STABLE_FRAGMENT */ )) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.openOp != 2] ]), vue.withDirectives(vue.createElementVNode( "view", { class: "shu-container-left", style: { "margin-top": "50rpx" } }, [ vue.createElementVNode("view", { class: "shu-container-left-gun" }), vue.createElementVNode("view", { class: "shu-container-left-font" }, "周期类型") ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.openOp == 1] ]), vue.withDirectives(vue.createElementVNode( "view", { class: "radio-father" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($setup.isweek ? `radio-circle-target` : `radio-circle`), onClick: _cache[5] || (_cache[5] = ($event) => { $setup.isweek = true; $setup.cardsumit.monthTime = ""; }) }, null, 2 /* CLASS */ ), vue.createElementVNode("view", { class: "radio-font", onClick: _cache[6] || (_cache[6] = ($event) => { $setup.isweek = true; $setup.cardsumit.monthTime = ""; }) }, "每周"), vue.createElementVNode( "view", { class: vue.normalizeClass(!$setup.isweek ? `radio-circle-target` : `radio-circle`), onClick: _cache[7] || (_cache[7] = ($event) => { $setup.isweek = false; $setup.cardsumit.weekTime = ""; }) }, null, 2 /* CLASS */ ), vue.createElementVNode("view", { class: "radio-font", onClick: _cache[8] || (_cache[8] = ($event) => { $setup.isweek = false; $setup.cardsumit.weekTime = ""; }) }, "每月") ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.openOp == 1] ]), vue.withDirectives(vue.createElementVNode( "view", { class: "week-father" }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.weekDays, (item, index) => { return vue.createElementVNode("view", { key: index }, [ vue.createElementVNode("view", { class: vue.normalizeClass($setup.cardsumit.weekTime === item ? `week-one-target` : `week-one`), onClick: ($event) => $setup.clickweek(item) }, vue.toDisplayString(item), 11, ["onClick"]) ]); }), 64 /* STABLE_FRAGMENT */ )) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.isweek && $setup.openOp == 1] ]), vue.withDirectives(vue.createElementVNode( "view", { class: "month-father" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.days, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index }, [ vue.createElementVNode("view", { class: vue.normalizeClass($setup.cardsumit.monthTime === item ? `month-one-target` : `month-one`), onClick: ($event) => $setup.clickmonth(item) }, vue.toDisplayString(item), 11, ["onClick"]) ]); }), 128 /* KEYED_FRAGMENT */ )) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, !$setup.isweek && $setup.openOp == 1] ]), vue.createElementVNode("view", { class: "button-father" }, [ vue.createElementVNode("view", { style: { "display": "flex" } }, [ vue.withDirectives(vue.createElementVNode( "view", { class: "button-father-right", onClick: $setup.movetoruler }, " 确定 ", 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.isblue()] ]), vue.withDirectives(vue.createElementVNode( "view", { class: "button-father-wrong" }, " 确定 ", 512 /* NEED_PATCH */ ), [ [vue.vShow, !$setup.isblue()] ]), vue.createElementVNode("view", { class: "button-father-wrong", onClick: _cache[9] || (_cache[9] = ($event) => $setup.songisopen = false), style: { "margin-left": "20rpx" } }, " 取消 ") ]) ]) ]) ], 4 /* STYLE */ ) ])) : vue.createCommentVNode("v-if", true), vue.createCommentVNode(" 删除表格的的弹出层 "), vue.withDirectives(vue.createElementVNode( "view", { class: "popup-delete", onClick: _cache[15] || (_cache[15] = ($event) => $setup.deleteisopen = false) }, [ vue.createElementVNode( "view", { class: "popup-delete-content", style: vue.normalizeStyle({ opacity: $setup.deleteisopacity ? 1 : 0 }), onClick: _cache[14] || (_cache[14] = vue.withModifiers(() => { }, ["stop"])) }, [ vue.createElementVNode("image", { class: "popup-delete-img", src: _imports_2 }), vue.createElementVNode( "view", { class: "popup-delete-text" }, " 确定要删除 " + vue.toDisplayString($setup.deletename) + " 吗? ", 1 /* TEXT */ ), vue.createElementVNode("view", { class: "popup-delete-button" }, [ vue.createElementVNode("view", { class: "popup-delete-button-right", onClick: _cache[12] || (_cache[12] = ($event) => $setup.deleteisopen = false) }, " 取消 "), vue.createElementVNode("view", { class: "popup-delete-button-left", onClick: _cache[13] || (_cache[13] = ($event) => $setup.deleteRuler($setup.deleteindex[0], $setup.deleteindex[1])) }, " 确定 ") ]) ], 4 /* STYLE */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.deleteisopen] ]), vue.createCommentVNode(" 删除下方菜单的的弹出层 "), vue.withDirectives(vue.createElementVNode( "view", { class: "popup-delete", onClick: _cache[19] || (_cache[19] = ($event) => $setup.deletedownisopen = false) }, [ vue.createElementVNode( "view", { class: "popup-delete-content", style: vue.normalizeStyle({ opacity: $setup.deletedownisopacity ? 1 : 0 }), onClick: _cache[18] || (_cache[18] = vue.withModifiers(() => { }, ["stop"])) }, [ vue.createElementVNode("image", { class: "popup-delete-img", src: _imports_2 }), vue.createElementVNode( "view", { class: "popup-delete-text" }, " 确定要删除 " + vue.toDisplayString($setup.deletename) + " 吗? ", 1 /* TEXT */ ), vue.createElementVNode("view", { class: "popup-delete-button" }, [ vue.createElementVNode("view", { class: "popup-delete-button-right", onClick: _cache[16] || (_cache[16] = ($event) => $setup.deletedownisopen = false) }, " 取消 "), vue.createElementVNode("view", { class: "popup-delete-button-left", onClick: _cache[17] || (_cache[17] = ($event) => { $setup.bottomItems.splice($setup.deletebottomindex, 1); $setup.deletedownisopen = false; }) }, " 确定 ") ]) ], 4 /* STYLE */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.deletedownisopen] ]) ], 4 /* STYLE */ ) ], 2112 /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */ ); } const rightItemssecond = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$3], ["__scopeId", "data-v-337bb5da"], ["__file", "D:/hldy_app/component/rightItemssecond/index.vue"]]); const _sfc_main$3 = /* @__PURE__ */ vue.defineComponent({ __name: "index", setup(__props, { expose: __expose }) { __expose(); const iconList = vue.ref([ { url: "/static/index/lefticon/index.png", targetUrl: "/static/index/lefticontarget/blueindex.png" }, { url: "/static/index/lefticon/nurse.png", targetUrl: "/static/index/lefticontarget/bluenurse.png" }, { url: "/static/index/lefticon/doctor.png", targetUrl: "/static/index/lefticontarget/bluedoctor.png" }, { url: "/static/index/lefticon/give.png", targetUrl: "/static/index/lefticontarget/givedark.png" }, { url: "/static/index/lefticon/wifi.png", targetUrl: "/static/index/lefticontarget/bluewifi.png" }, { url: "/static/index/lefticon/back.png", targetUrl: "/static/index/lefticontarget/blueback.png" } ]); const menuIndex = vue.ref(0); const menuIndexshow = vue.ref(false); const menuIndexshowsecond = vue.ref(false); const darkFans = vue.ref(false); const roomTar = vue.ref([]); const firstcurrentIndex = vue.ref(0); const firstcurrentIndexup = vue.ref(0); const secondcurrentIndexup = vue.ref(0); const secondcurrentIndex = vue.ref(0); const thirdcurrentIndex = vue.ref(0); const darkchange = (res) => { darkFans.value = res; }; const changeMenu = (index) => { if (index === 3) { menuIndexshow.value = false; menuIndexshowsecond.value = false; uni.navigateTo({ url: `/pages/somethingmove/index?darkFans=${darkFans.value}`, animationType: "slide-in-right", animationDuration: 400 // 设置动画时长为300毫秒, // 动画持续时间,单位为毫秒 }); return; } menuIndex.value = index; menuIndexshow.value = false; menuIndexshowsecond.value = false; setTimeout(() => { switch (index) { case 0: menuIndexshow.value = true; break; case 1: menuIndexshowsecond.value = true; break; } }, 50); }; const clientX = vue.ref(0); const clientY = vue.ref(0); const savename = vue.ref(""); const canmove = vue.ref(true); const indexNumber = vue.ref({ index0: 999, index1: 999 }); const canTrigger = vue.ref(true); const getxyrel = (event) => { var _a; const touch = event.touches[0]; clientX.value = 2 * (Math.floor(touch.clientX) - 100); clientY.value = 2 * (Math.floor(touch.clientY) - 55); const translateX = Math.floor(touch.clientX) - 50; const translateY = Math.floor(touch.clientY) - 25; const clickedItem = fangkuaiValue.value.find((item) => { return translateX >= Math.floor(item.left) && translateX <= Math.floor(item.right) && translateY >= Math.floor(item.top) && translateY <= Math.floor(item.bottom); }); if (clickedItem) { const { index0, index1 } = clickedItem.dataset; indexNumber.value.index0 = index0; indexNumber.value.index1 = index1; if (clientX.value > 2050 && canTrigger.value) { (_a = ruler.value) == null ? void 0 : _a.nextItems(); canTrigger.value = false; setTimeout(() => { canTrigger.value = true; }, 1e3); } } else { indexNumber.value.index0 = 999; indexNumber.value.index1 = 999; } }; const getxy = throttle(getxyrel, 10); const fangkuaiValue = vue.ref([]); const openname = (res, fangkuai) => { savename.value = res; canmove.value = false; fangkuaiValue.value = fangkuai; }; const changefangkuang = (fangkuang) => { fangkuaiValue.value = fangkuang; formatAppLog("log", "at pages/index/index.vue:171", "!!!!", fangkuaiValue.value); }; const saveruler = vue.ref({}); const openruler = (res, fangkuai) => { saveruler.value = res; canmove.value = false; fangkuaiValue.value = fangkuai; }; const closename = () => { savename.value = ""; canmove.value = true; }; const ruler = vue.ref(null); const cleanall = () => { var _a, _b; clientX.value = 9999; clientY.value = 9999; canmove.value = true; indexNumber.value = { index0: 999, index1: 999 }; if (savename.value) { (_a = ruler.value) == null ? void 0 : _a.rulerEnd(savename.value); } else if (saveruler.value.type) { (_b = ruler.value) == null ? void 0 : _b.rulerMoveEnd(saveruler.value); } savename.value = ""; saveruler.value = {}; }; function throttle(fn, delay) { let lastExecutionTime = 0; return function(...args) { const now = Date.now(); if (now - lastExecutionTime >= delay) { lastExecutionTime = now; fn.apply(this, args); } }; } function splitString(str) { let result = []; let remainingStr = str; let regex = /([^((]*)[((]([^))]+)[))]/; while (regex.test(remainingStr)) { let match = remainingStr.match(regex); if (match) { if (match[1].trim()) { result.push(match[1].trim()); } if (match[2].trim()) { result.push(match[2].trim()); } remainingStr = remainingStr.replace(match[0], "").trim(); } } if (remainingStr.trim()) { result.push(remainingStr.trim()); } return result; } onShow(() => { setTimeout(() => { changeMenu(menuIndex.value); }, 50); }); const __returned__ = { iconList, menuIndex, menuIndexshow, menuIndexshowsecond, darkFans, roomTar, firstcurrentIndex, firstcurrentIndexup, secondcurrentIndexup, secondcurrentIndex, thirdcurrentIndex, darkchange, changeMenu, clientX, clientY, savename, canmove, indexNumber, canTrigger, getxyrel, getxy, fangkuaiValue, openname, changefangkuang, saveruler, openruler, closename, ruler, cleanall, throttle, splitString, rightItemsfirst, rightItemssecond }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); const _imports_0 = "/static/index/oldman.png"; function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock( "view", { class: vue.normalizeClass($setup.darkFans ? `darkbackgroundContainer` : `backgroundContainer`), onTouchmove: _cache[0] || (_cache[0] = (...args) => $setup.getxy && $setup.getxy(...args)), onTouchend: $setup.cleanall }, [ vue.withDirectives(vue.createElementVNode( "view", { class: "move-font", style: vue.normalizeStyle({ top: `${$setup.clientY}rpx`, left: `${$setup.clientX}rpx` }) }, vue.toDisplayString($setup.savename), 5 /* TEXT, STYLE */ ), [ [vue.vShow, $setup.savename && $setup.clientX] ]), $setup.saveruler.type ? (vue.openBlock(), vue.createElementBlock( "view", { key: 0, class: vue.normalizeClass($setup.saveruler.type == "日常" ? `title-time-border-yellow` : `title-time-border-pouple`), style: vue.normalizeStyle([{ top: `${$setup.clientY}rpx`, left: `${$setup.clientX}rpx` }, { "font-size": "30rpx", "overflow": "hidden" }]) }, [ vue.withDirectives(vue.createElementVNode( "view", { class: "title-time", style: { "margin-top": "5rpx" } }, [ vue.createElementVNode( "view", { class: "title-time-time", style: { "font-size": "30rpx" } }, vue.toDisplayString($setup.saveruler.time), 1 /* TEXT */ ), vue.createElementVNode("image", { class: "title-time-button", src: $setup.saveruler.type == "日常" ? `/static/index/yellowbian.png` : `/static/index/puoplebian.png` }, null, 8, ["src"]), vue.createElementVNode( "view", { class: "title-time-font" }, vue.toDisplayString($setup.saveruler.type), 1 /* TEXT */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.saveruler.time] ]), vue.createElementVNode( "view", { style: { "margin-top": "20rpx", "font-weight": "700" } }, vue.toDisplayString($setup.splitString($setup.saveruler.value)[0]), 1 /* TEXT */ ), vue.withDirectives(vue.createElementVNode( "view", { class: "down-icons", style: vue.normalizeStyle($setup.saveruler.type != "日常" ? { backgroundColor: `rgb(212,203,255)` } : {}) }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.splitString($setup.saveruler.value).slice(1), (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { class: "", key: index }, [ vue.createElementVNode( "view", { class: "icon", style: vue.normalizeStyle($setup.saveruler.type != "日常" ? { backgroundColor: `rgb(123,97,255)` } : {}) }, vue.toDisplayString($setup.splitString($setup.saveruler.value)[1]), 5 /* TEXT, STYLE */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ], 4 /* STYLE */ ), [ [vue.vShow, $setup.splitString($setup.saveruler.value)[1]] ]) ], 6 /* CLASS, STYLE */ )) : vue.createCommentVNode("v-if", true), vue.createElementVNode("view", { class: "left-container" }, [ vue.createElementVNode("view", { class: "left-head" }, [ vue.createElementVNode("image", { class: "left-head-img", src: _imports_0 }), vue.createElementVNode( "text", { class: vue.normalizeClass($setup.darkFans ? `left-head-font-dark` : `left-head-font`) }, " 王金凤 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "left-img-container" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.iconList, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index, class: "blue-circle-pos" }, [ vue.withDirectives(vue.createElementVNode( "view", { class: "blue-circle" }, [ vue.createElementVNode("image", { class: "blue-circle-size", src: `/static/index/ray.png` }, null, 8, ["src"]) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, index === $setup.menuIndex] ]), vue.createElementVNode("image", { class: "left-img", src: index === $setup.menuIndex ? item.targetUrl : item.url, onClick: ($event) => $setup.changeMenu(index) }, null, 8, ["src", "onClick"]) ]); }), 128 /* KEYED_FRAGMENT */ )) ]) ]), vue.createCommentVNode(" 主页 "), vue.withDirectives(vue.createVNode($setup["rightItemsfirst"], { isshow: $setup.menuIndexshow, darkFans: $setup.darkFans, onDarkchange: $setup.darkchange }, null, 8, ["isshow", "darkFans"]), [ [vue.vShow, !$setup.menuIndex] ]), vue.createCommentVNode(" 超凶表格 "), vue.withDirectives(vue.createVNode($setup["rightItemssecond"], { ref: "ruler", liang: $setup.indexNumber, isshow: $setup.menuIndexshowsecond, canmove: $setup.canmove, darkFans: $setup.darkFans, onDarkchange: $setup.darkchange, onSavename: $setup.openname, onSaveruler: $setup.openruler, onChangefangkuang: $setup.changefangkuang, onCleanname: $setup.closename }, null, 8, ["liang", "isshow", "canmove", "darkFans"]), [ [vue.vShow, $setup.menuIndex == 1] ]) ], 34 /* CLASS, NEED_HYDRATION */ ); } const PagesIndexIndex = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["render", _sfc_render$2], ["__scopeId", "data-v-1cf27b2a"], ["__file", "D:/hldy_app/pages/index/index.vue"]]); const _sfc_main$2 = { data() { return { startX: 0, startY: 0, isDragging: false }; }, methods: { // 手指触摸开始 onTouchStart(e) { this.startX = e.touches[0].clientX; this.startY = e.touches[0].clientY; this.isDragging = false; }, // 手指滑动 onTouchMove(e) { const moveX = e.touches[0].clientX - this.startX; const moveY = e.touches[0].clientY - this.startY; if (Math.abs(moveX) > Math.abs(moveY)) { this.isDragging = true; } else { this.isDragging = true; } if (this.isDragging) { e.preventDefault(); } }, // 手指抬起 onTouchEnd() { this.isDragging = false; } } }; function _sfc_render$1(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock( "view", { class: "container", onTouchstart: _cache[0] || (_cache[0] = (...args) => $options.onTouchStart && $options.onTouchStart(...args)), onTouchmove: _cache[1] || (_cache[1] = (...args) => $options.onTouchMove && $options.onTouchMove(...args)), onTouchend: _cache[2] || (_cache[2] = (...args) => $options.onTouchEnd && $options.onTouchEnd(...args)) }, [ vue.createElementVNode("swiper", { class: "swiper", "indicator-dots": "true", autoplay: "true", interval: "3000", duration: "500" }, [ vue.createElementVNode("swiper-item", null, " 1 "), vue.createElementVNode("swiper-item", null, " 2 "), vue.createElementVNode("swiper-item", null, " 3 ") ]) ], 32 /* NEED_HYDRATION */ ); } const PagesLoginLogin = /* @__PURE__ */ _export_sfc(_sfc_main$2, [["render", _sfc_render$1], ["__scopeId", "data-v-e4e4508d"], ["__file", "D:/hldy_app/pages/login/login.vue"]]); const _sfc_main$1 = /* @__PURE__ */ vue.defineComponent({ __name: "index", setup(__props, { expose: __expose }) { __expose(); const darkFans = vue.ref(false); const timearr = vue.ref([]); const buttonArray = vue.ref(["全部", "日常", "周期"]); const buttonTarget = vue.ref(0); const getClass = (item, index0, index1) => { if (item.type === "日常") { return "title-time-border-yellow"; } else if (item.type) { return "title-time-border-pouple"; } return "title-time-border"; }; const moveDownNumber = vue.ref(0); function handleScrolltime(e) { let num = e.detail.scrollTop; let formattedNum = parseFloat(num.toFixed(2)); moveDownNumber.value = formattedNum; } const getClassItem = (index) => { if (buttonTarget.value !== index) { return `titlebutton`; } else { switch (index) { case 0: return `titlebutton-target`; case 1: return `titlebutton-target-yellow`; case 2: return `titlebutton-target-pouple`; } } }; function splitString(str) { let result = []; let remainingStr = str; let regex = /([^((]*)[((]([^))]+)[))]/; while (regex.test(remainingStr)) { let match = remainingStr.match(regex); if (match) { if (match[1].trim()) { result.push(match[1].trim()); } if (match[2].trim()) { result.push(match[2].trim()); } remainingStr = remainingStr.replace(match[0], "").trim(); } } if (remainingStr.trim()) { result.push(remainingStr.trim()); } return result; } const scrollLeft = vue.ref(0); const changetimearr = vue.ref([]); onLoad((options) => { if (options.currentNumber) { scrollLeft.value = options.currentNumber * 745; } timearr.value = uni.getStorageSync("timearr"); if (timearr.value[0].children.length < 8) { timearr.value.forEach((element) => { while (element.children.length < 8) { element.children.push({ value: "" }); } }); } changetimearr.value = JSON.parse(JSON.stringify(timearr.value)); }); const openX = vue.ref(0); const openY = vue.ref(0); const isopen = vue.ref(false); const isopacity = vue.ref(false); const clickX = vue.ref(-1); const clickY = vue.ref(-1); const rulerTouchClick = (item, index0, index1, e) => { if (item.value) { clickX.value = index0; clickY.value = index1; const query = uni.createSelectorQuery(); query.selectAll(".super-card-time-card").boundingClientRect((data) => { data.forEach(async (res) => { if (res.dataset.index0 == index0 && res.dataset.index1 == index1) { if (res.left < 500) { openX.value = Math.floor(res.left) + 510; } else { openX.value = Math.floor(res.left) - 10; } if (res.top < 300) { openY.value = Math.floor(res.top) + 250; } else { openY.value = Math.floor(res.top); } await vue.nextTick(); isopen.value = true; isopacity.value = false; setTimeout(() => { isopacity.value = true; }, 100); } }); }).exec(); } }; const rulerTouchStart = () => { }; const rulerTouchMove = () => { }; const rulerTouchEnd = () => { }; const routerBack = () => { uni.navigateBack(); }; const closeIsOpen = (event) => { const touch = event.touches[0]; let clientX = Math.floor(touch.clientX); let clientY = Math.floor(touch.clientY); const query = uni.createSelectorQuery(); query.selectAll(".super-card-time-card").boundingClientRect((data) => { data.forEach(async (res) => { if (res.dataset.index0 == clickX.value && res.dataset.index1 == clickY.value) { if (clientX >= Math.floor(res.left) && clientX <= Math.floor(res.right) && clientY >= Math.floor(res.top) && clientY <= Math.floor(res.bottom)) { uni.navigateBack({ delta: 1, success: () => { uni.$emit("where", { index0: clickX.value, index1: clickY.value }); } }); } } }); }).exec(); setTimeout(() => { isopen.value = false; clickX.value = -1; clickY.value = -1; }, 100); }; const changeTarget = (index) => { if (buttonTarget.value !== index) { changetimearr.value = []; buttonTarget.value = index; switch (index) { case 0: changetimearr.value = JSON.parse(JSON.stringify(timearr.value)); break; case 1: changetimearr.value = JSON.parse(JSON.stringify(timearr.value)); changetimearr.value.forEach((element0) => { element0.children.forEach((element1) => { if (element1.value && element1.type !== "日常") { element1.value = ""; element1.serve = ""; element1.type = ""; element1.time = ""; } }); }); break; case 2: changetimearr.value = JSON.parse(JSON.stringify(timearr.value)); changetimearr.value.forEach((element0) => { element0.children.forEach((element1) => { if (element1.value && element1.type === "日常") { element1.value = ""; element1.serve = ""; element1.type = ""; element1.time = ""; } }); }); break; } } }; const __returned__ = { darkFans, timearr, buttonArray, buttonTarget, getClass, moveDownNumber, handleScrolltime, getClassItem, splitString, scrollLeft, changetimearr, openX, openY, isopen, isopacity, clickX, clickY, rulerTouchClick, rulerTouchStart, rulerTouchMove, rulerTouchEnd, routerBack, closeIsOpen, changeTarget }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); function _sfc_render(_ctx, _cache, $props, $setup, $data, $options) { var _a, _b; return vue.openBlock(), vue.createElementBlock("view", { class: "doctorsay-container-container" }, [ vue.createElementVNode("view", { class: "doctorsay-container-title" }, [ vue.createElementVNode("view", { class: "doctorsay-container-left" }, [ vue.createElementVNode("view", { class: "doctorsay-container-left-gun" }), vue.createElementVNode("view", { class: "doctorsay-container-left-font" }, "时间矩阵") ]), vue.createElementVNode("view", { class: "doctorsay-container-right" }, [ vue.createElementVNode("view", { class: "titlebutton-father" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.buttonArray, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index }, [ vue.createElementVNode("view", { class: vue.normalizeClass($setup.getClassItem(index)), onClick: ($event) => $setup.changeTarget(index) }, vue.toDisplayString(item), 11, ["onClick"]) ]); }), 128 /* KEYED_FRAGMENT */ )) ]), vue.createElementVNode("view", { class: "doctorsay-container-right-kuai-cheng" }), vue.createElementVNode("view", { class: "doctorsay-container-kuai-font" }, "日常"), vue.createElementVNode("view", { class: "doctorsay-container-right-kuai-zi" }), vue.createElementVNode("view", { class: "doctorsay-container-kuai-font" }, "周期"), vue.createElementVNode("view", { class: "doctorsay-container-juzhen", onClick: $setup.routerBack }, " 返回 ") ]) ]), vue.createElementVNode("view", { class: "super-card" }, [ vue.createElementVNode("view", { class: "super-card-container" }, [ vue.createElementVNode("view", { class: "boom" }, [ vue.createElementVNode( "view", { style: vue.normalizeStyle({ marginTop: `-${2 * $setup.moveDownNumber}rpx` }) }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.timearr[0].children, (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { key: index }, [ vue.withDirectives(vue.createElementVNode( "view", { class: vue.normalizeClass($setup.clickY === index ? `boom-son-target` : `boom-son`) }, vue.toDisplayString(item.serve), 3 /* TEXT, CLASS */ ), [ [vue.vShow, item.serve] ]) ]); }), 128 /* KEYED_FRAGMENT */ )) ], 4 /* STYLE */ ) ]), vue.createElementVNode("scroll-view", { style: { "height": "100%", "width": "100%" }, "scroll-left": $setup.scrollLeft, "scroll-x": "", "show-scrollbar": false }, [ vue.createElementVNode("view", { style: { "display": "flex", "width": "5945rpx", "box-shadow": "10rpx 10rpx 20rpx rgba(0, 0, 0, 0.1)", "background": "linear-gradient(to right, #c4dbf4,#c9c2ef, #c6dcf3)" } }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.timearr, (item0, index0) => { return vue.openBlock(), vue.createElementBlock("view", { key: index0 }, [ vue.createElementVNode( "view", { class: "super-card-time" }, vue.toDisplayString(item0.time), 1 /* TEXT */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ]), vue.createElementVNode("view", { style: { "display": "flex", "height": "calc(100% - 80rpx)", "width": "5945rpx" } }, [ vue.createElementVNode( "scroll-view", { "scroll-y": "", "show-scrollbar": false, onScroll: $setup.handleScrolltime }, [ vue.createElementVNode("view", { style: { "display": "flex", "height": "100%" } }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.changetimearr, (item0, index0) => { return vue.openBlock(), vue.createElementBlock("view", { key: index0 }, [ vue.createElementVNode("view", { class: "super-card-time-und" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList(item0.children, (item1, index1) => { return vue.openBlock(), vue.createElementBlock("view", { style: { "width": "100%" }, key: index1 }, [ vue.createElementVNode("view", { class: vue.normalizeClass([$setup.clickX === index0 && $setup.clickY === index1 ? `title-time-border-blue` : ``, "super-card-time-card"]), style: { "position": "relative" }, onClick: ($event) => $setup.rulerTouchClick(item1, index0, index1, $event), onTouchstart: _cache[0] || (_cache[0] = ($event) => $setup.rulerTouchStart()), onTouchmove: _cache[1] || (_cache[1] = ($event) => $setup.rulerTouchMove()), onTouchend: _cache[2] || (_cache[2] = ($event) => $setup.rulerTouchEnd()), "data-index0": index0, "data-index1": index1 }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($setup.getClass(item1, index0, index1)), style: { "font-size": "30rpx", "overflow": "hidden" } }, [ item1.time ? (vue.openBlock(), vue.createElementBlock("view", { key: 0, class: "title-time", style: { "margin-top": "0rpx" } }, [ vue.createElementVNode( "view", { class: "title-time-time", style: { "font-size": "25rpx" } }, vue.toDisplayString(item1.time), 1 /* TEXT */ ), vue.createElementVNode("image", { class: "title-time-button", src: item1.type == "日常" ? `/static/index/yellowbian.png` : `/static/index/puoplebian.png` }, null, 8, ["src"]), vue.createElementVNode( "view", { class: "title-time-font" }, vue.toDisplayString(item1.type), 1 /* TEXT */ ) ])) : vue.createCommentVNode("v-if", true), vue.createElementVNode( "view", { style: vue.normalizeStyle([$setup.splitString(item1.value)[1] ? {} : { marginTop: `20rpx` }, { "font-weight": "700", "font-size": "24rpx" }]) }, vue.toDisplayString($setup.splitString(item1.value)[0]), 5 /* TEXT, STYLE */ ), $setup.splitString(item1.value)[1] ? (vue.openBlock(), vue.createElementBlock( "view", { key: 1, class: "down-icons", style: vue.normalizeStyle(item1.type != "日常" ? { backgroundColor: `rgb(212,203,255)` } : {}) }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.splitString(item1.value).slice(1), (item, index) => { return vue.openBlock(), vue.createElementBlock("view", { class: "", key: index }, [ vue.createElementVNode( "view", { class: "icon", style: vue.normalizeStyle(item1.type != "日常" ? { backgroundColor: `rgb(123,97,255)` } : {}) }, vue.toDisplayString($setup.splitString(item1.value)[index + 1]), 5 /* TEXT, STYLE */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ], 4 /* STYLE */ )) : vue.createCommentVNode("v-if", true) ], 2 /* CLASS */ ) ], 42, ["onClick", "data-index0", "data-index1"]) ]); }), 128 /* KEYED_FRAGMENT */ )) ]) ]); }), 128 /* KEYED_FRAGMENT */ )) ]) ], 32 /* NEED_HYDRATION */ ) ]) ], 8, ["scroll-left"]) ]) ]), vue.createCommentVNode(" 长按的弹出层` "), vue.withDirectives(vue.createElementVNode( "view", { class: "popup-overlay", onClick: $setup.closeIsOpen }, [ vue.createElementVNode( "view", { class: "popup-overlay-content", style: vue.normalizeStyle({ top: 2 * $setup.openY - 350 + "rpx", left: 2 * $setup.openX - 780 + "rpx", opacity: $setup.isopacity ? 1 : 0, backgroundColor: ((_b = (_a = $setup.timearr[$setup.clickY]) == null ? void 0 : _a.children[$setup.clickX]) == null ? void 0 : _b.type) === "日常" ? "#fffcf6" : "rgb(246, 244, 254)" }), onClick: _cache[3] || (_cache[3] = vue.withModifiers(() => { }, ["stop"])) }, [ vue.createElementVNode("view", { class: "popup-overlay-content-left" }, [ vue.createElementVNode("image", { class: "popup-overlay-content-left-img", src: `/static/index/teeth.png` }, null, 8, ["src"]), vue.createElementVNode("text", { class: "popup-overlay-content-left-font" }, " 占个位置 ") ]), vue.createElementVNode("view", { class: "popup-overlay-content-right" }, [ vue.createElementVNode("view", { class: "time-font" }, " 10:00 - 10:10 "), vue.createElementVNode("view", { class: "time-text" }, " 为老人提供口腔清洁器具,牙膏、牙刷及水杯,看护完成 ") ]) ], 4 /* STYLE */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.isopen] ]) ]); } const PagesTimeMatrixIndex = /* @__PURE__ */ _export_sfc(_sfc_main$1, [["render", _sfc_render], ["__scopeId", "data-v-11ec1ae8"], ["__file", "D:/hldy_app/pages/timeMatrix/index.vue"]]); __definePage("pages/index/index", PagesIndexIndex); __definePage("pages/login/login", PagesLoginLogin); __definePage("pages/timeMatrix/index", PagesTimeMatrixIndex); const _sfc_main = { onLaunch: function() { formatAppLog("log", "at App.vue:4", "App Launch"); }, onShow: function() { formatAppLog("log", "at App.vue:7", "App Show"); }, onHide: function() { formatAppLog("log", "at App.vue:10", "App Hide"); } }; const App = /* @__PURE__ */ _export_sfc(_sfc_main, [["__file", "D:/hldy_app/App.vue"]]); function createApp() { const app = vue.createVueApp(App); return { app }; } const { app: __app__, Vuex: __Vuex__, Pinia: __Pinia__ } = createApp(); uni.Vuex = __Vuex__; uni.Pinia = __Pinia__; __app__.provide("__globalStyles", __uniConfig.styles); __app__._component.mpType = "app"; __app__._component.render = () => { }; __app__.mount("#app"); })(Vue);