初始化参股

This commit is contained in:
2026-01-27 18:06:04 +08:00
commit 2774a539bf
254 changed files with 33255 additions and 0 deletions

View File

@@ -0,0 +1,39 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = /* @__PURE__ */ common_vendor.defineComponent({
__name: "before-after",
props: {
beforeImage: {},
afterImage: {},
showTitle: { type: Boolean }
},
setup(__props) {
const props = __props;
const previewImage = (url, type) => {
const urls = type == "before" ? [props.beforeImage] : [props.afterImage];
common_vendor.index.previewImage({
current: url,
urls
});
};
return (_ctx, _cache) => {
"raw js";
const __returned__ = common_vendor.e({
a: _ctx.showTitle
}, _ctx.showTitle ? {} : {}, {
b: _ctx.beforeImage,
c: common_vendor.o(($event) => {
return previewImage(_ctx.beforeImage, "before");
}),
d: _ctx.afterImage,
e: common_vendor.o(($event) => {
return previewImage(_ctx.afterImage, "after");
}),
f: common_vendor.sei(common_vendor.gei(_ctx, ""), "view")
});
return __returned__;
};
}
});
wx.createComponent(_sfc_main);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/before-after/before-after.js.map

View File

@@ -0,0 +1,4 @@
{
"component": true,
"usingComponents": {}
}

View File

@@ -0,0 +1 @@
<view id="{{f}}" change:eS="{{uV.sS}}" eS="{{$eS[f]}}" change:eA="{{uV.sA}}" eA="{{$eA[f]}}" class="{{['before-after', virtualHostClass]}}" style="{{virtualHostStyle}}" hidden="{{virtualHostHidden || false}}"><view wx:if="{{a}}" class="ba-title"><text class="ba-title-text">翻新前后对比</text></view><view class="ba-container"><view class="ba-item" bindtap="{{c}}"><view class="ba-label before-label"><text class="ba-label-text">翻新前</text></view><image class="ba-image" src="{{b}}" mode="aspectFill"></image></view><view class="ba-arrow"><text class="ba-arrow-text">→</text></view><view class="ba-item" bindtap="{{e}}"><view class="ba-label after-label"><text class="ba-label-text">翻新后</text></view><image class="ba-image" src="{{d}}" mode="aspectFill"></image></view></view></view><wxs src="/common/uniView.wxs" module="uV"/>

View File

@@ -0,0 +1,81 @@
:host{display:flex;flex-direction:column}
/**
* 优艺家沙发翻新 - 全局样式变量
*/
/* ========== 项目主题色 ========== */
/* 辅助色 */
/* 文字颜色 */
/* 背景色 */
/* 边框颜色 */
/* 间距 */
/* 圆角 */
/* 阴影 */
/* ========== uni-app 内置变量 ========== */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.before-after {
background-color: #ffffff;
border-radius: 16rpx;
padding: 24rpx;
margin-bottom: 24rpx;
}
.ba-title {
margin-bottom: 24rpx;
}
.ba-title-text {
font-size: 32rpx;
font-weight: 600;
color: #333333;
}
.ba-container {
flex-direction: row;
align-items: center;
justify-content: space-between;
}
.ba-item {
flex: 1;
position: relative;
border-radius: 12rpx;
overflow: hidden;
}
.ba-image {
width: 100%;
height: 280rpx;
border-radius: 12rpx;
}
.ba-label {
position: absolute;
bottom: 16rpx;
left: 16rpx;
padding: 8rpx 16rpx;
border-radius: 8rpx;
z-index: 1;
}
.before-label {
background-color: rgba(144, 147, 153, 0.9);
}
.after-label {
background-color: rgba(212, 165, 116, 0.9);
}
.ba-label-text {
font-size: 22rpx;
color: #ffffff;
}
.ba-arrow {
padding: 0 16rpx;
}
.ba-arrow-text {
font-size: 40rpx;
color: #D4A574;
font-weight: bold;
}

View File

