Merge branch 'dev' of https://gitee.com/yunqiang_technology/flowsomwechat into rwkdev
commit
79c1eed90c
Binary file not shown.
|
After Width: | Height: | Size: 246 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 237 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 246 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 246 KiB |
Binary file not shown.
|
After Width: | Height: | Size: 246 KiB |
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
@ -0,0 +1,383 @@
|
||||
import Taro from "@tarojs/taro";
|
||||
import classnames from "classnames";
|
||||
import { Block, View, Image, Text, Input } from "@tarojs/components";
|
||||
import { Popup, Progress, Slider } from "@antmjs/vantui";
|
||||
import { useRef } from "react";
|
||||
import Echarts, { EChartOption, EchartsHandle } from "taro-react-echarts";
|
||||
import echarts from "@/utils/echarts.min.js";
|
||||
|
||||
import "./index.less";
|
||||
|
||||
interface Props {
|
||||
Electricity: any;
|
||||
matrixElectricity: any;
|
||||
facialMaskConnectStatus: any;
|
||||
}
|
||||
|
||||
function Index() {
|
||||
|
||||
const echartsRef = useRef<EchartsHandle>(null);
|
||||
function generateColorArray(startColor, endColor, steps) {
|
||||
var startRGB = hexToRgb(startColor);
|
||||
var endRGB = hexToRgb(endColor);
|
||||
var colors = [];
|
||||
for (var i = 0; i < steps; i++) {
|
||||
var r = interpolate(startRGB.r, endRGB.r, steps, i);
|
||||
var g = interpolate(startRGB.g, endRGB.g, steps, i);
|
||||
var b = interpolate(startRGB.b, endRGB.b, steps, i);
|
||||
colors.push(rgbToHex(r, g, b));
|
||||
}
|
||||
return colors;
|
||||
}
|
||||
|
||||
function hexToRgb(hex) {
|
||||
var bigint = parseInt(hex.slice(1), 16);
|
||||
var r = (bigint >> 16) & 255;
|
||||
var g = (bigint >> 8) & 255;
|
||||
var b = bigint & 255;
|
||||
return { r: r, g: g, b: b };
|
||||
}
|
||||
|
||||
function rgbToHex(r, g, b) {
|
||||
return (
|
||||
"#" + ((1 << 24) + (r << 16) + (g << 8) + b).toString(16).slice(1)
|
||||
);
|
||||
}
|
||||
|
||||
function interpolate(start, end, steps, count) {
|
||||
return start + ((end - start) / steps) * count;
|
||||
}
|
||||
|
||||
const startColor = "#FFFF00"; // 黄色
|
||||
const endColor = "#FF0000"; // 红色
|
||||
const steps = 80; // 80个颜色
|
||||
|
||||
|
||||
const colors = generateColorArray(startColor, endColor, steps);
|
||||
const xList = [...new Array(61).fill(0).map((item, key) => key)];
|
||||
const seriesData = [
|
||||
...xList.map((item) => {
|
||||
return Math.random() * 80;
|
||||
}),
|
||||
];
|
||||
// let seriesData=[
|
||||
// 1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3,1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3,
|
||||
// 1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3,
|
||||
// 1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3
|
||||
// ,1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3
|
||||
// ,1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3
|
||||
// ,1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3
|
||||
// ,1,2,2,3,3,4,5,1,2,3,4,2,8,5,1,2,3,
|
||||
// 1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3
|
||||
// ,1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3
|
||||
// ,1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3
|
||||
// ,1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3
|
||||
// ,1,2,2,3,3,4,5,1,2,3,4,2,3,5,1,2,3
|
||||
// ]
|
||||
// console.log(seriesData,'seriesData',xList);
|
||||
|
||||
const option: EChartOption ={
|
||||
grid: {
|
||||
// 让图表占满容器
|
||||
top: "10rpx",
|
||||
left: "35rpx",
|
||||
right: "28rpx",
|
||||
bottom: "17rpx",
|
||||
},
|
||||
xAxis: {
|
||||
type: "category",
|
||||
data: [...xList],
|
||||
axisLabel: {
|
||||
interval: 9,
|
||||
formatter: function (value, index) {
|
||||
return value * 6 + 's';
|
||||
},
|
||||
textStyle: {
|
||||
color: '#999999', // 文字颜色
|
||||
fontSize: 8 // 文字大小
|
||||
},
|
||||
},
|
||||
axisTick: {
|
||||
// alignWithLabel: true,
|
||||
show: false,
|
||||
interval: 9,
|
||||
},
|
||||
// axisLine: {
|
||||
// show: false,
|
||||
// },
|
||||
},
|
||||
yAxis: [
|
||||
{
|
||||
min: 0,
|
||||
max: 80,
|
||||
splitNumber: 10,
|
||||
axisLabel: {
|
||||
formatter: function (value, index) {
|
||||
const num = value / 10 + 1
|
||||
return num === 9 ? '' : num + '级';
|
||||
},
|
||||
textStyle: {
|
||||
color: '#999999', // 文字颜色
|
||||
fontSize: 8 // 文字大小
|
||||
},
|
||||
},
|
||||
type: "value",
|
||||
splitLine: {
|
||||
lineStyle: {
|
||||
color: ["#ccc", "#ccc", "#ccc", "#ccc", "#ccc", "#ccc", "#ccc", "#ccc", "#fff"],
|
||||
type:'dashed'
|
||||
},
|
||||
}
|
||||
},
|
||||
],
|
||||
series: [
|
||||
|
||||
{
|
||||
barCategoryGap:'0%',
|
||||
data: seriesData,
|
||||
type: "bar",
|
||||
// barWidth: 15,
|
||||
gapWidth: "0%",
|
||||
itemStyle: {
|
||||
normal: {
|
||||
color: function (params) {
|
||||
var value = params.data;
|
||||
return new echarts.graphic.LinearGradient(0, 0, 0, 1, [
|
||||
{
|
||||
offset: 0,
|
||||
color: colors[parseInt(value)], // 红色
|
||||
},
|
||||
{
|
||||
offset: 1,
|
||||
color: colors[0], // 黄色
|
||||
},
|
||||
]);;
|
||||
},
|
||||
},
|
||||
},
|
||||
},
|
||||
],
|
||||
};
|
||||
// const option: EChartOption = {
|
||||
// grid: {
|
||||
// // 让图表占满容器
|
||||
// top: "28rpx",
|
||||
// left: "18rpx",
|
||||
// right: "28rpx",
|
||||
// bottom: "17rpx",
|
||||
// },
|
||||
// xAxis: [
|
||||
// {
|
||||
// type: 'category',
|
||||
// axisTick: { show: false },
|
||||
// data: ['2012', '2013', '2014', '2015', '2016'],
|
||||
// axisLine: {
|
||||
// show: false,
|
||||
// },
|
||||
// axisLabel: {
|
||||
// show: false,
|
||||
// },
|
||||
|
||||
// }
|
||||
// ],
|
||||
// yAxis: {
|
||||
// type: "value",
|
||||
// min: 0,
|
||||
// max: 8,
|
||||
// splitNumber: 8,
|
||||
// splitLine: {
|
||||
// show: false,
|
||||
// // lineStyle: {
|
||||
// // color: "#cccccc",
|
||||
// // type: [4, 2],
|
||||
// // dashOffset: 4,
|
||||
// // },
|
||||
// },
|
||||
// axisLine: {
|
||||
// show: false,
|
||||
// },
|
||||
// axisLabel: {
|
||||
// show: false,
|
||||
// },
|
||||
// axisTick: {
|
||||
// show: false,
|
||||
// },
|
||||
// },
|
||||
|
||||
// series: [
|
||||
// { barCategoryGap:'0%',
|
||||
// name: 'Forest',
|
||||
// type: 'bar',
|
||||
// barGap: 0,
|
||||
// // label: labelOption,
|
||||
// // emphasis: {
|
||||
// // focus: 'series'
|
||||
// // },
|
||||
// data: [2, 4, 4, 5, 7]
|
||||
// },
|
||||
// { barCategoryGap:'0%',
|
||||
// name: 'Steppe',
|
||||
// type: 'bar',
|
||||
// // label: labelOption,
|
||||
// emphasis: {
|
||||
// focus: 'series'
|
||||
// },
|
||||
// data: [2, 4, 4, 5, 7]
|
||||
// },
|
||||
// { barCategoryGap:'0%',
|
||||
// name: 'Desert',
|
||||
// type: 'bar',
|
||||
// // label: labelOption,
|
||||
// // emphasis: {
|
||||
// // focus: 'series'
|
||||
// // },
|
||||
// data: [2, 4, 4, 5, 7]
|
||||
// },
|
||||
// { barCategoryGap:'0%',
|
||||
// name: 'Wetland',
|
||||
// type: 'bar',
|
||||
// // label: labelOption,
|
||||
// // emphasis: {
|
||||
// // focus: 'series'
|
||||
// // },
|
||||
// data: [2, 4, 4, 5, 7]
|
||||
// },
|
||||
// { barCategoryGap:'0%',
|
||||
// name: 'demo1',
|
||||
// type: 'bar',
|
||||
// // label: labelOption,
|
||||
// // emphasis: {
|
||||
// // focus: 'series'
|
||||
// // },
|
||||
// data: [2, 4, 4, 5, 7]
|
||||
// },
|
||||
// { barCategoryGap:'0%',
|
||||
// name: 'demo2',
|
||||
// type: 'bar',
|
||||
// // label: labelOption,
|
||||
// // emphasis: {
|
||||
// // focus: 'series'
|
||||
// // },
|
||||
// data: [2, 4, 4, 5, 7]
|
||||
// },
|
||||
// { barCategoryGap:'0%',
|
||||
// name: 'demo3',
|
||||
// type: 'bar',
|
||||
// // label: labelOption,
|
||||
// // emphasis: {
|
||||
// // focus: 'series'
|
||||
// // },
|
||||
// data: [2, 4, 4, 5, 7]
|
||||
// },
|
||||
// { barCategoryGap:'0%',
|
||||
// name: 'demo4',
|
||||
// type: 'bar',
|
||||
// // label: labelOption,
|
||||
// // emphasis: {
|
||||
// // focus: 'series'
|
||||
// // },
|
||||
// data: [2, 4, 4, 5, 7]
|
||||
// },
|
||||
// { barCategoryGap:'0%',
|
||||
// name: 'demo5',
|
||||
// type: 'bar',
|
||||
// // label: labelOption,
|
||||
// // emphasis: {
|
||||
// // focus: 'series'
|
||||
// // },
|
||||
// data: [2, 4, 4, 5, 7]
|
||||
// },
|
||||
// {
|
||||
// color:'red',
|
||||
// barCategoryGap:'0%',
|
||||
// name: 'demo6',
|
||||
// type: 'bar',
|
||||
// // label: labelOption,
|
||||
// // emphasis: {
|
||||
// // focus: 'series'
|
||||
// // },
|
||||
// data: [2, 4, 4, 5, 7]
|
||||
// }
|
||||
// ]
|
||||
// // grid: {
|
||||
// // // 让图表占满容器
|
||||
// // top: "28rpx",
|
||||
// // left: "18rpx",
|
||||
// // right: "28rpx",
|
||||
// // bottom: "17rpx",
|
||||
// // },
|
||||
// // xAxis: {
|
||||
// // type: 'category',
|
||||
// // // data: ['Mon', 'Tue', 'Wed', 'Thu', 'Fri', 'Sat', 'Sun'],
|
||||
// // show: false,
|
||||
// // // axisLine: {
|
||||
// // // show: false,
|
||||
// // // },
|
||||
|
||||
// // },
|
||||
// // yAxis: {
|
||||
// // type: "value",
|
||||
// // min: 0,
|
||||
// // max: 50,
|
||||
// // splitNumber: 10,
|
||||
// // splitLine: {
|
||||
// // show: false,
|
||||
// // // lineStyle: {
|
||||
// // // color: "#cccccc",
|
||||
// // // type: [4, 2],
|
||||
// // // dashOffset: 4,
|
||||
// // // },
|
||||
// // },
|
||||
// // axisLine: {
|
||||
// // show: false,
|
||||
// // },
|
||||
// // axisLabel: {
|
||||
// // show: false,
|
||||
// // },
|
||||
// // axisTick: {
|
||||
// // show: false,
|
||||
// // },
|
||||
// // },
|
||||
// // series: [
|
||||
// // {
|
||||
// // data: [1, 6, 3, 4, 7, 6, 0,8, 0, 10, 11, 12, 13, 14,15, 16, 17, 18, 19, 20, 21,22, 23, 24, 25, 26, 27, 28,29, 30, 31, 32, 33, 34, 35,36],
|
||||
// // type: 'bar',
|
||||
// // barWidth:30, //设置柱子的宽度
|
||||
// // barGap:'100%',
|
||||
// // barCategoryGap:'0%',
|
||||
// // }
|
||||
// // ]
|
||||
// };
|
||||
|
||||
const level = [8, 7, 6, 5, 4, 3, 2];
|
||||
let arr =[2,3,4,5,6,7]
|
||||
return (
|
||||
<Block>
|
||||
<Echarts
|
||||
echarts={echarts}
|
||||
option={option}
|
||||
ref={echartsRef}
|
||||
// isPage={false}
|
||||
// style自定义设置echarts宽高
|
||||
// style={{ width: "100%", height: "100%" }}
|
||||
style={{ width: "630rpx", height: "260rpx" }}
|
||||
/>
|
||||
|
||||
{/* <View className="box">
|
||||
<Echarts
|
||||
echarts={echarts}
|
||||
option={option}
|
||||
ref={echartsRef}
|
||||
// isPage={false}
|
||||
// style自定义设置echarts宽高
|
||||
style={{ width: "630rpx", height: "240rpx" }}
|
||||
/>
|
||||
|
||||
</View> */}
|
||||
|
||||
|
||||
</Block>
|
||||
);
|
||||
}
|
||||
|
||||
export default Index;
|
||||
@ -0,0 +1,74 @@
|
||||
.iot-footer {
|
||||
position: fixed;
|
||||
bottom: 0;
|
||||
z-index: 99;
|
||||
display: flex;
|
||||
align-items: baseline;
|
||||
width: 100%;
|
||||
height: 153rpx;
|
||||
background: #ffffff;
|
||||
box-shadow: 0rpx -3rpx 7rpx 1rpx rgba(173, 191, 207, 0.21);
|
||||
// padding-bottom: env(safe-area-inset-bottom);
|
||||
box-sizing: border-box;
|
||||
.btn {
|
||||
width: 690rpx;
|
||||
height: 90rpx;
|
||||
background: #000;
|
||||
border-radius: 45rpx;
|
||||
color: #fff;
|
||||
line-height: 90rpx;
|
||||
text-align: center;
|
||||
margin: 21rpx 49rpx 42rpx 30rpx;
|
||||
font-size: 32rpx;
|
||||
}
|
||||
.text {
|
||||
display: flex;
|
||||
align-items: center;
|
||||
font-size: 32rpx;
|
||||
font-weight: bold;
|
||||
color: #000;
|
||||
}
|
||||
.btn-disable {
|
||||
background-color: #ccc !important; /* 设置按钮背景颜色为灰色 */
|
||||
color: #fff !important; /* 设置按钮文字颜色为白色 */
|
||||
border-color: #ccc !important; /* 设置按钮边框颜色为灰色 */
|
||||
}
|
||||
|
||||
.switch-btn-box {
|
||||
width: 100vw;
|
||||
display: flex;
|
||||
align-items: center;
|
||||
margin-top: 34rpx;
|
||||
.btn-item {
|
||||
height: 70rpx;
|
||||
display: flex;
|
||||
flex: 1;
|
||||
align-items: center;
|
||||
justify-content: center;
|
||||
.btn-icon {
|
||||
width: 36rpx;
|
||||
height: 36rpx;
|
||||
margin-right: 18rpx;
|
||||
}
|
||||
.btn-text {
|
||||
font-size: 32rpx;
|
||||
font-family: PingFang SC;
|
||||
font-weight: bold;
|
||||
color: #000000;
|
||||
}
|
||||
}
|
||||
.border-right {
|
||||
border-right: 1px solid #ddd;
|
||||
}
|
||||
.btn-disable {
|
||||
color: #fff !important; /* 设置按钮文字颜色为白色 */
|
||||
border-color: #ccc !important; /* 设置按钮边框颜色为灰色 */
|
||||
background-color: #fff !important; /* 设置按钮背景颜色为灰色 */
|
||||
.btn-text {
|
||||
color: #ccc !important; /* 设置按钮文字颜色为白色 */
|
||||
border-color: #ccc !important; /* 设置按钮边框颜色为灰色 */
|
||||
background-color: #fff !important; /* 设置按钮背景颜色为灰色 */
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,3 @@
|
||||
export default definePageConfig({
|
||||
navigationBarTitleText: "模板页",
|
||||
});
|
||||
@ -0,0 +1,44 @@
|
||||
import Taro from "@tarojs/taro";
|
||||
import classnames from "classnames";
|
||||
|
||||
import { Component, PropsWithChildren, useEffect, useState } from "react";
|
||||
import { Block, View, Text, Image, Input, Button } from "@tarojs/components";
|
||||
import Navbar from "@/components/navbar/navbar";
|
||||
import "./face_report_AllDevice.less";
|
||||
|
||||
export default class Index extends Component<any, any> {
|
||||
constructor(props) {
|
||||
super(props);
|
||||
this.state = {
|
||||
name: "页面待开发",
|
||||
};
|
||||
}
|
||||
|
||||
async onLoad() {}
|
||||
componentDidMount() {}
|
||||
|
||||
componentWillUnmount() {}
|
||||
|
||||
componentDidShow() {}
|
||||
|
||||
componentDidHide() {}
|
||||
|
||||
async initData() {}
|
||||
customBack = () => {
|
||||
Taro.navigateBack();
|
||||
};
|
||||
render() {
|
||||
let { name } = this.state;
|
||||
return (
|
||||
<Block>
|
||||
<Navbar
|
||||
titleSlot="待开发页面"
|
||||
isBack
|
||||
isCustomBack
|
||||
customBack={this.customBack}
|
||||
/>
|
||||
<View>{name}</View>
|
||||
</Block>
|
||||
);
|
||||
}
|
||||
}
|
||||
@ -0,0 +1,3 @@
|
||||
export default definePageConfig({
|
||||
navigationBarTitleText: "模板页",
|
||||
});
|
||||
@ -0,0 +1,353 @@
|
||||
page {
|
||||
background: #f8f8f8;
|
||||
}
|
||||
|
||||
.time {
|
||||
font-size: 36rpx;
|
||||
font-weight: 500;
|
||||
color: #000000;
|
||||
margin: 38rpx 0;
|
||||
}
|
||||
|
||||
.m-x-30 {
|
||||
margin-right: 30rpx;
|
||||
margin-left: 30rpx;
|
||||
background: #fff;
|
||||
}
|
||||
|
||||
.statistic {
|
||||
height: 200rpx;
|
||||
background: #ffffff;
|
||||
border-radius: 30rpx;
|
||||
text-align: center;
|
||||
margin-bottom: 20rpx;
|
||||
margin-top: 32rpx;
|
||||
}
|
||||
|
||||
.statistic_item {
|
||||
flex: 1;
|
||||
border-right: 1rpx solid #dddddd;
|
||||
}
|
||||
|
||||
.statistic_title {
|
||||
font-size: 48rpx;
|
||||
font-weight: 600;
|
||||
color: #000000;
|
||||
margin-bottom: 26rpx;
|
||||
height: 37rpx;
|
||||
line-height: 1;
|
||||
}
|
||||
|
||||
.num {
|
||||
font-size: 26rpx;
|
||||
font-weight: 500;
|
||||
margin-left: 13rpx;
|
||||
}
|
||||
|
||||
.statistic_desc {
|
||||
font-size: 26rpx;
|
||||
font-weight: 500;
|
||||
color: #999999;
|
||||
line-height: 36rpx;
|
||||
}
|
||||
|
||||
.statistic_item:last-child {
|
||||
border: none;
|
||||
}
|
||||
.bottom-title{
|
||||
margin-right: 30rpx;
|
||||
margin-left: 30rpx;
|
||||
margin-top: 27rpx;
|
||||
}
|
||||
.text-title{
|
||||
font-size: 18rpx;
|
||||
color: #999999;
|
||||
}
|
||||
.main {
|
||||
border-radius: 30rpx;
|
||||
overflow: hidden;
|
||||
// padding-bottom: calc(153rpx + env(safe-area-inset-bottom));
|
||||
}
|
||||
|
||||
.main_title {
|
||||
font-size: 32rpx;
|
||||
font-weight: bold;
|
||||
color: #000;
|
||||
// margin: 48rpx 0 34rpx;
|
||||
}
|
||||
.eacharts{
|
||||
// background-color: red;
|
||||
// margin-top: 14px;
|
||||
margin-bottom: 45rpx;
|
||||
/* margin: 52rpx 0rpx; */
|
||||
width: 100%;
|
||||
height: 247rpx;
|
||||
}
|
||||
.van-popup {
|
||||
border-radius: 30rpx;
|
||||
.popBox {
|
||||
box-sizing: border-box;
|
||||
width: 670rpx;
|
||||
height: 840rpx;
|
||||
background: #ffffff;
|
||||
border-radius: 30rpx;
|
||||
position: relative;
|
||||
padding: 42rpx 30rpx 0;
|
||||
.close_icon {
|
||||
position: absolute;
|
||||
width: 50rpx;
|
||||
height: 50rpx;
|
||||
top: 34rpx;
|
||||
right: 34rpx;
|
||||
}
|
||||
.popTitle {
|
||||
font-size: 36rpx;
|
||||
text-align: center;
|
||||
font-family: PingFang SC;
|
||||
font-weight: bold;
|
||||
}
|
||||
.popSubtitle {
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: flex-end;
|
||||
font-size: 28rpx;
|
||||
text-align: center;
|
||||
margin-top: 50rpx;
|
||||
.bold {
|
||||
font-size: 38rpx;
|
||||
font-weight: bold;
|
||||
}
|
||||
}
|
||||
.img_box {
|
||||
margin: 58rpx 0 37rpx 0;
|
||||
display: flex;
|
||||
flex-wrap: wrap;
|
||||
|
||||
.img {
|
||||
position: relative;
|
||||
margin-right: 35rpx;
|
||||
width: 180rpx;
|
||||
height: 180rpx;
|
||||
.closeImg {
|
||||
position: absolute;
|
||||
top: 10rpx;
|
||||
right: 10rpx;
|
||||
width: 30rpx;
|
||||
}
|
||||
}
|
||||
.img:last-child {
|
||||
margin-right: 0;
|
||||
}
|
||||
.addBox {
|
||||
width: 180rpx;
|
||||
height: 180rpx;
|
||||
background: #ffffff;
|
||||
border: 1px solid #dddddd;
|
||||
border-radius: 20rpx;
|
||||
display: flex;
|
||||
justify-content: center;
|
||||
align-items: center;
|
||||
Image {
|
||||
width: 40rpx;
|
||||
}
|
||||
}
|
||||
.showImg {
|
||||
width: 100% !important;
|
||||
height: 100% !important;
|
||||
border-radius: 20rpx;
|
||||
}
|
||||
}
|
||||
.info4 {
|
||||
position: relative;
|
||||
textarea {
|
||||
padding: 28rpx 30rpx;
|
||||
width: 610rpx;
|
||||
height: 186rpx;
|
||||
background: #ffffff;
|
||||
border: 1px solid #dddddd;
|
||||
border-radius: 3rpx;
|
||||
box-sizing: border-box;
|
||||
}
|
||||
.tip {
|
||||
position: absolute;
|
||||
right: 20rpx;
|
||||
bottom: 22rpx;
|
||||
font-size: 22rpx;
|
||||
font-family: PingFang SC;
|
||||
font-weight: 500;
|
||||
color: #cccccc;
|
||||
}
|
||||
}
|
||||
.btn1 {
|
||||
font-style: normal;
|
||||
width: 270rpx;
|
||||
height: 90rpx;
|
||||
line-height: 90rpx;
|
||||
background: #000000;
|
||||
text-align: center;
|
||||
border-radius: 45rpx;
|
||||
font-size: 32rpx;
|
||||
font-weight: bold;
|
||||
margin-top: 55rpx;
|
||||
color: #ffffff;
|
||||
}
|
||||
}
|
||||
}
|
||||
.footer {
|
||||
position: fixed;
|
||||
z-index: 99;
|
||||
bottom: 0;
|
||||
width: 100%;
|
||||
height: 153rpx;
|
||||
box-shadow: 0rpx -3rpx 7rpx 1rpx rgba(173, 191, 207, 0.21);
|
||||
background: #ffffff;
|
||||
}
|
||||
|
||||
.btn {
|
||||
width: 540rpx;
|
||||
height: 90rpx;
|
||||
background: #000000;
|
||||
border-radius: 45rpx;
|
||||
color: #fff;
|
||||
text-align: center;
|
||||
line-height: 90rpx;
|
||||
font-weight: bold;
|
||||
font-size: 32rpx;
|
||||
margin: 0 30rpx 0 49rpx;
|
||||
}
|
||||
|
||||
.text {
|
||||
flex: 1;
|
||||
height: 31rpx;
|
||||
font-size: 32rpx;
|
||||
font-weight: bold;
|
||||
color: #000000;
|
||||
line-height: 31rpx;
|
||||
}
|
||||
|
||||
.text image {
|
||||
width: 10rpx;
|
||||
height: 20rpx;
|
||||
margin-left: 15rpx;
|
||||
}
|
||||
|
||||
.products_item {
|
||||
width: 690rpx;
|
||||
height: 330rpx;
|
||||
background: #fff;
|
||||
padding: 30rpx 33rpx 38rpx;
|
||||
border-radius: 30rpx;
|
||||
box-sizing: border-box;
|
||||
// margin-bottom: 20rpx;
|
||||
}
|
||||
|
||||
.products_item:last-child {
|
||||
border: none;
|
||||
}
|
||||
|
||||
.products_top {
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
color: #000000;
|
||||
margin-bottom: 36rpx;
|
||||
}
|
||||
|
||||
.products_top .add_time {
|
||||
padding-right: 23rpx;
|
||||
}
|
||||
|
||||
.tag {
|
||||
width: 90rpx;
|
||||
height: 36rpx;
|
||||
line-height: 36rpx;
|
||||
background: #e5f9ee;
|
||||
border-radius: 18rpx;
|
||||
text-align: center;
|
||||
font-size: 24rpx;
|
||||
font-weight: 500;
|
||||
color: #57bc81;
|
||||
}
|
||||
|
||||
.tag_active {
|
||||
background: #f8f8f8;
|
||||
color: #999;
|
||||
}
|
||||
.face_type{
|
||||
text-align: center;
|
||||
margin-right: 37rpx;
|
||||
// margin-top: 16rpx;
|
||||
font-weight: 700;
|
||||
}
|
||||
.cover {
|
||||
width: 170rpx;
|
||||
height: 211rpx;
|
||||
border-radius: 20rpx;
|
||||
margin-right: 37rpx;
|
||||
// background-color: red;
|
||||
}
|
||||
|
||||
.content {
|
||||
display: flex;
|
||||
flex-flow: column;
|
||||
justify-content: space-between;
|
||||
background-color: #f8f8f8;
|
||||
border-radius: 30rpx;
|
||||
padding: 21rpx;
|
||||
border-radius: 20rpx;
|
||||
width: 457rpx;
|
||||
height: 195rpx;
|
||||
|
||||
}
|
||||
|
||||
.content_top{
|
||||
height: 140rpx;
|
||||
display: flex;
|
||||
flex-flow: column;
|
||||
justify-content: space-between;
|
||||
}
|
||||
|
||||
.title {
|
||||
font-size: 28rpx;
|
||||
font-weight: bold;
|
||||
color: #000000;
|
||||
margin: 3rpx 0 25rpx;
|
||||
}
|
||||
|
||||
.desc {
|
||||
font-size: 24rpx;
|
||||
font-weight: 500;
|
||||
color: #999999;
|
||||
margin: 12rpx 0rpx;
|
||||
color: #181818;
|
||||
font-weight: 700;
|
||||
}
|
||||
|
||||
// .desc:last-child {
|
||||
// margin-top: 10rpx;
|
||||
// }
|
||||
|
||||
.progress {
|
||||
display: flex;
|
||||
margin-top: 10rpx;
|
||||
font-size: 24rpx;
|
||||
font-family: PingFang SC;
|
||||
font-weight: 500;
|
||||
color: #999999;
|
||||
align-items: center;
|
||||
|
||||
.van-progress {
|
||||
width: 213rpx;
|
||||
.van-progress__portion {
|
||||
background: linear-gradient(90deg, #ffe9c7, #eecda1);
|
||||
border-radius: 6rpx;
|
||||
height: 12rpx;
|
||||
.van-progress__pivot {
|
||||
display: none;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
.percent {
|
||||
margin-left: 52rpx;
|
||||
}
|
||||
}
|
||||
Loading…
Reference in New Issue