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]); } } function resolveEasycom(component, easycom) { return typeof component === "string" ? easycom : component; } 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$l = { name: "ZyUpgrade", props: { theme: { //主题,目前支持green,pink,blue,yellow,red type: String, default: "green" }, updateurl: { //升级检测url,全路径 type: String, default: "" }, h5preview: { //H5界面下是否预览升级 type: Boolean, default: false }, oldversion: { //如果是H5,为了方便测试,可以传入一个旧版本号进来。 type: String, default: "" }, oldcode: { //如果是H5,为了方便测试,可以传一个旧版本的code进来。 type: Number, default: 0 }, appstoreflag: { //是否启用appstore升级,如果启用,由服务端返回appstore的地址 type: Boolean, default: false }, noticeflag: { //是否通知主界面无需更新 type: Boolean, default: false }, autocheckupdate: { //是否页面截入时就判断升级 type: Boolean, default: true } }, data() { return { update_flag: false, //点击升级按钮后,显示进度条 dshow: false, update_process: 0, downloadTask: [], updated2version: "", version_url: "", update_tips: "", forceupgrade: false, currentversion: this.oldversion, versionname: "", vesioncode: this.oldcode, wgt_flag: 0, wgt_url: "", size: 0, //开启gzip等情形下,获取不到安装包大小,可以服务端返回安装包大小 header: { Authorization: uni.getStorageSync("token") || "token" } }; }, mounted() { let app_flag = false; app_flag = true; if ((this.h5preview || app_flag) && this.autocheckupdate) { this.check_update(); } }, computed: { version() { let retversion = ""; retversion = this.currentversion + (this.currentversion != "" && this.updated2version != "" ? "->" : "") + this.updated2version; return retversion; } }, methods: { //检测升级 check_update() { let that = this; plus.runtime.getProperty(plus.runtime.appid, function(widgetInfo) { that.currentversion = widgetInfo.version; that.versionname = widgetInfo.name; that.versioncode = widgetInfo.versionCode; that.updatebusiness(that); }); }, updatebusiness: function(that) { uni.request({ url: `http://smartnu.blxinchuang.com/nursing-unit/api/pad/versionUpdate?platform=1&version=${that.currentversion}`, method: "GET", dataType: "json", success: (res) => { if (res.data.code == 100) { if (res.data.data.update_url) { that.dshow = true; that.update_tips = res.data.data.update_tips; that.forceupgrade = res.data.data.forceupdate == 1; that.version_url = res.data.data.update_url; that.updated2version = res.data.data.version; that.wgt_flag = res.data.data.wgt_flag; that.wgt_url = res.data.data.wgt_url; that.size = res.data.data.size; that.getnewbanben(); } } else { uni.showToast({ title: "请求升级出错:" + data.msg, icon: "none" }); } }, fail() { this.loading = false; } }); }, getnewbanben: function() { this.$emit("chuandinew", this.updated2version); }, //点击开始升级按钮,开始升级 upgrade_checked: function() { uni.removeStorageSync("token"); this.update_flag = true; this.updateversion(); }, //点击取消升级按钮,取消升级 upgrade_cancel: function() { this.dshow = false; }, //升级过程中,点击中断升级按钮,中断升级 upgrade_break: function() { this.downloadTask.abort(); this.update_flag = false; }, //升级下载apk安装包的具体处理业务逻辑 updateversion: function() { let platform = uni.getSystemInfoSync().platform; let that = this; if (platform == "ios" && this.appstoreflag && that.wgt_flag != 1) { that.dshow = false; plus.runtime.launchApplication({ action: that.version_url }, function(e) { uni.showToast({ title: "打开appstore失败", icon: "none" }); }); } else { let that2 = this; let downloadurl = that2.wgt_flag == 1 ? that2.wgt_url : that2.version_url; let targetUrl = "http://smartnu.blxinchuang.com/nursing-unit/sys/common/static/" + downloadurl; formatAppLog("log", "at component/zy-upgrade/zy-upgrade.vue:205", "下载地址:" + targetUrl); this.update_confirm = true; this.downloadTask = uni.downloadFile({ url: targetUrl, header: this.header, success: function(res) { if (res.statusCode == 200) { plus.runtime.install(res.tempFilePath, { force: false }, function() { plus.runtime.restart(); }, function(e) { formatAppLog("error", "at component/zy-upgrade/zy-upgrade.vue:220", "install fail...", JSON.stringify(e)); uni.showToast({ title: "升级失败", icon: "none" }); }); } else { uni.showToast({ title: "下载失败,网络错误", icon: "none" }); } }, fail: function(e) { uni.showToast({ title: "下载失败:" + e.errMsg, icon: "none" }); this.update_flag = false; }, complete: function() { } }); this.downloadTask.onProgressUpdate(function(res) { that2.update_process = res.progress; if (res.progress == Infinity) { let progress = res.totalBytesWritten / that2.size * 100; if (progress > 100) { progress = 100; } that2.update_process = progress; } }); } } } }; function _sfc_render$k(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock( "view", { class: vue.normalizeClass(["zy-modal", $data.dshow ? "show" : ""]) }, [ vue.createElementVNode("view", { class: "zy-dialog", style: { "background-color": "transparent" } }, [ vue.createElementVNode( "view", { class: vue.normalizeClass(["padding-top text-white", "zy-upgrade-topbg-" + $props.theme]) }, [ vue.createElementVNode("view", null, [ vue.createElementVNode("text", { class: "zy-upgrade-title" }, " 发现新版本 ") ]), vue.createElementVNode( "text", { class: "flex-wrap" }, vue.toDisplayString($options.version), 1 /* TEXT */ ) ], 2 /* CLASS */ ), vue.createElementVNode("view", { class: "padding-xl bg-white text-left" }, [ !$data.update_flag ? (vue.openBlock(), vue.createElementBlock("scroll-view", { key: 0, style: { "max-height": "200rpx" }, "scroll-y": "auto" }, [ vue.createElementVNode( "text", null, vue.toDisplayString($data.update_tips), 1 /* TEXT */ ) ])) : vue.createCommentVNode("v-if", true), $data.update_flag ? (vue.openBlock(), vue.createElementBlock("view", { key: 1, class: "zy-progress radius striped active" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass("bg-" + $props.theme), style: vue.normalizeStyle("width: " + $data.update_process + "%;") }, vue.toDisplayString($data.update_process), 7 /* TEXT, CLASS, STYLE */ ) ])) : vue.createCommentVNode("v-if", true) ]), vue.createElementVNode("view", { class: "zy-bar bg-white justify-end" }, [ !$data.update_flag ? (vue.openBlock(), vue.createElementBlock("view", { key: 0, class: "action" }, [ vue.createElementVNode( "button", { class: vue.normalizeClass(["zy-btn", "bg-" + $props.theme]), onClick: _cache[0] || (_cache[0] = (...args) => $options.upgrade_checked && $options.upgrade_checked(...args)) }, "确认升级", 2 /* CLASS */ ), !$data.forceupgrade ? (vue.openBlock(), vue.createElementBlock( "button", { key: 0, class: vue.normalizeClass(["zy-btn margin-left", "line-" + $props.theme]), onClick: _cache[1] || (_cache[1] = (...args) => $options.upgrade_cancel && $options.upgrade_cancel(...args)) }, "取消升级", 2 /* CLASS */ )) : vue.createCommentVNode("v-if", true) ])) : vue.createCommentVNode("v-if", true), $data.update_flag && !$data.forceupgrade ? (vue.openBlock(), vue.createElementBlock("view", { key: 1, class: "action text-center" }, [ vue.createElementVNode( "button", { class: vue.normalizeClass(["zy-btn", "bg-" + $props.theme]), onClick: _cache[2] || (_cache[2] = (...args) => $options.upgrade_break && $options.upgrade_break(...args)) }, "中断升级", 2 /* CLASS */ ) ])) : vue.createCommentVNode("v-if", true) ]) ]) ], 2 /* CLASS */ ); } const ZyUpdate = /* @__PURE__ */ _export_sfc(_sfc_main$l, [["render", _sfc_render$k], ["__scopeId", "data-v-bf1d6c35"], ["__file", "D:/hldy_app/component/zy-upgrade/zy-upgrade.vue"]]); const _sfc_main$k = /* @__PURE__ */ vue.defineComponent({ __name: "index", setup(__props, { expose: __expose }) { __expose(); const darkFans = vue.ref(false); const zyupgrade = vue.ref(null); const menuArray = [ { name: "护理单元", url: "/pages/Nursing/index" }, { name: "仓库", url: "/pages/Warehousing/index" } ]; const jumpTo = (url2) => { uni.navigateTo({ url: url2 }); }; onLoad((options) => { }); onShow(() => { var _a; (_a = zyupgrade.value) == null ? void 0 : _a.check_update(); }); const __returned__ = { darkFans, zyupgrade, menuArray, jumpTo, ZyUpdate }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); function _sfc_render$j(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock( vue.Fragment, null, [ vue.createElementVNode("view", { class: "backgroundContainer" }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.menuArray, (item, index2) => { return vue.createElementVNode("view", { key: index2 }, [ vue.createElementVNode("view", { class: "menuCard", onClick: ($event) => $setup.jumpTo(item.url) }, vue.toDisplayString(item.name), 9, ["onClick"]) ]); }), 64 /* STABLE_FRAGMENT */ )) ]), vue.createCommentVNode(" 自动更新组件 "), vue.createVNode( $setup["ZyUpdate"], { ref: "zyupgrade", noticeflag: true, theme: "blue", h5preview: false, oldversion: "1.0.0", appstoreflag: true, autocheckupdate: true }, null, 512 /* NEED_PATCH */ ) ], 64 /* STABLE_FRAGMENT */ ); } const PagesIndexIndex = /* @__PURE__ */ _export_sfc(_sfc_main$k, [["render", _sfc_render$j], ["__scopeId", "data-v-1cf27b2a"], ["__file", "D:/hldy_app/pages/index/index.vue"]]); const _imports_0$7 = "/static/index/zuoyuan.png"; const _sfc_main$j = { __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$i(_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.createElementVNode("view", { class: "drawer-content-circle", onClick: $setup.closeDrawer }, [ vue.createElementVNode("image", { class: "drawer-img", src: _imports_0$7 }) ]), vue.createCommentVNode(" 抽屉内容 "), vue.renderSlot(_ctx.$slots, "default", {}, void 0, true) ]) ], 2 /* CLASS */ ) ]); } const Drawer = /* @__PURE__ */ _export_sfc(_sfc_main$j, [["render", _sfc_render$i], ["__scopeId", "data-v-40fcca19"], ["__file", "D:/hldy_app/component/public/Drawer.vue"]]); const _sfc_main$i = /* @__PURE__ */ vue.defineComponent({ __name: "index", setup(__props, { expose: __expose }) { __expose(); const circles = [ { label: "指令" }, { label: "转单" }, { label: "完成" } ]; const handleBlur = (event) => { }; const showVideo = vue.ref(false); const videoRef = vue.ref(null); const clickitemNumber = vue.ref(-1); const postItems = vue.ref(0); const videoContext = uni.createVideoContext("myVideo"); const clickitem = (index2) => { clickitemNumber.value = index2; }; const closeVideo = () => { videoContext.pause(); showVideo.value = false; }; 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 __returned__ = { circles, handleBlur, showVideo, videoRef, clickitemNumber, postItems, videoContext, clickitem, closeVideo, lineWidth, circlesNumber }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); const _imports_0$6 = "/static/index/teeth.png"; const _imports_1$5 = "/static/index/helpdo/zero.png"; const _imports_2$3 = "/static/index/helpdo/one.png"; const _imports_3$2 = "/static/index/helpdo/two.png"; const _imports_4 = "/static/index/helpdo/laba.png"; const _imports_5 = "/static/index/helpdo/three.png"; const _imports_6 = "/static/index/helpdo/video.png"; const _imports_7 = "/static/index/helpdo/xian.png"; const _imports_8 = "/static/index/helpdo/maike.png"; const _imports_9 = "/static/index/helpdo/people.png"; const _imports_10 = "/static/index/ceshi.mp4"; function _sfc_render$h(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("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: "downitems-father" }, [ vue.createElementVNode("view", { class: "downitems-left" }, [ vue.createElementVNode("view", { class: "downitems-left-mar" }, [ vue.createElementVNode("image", { class: "downitems-left-img", src: _imports_0$6 }), vue.createElementVNode("view", { class: "downitems-left-father" }, [ vue.createElementVNode("image", { class: "downitems-father-img", src: _imports_1$5 }), vue.createElementVNode("view", { class: "downitems-father-font" }, "清洁照料") ]), vue.createElementVNode("view", { class: "downitems-left-father" }, [ vue.createElementVNode("image", { class: "downitems-father-img", src: _imports_2$3 }), vue.createElementVNode("view", { class: "downitems-father-font" }, "四肢清洁") ]), vue.createElementVNode("view", { class: "downitems-left-father" }, [ vue.createElementVNode("image", { class: "downitems-father-img", src: _imports_3$2 }), vue.createElementVNode("view", { class: "downitems-father-font-laba" }, "协助清洁(四肢)"), vue.createElementVNode("image", { class: "downitems-father-img-laba", src: _imports_4 }) ]), vue.createElementVNode("view", { class: "downitems-left-father" }, [ vue.createElementVNode("image", { class: "downitems-father-img", src: _imports_5 }), vue.createElementVNode("view", { class: "downitems-father-font-small" }, "准备清水,一次性面巾,香皂,清洁后涂身体保湿乳。") ]), vue.createElementVNode("view", { class: "downitems-kuai", onClick: _cache[0] || (_cache[0] = ($event) => $setup.showVideo = true) }, [ vue.createElementVNode("image", { class: "downitems-kuai-img", src: _imports_6 }) ]), vue.createElementVNode("view", { class: "downitems-says" }, " 视频讲解 ") ]) ]), vue.createElementVNode("image", { class: "downitems-shu", src: _imports_7 }), vue.createElementVNode("view", { class: "downitems-center" }, [ vue.createElementVNode("view", { class: "downitems-center-title" }, [ vue.createElementVNode("view", { class: "downitems-center-title-gun" }), vue.createElementVNode("view", { class: "downitems-center-title-font" }, "转单原因"), vue.createElementVNode("view", { class: "downitems-center-says" }, [ vue.createElementVNode("view", { class: "downitems-center-father" }, [ vue.createElementVNode("image", { class: "downitems-center-says-maike", src: _imports_8 }) ]), vue.createElementVNode("view", { class: "" }, "语音输入") ]) ]), vue.createElementVNode("view", { class: "downitems-textarea" }, [ vue.createElementVNode( "textarea", { class: "custom-textarea", onBlur: $setup.handleBlur, placeholder: "请输入" }, null, 32 /* NEED_HYDRATION */ ) ]), vue.createElementVNode("view", { class: "downitems-center-title" }, [ vue.createElementVNode("view", { class: "downitems-center-title-gun" }), vue.createElementVNode("view", { class: "downitems-center-title-font" }, "转单方式") ]), vue.createElementVNode("view", { class: "radio-circle-top-father" }, [ vue.createElementVNode("view", { class: "radio-circle-top" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass(!$setup.postItems ? `radio-circle-target` : `radio-circle`), onClick: _cache[1] || (_cache[1] = ($event) => $setup.postItems = 0) }, null, 2 /* CLASS */ ), vue.createElementVNode("view", { class: "radio-font", onClick: _cache[2] || (_cache[2] = ($event) => $setup.postItems = 0) }, "重新派单") ]), vue.createElementVNode("view", { class: "radio-circle-top" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($setup.postItems ? `radio-circle-target` : `radio-circle`), onClick: _cache[3] || (_cache[3] = ($event) => { $setup.postItems = 1; }) }, null, 2 /* CLASS */ ), vue.createElementVNode("view", { class: "radio-font", onClick: _cache[4] || (_cache[4] = ($event) => $setup.postItems = 1) }, "定向派单") ]) ]), vue.createElementVNode("view", { class: "downitems-button" }, " 确认 ") ]), vue.createElementVNode("image", { class: "downitems-shu", style: { "transform": "rotate(180deg)", "margin-left": "0rpx" }, src: _imports_7 }), vue.createElementVNode("view", { class: "downitems-right" }, [ vue.withDirectives(vue.createElementVNode( "view", { class: "downitems-all" }, [ vue.createElementVNode("view", { class: "downitems-center-title" }, [ vue.createElementVNode("view", { class: "downitems-center-title-gun" }), vue.createElementVNode("view", { class: "downitems-center-title-font" }, "重新派单") ]), vue.createElementVNode("view", { class: "downitems-all-font" }, " 选择重新派单,平台自动将服务指令重新派发给其他员工,等待执行。 ") ], 512 /* NEED_PATCH */ ), [ [vue.vShow, !$setup.postItems] ]), vue.withDirectives(vue.createElementVNode( "view", { class: "downitems-all" }, [ vue.createElementVNode("view", { class: "downitems-center-title" }, [ vue.createElementVNode("view", { class: "downitems-center-title-gun" }), vue.createElementVNode("view", { class: "downitems-center-title-font" }, "定向派单") ]), vue.createElementVNode("view", { class: "downitems-all-font" }, " 选择定向转单,请选择要执行服务指令的员工。 "), vue.createElementVNode("view", { class: "downitems-card-all" }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([0, 1, 2, 3, 4, 5, 6, 7], (item, index2) => { return vue.createElementVNode("view", { class: "downitems-card" }, [ vue.createElementVNode("view", { class: vue.normalizeClass($setup.clickitemNumber === index2 ? `downitems-card-one-target` : `downitems-card-one`), onClick: ($event) => $setup.clickitem(index2) }, [ vue.createElementVNode("view", { class: "downitems-card-father" }, [ vue.createElementVNode("image", { class: "downitems-card-img", src: _imports_9 }) ]), vue.createElementVNode("view", { class: "downitems-card-font" }, " 李金福 ") ], 10, ["onClick"]) ]); }), 64 /* STABLE_FRAGMENT */ )) ]) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.postItems] ]) ]) ]) ]), vue.createCommentVNode(" 弹窗遮罩层,点击背景可关闭弹窗 "), vue.withDirectives(vue.createElementVNode( "view", { class: "modal", onClick: $setup.closeVideo }, [ vue.createElementVNode("view", { class: "modal-content", onClick: _cache[5] || (_cache[5] = vue.withModifiers(() => { }, ["stop"])) }, [ vue.createCommentVNode(" 视频组件,可替换 src 地址 "), vue.createElementVNode("video", { id: "myVideo", src: _imports_10, controls: "", style: { "width": "100%", "height": "100%" } }) ]) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.showVideo] ]) ]); } const transferExecution = /* @__PURE__ */ _export_sfc(_sfc_main$i, [["render", _sfc_render$h], ["__scopeId", "data-v-166ac27f"], ["__file", "D:/hldy_app/component/rightItemsindex/transferExecution/index.vue"]]); const _sfc_main$h = /* @__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 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 = (index2) => { menuIndex.value = index2; }; const changeMenuUnder = (index2) => { undermenuIndex.value = index2; }; const saveItem = (index2) => { if (roomTar.value.includes(index2)) { let array2 = []; roomTar.value.forEach((res) => { if (res !== index2) { array2.push(res); } }); roomTar.value = array2; } else { roomTar.value.push(index2); } }; 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 = (index2) => { drawer.value.openDrawer(); }; vue.onMounted(() => { timerId = updateTime(); setInterval(updateTime, 1e3); }); vue.onBeforeUnmount(() => { clearInterval(timerId); }); const __returned__ = { drawer, 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, transferExecution }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); const _imports_0$5 = "/static/index/customer.png"; const _imports_1$4 = "/static/index/undericons/upguang.png"; function _sfc_render$g(_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, index2) => { return vue.createElementVNode( "span", { key: index2, class: vue.normalizeClass($props.darkFans ? `dot-dark` : `dot`), style: vue.normalizeStyle(index2 === $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, index2) => { return vue.createElementVNode("swiper-item", { class: "swiper-item-flex", key: index2 }, [ 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, index22) => { return vue.createElementVNode("swiper-item", { class: "swiper-item-flex", key: index22 }, [ 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2, class: "right-huli-view-dis", onClick: ($event) => $setup.openhuliList(index2) }, [ 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2, 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, index2) => { return vue.createElementVNode("view", { class: "", key: index2 }, [ vue.createElementVNode("image", { class: "right-container-card-right-img", src: _imports_0$5 }) ]); }), 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2, 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(index2)] ]), vue.createElementVNode("image", { class: "right-container-button-img", src: $setup.roomTar.includes(index2) ? item.targetUrl : item.url, onClick: ($event) => $setup.saveItem(index2) }, null, 8, ["src", "onClick"]), vue.createElementVNode( "text", { class: "right-container-button-text", style: vue.normalizeStyle($setup.roomTar.includes(index2) ? { 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2, 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(index2)] ]), vue.createElementVNode("image", { class: "right-container-button-img", src: $setup.roomTar.includes(index2) ? item.targetUrl : item.url, onClick: ($event) => $setup.saveItem(index2) }, null, 8, ["src", "onClick"]), vue.createElementVNode( "text", { class: "right-container-button-text", style: vue.normalizeStyle($setup.roomTar.includes(index2) ? { 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, index2) => { return vue.createElementVNode( "span", { key: index2, class: vue.normalizeClass($props.darkFans ? `dot-dark` : `dot`), style: vue.normalizeStyle(index2 === $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, index2) => { return vue.createElementVNode("swiper-item", { class: "swiper-item-flex", key: index2 }, [ 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, index22) => { return vue.createElementVNode("swiper-item", { class: "swiper-item-flex", key: index22 }, [ 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2, 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2, 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, index2) => { return vue.createElementVNode("swiper-item", { class: "swiper-item-flex", key: index2 }, [ 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { class: "under-father-view", key: index2, onClick: ($event) => $setup.changeMenuUnder(index2) }, [ vue.withDirectives(vue.createElementVNode( "image", { class: "under-father-light", src: _imports_1$4 }, null, 512 /* NEED_PATCH */ ), [ [vue.vShow, index2 === $setup.undermenuIndex] ]), vue.createElementVNode("image", { class: "under-father-img", src: index2 === $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.createCommentVNode(" 转单执行 "), vue.createVNode($setup["transferExecution"]) ]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ) ], 4 /* STYLE */ ); } const rightItemsfirst = /* @__PURE__ */ _export_sfc(_sfc_main$h, [["render", _sfc_render$g], ["__scopeId", "data-v-9f74ebdb"], ["__file", "D:/hldy_app/component/rightItemsindex/index.vue"]]); const base_url = "http://192.168.2.199:8081/nursing-unit_001"; const timeout$1 = 5e3; const index = (params) => { let url2 = params.url; let method = params.method || "get"; let data2 = params.data || {}; let header = { "Blade-Auth": uni.getStorageSync("token") || "", "Content-Type": "application/json;charset=UTF-8", "Authorization": "Basic c2FiZXI6c2FiZXJfc2VjcmV0", "Tenant-Id": uni.getStorageSync("tenantId") || "xxx", // avue配置相关 ...params.header }; return new Promise((resolve, reject) => { uni.request({ url: base_url + url2, method, header, data: data2, timeout: timeout$1, success(response) { const res = response; if (res.statusCode == 200) { resolve(res.data); } else { uni.clearStorageSync(); switch (res.statusCode) { case 401: uni.showModal({ title: "提示", content: "请登录", showCancel: false, success() { setTimeout(() => { uni.navigateTo({ url: "/pages/login/login" }); }, 1e3); } }); break; case 404: uni.showToast({ title: "请求地址不存在...", duration: 2e3 }); break; default: uni.showToast({ title: "请重试...", duration: 2e3 }); break; } } }, fail(err) { formatAppLog("log", "at request/index.js:71", err); if (err.errMsg.indexOf("request:fail") !== -1) { uni.showToast({ title: "网络异常", icon: "error", duration: 2e3 }); } else { uni.showToast({ title: "未知异常", duration: 2e3 }); } reject(err); }, complete() { uni.hideLoading(); uni.hideToast(); } }); }).catch(() => { }); }; const myArray = [ { "children": [ { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1900421622979706886", "title": "协助喂药", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902604232524795905", "title": "鼻饲喂药", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902604428667228162", "title": "注射器/吸管喂药", "tagName": "头部,大体重" } ], "levle": "2", "title": "协助喂药", "key": "1900114812020310017", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902605892869394433", "title": "一级压疮防护", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902606105021485058", "title": "二级压疮防护", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902606339931869185", "title": "三级压疮防护", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902606614344208386", "title": "一级压疮防护", "tagName": "大体重" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902606869953482753", "title": "二级压疮防护", "tagName": "大体重" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902607023431454722", "title": "三级压疮防护", "tagName": "大体重" } ], "levle": "2", "title": "压疮防护", "key": "1900115034452639746", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1900421622979706887", "title": "床椅转移", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1900421622979706888", "title": "床椅转移", "tagName": "大体重" }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902605073730211842", "title": "床椅转移", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902605223185846273", "title": "床椅转移", "tagName": "大体重" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902605365393723393", "title": "协助床椅转移", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902605496071458818", "title": "协助床椅转移", "tagName": null } ], "levle": "2", "title": "床椅转移", "key": "1902248363784159233", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902607507626102786", "title": "轮椅防护", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902607677415723010", "title": "轮椅防护", "tagName": "大体重" }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902607817589362689", "title": "轮椅防护", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902608061588803585", "title": "轮椅防护", "tagName": "大体重" } ], "levle": "2", "title": "轮椅防护", "key": "1902280900178886657", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902608564582322178", "title": "约束位按摩", "tagName": "手" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902608974609092610", "title": "约束位按摩", "tagName": "足" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902618507855237121", "title": "约束位按摩", "tagName": "全" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902618751548493825", "title": "防护网约束", "tagName": null } ], "levle": "2", "title": "约束防护", "key": "1902280933364219906", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902620309090701314", "title": "协助行走", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902620486044192769", "title": "放松按摩", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "30", "id": "1902625161569079298", "title": "心灵慰藉", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "10", "id": "1902625402468929537", "title": "狂躁", "tagName": null } ], "levle": "2", "title": "按摩保健", "key": "1902564031454744577", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902625872432304130", "title": "准备衣物", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902626005538541569", "title": "协助更换", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902626664711163905", "title": "肢体障碍", "tagName": "半侧" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902626800510144513", "title": "肢体障碍", "tagName": "全身" }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902627064688381953", "title": "准备衣物", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902627280716009474", "title": "协助更换", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902627416598876161", "title": "肢体障碍", "tagName": "半侧" }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902627522404388866", "title": "肢体障碍", "tagName": "全身" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902627711806574593", "title": "协助更换", "tagName": "大体重" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902628058591629313", "title": "肢体障碍", "tagName": "半侧,大体重" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902628650718302209", "title": "肢体障碍", "tagName": "大体重,全测" }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902628837725540354", "title": "肢体障碍", "tagName": "大体重,全测" }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902628966847188993", "title": "肢体障碍", "tagName": "大体重,半侧" }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902629129879785474", "title": "协助更换", "tagName": "大体重" } ], "levle": "2", "title": "更换衣物", "key": "1902564088417587201", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902629344456183809", "title": "坐起", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902629492301205506", "title": "躺下", "tagName": null } ], "levle": "2", "title": "调整坐卧", "key": "1902564199830884354", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "55", "id": "1902630862769065985", "title": "遗体净身", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "55", "id": "1902631162275926017", "title": "遗体穿衣", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "30", "id": "1902631422431825921", "title": "遗体转移", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "30", "id": "1902631602463936514", "title": "床位消毒", "tagName": null } ], "levle": "2", "title": "殡仪服务", "key": "1902564263743688705", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "周期护理", "levle": "3", "serviceDuration": "5", "id": "1902631830441136129", "title": "更换床上用品", "tagName": "全部" }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902632063828987905", "title": "隔尿褥子更换", "tagName": null } ], "levle": "2", "title": "更换床上用品", "key": "1902564446648897538", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902632288270389250", "title": "临终护理", "tagName": null } ], "levle": "2", "title": "临终服务", "key": "1902564503783706625", "parentId": "1900112597427793921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "40", "id": "1902632678701371393", "title": "制氧机吸氧", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902632799853842433", "title": "制氧机维护", "tagName": null } ], "levle": "2", "title": "制氧机应用", "key": "1902564586101116930", "parentId": "1900112597427793921" } ], "levle": "1", "title": "1 日常照料", "key": "1900112597427793921" }, { "children": [ { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1900376187661553665", "title": "准备洁具", "tagName": "口腔" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1900420873478553602", "title": "棉球清洁", "tagName": "口腔" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1900421622979706881", "title": "协助清洁", "tagName": "口腔" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1900421622979706885", "title": "义齿清洁", "tagName": "口腔" } ], "levle": "2", "title": "口腔清洁", "key": "1902597070889127938", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "周期护理", "levle": "3", "serviceDuration": "5", "id": "1902636771540963329", "title": "准备洁具", "tagName": "头部" }, { "cycleType": "周期护理", "levle": "3", "serviceDuration": "20", "id": "1902637623425077250", "title": "协助洗头", "tagName": null }, { "cycleType": "周期护理", "levle": "3", "serviceDuration": "20", "id": "1902637985234128898", "title": "卧式洗头", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902638122949906433", "title": "擦头", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "10", "id": "1902638304739430401", "title": "刮头", "tagName": null } ], "levle": "2", "title": "头部清洁", "key": "1902597497344987137", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902641763073101826", "title": "准备洁具", "tagName": "面部" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902642254465175553", "title": "协助洁面", "tagName": null } ], "levle": "2", "title": "面部清洁", "key": "1902597651405967361", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902642508145070081", "title": "准备洁具", "tagName": "躯干" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902642672796667905", "title": "协助清洁", "tagName": "躯干" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902642822885642242", "title": "卧床清洁", "tagName": "躯干" } ], "levle": "2", "title": "躯干清洁", "key": "1902597718082818050", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902643318811758594", "title": "准备洁具", "tagName": "四肢" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902643483320750082", "title": "协助清洁", "tagName": "四肢" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902643630888947713", "title": "卧床清洁", "tagName": "四肢" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902643837525528578", "title": "肌张力高", "tagName": "清洁" } ], "levle": "2", "title": "四肢清洁", "key": "1902597811565465601", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902645148199391234", "title": "会阴清洁", "tagName": "男" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902645295457210369", "title": "会阴清洁", "tagName": "女" } ], "levle": "2", "title": "会阴清洁", "key": "1902597873964126209", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902645493185089537", "title": "肛周清洁", "tagName": null } ], "levle": "2", "title": "肛周清洁", "key": "1902597930020999170", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902645693211447298", "title": "洗手", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902647316134465538", "title": "泡手", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902647529817477122", "title": "准备洁具", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902647673212342274", "title": "协助洗手", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902647905878773762", "title": "强直屈曲洗手", "tagName": null } ], "levle": "2", "title": "手清洁", "key": "1902597991698239489", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902648101203316737", "title": "泡脚", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902648239091060737", "title": "卧式泡脚", "tagName": null } ], "levle": "2", "title": "足清洁", "key": "1902598178588037121", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "周期护理", "levle": "3", "serviceDuration": "5", "id": "1902648426383511553", "title": "修睫毛", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902648548777496577", "title": "剃须", "tagName": null } ], "levle": "2", "title": "剃须", "key": "1902598258573414401", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "周期护理", "levle": "3", "serviceDuration": "5", "id": "1902648962444922882", "title": "角质增生", "tagName": "修甲" }, { "cycleType": "周期护理", "levle": "3", "serviceDuration": "5", "id": "1902649132536532994", "title": "灰指甲", "tagName": "修甲" }, { "cycleType": "周期护理", "levle": "3", "serviceDuration": "5", "id": "1902649302149992449", "title": "正常", "tagName": "修甲" } ], "levle": "2", "title": "修甲", "key": "1902598354606198785", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "周期护理", "levle": "3", "serviceDuration": "20", "id": "1902649683919736834", "title": "理发", "tagName": null }, { "cycleType": "周期护理", "levle": "3", "serviceDuration": "25", "id": "1902649860344745985", "title": "理发", "tagName": "颅骨缺损" } ], "levle": "2", "title": "理发", "key": "1902598400382832642", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "周期护理", "levle": "3", "serviceDuration": "5", "id": "1902650121280786434", "title": "床上沐浴", "tagName": null }, { "cycleType": "周期护理", "levle": "3", "serviceDuration": "55", "id": "1902650408884211713", "title": "深度清洁", "tagName": null }, { "cycleType": "周期护理", "levle": "3", "serviceDuration": "55", "id": "1902650763722330113", "title": "浴间洗浴", "tagName": null }, { "cycleType": "周期护理", "levle": "3", "serviceDuration": "30", "id": "1902651229122301954", "title": "床上沐浴", "tagName": "大体重" }, { "cycleType": "周期护理", "levle": "3", "serviceDuration": "55", "id": "1902651366317985794", "title": "深度清洁", "tagName": "大体重" }, { "cycleType": "周期护理", "levle": "3", "serviceDuration": "55", "id": "1902651555363655682", "title": "浴间洗浴", "tagName": "大体重" } ], "levle": "2", "title": "沐浴", "key": "1902598454782955522", "parentId": "1900112615777873921" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "10", "id": "1902651778777452545", "title": "内套管清洁", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "10", "id": "1902651924047171586", "title": "更换气切纱布", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "10", "id": "1902652055928672258", "title": "更换气切纱布", "tagName": null } ], "levle": "2", "title": "气切消毒", "key": "1902598509522817026", "parentId": "1900112615777873921" } ], "levle": "1", "title": "2 清洁照料", "key": "1900112615777873921" }, { "children": [ { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902898057679966209", "title": "准备餐具", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902898202668666881", "title": "协助进餐", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902898339931459586", "title": "协助进餐", "tagName": "超时" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902898472584712194", "title": "鼻胃管进餐", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902898590658564097", "title": "胃肠管进餐", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902898719952179201", "title": "准备餐具", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902898979948695554", "title": "协助进餐", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902899086840532993", "title": "协助进餐", "tagName": "超时" }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902899214838108162", "title": "鼻胃管进餐", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902899325014085633", "title": "胃肠管进餐", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902899587028062210", "title": "食物加工", "tagName": null } ], "levle": "2", "title": "加餐饮食", "key": "1902596129720864770", "parentId": "1902280495747317762" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902281139677839362", "title": "准备餐具", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "10", "id": "1902281522340970498", "title": "鼻胃管进餐", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902281654100836354", "title": "协助进餐", "tagName": "超时" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902281870434648066", "title": "协助进餐", "tagName": "正常" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902654960639381506", "title": "鼻肠管进餐", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902655101874180097", "title": "轮椅进餐", "tagName": "大体重" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902892199009030145", "title": "轮椅进餐", "tagName": null } ], "levle": "2", "title": "正餐饮食", "key": "1902601263850950657", "parentId": "1902280495747317762" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902893231608926209", "title": "准备餐具", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902893551978254337", "title": "协助进餐", "tagName": "正常" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902893716466274306", "title": "协助进餐", "tagName": "超时" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902894369850757122", "title": "鼻胃管进餐", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902894528533860354", "title": "鼻肠管进餐", "tagName": null } ], "levle": "2", "title": "辅餐饮食", "key": "1902601382595891202", "parentId": "1902280495747317762" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902894832176304129", "title": "准备餐具", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902894954117304322", "title": "协助进餐", "tagName": "正常" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902895077522116609", "title": "协助进餐", "tagName": "超时" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902895233407619073", "title": "鼻胃管进餐", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902895569912434689", "title": "鼻肠管进餐", "tagName": null } ], "levle": "2", "title": "果汁饮食", "key": "1902601427168759809", "parentId": "1902280495747317762" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902895878508351489", "title": "准备水杯", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902895984053817346", "title": "协助饮水", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902896136835534850", "title": "协助饮水", "tagName": "超时" }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902896508421509122", "title": "鼻胃管饮水", "tagName": null }, { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902896636553302017", "title": "鼻肠管饮水", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902896855802155010", "title": "准备水杯", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902897018344017921", "title": "协助饮水", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902897464936730626", "title": "协助饮水", "tagName": "超时" }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902897675813752834", "title": "鼻胃管饮水", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902897803417063426", "title": "鼻肠管饮水", "tagName": null } ], "levle": "2", "title": "饮水饮食", "key": "1902601487625457665", "parentId": "1902280495747317762" } ], "levle": "1", "title": "3 饮食照料", "key": "1902280495747317762" }, { "children": [ { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902653177363927041", "title": "巡视", "tagName": null } ], "levle": "2", "title": "巡视", "key": "1902564741860790273", "parentId": "1902560466095017986" }, { "children": [ { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902653325481578497", "title": "防坠床", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902653497066360833", "title": "被褥调整", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902653650917625857", "title": "睡姿调整", "tagName": null } ], "levle": "2", "title": "体位调整", "key": "1902564818838851585", "parentId": "1902560466095017986" } ], "levle": "1", "title": "4 睡眠照料", "key": "1902560466095017986" }, { "children": [ { "children": [ { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902904277308510210", "title": "更换尿袋", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902904458779267073", "title": "更换隔尿垫", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902905631242424322", "title": "使用尿盆", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902905824973131777", "title": "使用尿壶", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902906220483416065", "title": "协助入厕", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902906459051233281", "title": "坐便椅", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902906610562076674", "title": "留置尿袋", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902906783325458434", "title": "更换纸尿裤", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902908406344945665", "title": "热敷抚触排尿", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902908523827400705", "title": "协助坐便椅", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902909645401067522", "title": "更换尿片", "tagName": null } ], "levle": "2", "title": "小便", "key": "1902596314152800257", "parentId": "1902560510768549889" }, { "children": [ { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902909835331735554", "title": "床上排便", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902910002671882242", "title": "协助坐便椅", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902910156154048514", "title": "协助入厕", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902910361008050178", "title": "人工取便", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902910524623654913", "title": "造瘘袋", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902910700176248834", "title": "坐便椅", "tagName": null } ], "levle": "2", "title": "大便", "key": "1902596399423000577", "parentId": "1902560510768549889" }, { "children": [ { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902910899565072385", "title": "口腔吸痰", "tagName": null }, { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902911047405899778", "title": "气切吸痰", "tagName": null } ], "levle": "2", "title": "吸痰", "key": "1902596461238652930", "parentId": "1902560510768549889" }, { "children": [ { "cycleType": "即时护理", "levle": "3", "serviceDuration": "5", "id": "1902911232974491650", "title": "呕吐", "tagName": null } ], "levle": "2", "title": "呕吐", "key": "1902596886771765250", "parentId": "1902560510768549889" }, { "children": [ { "cycleType": "日常护理", "levle": "3", "serviceDuration": "5", "id": "1902911378349068290", "title": "腹腔引流护理", "tagName": null } ], "levle": "2", "title": "引流", "key": "1902596940366581762", "parentId": "1902560510768549889" } ], "levle": "1", "title": "5 排泄照料", "key": "1902560510768549889" } ]; const _sfc_main$g = /* @__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(() => { }); 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 bigArray = 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 range2 = 2; return pseudoRandom(index0, index1) * range2; } 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.cycleType === "日常") { 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.cycleType) { 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 = (index2) => { upmenuIndex.value = index2; downList.value = bigArray.value[index2].children; downmenuIndex.value = 999; }; const rightListClick = (index2) => { rightListIndex.value = index2; }; 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, typeName: "" }); const deletebottomindex = vue.ref(-1); const deletedownisopen = vue.ref(false); const deletedownisopacity = vue.ref(false); const deletebottom = (index2, name) => { bottomisShaking.value = false; deletebottomindex.value = index2; shakyTable.value = false; deletedownisopacity.value = false; deletedownisopen.value = true; deletename.value = name; setTimeout(() => { deletedownisopacity.value = true; }, 200); }; const deleteindex = vue.ref([-1, -1]); const deleteId = vue.ref(""); const deleteItems = (item, 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 = item.directiveName; deleteId.value = item.id; setTimeout(() => { deleteisopacity.value = true; }, 200); }; const touchindex1 = vue.ref(-1); const shareShow = vue.ref(false); const shareToWeixin = () => { shareShow.value = true; deletedownisopacity.value = false; setTimeout(() => { deletedownisopacity.value = true; }, 100); }; const clickshare = () => { uni.share({ provider: "weixin", scene: "WXSceneSession", type: 0, href: "http://192.168.2.31:3101/daytoday", title: "护理日程分享", summary: "九泰护理日程测试", imageUrl: "https://qiniu-web-assets.dcloud.net.cn/unidoc/zh/uni@2x.png", success: function(res) { formatAppLog("log", "at component/rightItemssecond/index.vue:713", "success:"); }, fail: function(err) { formatAppLog("log", "at component/rightItemssecond/index.vue:716", "fail:"); } }); }; const rulerTouchClick = (item, index0, index1, e) => { if (item.directiveName) { touchindex1.value = index1; const query = uni.createSelectorQuery(); query.selectAll(".super-card-time-card").boundingClientRect((data2) => { data2.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.directiveName) { timearr.value.forEach((element0, index02) => { element0.children.forEach((element1) => { if (element1.typeName === item.typeName && element1.directiveName) { redNameindex0.value.push(index02); } if (element1.directiveName) { index1Number = index02; } }); }); if (redNameindex0.value.length) { redNameindex1.value = index1; } else { redNameindex1.value = index1Number + 1; } flyNumber.value.typeName = item.typeName; 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((data2) => { data2.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] = { directiveName: "" }; 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, index2) => { if (child.directiveName === null || child.directiveName === "" || child.directiveName === void 0) { const isEmptyInAllRows = timearr.value.every((otherRes) => { const otherChild = otherRes.children[index2]; return otherChild === void 0 || otherChild.directiveName === null || otherChild.directiveName === "" || otherChild.directiveName === void 0; }); if (isEmptyInAllRows) { emptyChildIndices.push(index2); } } }); }); 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({ directiveName: "" }); }); } deleteisopen.value = false; saveAll(); }; 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 saveId = vue.ref(""); const saveTagName = vue.ref(""); const handleTouchStart = (item, index2, 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.typeName === item.title) { 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.typeName === item.title && element1.directiveName) { redNameindex0.value.push(index0); index1save = index1; } if (element1.directiveName) { if (index1 > indexanthersave) { indexanthersave = index1; } } }); }); if (redNameindex0.value.length) { redNameindex1.value = index1save; } else { redNameindex1.value = indexanthersave + 1; } isBack.value = true; downmenuIndex.value = index2; indexsave.value = [-1, -1]; isTuoing.value = true; reldata.value = []; const query = uni.createSelectorQuery(); query.selectAll(".super-card-time-card").boundingClientRect((data2) => { data2.forEach((res) => { if (res.left > 200 && res.left < 1067 && res.top < 570 && res.top > 140) { reldata.value.push(res); } }); }).exec(); emit("savename", item.title, 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 = (index2, item) => { cardsumit.value.startTime = ""; cardsumit.value.monthTime = ""; cardsumit.value.weekTime = ""; saveId.value = item.id; saveTagName.value = item.tagName; if (cardsumit.value.op.index[2] === index2) { cardsumit.value.op.index[2] = -1; cardsumit.value.op.name = ""; openOp.value = -1; } else { cardsumit.value.op.index[2] = index2; cardsumit.value.op.name = item.relName; switch (item.cycleType) { case `日常护理`: openOp.value = 0; break; case `周期护理`: openOp.value = 1; break; case `即时护理`: openOp.value = 2; break; } } }; const clickTime = (index2) => { if (cardsumit.value.startTime == index2) { cardsumit.value.startTime = ""; } else { cardsumit.value.startTime = index2; } }; const clickweek = (index2) => { if (cardsumit.value.weekTime == index2) { cardsumit.value.weekTime = ""; } else { cardsumit.value.weekTime = index2; } }; const clickmonth = (index2) => { if (cardsumit.value.monthTime == index2) { cardsumit.value.monthTime = ""; } else { cardsumit.value.monthTime = index2; } }; 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].positioning; openValue.value.array = bigArray.value[upmenuIndex.value].children[downmenuIndex.value].children; openValue.value.array.forEach((element) => { element.relName = element.title + (element.tagName ? element.tagName.split(",").map((item) => `(${item})`).join("") : ""); }); indexsave.value = [props.liang.index0 + currentNumber.value * 6, props.liang.index1]; clickOp(0, openValue.value.array[0]); } }; const rulerMoveEnd = (object2) => { if (props.liang.index0 !== 999 && object2.cycleType) { 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, index2) => { if (child.directiveName === null || child.directiveName === "" || child.directiveName === void 0) { const isEmptyInAllRows = timearr.value.every((otherRes) => { const otherChild = otherRes.children[index2]; return otherChild === void 0 || otherChild.directiveName === null || otherChild.directiveName === "" || otherChild.directiveName === void 0; }); if (isEmptyInAllRows) { emptyChildIndices.push(index2); } } }); res.children.forEach((item, index2) => { if (item.typeName == object2.typeName) { savaIndex = index2; } }); }); if (savaIndex === -1) { savaIndex = emptyChildIndices[0]; } let haveAnyItem = 0; let savetypeName = ""; timearr.value.forEach((element) => { if (element.children[0].value) { haveAnyItem++; savetypeName = element.children[0].typeName; } }); if (haveAnyItem > 1) { timearr.value[flyNumber.value.index0].children[flyNumber.value.index1] = { directiveName: "", typeName: savetypeName }; } else { timearr.value[flyNumber.value.index0].children[flyNumber.value.index1] = { directiveName: "" }; } timearr.value[indexsave.value[0]].children[savaIndex] = object2; let startTime = timearr.value[indexsave.value[0]].children[savaIndex].startTime; let endTime = timearr.value[indexsave.value[0]].children[savaIndex].endTime; let positioning = timearr.value[indexsave.value[0]].positioning; const rest = startTime.substring(startTime.indexOf(":")); const rest0 = endTime.substring(endTime.indexOf(":")); timearr.value[indexsave.value[0]].children[savaIndex].startTime = positioning + rest; timearr.value[indexsave.value[0]].children[savaIndex].endTime = positioning + rest0; const shouldAdd = timearr.value.some((obj) => { const children = obj.children; return children[children.length - 1].directiveName.trim() !== ""; }); if (shouldAdd) { timearr.value.forEach((obj) => { obj.children.push({ directiveName: "" }); }); scrollTop.value = 999; scrollTop.value = 9999; } saveAll(); } }; 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, index2) => { if (child.directiveName === null || child.directiveName === "" || child.directiveName === void 0) { const isEmptyInAllRows = timearr.value.every((otherRes) => { const otherChild = otherRes.children[index2]; return otherChild === void 0 || otherChild.directiveName === null || otherChild.directiveName === "" || otherChild.directiveName === void 0; }); if (isEmptyInAllRows) { emptyChildIndices.push(index2); } } }); res.children.forEach((item, index2) => { if (item.typeName == bigArray.value[cardsumit.value.op.index[0]].children[cardsumit.value.op.index[1]].title) { savaIndex = index2; } }); }); if (savaIndex === -1) { savaIndex = emptyChildIndices[0]; } let savetypeName = bigArray.value[cardsumit.value.op.index[0]].children[cardsumit.value.op.index[1]].title; await vue.nextTick(); timearr.value.forEach((element, index2) => { element.children[savaIndex].typeName = savetypeName; }); let cycleType = ""; if (!openOp.value) { cycleType = "日常"; } else if (openOp.value === 1) { cycleType = cardsumit.value.weekTime || cardsumit.value.monthTime + "号"; } 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].startTime = formattedStart; timearr.value[indexsave.value[0]].children[savaIndex].endTime = formattedEnd; } else { timearr.value[indexsave.value[0]].children[indexsave.value[1]].startTime = formattedStart; timearr.value[indexsave.value[0]].children[indexsave.value[1]].endTime = formattedEnd; } let param = { directiveId: saveId.value, directiveName: cardsumit.value.op.name, startTime: formattedStart, endTime: formattedEnd, positioning: indexsave.value[0].toString(), positioningLong: indexsave.value[1].toString(), tagName: saveTagName.value, cycleType, nuId: "1", customerId: "1", id: "", typeName: savetypeName }; timearr.value[indexsave.value[0]].children[savaIndex] = param; timearr.value.forEach((element) => { element.children.forEach((res) => { }); }); const shouldAdd = timearr.value.some((obj) => { const children = obj.children; return children[children.length - 1].directiveName.trim() !== ""; }); if (shouldAdd) { timearr.value.forEach((obj) => { obj.children.push({ directiveName: "" }); }); scrollTop.value = 999; vue.nextTick(); scrollTop.value = 9999; } saveAll(); }; const saveAll = () => { timearr.value.forEach((element0, index0) => { element0.children.forEach((element1, index1) => { let saveTypeName = ""; if (!element1.directiveName && !element1.id) { let array2 = {}; if (element1.typeName) { saveTypeName = element1.typeName; } array2 = JSON.parse(JSON.stringify(moBan.value)); saveTypeName ? array2.typeName = saveTypeName : ""; array2.positioning = index0; array2.positioningLong = index1; } else { element1.positioning = index0; element1.positioningLong = index1; } }); }); }; const routerPush = () => { uni.setStorage({ key: "myArray", data: timearr.value, success: function() { uni.navigateTo({ url: `/pages/timeMatrix/index?currentNumber=${currentNumber.value}` }); } // fail: function (err) { // __f__('error','at component/rightItemssecond/index.vue:1382','缓存失败:', err); // } }); }; const saveRulerTime = vue.ref({ index0: -1, index1: -1 }); const targetRuler = vue.ref({ index0: -1, index1: -1, current: -1, bordershow: true }); const whereEvent = (data2) => { scrollTop.value = 0; scrollTop.value = data2.index1 * 104; if (currentNumber.value === Math.floor(data2.index0 / 6)) { targetRuler.value.index0 = data2.index0 - currentNumber.value * 6; targetRuler.value.index1 = data2.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(data2.index0 / 6); }, 100); setTimeout(() => { targetRuler.value.index0 = data2.index0 - currentNumber.value * 6; targetRuler.value.index1 = data2.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(() => { bigArray.value = myArray; downList.value = bigArray.value[0].children; uni.$on("where", whereEvent); }); onHide(() => { uni.$off("where", whereEvent); }); __expose({ rulerEnd, rulerMoveEnd, nextItems }); const moveNumber = vue.ref({ index0: 999, index1: 999 }); const moBan = vue.ref({ directiveId: "", directiveName: "", startTime: "", endTime: "", positioning: "", positioningLong: "", tagName: "", cycleType: "", nuId: "1", customerId: "1", id: "", typeName: "" }); const timearr = vue.ref( Array.from({ length: 24 }, (_, hour) => ({ positioning: hour.toString(), children: Array.from({ length: 4 }, () => ({ directiveName: "" })) })) ); 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 __returned__ = { props, bottomItems, timeArray, weekDays, days, isweek, scrollLeft, scrollTop, downList, rightList, bigArray, 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, deleteId, deleteItems, touchindex1, shareShow, shareToWeixin, clickshare, 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, saveId, saveTagName, handleTouchStart, isblue, handleTouchMove, handleTouchEnd, bottomTimer, bottomisShaking, bottomTouchStart, bottomTouchMove, bottomTouchEnd, openValue, cardsumit, openOp, clickOp, clickTime, clickweek, clickmonth, indexsave, rulerEnd, rulerMoveEnd, scrollContainer, movetoruler, saveAll, routerPush, saveRulerTime, targetRuler, whereEvent, moveNumber, moBan, timearr, splitString, get index() { return index; } }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); const _imports_0$4 = "/static/index/shexiang.png"; const _imports_1$3 = "/static/index/cheng.png"; const _imports_2$2 = "/static/index/deleteicon.png"; const _imports_3$1 = "/static/index/NU.png"; function _sfc_render$f(_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[22] || (_cache[22] = ($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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2, onClick: ($event) => $setup.changLeft(index2) }, [ vue.createElementVNode( "view", { class: "doctorsay-container-card", style: vue.normalizeStyle(index2 === $setup.upmenuIndex ? { background: "linear-gradient(to right bottom, #00c9ff, #0076ff)" } : {}) }, [ vue.createElementVNode("image", { class: "doctorsay-container-card-img", src: index2 === $setup.upmenuIndex ? item.targetUrl : item.url }, null, 8, ["src"]), vue.createElementVNode( "view", { class: vue.normalizeClass(index2 === $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$4 }), 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2 }, [ vue.createElementVNode("view", { class: "doctorsay-container-button", onTouchstart: ($event) => $setup.handleTouchStart(item, index2, $event), onTouchmove: $setup.handleTouchMove, onTouchend: $setup.handleTouchEnd }, [ vue.createElementVNode( "text", { class: vue.normalizeClass($setup.downmenuIndex === index2 ? `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.title), 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 === index2] ]) ], 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-share", onClick: $setup.shareToWeixin }, " 分享到微信 ") ]), 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { class: "doctorsay-container-button-father", key: index2 }, [ vue.createElementVNode("view", { class: vue.normalizeClass($setup.rightListIndex === index2 ? `doctorsay-container-button-target` : `doctorsay-container-button`), onClick: ($event) => $setup.rightListClick(index2) }, 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2 }, [ vue.withDirectives(vue.createElementVNode( "view", { class: vue.normalizeClass($setup.touchindex1 === index2 || $props.liang.index1 === index2 && !$props.canmove || $setup.flyNumber.index1 === index2 && $setup.shakyTable ? `boom-son-target` : `boom-son`) }, vue.toDisplayString(item.typeName), 3 /* TEXT, CLASS */ ), [ [vue.vShow, item.typeName] ]) ]); }), 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, index2) => { return vue.createElementVNode("swiper-item", { key: index2 }, [ 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(index2 * 6, (index2 + 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.positioning.length == 1 ? "0" + item0.positioning : item0.positioning) + ":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(index2 * 6, (index2 + 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.directiveName && $setup.shakyTable ? vue.withDirectives((vue.openBlock(), vue.createElementBlock("view", { key: 0, class: "title-time-delete", onClick: vue.withModifiers(($event) => $setup.deleteItems(item1, 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.startTime ? 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.startTime + `-` + item1.endTime), 1 /* TEXT */ ), vue.createElementVNode("image", { class: "title-time-button", src: item1.cycleType == "日常" ? `/static/index/yellowbian.png` : `/static/index/puoplebian.png` }, null, 8, ["src"]), vue.createElementVNode( "view", { class: "title-time-font" }, vue.toDisplayString(item1.cycleType), 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.directiveName)[0]), 513 /* TEXT, NEED_PATCH */ ), [ [vue.vShow, $props.liang.index0 !== index0 || $props.liang.index1 !== index1 || $props.canmove] ]), $setup.splitString(item1.directiveName)[1] ? vue.withDirectives((vue.openBlock(), vue.createElementBlock( "view", { key: 1, class: "down-icons", style: vue.normalizeStyle(item1.cycleType != "日常" ? { backgroundColor: `rgb(212,203,255)` } : {}) }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.splitString(item1.directiveName).slice(1), (item2, index22) => { return vue.openBlock(), vue.createElementBlock("view", { class: "", key: index22 }, [ vue.createElementVNode( "view", { class: "icon", style: vue.normalizeStyle(item1.cycleType != "日常" ? { backgroundColor: `rgb(123,97,255)` } : {}) }, vue.toDisplayString($setup.splitString(item1.directiveName)[index22 + 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2 }, [ 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(index2, item.name), ["stop"]) }, " - ", 8, ["onClick"]), [ [vue.vShow, $setup.bottomisShaking] ]), vue.createElementVNode( "view", { style: vue.normalizeStyle({ animationDelay: `-${index2 * 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$3 }), 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2 }, [ 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] === index2 ? `arrayindex-one-target` : `arrayindex-one`), onClick: ($event) => $setup.clickOp(index2, item) }, [ vue.withDirectives(vue.createElementVNode("image", { class: "ri-img", src: $setup.cardsumit.op.index[2] !== index2 ? `/static/index/ridark.png` : `/static/index/ri.png` }, null, 8, ["src"]), [ [vue.vShow, item.cycleType === "日常护理"] ]), vue.withDirectives(vue.createElementVNode("image", { class: "ri-img", src: $setup.cardsumit.op.index[2] == index2 ? `/static/index/zhoudark.png` : `/static/index/zhou.png` }, null, 8, ["src"]), [ [vue.vShow, item.cycleType === "周期护理"] ]), vue.withDirectives(vue.createElementVNode("image", { class: "ri-img", src: $setup.cardsumit.op.index[2] == index2 ? `/static/index/jidark.png` : `/static/index/ji.png` }, null, 8, ["src"]), [ [vue.vShow, item.cycleType === "即时护理"] ]), vue.createTextVNode( " " + vue.toDisplayString(item.relName), 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, index2) => { return vue.createElementVNode("view", { key: index2 }, [ 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, index2) => { return vue.createElementVNode("view", { key: index2 }, [ 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2 }, [ 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$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$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] ]), vue.createCommentVNode(" 分享的弹出层 "), vue.withDirectives(vue.createElementVNode( "view", { class: "popup-share", onClick: _cache[21] || (_cache[21] = ($event) => $setup.shareShow = false) }, [ vue.createElementVNode( "view", { class: "popup-share-content", style: vue.normalizeStyle({ opacity: $setup.deletedownisopacity ? 1 : 0 }), onClick: _cache[20] || (_cache[20] = vue.withModifiers(() => { }, ["stop"])) }, [ vue.createElementVNode("view", { class: "popup-share-title" }, [ vue.createTextVNode(" 护理日程分享 "), vue.createElementVNode("image", { class: "popup-share-img", src: _imports_3$1 }) ]), vue.createElementVNode("view", { class: "popup-share-upcontent" }, [ vue.createElementVNode("view", { class: "popup-share-font" }, "久泰护理日程分享测试") ]), vue.createElementVNode("view", { class: "popup-share-gray" }), vue.createElementVNode("view", { class: "popup-share-downcontent" }, [ vue.createElementVNode("view", { class: "popup-share-downcontent-left" }, [ vue.createElementVNode("image", { class: "popup-downcontent-img", src: _imports_3$1 }), vue.createElementVNode("view", { class: "popup-downcontent-font" }, "久泰护理") ]), vue.createElementVNode("view", { class: "popup-share-downcontent-button", onClick: $setup.clickshare }, " 分享 ") ]) ], 4 /* STYLE */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.shareShow] ]) ], 4 /* STYLE */ ) ], 2112 /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */ ); } const rightItemssecond = /* @__PURE__ */ _export_sfc(_sfc_main$g, [["render", _sfc_render$f], ["__scopeId", "data-v-337bb5da"], ["__file", "D:/hldy_app/component/rightItemssecond/index.vue"]]); const _sfc_main$f = /* @__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 = (index2) => { if (index2 === 3) { menuIndexshow.value = false; menuIndexshowsecond.value = false; uni.navigateTo({ url: `/pages/somethingmove/index?darkFans=${darkFans.value}`, animationType: "slide-in-right", animationDuration: 400 // 设置动画时长为300毫秒, // 动画持续时间,单位为毫秒 }); return; } else if (index2 === 5) { uni.navigateBack(); return; } menuIndex.value = index2; menuIndexshow.value = false; menuIndexshowsecond.value = false; setTimeout(() => { switch (index2) { 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 = throttle2(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/Nursing/index.vue:178", "!!!!", fangkuaiValue.value); }; const saveruler = vue.ref({ directiveName: "", cycleType: "", positioningLong: "0", typeName: "", startTime: "", id: "", endTime: "", tagName: null }); 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.typeName) { (_b = ruler.value) == null ? void 0 : _b.rulerMoveEnd(saveruler.value); } savename.value = ""; saveruler.value = { directiveName: "", cycleType: "", positioningLong: "0", typeName: "", startTime: "", id: "", endTime: "", tagName: null }; }; function throttle2(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: throttle2, splitString, rightItemsfirst, rightItemssecond }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); const _imports_0$3 = "/static/index/oldman.png"; function _sfc_render$e(_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.cycleType ? (vue.openBlock(), vue.createElementBlock( "view", { key: 0, class: vue.normalizeClass($setup.saveruler.cycleType == "日常" ? `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.startTime + `-` + $setup.saveruler.endTime), 1 /* TEXT */ ), vue.createElementVNode("image", { class: "title-time-button", src: $setup.saveruler.cycleType == "日常" ? `/static/index/yellowbian.png` : `/static/index/puoplebian.png` }, null, 8, ["src"]), vue.createElementVNode( "view", { class: "title-time-font" }, vue.toDisplayString($setup.saveruler.cycleType), 1 /* TEXT */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.saveruler.startTime] ]), vue.createElementVNode( "view", { style: { "margin-top": "20rpx", "font-weight": "700" } }, vue.toDisplayString($setup.splitString($setup.saveruler.directiveName)[0]), 1 /* TEXT */ ), vue.withDirectives(vue.createElementVNode( "view", { class: "down-icons", style: vue.normalizeStyle($setup.saveruler.cycleType != "日常" ? { backgroundColor: `rgb(212,203,255)` } : {}) }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.splitString($setup.saveruler.directiveName).slice(1), (item, index2) => { return vue.openBlock(), vue.createElementBlock("view", { class: "", key: index2 }, [ vue.createElementVNode( "view", { class: "icon", style: vue.normalizeStyle($setup.saveruler.cycleType != "日常" ? { backgroundColor: `rgb(123,97,255)` } : {}) }, vue.toDisplayString($setup.splitString($setup.saveruler.directiveName)[1]), 5 /* TEXT, STYLE */ ) ]); }), 128 /* KEYED_FRAGMENT */ )) ], 4 /* STYLE */ ), [ [vue.vShow, $setup.splitString($setup.saveruler.directiveName)[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$3 }), 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2, 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, index2 === $setup.menuIndex] ]), vue.createElementVNode("image", { class: "left-img", src: index2 === $setup.menuIndex ? item.targetUrl : item.url, onClick: ($event) => $setup.changeMenu(index2) }, 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 PagesNursingIndex = /* @__PURE__ */ _export_sfc(_sfc_main$f, [["render", _sfc_render$e], ["__scopeId", "data-v-b6cc7861"], ["__file", "D:/hldy_app/pages/Nursing/index.vue"]]); const _imports_0$2 = "/static/index/caigouqingdan.png"; const ballWidth = 60; const ballHeight = 60; const longPressThreshold = 300; const _sfc_main$e = { __name: "ball", props: { isShow: { type: Boolean, required: true } }, emits: ["clickBall"], setup(__props, { expose: __expose, emit: __emit }) { __expose(); const props = __props; const emit = __emit; const ballLeft = vue.ref(1090); const ballTop = vue.ref(120); const isDragging = vue.ref(false); let startTouchX = 0; let startTouchY = 0; let initialLeft = 0; let initialTop = 0; let longPressTimer = null; let windowWidth = 0; let windowHeight = 0; vue.onMounted(() => { const res = uni.getSystemInfoSync(); windowWidth = res.windowWidth; windowHeight = res.windowHeight; }); function handleTouchStart(e) { const touch = e.touches[0]; startTouchX = touch.clientX; startTouchY = touch.clientY; initialLeft = ballLeft.value; initialTop = ballTop.value; longPressTimer = setTimeout(() => { isDragging.value = true; }, longPressThreshold); } function handleTouchMove(e) { if (!isDragging.value) { const touch = e.touches[0]; const deltaX = Math.abs(touch.clientX - startTouchX); const deltaY = Math.abs(touch.clientY - startTouchY); if (deltaX > 5 || deltaY > 5) { clearTimeout(longPressTimer); isDragging.value = true; } } if (isDragging.value) { const touch = e.touches[0]; let newLeft = initialLeft + (touch.clientX - startTouchX); let newTop = initialTop + (touch.clientY - startTouchY); newLeft = Math.max(0, Math.min(newLeft, windowWidth - ballWidth)); newTop = Math.max(0, Math.min(newTop, windowHeight - ballHeight)); ballLeft.value = newLeft; ballTop.value = newTop; } } function handleTouchEnd(e) { clearTimeout(longPressTimer); if (isDragging.value) { isDragging.value = false; } else { triggerClick(); } } function triggerClick() { emit("clickBall"); } const __returned__ = { props, emit, ballWidth, ballHeight, longPressThreshold, ballLeft, ballTop, isDragging, get startTouchX() { return startTouchX; }, set startTouchX(v) { startTouchX = v; }, get startTouchY() { return startTouchY; }, set startTouchY(v) { startTouchY = v; }, get initialLeft() { return initialLeft; }, set initialLeft(v) { initialLeft = v; }, get initialTop() { return initialTop; }, set initialTop(v) { initialTop = v; }, get longPressTimer() { return longPressTimer; }, set longPressTimer(v) { longPressTimer = v; }, get windowWidth() { return windowWidth; }, set windowWidth(v) { windowWidth = v; }, get windowHeight() { return windowHeight; }, set windowHeight(v) { windowHeight = v; }, handleTouchStart, handleTouchMove, handleTouchEnd, triggerClick, ref: vue.ref, onMounted: vue.onMounted }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }; function _sfc_render$d(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock( vue.Fragment, null, [ vue.createCommentVNode(" 使用 view 作为悬浮球容器,通过绑定 style 进行定位 "), vue.withDirectives(vue.createElementVNode( "view", { class: "floating-ball", style: vue.normalizeStyle({ left: $setup.ballLeft + "px", top: $setup.ballTop + "px" }), onTouchstart: $setup.handleTouchStart, onTouchmove: $setup.handleTouchMove, onTouchend: $setup.handleTouchEnd, onTouchcancel: $setup.handleTouchEnd }, [ vue.createElementVNode("image", { class: "floating-ball-img", src: _imports_0$2 }) ], 36 /* STYLE, NEED_HYDRATION */ ), [ [vue.vShow, $props.isShow] ]) ], 2112 /* STABLE_FRAGMENT, DEV_ROOT_FRAGMENT */ ); } const ball = /* @__PURE__ */ _export_sfc(_sfc_main$e, [["render", _sfc_render$d], ["__scopeId", "data-v-1da59535"], ["__file", "D:/hldy_app/component/storeroom/ball.vue"]]); const _imports_0$1 = "/static/index/saveUp.png"; const _imports_1$2 = "/static/index/saveDown.png"; const _imports_2$1 = "/static/index/saveNumber.png"; const _sfc_main$d = {}; function _sfc_render$c(_ctx, _cache) { return vue.openBlock(), vue.createElementBlock( vue.Fragment, null, [ vue.createElementVNode("view", { class: "popup-detail-left" }, [ vue.createElementVNode("view", { class: "popup-detail-left-white" }, [ vue.createElementVNode("image", { class: "popup-detail-left-white-img", src: `/static/index/project3.png` }, null, 8, ["src"]) ]), vue.createElementVNode("view", { class: "popup-detail-left-bottom" }, [ vue.createElementVNode("view", { class: "popup-small-card" }, [ vue.createElementVNode("view", { class: "popup-small-circle" }, [ vue.createElementVNode("image", { class: "popup-small-circle-img", src: _imports_0$1 }) ]), vue.createElementVNode("view", { class: "popup-small-number" }, "1000"), vue.createElementVNode("view", { class: "popup-small-font" }, "库存上限") ]), vue.createElementVNode("view", { class: "popup-small-shu" }), vue.createElementVNode("view", { class: "popup-small-card" }, [ vue.createElementVNode("view", { class: "popup-small-circle" }, [ vue.createElementVNode("image", { class: "popup-small-circle-img", src: _imports_1$2 }) ]), vue.createElementVNode("view", { class: "popup-small-number" }, "10"), vue.createElementVNode("view", { class: "popup-small-font" }, "库存下限") ]), vue.createElementVNode("view", { class: "popup-small-shu" }), vue.createElementVNode("view", { class: "popup-small-card" }, [ vue.createElementVNode("view", { class: "popup-small-circle" }, [ vue.createElementVNode("image", { class: "popup-small-circle-img", src: _imports_2$1 }) ]), vue.createElementVNode("view", { class: "popup-small-number" }, "50"), vue.createElementVNode("view", { class: "popup-small-font" }, "库存数量") ]) ]) ]), vue.createElementVNode("view", { class: "popup-detail-right" }, [ vue.createElementVNode("view", { class: "popup-detail-title" }, [ vue.createElementVNode("view", { class: "popup-detail-weight" }, " 纸尿裤-拉拉裤 "), vue.createElementVNode("view", { class: "popup-detail-gray" }, " ZHYP044 ") ]), vue.createElementVNode("view", { class: "popup-weight" }, " 物料分类 "), vue.createElementVNode("view", { class: "popup-right-father" }, [ vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 物料类别: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 生活用品 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 物料类型: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 照护用品 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 物料类别: "), vue.createElementVNode("view", { class: "popup-font-right" }, " - ") ]) ]), vue.createElementVNode("view", { class: "popup-weight" }, " 物料信息 "), vue.createElementVNode("view", { class: "popup-right-father" }, [ vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 物料品牌: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 洁奴 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 采购单位: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 片 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 参考单价: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 1.175 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 采购单价: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 2 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain", style: { "width": "100%" } }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 规格型号: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 800mm*690mm ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain", style: { "width": "100%" } }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 供 应 商 : "), vue.createElementVNode("view", { class: "popup-font-right" }, " 山东恒发卫生用品有限公司 ") ]) ]), vue.createElementVNode("view", { class: "popup-weight" }, " 优惠信息 "), vue.createElementVNode("view", { class: "popup-right-father" }, [ vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 医保报销: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 是 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 机构优惠: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 否 ") ]) ]), vue.createElementVNode("view", { class: "swiper-left-buttons-big" }, [ vue.createElementVNode("view", { class: "swiper-left-button-blue" }, " 请购 "), vue.createElementVNode("view", { class: "swiper-left-button" }, " 出入库 ") ]) ]) ], 64 /* STABLE_FRAGMENT */ ); } const info = /* @__PURE__ */ _export_sfc(_sfc_main$d, [["render", _sfc_render$c], ["__scopeId", "data-v-00c1a064"], ["__file", "D:/hldy_app/component/storeroom/info.vue"]]); const _sfc_main$c = {}; function _sfc_render$b(_ctx, _cache) { return vue.openBlock(), vue.createElementBlock( vue.Fragment, null, [ vue.createElementVNode("view", { class: "popup-detail-left" }, [ vue.createElementVNode("view", { class: "popup-detail-left-white" }, [ vue.createElementVNode("image", { class: "popup-detail-left-white-img", src: `/static/index/project3.png` }, null, 8, ["src"]) ]), vue.createElementVNode("view", { class: "popup-detail-left-bottom" }, [ vue.createElementVNode("view", { class: "popup-small-card" }, [ vue.createElementVNode("view", { class: "popup-small-circle" }, [ vue.createElementVNode("image", { class: "popup-small-circle-img", src: _imports_0$1 }) ]), vue.createElementVNode("view", { class: "popup-small-number" }, "1000"), vue.createElementVNode("view", { class: "popup-small-font" }, "库存上限") ]), vue.createElementVNode("view", { class: "popup-small-shu" }), vue.createElementVNode("view", { class: "popup-small-card" }, [ vue.createElementVNode("view", { class: "popup-small-circle" }, [ vue.createElementVNode("image", { class: "popup-small-circle-img", src: _imports_1$2 }) ]), vue.createElementVNode("view", { class: "popup-small-number" }, "10"), vue.createElementVNode("view", { class: "popup-small-font" }, "库存下限") ]), vue.createElementVNode("view", { class: "popup-small-shu" }), vue.createElementVNode("view", { class: "popup-small-card" }, [ vue.createElementVNode("view", { class: "popup-small-circle" }, [ vue.createElementVNode("image", { class: "popup-small-circle-img", src: _imports_2$1 }) ]), vue.createElementVNode("view", { class: "popup-small-number" }, "50"), vue.createElementVNode("view", { class: "popup-small-font" }, "库存数量") ]) ]) ]), vue.createElementVNode("view", { class: "popup-detail-right" }, [ vue.createElementVNode("view", { class: "popup-detail-title" }, [ vue.createElementVNode("view", { class: "popup-detail-weight" }, " 纸尿裤-拉拉裤 "), vue.createElementVNode("view", { class: "popup-detail-gray" }, " ZHYP044 ") ]), vue.createElementVNode("view", { class: "popup-weight" }, " 物料分类 "), vue.createElementVNode("view", { class: "popup-right-father" }, [ vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 物料类别: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 生活用品 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 物料类型: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 照护用品 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 物料类别: "), vue.createElementVNode("view", { class: "popup-font-right" }, " - ") ]) ]), vue.createElementVNode("view", { class: "popup-weight" }, " 物料信息 "), vue.createElementVNode("view", { class: "popup-right-father" }, [ vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 物料品牌: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 洁奴 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 采购单位: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 片 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 参考单价: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 1.175 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 采购单价: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 2 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain", style: { "width": "100%" } }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 规格型号: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 800mm*690mm ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain", style: { "width": "100%" } }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 供 应 商 : "), vue.createElementVNode("view", { class: "popup-font-right" }, " 山东恒发卫生用品有限公司 ") ]) ]), vue.createElementVNode("view", { class: "popup-weight" }, " 优惠信息 "), vue.createElementVNode("view", { class: "popup-right-father" }, [ vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 医保报销: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 是 ") ]), vue.createElementVNode("view", { class: "popup-right-font-contain" }, [ vue.createElementVNode("view", { class: "popup-font-left" }, " 机构优惠: "), vue.createElementVNode("view", { class: "popup-font-right" }, " 否 ") ]) ]), vue.createElementVNode("view", { class: "swiper-left-buttons-big" }, [ vue.createElementVNode("view", { class: "swiper-left-button-blue" }, " 请购 "), vue.createElementVNode("view", { class: "swiper-left-button" }, " 出入库 ") ]) ]) ], 64 /* STABLE_FRAGMENT */ ); } const plsbuy = /* @__PURE__ */ _export_sfc(_sfc_main$c, [["render", _sfc_render$b], ["__scopeId", "data-v-63b6096e"], ["__file", "D:/hldy_app/component/storeroom/plsbuy.vue"]]); const _sfc_main$b = /* @__PURE__ */ vue.defineComponent({ __name: "index", setup(__props, { expose: __expose }) { __expose(); const note = vue.ref(""); const __returned__ = { note }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); function _sfc_render$a(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("view", { class: "draw-all" }, [ vue.createElementVNode("view", { class: "draw-title" }, [ vue.createElementVNode("view", { class: "draw-flex" }, [ vue.createElementVNode("view", { class: "draw-title-gun" }), vue.createElementVNode("view", { class: "draw-title-font" }, "请购清单") ]), vue.createElementVNode("view", { class: "draw-blue" }, " 请购单号:A0120250301001 ") ]), vue.createElementVNode("view", { class: "draw-contain" }, [ vue.createElementVNode("view", { class: "scroll-view" }, [ vue.createElementVNode("scroll-view", { "scroll-y": "", style: { "height": "93%", "margin-top": "2%" }, "show-scrollbar": false }, [ vue.createElementVNode("view", { class: "swiper-flex" }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], (item, index2) => { return vue.createElementVNode("view", { key: index2 }, [ vue.createElementVNode("view", { class: "swiper-card" }, [ vue.createCommentVNode(" 卡片内容 "), vue.createElementVNode("view", { class: "swiper-card-top" }, [ vue.createElementVNode("image", { class: "swiper-card-top-img", src: `/static/index/project3.png` }, null, 8, ["src"]), vue.createElementVNode("view", { class: "swiper-card-top-card" }, [ vue.createElementVNode("view", { class: "swiper-card-top-card-weight" }, [ vue.createElementVNode("view", { class: "weight-left" }, " 纸尿裤-拉拉裤 "), vue.createElementVNode("view", { class: "weight-right", style: { "width": "40%" } }, " 采购数量:50 ") ]), vue.createElementVNode("view", { class: "swiper-card-top-card-noral" }, [ vue.createElementVNode("view", { class: "swiper-all-flex" }, [ vue.createElementVNode("view", { class: "swiper-gray" }, " 规格型号: "), vue.createElementVNode("view", { class: "swiper-black" }, " 800mm*690mm ") ]) ]), vue.createElementVNode("view", { class: "swiper-card-top-card-noral" }, [ vue.createElementVNode("view", { class: "swiper-all-flex" }, [ vue.createElementVNode("view", { class: "swiper-gray" }, " 采购单位: "), vue.createElementVNode("view", { class: "swiper-black" }, " 片 ") ]), vue.createElementVNode("view", { class: "swiper-all-flex", style: { "width": "40%" } }, [ vue.createElementVNode("view", { class: "swiper-gray" }, " 库存数量: "), vue.createElementVNode("view", { class: "swiper-black" }, " 50 ") ]) ]), vue.createElementVNode("view", { class: "swiper-card-top-card-noral" }, [ vue.createElementVNode("view", { class: "swiper-all-flex" }, [ vue.createElementVNode("view", { class: "swiper-gray" }, " 库存下限: "), vue.createElementVNode("view", { class: "swiper-black" }, " 10 ") ]), vue.createElementVNode("view", { class: "swiper-all-flex", style: { "width": "40%" } }, [ vue.createElementVNode("view", { class: "swiper-gray" }, " 库存上限: "), vue.createElementVNode("view", { class: "swiper-black" }, " 1000 ") ]) ]) ]) ]), vue.createElementVNode("view", { class: "swiper-card-down" }, [ vue.createElementVNode("view", { class: "down-left" }, [ vue.createElementVNode("view", { class: "down-left-weight" }, " 供应商: "), vue.createElementVNode("view", { class: "down-left-font" }, " 长春市永佳利商贸有限公司1 ") ]), vue.createElementVNode("image", { class: "delete-img", src: `/static/index/deleteIt.png` }, null, 8, ["src"]) ]) ]) ]); }), 64 /* STABLE_FRAGMENT */ )) ]) ]) ]), vue.createElementVNode("view", { class: "down-note" }, [ vue.withDirectives(vue.createElementVNode( "textarea", { class: "down-note-title-input", "onUpdate:modelValue": _cache[0] || (_cache[0] = ($event) => $setup.note = $event), maxlength: "300", "placeholder-style": "color:#999", placeholder: "请输入备注" }, null, 512 /* NEED_PATCH */ ), [ [vue.vModelText, $setup.note] ]), vue.createElementVNode( "text", { class: "char-count" }, vue.toDisplayString($setup.note.length) + "/300", 1 /* TEXT */ ) ]), vue.createElementVNode("view", { class: "down-button" }, [ vue.createElementVNode("view", { class: "swiper-left-button-orange" }, " 清空 "), vue.createElementVNode("view", { class: "swiper-left-button-blue" }, " 保存 "), vue.createElementVNode("view", { class: "swiper-left-button-blue" }, " 提交 ") ]) ]) ]); } const shoppingCar = /* @__PURE__ */ _export_sfc(_sfc_main$b, [["render", _sfc_render$a], ["__scopeId", "data-v-4e05069f"], ["__file", "D:/hldy_app/component/storeroom/shoppingCar/index.vue"]]); const _sfc_main$a = /* @__PURE__ */ vue.defineComponent({ __name: "index", props: { isShow: { type: Boolean, required: true } }, setup(__props, { expose: __expose }) { __expose(); const props = __props; const transition = vue.ref(true); const drawer = vue.ref(null); vue.watch( () => props.isShow, (newVal, oldVal) => { if (!oldVal && newVal) { transition.value = false; setTimeout(() => { transition.value = true; }, 50); } } ); const detailisopen = vue.ref(false); const detailisopacity = vue.ref(false); const plsBuyIsopen = vue.ref(false); const plsBuyisopacity = vue.ref(false); const isWarning = vue.ref(false); const buttonList = vue.ref([ // { url: '/static/index/Warehousing/zuoce.png', name: '请购单' }, { url: "/static/index/Warehousing/sousuo.png", name: "查询" }, { url: "/static/index/Warehousing/chongzhi.png", name: "重置" } ]); const opendetail = () => { detailisopen.value = true; detailisopacity.value = false; setTimeout(() => { detailisopacity.value = true; }, 200); }; const openBuy = () => { plsBuyIsopen.value = true; plsBuyisopacity.value = false; setTimeout(() => { plsBuyisopacity.value = true; }, 200); }; const clickBall = () => { drawer.value.openDrawer(); }; const __returned__ = { props, transition, drawer, detailisopen, detailisopacity, plsBuyIsopen, plsBuyisopacity, isWarning, buttonList, opendetail, openBuy, clickBall, ball, info, plsbuy, Drawer, shoppingCar }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); const _imports_0 = "/static/index/Warehousing/firstbutton.png"; const _imports_1$1 = "/static/index/Warehousing/secondbutton.png"; const _imports_2 = "/static/index/Warehousing/thirdbutton.png"; const _imports_3 = "/static/index/Warehousing/fourthbutton.png"; function _sfc_render$9(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock( vue.Fragment, null, [ vue.withDirectives(vue.createElementVNode( "view", { class: "index-content-other", style: vue.normalizeStyle($setup.transition ? { opacity: `1` } : { opacity: `0` }) }, [ vue.createElementVNode("view", { class: "index-content-right" }, [ vue.createCommentVNode(" 解决margin重叠问题 "), vue.createElementVNode("view", { class: "index-right-height" }), vue.createElementVNode("view", { class: "index-right-title" }, [ vue.createElementVNode("view", { class: "index-right-name" }, " 货品名称 "), vue.createElementVNode("input", { class: "index-right-input", placeholder: "请输入货品名称" }), vue.createElementVNode("view", { class: "index-right-name" }, " 货品编码 "), vue.createElementVNode("input", { class: "index-right-input", placeholder: "请输入货品编码" }), vue.createElementVNode("view", { class: "index-right-name" }, " 拼音检索 "), vue.createElementVNode("input", { class: "index-right-input", placeholder: "请输入货品拼音" }), vue.createElementVNode("view", { class: "index-right-button-all" }, [ vue.createElementVNode("view", { class: "first-bgc" }, [ vue.createElementVNode("image", { class: "bgc-img", src: _imports_0 }) ]), vue.createElementVNode("view", { class: "second-bgc" }, [ vue.createElementVNode("image", { class: "bgc-img", src: _imports_1$1 }) ]), vue.createElementVNode( "view", { class: vue.normalizeClass(!$setup.isWarning ? `third-bgc` : `bgc-white`), onClick: _cache[0] || (_cache[0] = ($event) => $setup.isWarning = !$setup.isWarning) }, [ vue.withDirectives(vue.createElementVNode( "view", { class: "red-pao" }, vue.toDisplayString(`99+`), 512 /* NEED_PATCH */ ), [ [vue.vShow, !$setup.isWarning] ]), vue.createElementVNode("image", { class: "bgc-img", src: _imports_2 }) ], 2 /* CLASS */ ), vue.createElementVNode("view", { class: "fourth-bgc" }, [ vue.createElementVNode("image", { class: "fourth-bgc-img", src: _imports_3 }), vue.createElementVNode("view", { class: "fourth-bgc-font" }, " 请购单 ") ]), (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.buttonList, (item, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2 }, [ vue.createElementVNode("view", { class: "index-right-button" }, [ vue.createElementVNode("image", { class: "index-right-button-img", src: item.url }, null, 8, ["src"]), vue.createElementVNode( "view", { class: "index-right-button-font" }, vue.toDisplayString(item.name), 1 /* TEXT */ ) ]) ]); }), 128 /* KEYED_FRAGMENT */ )) ]) ]), vue.createElementVNode("view", { class: "swiper-contain" }, [ vue.createElementVNode("scroll-view", { "scroll-y": "", style: { "height": "98%" }, "show-scrollbar": false }, [ vue.createElementVNode("view", { class: "swiper-flex" }, [ (vue.openBlock(), vue.createElementBlock( vue.Fragment, null, vue.renderList([1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1], (item, index2) => { return vue.createElementVNode("view", { key: index2 }, [ vue.createElementVNode("view", { class: "swiper-card" }, [ vue.createElementVNode("view", { class: "swiper-card-left" }, [ vue.createElementVNode("view", { class: "swiper-card-left-white" }, [ vue.createElementVNode("image", { class: "swiper-card-left-white-img", src: `/static/index/project3.png`, onClick: $setup.opendetail }, null, 8, ["src"]) ]) ]), vue.createElementVNode("view", { class: "swiper-card-right" }, [ vue.createElementVNode("view", { class: "swiper-right-title" }, [ vue.createElementVNode("view", { class: "swiper-title-font" }, "纸尿裤-拉拉裤"), vue.createElementVNode("view", { class: "swiper-title-font-button" }, " 护理类 ") ]), vue.createElementVNode("view", { class: "swiper-heng" }), vue.createElementVNode("view", { class: "swiper-font" }, " 规格型号:800mm*690mm "), vue.createElementVNode("view", { class: "swiper-double" }, [ vue.createElementVNode("view", { class: "swiper-littlefont" }, " 采购单位:片 "), vue.withDirectives(vue.createElementVNode( "view", { class: "swiper-littlefont", style: { "margin-left": "10rpx" } }, [ vue.createTextVNode(" 库存 "), vue.createElementVNode("view", { style: { "color": "rgb(18,169,51)" } }, "↑"), vue.createTextVNode(" :1000 ") ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.isWarning] ]) ]), vue.createElementVNode("view", { class: "swiper-double" }, [ vue.createElementVNode("view", { class: "swiper-littlefont" }, [ vue.createTextVNode(" 库存数量: "), vue.createElementVNode("view", { class: "blackfont" }, " 50 ") ]), vue.withDirectives(vue.createElementVNode( "view", { class: "swiper-littlefont", style: { "margin-left": "10rpx" } }, [ vue.createTextVNode(" 库存 "), vue.createElementVNode("view", { style: { "color": "rgb(248,122,85)" } }, "↓"), vue.createTextVNode(" :5 ") ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.isWarning] ]) ]), vue.createElementVNode("view", { class: "swiper-left-buttons" }, [ vue.createElementVNode("view", { class: "swiper-left-button-blue", onClick: $setup.openBuy }, " 请购 "), vue.createElementVNode("view", { class: "swiper-left-button" }, " 出入库 ") ]) ]) ]) ]); }), 64 /* STABLE_FRAGMENT */ )) ]) ]) ]) ]), vue.createElementVNode("view", { class: "index-content-down" }, " 长春市朝阳区久泰开运养老服务有限公司 ") ], 4 /* STYLE */ ), [ [vue.vShow, $props.isShow] ]), vue.createCommentVNode(" 详情的的弹出层 "), vue.withDirectives(vue.createElementVNode( "view", { class: "popup-detail", onClick: _cache[2] || (_cache[2] = ($event) => $setup.detailisopen = false) }, [ vue.createElementVNode( "view", { class: "popup-detail-content", style: vue.normalizeStyle({ opacity: $setup.detailisopacity ? 1 : 0 }), onClick: _cache[1] || (_cache[1] = vue.withModifiers(() => { }, ["stop"])) }, [ vue.createVNode($setup["info"]) ], 4 /* STYLE */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.detailisopen && $props.isShow] ]), vue.createCommentVNode(" 请购的的弹出层 "), vue.withDirectives(vue.createElementVNode( "view", { class: "popup-detail", onClick: _cache[4] || (_cache[4] = ($event) => $setup.plsBuyIsopen = false) }, [ vue.createElementVNode( "view", { class: "popup-detail-content", style: vue.normalizeStyle({ opacity: $setup.plsBuyisopacity ? 1 : 0 }), onClick: _cache[3] || (_cache[3] = vue.withModifiers(() => { }, ["stop"])) }, [ vue.createVNode($setup["plsbuy"]) ], 4 /* STYLE */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.plsBuyIsopen && $props.isShow] ]), vue.createVNode( $setup["Drawer"], { ref: "drawer" }, { default: vue.withCtx(() => [ vue.createVNode($setup["shoppingCar"]) ]), _: 1 /* STABLE */ }, 512 /* NEED_PATCH */ ), vue.createVNode($setup["ball"], { isShow: $props.isShow && !$setup.detailisopen && !$setup.plsBuyIsopen, onClick: $setup.clickBall }, null, 8, ["isShow"]) ], 64 /* STABLE_FRAGMENT */ ); } const storeroomindex = /* @__PURE__ */ _export_sfc(_sfc_main$a, [["render", _sfc_render$9], ["__scopeId", "data-v-8856eb47"], ["__file", "D:/hldy_app/component/storeroom/index.vue"]]); const _sfc_main$9 = { name: "u-icon", emits: ["click", "touchstart"], props: { // 图标类名 name: { type: String, default: "" }, // 图标颜色,可接受主题色 color: { type: [String, null], default: "" }, // 字体大小,单位rpx size: { type: [Number, String], default: "inherit" }, // 是否显示粗体 bold: { type: Boolean, default: false }, // 点击图标的时候传递事件出去的index(用于区分点击了哪一个) index: { type: [Number, String], default: "" }, // 触摸图标时的类名 hoverClass: { type: String, default: "" }, // 自定义扩展前缀,方便用户扩展自己的图标库 customPrefix: { type: String, default: "uicon" }, // 图标右边或者下面的文字 label: { type: [String, Number], default: "" }, // label的位置,只能右边或者下边 labelPos: { type: String, default: "right" }, // label的大小 labelSize: { type: [String, Number], default: "28" }, // label的颜色 labelColor: { type: String, default: "#606266" }, // label与图标的距离(横向排列) marginLeft: { type: [String, Number], default: "6" }, // label与图标的距离(竖向排列) marginTop: { type: [String, Number], default: "6" }, // label与图标的距离(竖向排列) marginRight: { type: [String, Number], default: "6" }, // label与图标的距离(竖向排列) marginBottom: { type: [String, Number], default: "6" }, // 图片的mode imgMode: { type: String, default: "widthFix" }, // 自定义样式 customStyle: { type: Object, default() { return {}; } }, // 用于显示图片小图标时,图片的宽度 width: { type: [String, Number], default: "" }, // 用于显示图片小图标时,图片的高度 height: { type: [String, Number], default: "" }, // 用于解决某些情况下,让图标垂直居中的用途 top: { type: [String, Number], default: 0 }, // 是否为DecimalIcon showDecimalIcon: { type: Boolean, default: false }, // 背景颜色,可接受主题色,仅Decimal时有效 inactiveColor: { type: String, default: "#ececec" }, // 显示的百分比,仅Decimal时有效 percent: { type: [Number, String], default: "50" } }, computed: { customClass() { let classes = []; let { customPrefix, name } = this; let index2 = name.indexOf("-icon-"); if (index2 > -1) { customPrefix = name.substring(0, index2 + 5); classes.push(name); } else { classes.push(`${customPrefix}-${name}`); } if (customPrefix === "uicon") { classes.push("u-iconfont"); } else { classes.push(customPrefix); } if (this.showDecimalIcon && this.inactiveColor && this.$u.config.type.includes(this.inactiveColor)) { classes.push("u-icon__icon--" + this.inactiveColor); } else if (this.color && this.$u.config.type.includes(this.color)) classes.push("u-icon__icon--" + this.color); return classes; }, iconStyle() { let style = {}; style = { fontSize: this.size == "inherit" ? "inherit" : this.$u.addUnit(this.size), fontWeight: this.bold ? "bold" : "normal", // 某些特殊情况需要设置一个到顶部的距离,才能更好的垂直居中 top: this.$u.addUnit(this.top) }; if (this.showDecimalIcon && this.inactiveColor && !this.$u.config.type.includes(this.inactiveColor)) { style.color = this.inactiveColor; } else if (this.color && !this.$u.config.type.includes(this.color)) style.color = this.color; return style; }, // 判断传入的name属性,是否图片路径,只要带有"/"均认为是图片形式 isImg() { return this.name.indexOf("/") !== -1; }, imgStyle() { let style = {}; style.width = this.width ? this.$u.addUnit(this.width) : this.$u.addUnit(this.size); style.height = this.height ? this.$u.addUnit(this.height) : this.$u.addUnit(this.size); return style; }, decimalIconStyle() { let style = {}; style = { fontSize: this.size == "inherit" ? "inherit" : this.$u.addUnit(this.size), fontWeight: this.bold ? "bold" : "normal", // 某些特殊情况需要设置一个到顶部的距离,才能更好的垂直居中 top: this.$u.addUnit(this.top), width: this.percent + "%" }; if (this.color && !this.$u.config.type.includes(this.color)) style.color = this.color; return style; }, decimalIconClass() { let classes = []; classes.push(this.customPrefix + "-" + this.name); if (this.customPrefix == "uicon") { classes.push("u-iconfont"); } else { classes.push(this.customPrefix); } if (this.color && this.$u.config.type.includes(this.color)) classes.push("u-icon__icon--" + this.color); else classes.push("u-icon__icon--primary"); return classes; } }, methods: { click() { this.$emit("click", this.index); }, touchstart() { this.$emit("touchstart", this.index); } } }; function _sfc_render$8(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock( "view", { style: vue.normalizeStyle([$props.customStyle]), class: vue.normalizeClass(["u-icon", ["u-icon--" + $props.labelPos]]), onClick: _cache[1] || (_cache[1] = (...args) => $options.click && $options.click(...args)) }, [ $options.isImg ? (vue.openBlock(), vue.createElementBlock("image", { key: 0, class: "u-icon__img", src: $props.name, mode: $props.imgMode, style: vue.normalizeStyle([$options.imgStyle]) }, null, 12, ["src", "mode"])) : (vue.openBlock(), vue.createElementBlock("view", { key: 1, class: vue.normalizeClass(["u-icon__icon", $options.customClass]), style: vue.normalizeStyle([$options.iconStyle]), "hover-class": $props.hoverClass, onTouchstart: _cache[0] || (_cache[0] = (...args) => $options.touchstart && $options.touchstart(...args)) }, [ $props.showDecimalIcon ? (vue.openBlock(), vue.createElementBlock("text", { key: 0, style: vue.normalizeStyle([$options.decimalIconStyle]), class: vue.normalizeClass([$options.decimalIconClass, "u-icon__decimal"]), "hover-class": $props.hoverClass }, null, 14, ["hover-class"])) : vue.createCommentVNode("v-if", true) ], 46, ["hover-class"])), vue.createCommentVNode(' 这里进行空字符串判断,如果仅仅是v-if="label",可能会出现传递0的时候,结果也无法显示,微信小程序不传值默认为null,故需要增加null的判断 '), $props.label !== "" && $props.label !== null ? (vue.openBlock(), vue.createElementBlock( "text", { key: 2, class: "u-icon__label", style: vue.normalizeStyle({ color: $props.labelColor, fontSize: _ctx.$u.addUnit($props.labelSize), marginLeft: $props.labelPos == "right" ? _ctx.$u.addUnit($props.marginLeft) : 0, marginTop: $props.labelPos == "bottom" ? _ctx.$u.addUnit($props.marginTop) : 0, marginRight: $props.labelPos == "left" ? _ctx.$u.addUnit($props.marginRight) : 0, marginBottom: $props.labelPos == "top" ? _ctx.$u.addUnit($props.marginBottom) : 0 }) }, vue.toDisplayString($props.label), 5 /* TEXT, STYLE */ )) : vue.createCommentVNode("v-if", true) ], 6 /* CLASS, STYLE */ ); } const __easycom_0$2 = /* @__PURE__ */ _export_sfc(_sfc_main$9, [["render", _sfc_render$8], ["__scopeId", "data-v-5de67484"], ["__file", "D:/hldy_app/uni_modules/vk-uview-ui/components/u-icon/u-icon.vue"]]); const _sfc_main$8 = { name: "u-button", emits: ["click", "getphonenumber", "getuserinfo", "error", "opensetting", "launchapp", "chooseavatar"], props: { // 是否细边框 hairLine: { type: Boolean, default: true }, // 按钮的预置样式,default,primary,error,warning,success type: { type: String, default: "default" }, // 按钮尺寸,default,medium,mini size: { type: String, default: "default" }, // 按钮形状,circle(两边为半圆),square(带圆角) shape: { type: String, default: "square" }, // 按钮是否镂空 plain: { type: Boolean, default: false }, // 是否禁止状态 disabled: { type: Boolean, default: false }, // 是否加载中 loading: { type: Boolean, default: false }, // 开放能力,具体请看uniapp稳定关于button组件部分说明 // https://uniapp.dcloud.io/component/button openType: { type: String, default: "" }, // 用于
组件,点击分别会触发 组件的 submit/reset 事件 // 取值为submit(提交表单),reset(重置表单) formType: { type: String, default: "" }, // 打开 APP 时,向 APP 传递的参数,open-type=launchApp时有效 // 只微信小程序、QQ小程序有效 appParameter: { type: String, default: "" }, // 指定是否阻止本节点的祖先节点出现点击态,微信小程序有效 hoverStopPropagation: { type: Boolean, default: false }, // 指定返回用户信息的语言,zh_CN 简体中文,zh_TW 繁体中文,en 英文。只微信小程序有效 lang: { type: String, default: "en" }, // 会话来源,open-type="contact"时有效。只微信小程序有效 sessionFrom: { type: String, default: "" }, // 会话内消息卡片标题,open-type="contact"时有效 // 默认当前标题,只微信小程序有效 sendMessageTitle: { type: String, default: "" }, // 会话内消息卡片点击跳转小程序路径,open-type="contact"时有效 // 默认当前分享路径,只微信小程序有效 sendMessagePath: { type: String, default: "" }, // 会话内消息卡片图片,open-type="contact"时有效 // 默认当前页面截图,只微信小程序有效 sendMessageImg: { type: String, default: "" }, // 是否显示会话内消息卡片,设置此参数为 true,用户进入客服会话会在右下角显示"可能要发送的小程序"提示, // 用户点击后可以快速发送小程序消息,open-type="contact"时有效 showMessageCard: { type: Boolean, default: false }, // 手指按(触摸)按钮时按钮时的背景颜色 hoverBgColor: { type: String, default: "" }, // 水波纹的背景颜色 rippleBgColor: { type: String, default: "" }, // 是否开启水波纹效果 ripple: { type: Boolean, default: false }, // 按下的类名 hoverClass: { type: String, default: "" }, // 自定义样式,对象形式 customStyle: { type: Object, default() { return {}; } }, // 额外传参参数,用于小程序的data-xxx属性,通过target.dataset.name获取 dataName: { type: String, default: "" }, // 节流,一定时间内只能触发一次 throttleTime: { type: [String, Number], default: 500 }, // 按住后多久出现点击态,单位毫秒 hoverStartTime: { type: [String, Number], default: 20 }, // 手指松开后点击态保留时间,单位毫秒 hoverStayTime: { type: [String, Number], default: 150 }, timerId: { type: [String, Number] } }, computed: { // 当没有传bgColor变量时,按钮按下去的颜色类名 getHoverClass() { if (this.loading || this.disabled || this.ripple || this.hoverClass) return ""; let hoverClass = ""; hoverClass = this.plain ? "u-" + this.type + "-plain-hover" : "u-" + this.type + "-hover"; return hoverClass; }, // 在'primary', 'success', 'error', 'warning'类型下,不显示边框,否则会造成四角有毛刺现象 showHairLineBorder() { if (["primary", "success", "error", "warning"].indexOf(this.type) >= 0 && !this.plain) { return ""; } else { return "u-hairline-border"; } } }, data() { let btnTimerId = this.timerId || "button_" + Math.floor(Math.random() * 1e8 + 0); return { btnTimerId, rippleTop: 0, // 水波纹的起点Y坐标到按钮上边界的距离 rippleLeft: 0, // 水波纹起点X坐标到按钮左边界的距离 fields: {}, // 波纹按钮节点信息 waveActive: false // 激活水波纹 }; }, methods: { // 按钮点击 click(e) { this.$u.throttle(() => { if (this.loading === true || this.disabled === true) return; if (this.ripple) { this.waveActive = false; this.$nextTick(function() { this.getWaveQuery(e); }); } this.$emit("click", e); }, this.throttleTime, true, this.btnTimerId); }, // 查询按钮的节点信息 getWaveQuery(e) { this.getElQuery().then((res) => { let data2 = res[0]; if (!data2.width || !data2.width) return; data2.targetWidth = data2.height > data2.width ? data2.height : data2.width; if (!data2.targetWidth) return; this.fields = data2; let touchesX = "", touchesY = ""; touchesX = e.touches[0].clientX; touchesY = e.touches[0].clientY; this.rippleTop = touchesY - data2.top - data2.targetWidth / 2; this.rippleLeft = touchesX - data2.left - data2.targetWidth / 2; this.$nextTick(() => { this.waveActive = true; }); }); }, // 获取节点信息 getElQuery() { return new Promise((resolve) => { let queryInfo = ""; queryInfo = uni.createSelectorQuery().in(this); queryInfo.select(".u-btn").boundingClientRect(); queryInfo.exec((data2) => { resolve(data2); }); }); }, // 下面为对接uniapp官方按钮开放能力事件回调的对接 getphonenumber(res) { this.$emit("getphonenumber", res); }, getuserinfo(res) { this.$emit("getuserinfo", res); }, error(res) { this.$emit("error", res); }, opensetting(res) { this.$emit("opensetting", res); }, launchapp(res) { this.$emit("launchapp", res); }, chooseavatar(res) { this.$emit("chooseavatar", res); } } }; function _sfc_render$7(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock("button", { id: "u-wave-btn", class: vue.normalizeClass(["u-btn u-line-1 u-fix-ios-appearance", [ "u-size-" + $props.size, $props.plain ? "u-btn--" + $props.type + "--plain" : "", $props.loading ? "u-loading" : "", $props.shape == "circle" ? "u-round-circle" : "", $props.hairLine ? $options.showHairLineBorder : "u-btn--bold-border", "u-btn--" + $props.type, $props.disabled ? `u-btn--${$props.type}--disabled` : "" ]]), "hover-start-time": Number($props.hoverStartTime), "hover-stay-time": Number($props.hoverStayTime), disabled: $props.disabled, "form-type": $props.formType, "open-type": $props.openType, "app-parameter": $props.appParameter, "hover-stop-propagation": $props.hoverStopPropagation, "send-message-title": $props.sendMessageTitle, "send-message-path": "sendMessagePath", lang: $props.lang, "data-name": $props.dataName, "session-from": $props.sessionFrom, "send-message-img": $props.sendMessageImg, "show-message-card": $props.showMessageCard, onGetphonenumber: _cache[0] || (_cache[0] = (...args) => $options.getphonenumber && $options.getphonenumber(...args)), onGetuserinfo: _cache[1] || (_cache[1] = (...args) => $options.getuserinfo && $options.getuserinfo(...args)), onError: _cache[2] || (_cache[2] = (...args) => $options.error && $options.error(...args)), onOpensetting: _cache[3] || (_cache[3] = (...args) => $options.opensetting && $options.opensetting(...args)), onLaunchapp: _cache[4] || (_cache[4] = (...args) => $options.launchapp && $options.launchapp(...args)), onChooseavatar: _cache[5] || (_cache[5] = (...args) => $options.chooseavatar && $options.chooseavatar(...args)), style: vue.normalizeStyle([$props.customStyle, { overflow: $props.ripple ? "hidden" : "visible" }]), onClick: _cache[6] || (_cache[6] = vue.withModifiers(($event) => $options.click($event), ["stop"])), "hover-class": $options.getHoverClass, loading: $props.loading }, [ vue.renderSlot(_ctx.$slots, "default", {}, void 0, true), $props.ripple ? (vue.openBlock(), vue.createElementBlock( "view", { key: 0, class: vue.normalizeClass(["u-wave-ripple", [$data.waveActive ? "u-wave-active" : ""]]), style: vue.normalizeStyle({ top: $data.rippleTop + "px", left: $data.rippleLeft + "px", width: $data.fields.targetWidth + "px", height: $data.fields.targetWidth + "px", "background-color": $props.rippleBgColor || "rgba(0, 0, 0, 0.15)" }) }, null, 6 /* CLASS, STYLE */ )) : vue.createCommentVNode("v-if", true) ], 46, ["hover-start-time", "hover-stay-time", "disabled", "form-type", "open-type", "app-parameter", "hover-stop-propagation", "send-message-title", "lang", "data-name", "session-from", "send-message-img", "show-message-card", "hover-class", "loading"]); } const __easycom_1 = /* @__PURE__ */ _export_sfc(_sfc_main$8, [["render", _sfc_render$7], ["__scopeId", "data-v-097def2b"], ["__file", "D:/hldy_app/uni_modules/vk-uview-ui/components/u-button/u-button.vue"]]); const _sfc_main$7 = { name: "u-mask", emits: ["click"], props: { // 是否显示遮罩 show: { type: Boolean, default: false }, // 层级z-index zIndex: { type: [Number, String], default: "" }, // 用户自定义样式 customStyle: { type: Object, default() { return {}; } }, // 遮罩的动画样式, 是否使用使用zoom进行scale进行缩放 zoom: { type: Boolean, default: true }, // 遮罩的过渡时间,单位为ms duration: { type: [Number, String], default: 300 }, // 是否可以通过点击遮罩进行关闭 maskClickAble: { type: Boolean, default: true }, // 遮罩的模糊度 blur: { type: [Number, String], default: 0 } }, data() { return { zoomStyle: { transform: "" }, scale: "scale(1.2, 1.2)" }; }, watch: { show(n) { if (n && this.zoom) { this.zoomStyle.transform = "scale(1, 1)"; } else if (!n && this.zoom) { this.zoomStyle.transform = this.scale; } } }, computed: { maskStyle() { let style = {}; style.backgroundColor = "rgba(0, 0, 0, 0.6)"; if (this.show) style.zIndex = this.zIndex ? this.zIndex : this.$u.zIndex.mask; else style.zIndex = -1; style.transition = `all ${this.duration / 1e3}s ease-in-out`; if (Object.keys(this.customStyle).length) style = { ...style, ...this.customStyle }; return style; }, filterStyle() { let { blur } = this; let style = {}; if (blur) { style.backdropFilter = `blur(${blur}rpx)`; } return style; } }, methods: { click() { if (!this.maskClickAble) return; this.$emit("click"); } } }; function _sfc_render$6(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock( "view", { class: vue.normalizeClass(["u-mask", { "u-mask-zoom": $props.zoom, "u-mask-show": $props.show }]), "hover-stop-propagation": "", style: vue.normalizeStyle([$options.maskStyle, $data.zoomStyle, $options.filterStyle]), onClick: _cache[0] || (_cache[0] = (...args) => $options.click && $options.click(...args)), onTouchmove: vue.withModifiers(() => { }, ["stop", "prevent"]) }, [ vue.renderSlot(_ctx.$slots, "default", {}, void 0, true) ], 38 /* CLASS, STYLE, NEED_HYDRATION */ ); } const __easycom_0$1 = /* @__PURE__ */ _export_sfc(_sfc_main$7, [["render", _sfc_render$6], ["__scopeId", "data-v-b3b508a8"], ["__file", "D:/hldy_app/uni_modules/vk-uview-ui/components/u-mask/u-mask.vue"]]); const _sfc_main$6 = { name: "u-popup", emits: ["update:modelValue", "input", "open", "close"], props: { value: { type: Boolean, default: false }, modelValue: { type: Boolean, default: false }, /** * 显示状态 */ show: { type: Boolean, default: false }, /** * 弹出方向,left|right|top|bottom|center */ mode: { type: String, default: "left" }, /** * 是否显示遮罩 */ mask: { type: Boolean, default: true }, // 抽屉的宽度(mode=left|right),或者高度(mode=top|bottom),单位rpx,或者"auto" // 或者百分比"50%",表示由内容撑开高度或者宽度 length: { type: [Number, String], default: "auto" }, // 是否开启缩放动画,只在mode=center时有效 zoom: { type: Boolean, default: true }, // 是否开启底部安全区适配,开启的话,会在iPhoneX机型底部添加一定的内边距 safeAreaInsetBottom: { type: Boolean, default: false }, // 是否可以通过点击遮罩进行关闭 maskCloseAble: { type: Boolean, default: true }, // 用户自定义样式 customStyle: { type: Object, default() { return {}; } }, // 此为内部参数,不在文档对外使用,为了解决Picker和keyboard等融合了弹窗的组件 // 对v-model双向绑定多层调用造成报错不能修改props值的问题 popup: { type: Boolean, default: true }, // 显示显示弹窗的圆角,单位rpx borderRadius: { type: [Number, String], default: 0 }, zIndex: { type: [Number, String], default: "" }, // 是否显示关闭图标 closeable: { type: Boolean, default: false }, // 关闭图标的名称,只能uView的内置图标 closeIcon: { type: String, default: "close" }, // 自定义关闭图标位置,top-left为左上角,top-right为右上角,bottom-left为左下角,bottom-right为右下角 closeIconPos: { type: String, default: "top-right" }, // 关闭图标的颜色 closeIconColor: { type: String, default: "#909399" }, // 关闭图标的大小,单位rpx closeIconSize: { type: [String, Number], default: "30" }, // 宽度,只对左,右,中部弹出时起作用,单位rpx,或者"auto" // 或者百分比"50%",表示由内容撑开高度或者宽度,优先级高于length参数 width: { type: String, default: "" }, // 高度,只对上,下,中部弹出时起作用,单位rpx,或者"auto" // 或者百分比"50%",表示由内容撑开高度或者宽度,优先级高于length参数 height: { type: String, default: "" }, // 给一个负的margin-top,往上偏移,避免和键盘重合的情况,仅在mode=center时有效 negativeTop: { type: [String, Number], default: 0 }, // 遮罩的样式,一般用于修改遮罩的透明度 maskCustomStyle: { type: Object, default() { return {}; } }, // 遮罩打开或收起的动画过渡时间,单位ms duration: { type: [String, Number], default: 250 }, // 遮罩的模糊度 blur: { type: [String, Number], default: 0 } }, data() { return { visibleSync: false, showDrawer: false, timer: null, closeFromInner: false // value的值改变,是发生在内部还是外部 }; }, computed: { valueCom() { return this.modelValue; }, // 根据mode的位置,设定其弹窗的宽度(mode = left|right),或者高度(mode = top|bottom) style() { let style = {}; if (this.mode == "left" || this.mode == "right") { style = { width: this.width ? this.getUnitValue(this.width) : this.getUnitValue(this.length), height: "100%", transform: `translate3D(${this.mode == "left" ? "-100%" : "100%"},0px,0px)` }; } else if (this.mode == "top" || this.mode == "bottom") { style = { width: "100%", height: this.height ? this.getUnitValue(this.height) : this.getUnitValue(this.length), transform: `translate3D(0px,${this.mode == "top" ? "-100%" : "100%"},0px)` }; } style.zIndex = this.uZindex; if (this.borderRadius) { switch (this.mode) { case "left": style.borderRadius = `0 ${this.borderRadius}rpx ${this.borderRadius}rpx 0`; break; case "top": style.borderRadius = `0 0 ${this.borderRadius}rpx ${this.borderRadius}rpx`; break; case "right": style.borderRadius = `${this.borderRadius}rpx 0 0 ${this.borderRadius}rpx`; break; case "bottom": style.borderRadius = `${this.borderRadius}rpx ${this.borderRadius}rpx 0 0`; break; } style.overflow = "hidden"; } if (this.duration) style.transition = `all ${this.duration / 1e3}s linear`; return style; }, // 中部弹窗的特有样式 centerStyle() { let style = {}; style.width = this.width ? this.getUnitValue(this.width) : this.getUnitValue(this.length); style.height = this.height ? this.getUnitValue(this.height) : "auto"; style.zIndex = this.uZindex; style.marginTop = `-${this.$u.addUnit(this.negativeTop)}`; if (this.borderRadius) { style.borderRadius = `${this.borderRadius}rpx`; style.overflow = "hidden"; } return style; }, // 计算整理后的z-index值 uZindex() { return this.zIndex ? this.zIndex : this.$u.zIndex.popup; } }, watch: { valueCom: { handler(val) { if (val) { this.open(); } else if (!this.closeFromInner) { this.close(); } this.closeFromInner = false; } } }, mounted() { if (this.valueCom) { this.open(); } }, methods: { // 判断传入的值,是否带有单位,如果没有,就默认用rpx单位 getUnitValue(val) { if (/(%|px|rpx|auto)$/.test(val)) return val; else return val + "rpx"; }, // 遮罩被点击 maskClick() { this.close(); }, close() { this.closeFromInner = true; this.change("showDrawer", "visibleSync", false); }, // 中部弹出时,需要.u-drawer-content将居中内容,此元素会铺满屏幕,点击需要关闭弹窗 // 让其只在mode=center时起作用 modeCenterClose(mode) { if (mode != "center" || !this.maskCloseAble) return; this.close(); }, open() { this.change("visibleSync", "showDrawer", true); }, // 此处的原理是,关闭时先通过动画隐藏弹窗和遮罩,再移除整个组件 // 打开时,先渲染组件,延时一定时间再让遮罩和弹窗的动画起作用 change(param1, param2, status) { if (this.popup == true) { this.$emit("input", status); this.$emit("update:modelValue", status); } this[param1] = status; if (status) { this.$nextTick(() => { this[param2] = status; this.$emit(status ? "open" : "close"); }); } else { this.timer = setTimeout(() => { this[param2] = status; this.$emit(status ? "open" : "close"); }, this.duration); } } } }; function _sfc_render$5(_ctx, _cache, $props, $setup, $data, $options) { const _component_u_mask = resolveEasycom(vue.resolveDynamicComponent("u-mask"), __easycom_0$1); const _component_u_icon = resolveEasycom(vue.resolveDynamicComponent("u-icon"), __easycom_0$2); return $data.visibleSync ? (vue.openBlock(), vue.createElementBlock( "view", { key: 0, style: vue.normalizeStyle([$props.customStyle, { zIndex: $options.uZindex - 1 }]), class: "u-drawer", "hover-stop-propagation": "" }, [ vue.createVNode(_component_u_mask, { blur: $props.blur, duration: $props.duration, "custom-style": $props.maskCustomStyle, maskClickAble: $props.maskCloseAble, "z-index": $options.uZindex - 2, show: $data.showDrawer && $props.mask, onClick: $options.maskClick }, null, 8, ["blur", "duration", "custom-style", "maskClickAble", "z-index", "show", "onClick"]), vue.createCommentVNode(" 移除 @tap.stop.prevent "), vue.createElementVNode( "view", { class: vue.normalizeClass(["u-drawer-content", [ $props.safeAreaInsetBottom ? "safe-area-inset-bottom" : "", "u-drawer-" + $props.mode, $data.showDrawer ? "u-drawer-content-visible" : "", $props.zoom && $props.mode == "center" ? "u-animation-zoom" : "" ]]), onClick: _cache[3] || (_cache[3] = ($event) => $options.modeCenterClose($props.mode)), onTouchmove: _cache[4] || (_cache[4] = vue.withModifiers(() => { }, ["stop", "prevent"])), style: vue.normalizeStyle([$options.style]) }, [ $props.mode == "center" ? (vue.openBlock(), vue.createElementBlock( "view", { key: 0, class: "u-mode-center-box", onClick: _cache[0] || (_cache[0] = vue.withModifiers(() => { }, ["stop", "prevent"])), onTouchmove: _cache[1] || (_cache[1] = vue.withModifiers(() => { }, ["stop", "prevent"])), style: vue.normalizeStyle([$options.centerStyle]) }, [ $props.closeable ? (vue.openBlock(), vue.createBlock(_component_u_icon, { key: 0, onClick: $options.close, class: vue.normalizeClass(["u-close", ["u-close--" + $props.closeIconPos]]), name: $props.closeIcon, color: $props.closeIconColor, size: $props.closeIconSize }, null, 8, ["onClick", "class", "name", "color", "size"])) : vue.createCommentVNode("v-if", true), vue.createElementVNode("scroll-view", { class: "u-drawer__scroll-view", "scroll-y": "true" }, [ vue.renderSlot(_ctx.$slots, "default", {}, void 0, true) ]) ], 36 /* STYLE, NEED_HYDRATION */ )) : (vue.openBlock(), vue.createElementBlock("scroll-view", { key: 1, class: "u-drawer__scroll-view", "scroll-y": "true" }, [ vue.renderSlot(_ctx.$slots, "default", {}, void 0, true) ])), vue.createElementVNode( "view", { onClick: _cache[2] || (_cache[2] = (...args) => $options.close && $options.close(...args)), class: vue.normalizeClass(["u-close", ["u-close--" + $props.closeIconPos]]) }, [ $props.mode != "center" && $props.closeable ? (vue.openBlock(), vue.createBlock(_component_u_icon, { key: 0, name: $props.closeIcon, color: $props.closeIconColor, size: $props.closeIconSize }, null, 8, ["name", "color", "size"])) : vue.createCommentVNode("v-if", true) ], 2 /* CLASS */ ) ], 38 /* CLASS, STYLE, NEED_HYDRATION */ ) ], 4 /* STYLE */ )) : vue.createCommentVNode("v-if", true); } const __easycom_2 = /* @__PURE__ */ _export_sfc(_sfc_main$6, [["render", _sfc_render$5], ["__scopeId", "data-v-c93a8fd2"], ["__file", "D:/hldy_app/uni_modules/vk-uview-ui/components/u-popup/u-popup.vue"]]); const _sfc_main$5 = { name: "u-calendar", emits: ["update:modelValue", "input", "change"], props: { // 通过双向绑定控制组件的弹出与收起 value: { type: Boolean, default: false }, modelValue: { type: Boolean, default: false }, safeAreaInsetBottom: { type: Boolean, default: false }, // 是否允许通过点击遮罩关闭Picker maskCloseAble: { type: Boolean, default: true }, // 弹出的z-index值 zIndex: { type: [String, Number], default: 0 }, // 是否允许切换年份 changeYear: { type: Boolean, default: true }, // 是否允许切换月份 changeMonth: { type: Boolean, default: true }, // date-单个日期选择,range-开始日期+结束日期选择 mode: { type: String, default: "date" }, // 可切换的最大年份 maxYear: { type: [Number, String], default: 2050 }, // 可切换的最小年份 minYear: { type: [Number, String], default: 1950 }, // 最小可选日期(不在范围内日期禁用不可选) minDate: { type: [Number, String], default: "1950-01-01" }, /** * 最大可选日期 * 默认最大值为今天,之后的日期不可选 * 2030-12-31 * */ maxDate: { type: [Number, String], default: "" }, // 弹窗顶部左右两边的圆角值 borderRadius: { type: [String, Number], default: 20 }, // 月份切换按钮箭头颜色 monthArrowColor: { type: String, default: "#606266" }, // 年份切换按钮箭头颜色 yearArrowColor: { type: String, default: "#909399" }, // 默认日期字体颜色 color: { type: String, default: "#303133" }, // 选中|起始结束日期背景色 activeBgColor: { type: String, default: "#2979ff" }, // 选中|起始结束日期字体颜色 activeColor: { type: String, default: "#ffffff" }, // 范围内日期背景色 rangeBgColor: { type: String, default: "rgba(41,121,255,0.13)" }, // 范围内日期字体颜色 rangeColor: { type: String, default: "#2979ff" }, // mode=range时生效,起始日期自定义文案 startText: { type: String, default: "开始" }, // mode=range时生效,结束日期自定义文案 endText: { type: String, default: "结束" }, //按钮样式类型 btnType: { type: String, default: "primary" }, // 当前选中日期带选中效果 isActiveCurrent: { type: Boolean, default: true }, // 切换年月是否触发事件 mode=date时生效 isChange: { type: Boolean, default: false }, // 是否显示右上角的关闭图标 closeable: { type: Boolean, default: true }, // 顶部的提示文字 toolTip: { type: String, default: "选择日期" }, // 遮罩的模糊度 blur: { type: [Number, String], default: 0 }, confirmText: { type: String, default: "确定" }, toText: { type: String, default: "至" }, yearText: { type: String, default: "年" }, monthText: { type: String, default: "月" } }, data() { return { popupValue: false, // 星期几,值为1-7 weekday: 1, weekdayArr: [], // 当前月有多少天 days: 0, daysArr: [], showTitle: "", year: 2020, month: 0, day: 0, startYear: 0, startMonth: 0, startDay: 0, endYear: 0, endMonth: 0, endDay: 0, today: "", activeDate: "", startDate: "", endDate: "", isStart: true, min: null, max: null, weekDayZh: ["日", "一", "二", "三", "四", "五", "六"] }; }, computed: { valueCom() { return this.modelValue; }, dataChange() { return `${this.mode}-${this.minDate}-${this.maxDate}`; }, uZIndex() { return this.zIndex ? this.zIndex : this.$u.zIndex.popup; } }, watch: { dataChange(val) { this.init(); }, valueCom: { immediate: true, handler(val) { this.popupValue = val; } } }, created() { this.init(); }, methods: { getColor(index2, type) { let color2 = type == 1 ? "" : this.color; let day = index2 + 1; let date2 = `${this.year}-${this.month}-${day}`; let timestamp = new Date(date2.replace(/\-/g, "/")).getTime(); let start = this.startDate.replace(/\-/g, "/"); let end = this.endDate.replace(/\-/g, "/"); if (this.isActiveCurrent && this.activeDate == date2 || this.startDate == date2 || this.endDate == date2) { color2 = type == 1 ? null : this.activeColor; } else if (this.endDate && timestamp > new Date(start).getTime() && timestamp < new Date(end).getTime()) { color2 = type == 1 ? this.rangeBgColor : this.rangeColor; } return color2; }, getStyle(index2) { let day = index2 + 1; let date2 = `${this.year}-${this.month}-${day}`; const isActive = this.isActiveCurrent && this.activeDate === date2 || this.startDate === date2 || this.endDate === date2; const background = isActive ? "linear-gradient(to top, #0076ff, #00c9ff)" : ""; const border = isActive ? "2rpx solid #fff" : ""; return { background, border }; }, init() { let now = /* @__PURE__ */ new Date(); this.year = now.getFullYear(); this.month = now.getMonth() + 1; this.day = now.getDate(); this.today = `${now.getFullYear()}-${now.getMonth() + 1}-${now.getDate()}`; this.activeDate = this.today; this.min = this.initDate(this.minDate); this.max = this.initDate(this.maxDate || this.today); this.startDate = ""; this.startYear = 0; this.startMonth = 0; this.startDay = 0; this.endYear = 0; this.endMonth = 0; this.endDay = 0; this.endDate = ""; this.isStart = true; this.changeData(); }, //日期处理 initDate(date2) { let fdate = date2.split("-"); return { year: Number(fdate[0] || 1920), month: Number(fdate[1] || 1), day: Number(fdate[2] || 1) }; }, openDisAbled: function(year, month, day) { let bool = true; let date2 = `${year}/${month}/${day}`; let min = `${this.min.year}/${this.min.month}/${this.min.day}`; let max = `${this.max.year}/${this.max.month}/${this.max.day}`; let timestamp = new Date(date2).getTime(); if (timestamp >= new Date(min).getTime() && timestamp <= new Date(max).getTime()) { bool = false; } return bool; }, generateArray: function(start, end) { return Array.from(new Array(end + 1).keys()).slice(start); }, formatNum: function(num) { return num < 10 ? "0" + num : num + ""; }, //一个月有多少天 getMonthDay(year, month) { let days = new Date(year, month, 0).getDate(); return days; }, getWeekday(year, month) { let date2 = /* @__PURE__ */ new Date(`${year}/${month}/01 00:00:00`); return date2.getDay(); }, checkRange(year) { let overstep = false; if (year < this.minYear || year > this.maxYear) { uni.showToast({ title: "日期超出范围啦~", icon: "none" }); overstep = true; } return overstep; }, changeMonthHandler(isAdd) { if (isAdd) { let month = this.month + 1; let year = month > 12 ? this.year + 1 : this.year; if (!this.checkRange(year)) { this.month = month > 12 ? 1 : month; this.year = year; this.changeData(); } } else { let month = this.month - 1; let year = month < 1 ? this.year - 1 : this.year; if (!this.checkRange(year)) { this.month = month < 1 ? 12 : month; this.year = year; this.changeData(); } } }, changeYearHandler(isAdd) { let year = isAdd ? this.year + 1 : this.year - 1; if (!this.checkRange(year)) { this.year = year; this.changeData(); } }, changeData() { this.days = this.getMonthDay(this.year, this.month); this.daysArr = this.generateArray(1, this.days); this.weekday = this.getWeekday(this.year, this.month); this.weekdayArr = this.generateArray(1, this.weekday); this.showTitle = `${this.year}${this.yearText}${this.month}${this.monthText}`; if (this.isChange && this.mode == "date") { this.btnFix(true); } }, dateClick: function(day) { day += 1; if (!this.openDisAbled(this.year, this.month, day)) { this.day = day; let date2 = `${this.year}-${this.month}-${day}`; if (this.mode == "date") { this.activeDate = date2; } else { let compare = new Date(date2.replace(/\-/g, "/")).getTime() < new Date(this.startDate.replace( /\-/g, "/" )).getTime(); if (this.isStart || compare) { this.startDate = date2; this.startYear = this.year; this.startMonth = this.month; this.startDay = this.day; this.endYear = 0; this.endMonth = 0; this.endDay = 0; this.endDate = ""; this.activeDate = ""; this.isStart = false; } else { this.endDate = date2; this.endYear = this.year; this.endMonth = this.month; this.endDay = this.day; this.isStart = true; } } } }, close() { this.$emit("input", false); this.$emit("update:modelValue", false); }, getWeekText(date2) { date2 = /* @__PURE__ */ new Date(`${date2.replace(/\-/g, "/")} 00:00:00`); let week = date2.getDay(); return "星期" + ["日", "一", "二", "三", "四", "五", "六"][week]; }, btnFix(show) { if (!show) { this.close(); } if (this.mode == "date") { let arr = this.activeDate.split("-"); let year = this.isChange ? this.year : Number(arr[0]); let month = this.isChange ? this.month : Number(arr[1]); let day = this.isChange ? this.day : Number(arr[2]); let days = this.getMonthDay(year, month); let result = `${year}-${this.formatNum(month)}-${this.formatNum(day)}`; let weekText = this.getWeekText(result); let isToday = false; if (`${year}-${month}-${day}` == this.today) { isToday = true; } this.$emit("change", { year, month, day, days, result, week: weekText, isToday // switch: show //是否是切换年月操作 }); } else { if (!this.startDate || !this.endDate) return; let startMonth = this.formatNum(this.startMonth); let startDay = this.formatNum(this.startDay); let startDate = `${this.startYear}-${startMonth}-${startDay}`; let startWeek = this.getWeekText(startDate); let endMonth = this.formatNum(this.endMonth); let endDay = this.formatNum(this.endDay); let endDate = `${this.endYear}-${endMonth}-${endDay}`; let endWeek = this.getWeekText(endDate); this.$emit("change", { startYear: this.startYear, startMonth: this.startMonth, startDay: this.startDay, startDate, startWeek, endYear: this.endYear, endMonth: this.endMonth, endDay: this.endDay, endDate, endWeek }); } } } }; function _sfc_render$4(_ctx, _cache, $props, $setup, $data, $options) { const _component_u_icon = resolveEasycom(vue.resolveDynamicComponent("u-icon"), __easycom_0$2); const _component_u_button = resolveEasycom(vue.resolveDynamicComponent("u-button"), __easycom_1); const _component_u_popup = resolveEasycom(vue.resolveDynamicComponent("u-popup"), __easycom_2); return vue.openBlock(), vue.createBlock(_component_u_popup, { blur: $props.blur, closeable: "", maskCloseAble: $props.maskCloseAble, mode: "bottom", popup: false, modelValue: $data.popupValue, "onUpdate:modelValue": _cache[5] || (_cache[5] = ($event) => $data.popupValue = $event), length: "auto", safeAreaInsetBottom: $props.safeAreaInsetBottom, onClose: $options.close, "z-index": $options.uZIndex, "border-radius": $props.borderRadius }, { default: vue.withCtx(() => [ vue.createElementVNode("view", { class: "u-calendar" }, [ vue.createCommentVNode(` \r \r {{toolTip}}\r \r \r `), vue.createElementVNode("view", { class: "u-calendar__action u-flex u-row-center" }, [ vue.createElementVNode("view", { class: "u-calendar__action__icon" }, [ $props.changeYear ? (vue.openBlock(), vue.createBlock(_component_u_icon, { key: 0, name: "arrow-left-double", color: $props.yearArrowColor, onClick: _cache[0] || (_cache[0] = ($event) => $options.changeYearHandler(0)) }, null, 8, ["color"])) : vue.createCommentVNode("v-if", true) ]), vue.createElementVNode("view", { class: "u-calendar__action__icon" }, [ $props.changeMonth ? (vue.openBlock(), vue.createBlock(_component_u_icon, { key: 0, name: "arrow-left", color: $props.monthArrowColor, onClick: _cache[1] || (_cache[1] = ($event) => $options.changeMonthHandler(0)) }, null, 8, ["color"])) : vue.createCommentVNode("v-if", true) ]), vue.createElementVNode( "view", { class: "u-calendar__action__text" }, vue.toDisplayString($data.showTitle), 1 /* TEXT */ ), vue.createElementVNode("view", { class: "u-calendar__action__icon" }, [ $props.changeMonth ? (vue.openBlock(), vue.createBlock(_component_u_icon, { key: 0, name: "arrow-right", color: $props.monthArrowColor, onClick: _cache[2] || (_cache[2] = ($event) => $options.changeMonthHandler(1)) }, null, 8, ["color"])) : vue.createCommentVNode("v-if", true) ]), vue.createElementVNode("view", { class: "u-calendar__action__icon" }, [ $props.changeYear ? (vue.openBlock(), vue.createBlock(_component_u_icon, { key: 0, name: "arrow-right-double", color: $props.yearArrowColor, onClick: _cache[3] || (_cache[3] = ($event) => $options.changeYearHandler(1)) }, null, 8, ["color"])) : vue.createCommentVNode("v-if", true) ]) ]), vue.createElementVNode("view", { class: "u-calendar__week-day" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($data.weekDayZh, (item, index2) => { return vue.openBlock(), vue.createElementBlock( "view", { class: "u-calendar__week-day__text", key: index2 }, vue.toDisplayString(item), 1 /* TEXT */ ); }), 128 /* KEYED_FRAGMENT */ )) ]), vue.createElementVNode("view", { class: "u-calendar__content" }, [ vue.createCommentVNode(" 前置空白部分 "), (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($data.weekdayArr, (item, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2, class: "u-calendar__content__item" }); }), 128 /* KEYED_FRAGMENT */ )), (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($data.daysArr, (item, index2) => { return vue.openBlock(), vue.createElementBlock("view", { class: vue.normalizeClass(["u-calendar__content__item", { "u-hover-class": $options.openDisAbled($data.year, $data.month, index2 + 1), "u-calendar__content--start-date": $props.mode == "range" && $data.startDate == `${$data.year}-${$data.month}-${index2 + 1}` || $props.mode == "date", "u-calendar__content--end-date": $props.mode == "range" && $data.endDate == `${$data.year}-${$data.month}-${index2 + 1}` || $props.mode == "date" }]), style: vue.normalizeStyle([$options.getStyle(index2), { "border-radius": "30rpx" }]), key: index2, onClick: ($event) => $options.dateClick(index2) }, [ vue.createElementVNode( "view", { class: "u-calendar__content__item__inner", style: vue.normalizeStyle({ color: $options.getColor(index2, 2) }) }, [ vue.createElementVNode( "view", null, vue.toDisplayString(index2 + 1), 1 /* TEXT */ ) ], 4 /* STYLE */ ), $props.mode == "range" && $data.startDate == `${$data.year}-${$data.month}-${index2 + 1}` && $data.startDate != $data.endDate ? (vue.openBlock(), vue.createElementBlock( "view", { key: 0, class: "u-calendar__content__item__tips", style: vue.normalizeStyle({ color: $props.activeColor }) }, vue.toDisplayString($props.startText), 5 /* TEXT, STYLE */ )) : vue.createCommentVNode("v-if", true), $props.mode == "range" && $data.endDate == `${$data.year}-${$data.month}-${index2 + 1}` ? (vue.openBlock(), vue.createElementBlock( "view", { key: 1, class: "u-calendar__content__item__tips", style: vue.normalizeStyle({ color: $props.activeColor }) }, vue.toDisplayString($props.endText), 5 /* TEXT, STYLE */ )) : vue.createCommentVNode("v-if", true) ], 14, ["onClick"]); }), 128 /* KEYED_FRAGMENT */ )), vue.createElementVNode( "view", { class: "u-calendar__content__bg-month" }, vue.toDisplayString($data.month), 1 /* TEXT */ ) ]), vue.createElementVNode("view", { class: "u-calendar__bottom" }, [ vue.createElementVNode("view", { class: "u-calendar__bottom__choose" }, [ vue.createElementVNode( "text", null, vue.toDisplayString($props.mode == "date" ? $data.activeDate : $data.startDate), 1 /* TEXT */ ), $data.endDate ? (vue.openBlock(), vue.createElementBlock( "text", { key: 0 }, vue.toDisplayString($props.toText) + vue.toDisplayString($data.endDate), 1 /* TEXT */ )) : vue.createCommentVNode("v-if", true) ]), vue.createElementVNode("view", { class: "u-calendar__bottom__btn" }, [ vue.createVNode(_component_u_button, { type: $props.btnType, shape: "circle", size: "default", onClick: _cache[4] || (_cache[4] = ($event) => $options.btnFix(false)), disabled: $props.mode == "range" && !$data.endDate }, { default: vue.withCtx(() => [ vue.createTextVNode( vue.toDisplayString($props.confirmText), 1 /* TEXT */ ) ]), _: 1 /* STABLE */ }, 8, ["type", "disabled"]) ]) ]) ]) ]), _: 1 /* STABLE */ }, 8, ["blur", "maskCloseAble", "modelValue", "safeAreaInsetBottom", "onClose", "z-index", "border-radius", "closeable"]); } const __easycom_0 = /* @__PURE__ */ _export_sfc(_sfc_main$5, [["render", _sfc_render$4], ["__scopeId", "data-v-eedd27cf"], ["__file", "D:/hldy_app/uni_modules/vk-uview-ui/components/u-calendar/u-calendar.vue"]]); const _sfc_main$4 = /* @__PURE__ */ vue.defineComponent({ __name: "orders", props: { isShow: { type: Boolean, required: true } }, setup(__props, { expose: __expose }) { __expose(); const props = __props; const transition = vue.ref(true); const getBallFirst = (type) => { switch (type) { case 0: return `ball-red`; case 1: return `ball-yellow`; default: return "ball-green"; } }; const getBallSecond = (type) => { switch (type) { case 0: return `ball-white`; case 1: return `ball-white`; case 2: return `ball-yellow`; case 3: return `ball-yellow`; case 4: return `ball-green`; case 5: return `ball-green`; } }; const getBallThird = (type) => { switch (type) { case 4: return `ball-yellow`; case 5: return `ball-green`; default: return "ball-white"; } }; vue.watch( () => props.isShow, (newVal, oldVal) => { if (!oldVal && newVal) { transition.value = false; setTimeout(() => { transition.value = true; }, 50); } } ); const firstBall = vue.ref(0); const secondBall = vue.ref(0); const thirdBall = vue.ref(0); const calendarShow = vue.ref(false); const isDelete = (index2) => { firstBall.value = 0; secondBall.value = 0; thirdBall.value = 0; cardArray.value[index2].cardType = 0; sliceArray.value = cardArray.value; }; const isRight = (index2) => { firstBall.value = 0; secondBall.value = 0; thirdBall.value = 0; cardArray.value[index2].cardType++; sliceArray.value = cardArray.value; }; const isBack = (index2) => { firstBall.value = 0; secondBall.value = 0; thirdBall.value = 0; cardArray.value[index2].cardType--; sliceArray.value = cardArray.value; }; const firstBallClick = () => { secondBall.value = 0; thirdBall.value = 0; if (firstBall.value < 3) { firstBall.value++; } else { firstBall.value = 0; } if (firstBall.value) { let saveArray = []; switch (firstBall.value) { case 1: cardArray.value.forEach((element) => { if (element.cardType == 1) { saveArray.push(element); } }); sliceArray.value = saveArray; break; case 2: cardArray.value.forEach((element) => { if (element.cardType > 2) { saveArray.push(element); } }); sliceArray.value = saveArray; break; case 3: cardArray.value.forEach((element) => { if (element.cardType == 0) { saveArray.push(element); } }); sliceArray.value = saveArray; break; } } else { sliceArray.value = cardArray.value; } }; const secondBallClick = () => { firstBall.value = 0; thirdBall.value = 0; if (secondBall.value < 2) { secondBall.value++; } else { secondBall.value = 0; } if (secondBall.value) { let saveArray = []; switch (secondBall.value) { case 1: cardArray.value.forEach((element) => { if (element.cardType == 2 || element.cardType == 3) { saveArray.push(element); } }); sliceArray.value = saveArray; break; case 2: cardArray.value.forEach((element) => { if (element.cardType > 3) { saveArray.push(element); } }); sliceArray.value = saveArray; break; } } else { sliceArray.value = cardArray.value; } }; const thirdBallClick = () => { secondBall.value = 0; firstBall.value = 0; if (thirdBall.value < 2) { thirdBall.value++; } else { thirdBall.value = 0; } if (thirdBall.value) { let saveArray = []; switch (thirdBall.value) { case 1: cardArray.value.forEach((element) => { if (element.cardType == 4) { saveArray.push(element); } }); sliceArray.value = saveArray; break; case 2: cardArray.value.forEach((element) => { if (element.cardType == 5) { saveArray.push(element); } }); sliceArray.value = saveArray; break; } } else { sliceArray.value = cardArray.value; } }; const detailisopen = vue.ref(false); const detailisopacity = vue.ref(false); const buttonList = vue.ref([ // { url: '/static/index/Warehousing/zuoce.png', name: '请购单' }, { url: "/static/index/Warehousing/sousuo.png", name: "查询" }, { url: "/static/index/Warehousing/chongzhi.png", name: "重置" } ]); const stateTarget = vue.ref(""); const stateArray = vue.ref(["已作废", "未确认", "已确认", "未完结", "待结账", "已结账"]); const cardArray = vue.ref( Array.from({ length: 6 }, (_, index2) => ({ cardType: index2 })) ); const sliceArray = vue.ref([]); const clickBall = (index2) => { switch (index2) { case 0: return `ball-white`; case 1: return `ball-yellow`; case 2: return `ball-green`; case 3: return `ball-red`; } }; const opendetail = () => { detailisopen.value = true; detailisopacity.value = false; setTimeout(() => { detailisopacity.value = true; }, 200); }; const calendarchange = (e) => { stateTarget.value = e.result; }; vue.onMounted(() => { sliceArray.value = cardArray.value; }); const __returned__ = { props, transition, getBallFirst, getBallSecond, getBallThird, firstBall, secondBall, thirdBall, calendarShow, isDelete, isRight, isBack, firstBallClick, secondBallClick, thirdBallClick, detailisopen, detailisopacity, buttonList, stateTarget, stateArray, cardArray, sliceArray, clickBall, opendetail, calendarchange }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); function _sfc_render$3(_ctx, _cache, $props, $setup, $data, $options) { const _component_u_calendar = resolveEasycom(vue.resolveDynamicComponent("u-calendar"), __easycom_0); return vue.openBlock(), vue.createElementBlock( vue.Fragment, null, [ vue.withDirectives(vue.createElementVNode( "view", { class: "index-content-other", style: vue.normalizeStyle($setup.transition ? { opacity: `1` } : { opacity: `0` }) }, [ vue.createElementVNode("view", { class: "index-content-right" }, [ vue.createCommentVNode(" 解决margin重叠问题 "), vue.createElementVNode("view", { class: "index-right-height" }), vue.createElementVNode("view", { class: "index-right-title" }, [ vue.createElementVNode("view", { class: "ball-bgc", onClick: $setup.firstBallClick }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($setup.clickBall($setup.firstBall)) }, " 采购 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "ball-bgc", onClick: $setup.secondBallClick }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($setup.clickBall($setup.secondBall)) }, " 拣货 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "ball-bgc", onClick: $setup.thirdBallClick }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($setup.clickBall($setup.thirdBall)) }, " 结账 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "index-right-name" }, " 采购单号 "), vue.createElementVNode("input", { class: "index-right-input", placeholder: "请输入采购单号" }), vue.createElementVNode("view", { class: "index-right-name" }, " 供应商 "), vue.createElementVNode("input", { class: "index-right-input", placeholder: "请输入供应商" }), vue.createElementVNode("view", { class: "index-right-name" }, " 采购日期 "), vue.createElementVNode("view", { onClick: _cache[0] || (_cache[0] = vue.withModifiers(($event) => $setup.calendarShow = true, ["stop"])) }, [ vue.createElementVNode( "view", { class: "index-right-input", style: vue.normalizeStyle([{ "width": "200rpx", "height": "66rpx" }, $setup.stateTarget ? {} : { color: `#999` }]) }, vue.toDisplayString($setup.stateTarget ? $setup.stateTarget : `请输入采购日期`), 5 /* TEXT, STYLE */ ) ]), vue.createVNode(_component_u_calendar, { style: { "width": "40%", "margin-left": "30%" }, "border-radius": "40", modelValue: $setup.calendarShow, "onUpdate:modelValue": _cache[1] || (_cache[1] = ($event) => $setup.calendarShow = $event), mode: "date", onChange: $setup.calendarchange }, null, 8, ["modelValue"]), vue.createElementVNode("view", { class: "index-right-button-all" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.buttonList, (item, index2) => { return vue.openBlock(), vue.createElementBlock("view", { class: "", key: index2 }, [ vue.createElementVNode("view", { class: "index-right-button" }, [ vue.createElementVNode("image", { class: "index-right-button-img", src: item.url }, null, 8, ["src"]), vue.createElementVNode( "view", { class: "index-right-button-font" }, vue.toDisplayString(item.name), 1 /* TEXT */ ) ]) ]); }), 128 /* KEYED_FRAGMENT */ )) ]) ]), vue.createElementVNode("view", { class: "swiper-contain" }, [ vue.createElementVNode("scroll-view", { "scroll-y": "", style: { "height": "98%" }, "show-scrollbar": false }, [ vue.createElementVNode("view", { class: "swiper-flex" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.sliceArray, (item, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2 }, [ vue.createElementVNode("view", { class: "swiper-card" }, [ vue.createElementVNode("view", { class: "swiper-title-contect" }, [ vue.createElementVNode("view", { class: "swiper-states" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass(item.cardType > 1 ? `swiper-states-heng-one-green` : `swiper-states-heng-one`) }, null, 2 /* CLASS */ ), vue.createElementVNode( "view", { class: vue.normalizeClass(item.cardType > 3 ? `swiper-states-heng-two-green` : `swiper-states-heng-two`) }, null, 2 /* CLASS */ ), vue.createElementVNode("view", { class: "ball-bgc" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($setup.getBallFirst(item.cardType)) }, " 采购 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "ball-bgc" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($setup.getBallSecond(item.cardType)) }, " 拣货 ", 2 /* CLASS */ ) ]), vue.createElementVNode("view", { class: "ball-bgc" }, [ vue.createElementVNode( "view", { class: vue.normalizeClass($setup.getBallThird(item.cardType)) }, " 结账 ", 2 /* CLASS */ ) ]) ]), vue.createElementVNode( "view", { class: vue.normalizeClass(item.cardType ? `title-button` : `title-button-red`) }, vue.toDisplayString($setup.stateArray[item.cardType]), 3 /* TEXT, CLASS */ ) ]), vue.createElementVNode("view", { class: "swiper-down" }, [ vue.createElementVNode("view", { class: "swiper-flex" }, [ vue.createElementVNode("view", { class: "swiper-down-title" }, "采购单号:"), vue.createElementVNode("view", { class: "swiper-down-number" }, "A0120250301001555") ]), vue.createElementVNode("view", { class: "swiper-down-card" }, [ vue.createElementVNode("view", { class: "swiper-down-text" }, [ vue.createElementVNode("view", { class: "swiper-down-text-left" }, " 采 购 人: "), vue.createElementVNode("view", { class: "swiper-down-text-right" }, " 王法 ") ]), vue.createElementVNode("view", { class: "swiper-down-text" }, [ vue.createElementVNode("view", { class: "swiper-down-text-left" }, " 采购日期 : "), vue.createElementVNode("view", { class: "swiper-down-text-right" }, " 2025.03.02 ") ]), vue.createElementVNode("view", { class: "swiper-down-text" }, [ vue.createElementVNode("view", { class: "swiper-down-text-left" }, " 联 系 人 : "), vue.createElementVNode("view", { class: "swiper-down-text-right" }, " 李月 ") ]), vue.createElementVNode("view", { class: "swiper-down-text" }, [ vue.createElementVNode("view", { class: "swiper-down-text-left" }, " 联系电话 : "), vue.createElementVNode("view", { class: "swiper-down-text-right" }, " 13355653333 ") ]), vue.createElementVNode("view", { class: "swiper-down-text", style: { "width": "100%" } }, [ vue.createElementVNode("view", { class: "swiper-down-text-left" }, " 供 应 商 : "), vue.createElementVNode("view", { class: "swiper-down-text-right" }, " 宽城区珂爱个人卫生用品店 ") ]) ]), vue.createElementVNode("view", { class: "swiper-button" }, [ vue.createElementVNode("view", { class: "button-father" }, [ vue.createElementVNode("view", { class: "swiper-button-white" }, " 详情 "), vue.withDirectives(vue.createElementVNode("view", { class: "swiper-button-blue", onClick: ($event) => $setup.isRight(index2) }, " 结账 ", 8, ["onClick"]), [ [vue.vShow, item.cardType == 4] ]), vue.withDirectives(vue.createElementVNode( "view", { class: "swiper-button-blue" }, " 拣货 ", 512 /* NEED_PATCH */ ), [ [vue.vShow, item.cardType == 3 || item.cardType == 2] ]), vue.createCommentVNode(' \r\n 分享\r\n '), vue.withDirectives(vue.createElementVNode("view", { class: "swiper-button-white", onClick: ($event) => $setup.isBack(index2) }, " 回退 ", 8, ["onClick"]), [ [vue.vShow, item.cardType >= 2] ]), vue.withDirectives(vue.createElementVNode("view", { class: "swiper-button-blue", onClick: ($event) => $setup.isRight(index2) }, " 确认 ", 8, ["onClick"]), [ [vue.vShow, item.cardType == 1] ]), vue.withDirectives(vue.createElementVNode("view", { class: "swiper-button-red", onClick: ($event) => $setup.isDelete(index2) }, " 作废 ", 8, ["onClick"]), [ [vue.vShow, item.cardType == 1] ]) ]) ]) ]) ]) ]); }), 128 /* KEYED_FRAGMENT */ )) ]) ]) ]) ]), vue.createElementVNode("view", { class: "index-content-down" }, " 长春市朝阳区久泰开运养老服务有限公司 ") ], 4 /* STYLE */ ), [ [vue.vShow, $props.isShow] ]), vue.createCommentVNode(" 表格详情的的弹出层 "), vue.withDirectives(vue.createElementVNode( "view", { class: "popup-detail", onClick: _cache[3] || (_cache[3] = ($event) => $setup.detailisopen = false) }, [ vue.createElementVNode( "view", { class: "popup-detail-content", style: vue.normalizeStyle({ opacity: $setup.detailisopacity ? 1 : 0 }), onClick: _cache[2] || (_cache[2] = vue.withModifiers(() => { }, ["stop"])) }, [ vue.createElementVNode("view", { class: "popup-detail-left" }, [ vue.createElementVNode("view", { class: "popup-detail-left-white" }, [ vue.createElementVNode("image", { class: "popup-detail-left-white-img", src: `/static/index/project3.png`, onClick: $setup.opendetail }, null, 8, ["src"]) ]), vue.createElementVNode("view", { class: "popup-detail-left-bottom" }, [ vue.createElementVNode("view", { class: "popup-small-card" }) ]) ]), vue.createElementVNode("view", { class: "popup-detail-right" }) ], 4 /* STYLE */ ) ], 512 /* NEED_PATCH */ ), [ [vue.vShow, $setup.detailisopen && $props.isShow] ]) ], 64 /* STABLE_FRAGMENT */ ); } const storeroomorders = /* @__PURE__ */ _export_sfc(_sfc_main$4, [["render", _sfc_render$3], ["__scopeId", "data-v-a2a18362"], ["__file", "D:/hldy_app/component/storeroom/orders.vue"]]); const _sfc_main$3 = /* @__PURE__ */ vue.defineComponent({ __name: "index", setup(__props, { expose: __expose }) { __expose(); const darkFans = vue.ref(false); const menuIndex = vue.ref(0); const detailisopen = vue.ref(false); const detailisopacity = vue.ref(false); const iconList = vue.ref([ { url: "/static/index/lefticon/index.png", targetUrl: "/static/index/lefticontarget/blueindex.png", name: "首页", pao: 0 }, { url: "/static/index/Warehousing/dingdan.png", targetUrl: "/static/index/Warehousing/dingdanblue.png", name: "订单", pao: 0 }, // { url: '/static/index/Warehousing/yujing.png', targetUrl: '/static/index/Warehousing/yujingblue.png', name: '预警', pao: 200 }, { url: "/static/index/Warehousing/chuku.png", targetUrl: "/static/index/Warehousing/chukublue.png", name: "出库", pao: 5 }, { url: "/static/index/Warehousing/pandian.png", targetUrl: "/static/index/Warehousing/pandianblue.png", name: "盘点", pao: 0 }, { url: "/static/index/Warehousing/jiankong.png", targetUrl: "/static/index/Warehousing/jiankongblue.png", name: "监控", pao: 0 }, { url: "/static/index/lefticon/back.png", targetUrl: "/static/index/lefticontarget/blueback.png", name: "返回", pao: 0 } ]); const opendetail = () => { detailisopen.value = true; detailisopacity.value = false; setTimeout(() => { detailisopacity.value = true; }, 200); }; const changeMenu = (index2) => { if (index2 === 5) { uni.navigateBack(); return; } menuIndex.value = index2; }; onLoad(() => { }); const __returned__ = { darkFans, menuIndex, detailisopen, detailisopacity, iconList, opendetail, changeMenu, storeroomindex, storeroomorders }; Object.defineProperty(__returned__, "__isScriptSetup", { enumerable: false, value: true }); return __returned__; } }); const _imports_1 = "/static/index/Warehousing/house.png"; function _sfc_render$2(_ctx, _cache, $props, $setup, $data, $options) { return vue.openBlock(), vue.createElementBlock( "view", { class: vue.normalizeClass($setup.darkFans ? `darkbackgroundContainer` : `backgroundContainer`) }, [ vue.createElementVNode("view", { class: "index-title" }, [ vue.createElementVNode("view", { class: "index-title-left" }, [ vue.createElementVNode("image", { class: "index-title-left-img", src: _imports_0$5 }), vue.createElementVNode("view", { class: "index-title-left-font" }, " 王金福 "), vue.createElementVNode("view", { class: "index-title-left-wel" }, " 欢迎 "), vue.createElementVNode("view", { class: "index-title-left-weight" }, " 张春凤 "), vue.createElementVNode("view", { class: "" }, " 登录护理单元操作台 ") ]), vue.createElementVNode("view", { class: "index-title-right" }, [ vue.createElementVNode("view", { class: "index-title-right-circle" }, [ vue.createElementVNode("image", { class: "index-title-right-circle-img", src: _imports_1 }) ]), vue.createElementVNode("view", { class: "index-title-right-font" }, " 生活用品库 ") ]) ]), vue.createElementVNode("view", { class: "index-content" }, [ vue.createElementVNode("view", { class: "index-content-leftMenus" }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.iconList, (item, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2, 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, index2 === $setup.menuIndex] ]), item.pao ? (vue.openBlock(), vue.createElementBlock("view", { key: 0, class: "red-pao", onClick: ($event) => $setup.changeMenu(index2) }, vue.toDisplayString(item.pao > 99 ? `99+` : item.pao), 9, ["onClick"])) : vue.createCommentVNode("v-if", true), vue.createElementVNode("image", { class: "left-img", src: index2 === $setup.menuIndex ? item.targetUrl : item.url, onClick: ($event) => $setup.changeMenu(index2) }, null, 8, ["src", "onClick"]), vue.createElementVNode("view", { class: vue.normalizeClass(index2 === $setup.menuIndex ? `left-img-font-target` : `left-img-font`), onClick: ($event) => $setup.changeMenu(index2) }, vue.toDisplayString(item.name), 11, ["onClick"]) ]); }), 128 /* KEYED_FRAGMENT */ )) ]), vue.createCommentVNode(" 首页 "), vue.createVNode($setup["storeroomindex"], { isShow: !$setup.menuIndex }, null, 8, ["isShow"]), vue.createVNode($setup["storeroomorders"], { isShow: $setup.menuIndex === 1 }, null, 8, ["isShow"]) ]) ], 2 /* CLASS */ ); } const PagesWarehousingIndex = /* @__PURE__ */ _export_sfc(_sfc_main$3, [["render", _sfc_render$2], ["__scopeId", "data-v-82a72f7e"], ["__file", "D:/hldy_app/pages/Warehousing/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.cycleType === "日常") { return "title-time-border-yellow"; } else if (item.cycleType) { 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 = (index2) => { if (buttonTarget.value !== index2) { return `titlebutton`; } else { switch (index2) { case 0: return `titlebutton-target`; case 1: return `titlebutton-target-yellow`; case 2: return `titlebutton-target-pouple`; } } }; function splitString(str) { if (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; } else { return []; } } const scrollLeft = vue.ref(0); const changetimearr = vue.ref([]); onLoad((options) => { let arr = uni.getStorageSync("myArray"); timearr.value = arr; 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)); if (options.currentNumber) { scrollLeft.value = options.currentNumber * 745; } }); 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.directiveName) { clickX.value = index0; clickY.value = index1; const query = uni.createSelectorQuery(); query.selectAll(".super-card-time-card").boundingClientRect((data2) => { data2.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((data2) => { data2.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 = (index2) => { if (buttonTarget.value !== index2) { changetimearr.value = []; buttonTarget.value = index2; switch (index2) { 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.directiveName && element1.cycleType !== "日常") { element1.directiveName = ""; element1.cycleType = ""; element1.startTime = ""; } }); }); break; case 2: changetimearr.value = JSON.parse(JSON.stringify(timearr.value)); changetimearr.value.forEach((element0) => { element0.children.forEach((element1) => { if (element1.directiveName && element1.cycleType === "日常") { element1.directiveName = ""; element1.cycleType = ""; element1.startTime = ""; } }); }); 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, _c; 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, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2 }, [ vue.createElementVNode("view", { class: vue.normalizeClass($setup.getClassItem(index2)), onClick: ($event) => $setup.changeTarget(index2) }, 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((_a = $setup.changetimearr[0]) == null ? void 0 : _a.children, (item, index2) => { return vue.openBlock(), vue.createElementBlock("view", { key: index2 }, [ vue.withDirectives(vue.createElementVNode( "view", { class: vue.normalizeClass($setup.clickY === index2 ? `boom-son-target` : `boom-son`) }, vue.toDisplayString(item.typeName), 3 /* TEXT, CLASS */ ), [ [vue.vShow, item.typeName] ]) ]); }), 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.changetimearr, (item0, index0) => { return vue.openBlock(), vue.createElementBlock("view", { key: index0 }, [ vue.createElementVNode( "view", { class: "super-card-time" }, vue.toDisplayString((item0.positioning.length == 1 ? "0" + item0.positioning : item0.positioning) + ":00"), 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.startTime ? (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.startTime + `-` + item1.endTime), 1 /* TEXT */ ), vue.createElementVNode("image", { class: "title-time-button", src: item1.cycleType == "日常" ? `/static/index/yellowbian.png` : `/static/index/puoplebian.png` }, null, 8, ["src"]), vue.createElementVNode( "view", { class: "title-time-font" }, vue.toDisplayString(item1.cycleType), 1 /* TEXT */ ) ])) : vue.createCommentVNode("v-if", true), vue.createElementVNode( "view", { style: vue.normalizeStyle([$setup.splitString(item1.directiveName)[1] ? {} : { marginTop: `20rpx` }, { "font-weight": "700", "font-size": "24rpx" }]) }, vue.toDisplayString($setup.splitString(item1.directiveName)[0]), 5 /* TEXT, STYLE */ ), $setup.splitString(item1.directiveName)[1] ? (vue.openBlock(), vue.createElementBlock( "view", { key: 1, class: "down-icons", style: vue.normalizeStyle(item1.cycleType != "日常" ? { backgroundColor: `rgb(212,203,255)` } : {}) }, [ (vue.openBlock(true), vue.createElementBlock( vue.Fragment, null, vue.renderList($setup.splitString(item1.directiveName).slice(1), (item, index2) => { return vue.openBlock(), vue.createElementBlock("view", { class: "", key: index2 }, [ vue.createElementVNode( "view", { class: "icon", style: vue.normalizeStyle(item1.cycleType != "日常" ? { backgroundColor: `rgb(123,97,255)` } : {}) }, vue.toDisplayString($setup.splitString(item1.directiveName)[index2 + 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: ((_c = (_b = $setup.timearr[$setup.clickY]) == null ? void 0 : _b.children[$setup.clickX]) == null ? void 0 : _c.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/Nursing/index", PagesNursingIndex); __definePage("pages/Warehousing/index", PagesWarehousingIndex); __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"]]); const mixin = { data() { return {}; }, onLoad() { this.$u.getRect = this.$uGetRect; }, methods: { // 查询节点信息 // 目前此方法在支付宝小程序中无法获取组件跟接点的尺寸,为支付宝的bug(2020-07-21) // 解决办法为在组件根部再套一个没有任何作用的view元素 $uGetRect(selector, all) { return new Promise((resolve) => { uni.createSelectorQuery().in(this)[all ? "selectAll" : "select"](selector).boundingClientRect((rect) => { if (all && Array.isArray(rect) && rect.length) { resolve(rect); } if (!all && rect) { resolve(rect); } }).exec(); }); }, getParentData(parentName = "") { if (!this.parent) this.parent = false; this.parent = this.$u.$parent.call(this, parentName); if (this.parent) { Object.keys(this.parentData).map((key) => { this.parentData[key] = this.parent[key]; }); this.parentData.value = this.parent.modelValue; } }, // 阻止事件冒泡 preventEvent(e) { e && e.stopPropagation && e.stopPropagation(); } }, onReachBottom() { uni.$emit("uOnReachBottom"); }, beforeUnmount() { if (this.parent && uni.$u.test.array(this.parent.children)) { const childrenList = this.parent.children; childrenList.map((child, index2) => { if (child === this) { childrenList.splice(index2, 1); } }); } } }; function isArray(arr) { return Object.prototype.toString.call(arr) === "[object Array]"; } function deepClone(obj) { if ([null, void 0, NaN, false].includes(obj)) return obj; if (typeof obj !== "object" && typeof obj !== "function") { return obj; } var o = isArray(obj) ? [] : {}; for (let i in obj) { if (obj.hasOwnProperty(i)) { o[i] = typeof obj[i] === "object" ? deepClone(obj[i]) : obj[i]; } } return o; } function deepMerge(target = {}, source = {}) { target = deepClone(target); if (typeof target !== "object" || typeof source !== "object") return false; for (var prop in source) { if (!source.hasOwnProperty(prop)) continue; if (prop in target) { if (typeof target[prop] !== "object") { target[prop] = source[prop]; } else { if (typeof source[prop] !== "object") { target[prop] = source[prop]; } else { if (target[prop].concat && source[prop].concat) { target[prop] = target[prop].concat(source[prop]); } else { target[prop] = deepMerge(target[prop], source[prop]); } } } } else { target[prop] = source[prop]; } } return target; } function email(value) { return /^\w+((-\w+)|(\.\w+))*\@[A-Za-z0-9]+((\.|-)[A-Za-z0-9]+)*\.[A-Za-z0-9]+$/.test(value); } function mobile(value) { return /^1[23456789]\d{9}$/.test(value); } function url(value) { return /http(s)?:\/\/([\w-]+\.)+[\w-]+(\/[\w-.\/?%&=]*)?/.test(value); } function date(value) { if (!value) return false; if (number(value)) value = +value; return !/Invalid|NaN/.test(new Date(value).toString()); } function dateISO(value) { return /^\d{4}[\/\-](0?[1-9]|1[012])[\/\-](0?[1-9]|[12][0-9]|3[01])$/.test(value); } function number(value) { return /^(?:-?\d+|-?\d{1,3}(?:,\d{3})+)?(?:\.\d+)?$/.test(value); } function digits(value) { return /^\d+$/.test(value); } function idCard(value) { return /^[1-9]\d{5}[1-9]\d{3}((0\d)|(1[0-2]))(([0|1|2]\d)|3[0-1])\d{3}([0-9]|X)$/.test( value ); } function carNo(value) { const xreg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}(([0-9]{5}[DF]$)|([DF][A-HJ-NP-Z0-9][0-9]{4}$))/; const creg = /^[京津沪渝冀豫云辽黑湘皖鲁新苏浙赣鄂桂甘晋蒙陕吉闽贵粤青藏川宁琼使领A-Z]{1}[A-Z]{1}[A-HJ-NP-Z0-9]{4}[A-HJ-NP-Z0-9挂学警港澳]{1}$/; if (value.length === 7) { return creg.test(value); } else if (value.length === 8) { return xreg.test(value); } else { return false; } } function amount(value) { return /^[1-9]\d*(,\d{3})*(\.\d{1,2})?$|^0\.\d{1,2}$/.test(value); } function chinese(value) { let reg = /^[\u4e00-\u9fa5]+$/gi; return reg.test(value); } function letter(value) { return /^[a-zA-Z]*$/.test(value); } function enOrNum(value) { let reg = /^[0-9a-zA-Z]*$/g; return reg.test(value); } function contains(value, param) { return value.indexOf(param) >= 0; } function range(value, param) { return value >= param[0] && value <= param[1]; } function rangeLength(value, param) { return value.length >= param[0] && value.length <= param[1]; } function landline(value) { let reg = /^\d{3,4}-\d{7,8}(-\d{3,4})?$/; return reg.test(value); } function empty(value) { switch (typeof value) { case "undefined": return true; case "string": if (value.replace(/(^[ \t\n\r]*)|([ \t\n\r]*$)/g, "").length == 0) return true; break; case "boolean": if (!value) return true; break; case "number": if (0 === value || isNaN(value)) return true; break; case "object": if (null === value || value.length === 0) return true; for (var i in value) { return false; } return true; } return false; } function jsonString(value) { if (typeof value == "string") { try { var obj = JSON.parse(value); if (typeof obj == "object" && obj) { return true; } else { return false; } } catch (e) { return false; } } return false; } function array(value) { if (typeof Array.isArray === "function") { return Array.isArray(value); } else { return Object.prototype.toString.call(value) === "[object Array]"; } } function object(value) { return Object.prototype.toString.call(value) === "[object Object]"; } function code(value, len = 6) { return new RegExp(`^\\d{${len}}$`).test(value); } function func(value) { return typeof value === "function"; } function promise(value) { return object(value) && func(value.then) && func(value.catch); } function image(value) { const newValue = value.split("?")[0]; return new RegExp(/\.(jpeg|jpg|gif|png|svg|webp|jfif|bmp|dpg)$/).test(newValue); } function video(value) { const newValue = value.split("?")[0]; return new RegExp(/\.(mp4|mpg|mpeg|dat|asf|avi|rm|rmvb|mov|wmv|flv|mkv|m3u8|3gp)$/).test(newValue); } function regExp(o) { return o && Object.prototype.toString.call(o) === "[object RegExp]"; } function string(value) { return typeof value === "string"; } const test = { email, mobile, url, date, dateISO, number, digits, idCard, carNo, amount, chinese, letter, enOrNum, contains, range, rangeLength, empty, isEmpty: empty, jsonString, landline, object, array, code, func, promise, video, image, regExp, string }; class Request { // 设置全局默认配置 setConfig(customConfig) { this.config = deepMerge(this.config, customConfig); } // 主要请求部分 request(options = {}) { if (this.interceptor.request && typeof this.interceptor.request === "function") { let interceptorRequest = this.interceptor.request(options); if (interceptorRequest === false) { return new Promise(() => { }); } this.options = interceptorRequest; } options.dataType = options.dataType || this.config.dataType; options.responseType = options.responseType || this.config.responseType; options.url = options.url || ""; options.params = options.params || {}; options.header = Object.assign({}, this.config.header, options.header); options.method = options.method || this.config.method; return new Promise((resolve, reject) => { options.complete = (response) => { uni.hideLoading(); clearTimeout(this.config.timer); this.config.timer = null; if (this.config.originalData) { if (this.interceptor.response && typeof this.interceptor.response === "function") { let resInterceptors = this.interceptor.response(response); if (resInterceptors !== false) { resolve(resInterceptors); } else { reject(response); } } else { resolve(response); } } else { if (response.statusCode == 200) { if (this.interceptor.response && typeof this.interceptor.response === "function") { let resInterceptors = this.interceptor.response(response.data); if (resInterceptors !== false) { resolve(resInterceptors); } else { reject(response.data); } } else { resolve(response.data); } } else { reject(response); } } }; options.url = test.url(options.url) ? options.url : this.config.baseUrl + (options.url.indexOf("/") == 0 ? options.url : "/" + options.url); if (this.config.showLoading && !this.config.timer) { this.config.timer = setTimeout(() => { uni.showLoading({ title: this.config.loadingText, mask: this.config.loadingMask }); this.config.timer = null; }, this.config.loadingTime); } uni.request(options); }); } constructor() { this.config = { baseUrl: "", // 请求的根域名 // 默认的请求头 header: {}, method: "POST", // 设置为json,返回后uni.request会对数据进行一次JSON.parse dataType: "json", // 此参数无需处理,因为5+和支付宝小程序不支持,默认为text即可 responseType: "text", showLoading: true, // 是否显示请求中的loading loadingText: "请求中...", loadingTime: 800, // 在此时间内,请求还没回来的话,就显示加载中动画,单位ms timer: null, // 定时器 originalData: false, // 是否在拦截器中返回服务端的原始数据,见文档说明 loadingMask: true // 展示loading的时候,是否给一个透明的蒙层,防止触摸穿透 }; this.interceptor = { // 请求前的拦截 request: null, // 请求后的拦截 response: null }; this.get = (url2, data2 = {}, header = {}) => { return this.request({ method: "GET", url: url2, header, data: data2 }); }; this.post = (url2, data2 = {}, header = {}) => { return this.request({ url: url2, method: "POST", header, data: data2 }); }; this.put = (url2, data2 = {}, header = {}) => { return this.request({ url: url2, method: "PUT", header, data: data2 }); }; this.delete = (url2, data2 = {}, header = {}) => { return this.request({ url: url2, method: "DELETE", header, data: data2 }); }; } } const http = new Request(); function queryParams(data2 = {}, isPrefix = true, arrayFormat = "brackets") { let prefix = isPrefix ? "?" : ""; let _result = []; if (["indices", "brackets", "repeat", "comma"].indexOf(arrayFormat) == -1) arrayFormat = "brackets"; for (let key in data2) { let value = data2[key]; if (["", void 0, null].indexOf(value) >= 0) { continue; } if (value.constructor === Array) { switch (arrayFormat) { case "indices": for (let i = 0; i < value.length; i++) { _result.push(key + "[" + i + "]=" + value[i]); } break; case "brackets": value.forEach((_value) => { _result.push(key + "[]=" + _value); }); break; case "repeat": value.forEach((_value) => { _result.push(key + "=" + _value); }); break; case "comma": let commaStr = ""; value.forEach((_value) => { commaStr += (commaStr ? "," : "") + _value; }); _result.push(key + "=" + commaStr); break; default: value.forEach((_value) => { _result.push(key + "[]=" + _value); }); } } else { _result.push(key + "=" + value); } } return _result.length ? prefix + _result.join("&") : ""; } class Router { constructor() { this.config = { type: "navigateTo", url: "", delta: 1, // navigateBack页面后退时,回退的层数 params: {}, // 传递的参数 animationType: "pop-in", // 窗口动画,只在APP有效 animationDuration: 300, // 窗口动画持续时间,单位毫秒,只在APP有效 intercept: false // 是否需要拦截 }; this.route = this.route.bind(this); } // 判断url前面是否有"/",如果没有则加上,否则无法跳转 addRootPath(url2) { return url2[0] === "/" ? url2 : `/${url2}`; } // 整合路由参数 mixinParam(url2, params) { url2 = url2 && this.addRootPath(url2); let query = ""; if (/.*\/.*\?.*=.*/.test(url2)) { query = uni.$u.queryParams(params, false); return url2 += "&" + query; } else { query = uni.$u.queryParams(params); return url2 += query; } } // 对外的方法名称 async route(options = {}, params = {}) { let mergeConfig = {}; if (typeof options === "string") { mergeConfig.url = this.mixinParam(options, params); mergeConfig.type = "navigateTo"; } else { mergeConfig = uni.$u.deepClone(options, this.config); mergeConfig.url = this.mixinParam(options.url, options.params); } if (params.intercept) { this.config.intercept = params.intercept; } mergeConfig.params = params; mergeConfig = uni.$u.deepMerge(this.config, mergeConfig); if (typeof uni.$u.routeIntercept === "function") { const isNext = await new Promise((resolve, reject) => { uni.$u.routeIntercept(mergeConfig, resolve); }); isNext && this.openPage(mergeConfig); } else { this.openPage(mergeConfig); } } // 执行路由跳转 openPage(config2) { const { url: url2, type, delta, animationType, animationDuration } = config2; if (config2.type == "navigateTo" || config2.type == "to") { uni.navigateTo({ url: url2, animationType, animationDuration }); } if (config2.type == "redirectTo" || config2.type == "redirect") { uni.redirectTo({ url: url2 }); } if (config2.type == "switchTab" || config2.type == "tab") { uni.switchTab({ url: url2 }); } if (config2.type == "reLaunch" || config2.type == "launch") { uni.reLaunch({ url: url2 }); } if (config2.type == "navigateBack" || config2.type == "back") { uni.navigateBack({ delta }); } } } const route = new Router().route; if (!String.prototype.padStart) { String.prototype.padStart = function(maxLength, fillString = " ") { if (Object.prototype.toString.call(fillString) !== "[object String]") throw new TypeError( "fillString must be String" ); let str = this; if (str.length >= maxLength) return String(str); let fillLength = maxLength - str.length, times = Math.ceil(fillLength / fillString.length); while (times >>= 1) { fillString += fillString; if (times === 1) { fillString += fillString; } } return fillString.slice(0, fillLength) + str; }; } function timeFormat(dateTime = null, fmt = "yyyy-mm-dd") { if (!dateTime) dateTime = Number(/* @__PURE__ */ new Date()); if (dateTime.toString().length == 10) dateTime *= 1e3; let date2 = new Date(dateTime); let ret; let opt = { "y+": date2.getFullYear().toString(), // 年 "m+": (date2.getMonth() + 1).toString(), // 月 "d+": date2.getDate().toString(), // 日 "h+": date2.getHours().toString(), // 时 "M+": date2.getMinutes().toString(), // 分 "s+": date2.getSeconds().toString() // 秒 // 有其他格式化字符需求可以继续添加,必须转化成字符串 }; for (let k in opt) { ret = new RegExp("(" + k + ")").exec(fmt); if (ret) { fmt = fmt.replace(ret[1], ret[1].length == 1 ? opt[k] : opt[k].padStart(ret[1].length, "0")); } } return fmt; } function timeFrom(dateTime = null, format = "yyyy-mm-dd") { if (!dateTime) dateTime = Number(/* @__PURE__ */ new Date()); if (dateTime.toString().length == 10) dateTime *= 1e3; let timestamp = +new Date(Number(dateTime)); let timer = (Number(/* @__PURE__ */ new Date()) - timestamp) / 1e3; let tips = ""; switch (true) { case timer < 300: tips = "刚刚"; break; case (timer >= 300 && timer < 3600): tips = parseInt(timer / 60) + "分钟前"; break; case (timer >= 3600 && timer < 86400): tips = parseInt(timer / 3600) + "小时前"; break; case (timer >= 86400 && timer < 2592e3): tips = parseInt(timer / 86400) + "天前"; break; default: if (format === false) { if (timer >= 2592e3 && timer < 365 * 86400) { tips = parseInt(timer / (86400 * 30)) + "个月前"; } else { tips = parseInt(timer / (86400 * 365)) + "年前"; } } else { tips = timeFormat(timestamp, format); } } return tips; } function colorGradient(startColor = "rgb(0, 0, 0)", endColor = "rgb(255, 255, 255)", step = 10) { let startRGB = hexToRgb(startColor, false); let startR = startRGB[0]; let startG = startRGB[1]; let startB = startRGB[2]; let endRGB = hexToRgb(endColor, false); let endR = endRGB[0]; let endG = endRGB[1]; let endB = endRGB[2]; let sR = (endR - startR) / step; let sG = (endG - startG) / step; let sB = (endB - startB) / step; let colorArr = []; for (let i = 0; i < step; i++) { let hex = rgbToHex("rgb(" + Math.round(sR * i + startR) + "," + Math.round(sG * i + startG) + "," + Math.round(sB * i + startB) + ")"); colorArr.push(hex); } return colorArr; } function hexToRgb(sColor, str = true) { let reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/; sColor = sColor.toLowerCase(); if (sColor && reg.test(sColor)) { if (sColor.length === 4) { let sColorNew = "#"; for (let i = 1; i < 4; i += 1) { sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1)); } sColor = sColorNew; } let sColorChange = []; for (let i = 1; i < 7; i += 2) { sColorChange.push(parseInt("0x" + sColor.slice(i, i + 2))); } if (!str) { return sColorChange; } else { return `rgb(${sColorChange[0]},${sColorChange[1]},${sColorChange[2]})`; } } else if (/^(rgb|RGB)/.test(sColor)) { let arr = sColor.replace(/(?:\(|\)|rgb|RGB)*/g, "").split(","); return arr.map((val) => Number(val)); } else { return sColor; } } function rgbToHex(rgb) { let _this = rgb; let reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/; if (/^(rgb|RGB)/.test(_this)) { let aColor = _this.replace(/(?:\(|\)|rgb|RGB)*/g, "").split(","); let strHex = "#"; for (let i = 0; i < aColor.length; i++) { let hex = Number(aColor[i]).toString(16); hex = String(hex).length == 1 ? "0" + hex : hex; if (hex === "0") { hex += hex; } strHex += hex; } if (strHex.length !== 7) { strHex = _this; } return strHex; } else if (reg.test(_this)) { let aNum = _this.replace(/#/, "").split(""); if (aNum.length === 6) { return _this; } else if (aNum.length === 3) { let numHex = "#"; for (let i = 0; i < aNum.length; i += 1) { numHex += aNum[i] + aNum[i]; } return numHex; } } else { return _this; } } function colorToRgba(color2, alpha = 0.3) { color2 = rgbToHex(color2); var reg = /^#([0-9a-fA-f]{3}|[0-9a-fA-f]{6})$/; let sColor = color2.toLowerCase(); if (sColor && reg.test(sColor)) { if (sColor.length === 4) { var sColorNew = "#"; for (let i = 1; i < 4; i += 1) { sColorNew += sColor.slice(i, i + 1).concat(sColor.slice(i, i + 1)); } sColor = sColorNew; } var sColorChange = []; for (let i = 1; i < 7; i += 2) { sColorChange.push(parseInt("0x" + sColor.slice(i, i + 2))); } return "rgba(" + sColorChange.join(",") + "," + alpha + ")"; } else { return sColor; } } const colorGradient$1 = { colorGradient, hexToRgb, rgbToHex, colorToRgba }; function guid(len = 32, firstU = true, radix = null) { let chars = "0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz".split(""); let uuid = []; radix = radix || chars.length; if (len) { for (let i = 0; i < len; i++) uuid[i] = chars[0 | Math.random() * radix]; } else { let r; uuid[8] = uuid[13] = uuid[18] = uuid[23] = "-"; uuid[14] = "4"; for (let i = 0; i < 36; i++) { if (!uuid[i]) { r = 0 | Math.random() * 16; uuid[i] = chars[i == 19 ? r & 3 | 8 : r]; } } } if (firstU) { uuid.shift(); return "u" + uuid.join(""); } else { return uuid.join(""); } } let color = { primary: "#2979ff", primaryDark: "#2b85e4", primaryDisabled: "#a0cfff", primaryLight: "#ecf5ff", bgColor: "#f3f4f6", info: "#909399", infoDark: "#82848a", infoDisabled: "#c8c9cc", infoLight: "#f4f4f5", warning: "#ff9900", warningDark: "#f29100", warningDisabled: "#fcbd71", warningLight: "#fdf6ec", error: "#fa3534", errorDark: "#dd6161", errorDisabled: "#fab6b6", errorLight: "#fef0f0", success: "#19be6b", successDark: "#18b566", successDisabled: "#71d5a1", successLight: "#dbf1e1", mainColor: "#303133", contentColor: "#606266", tipsColor: "#909399", lightColor: "#c0c4cc", borderColor: "#e4e7ed" }; function type2icon(type = "success", fill = false) { if (["primary", "info", "error", "warning", "success"].indexOf(type) == -1) type = "success"; let iconName = ""; switch (type) { case "primary": iconName = "info-circle"; break; case "info": iconName = "info-circle"; break; case "error": iconName = "close-circle"; break; case "warning": iconName = "error-circle"; break; case "success": iconName = "checkmark-circle"; break; default: iconName = "checkmark-circle"; } if (fill) iconName += "-fill"; return iconName; } function randomArray(array2 = []) { return array2.sort(() => Math.random() - 0.5); } const addUnit = function(value = "auto", unit = "rpx") { value = String(value); return test.number(value) ? `${value}${unit}` : value; }; function random(min, max) { if (min >= 0 && max > 0 && max >= min) { let gab = max - min + 1; return Math.floor(Math.random() * gab + min); } else { return 0; } } function trim$1(str, pos = "both") { if (pos == "both") { return str.replace(/^\s+|\s+$/g, ""); } else if (pos == "left") { return str.replace(/^\s*/, ""); } else if (pos == "right") { return str.replace(/(\s*$)/g, ""); } else if (pos == "all") { return str.replace(/\s+/g, ""); } else { return str; } } function toast(title, duration = 1500) { uni.showToast({ title, icon: "none", duration }); } function getParent(name, keys) { let parent = this.$parent; while (parent) { if (parent.$options.name !== name) { parent = parent.$parent; } else { let data2 = {}; if (Array.isArray(keys)) { keys.map((val) => { data2[val] = parent[val] ? parent[val] : ""; }); } else { for (let i in keys) { if (Array.isArray(keys[i])) { if (keys[i].length) { data2[i] = keys[i]; } else { data2[i] = parent[i]; } } else if (keys[i].constructor === Object) { if (Object.keys(keys[i]).length) { data2[i] = keys[i]; } else { data2[i] = parent[i]; } } else { data2[i] = keys[i] || keys[i] === false ? keys[i] : parent[i]; } } } return data2; } } return {}; } function $parent(name = void 0) { let parent = this.$parent; while (parent) { if (parent.$options && parent.$options.name !== name) { parent = parent.$parent; } else { return parent; } } return false; } function os() { return uni.getSystemInfoSync().platform; } function sys() { return uni.getSystemInfoSync(); } let timeout = null; function debounce(func2, wait = 500, immediate = false) { if (timeout !== null) clearTimeout(timeout); if (immediate) { var callNow = !timeout; timeout = setTimeout(function() { timeout = null; }, wait); if (callNow) typeof func2 === "function" && func2(); } else { timeout = setTimeout(function() { typeof func2 === "function" && func2(); }, wait); } } let timeoutArr = []; let flagArr = []; function throttle(fn, time = 500, isImmediate = true, timeoutName = "default") { if (!timeoutArr[timeoutName]) timeoutArr[timeoutName] = null; if (isImmediate) { if (!flagArr[timeoutName]) { flagArr[timeoutName] = true; if (typeof fn === "function") fn(); timeoutArr[timeoutName] = setTimeout(() => { flagArr[timeoutName] = false; }, time); } } else { if (!flagArr[timeoutName]) { flagArr[timeoutName] = true; timeoutArr[timeoutName] = setTimeout(() => { flagArr[timeoutName] = false; if (typeof fn === "function") fn(); }, time); } } } function trim(str, pos = "both") { str = String(str); if (pos == "both") { return str.replace(/^\s+|\s+$/g, ""); } if (pos == "left") { return str.replace(/^\s*/, ""); } if (pos == "right") { return str.replace(/(\s*$)/g, ""); } if (pos == "all") { return str.replace(/\s+/g, ""); } return str; } function addStyle(customStyle, target = "object") { if (test.empty(customStyle) || typeof customStyle === "object" && target === "object" || target === "string" && typeof customStyle === "string") { return customStyle; } if (target === "object") { customStyle = trim(customStyle); const styleArray = customStyle.split(";"); const style = {}; for (let i = 0; i < styleArray.length; i++) { if (styleArray[i]) { const item = styleArray[i].split(":"); style[trim(item[0])] = trim(item[1]); } } return style; } let string2 = ""; for (const i in customStyle) { const key = i.replace(/([A-Z])/g, "-$1").toLowerCase(); string2 += `${key}:${customStyle[i]};`; } return trim(string2); } let version = "1.10.1"; const config = { v: version, version, // 主题名称 type: [ "primary", "success", "info", "error", "warning" ] }; const zIndex = { toast: 10090, noNetwork: 10080, // popup包含popup,actionsheet,keyboard,picker的值 popup: 10075, mask: 10070, navbar: 980, topTips: 975, sticky: 970, indexListSticky: 965 }; function wranning(str) { { formatAppLog("warn", "at uni_modules/vk-uview-ui/index.js:26", str); } } const $u = { queryParams, route, timeFormat, date: timeFormat, // 另名date timeFrom, colorGradient: colorGradient$1.colorGradient, colorToRgba: colorGradient$1.colorToRgba, guid, color, sys, os, type2icon, randomArray, wranning, get: http.get, post: http.post, put: http.put, "delete": http.delete, hexToRgb: colorGradient$1.hexToRgb, rgbToHex: colorGradient$1.rgbToHex, test, random, deepClone, deepMerge, getParent, $parent, addUnit, trim: trim$1, type: ["primary", "success", "error", "warning", "info"], http, toast, config, // uView配置信息相关,比如版本号 zIndex, debounce, throttle, addStyle }; uni.$u = $u; const install = (Vue2) => { Vue2.mixin(mixin); Vue2.config.globalProperties.$u = $u; }; const uView = { install }; function createApp() { const app = vue.createVueApp(App); app.use(uView); 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);