11008 lines
431 KiB
JavaScript
11008 lines
431 KiB
JavaScript
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: ""
|
||
},
|
||
// 用于 <form> 组件,点击分别会触发 <form> 组件的 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(` <view class="u-calendar__header">\r
|
||
<view style="margin-top: 0;" class="u-calendar__header__text" v-if="!$slots['tooltip']">\r
|
||
{{toolTip}}\r
|
||
</view>\r
|
||
<slot v-else name="tooltip" />\r
|
||
</view> `),
|
||
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(' <view class="swiper-button-blue" v-show="item.cardType==2">\r\n 分享\r\n </view> '),
|
||
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);
|