爱山东中控台接口对接,医院logo默认图片设置

main
xuechunyuan 3 years ago
parent cc8a62cb0e
commit 90460f09c4
  1. 2
      src/api/hospital.js
  2. BIN
      src/assets/image/hospital_logo.png
  3. 2
      src/main.js
  4. 190
      src/utils/aisdapp.js
  5. 32
      src/views/HomeView.vue
  6. 2
      vue.config.js

@ -28,7 +28,7 @@ export const checkBacklist = (cupCardNo) => {
})
};
//我的预约列表
export const myRecord = (createDept, cupCardNo, current,size) => {
export const myRecord = (createDept, cupCardNo, current, size) => {
return request({
url: '/api/blade-business/apm-record/page',
method: 'get',

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.9 KiB

@ -5,6 +5,7 @@ import store from "./store";
import vant from "vant";
import "vant/lib/index.css";
import GlobalConfig from "./utils/aisdapp";
import VConsole from "vconsole";
let vConsole = new VConsole();
@ -12,6 +13,7 @@ let vConsole = new VConsole();
Vue.use(vant);
Vue.config.productionTip = false;
Vue.prototype.GlobalConfig = GlobalConfig;
new Vue({
router,

@ -1,183 +1,15 @@
import store from "../store";
let urlCreatesign = urldomaincreatesign
let urlGateway = urldomaingateway
const appmark = "sdzwapp"
const appword = "aKd20dbGdFvmuwrt"
let userType = "1" //用户类型 1个人 2法人
const urlCreatesign = urldomaincreatesign
const urlGateway = urldomaingateway
export const appmark = "sdzwapp"
export const appword = "aKd20dbGdFvmuwrt"
/**
* 通过jssdk方法获取APP本地用户票据
*/
export const getUserInfo = (callback) => {
lightAppJssdk.user.getTicket({
success: function (data) {
//成功回调
console.log(JSON.stringify(data))
if (data == "未登录") {
onLoginApp() //APP用户未登录,调用登录页面
} else {
var jsonData = JSON.parse(data)
if (jsonData.retcode == "000000") {
var dataValueObj = JSON.parse(jsonData.data)
var ticket = dataValueObj.ticket //解析出用户票据信息
userType = dataValueObj.usertype //解析保存用户类型(个人法人)
getUserToken(ticket)
}
}
},
fail: function (data) {
//错误返回
console.log(JSON.stringify(data))
}
})
}
const appid = 'cgstjyyjzpzp';
/**
* 使用jssdk调用登录页面
*/
export const onLoginApp = () => {
lightAppJssdk.user.loginapp({
success: function (data) {
if (data == "未登录") {
//取消登录或登录失败,关闭页面
oncloseWindow()
} else {
var dataObj = JSON.parse(data)
if (dataObj.retcode == "000000") {
//登录成功,返回用户的票据和用户类型
var dataValueObj = JSON.parse(dataObj.data)
getUserToken(dataValueObj.ticket) //解析出用户票据信息
userType = jsonData.usertype //解析保存用户类型(个人法人)
} else {
//关闭页面
oncloseWindow()
}
}
},
fail: function (data) {
//关闭页面
oncloseWindow()
}
})
}
const appMode = true;//是否开启爱山东中控台接口调用方式
/**
* 通过用户票据获取用户的令牌数据票据使用一次后失效token时效性较长
*/
export const getUserToken = (ticket) => {
var params = '{"ticket":"' + ticket + '"}'
const interfaceContent = {
app_id: appmark,
servicename: "ticketValidate",
params: params
}
vaildInterfacefn("jisnzjk", "ticketvalidate", JSON.stringify(interfaceContent), "2", "https://" + urlCreatesign, "https://" + urlGateway).then((value) => {
const data = JSON.parse(value)
if (data.retcode == "000000") {
const userToken = JSON.parse(data.data).token
if (userType == "1") {
//个人类型获取用户信息
getUserInfoByToken(userToken)
} else {
//法人类型获取用户信息
findCorUserByToken(userToken)
}
} else {
lightAppJssdk.notification.alert({
title: "提示", //可传空
message: data.msg,
buttonName: "确认",
success: function (data) {
oncloseWindow()
}
})
}
})
}
/**
* 根据令牌获取个人完整信息
*/
export const getUserInfoByToken = (userToken) => {
const params = '{"token":"' + userToken + '"}'
const interfaceContent = {
app_id: appmark,
servicename: "findOutsideUserByToken",
params: params
}
try {
vaildInterfacefn("jisnzjk", "findoutsideuserbytoken", JSON.stringify(interfaceContent), "2", "https://" + urlCreatesign, "https://" + urlGateway).then((value) => {
const data = JSON.parse(value)
if (data.retcode == "000000") {
const userInfo = data.data
sessionStorage.setItem('userInfo',userInfo);
// store.commit('setUserInfo',userInfo);
location.reload();
// const userObj = JSON.parse(userInfo);
// lightAppJssdk.notification.alert({
// title: "提示", //可传空
// message: userObj.name+'/'+userObj.papersnumber,
// buttonName: "确认",
// success: function (data) {
// oncloseWindow()
// }
// })
// document.getElementById("name").innerText = userObj.name
// document.getElementById("cardid").innerText = userObj.papersnumber
// document.getElementById("mobile").innerText = userObj.mobile
} else {
}
})
} catch (error) { }
}
/**
* 根据令牌获取完整法人信息
*/
export const findCorUserByToken = (userToken) => {
try {
const params = '{"token":"' + userToken + '"}'
const interfaceContent = {
app_id: appmark,
servicename: "findCorUserByToken",
params: params
}
vaildInterfacefn("jisnzjk", "findcoruserytoken", JSON.stringify(interfaceContent), "2", "https://" + urlCreatesign, "https://" + urlGateway).then((value) => {
const data = JSON.parse(value)
if (data.retcode == "000000") {
const userInfo = data.data;
sessionStorage.setItem('userInfo',userInfo);
store.commit('setUserInfo',userInfo);
// document.getElementById("userinfo").innerText = userInfo
} else {
}
})
} catch (err) { }
}
/**
* 关闭容器
*/
export const oncloseWindow = () => {
lightAppJssdk.navigation.close({
success: function (data) { },
fail: function (data) { }
})
}
/**
* AES解密
*/
export const Decrypt = (word, key) => {
var key = CryptoJS.enc.Utf8.parse(key) //转为128bit
var srcs = CryptoJS.enc.Hex.parse(word) //转为16进制
var str = CryptoJS.enc.Base64.stringify(srcs) //变为Base64编码的字符串
var decrypt = CryptoJS.AES.decrypt(str, key, {
mode: CryptoJS.mode.ECB,
spadding: CryptoJS.pad.Pkcs7
})
return decrypt.toString(CryptoJS.enc.Utf8)
export default {
appid,
appMode,
urlCreatesign,
urlGateway,
}

@ -3,7 +3,7 @@
<div class="act_shoose">
<div v-for="(item, index) in hospitalList" :key="'hospital' + index" @click="doGuidance(item.id)"
:class="choosedIndex == index ? 'act_btn active' : 'act_btn'">
<img :src="item.imgUrl" v-if="item.imgUrl" />
<img :src="item.imgUrl ? item.imgUrl : require('@/assets/image/hospital_logo.png')" />
<div class="hospital_info">
<div class="hospital_name">{{ item.fullName }}</div>
<div class="hospital_addr">{{ item.remark }}</div>
@ -62,7 +62,7 @@ export default {
if (userInfo == null) {
this.getUserInfo();
}
else{
else {
this.userInfo = userInfo;
}
} else {
@ -73,15 +73,27 @@ export default {
//
queryHosiptal() {
this.$toast.loading({
message:'加载中',
message: '加载中',
duration: 0,
})
if (this.GlobalConfig.appMode) {
vaildInterfacefn("cgstjyyjzpzp", "qdsgajjtjczdhqyylb", JSON.stringify({}), "2", "https://" + this.GlobalConfig.urlCreatesign, "https://" + this.GlobalConfig.urlGateway).then((value) => {
this.$toast.clear();
let retData = JSON.parse(value);
if (retData.code == 200) {
this.hospitalList = retData.data;
}
}, err => {
this.$toast.clear();
})
return;
}
try {
queryHosiptal().then(res => {
this.$toast.clear();
this.hospitalList = res.data;
},err => {
this.$toast.clear();
}, err => {
this.$toast.clear();
})
} catch (error) {
this.$toast.clear();
@ -89,10 +101,10 @@ export default {
},
//
goMyBook() {
if(this.userInfo){
if (this.userInfo) {
this.$router.push({ name: 'MyExam' });
}
else{
else {
this.getUserInfo();
}
},
@ -104,13 +116,13 @@ export default {
doGuidance(id) {
// this.guideShow = true;
// console.log(this.userInfo.papersnumber)
if(this.userInfo){
if (this.userInfo) {
// console.log(this.userInfo.papersnumber);
checkBacklist(this.userInfo.papersnumber).then(res => {
if(res.data){
if (res.data) {
this.errMsg = res.data;
this.isShowError = true;
}else{
} else {
this.$router.push({ name: 'guidance', query: { deptId: id } })
}
})

@ -8,7 +8,7 @@ module.exports = defineConfig({
proxy: {
"/api": {
//本地服务接口地址
target: "http://192.168.1.106",
target: "http://192.168.1.3:8088",
//远程演示服务地址,可用于直接启动项目
// target: 'https://saber.bladex.vip/api',
ws: true,

Loading…
Cancel
Save