update
This commit is contained in:
2
.env
2
.env
@@ -1,4 +1,4 @@
|
||||
VITE_API_URL=http://admin.ceshi.guo123.cn/api
|
||||
VITE_API_URL=https://admin.ceshi.guo123.cn/api
|
||||
VITE_TINYMCE_KEY=agmu6i1c6k7bcp36oenzyz7yi1yplptq7goyx88y1g6ofnqu
|
||||
VITE_AES_KEY=st123456654321st
|
||||
VITE_APP_ID=wxa4dd2d036c8156a4
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<script setup lang="ts">
|
||||
<script setup>
|
||||
import NULLICON from "../static/images/缺省图.png";
|
||||
import XModal from "./XModal.vue";
|
||||
import {getCurrentInstance, nextTick, onMounted, reactive, ref, watch} from "vue";
|
||||
@@ -76,13 +76,13 @@ const success = async () => {
|
||||
showToast('请选择帐号');
|
||||
return;
|
||||
}
|
||||
const {msg, data} = await Api.system.acceptTask({
|
||||
const {msg, data: {task_children_id, task_id}} = await Api.system.acceptTask({
|
||||
id: details.id,
|
||||
account: selected.value,
|
||||
});
|
||||
showToast(msg);
|
||||
show.value = false;
|
||||
await toPage(`/pages/taskDetails/index?id=${data[1]}&task_children_id=${0}&delta=999`)
|
||||
await toPage(`/pages/taskDetails/index?id=${task_id}&task_children_id=${task_children_id}&delta=999`)
|
||||
emits('success');
|
||||
}
|
||||
</script>
|
||||
|
||||
@@ -76,10 +76,10 @@ onLoad((options) => {
|
||||
<x-date-time :type="1" v-model:model-value="form.abnormaltime"></x-date-time>
|
||||
</x-form-item>
|
||||
<x-form-item label="主页截图">
|
||||
<x-upload v-model:files="form.homepage"></x-upload>
|
||||
<x-upload v-model:files="form.homepage" single></x-upload>
|
||||
</x-form-item>
|
||||
<x-form-item label="主页二维码">
|
||||
<x-upload v-model:files="form.qrcode"></x-upload>
|
||||
<x-upload v-model:files="form.qrcode" single></x-upload>
|
||||
</x-form-item>
|
||||
</x-form>
|
||||
|
||||
|
||||
@@ -1,10 +1,9 @@
|
||||
<script setup>
|
||||
import {ref, reactive} from "vue";
|
||||
import {reactive, ref} from "vue";
|
||||
import XNav from "../../components/XNav.vue";
|
||||
import {copy, download, showToast} from "../../utils/uils.js";
|
||||
import XLink from "../../components/XLink.vue";
|
||||
import XImage from "../../components/XImage.vue";
|
||||
import testIcon from "../../static/images/test.png";
|
||||
import {onLoad} from "@dcloudio/uni-app";
|
||||
import Api from "../../api/index.js";
|
||||
import {useUserStore} from "../../pinia/UserStore/index.js";
|
||||
@@ -15,15 +14,15 @@ const current = ref(0);
|
||||
const tabs = reactive([]);
|
||||
|
||||
onLoad((options) => {
|
||||
const {id, token} = options;
|
||||
const {id, token, task_children_id} = options;
|
||||
if (!id) {
|
||||
showToast('未找到任务');
|
||||
return;
|
||||
}
|
||||
setToken(token);
|
||||
Api.system.getTaskinfo(id).then(({data}) => {
|
||||
Api.system.getTaskinfo(id, task_children_id).then(({data}) => {
|
||||
Object.assign(detail, data);
|
||||
tabs.push(...detail.children.material.map((v, index) => ({
|
||||
tabs.push(...detail.children?.material?.map((v, index) => ({
|
||||
id: v.id,
|
||||
name: `素材${index + 1}`
|
||||
})));
|
||||
@@ -39,32 +38,39 @@ onLoad((options) => {
|
||||
|
||||
<tui-tabs v-if="tabs.length>0" :tabs="tabs" :currentTab="current" @change="({index})=>current=index"></tui-tabs>
|
||||
|
||||
<view class="block">
|
||||
<template v-if="detail.id">
|
||||
<view class="block" v-if="detail.material_type?.title_limit > 0">
|
||||
<view class="title">标题</view>
|
||||
<view class="info">
|
||||
{{ detail.children.material[current].title }}
|
||||
|
||||
<view class="copy-button" @click="copy(detail.children.material[current].title)">复制</view>
|
||||
<view class="copy-button" @click="copy(detail.children?.material[current].title)">复制</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="block">
|
||||
<view class="block" v-if="detail.material_type?.tags_limit > 0">
|
||||
<view class="title">
|
||||
话题
|
||||
<x-link class="!ml-auto" show-description>查看引导</x-link>
|
||||
<view class="!ml-auto">
|
||||
<x-image :src="detail.task_content[current].ts_images_arr[0]"
|
||||
:list="detail.task_content[current].ts_images_arr">
|
||||
<x-link show-description>查看引导</x-link>
|
||||
</x-image>
|
||||
</view>
|
||||
</view>
|
||||
<view class="info">
|
||||
{{ detail.children.material[current].tags_arr.join(' ') }}
|
||||
<view class="copy-button" @click="copy(detail.children.material[current].tags_arr.join(' '))">复制</view>
|
||||
{{ detail.children?.material[current].tags_arr.join(' ') }}
|
||||
<view class="copy-button" @click="copy(detail.children.material[current].tags_arr.join(' '))">复制
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view class="block">
|
||||
<view class="block" v-if="detail.material_type?.desc_limit > 0">
|
||||
<view class="title">正文</view>
|
||||
<view class="info">
|
||||
{{ detail.children.material[current].content }}
|
||||
{{ detail.children?.material[current].content }}
|
||||
|
||||
<view class="copy-button" @click="copy(detail.children.material[current].content)">复制</view>
|
||||
<view class="copy-button" @click="copy(detail.children?.material[current].content)">复制</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -73,42 +79,20 @@ onLoad((options) => {
|
||||
<view class="info">
|
||||
<view class="!grid grid-cols-5 flex-wrap gap-[32rpx]">
|
||||
<x-image
|
||||
v-for="(v, index) in detail.children.material[current].material_arr"
|
||||
v-for="(v, index) in detail.children?.material[current].material_arr"
|
||||
:key="index"
|
||||
:src="v"
|
||||
imageClass="!w-[100%] !h-auto !aspect-square">
|
||||
</x-image>
|
||||
</view>
|
||||
|
||||
<view class="copy-button" @click="download(detail.children.material[current].material_arr)">批量保存</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view v-if="detail.children?.material[current]?.comment" class="block">
|
||||
<view class="title">评论1</view>
|
||||
<view class="info">
|
||||
{{ detail.children?.material[current]?.comment.intro }}
|
||||
|
||||
<view class="!grid grid-cols-5 flex-wrap gap-[32rpx]">
|
||||
<x-image
|
||||
v-for="j in detail.children?.material[current]?.comment.image_arr"
|
||||
:src="j"
|
||||
imageClass="!w-[100%] !h-auto !aspect-square">
|
||||
</x-image>
|
||||
</view>
|
||||
|
||||
<view class="!flex gap-[24rpx] justify-center">
|
||||
<view class="copy-button !mx-0" @click="copy(detail.children?.material[current]?.comment.intro)">复制文字
|
||||
</view>
|
||||
<view class="copy-button !mx-0"
|
||||
@click="download(detail.children?.material[current]?.comment.image_arr)">保存图片
|
||||
</view>
|
||||
<view class="copy-button" @click="download(detail.children?.material[current].material_arr)">批量保存
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<view v-for="(v, index) in detail.children?.material[current]?.comment.children" :key="v.id" class="block">
|
||||
<view class="title">评论{{ index + 2 }}</view>
|
||||
<view v-for="(v, index) in detail.children?.material[current]?.comment" :key="v.id" class="block">
|
||||
<view class="title">评论{{ index + 1 }}</view>
|
||||
<view class="info">
|
||||
{{ v.intro }}
|
||||
|
||||
@@ -123,6 +107,7 @@ onLoad((options) => {
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
</template>
|
||||
|
||||
<style scoped lang="scss">
|
||||
|
||||
@@ -11,6 +11,7 @@ import XRadioGroup from "../../components/XRadioGroup.vue";
|
||||
import XRadio from "../../components/XRadio.vue";
|
||||
import XDateRange from "../../components/XDateRange.vue";
|
||||
import XAlert from "../../components/XAlert.vue";
|
||||
import {onShow} from "@dcloudio/uni-app";
|
||||
|
||||
const taskType = reactive([]);
|
||||
const platformType = reactive([]);
|
||||
@@ -53,6 +54,7 @@ const vo = reactive({
|
||||
|
||||
const {loading, pagination, initFetchData} = useTableQuery({
|
||||
api: Api.system.myTaskList,
|
||||
immediate: false,
|
||||
parameter: po,
|
||||
callback: (data) => {
|
||||
Object.assign(vo, data);
|
||||
@@ -72,6 +74,10 @@ const changeCurrent = async (item) => {
|
||||
po.status = item.value;
|
||||
await initFetchData();
|
||||
}
|
||||
|
||||
onShow(() => {
|
||||
initFetchData();
|
||||
});
|
||||
</script>
|
||||
|
||||
<template>
|
||||
|
||||
@@ -31,7 +31,7 @@ const list = computed(() => data.children.material[current.value].comment?.flatM
|
||||
</view>
|
||||
|
||||
<template v-if="true">
|
||||
<view class="block">
|
||||
<view class="block" v-if="data.material_type?.title_limit > 0">
|
||||
<view class="block-title">
|
||||
标题:
|
||||
</view>
|
||||
@@ -39,7 +39,7 @@ const list = computed(() => data.children.material[current.value].comment?.flatM
|
||||
{{ data.children.material[current].title }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="block">
|
||||
<view class="block" v-if="data.material_type?.tags_limit > 0">
|
||||
<view class="block-title">
|
||||
话题:
|
||||
</view>
|
||||
@@ -47,7 +47,7 @@ const list = computed(() => data.children.material[current.value].comment?.flatM
|
||||
{{ data.children.material[current].tags_arr.map(item => `#${item}`).join(' ') }}
|
||||
</view>
|
||||
</view>
|
||||
<view class="block">
|
||||
<view class="block" v-if="data.material_type?.desc_limit > 0">
|
||||
<view class="block-title">
|
||||
正文:
|
||||
</view>
|
||||
@@ -88,7 +88,7 @@ const list = computed(() => data.children.material[current.value].comment?.flatM
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<tui-button size="28" @click="toWXMiniApp(data.id)">
|
||||
<tui-button size="28" @click="toWXMiniApp(data.id, data.children.id)">
|
||||
<tui-icon size="20" color="#fff" name="bottom"></tui-icon>
|
||||
<view class="!ml-[20rpx]">一键下载</view>
|
||||
</tui-button>
|
||||
|
||||
@@ -109,52 +109,18 @@ onMounted(() => {
|
||||
</view>
|
||||
<view class="block-info">
|
||||
<x-upload
|
||||
:del="data.children.back[current]"
|
||||
:del="data.children.back[current]?.status === -2"
|
||||
:single="true"
|
||||
v-model:files="content[index]"
|
||||
v-if="v.is_image === 1">
|
||||
</x-upload>
|
||||
<x-input v-else v-model:model-value="content[index]" height="64rpx" placeholder="请输入内容"></x-input>
|
||||
<x-input v-else v-model:model-value="content[index]" height="64rpx" placeholder="请输入内容"
|
||||
:disabled="data.children.back[current]?.status !== -2"></x-input>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
<template v-if="data.children.back[current]">
|
||||
<view class="text-[#165DFF] test-24r py-[32rpx]" v-if="data.children.back[current]?.status === 1">
|
||||
{{ dayjs(data.children.back[current].back_time * 1000).format('YYYY-MM-DD HH:mm') }}已提交,审核通过
|
||||
<view class="py-[32rpx]" v-html="data.children.back[current]?.text">
|
||||
</view>
|
||||
<template v-if="data.children.back[current]?.status === 2">
|
||||
<view class="text-[#165DFF] test-24r py-[32rpx]" v-if="data.children.back[current]?.operate === 1">
|
||||
<view>{{
|
||||
dayjs(data.children.back[current].back_time * 1000).format('YYYY-MM-DD HH:mm')
|
||||
}}已提交,审核拒绝
|
||||
</view>
|
||||
<view>请请点击审核沟通,查看修改建议</view>
|
||||
<view>
|
||||
并于{{ dayjs(data.children.back[current].end_time * 1000).format('YYYY-MM-DD HH:mm') }}前点击下方重新提交本次回填
|
||||
</view>
|
||||
</view>
|
||||
<view class="text-[#165DFF] test-24r py-[32rpx]" v-if="data.children.back[current]?.operate === 2">
|
||||
<view>{{
|
||||
dayjs(data.children.back[current].back_time * 1000).format('YYYY-MM-DD HH:mm')
|
||||
}}已提交,审核拒绝
|
||||
</view>
|
||||
<view>请请点击审核沟通,查看修改建议</view>
|
||||
<view>
|
||||
并于{{
|
||||
dayjs(data.children.back[current].end_time * 1000).format('YYYY-MM-DD HH:mm')
|
||||
}}前点击下方回复,按照要求进行回复
|
||||
</view>
|
||||
</view>
|
||||
</template>
|
||||
<view class="text-[#165DFF] test-24r py-[32rpx]"
|
||||
v-if="data.children.back[current]?.status === 0">
|
||||
{{ dayjs(data.children.back[current].back_time * 1000).format('YYYY-MM-DD HH:mm') }}已提交,审核中
|
||||
</view>
|
||||
<view class="text-[#165DFF] test-24r py-[32rpx]"
|
||||
v-if="data.children.back[current]?.status === -1">
|
||||
{{ dayjs(data.children.back[current].back_time * 1000).format('YYYY-MM-DD HH:mm') }}已提交,审核失败
|
||||
</view>
|
||||
</template>
|
||||
|
||||
<template
|
||||
v-if="!data.children.back[current] || data.children.back[current]?.operate === 0 || data.children.back[current]?.operate === 3">
|
||||
|
||||
@@ -42,7 +42,7 @@ const confirmTask = async () => {
|
||||
提示:点击下方按钮,快速回复
|
||||
</view>
|
||||
<view
|
||||
@click="toPage(`/pages/taskDetails/index?id=${data.id}&tab=2`)"
|
||||
@click="toPage(`/pages/taskDetails/index?id=${data.id}&task_children_id=${data.children.id}&tab=2`)"
|
||||
class="py-[15rpx] !flex justify-center flex-col items-center test-28r text-[#165DFF] bg-[#E8F3FF] px-[26rpx]">
|
||||
去重新回填
|
||||
</view>
|
||||
@@ -53,7 +53,7 @@ const confirmTask = async () => {
|
||||
<view class="w-full h-[2rpx] bg-[#E5E6EB] !my-[8rpx]"></view>
|
||||
<view class="test-22r text-[#86909C]">商家将根据约定扣钱或不结算</view>
|
||||
</view>
|
||||
<reply-message-modal :data="data" :intervention="true" @success="emits('success')">
|
||||
<reply-message-modal :data="data" :logId="item.id" :intervention="true" @success="emits('success')">
|
||||
<view
|
||||
class="py-[15rpx] !flex justify-center flex-col items-center test-28r text-[#165DFF] bg-[#E8F3FF] px-[26rpx]">
|
||||
发起申诉
|
||||
@@ -69,6 +69,7 @@ const confirmTask = async () => {
|
||||
<reply-message-modal
|
||||
:backId="item.task_backfill_id"
|
||||
:pattern="1"
|
||||
:logId="item.id"
|
||||
:data="data"
|
||||
:intervention="true"
|
||||
@success="emits('success');">
|
||||
@@ -84,7 +85,7 @@ const confirmTask = async () => {
|
||||
<view class="w-full h-[2rpx] bg-[#E5E6EB] !my-[8rpx]"></view>
|
||||
<view class="test-22r text-[#86909C]">商家将根据约定扣钱或不结算</view>
|
||||
</view>
|
||||
<reply-message-modal :data="data" :intervention="true" @success="emits('success')">
|
||||
<reply-message-modal :data="data" :logId="item.id" :intervention="true" @success="emits('success')">
|
||||
<view
|
||||
class="py-[15rpx] !flex justify-center flex-col items-center test-28r text-[#165DFF] bg-[#E8F3FF] px-[26rpx]">
|
||||
发起申诉
|
||||
@@ -97,7 +98,7 @@ const confirmTask = async () => {
|
||||
<image :src="YY_ICON" class="!size-[26rpx]"></image>
|
||||
提示:点击下方按钮,快速回复
|
||||
</view>
|
||||
<reply-message-modal :data="data" :intervention="true" @success="emits('success')">
|
||||
<reply-message-modal :data="data" :logId="item.id" :intervention="true" @success="emits('success')">
|
||||
<view
|
||||
class="py-[15rpx] !flex justify-center flex-col items-center test-28r text-[#165DFF] bg-[#E8F3FF] px-[26rpx]">
|
||||
发起申诉
|
||||
@@ -119,7 +120,7 @@ const confirmTask = async () => {
|
||||
<view class="w-full h-[2rpx] bg-[#E5E6EB] !my-[8rpx]"></view>
|
||||
<view class="test-22r text-[#86909C]">将在12时00分00秒后自动同意</view>
|
||||
</view>
|
||||
<reply-message-modal :data="data" :intervention="true" @success="emits('success')">
|
||||
<reply-message-modal :data="data" :logId="item.id" :intervention="true" @success="emits('success')">
|
||||
<view
|
||||
class="py-[15rpx] !flex justify-center flex-col items-center test-28r text-[#165DFF] bg-[#E8F3FF] px-[26rpx]">
|
||||
发起申诉
|
||||
|
||||
@@ -4,6 +4,7 @@ import linkIcon from '../../../static/icons/link.png';
|
||||
import XImage from "../../../components/XImage.vue";
|
||||
import XSquareCarouselImage from "../../../components/XSquareCarouselImage.vue";
|
||||
import HF_ICON from "../../../static/icons/icon-wrapper.png";
|
||||
import {copy} from "../../../utils/uils.js";
|
||||
|
||||
const {data, home} = defineProps({
|
||||
data: {
|
||||
@@ -31,7 +32,8 @@ const {data, home} = defineProps({
|
||||
<text class="ellipsis-1 flex-grow">
|
||||
{{ data.case_url }}
|
||||
</text>
|
||||
<view class="nowrap flex-shrink !py-[7rpx] !px-[32rpx] rounded-full bg-[#E8F3FF]"
|
||||
<view @click="copy(data.case_url)"
|
||||
class="nowrap flex-shrink !py-[7rpx] !px-[32rpx] rounded-full bg-[#E8F3FF]"
|
||||
style="font-size: 24rpx">
|
||||
复制
|
||||
</view>
|
||||
@@ -44,7 +46,7 @@ const {data, home} = defineProps({
|
||||
<x-square-carousel-image
|
||||
v-if="data.case_images_arr.length > 0"
|
||||
:list="data.case_images_arr"
|
||||
:show-s-y="home">
|
||||
:show-s-y="true">
|
||||
</x-square-carousel-image>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -7,7 +7,7 @@ import {showToast, uploadFile} from "../../../utils/uils.js";
|
||||
import Api from "../../../api/index.js";
|
||||
|
||||
const emits = defineEmits(['success']);
|
||||
const {data, backId, intervention, pattern} = defineProps({
|
||||
const {data, backId, intervention, pattern, logId} = defineProps({
|
||||
data: {
|
||||
type: Object,
|
||||
default: {},
|
||||
@@ -16,6 +16,10 @@ const {data, backId, intervention, pattern} = defineProps({
|
||||
type: Number,
|
||||
default: null,
|
||||
},
|
||||
logId: {
|
||||
type: Number,
|
||||
default: null,
|
||||
},
|
||||
pattern: {
|
||||
type: Number,
|
||||
default: null,
|
||||
@@ -33,16 +37,16 @@ const form = reactive({
|
||||
});
|
||||
|
||||
const upload = async () => {
|
||||
const [res] = await uploadFile({
|
||||
const res = await uploadFile({
|
||||
count: 9,
|
||||
});
|
||||
const {data} = res;
|
||||
form.images.push(data);
|
||||
const data = res.map(v => v.data);
|
||||
form.images.push(...data);
|
||||
}
|
||||
|
||||
const success = async () => {
|
||||
const api = intervention ? Api.system.intervention : Api.system.addExchangeLog
|
||||
const {msg} = await api({...form, backfill_id: backId, pattern: pattern});
|
||||
const api = intervention ? Api.system.intervention : Api.system.addExchangeLog;
|
||||
const {msg} = await api({...form, backfill_id: backId, pattern: pattern, log_id: logId});
|
||||
showToast(msg);
|
||||
form.images.length = 0;
|
||||
form.content = null;
|
||||
|
||||
@@ -9,12 +9,13 @@ import XImage from "../../components/XImage.vue";
|
||||
import Api from "../../api/index.js";
|
||||
import dayjs from "dayjs";
|
||||
import XPrompt from "../../components/XPrompt.vue";
|
||||
import {numberToCharacter} from "../../utils/uils.js";
|
||||
import {copy, numberToCharacter} from "../../utils/uils.js";
|
||||
import AcceptAssignmentModal from "../../components/AcceptAssignmentModal.vue";
|
||||
import ICON from "../../static/icons/prompt.png";
|
||||
import XConfirmModal from "../../components/XConfirmModal.vue";
|
||||
import LeftMenu from "../../components/LeftMenu.vue";
|
||||
import {v4} from "uuid";
|
||||
import {debounce} from "lodash";
|
||||
|
||||
// #ifdef APP-PLUS
|
||||
// #endif
|
||||
@@ -144,13 +145,18 @@ const setScroll = (value) => {
|
||||
scrollState.top = value;
|
||||
});
|
||||
}
|
||||
|
||||
const hiddenMenu = debounce(() => {
|
||||
showMenu.value = false;
|
||||
}, 1200);
|
||||
|
||||
const scroll = ({detail: {scrollTop}}) => {
|
||||
const systemInfo = uni.getSystemInfoSync();
|
||||
const screenHeight = systemInfo.screenHeight;
|
||||
console.log('屏幕高度:', screenHeight);
|
||||
|
||||
if (scrollTop > screenHeight) {
|
||||
showMenu.value = true;
|
||||
hiddenMenu();
|
||||
} else {
|
||||
showMenu.value = false;
|
||||
}
|
||||
@@ -169,7 +175,7 @@ const scroll = ({detail: {scrollTop}}) => {
|
||||
<template>
|
||||
<!--任务详情-->
|
||||
<XNav :delta="delta"></XNav>
|
||||
<x-notice-bar></x-notice-bar>
|
||||
<x-notice-bar v-if="details.banner" :text="details.banner"></x-notice-bar>
|
||||
<left-menu v-show="showMenu" :tabs="menuTabs" @top="topTop" @setScroll="setScroll"></left-menu>
|
||||
|
||||
<scroll-view
|
||||
@@ -196,7 +202,7 @@ const scroll = ({detail: {scrollTop}}) => {
|
||||
</view>
|
||||
<view v-else class="goods-bh">
|
||||
任务编号:{{ !home && details.is_use === 0 ? details.code : details.children.uid }}
|
||||
<x-link>复制</x-link>
|
||||
<x-link @click="copy(details.children.uid)">复制</x-link>
|
||||
</view>
|
||||
</view>
|
||||
</view>
|
||||
|
||||
@@ -20,7 +20,7 @@ export {BASEURL};
|
||||
|
||||
const request = axios.create({
|
||||
baseURL: BASEURL,
|
||||
timeout: '6000',
|
||||
timeout: '60000',
|
||||
adapter: UniAdapter,
|
||||
});
|
||||
|
||||
|
||||
@@ -134,9 +134,9 @@ export const numberToCharacter = (number) => {
|
||||
return ['一', '二', '三', '四', '五'][number];
|
||||
}
|
||||
|
||||
export const toWXMiniApp = (id) => {
|
||||
export const toWXMiniApp = (id, task_children_id) => {
|
||||
const {token} = useUserStore();
|
||||
window.open(`weixin://dl/business/?appid=${import.meta.env.VITE_APP_ID}&path=pages/index/index&env_version=${import.meta.env.VITE_APP_VERSION}&query=${encodeURIComponent(`id=${id}&token=${token}`)}`);
|
||||
window.open(`weixin://dl/business/?appid=${import.meta.env.VITE_APP_ID}&path=pages/index/index&env_version=${import.meta.env.VITE_APP_VERSION}&query=${encodeURIComponent(`id=${id}&task_children_id=${task_children_id}&token=${token}`)}`);
|
||||
}
|
||||
|
||||
export const uploadFile = ({count}) => {
|
||||
|
||||
Reference in New Issue
Block a user