@@ -0,0 +1,72 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
class CaseItem extends UTS.UTSType {
static get$UTSMetadata$() {
return {
kind: 2,
get fields() {
return {
id: { type: String, optional: false },
title: { type: String, optional: false },
category: { type: String, optional: false },
categoryName: { type: String, optional: false },
coverImage: { type: String, optional: false },
material: { type: String, optional: false },
duration: { type: String, optional: false },
price: { type: String, optional: false },
views: { type: Number, optional: false },
likes: { type: Number, optional: false }
};
},
name: "CaseItem"
};
}
constructor(options, metadata = CaseItem.get$UTSMetadata$(), isJSONParse = false) {
super();
this.__props__ = UTS.UTSType.initProps(options, metadata, isJSONParse);
this.id = this.__props__.id;
this.title = this.__props__.title;
this.category = this.__props__.category;
this.categoryName = this.__props__.categoryName;
this.coverImage = this.__props__.coverImage;
this.material = this.__props__.material;
this.duration = this.__props__.duration;
this.price = this.__props__.price;
this.views = this.__props__.views;
this.likes = this.__props__.likes;
delete this.__props__;
}
}
const _sfc_main = /* @__PURE__ */ common_vendor.defineComponent({
__name: "case-card",
props: {
caseData: {}
},
emits: ["click"],
setup(__props, _a) {
var __emit = _a.emit;
const props = __props;
const emit = __emit;
const handleClick = () => {
emit("click", props.caseData.id);
};
return (_ctx, _cache) => {
"raw js";
const __returned__ = {
a: _ctx.caseData.coverImage,
b: common_vendor.t(_ctx.caseData.categoryName),
c: common_vendor.t(_ctx.caseData.title),
d: common_vendor.t(_ctx.caseData.material),
e: common_vendor.t(_ctx.caseData.duration),
f: common_vendor.t(_ctx.caseData.price),
g: common_vendor.t(_ctx.caseData.views),
h: common_vendor.t(_ctx.caseData.likes),
i: common_vendor.sei(common_vendor.gei(_ctx, ""), "view"),
j: common_vendor.o(handleClick)
};
return __returned__;
};
}
});
wx.createComponent(_sfc_main);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/case-card/case-card.js.map

View File

@@ -0,0 +1,4 @@
{
"component": true,
"usingComponents": {}
}

View File

@@ -0,0 +1 @@
<view bindtap="{{j}}" id="{{i}}" change:eS="{{uV.sS}}" eS="{{$eS[i]}}" change:eA="{{uV.sA}}" eA="{{$eA[i]}}" class="{{['case-card', virtualHostClass]}}" style="{{virtualHostStyle}}" hidden="{{virtualHostHidden || false}}"><view class="card-image-wrapper"><image class="card-image" src="{{a}}" mode="aspectFill"></image><view class="card-category">{{b}}</view></view><view class="card-content"><text class="card-title">{{c}}</text><view class="card-info"><view class="info-item"><text class="info-label">材质:</text><text class="info-value">{{d}}</text></view><view class="info-item"><text class="info-label">工期:</text><text class="info-value">{{e}}</text></view></view><view class="card-footer"><text class="card-price">{{f}}</text><view class="card-stats"><text class="stat-item">👁 {{g}}</text><text class="stat-item">❤ {{h}}</text></view></view></view></view><wxs src="/common/uniView.wxs" module="uV"/>

View File

@@ -0,0 +1,100 @@
:host{display:flex;flex-direction:column}
/**
* 优艺家沙发翻新 - 全局样式变量
*/
/* ========== 项目主题色 ========== */
/* 辅助色 */
/* 文字颜色 */
/* 背景色 */
/* 边框颜色 */
/* 间距 */
/* 圆角 */
/* 阴影 */
/* ========== uni-app 内置变量 ========== */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.case-card {
background-color: #ffffff;
border-radius: 16rpx;
overflow: hidden;
box-shadow: 0 4rpx 16rpx rgba(0, 0, 0, 0.08);
margin-bottom: 24rpx;
}
.card-image-wrapper {
position: relative;
width: 100%;
height: 360rpx;
}
.card-image {
width: 100%;
height: 100%;
}
.card-category {
position: absolute;
top: 16rpx;
left: 16rpx;
background-color: rgba(212, 165, 116, 0.9);
color: #ffffff;
font-size: 22rpx;
padding: 8rpx 16rpx;
border-radius: 8rpx;
}
.card-content {
padding: 24rpx;
}
.card-title {
font-size: 32rpx;
font-weight: 600;
color: #333333;
margin-bottom: 16rpx;
lines: 1;
text-overflow: ellipsis;
}
.card-info {
margin-bottom: 16rpx;
}
.info-item {
flex-direction: row;
margin-bottom: 8rpx;
}
.info-label {
font-size: 26rpx;
color: #909399;
}
.info-value {
font-size: 26rpx;
color: #606266;
}
.card-footer {
flex-direction: row;
justify-content: space-between;
align-items: center;
margin-top: 16rpx;
padding-top: 16rpx;
border-top-width: 1rpx;
border-top-style: solid;
border-top-color: #EBEEF5;
}
.card-price {
font-size: 36rpx;
font-weight: 600;
color: #D4A574;
}
.card-stats {
flex-direction: row;
}
.stat-item {
font-size: 24rpx;
color: #909399;
margin-left: 24rpx;
}

