Files
Home-Care/hss-home-service/website/.nuxt/dist/server/_nuxt/ServiceLoopFlow-BcBowZhS.js
comclib c02029a5f3 feat: 初始化居家上门服务系统完整项目代码
- Spring Boot 后端服务 (hss-home-service)
- delivery-miniapp 配送小程序
- website 官网 (Nuxt)
- docs 架构设计文档
- Docker 容器化部署配置

Co-Authored-By: Claude Opus 4.7 <noreply@anthropic.com>
2026-05-19 09:04:49 +08:00

66 lines
3.5 KiB
JavaScript

import { ref, defineComponent, mergeProps, useSSRContext } from "vue";
import { ssrRenderAttrs, ssrRenderList, ssrInterpolate } from "vue/server-renderer";
import { a as _export_sfc } from "../server.mjs";
function useScrollAnim(options = {}) {
const { delay = 0, threshold = 0.15 } = options;
const isVisible = ref(false);
let observer = null;
function observe(el, overrides = {}) {
const d = overrides.delay ?? delay;
const cls = overrides.class ?? "flow-visible";
observer = new IntersectionObserver(
(entries) => {
entries.forEach((entry) => {
if (entry.isIntersecting) {
setTimeout(() => {
entry.target.classList.add(cls);
}, d);
observer?.unobserve(entry.target);
}
});
},
{ threshold }
);
observer.observe(el);
}
function unobserveAll() {
observer?.disconnect();
}
return { isVisible, observe, unobserve: unobserveAll };
}
const _sfc_main = /* @__PURE__ */ defineComponent({
__name: "ServiceLoopFlow",
__ssrInlineRender: true,
setup(__props) {
const steps = [
{ num: "01", title: "需求受理", desc: "多渠道统一接入\n自动校验与审核" },
{ num: "02", title: "能力评估", desc: "上门评估定级\nGPS签到+拍照" },
{ num: "03", title: "方案制定", desc: "个性化服务方案\n费用透明计算" },
{ num: "04", title: "智能派单", desc: "算法匹配推荐\n人工确认兜底" },
{ num: "05", title: "上门执行", desc: "GPS签到校验\n项目级执行记录" },
{ num: "06", title: "过程监管", desc: "抽查违规整改\n审计日志追溯" },
{ num: "07", title: "验收评价", desc: "星级+标签评价\n评分影响后续派单" },
{ num: "08", title: "结算归档", desc: "自动汇总结算\n电子台账归档" }
];
useScrollAnim();
return (_ctx, _push, _parent, _attrs) => {
_push(`<div${ssrRenderAttrs(mergeProps({ class: "relative" }, _attrs))} data-v-f6f421ef><div class="hidden lg:block absolute top-1/2 left-[5%] right-[5%] h-0.5 bg-gray-200 -translate-y-1/2 z-0" data-v-f6f421ef></div><div class="grid grid-cols-2 lg:grid-cols-4 gap-4 md:gap-6 relative z-10" data-v-f6f421ef><!--[-->`);
ssrRenderList(steps, (s, i) => {
_push(`<div class="flow-step bg-white rounded-2xl p-5 md:p-6 text-center shadow-sm opacity-0 translate-y-8 transition-all duration-500 hover:shadow-lg group" data-v-f6f421ef><span class="w-12 h-12 mx-auto mb-4 rounded-full bg-gradient-to-br from-primary-50 to-accent-50 text-primary font-bold text-sm flex items-center justify-center group-hover:from-primary group-hover:to-accent group-hover:text-white transition-all" data-v-f6f421ef>${ssrInterpolate(s.num)}</span><h4 class="font-bold text-sm mb-1" data-v-f6f421ef>${ssrInterpolate(s.title)}</h4><p class="text-xs text-text-secondary whitespace-pre-line leading-relaxed" data-v-f6f421ef>${ssrInterpolate(s.desc)}</p></div>`);
});
_push(`<!--]--></div></div>`);
};
}
});
const _sfc_setup = _sfc_main.setup;
_sfc_main.setup = (props, ctx) => {
const ssrContext = useSSRContext();
(ssrContext.modules || (ssrContext.modules = /* @__PURE__ */ new Set())).add("components/ServiceLoopFlow.vue");
return _sfc_setup ? _sfc_setup(props, ctx) : void 0;
};
const __nuxt_component_0 = /* @__PURE__ */ _export_sfc(_sfc_main, [["__scopeId", "data-v-f6f421ef"]]);
export {
__nuxt_component_0 as _
};
//# sourceMappingURL=ServiceLoopFlow-BcBowZhS.js.map