1.替换所有小助手字样为全科医师
2.添加app下载地址
This commit is contained in:
2025-11-03 13:37:05 +08:00
parent 80f7434a37
commit e629dc3fb0
25 changed files with 528 additions and 156 deletions
+136
View File
@@ -0,0 +1,136 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>APP下载</title>
</head>
<style>
html,body,#outer {
width: 100%;
height: 100%;
padding: 0;
margin: 0;
box-sizing: border-box;
}
#text {
width: 100%;
height: 100%;
background: url('./images/noOpen.png') no-repeat;
background-size: 100% 100%;
display: none;
align-items: center;
justify-content: center;
}
#text1 {
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.down-container {
width: 100%;
height: 100%;
background: url('./images/bg.png') no-repeat;
background-size: 100% 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.android {
width: 400px;
height: 400px;
background: url('./images/android1.png') no-repeat;
background-size: 100% 100%;
margin-top: 14%;
}
.ios {
width: 400px;
height: 400px;
background: url('./images/ios.png') no-repeat;
background-size: 100% 100%;
}
</style>
<body>
<div id="outer">
<div id="text">
</div>
<div id="text1">
<div class="down-container">
<!-- <div class="ios" onclick="down('ios')"></div>-->
<div class="android" onclick="down('android')"></div>
</div>
</div>
</div>
</body>
</html>
<script>
function isWeiXin() {
return navigator.userAgent.toLocaleLowerCase().indexOf('micromessenger') != -1;
}
function f() {
if (isWeiXin()) {
document.getElementById('text1').style.display = 'none';
document.getElementById('text').style.display = 'flex';
}
getTypeAPackage();
}
f();
function isType() {
let userAgent = navigator.userAgent || navigator.vendor || window.opera;
if (userAgent.match(/iPad/i) || userAgent.match(/iPhone/i) || userAgent.match(/iPod/i)) {
return 'ios';
} else if (userAgent.match(/Android/i)) {
return 'android';
}
}
function androidLoad() {
// window.open('https://a.app.qq.com/o/simple.jsp?pkgname=com.sw.healthyclients');
fetch(`https://api.xjygjk.com/health-system/version/getSysVersionDetailByPackageName?androidOrIos=1&packageName=com.xjjk.healthexpertclient`)
.then(response => {
if (!response.ok) {
throw new Error('网络响应不正常');
}
return response.json();
})
.then(data => {
console.log(data);
if (data.code === 200) {
window.open(`https://api.xjygjk.com/file/down/${data.result.appUrl}`)
} else {
window.alert('网络异常');
}
})
.catch(error => {
console.error('请求失败:', error);
window.alert('网络异常');
});
}
function iosLoad() {
// // 响应App store
// const appID = '6483208440';
// const link = 'itms-apps://itunes.apple.com/app/id' + appID;
// window.location.href = 'https://api.cqygjk.com/health-system/api/anon/sys/toAppDown?pkg=com.escortUP.EscortProject&type=2';
}
function down(type) {
if (type === 'ios') {
iosLoad();
} else {
androidLoad();
}
}
function getTypeAPackage() {
const url = window.location.href;
const arr = url.indexOf('?') !== -1 ? url.split('?')[1].replace('#/', '') : '';
let strArr = arr.split('&')
let params = {};
for (const item of strArr) {
params[item.substring(0, item.indexOf('='))] = item.substring(item.indexOf('=') + 1);
}
}
</script>
+107
View File
@@ -0,0 +1,107 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>健康咨询专家端APP下载</title>
</head>
<style>
html, body, #outer {
width: 100%;
height: 100%;
padding: 0;
margin: 0;
box-sizing: border-box;
}
#text {
width: 100%;
height: 100%;
background: url('./images/noOpen.png') no-repeat;
background-size: 100% 100%;
display: none;
align-items: center;
justify-content: center;
}
#text1 {
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.down-container {
width: 100%;
height: 100vh;
background: url('./images/bg.png') no-repeat;
background-size: 100% 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.android {
width: 400px;
height: 400px;
background: url('./images/exportAndroid.png') no-repeat;
background-size: 100% 100%;
margin-top: 14%;
}
.ios {
width: 400px;
height: 400px;
background: url('./images/exportIos.png') no-repeat;
background-size: 100% 100%;
}
</style>
<body>
<div id="outer">
<div id="text">
</div>
<div id="text1">
<div class="down-container">
<div class="ios" onclick="down('ios')"></div>
<div class="android" onclick="down('android')"></div>
</div>
</div>
</div>
</body>
</html>
<script>
function isWeiXin() {
return navigator.userAgent.toLocaleLowerCase().indexOf('micromessenger') != -1;
}
function f() {
if (isWeiXin()) {
document.getElementById('text1').style.display = 'none';
document.getElementById('text').style.display = 'flex';
}
}
f();
function isType() {
let userAgent = navigator.userAgent || navigator.vendor || window.opera;
if (userAgent.match(/iPad/i) || userAgent.match(/iPhone/i) || userAgent.match(/iPod/i)) {
return 'ios';
} else if (userAgent.match(/Android/i)) {
return 'android';
}
}
function androidLoad() {
window.open('https://api.cqygjk.com/health-system/api/anon/sys/toAppDown?pkg=com.sw.healthexpertclient&type=1');
}
function iosLoad() {
// 响应App store
const appID = '6482987307';
const link = 'https://itunes.apple.com/app/id'+ appID;
window.location.href = link;
}
function down(type) {
if (type === 'ios') {
iosLoad();
} else {
androidLoad();
}
}
</script>
Binary file not shown.

After

Width:  |  Height:  |  Size: 15 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 16 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 208 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 22 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 27 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 116 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 299 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.4 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 32 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

+134
View File
@@ -0,0 +1,134 @@
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>APP下载</title>
</head>
<style>
html,body,#outer {
width: 100%;
height: 100%;
padding: 0;
margin: 0;
box-sizing: border-box;
}
#text {
width: 100%;
height: 100%;
background: url('./images/noOpen.png') no-repeat;
background-size: 100% 100%;
display: none;
align-items: center;
justify-content: center;
}
#text1 {
width: 100%;
height: 100%;
display: flex;
align-items: center;
justify-content: center;
}
.down-container {
width: 100%;
height: 100%;
background: url('./images/bg.png') no-repeat;
background-size: 100% 100%;
display: flex;
flex-direction: column;
align-items: center;
justify-content: center;
}
.android {
width: 400px;
height: 400px;
background: url('./images/android.png') no-repeat;
background-size: 100% 100%;
margin-top: 14%;
}
.ios {
width: 400px;
height: 400px;
background: url('./images/ios.png') no-repeat;
background-size: 100% 100%;
}
</style>
<body>
<div id="outer">
<div id="text">
</div>
<div id="text1">
<div class="down-container">
<!-- <div class="ios" onclick="down('ios')"></div>-->
<div class="android" onclick="down('android')"></div>
</div>
</div>
</div>
</body>
</html>
<script>
function isWeiXin() {
return navigator.userAgent.toLocaleLowerCase().indexOf('micromessenger') != -1;
}
function f() {
if (isWeiXin()) {
document.getElementById('text1').style.display = 'none';
document.getElementById('text').style.display = 'flex';
}
getTypeAPackage();
}
f();
function isType() {
let userAgent = navigator.userAgent || navigator.vendor || window.opera;
if (userAgent.match(/iPad/i) || userAgent.match(/iPhone/i) || userAgent.match(/iPod/i)) {
return 'ios';
} else if (userAgent.match(/Android/i)) {
return 'android';
}
}
function androidLoad() {
fetch(`https://api.xjygjk.com/health-system/version/getSysVersionDetailByPackageName?androidOrIos=1&packageName=com.xjjk.healthyclients`)
.then(response => {
if (!response.ok) {
throw new Error('网络响应不正常');
}
return response.json();
})
.then(data => {
console.log(data);
if (data.code === 200) {
window.open(`https://api.xjygjk.com/file/down/${data.result.appUrl}`)
} else {
window.alert('网络异常');
}
})
.catch(error => {
console.error('请求失败:', error);
window.alert('网络异常');
});
}
function iosLoad() {
// // 响应App store
// const appID = '6483208440';
// const link = 'itms-apps://itunes.apple.com/app/id' + appID;
// window.location.href = 'https://api.cqygjk.com/health-system/api/anon/sys/toAppDown?pkg=com.escortUP.EscortProject&type=2';
}
function down(type) {
if (type === 'ios') {
iosLoad();
} else {
androidLoad();
}
}
function getTypeAPackage() {
const url = window.location.href;
const arr = url.indexOf('?') !== -1 ? url.split('?')[1].replace('#/', '') : '';
let strArr = arr.split('&')
let params = {};
for (const item of strArr) {
params[item.substring(0, item.indexOf('='))] = item.substring(item.indexOf('=') + 1);
}
}
</script>
Binary file not shown.