View File

@@ -0,0 +1,47 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = /* @__PURE__ */ common_vendor.defineComponent({
__name: "nav-bar",
props: {
title: {},
showBack: { type: Boolean },
titleColor: {},
bgColor: {}
},
setup(__props) {
const statusBarHeight = common_vendor.ref(20);
const navBarHeight = common_vendor.ref(44);
common_vendor.onMounted(() => {
const sysInfo = common_vendor.index.getSystemInfoSync();
statusBarHeight.value = sysInfo.statusBarHeight;
const menuButtonInfo = common_vendor.index.getMenuButtonBoundingClientRect();
navBarHeight.value = (menuButtonInfo.top - sysInfo.statusBarHeight) * 2 + menuButtonInfo.height;
});
const handleBack = () => {
common_vendor.index.navigateBack(new UTSJSONObject({
fail: () => {
common_vendor.index.switchTab({
url: "/pages/index/index"
});
}
}));
};
return (_ctx, _cache) => {
"raw js";
const __returned__ = common_vendor.e({
a: _ctx.showBack
}, _ctx.showBack ? {
b: common_vendor.o(handleBack)
} : {}, {
c: common_vendor.t(_ctx.title),
d: _ctx.titleColor,
e: common_vendor.unref(navBarHeight) + "px",
f: common_vendor.unref(statusBarHeight) + "px",
g: common_vendor.unref(statusBarHeight) + common_vendor.unref(navBarHeight) + "px"
});
return __returned__;
};
}
});
wx.createComponent(_sfc_main);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/nav-bar/nav-bar.js.map

View File

@@ -0,0 +1,4 @@
{
"component": true,
"usingComponents": {}
}

View File

@@ -0,0 +1 @@
<view class="nav-bar" style="{{'padding-top:' + f}}"><view class="nav-content" style="{{'height:' + e}}"><view wx:if="{{a}}" class="nav-left" bindtap="{{b}}"><text class="nav-back-icon">←</text></view><view wx:else class="nav-left"></view><view class="nav-center"><text class="nav-title" style="{{'color:' + d}}">{{c}}</text></view><view class="nav-right"><slot name="right"></slot></view></view></view><view style="{{'height:' + g}}"></view>

View File

@@ -0,0 +1,64 @@
:host{display:flex;flex-direction:column}
/**
* 优艺家沙发翻新 - 全局样式变量
*/
/* ========== 项目主题色 ========== */
/* 辅助色 */
/* 文字颜色 */
/* 背景色 */
/* 边框颜色 */
/* 间距 */
/* 圆角 */
/* 阴影 */
/* ========== uni-app 内置变量 ========== */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.nav-bar {
position: fixed;
top: 0;
left: 0;
right: 0;
background-color: #ffffff;
z-index: 999;
}
.nav-content {
flex-direction: row;
align-items: center;
justify-content: space-between;
padding: 0 24rpx;
}
.nav-left {
width: 80rpx;
flex-direction: row;
align-items: center;
}
.nav-back-icon {
font-size: 40rpx;
color: #333333;
}
.nav-center {
flex: 1;
align-items: center;
justify-content: center;
}
.nav-title {
font-size: 34rpx;
font-weight: 600;
color: #333333;
}
.nav-right {
width: 80rpx;
flex-direction: row;
align-items: center;
justify-content: flex-end;
}

View File

@@ -0,0 +1,31 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = /* @__PURE__ */ common_vendor.defineComponent({
__name: "section-header",
props: {
title: {},
showMore: { type: Boolean }
},
emits: ["more"],
setup(__props, _a) {
var __emit = _a.emit;
const emit = __emit;
const handleMore = () => {
emit("more");
};
return (_ctx, _cache) => {
"raw js";
const __returned__ = common_vendor.e({
a: common_vendor.t(_ctx.title),
b: _ctx.showMore
}, _ctx.showMore ? {
c: common_vendor.o(handleMore)
} : {}, {
d: common_vendor.sei(common_vendor.gei(_ctx, ""), "view")
});
return __returned__;
};
}
});
wx.createComponent(_sfc_main);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/section-header/section-header.js.map

View File

@@ -0,0 +1,4 @@
{
"component": true,
"usingComponents": {}
}

View File

