Compare commits
No commits in common. '9472c5ea56bd4f98b93ff0b579e53a57ba714b1f' and '4f150b0912c62329c3831bfb5959b8d8281b607d' have entirely different histories.
9472c5ea56
...
4f150b0912
@ -1,140 +1,7 @@ |
|||||||
<template> |
<template> |
||||||
<div class="pl-20px pr-20px"> |
<div> 每日快报 </div> |
||||||
<el-form :model="form" ref="formRef" :rules="rules" label-width="auto" v-loading="formLoading"> |
|
||||||
<el-form-item label="开启通知"> |
|
||||||
<el-radio-group v-model="form.kaiqitongzhi"> |
|
||||||
<el-radio :label="1"> 开启 </el-radio> |
|
||||||
<el-radio :label="0"> 关闭 </el-radio> |
|
||||||
</el-radio-group> |
|
||||||
</el-form-item> |
|
||||||
|
|
||||||
<el-form-item label="发送途径"> |
|
||||||
<el-checkbox-group v-model="form.fasongtujing"> |
|
||||||
<el-checkbox :label="1">系统通知</el-checkbox> |
|
||||||
<el-checkbox :label="2">微信公众号</el-checkbox> |
|
||||||
</el-checkbox-group> |
|
||||||
</el-form-item> |
|
||||||
<el-form-item label="发送时间"> |
|
||||||
<el-time-picker |
|
||||||
v-model="form.sendTime" |
|
||||||
placeholder="任意时间点" |
|
||||||
format="HH:mm:ss" |
|
||||||
value-format="HH:mm:ss" |
|
||||||
/> |
|
||||||
</el-form-item> |
|
||||||
<el-form-item label="发送内容"> |
|
||||||
<el-tree |
|
||||||
ref="treeRef" |
|
||||||
:data="contentOptions" |
|
||||||
empty-text="加载中,请稍候" |
|
||||||
node-key="value" |
|
||||||
show-checkbox |
|
||||||
default-expand-all |
|
||||||
:default-checked-keys="form.sendContent" |
|
||||||
style="width: 100%" |
|
||||||
/> |
|
||||||
</el-form-item> |
|
||||||
<el-form-item> |
|
||||||
<el-button :disabled="formLoading" type="primary" @click="submitForm"> 保 存 </el-button> |
|
||||||
</el-form-item> |
|
||||||
</el-form> |
|
||||||
</div> |
|
||||||
</template> |
</template> |
||||||
|
|
||||||
<script setup name="ReportDaily"> |
<script setup name="ReportDaily"></script> |
||||||
import { handleTree } from '@/utils/tree' |
|
||||||
|
|
||||||
const message = useMessage() // 消息弹窗 |
|
||||||
const props = defineProps({ |
|
||||||
roleId: { |
|
||||||
type: Number |
|
||||||
} |
|
||||||
}) |
|
||||||
|
|
||||||
const formLoading = ref(false) |
|
||||||
const form = ref({ |
|
||||||
checkedMenuIds: [] |
|
||||||
}) |
|
||||||
|
|
||||||
onMounted(() => { |
|
||||||
init() |
|
||||||
}) |
|
||||||
|
|
||||||
const formRef = ref() |
|
||||||
|
|
||||||
const rules = {} |
|
||||||
|
|
||||||
const contentOptions = ref([]) |
|
||||||
|
|
||||||
async function init() { |
|
||||||
getOptions() |
|
||||||
getReportInfo() |
|
||||||
} |
|
||||||
|
|
||||||
const treeRef = ref() |
|
||||||
function getOptions() { |
|
||||||
const arr = [ |
|
||||||
{ |
|
||||||
value: 1, |
|
||||||
label: '销售快报', |
|
||||||
children: [ |
|
||||||
{ value: 11, label: '今日跟进线索数', pId: 1 }, |
|
||||||
{ value: 12, label: '今日待跟进数', pId: 1 }, |
|
||||||
{ value: 13, label: '今日接受线索数', pId: 1 } |
|
||||||
] |
|
||||||
}, |
|
||||||
|
|
||||||
{ |
|
||||||
value: 2, |
|
||||||
label: '管理快报', |
|
||||||
children: [ |
|
||||||
{ value: 21, label: '当日业绩(成交数,成交额)', pId: 2 }, |
|
||||||
{ value: 22, label: '当月业绩(成交数,成交额)', pId: 2 }, |
|
||||||
{ value: 23, label: '本月业绩完成情况(数值,比例)', pId: 2 } |
|
||||||
] |
|
||||||
} |
|
||||||
] |
|
||||||
|
|
||||||
contentOptions.value = arr |
|
||||||
handleTree(arr) |
|
||||||
} |
|
||||||
|
|
||||||
async function getReportInfo() { |
|
||||||
try { |
|
||||||
formLoading.value = true |
|
||||||
form.value = { |
|
||||||
kaiqitongzhi: 1, |
|
||||||
fasongtujing: [1, 2], |
|
||||||
sendTime: '21:00:00', |
|
||||||
sendContent: [21, 22, 23] |
|
||||||
} |
|
||||||
formLoading.value = false |
|
||||||
} catch (error) { |
|
||||||
console.log(error) |
|
||||||
formLoading.value = false |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
/** 提交表单 */ |
|
||||||
const submitForm = async () => { |
|
||||||
// 提交请求 |
|
||||||
formLoading.value = true |
|
||||||
try { |
|
||||||
const data = { |
|
||||||
roleId: props.roleId, |
|
||||||
menuIds: [ |
|
||||||
...treeRef.value.getCheckedKeys(false), // 获得当前选中节点 |
|
||||||
...treeRef.value.getHalfCheckedKeys() // 获得半选中的父节点 |
|
||||||
] |
|
||||||
} |
|
||||||
// await PermissionApi.assignRoleMenu(data) |
|
||||||
console.log(data) |
|
||||||
|
|
||||||
message.success('保存成功') |
|
||||||
} finally { |
|
||||||
formLoading.value = false |
|
||||||
} |
|
||||||
} |
|
||||||
</script> |
|
||||||
|
|
||||||
<style lang="scss" scoped></style> |
<style lang="scss" scoped></style> |
||||||
|
@ -1,65 +0,0 @@ |
|||||||
<template> |
|
||||||
<div class="p-20px"> |
|
||||||
<p class="mb-30px font-bold text-20px">微信授权登陆</p> |
|
||||||
<el-form :model="form" ref="formRef" :rules="rules" label-width="auto"> |
|
||||||
<el-form-item label="用户名" prop="username"> |
|
||||||
<el-input v-model="form.username" placeholder="请输入用户名" /> |
|
||||||
</el-form-item> |
|
||||||
<el-form-item label="密码" prop="password"> |
|
||||||
<el-input v-model="form.password" placeholder="请输入密码" show-password type="password" /> |
|
||||||
</el-form-item> |
|
||||||
</el-form> |
|
||||||
<el-button type="primary" class="w-full" @click="onSubmit">授权登陆</el-button> |
|
||||||
<div v-if="form.code">code: {{ form.code }}</div> |
|
||||||
</div> |
|
||||||
</template> |
|
||||||
|
|
||||||
<script setup name="MPLogin"> |
|
||||||
const form = ref({ |
|
||||||
code: undefined, |
|
||||||
username: undefined, |
|
||||||
password: undefined |
|
||||||
}) |
|
||||||
const formRef = ref() |
|
||||||
const rules = { |
|
||||||
username: { required: true, message: '用户名不可为空', trigger: 'blur' }, |
|
||||||
password: { required: true, message: '密码不可为空', trigger: 'blur' } |
|
||||||
} |
|
||||||
|
|
||||||
// 微信授权登陆地址 |
|
||||||
const WX_AUTH_URL = 'https://open.weixin.qq.com/connect/oauth2/authorize?' |
|
||||||
// 重定向参数-固定写法 |
|
||||||
const REDIRECT = '#wechat_redirect' |
|
||||||
|
|
||||||
const params = ref({ |
|
||||||
appid: 'wxf87aa1f474c0494f', // 公众号 APP ID |
|
||||||
redirect_uri: ``, // 授权后重定向的回调链接地址, 请使用 urlEncode 对链接进行处理 |
|
||||||
response_type: 'code', // 固定写法 |
|
||||||
scope: 'snsapi_base' // snsapi_base 静默授权获取 open id ;snsapi_userinfo 需要用户授权,获取详细信息 |
|
||||||
// state:'code', // a-zA-Z0-9的参数值,最多128字节 |
|
||||||
}) |
|
||||||
function onSubmit() { |
|
||||||
// 这些需要判断没有 code 情况拉起授权登陆,有就结束放在重复拉起授权登陆 |
|
||||||
if (!form.value.code) { |
|
||||||
const access_url = WX_AUTH_URL + `${new URLSearchParams(params.value)}` + REDIRECT |
|
||||||
location.href = access_url |
|
||||||
} else { |
|
||||||
alert(`授权成功!`) |
|
||||||
} |
|
||||||
} |
|
||||||
|
|
||||||
onMounted(() => { |
|
||||||
const uri = location.origin + location.pathname |
|
||||||
params.value.redirect_uri = encodeURI(uri) |
|
||||||
// 获取地址参数 |
|
||||||
const param = new URLSearchParams(location.search) |
|
||||||
form.value.code = param.get('code') |
|
||||||
|
|
||||||
if (!form.value.code) { |
|
||||||
const access_url = WX_AUTH_URL + `${new URLSearchParams(params.value)}` + REDIRECT |
|
||||||
location.href = access_url |
|
||||||
} |
|
||||||
}) |
|
||||||
</script> |
|
||||||
|
|
||||||
<style lang="scss" scoped></style> |
|
Loading…
Reference in new issue