|
@@ -5,7 +5,7 @@
|
|
|
<div class="work-detail-content">
|
|
<div class="work-detail-content">
|
|
|
<!-- 顶部状态 -->
|
|
<!-- 顶部状态 -->
|
|
|
<div class="content-status" :class="'status-' + detail?.flowStatus">
|
|
<div class="content-status" :class="'status-' + detail?.flowStatus">
|
|
|
- <div class="status-l">
|
|
|
|
|
|
|
+ <div class="status-l" v-if="userInfo?.appType === 2">
|
|
|
<div class="status-title">{{ statusText }}</div>
|
|
<div class="status-title">{{ statusText }}</div>
|
|
|
<div class="status-sub" v-if="triggerDateText && detail?.flowStatus === 0">
|
|
<div class="status-sub" v-if="triggerDateText && detail?.flowStatus === 0">
|
|
|
预计触发时间 {{ triggerDateText }}
|
|
预计触发时间 {{ triggerDateText }}
|
|
@@ -14,6 +14,15 @@
|
|
|
任务进度:1/2
|
|
任务进度:1/2
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
+ <div class="status-l" v-else>
|
|
|
|
|
+ <div class="status-title">{{ statusText }}</div>
|
|
|
|
|
+ <div class="status-sub" v-if="triggerDateText && detail?.flowStatus === 0">
|
|
|
|
|
+ 预计触发时间 {{ triggerDateText }}
|
|
|
|
|
+ </div>
|
|
|
|
|
+ <div class="status-sub" v-if="detail?.flowStatus === 1">
|
|
|
|
|
+ 距离执行时间还差 {{ daysDiff }} 天
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div class="work-wrap">
|
|
<div class="work-wrap">
|
|
@@ -26,10 +35,12 @@
|
|
|
</div> -->
|
|
</div> -->
|
|
|
|
|
|
|
|
<!-- 每一段农事 -->
|
|
<!-- 每一段农事 -->
|
|
|
- <div v-for="(prescription, index) in stageList" :key="index" class="box-wrap stage-card" :class="'status-' + prescription.tagType">
|
|
|
|
|
|
|
+ <div v-for="(prescription, index) in stageList" :key="index" class="box-wrap stage-card"
|
|
|
|
|
+ :class="'status-' + prescription.tagType">
|
|
|
<div class="stage-header">
|
|
<div class="stage-header">
|
|
|
- <div class="stage-title">{{ getStageTitle(index, prescription) }}</div>
|
|
|
|
|
- <div class="title-tag" :class="'tag-' + prescription.tagType">{{ prescription.tagType === 0 ? "待完成" : "已完成" }}</div>
|
|
|
|
|
|
|
+ <div class="stage-title">{{ detail.farmWorkName }}</div>
|
|
|
|
|
+ <div class="title-tag" :class="'tag-' + prescription.tagType">{{ prescription.tagType === 0 ?
|
|
|
|
|
+ "待完成" : "已完成" }}</div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div class="stage-info">
|
|
<div class="stage-info">
|
|
@@ -64,13 +75,9 @@
|
|
|
|
|
|
|
|
<!-- 执行方式 -->
|
|
<!-- 执行方式 -->
|
|
|
<div class="stage-tabs">
|
|
<div class="stage-tabs">
|
|
|
- <div
|
|
|
|
|
- v-for="tab in executionTabs"
|
|
|
|
|
- :key="tab.value"
|
|
|
|
|
- class="tab-pill"
|
|
|
|
|
|
|
+ <div v-for="tab in executionTabs" :key="tab.value" class="tab-pill"
|
|
|
:class="{ active: getStageExecutionMethod(index) === tab.value }"
|
|
:class="{ active: getStageExecutionMethod(index) === tab.value }"
|
|
|
- @click="changeExecutionMethod(index, tab.value)"
|
|
|
|
|
- >
|
|
|
|
|
|
|
+ @click="changeExecutionMethod(index, tab.value)">
|
|
|
{{ tab.label }}
|
|
{{ tab.label }}
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
@@ -85,11 +92,7 @@
|
|
|
<div class="col col-ratio">药肥配比</div>
|
|
<div class="col col-ratio">药肥配比</div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
- <div
|
|
|
|
|
- v-for="(item, i) in prescription.pesticideList"
|
|
|
|
|
- :key="i"
|
|
|
|
|
- class="table-row"
|
|
|
|
|
- >
|
|
|
|
|
|
|
+ <div v-for="(item, i) in prescription.pesticideList" :key="i" class="table-row">
|
|
|
<div class="col col-type">
|
|
<div class="col col-type">
|
|
|
{{ item.typeName || "--" }}
|
|
{{ item.typeName || "--" }}
|
|
|
</div>
|
|
</div>
|
|
@@ -103,10 +106,7 @@
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
|
<div v-if="hasRemark(prescription, index)" class="prescription-remark">
|
|
<div v-if="hasRemark(prescription, index)" class="prescription-remark">
|
|
|
- <span
|
|
|
|
|
- v-for="(item, idx) in [prescription.pesticideList[0]]"
|
|
|
|
|
- :key="idx"
|
|
|
|
|
- >
|
|
|
|
|
|
|
+ <span v-for="(item, idx) in [prescription.pesticideList[0]]" :key="idx">
|
|
|
<template v-if="getParamRemark(item, index)">
|
|
<template v-if="getParamRemark(item, index)">
|
|
|
{{ getParamRemark(item, index) }}
|
|
{{ getParamRemark(item, index) }}
|
|
|
<br />
|
|
<br />
|
|
@@ -114,10 +114,27 @@
|
|
|
</span>
|
|
</span>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
+
|
|
|
|
|
+
|
|
|
|
|
+ <!-- 执行照片 -->
|
|
|
|
|
+ <div class="photo-box" v-if="prescription.cropAlbum && prescription.cropAlbum.length">
|
|
|
|
|
+ <div class="photo-title">执行照片</div>
|
|
|
|
|
+ <div class="photo-img-wrap">
|
|
|
|
|
+ <photo-provider :photo-closable="true">
|
|
|
|
|
+ <photo-consumer v-for="(src, index) in prescription.cropAlbum" intro="执行照片" :key="index"
|
|
|
|
|
+ :src="base_img_url2 + src.filename">
|
|
|
|
|
+ <div class="photo-img">
|
|
|
|
|
+ <img :src="base_img_url2 + src.filename" />
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </photo-consumer>
|
|
|
|
|
+ </photo-provider>
|
|
|
|
|
+ </div>
|
|
|
|
|
+ </div>
|
|
|
|
|
+
|
|
|
<!-- 执行操作 -->
|
|
<!-- 执行操作 -->
|
|
|
<div class="execute-action" v-if="info?.appType === 1 && prescription.tagType === 0">
|
|
<div class="execute-action" v-if="info?.appType === 1 && prescription.tagType === 0">
|
|
|
- <div class="action-item second">稍后执行</div>
|
|
|
|
|
- <div class="action-item primary">我已完成</div>
|
|
|
|
|
|
|
+ <div class="action-item second" @click="handleRemind">稍后执行</div>
|
|
|
|
|
+ <div class="action-item primary" @click="handleExecute">我已完成</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
|
|
@@ -129,19 +146,24 @@
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
</div>
|
|
</div>
|
|
|
|
|
+ <ExecutePopup ref="executePopupRef" />
|
|
|
</div>
|
|
</div>
|
|
|
</template>
|
|
</template>
|
|
|
|
|
|
|
|
<script setup>
|
|
<script setup>
|
|
|
|
|
+import wx from "weixin-js-sdk";
|
|
|
import customHeader from "@/components/customHeader.vue";
|
|
import customHeader from "@/components/customHeader.vue";
|
|
|
import { ref, computed, onActivated } from "vue";
|
|
import { ref, computed, onActivated } from "vue";
|
|
|
import { useRoute, useRouter } from "vue-router";
|
|
import { useRoute, useRouter } from "vue-router";
|
|
|
import { formatDate } from "@/common/commonFun";
|
|
import { formatDate } from "@/common/commonFun";
|
|
|
|
|
+import ExecutePopup from "./components/executePopup.vue";
|
|
|
|
|
+import { base_img_url2, resize_300 } from "@/api/config";
|
|
|
|
|
|
|
|
const route = useRoute();
|
|
const route = useRoute();
|
|
|
const router = useRouter();
|
|
const router = useRouter();
|
|
|
-const info = JSON.parse(localStorage.getItem("localUserInfo") || "{}");
|
|
|
|
|
-console.log('info', info);
|
|
|
|
|
|
|
+// const info = JSON.parse(localStorage.getItem("localUserInfo") || "{}");
|
|
|
|
|
+const info = { appType: 1 };
|
|
|
|
|
+
|
|
|
const detail = ref({
|
|
const detail = ref({
|
|
|
"consequenceText": "",
|
|
"consequenceText": "",
|
|
|
"id": null,
|
|
"id": null,
|
|
@@ -165,8 +187,8 @@ const detail = ref({
|
|
|
"agriculturalIcon": "",
|
|
"agriculturalIcon": "",
|
|
|
"farmWorkId": "793434539249635329",
|
|
"farmWorkId": "793434539249635329",
|
|
|
"farmWorkLibId": "793434539249635329",
|
|
"farmWorkLibId": "793434539249635329",
|
|
|
- "farmWorkLibName": "蒂蛀虫防治",
|
|
|
|
|
- "farmWorkName": "蒂蛀虫防治",
|
|
|
|
|
|
|
+ "farmWorkLibName": "第一段蒂蛀虫防治",
|
|
|
|
|
+ "farmWorkName": "第一段蒂蛀虫防治",
|
|
|
"expertName": "",
|
|
"expertName": "",
|
|
|
"expertUserName": "",
|
|
"expertUserName": "",
|
|
|
"expertIcon": "",
|
|
"expertIcon": "",
|
|
@@ -174,7 +196,7 @@ const detail = ref({
|
|
|
"icon": null,
|
|
"icon": null,
|
|
|
"indexName": "",
|
|
"indexName": "",
|
|
|
"indexChart": [],
|
|
"indexChart": [],
|
|
|
- "executeDate": "2025-08-15",
|
|
|
|
|
|
|
+ "executeDate": "2026-03-15",
|
|
|
"intervelTime": 10,
|
|
"intervelTime": 10,
|
|
|
"executeDeadlineDate": null,
|
|
"executeDeadlineDate": null,
|
|
|
"expectedExecuteDate": null,
|
|
"expectedExecuteDate": null,
|
|
@@ -226,6 +248,14 @@ const detail = ref({
|
|
|
{
|
|
{
|
|
|
"name": "蒂蛀虫防治",
|
|
"name": "蒂蛀虫防治",
|
|
|
"tagType": 1,
|
|
"tagType": 1,
|
|
|
|
|
+ "cropAlbum": [
|
|
|
|
|
+ {
|
|
|
|
|
+ "filename": "6e707c1f-7095-409e-8b3a-2633e7b36bd5/1e2dc0e7-6f8b-4952-a574-8e8e0713529c/DJI_202601251415_001_1e2dc0e7-6f8b-4952-a574-8e8e0713529c/DJI_20260125141713_0003_V_code-ws0gefwtn5n4.jpeg"
|
|
|
|
|
+ },
|
|
|
|
|
+ {
|
|
|
|
|
+ "filename": "dfb387fa-e7d3-4f49-a40c-fcbb9be2baf9/c727d4e9-f5bb-4e40-be2d-efdec3b91702/DJI_202511270800_001_c727d4e9-f5bb-4e40-be2d-efdec3b91702/DJI_20251127080720_0056_V_code-ws0gefyb37kp.jpeg"
|
|
|
|
|
+ }
|
|
|
|
|
+ ],
|
|
|
"pesticideList": [
|
|
"pesticideList": [
|
|
|
{
|
|
{
|
|
|
"code": "1009",
|
|
"code": "1009",
|
|
@@ -397,6 +427,27 @@ const detail = ref({
|
|
|
"postId": "806490699515039744"
|
|
"postId": "806490699515039744"
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+// 计算距离执行时间的天数差
|
|
|
|
|
+const daysDiff = computed(() => {
|
|
|
|
|
+ if (!detail.value?.executeDate) {
|
|
|
|
|
+ return 0;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ const executeDate = new Date(detail.value.executeDate);
|
|
|
|
|
+ const today = new Date();
|
|
|
|
|
+
|
|
|
|
|
+ // 将时间设置为 00:00:00,只比较日期
|
|
|
|
|
+ executeDate.setHours(0, 0, 0, 0);
|
|
|
|
|
+ today.setHours(0, 0, 0, 0);
|
|
|
|
|
+
|
|
|
|
|
+ // 计算天数差(毫秒转天数)
|
|
|
|
|
+ const diffTime = executeDate.getTime() - today.getTime();
|
|
|
|
|
+ const diffDays = Math.floor(diffTime / (1000 * 60 * 60 * 24));
|
|
|
|
|
+
|
|
|
|
|
+ return diffDays;
|
|
|
|
|
+});
|
|
|
|
|
+
|
|
|
// 执行方式 Tab 配置
|
|
// 执行方式 Tab 配置
|
|
|
const executionTabs = [
|
|
const executionTabs = [
|
|
|
{ label: "植保机", value: 1 },
|
|
{ label: "植保机", value: 1 },
|
|
@@ -405,7 +456,7 @@ const executionTabs = [
|
|
|
];
|
|
];
|
|
|
// 每一段农事的当前执行方式(索引 -> 执行方式),默认 1:植保机
|
|
// 每一段农事的当前执行方式(索引 -> 执行方式),默认 1:植保机
|
|
|
const stageExecutionMethods = ref({});
|
|
const stageExecutionMethods = ref({});
|
|
|
-
|
|
|
|
|
|
|
+const executePopupRef = ref(null);
|
|
|
const statusText = computed(() => {
|
|
const statusText = computed(() => {
|
|
|
// 简单根据 flowStatus 判断,默认“待触发”
|
|
// 简单根据 flowStatus 判断,默认“待触发”
|
|
|
if (detail.value.flowStatus === 1) return "待完成";
|
|
if (detail.value.flowStatus === 1) return "待完成";
|
|
@@ -419,19 +470,8 @@ const triggerDateText = computed(() => {
|
|
|
return d.replace(/-/g, ".");
|
|
return d.replace(/-/g, ".");
|
|
|
});
|
|
});
|
|
|
|
|
|
|
|
-// const displayExecuteDate = computed(() => {
|
|
|
|
|
-// if (!detail.value.executeDate) return "";
|
|
|
|
|
-// return formatDate(detail.value.executeDate);
|
|
|
|
|
-// });
|
|
|
|
|
-
|
|
|
|
|
const stageList = computed(() => detail.value.groupList || []);
|
|
const stageList = computed(() => detail.value.groupList || []);
|
|
|
|
|
|
|
|
-const getStageTitle = (index, prescription) => {
|
|
|
|
|
- const numMap = ["一", "二", "三", "四", "五", "六", "七"];
|
|
|
|
|
- const prefix = numMap[index] ? `第${numMap[index]}段` : `第${index + 1}段`;
|
|
|
|
|
- const name = detail.value.farmWorkName || prescription?.name || "";
|
|
|
|
|
- return name ? `${prefix}${name}` : prefix;
|
|
|
|
|
-};
|
|
|
|
|
|
|
|
|
|
const hasRemark = (prescription, stageIndex) => {
|
|
const hasRemark = (prescription, stageIndex) => {
|
|
|
if (!prescription?.pesticideList || !Array.isArray(prescription.pesticideList)) return false;
|
|
if (!prescription?.pesticideList || !Array.isArray(prescription.pesticideList)) return false;
|
|
@@ -443,12 +483,29 @@ const hasRemark = (prescription, stageIndex) => {
|
|
|
});
|
|
});
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
|
|
+const handleExecute = () => {
|
|
|
|
|
+ executePopupRef.value.openPopup();
|
|
|
|
|
+};
|
|
|
|
|
+
|
|
|
|
|
+const handleRemind = () => {
|
|
|
|
|
+ executePopupRef.value.showRemindPopup();
|
|
|
|
|
+};
|
|
|
|
|
+
|
|
|
const handleBack = () => {
|
|
const handleBack = () => {
|
|
|
router.back();
|
|
router.back();
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
const handleConvert = () => {
|
|
const handleConvert = () => {
|
|
|
- // 预留“转成农事”逻辑,后续接入实际接口
|
|
|
|
|
|
|
+ const query = {
|
|
|
|
|
+ askInfo: { title: "农情互动", content: "是否分享该互动给好友" },
|
|
|
|
|
+ shareText: '邀请您农情互动,精准匹配种植方案',
|
|
|
|
|
+ targetUrl: `interaction`,
|
|
|
|
|
+ paramsPage: JSON.stringify({ id: detail.value.id }),
|
|
|
|
|
+ imageUrl: 'https://birdseye-img.sysuimars.com/birdseye-look-mini/work_cover.png',
|
|
|
|
|
+ };
|
|
|
|
|
+ wx.miniProgram.navigateTo({
|
|
|
|
|
+ url: `/pages/subPages/share_page/index?pageParams=${JSON.stringify(query)}&type=sharePage`,
|
|
|
|
|
+ });
|
|
|
};
|
|
};
|
|
|
|
|
|
|
|
// 获取当前段的执行方式
|
|
// 获取当前段的执行方式
|
|
@@ -511,6 +568,7 @@ const changeExecutionMethod = (stageIndex, value) => {
|
|
|
// background: #FF953D;
|
|
// background: #FF953D;
|
|
|
width: 100%;
|
|
width: 100%;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
&.status-1 {
|
|
&.status-1 {
|
|
|
&::after {
|
|
&::after {
|
|
|
background: #FF953D;
|
|
background: #FF953D;
|
|
@@ -542,11 +600,24 @@ const changeExecutionMethod = (stageIndex, value) => {
|
|
|
padding: 14px 10px 10px 10px;
|
|
padding: 14px 10px 10px 10px;
|
|
|
box-shadow: 0 2px 8px rgba(15, 35, 52, 0.06);
|
|
box-shadow: 0 2px 8px rgba(15, 35, 52, 0.06);
|
|
|
border: 1px solid transparent;
|
|
border: 1px solid transparent;
|
|
|
|
|
+
|
|
|
&.status-0 {
|
|
&.status-0 {
|
|
|
border: 1px solid #FF953D;
|
|
border: 1px solid #FF953D;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+.photo-box {
|
|
|
|
|
+ margin-top: 10px;
|
|
|
|
|
+ border: 0.5px dashed #2199F8;
|
|
|
|
|
+ border-radius: 5px;
|
|
|
|
|
+ padding: 11px 10px;
|
|
|
|
|
+ .photo-title {
|
|
|
|
|
+ font-size: 14px;
|
|
|
|
|
+ color: #000;
|
|
|
|
|
+ padding-bottom: 8px;
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
.group-info {
|
|
.group-info {
|
|
|
margin-bottom: 10px;
|
|
margin-bottom: 10px;
|
|
|
|
|
|
|
@@ -579,9 +650,11 @@ const changeExecutionMethod = (stageIndex, value) => {
|
|
|
line-height: 1.5;
|
|
line-height: 1.5;
|
|
|
}
|
|
}
|
|
|
}
|
|
}
|
|
|
-.stage-card + .stage-card {
|
|
|
|
|
|
|
+
|
|
|
|
|
+.stage-card+.stage-card {
|
|
|
margin-top: 10px;
|
|
margin-top: 10px;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
.stage-card {
|
|
.stage-card {
|
|
|
|
|
|
|
|
.stage-header {
|
|
.stage-header {
|
|
@@ -594,6 +667,7 @@ const changeExecutionMethod = (stageIndex, value) => {
|
|
|
font-size: 16px;
|
|
font-size: 16px;
|
|
|
color: #000;
|
|
color: #000;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
.title-tag {
|
|
.title-tag {
|
|
|
width: fit-content;
|
|
width: fit-content;
|
|
|
font-size: 12px;
|
|
font-size: 12px;
|
|
@@ -604,6 +678,7 @@ const changeExecutionMethod = (stageIndex, value) => {
|
|
|
border-radius: 20px;
|
|
border-radius: 20px;
|
|
|
padding: 0 8px;
|
|
padding: 0 8px;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
.tag-0 {
|
|
.tag-0 {
|
|
|
color: #FF953D;
|
|
color: #FF953D;
|
|
|
background: rgba(255, 149, 61, 0.1);
|
|
background: rgba(255, 149, 61, 0.1);
|
|
@@ -728,12 +803,44 @@ const changeExecutionMethod = (stageIndex, value) => {
|
|
|
line-height: 21px;
|
|
line-height: 21px;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+
|
|
|
|
|
+.photo-img-wrap {
|
|
|
|
|
+ display: flex;
|
|
|
|
|
+ flex-wrap: wrap;
|
|
|
|
|
+ gap: 10px;
|
|
|
|
|
+
|
|
|
|
|
+ ::v-deep {
|
|
|
|
|
+ .PhotoConsumer {
|
|
|
|
|
+ width: 31%;
|
|
|
|
|
+ height: 92px;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ .photo-img {
|
|
|
|
|
+ width: 100%;
|
|
|
|
|
+ height: 100%;
|
|
|
|
|
+ position: relative;
|
|
|
|
|
+ box-sizing: border-box;
|
|
|
|
|
+ border: 2px solid transparent;
|
|
|
|
|
+ border-radius: 8px;
|
|
|
|
|
+ overflow: hidden;
|
|
|
|
|
+
|
|
|
|
|
+ img {
|
|
|
|
|
+ width: 100%;
|
|
|
|
|
+ height: 100%;
|
|
|
|
|
+ border-radius: 8px;
|
|
|
|
|
+ object-fit: cover;
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+}
|
|
|
|
|
+
|
|
|
.execute-action {
|
|
.execute-action {
|
|
|
margin-top: 8px;
|
|
margin-top: 8px;
|
|
|
display: flex;
|
|
display: flex;
|
|
|
align-items: center;
|
|
align-items: center;
|
|
|
justify-content: center;
|
|
justify-content: center;
|
|
|
gap: 16px;
|
|
gap: 16px;
|
|
|
|
|
+
|
|
|
.action-item {
|
|
.action-item {
|
|
|
padding: 0 16px;
|
|
padding: 0 16px;
|
|
|
height: 32px;
|
|
height: 32px;
|
|
@@ -741,11 +848,13 @@ const changeExecutionMethod = (stageIndex, value) => {
|
|
|
border-radius: 16px;
|
|
border-radius: 16px;
|
|
|
box-sizing: border-box;
|
|
box-sizing: border-box;
|
|
|
font-size: 14px;
|
|
font-size: 14px;
|
|
|
|
|
+
|
|
|
&.second {
|
|
&.second {
|
|
|
background: #ffffff;
|
|
background: #ffffff;
|
|
|
border: 0.5px solid rgba(153, 153, 153, 0.5);
|
|
border: 0.5px solid rgba(153, 153, 153, 0.5);
|
|
|
color: #999999;
|
|
color: #999999;
|
|
|
}
|
|
}
|
|
|
|
|
+
|
|
|
&.primary {
|
|
&.primary {
|
|
|
background: linear-gradient(180deg, #8ACBFF 0%, #2199F8 100%);
|
|
background: linear-gradient(180deg, #8ACBFF 0%, #2199F8 100%);
|
|
|
color: #ffffff;
|
|
color: #ffffff;
|