@@ -0,0 +1 @@
<view id="{{d}}" change:eS="{{uV.sS}}" eS="{{$eS[d]}}" change:eA="{{uV.sA}}" eA="{{$eA[d]}}" class="{{['section-header', virtualHostClass]}}" style="{{virtualHostStyle}}" hidden="{{virtualHostHidden || false}}"><view class="section-left"><view class="section-line"></view><text class="section-title">{{a}}</text></view><view wx:if="{{b}}" class="section-right" bindtap="{{c}}"><text class="section-more">查看更多</text><text class="section-arrow"></text></view></view><wxs src="/common/uniView.wxs" module="uV"/>

View File

@@ -0,0 +1,60 @@
:host{display:flex;flex-direction:column}
/**
* 优艺家沙发翻新 - 全局样式变量
*/
/* ========== 项目主题色 ========== */
/* 辅助色 */
/* 文字颜色 */
/* 背景色 */
/* 边框颜色 */
/* 间距 */
/* 圆角 */
/* 阴影 */
/* ========== uni-app 内置变量 ========== */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.section-header {
flex-direction: row;
align-items: center;
justify-content: space-between;
padding: 32rpx 0 24rpx 0;
}
.section-left {
flex-direction: row;
align-items: center;
}
.section-line {
width: 8rpx;
height: 36rpx;
background-color: #D4A574;
border-radius: 4rpx;
margin-right: 16rpx;
}
.section-title {
font-size: 34rpx;
font-weight: 600;
color: #333333;
}
.section-right {
flex-direction: row;
align-items: center;
}
.section-more {
font-size: 26rpx;
color: #909399;
}
.section-arrow {
font-size: 32rpx;
color: #909399;
margin-left: 8rpx;
}

View File

@@ -0,0 +1,31 @@
"use strict";
const common_vendor = require("../../common/vendor.js");
const _sfc_main = /* @__PURE__ */ common_vendor.defineComponent({
__name: "service-card",
props: {
id: {},
name: {},
icon: {}
},
emits: ["click"],
setup(__props, _a) {
var __emit = _a.emit;
const props = __props;
const emit = __emit;
const handleClick = () => {
emit("click", props.id);
};
return (_ctx, _cache) => {
"raw js";
const __returned__ = {
a: _ctx.icon,
b: common_vendor.t(_ctx.name),
c: common_vendor.sei(common_vendor.gei(_ctx, ""), "view"),
d: common_vendor.o(handleClick)
};
return __returned__;
};
}
});
wx.createComponent(_sfc_main);
//# sourceMappingURL=../../../.sourcemap/mp-weixin/components/service-card/service-card.js.map

View File

@@ -0,0 +1,4 @@
{
"component": true,
"usingComponents": {}
}

View File

@@ -0,0 +1 @@
<view bindtap="{{d}}" id="{{c}}" change:eS="{{uV.sS}}" eS="{{$eS[c]}}" change:eA="{{uV.sA}}" eA="{{$eA[c]}}" class="{{['service-card', virtualHostClass]}}" style="{{virtualHostStyle}}" hidden="{{virtualHostHidden || false}}"><view class="service-icon-wrapper"><image class="service-icon" src="{{a}}" mode="aspectFit"></image></view><text class="service-name">{{b}}</text></view><wxs src="/common/uniView.wxs" module="uV"/>

View File

@@ -0,0 +1,51 @@
:host{display:flex;flex-direction:column}
/**
* 优艺家沙发翻新 - 全局样式变量
*/
/* ========== 项目主题色 ========== */
/* 辅助色 */
/* 文字颜色 */
/* 背景色 */
/* 边框颜色 */
/* 间距 */
/* 圆角 */
/* 阴影 */
/* ========== uni-app 内置变量 ========== */
/* 行为相关颜色 */
/* 文字基本颜色 */
/* 背景颜色 */
/* 边框颜色 */
/* 尺寸变量 */
/* 文字尺寸 */
/* 图片尺寸 */
/* Border Radius */
/* 水平间距 */
/* 垂直间距 */
/* 透明度 */
/* 文章场景相关 */
.service-card {
align-items: center;
justify-content: center;
padding: 24rpx 16rpx;
background-color: #ffffff;
border-radius: 16rpx;
width: 160rpx;
}
.service-icon-wrapper {
width: 80rpx;
height: 80rpx;
background-color: #FDF6EE;
border-radius: 50%;
align-items: center;
justify-content: center;
margin-bottom: 16rpx;
}
.service-icon {
width: 48rpx;
height: 48rpx;
}
.service-name {
font-size: 26rpx;
color: #333333;
text-align: center;
}