After

Width:  |  Height:  |  Size: 28 KiB

+1 -1
View File
@@ -52,7 +52,7 @@
}
switch (userStore.getUserInfo.personType) {
case '2':
result = '健康平台小助手';
result = '健康平台全科医生';
break;
case '6':
result = '应急就医服务';
+1 -1
View File
@@ -83,7 +83,7 @@ export const saveOrUpdate = (params, isUpdate) => {
};
/**
* @description 获取小助手信息详情
* @description 获取全科医生信息详情
* @param params 请求参数
* */
export const queryById = (params) => defHttp.get({ url: Api.queryById, params });
+2 -2
View File
@@ -59,7 +59,7 @@ export const searchFormSchema: FormSchema[] = [
value: '1',
},
{
label: '小助手',
label: '全科医生',
value: '2',
},
{
@@ -95,7 +95,7 @@ export const formSchema: FormSchema[] = [
value: '1',
},
{
label: '小助手',
label: '全科医生',
value: '2',
},
{
+1 -1
View File
@@ -27,7 +27,7 @@
const { tableContext } = useListPage({
tableProps: {
title: '小助手休息时间',
title: '全科医生休息时间',
api: listApi,
columns,
tableSetting: {
@@ -53,7 +53,7 @@ export const columns: BasicColumn[] = [
dataIndex: 'resourceName',
},
{
title: '小助手',
title: '全科医生',
align: 'center',
dataIndex: 'doctorName',
},
@@ -91,7 +91,7 @@ export const searchFormSchema: FormSchema[] = [
// },
},
{
label: '小助手姓名',
label: '全科医生',
field: 'doctorName',
component: 'Input',
},
@@ -175,7 +175,7 @@ export const columns: BasicColumn[] = [
},
},
{
title: isQH() ? '全科医生名称' : '小助手姓名',
title: isQH() ? '全科医生名称' : '全科医生名称',
align: 'center',
width: 120,
customRender: ({ record }) => {
@@ -48,7 +48,7 @@ export const columns: BasicColumn[] = [
dataIndex: 'orgCode',
},
{
title: '小助手',
title: '全科医生',
align: 'center',
dataIndex: 'doctorName',
},
@@ -94,7 +94,7 @@ export const searchFormSchema: FormSchema[] = [
component: 'Input',
},
{
label: '小助手姓名',
label: '全科医生姓名',
field: 'doctorName',
component: 'Input',
},
@@ -60,7 +60,7 @@
//注册table数据
const { tableContext } = useListPage({
tableProps: {
title: '员工咨询小助手',
title: '员工咨询全科医生',
api: list,
columns,
canResize: false,
@@ -70,7 +70,7 @@ export const columns: BasicColumn[] = [
case '1':
return render.renderTag('咨询专家', 'green');
case '2':
return render.renderTag(isQH() ? '咨询全科医生' : '咨询小助手', 'blue');
return render.renderTag(isQH() ? '咨询全科医生' : '咨询全科医生', 'blue');
default:
return '';
}
@@ -140,7 +140,7 @@ export const columns: BasicColumn[] = [
},
},
{
title: isQH() ? '全科医生名称' : '小助手姓名',
title: isQH() ? '全科医生名称' : '全科医生名称',
align: 'center',
width: 120,
customRender: ({ record }) => {
@@ -265,7 +265,7 @@ export const columns1: BasicColumn[] = [
},
},
{
title: '小助手姓名',
title: '全科医生名称',
align: 'center',
customRender: ({ record }) => {
return record.toName;
@@ -438,7 +438,7 @@ export const searchFormSchema: FormSchema[] = [
componentProps: {
options: [
{ value: '1', label: '咨询专家' },
{ value: '2', label: isQH() ? '咨询全科医生' : '咨询小助手' },
{ value: '2', label: isQH() ? '咨询全科医生' : '咨询全科医生' },
],
},
},
+135 -140
View File
@@ -1,152 +1,147 @@
import {BasicColumn} from '/@/components/Table';
import {FormSchema} from '/@/components/Table';
import { rules} from '/@/utils/helper/validator';
import { BasicColumn } from '/@/components/Table';
import { FormSchema } from '/@/components/Table';
import { rules } from '/@/utils/helper/validator';
import { render } from '/@/utils/common/renderUtils';
//列表数据
export const columns: BasicColumn[] = [
{
title: '标题',
align:"center",
dataIndex: 'titile'
},
{
title: '摘要',
align:"center",
dataIndex: 'msgAbstract'
},
{
title: '内容',
align:"center",
dataIndex: 'msgContent'
},
{
title: '类型 0:隐私协议 1:用户通知 2:关于我们 ',
align:"center",
dataIndex: 'msgCategory'
},
{
title: '发布状态(0未发布,1已发布,2已撤销)',
align:"center",
dataIndex: 'sendStatus'
},
{
title: '所属角色(1:员工 2: 小助手 3: 专家 4: 医疗点 5: 操作人员 6: 专业人员 7:驻场人员 8:其他 9:医院管理员 10: 医院体检医生 11:医院前台 12: 健康室管理员 13: 健康打卡管理员)',
align:"center",
dataIndex: 'personType'
},
{
title: '发布时间',
align:"center",
dataIndex: 'sendTime',
customRender:({text}) =>{
return !text?"":(text.length>10?text.substr(0,10):text)
{
title: '标题',
align: 'center',
dataIndex: 'titile',
},
},
{
title: '撤销时间',
align:"center",
dataIndex: 'cancelTime',
customRender:({text}) =>{
return !text?"":(text.length>10?text.substr(0,10):text)
{
title: '摘要',
align: 'center',
dataIndex: 'msgAbstract',
},
{
title: '内容',
align: 'center',
dataIndex: 'msgContent',
},
{
title: '类型 0:隐私协议 1:用户通知 2:关于我们 ',
align: 'center',
dataIndex: 'msgCategory',
},
{
title: '发布状态(0未发布,1已发布,2已撤销)',
align: 'center',
dataIndex: 'sendStatus',
},
{
title: '所属角色(1:员工 2: 全科医生 3: 专家 4: 医疗点 5: 操作人员 6: 专业人员 7:驻场人员 8:其他 9:医院管理员 10: 医院体检医生 11:医院前台 12: 健康室管理员 13: 健康打卡管理员)',
align: 'center',
dataIndex: 'personType',
},
{
title: '发布时间',
align: 'center',
dataIndex: 'sendTime',
customRender: ({ text }) => {
return !text ? '' : text.length > 10 ? text.substr(0, 10) : text;
},
},
{
title: '撤销时间',
align: 'center',
dataIndex: 'cancelTime',
customRender: ({ text }) => {
return !text ? '' : text.length > 10 ? text.substr(0, 10) : text;
},
},
{
title: '发送部门(多个使用","分割)',
align: 'center',
dataIndex: 'sendDepart',
},
{
title: '删除状态(0,正常,1已删除)',
align: 'center',
dataIndex: 'delFlag',
},
{
title: '备注',
align: 'center',
dataIndex: 'memo',
},
},
{
title: '发送部门(多个使用","分割)',
align:"center",
dataIndex: 'sendDepart'
},
{
title: '删除状态(0,正常,1已删除)',
align:"center",
dataIndex: 'delFlag'
},
{
title: '备注',
align:"center",
dataIndex: 'memo'
},
];
//查询数据
export const searchFormSchema: FormSchema[] = [
];
export const searchFormSchema: FormSchema[] = [];
//表单数据
export const formSchema: FormSchema[] = [
{
label: '标题',
field: 'titile',
component: 'Input',
},
{
label: '摘要',
field: 'msgAbstract',
component: 'InputTextArea',
},
{
label: '内容',
field: 'msgContent',
component: 'InputTextArea',
},
{
label: '类型 0:隐私协议 1:用户通知 2:关于我们 ',
field: 'msgCategory',
component: 'Input',
dynamicRules: ({model,schema}) => {
return [
{ required: true, message: '请输入类型 0:隐私协议 1:用户通知 2:关于我们 !'},
];
},
},
{
label: '发布状态(0未发布,1已发布,2已撤销)',
field: 'sendStatus',
component: 'Input',
},
{
label: '所属角色(1:员工 2: 小助手 3: 专家 4: 医疗点 5: 操作人员 6: 专业人员 7:驻场人员 8:其他 9:医院管理员 10: 医院体检医生 11:医院前台 12: 健康室管理员 13: 健康打卡管理员)',
field: 'personType',
component: 'Input',
},
{
label: '发布时间',
field: 'sendTime',
component: 'DatePicker',
},
{
label: '撤销时间',
field: 'cancelTime',
component: 'DatePicker',
},
{
label: '发送部门(多个使用","分割)',
field: 'sendDepart',
component: 'Input',
},
{
label: '删除状态(0,正常,1已删除)',
field: 'delFlag',
component: 'Input',
},
{
label: '备注',
field: 'memo',
component: 'Input',
},
// TODO 主键隐藏字段,目前写死为ID
{
label: '',
field: 'id',
component: 'Input',
show: false
},
{
label: '标题',
field: 'titile',
component: 'Input',
},
{
label: '摘要',
field: 'msgAbstract',
component: 'InputTextArea',
},
{
label: '内容',
field: 'msgContent',
component: 'InputTextArea',
},
{
label: '类型 0:隐私协议 1:用户通知 2:关于我们 ',
field: 'msgCategory',
component: 'Input',
dynamicRules: ({ model, schema }) => {
return [{ required: true, message: '请输入类型 0:隐私协议 1:用户通知 2:关于我们 !' }];
},
},
{
label: '发布状态(0未发布,1已发布,2已撤销)',
field: 'sendStatus',
component: 'Input',
},
{
label: '所属角色(1:员工 2: 全科医生 3: 专家 4: 医疗点 5: 操作人员 6: 专业人员 7:驻场人员 8:其他 9:医院管理员 10: 医院体检医生 11:医院前台 12: 健康室管理员 13: 健康打卡管理员)',
field: 'personType',
component: 'Input',
},
{
label: '发布时间',
field: 'sendTime',
component: 'DatePicker',
},
{
label: '撤销时间',
field: 'cancelTime',
component: 'DatePicker',
},
{
label: '发送部门(多个使用","分割)',
field: 'sendDepart',
component: 'Input',
},
{
label: '删除状态(0,正常,1已删除)',
field: 'delFlag',
component: 'Input',
},
{
label: '备注',
field: 'memo',
component: 'Input',
},
// TODO 主键隐藏字段,目前写死为ID
{
label: '',
field: 'id',
component: 'Input',
show: false,
},
];
/**
* 流程表单调用这个方法获取formSchema
* @param param
*/
export function getBpmFormSchema(_formData): FormSchema[]{
// 默认和原始表单保持一致 如果流程中配置了权限数据,这里需要单独处理formSchema
return formSchema;
}
* 流程表单调用这个方法获取formSchema
* @param param
*/
export function getBpmFormSchema(_formData): FormSchema[] {
// 默认和原始表单保持一致 如果流程中配置了权限数据,这里需要单独处理formSchema
return formSchema;
}
+1 -1
View File
@@ -666,7 +666,7 @@ export const typeList: UserType[] = [
},
{
key: 3,
title: '小助手',
title: '全科医生',
component: healthHelper,
auth: 'system:consultation:con_helper:list',
},