123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181 |
- import { getCardList } from './service';
- import { CREATE_CARD_TYPE } from './common';
- import { industryEntry } from "../../../../core/utils";
- export function promisify(func) {
- return function wrapPromisify(args) {
- return new Promise(resolve => {
- func({ ...args,
- success(res) {
- resolve([null, res]);
- },
- fail(err) {
- resolve([err, null]);
- }
- });
- });
- };
- } // 查看pdf
- export function openPdf({
- url
- }) {
- my.showLoading();
- my.downloadFile({
- // 示例 url,并非真实存在
- url,
- success({
- apFilePath
- }) {
- my.openDocument({
- filePath: apFilePath,
- fileType: 'pdf'
- });
- },
- fail: () => {
- my.showToast({
- type: 'none',
- content: '查看失败'
- });
- },
- complete: () => {
- my.hideLoading();
- }
- });
- } // 替换 ***
- // str: 要替换的字符串
- // start: 前面保留几位
- // end: 后面保留几位
- export function replaceStar(str = '', start = 0, end = 0) {
- if (!str) {
- return '';
- }
- const len = str.length;
- if (len <= start + end) {
- return str;
- } // eslint-disable-next-line no-shadow
- return [...str].reduce((str, value, i) => i < start || i > len - end - 1 ? str + value : `${str}*`, '');
- } // 页面跳转,方便后面迁移
- export function navigateTo({
- url,
- ...other
- }) {
- my.navigateTo({
- url: `${industryEntry}/hospital${url}`,
- ...other
- });
- } // 字符串转对象
- export function mapToArray(obj) {
- let parseObj;
- try {
- parseObj = JSON.parse(obj);
- } catch (error) {
- parseObj = {};
- }
- return Object.keys(parseObj || {}).map(item => ({
- key: item,
- value: parseObj[item]
- }));
- } // 获取查询信息
- export async function getCardListRange() {
- const [, result] = await getCardList({
- type: 0,
- pageIndex: 1,
- pageSize: 100
- });
- if (result) {
- return result.list.map(item => ({
- id: item.cardNum,
- name: `${item.name}-${item.cardNum}`,
- isDefault: item.isDefault
- }));
- }
- return [];
- } // 跳转到创建就诊卡
- export const openCardForm = async item => {
- const [, bookingStep] = item.urlQuery.split('=');
- const [, pageUuid] = item.url.split(':');
- if (bookingStep === 'bindCard') {
- history.openPage({
- pageType: 'card-form',
- data: {
- type: CREATE_CARD_TYPE.BIND,
- btnText: '绑定就诊卡',
- back: true,
- pageUuid
- }
- });
- }
- if (bookingStep === 'createCard') {
- history.openPage({
- pageType: 'card-form',
- data: {
- type: CREATE_CARD_TYPE.CREATE,
- btnText: '创建电子就诊卡',
- back: true,
- pageUuid
- }
- });
- }
- }; // 页面跳转
- export const history = (() => {
- const storage = ({
- pageType,
- data
- }) => {
- if (!getApp().globalData.pageTemp) {
- getApp().globalData.pageTemp = {};
- }
- getApp().globalData.pageTemp[pageType] = data;
- };
- return {
- openPage({
- pageType,
- data
- }) {
- storage({
- pageType,
- data
- });
- navigateTo({
- url: `/pages/page-temp/index?pageType=${pageType}`
- });
- },
- replacePage({
- pageType,
- data
- }) {
- storage({
- pageType,
- data
- });
- my.redirectTo({
- url: `${industryEntry}/hospital/pages/page-temp/index?pageType=${pageType}`
- });
- }
- };
- })();
|