init
|
@ -0,0 +1,31 @@
|
||||||
|
/*
|
||||||
|
* Eslint config file
|
||||||
|
* Documentation: https://eslint.org/docs/user-guide/configuring/
|
||||||
|
* Install the Eslint extension before using this feature.
|
||||||
|
*/
|
||||||
|
module.exports = {
|
||||||
|
env: {
|
||||||
|
es6: true,
|
||||||
|
browser: true,
|
||||||
|
node: true,
|
||||||
|
},
|
||||||
|
ecmaFeatures: {
|
||||||
|
modules: true,
|
||||||
|
},
|
||||||
|
parserOptions: {
|
||||||
|
ecmaVersion: 2018,
|
||||||
|
sourceType: 'module',
|
||||||
|
},
|
||||||
|
globals: {
|
||||||
|
wx: true,
|
||||||
|
App: true,
|
||||||
|
Page: true,
|
||||||
|
getCurrentPages: true,
|
||||||
|
getApp: true,
|
||||||
|
Component: true,
|
||||||
|
requirePlugin: true,
|
||||||
|
requireMiniProgram: true,
|
||||||
|
},
|
||||||
|
// extends: 'eslint:recommended',
|
||||||
|
rules: {},
|
||||||
|
}
|
|
@ -0,0 +1,2 @@
|
||||||
|
node_modules
|
||||||
|
/miniprogram/miniprogram_npm
|
|
@ -0,0 +1,9 @@
|
||||||
|
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function sysConfig() {
|
||||||
|
return request({
|
||||||
|
url: '/sysConfig',
|
||||||
|
method: 'GET',
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,18 @@
|
||||||
|
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function bindPhone(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/bindPhone',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function bindPhoneList() {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/bindPhoneList',
|
||||||
|
method: 'GET',
|
||||||
|
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,75 @@
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function informationList() {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/staff',
|
||||||
|
method: 'GET',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function informationAdd(data: any) {
|
||||||
|
return request({
|
||||||
|
// url: '/consumer/staff',
|
||||||
|
url:'/consumer/staff/V2',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function informationDelete(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/staff/delete',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function dataRecord(id: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/staff/dataRecord?id=' + id,
|
||||||
|
method: 'GET',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function corrigendaApply(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/corrigendaRecord/apply',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function corrigendaList(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/corrigendaRecord/list',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function updateWithDataId(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/staff/updateWithDataId',
|
||||||
|
method: 'PUT',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function redDotMarkDeal(id: any) {
|
||||||
|
return request({
|
||||||
|
url: `/consumer/staff/redDotMarkDeal?dataId=${id}`,
|
||||||
|
method: "GET"
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function agentApply(data: any) {
|
||||||
|
return request({
|
||||||
|
url: `/consumer/staff/businessNameAuthenticationApply`,
|
||||||
|
method: "POST",
|
||||||
|
data
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
||||||
|
export function businessLinkNameList(data: any) {
|
||||||
|
return request({
|
||||||
|
url: `/consumer/business/businessLinkNameList`,
|
||||||
|
method: "GET",
|
||||||
|
data
|
||||||
|
});
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,55 @@
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function originatorList(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/inspectionRecord/originator/list',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function inspectedList(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/inspectionRecord/inspectedPerson/list',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function deal(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/inspectionRecord/inspectedPerson/deal',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function defaultConfig(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/inspectionRecord/inspectedPerson/defaultConfig',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function defaultConfigFind() {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/inspectionRecord/inspectedPerson/defaultConfigFind',
|
||||||
|
method: 'GET'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function apply(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/inspectionRecord/originator/apply',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function timeCheck() {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/inspectionRecord/originator/timeCheck',
|
||||||
|
method: 'GET'
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,48 @@
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function login(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/commonLogin/login',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function sendSms(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/codeSend',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function userInfo(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer',
|
||||||
|
method: 'GET',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function wxLogin(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/commonLogin/wechat/login',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function realNameAuthentication(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/auth/realNameAuthentication',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function realNameAuthenticationResultCheck() {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/auth/realNameAuthenticationResultCheck',
|
||||||
|
method: 'GET'
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function getOpenId(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/wechat/open/wx/get',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,17 @@
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function pay(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/pay',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function getPayInfo(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/pay',
|
||||||
|
method: 'GET',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,52 @@
|
||||||
|
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function info(data: any) {
|
||||||
|
return request({
|
||||||
|
url: `/phone/info`,
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function list(data: any) {
|
||||||
|
return request({
|
||||||
|
url: `/phone/infoList`,
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function etcData(phone: any) {
|
||||||
|
return request({
|
||||||
|
url: `/phone/electronicCertificateData?phone=${phone}`,
|
||||||
|
method: 'GET',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function evaluateLaunch(data: any) {
|
||||||
|
return request({
|
||||||
|
url: `/phone/evaluateLaunch`,
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function cleanPhoneDate(phone: any) {
|
||||||
|
return request({
|
||||||
|
url: `/phone/cleanPhoneDate?phone=${phone}`,
|
||||||
|
method: 'DELETE',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
export function etcChoose(data: any) {
|
||||||
|
return request({
|
||||||
|
url: `/phone/electronicCertificateChose`,
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function labelStatistics(phone: string) {
|
||||||
|
return request({
|
||||||
|
url: `/phone/labelStatistics?phone=${phone}`,
|
||||||
|
method: 'GET',
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function list(data:any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/questions/list',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,93 @@
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function list(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/report/list',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function certificateList(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/report/electronicCertificate/list',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function visitRecord(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/report/electronicCertificate/visitRecord',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function certificateSave(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/report/electronicCertificate/save',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function certificateDiscard(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/report/electronicCertificate/discard',
|
||||||
|
method: 'GET',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function reportDelete(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/report/reportDelete',
|
||||||
|
method: 'DELETE',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function reportSave(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/report/save',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function reportPreview(data: any) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/report/preview',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function visitReport(id: any) {
|
||||||
|
return request({
|
||||||
|
url: `/consumer/inspectionRecord/originator/visitReport?id=${id}`,
|
||||||
|
method: 'GET',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function certificateDetail(id: any) {
|
||||||
|
return request({
|
||||||
|
url: `/consumer/report/electronicCertificate/info?id=${id}`,
|
||||||
|
method: 'GET',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
||||||
|
export function certificateDetail2(id: any) {
|
||||||
|
return request({
|
||||||
|
url: `/consumer/report/electronicCertificate/visit?id=${id}`,
|
||||||
|
method: 'GET',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function reportCreateDate(id: any) {
|
||||||
|
return request({
|
||||||
|
url: `/consumer/report/reportCreateDate?id=${id}`,
|
||||||
|
method: 'GET',
|
||||||
|
})
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,14 @@
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function codeScanningSuccess(id:any) {
|
||||||
|
return request({
|
||||||
|
url: `/consumer/webSocket/codeScanningSuccess/${id}`,
|
||||||
|
method: 'GET'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
export function codeScanningLogin(id:string) {
|
||||||
|
return request({
|
||||||
|
url: `/consumer/webSocket/codeScanningLogin/${id}`,
|
||||||
|
method: 'GET'
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,11 @@
|
||||||
|
|
||||||
|
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function list(data: any) {
|
||||||
|
return request({
|
||||||
|
url: `/evaluateLabel/list`,
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,10 @@
|
||||||
|
|
||||||
|
import { request } from '../utils/request'
|
||||||
|
|
||||||
|
export function uploadImg(data) {
|
||||||
|
return request({
|
||||||
|
url: '/consumer/commonLogin/upload',
|
||||||
|
method: 'POST',
|
||||||
|
data
|
||||||
|
})
|
||||||
|
}
|
|
@ -0,0 +1,62 @@
|
||||||
|
{
|
||||||
|
"pages": [
|
||||||
|
"pages/index/index",
|
||||||
|
"pages/shareTimeLine/shareTimeLine",
|
||||||
|
"pages/QA/QA",
|
||||||
|
"pages/service/service",
|
||||||
|
"pages/login/login",
|
||||||
|
"pages/pay/pay",
|
||||||
|
"pages/reportDetail/reportDetail",
|
||||||
|
"pages/report/report",
|
||||||
|
"pages/my/my",
|
||||||
|
"pages/searchResult/searchResult",
|
||||||
|
"pages/information/information",
|
||||||
|
"pages/guide/guide",
|
||||||
|
"pages/addPhone/addPhone",
|
||||||
|
"pages/corrigendum/corrigendum",
|
||||||
|
"pages/reportPreview/reportPreview",
|
||||||
|
"pages/generateReport/generateReport",
|
||||||
|
"pages/informationCreate/informationCreate",
|
||||||
|
"pages/informationDetail/informationDetail",
|
||||||
|
"pages/informationEventCreate/informationEventCreate",
|
||||||
|
"pages/informationEdit/informationEdit",
|
||||||
|
"pages/dataRecords/dataRecords",
|
||||||
|
"pages/createReport/createReport",
|
||||||
|
"pages/apply/apply",
|
||||||
|
"pages/inspected/inspected",
|
||||||
|
"pages/inspectedRecords/inspectedRecords",
|
||||||
|
"pages/logs/logs",
|
||||||
|
"pages/applySetting/applySetting",
|
||||||
|
"pages/member/member",
|
||||||
|
"pages/memberPreview/memberPreview",
|
||||||
|
"pages/certification/certification",
|
||||||
|
"pages/certificationResult/certificationResult",
|
||||||
|
"pages/answer/answer",
|
||||||
|
"pages/personal/personal",
|
||||||
|
"pages/visitor/visitor",
|
||||||
|
"pages/certificateCreate/certificateCreate",
|
||||||
|
"pages/privacy/privacy",
|
||||||
|
"pages/agreement/agreement",
|
||||||
|
"pages/errataRecords/errataRecords",
|
||||||
|
"pages/errataDetail/errataDetail",
|
||||||
|
"pages/scanLogin/scanLogin",
|
||||||
|
"pages/scanResult/scanResult",
|
||||||
|
"pages/webView/webView",
|
||||||
|
"pages/question/question",
|
||||||
|
"pages/questionDetail/questionDetail",
|
||||||
|
"pages/whiteList/whiteList",
|
||||||
|
"pages/addAuthName/addAuthName"
|
||||||
|
],
|
||||||
|
"window": {
|
||||||
|
"backgroundTextStyle": "light",
|
||||||
|
"navigationBarBackgroundColor": "#fff",
|
||||||
|
"navigationBarTitleText": "众评",
|
||||||
|
"navigationBarTextStyle": "black"
|
||||||
|
},
|
||||||
|
|
||||||
|
"usingComponents": {
|
||||||
|
"filter": "/components/filter/filter"
|
||||||
|
},
|
||||||
|
"style": "v2",
|
||||||
|
"sitemapLocation": "sitemap.json"
|
||||||
|
}
|
|
@ -0,0 +1 @@
|
||||||
|
/**app.wxss**/
|
|
@ -0,0 +1,212 @@
|
||||||
|
// app.ts
|
||||||
|
import { userInfo, login } from './apis/login'
|
||||||
|
import { getOpenId } from './apis/open'
|
||||||
|
import { pay } from './apis/pay'
|
||||||
|
import { querystrToObj } from './utils/util'
|
||||||
|
import { bindPhoneList } from "./apis/consumer";
|
||||||
|
App<IAppOption>({
|
||||||
|
globalData: {},
|
||||||
|
onLaunch() {
|
||||||
|
const res = wx.getMenuButtonBoundingClientRect()
|
||||||
|
wx.setStorageSync('MenuButtonBoundingClientRect', res)
|
||||||
|
// 展示本地存储能力
|
||||||
|
const logs = wx.getStorageSync('logs') || []
|
||||||
|
logs.unshift(Date.now())
|
||||||
|
wx.setStorageSync('logs', logs)
|
||||||
|
|
||||||
|
// const token = wx.getStorageSync('Authorization')
|
||||||
|
// if (!token) {
|
||||||
|
// wx.reLaunch({
|
||||||
|
// url: '/pages/login/login'
|
||||||
|
// })
|
||||||
|
// }
|
||||||
|
// return
|
||||||
|
// 登录
|
||||||
|
this.login().then(() => {
|
||||||
|
this.globalData.ready = true
|
||||||
|
this.reload()
|
||||||
|
}).catch(() => {
|
||||||
|
this.globalData.ready = true
|
||||||
|
})
|
||||||
|
/*
|
||||||
|
wx.login({
|
||||||
|
success: res => {
|
||||||
|
console.log(res.code)
|
||||||
|
// 发送 res.code 到后台换取 openId, sessionKey, unionId
|
||||||
|
getOpenId({
|
||||||
|
field: res.code
|
||||||
|
}).then((res:any) => {
|
||||||
|
this.globalData.openId = res.d.openId
|
||||||
|
login({
|
||||||
|
openId: res.d.openId,
|
||||||
|
staffType: 'WECHAT'
|
||||||
|
}).then((res:any) => {
|
||||||
|
wx.setStorageSync('Authorization', res.d)
|
||||||
|
this.getUserInfo().then(() => {
|
||||||
|
this.globalData.ready = true
|
||||||
|
this.reload()
|
||||||
|
})
|
||||||
|
}).catch(() => {
|
||||||
|
this.globalData.ready = true
|
||||||
|
wx.reLaunch({
|
||||||
|
url: '/pages/login/login'
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
})
|
||||||
|
*/
|
||||||
|
},
|
||||||
|
onShow(options) {
|
||||||
|
console.log('appShow', options)
|
||||||
|
const { path, query } = options
|
||||||
|
let { q, source } = query
|
||||||
|
if (['pages/apply/apply', 'pages/reportPreview/reportPreview', 'pages/scanLogin/scanLogin'].includes(path)) {
|
||||||
|
let pageQueryStr = ''
|
||||||
|
if (q) {
|
||||||
|
q = decodeURIComponent(q)
|
||||||
|
const queryStr = q.split('?')[1]
|
||||||
|
const queryObj = querystrToObj(decodeURIComponent(querystrToObj(queryStr).query))
|
||||||
|
pageQueryStr = decodeURIComponent(querystrToObj(queryStr).query)
|
||||||
|
source = queryObj.source
|
||||||
|
}
|
||||||
|
const backPage = `/${path}?${pageQueryStr}`
|
||||||
|
console.log(backPage)
|
||||||
|
wx.setStorageSync('QSource', source)
|
||||||
|
wx.setStorageSync('backPage', backPage)
|
||||||
|
} else {
|
||||||
|
wx.removeStorageSync('QSource')
|
||||||
|
wx.removeStorageSync('backPage')
|
||||||
|
}
|
||||||
|
},
|
||||||
|
// 登录
|
||||||
|
login() {
|
||||||
|
console.log('login,app.ts');
|
||||||
|
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
wx.login({
|
||||||
|
success: res => {
|
||||||
|
console.log(res.code)
|
||||||
|
// 发送 res.code 到后台换取 openId, sessionKey, unionId
|
||||||
|
getOpenId({
|
||||||
|
field: res.code
|
||||||
|
}).then((res: any) => {
|
||||||
|
this.globalData.openId = res.d.openId
|
||||||
|
this.globalData.unionId = res.d.unionId
|
||||||
|
login({
|
||||||
|
openId: res.d.openId,
|
||||||
|
// ...res.d,
|
||||||
|
loginType: 1
|
||||||
|
}).then((res: any) => {
|
||||||
|
wx.setStorageSync('Authorization', res.d)
|
||||||
|
// this.getBindPhoneList()
|
||||||
|
bindPhoneList().then(res => {
|
||||||
|
// wx.setStorageSync('accountList', res.d)
|
||||||
|
// this.globalData.accountList = res.d
|
||||||
|
wx.setStorageSync('accountList', res.d)
|
||||||
|
console.log(wx.getStorageSync('userInfo').phone,res.d);
|
||||||
|
|
||||||
|
wx.setStorageSync('userInfo', res.d.find(item => item.phone === wx.getStorageSync('userInfo').phone) || res.d[0])
|
||||||
|
// this.globalData.userInfo = res.d[0]
|
||||||
|
})
|
||||||
|
// this.getUserInfo().then(() => {
|
||||||
|
// resolve(true)
|
||||||
|
// this.getBindPhoneList()
|
||||||
|
// }).catch((err: any) => {
|
||||||
|
// reject(err)
|
||||||
|
// })
|
||||||
|
}).catch((err) => {
|
||||||
|
// this.globalData.ready = true
|
||||||
|
// wx.reLaunch({
|
||||||
|
// url: '/pages/login/login'
|
||||||
|
// })
|
||||||
|
reject(err)
|
||||||
|
})
|
||||||
|
}).catch((err) => {
|
||||||
|
reject(err)
|
||||||
|
})
|
||||||
|
},
|
||||||
|
})
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// getBindPhoneList() {
|
||||||
|
// bindPhoneList().then(res => {
|
||||||
|
// // console.log(res);
|
||||||
|
// wx.setStorageSync('accountList', res.d)
|
||||||
|
// })
|
||||||
|
// },
|
||||||
|
// 获取用户信息, 在登录或开通会员等 用户信息改变时调用
|
||||||
|
getUserInfo() {
|
||||||
|
return userInfo({}).then((res: any) => {
|
||||||
|
this.globalData.userInfo = res.d
|
||||||
|
return res.d
|
||||||
|
})
|
||||||
|
},
|
||||||
|
// 页面重载
|
||||||
|
reload() {
|
||||||
|
const pages = getCurrentPages()
|
||||||
|
const currentPage = pages[pages.length - 1]
|
||||||
|
currentPage.onLoad(currentPage.options)
|
||||||
|
currentPage.onShow()
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* 实名认证校验
|
||||||
|
* @param skip 是否跳转到实名页面
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
certificationVerify(skip = false): boolean {
|
||||||
|
const status = this.globalData.userInfo?.status
|
||||||
|
let val = false
|
||||||
|
if (Number(status) >= 3) val = true
|
||||||
|
if (skip && !val) {
|
||||||
|
wx.navigateTo({
|
||||||
|
url: '/pages/certification/certification'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
return val
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 会员校验
|
||||||
|
* @param skip 是否跳转到购买会员页面
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
memberVerify(skip = false): boolean {
|
||||||
|
const status = this.globalData.userInfo?.status
|
||||||
|
let val = false
|
||||||
|
if (Number(status) === 4) val = true
|
||||||
|
if (skip && !val) {
|
||||||
|
wx.navigateTo({
|
||||||
|
url: '/pages/member/member'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
return val
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* 发起支付
|
||||||
|
* @param payType
|
||||||
|
* @returns
|
||||||
|
*/
|
||||||
|
pay(payType: String) {
|
||||||
|
return new Promise((resolve, reject) => {
|
||||||
|
pay({
|
||||||
|
payType,
|
||||||
|
wxPayApiType: 'JSAPI'
|
||||||
|
}).then((res: any) => {
|
||||||
|
wx.requestPayment({
|
||||||
|
...res.d,
|
||||||
|
success: (res: any) => {
|
||||||
|
resolve(res)
|
||||||
|
},
|
||||||
|
fail: (err: any) => {
|
||||||
|
wx.showToast({
|
||||||
|
icon: 'none',
|
||||||
|
title: '支付失败, 请稍后再试!'
|
||||||
|
})
|
||||||
|
reject(err)
|
||||||
|
}
|
||||||
|
})
|
||||||
|
})
|
||||||
|
})
|
||||||
|
}
|
||||||
|
})
|
After Width: | Height: | Size: 6.1 KiB |
After Width: | Height: | Size: 5.8 KiB |
After Width: | Height: | Size: 2.0 KiB |
After Width: | Height: | Size: 3.7 KiB |
After Width: | Height: | Size: 4.9 KiB |
After Width: | Height: | Size: 301 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 758 B |
After Width: | Height: | Size: 982 B |
After Width: | Height: | Size: 459 B |
After Width: | Height: | Size: 1.6 KiB |
After Width: | Height: | Size: 553 B |
After Width: | Height: | Size: 7.8 KiB |
After Width: | Height: | Size: 15 KiB |
After Width: | Height: | Size: 507 B |
After Width: | Height: | Size: 554 B |
After Width: | Height: | Size: 4.3 KiB |
After Width: | Height: | Size: 3.3 KiB |
After Width: | Height: | Size: 41 KiB |
After Width: | Height: | Size: 13 KiB |
After Width: | Height: | Size: 8.3 KiB |
After Width: | Height: | Size: 3.2 KiB |
After Width: | Height: | Size: 3.2 KiB |
After Width: | Height: | Size: 14 KiB |
After Width: | Height: | Size: 4.0 KiB |
After Width: | Height: | Size: 1.7 KiB |
After Width: | Height: | Size: 420 B |
After Width: | Height: | Size: 8.0 KiB |
After Width: | Height: | Size: 9.4 KiB |
After Width: | Height: | Size: 729 B |
After Width: | Height: | Size: 10 KiB |
After Width: | Height: | Size: 3.2 KiB |
After Width: | Height: | Size: 11 KiB |
After Width: | Height: | Size: 4.6 KiB |
After Width: | Height: | Size: 2.3 KiB |
After Width: | Height: | Size: 1.8 KiB |
After Width: | Height: | Size: 7.6 KiB |
After Width: | Height: | Size: 9.1 KiB |
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {}
|
||||||
|
}
|
|
@ -0,0 +1,87 @@
|
||||||
|
/* components/btn/btn.wxss */
|
||||||
|
$primary: #6571D9;
|
||||||
|
$member: #653E12;
|
||||||
|
|
||||||
|
.btn-cmp {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
border-radius: 44rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.primary {
|
||||||
|
background: $primary;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #FFFFFF;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0 20rpx;
|
||||||
|
|
||||||
|
&.plain {
|
||||||
|
box-sizing: border-box;
|
||||||
|
color: $primary;
|
||||||
|
border: 1rpx solid $primary;
|
||||||
|
background: #FFFFFF;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.primary45 {
|
||||||
|
background: #4B5AE5;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #FFFFFF;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 0 20rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.white {
|
||||||
|
background: #FFFFFF;
|
||||||
|
border: 1rpx solid #CDCDCD;
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
// font-weight: bold;
|
||||||
|
color: #A1A1A1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.default {
|
||||||
|
background: #7A8BFF;
|
||||||
|
border: 1rpx solid #FFFFFF;
|
||||||
|
border-radius: 25rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.default45 {
|
||||||
|
background: #7A8BFF;
|
||||||
|
border: 1rpx solid #FFFFFF;
|
||||||
|
border-radius: 45rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
.info{
|
||||||
|
background: #FFFFFF;
|
||||||
|
color: #6979E8;
|
||||||
|
border-radius: 25rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
}
|
||||||
|
|
||||||
|
.member {
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #653E12;
|
||||||
|
background: #E5C7A3;
|
||||||
|
|
||||||
|
&.plain {
|
||||||
|
box-sizing: border-box;
|
||||||
|
color: #7986FF;
|
||||||
|
border: 1rpx solid #7986FF;
|
||||||
|
background: #FFFFFF;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,48 @@
|
||||||
|
// components/btn/btn.ts
|
||||||
|
Component({
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
type: {
|
||||||
|
type: String,
|
||||||
|
value: 'primary'
|
||||||
|
},
|
||||||
|
plain: {
|
||||||
|
type: Boolean,
|
||||||
|
value: false
|
||||||
|
},
|
||||||
|
width: {
|
||||||
|
type: String,
|
||||||
|
value: '184rpx'
|
||||||
|
},
|
||||||
|
height: {
|
||||||
|
type: String,
|
||||||
|
value: '60rpx'
|
||||||
|
},
|
||||||
|
fontSize: {
|
||||||
|
type: String,
|
||||||
|
value: '24rpx'
|
||||||
|
},
|
||||||
|
bgColor:{
|
||||||
|
type:String,
|
||||||
|
},
|
||||||
|
padding:{
|
||||||
|
type:String,
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,5 @@
|
||||||
|
<!-- components/btn/btn.wxml -->
|
||||||
|
<view class="btn-cmp {{type}} {{plain&&'plain'}}"
|
||||||
|
style="font-size:{{fontSize}};width:{{width}};height:{{height}};background:{{bgColor}};padding:{{padding}}">
|
||||||
|
<slot></slot>
|
||||||
|
</view>
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {}
|
||||||
|
}
|
|
@ -0,0 +1,9 @@
|
||||||
|
/* components/btnClose/btnClose.wxss */
|
||||||
|
.btn_close {
|
||||||
|
width: 26rpx;
|
||||||
|
height: 26rpx;
|
||||||
|
position: absolute;
|
||||||
|
right: 20rpx;
|
||||||
|
top: 20rpx;
|
||||||
|
color: #D8D8D8;
|
||||||
|
}
|
|
@ -0,0 +1,23 @@
|
||||||
|
// components/btnClose/btnClose.ts
|
||||||
|
Component({
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
close(){}
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,4 @@
|
||||||
|
<!--components/btnClose/btnClose.wxml-->
|
||||||
|
<view bindtap="dialogToLoginClose" style="position: absolute;right: 0;width: 60rpx;height: 60rpx;top: 0;">
|
||||||
|
<image class="btn_close" src="/assets/images/searchResult/icon_close.png" ></image>
|
||||||
|
</view>
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {
|
||||||
|
"shadow": "/components/shadow/shadow"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,98 @@
|
||||||
|
/* components/confirm/confirm.wxss */
|
||||||
|
.message-box {
|
||||||
|
width: 558rpx;
|
||||||
|
background: #ffffff;
|
||||||
|
border-radius: 24rpx;
|
||||||
|
box-sizing: border-box;
|
||||||
|
// padding: 68rpx 76rpx;
|
||||||
|
padding-top: 63rpx;
|
||||||
|
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.cancel-icon {
|
||||||
|
position: absolute;
|
||||||
|
right: 10rpx;
|
||||||
|
top: 0;
|
||||||
|
padding: 21rpx;
|
||||||
|
width: 31rpx;
|
||||||
|
height: 31rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.type-icon {
|
||||||
|
width: 121rpx;
|
||||||
|
height: 156rpx;
|
||||||
|
margin-bottom: 15rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
font-size: 28rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #000000;
|
||||||
|
opacity: 0.61;
|
||||||
|
// line-height: 30rpx;
|
||||||
|
margin-bottom: 36rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.message {
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #838383;
|
||||||
|
line-height: 36rpx;
|
||||||
|
padding: 0 52rpx 54rpx 52rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.btns {
|
||||||
|
display: flex;
|
||||||
|
width: 100%;
|
||||||
|
border-top: 1px solid #E9E9E9;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: space-around;
|
||||||
|
height: 98rpx;
|
||||||
|
|
||||||
|
&::after {
|
||||||
|
content: '';
|
||||||
|
border-left: 1px solid #000;
|
||||||
|
position: absolute;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.confirm-btn {
|
||||||
|
// width: 100%;
|
||||||
|
height: 98rpx;
|
||||||
|
line-height: 98rpx;
|
||||||
|
// border-radius: 38rpx;
|
||||||
|
// text-align: center;
|
||||||
|
// background: #3A61B1;
|
||||||
|
width: 100%;
|
||||||
|
font-size: 26rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #3A61B1;
|
||||||
|
// margin-top: 32rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.cancel-btn {
|
||||||
|
// font-size: 26rpx;
|
||||||
|
// font-family: PingFang SC;
|
||||||
|
// font-weight: 500;
|
||||||
|
// color: #C3C3C3;
|
||||||
|
// padding: 15rpx;
|
||||||
|
border-right: 1px solid #E9E9E9;
|
||||||
|
box-sizing: border-box;
|
||||||
|
width: 100%;
|
||||||
|
height: 98rpx;
|
||||||
|
line-height: 98rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #838383;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,67 @@
|
||||||
|
// components/confirm/confirm.ts
|
||||||
|
Component({
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
title: {
|
||||||
|
type: String,
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
message: {
|
||||||
|
type: String,
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
confirmText: {
|
||||||
|
type: String,
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
cancelText: {
|
||||||
|
type: String,
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
confirmShow: {
|
||||||
|
type: Boolean,
|
||||||
|
value: true
|
||||||
|
},
|
||||||
|
cancelShow: {
|
||||||
|
type: Boolean,
|
||||||
|
value: true
|
||||||
|
},
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
visible: false
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
confirm() {
|
||||||
|
this.triggerEvent('confirm')
|
||||||
|
this.hidden()
|
||||||
|
},
|
||||||
|
cencel() {
|
||||||
|
this.triggerEvent('cancel')
|
||||||
|
this.hidden()
|
||||||
|
},
|
||||||
|
close() {
|
||||||
|
this.triggerEvent('close')
|
||||||
|
this.hidden()
|
||||||
|
},
|
||||||
|
show() {
|
||||||
|
this.setData({
|
||||||
|
visible: true
|
||||||
|
})
|
||||||
|
},
|
||||||
|
hidden() {
|
||||||
|
this.setData({
|
||||||
|
visible: false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,17 @@
|
||||||
|
<!--components/confirm/confirm.wxml-->
|
||||||
|
<view wx:if="{{visible}}" class="message-cmp">
|
||||||
|
<shadow>
|
||||||
|
<view class="message-box">
|
||||||
|
<!-- <image src="/assets/images/message/cancel.png" class="cancel-icon" bind:tap="close" /> -->
|
||||||
|
<!-- <image src="/assets/images/message/success.png" class="type-icon" /> -->
|
||||||
|
<view class="title">{{title}}</view>
|
||||||
|
<view class="message">{{message}}</view>
|
||||||
|
<view class="btns">
|
||||||
|
<view class="cancel-btn" bind:tap="cencel">{{cancelText}}</view>
|
||||||
|
<view class="confirm-btn" bind:tap="confirm">{{confirmText}}</view>
|
||||||
|
</view>
|
||||||
|
<!-- <view wx:if="{{confirmShow}}" class="confim-btn" bind:tap="confirm">{{confirmText}}</view> -->
|
||||||
|
<!-- <view wx:if="{{cancelShow}}" class="cancel-btn" bind:tap="cencel">{{cancelText}}</view> -->
|
||||||
|
</view>
|
||||||
|
</shadow>
|
||||||
|
</view>
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {
|
||||||
|
"redDot":"/components/redDot/redDot"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,25 @@
|
||||||
|
/* components/dataSource/dataSource.wxss */
|
||||||
|
.operation {
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 400;
|
||||||
|
color: #2F88DB;
|
||||||
|
text-align: right;
|
||||||
|
margin-left: 68rpx;
|
||||||
|
position: relative;
|
||||||
|
.operationIcon {
|
||||||
|
margin-right: 9rpx;
|
||||||
|
width: 20rpx;
|
||||||
|
height: 22rpx;
|
||||||
|
}
|
||||||
|
.redDot {
|
||||||
|
width: 10rpx;
|
||||||
|
height: 10rpx;
|
||||||
|
display: inline-block;
|
||||||
|
border-radius: 50%;
|
||||||
|
background: red;
|
||||||
|
position: absolute;
|
||||||
|
top: 0px;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
|
@ -0,0 +1,35 @@
|
||||||
|
// components/dataSource/dataSource.ts
|
||||||
|
Component({
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
dataId: {
|
||||||
|
type: String
|
||||||
|
},
|
||||||
|
redDotMark: {
|
||||||
|
type: Boolean,
|
||||||
|
value: false
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
handleRecords(e: WechatMiniprogram.BaseEvent) {
|
||||||
|
console.log(e);
|
||||||
|
|
||||||
|
wx.navigateTo({
|
||||||
|
url: '/pages/dataRecords/dataRecords?id=' + e.currentTarget.dataset.id
|
||||||
|
})
|
||||||
|
},
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,5 @@
|
||||||
|
<!--components/dataSource/dataSource.wxml-->
|
||||||
|
<view class="operation" bindtap="handleRecords" data-id="{{dataId}}">
|
||||||
|
<image src="/assets/images/information/icon_data.png" class="operationIcon"></image>数据记录
|
||||||
|
<redDot redDotMark="{{redDotMark}}"/>
|
||||||
|
</view>
|
|
@ -0,0 +1,8 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {
|
||||||
|
"shadow":"/components/shadow/shadow",
|
||||||
|
"btn":"/components/btn/btn",
|
||||||
|
"btnClose":"/components/btnClose/btnClose"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,113 @@
|
||||||
|
/* components/dialog/dialog.wxss */
|
||||||
|
.dialog_long {
|
||||||
|
background: rgba($color: #000000, $alpha: 0.5);
|
||||||
|
// width: 100%;
|
||||||
|
overflow: auto;
|
||||||
|
height: 100%;
|
||||||
|
// position: fixed;
|
||||||
|
position: absolute;
|
||||||
|
left: 0;
|
||||||
|
top: 0;
|
||||||
|
z-index: 150;
|
||||||
|
|
||||||
|
|
||||||
|
.dialog_box {
|
||||||
|
margin: 180rpx 65rpx;
|
||||||
|
// margin-top: 180rpx 65rpx 0 65rpx;
|
||||||
|
background: #fff;
|
||||||
|
// margin: 65rpx;
|
||||||
|
border-radius: 24rpx;
|
||||||
|
padding: 66rpx;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.dialog_title {
|
||||||
|
text-align: center;
|
||||||
|
margin-bottom: 40rpx;
|
||||||
|
font-size: 28rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #A1A1A1;
|
||||||
|
}
|
||||||
|
|
||||||
|
.dialog_content {
|
||||||
|
|
||||||
|
text {
|
||||||
|
font-size: 28rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #3E3E3E;
|
||||||
|
// margin-bottom: 27rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.timeLine {
|
||||||
|
margin-top: 27rpx;
|
||||||
|
height: 600rpx;
|
||||||
|
overflow:auto;
|
||||||
|
margin-bottom: 20rpx;
|
||||||
|
padding-left: 20rpx;
|
||||||
|
|
||||||
|
.timeLine_item {
|
||||||
|
display: flex;
|
||||||
|
border-left: 1px solid #6471D9;
|
||||||
|
padding-left: 44rpx;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
&:last-child {
|
||||||
|
border-left: 0;
|
||||||
|
}
|
||||||
|
|
||||||
|
.step {
|
||||||
|
background: #E9EBFF;
|
||||||
|
border-radius: 50%;
|
||||||
|
width: 43rpx;
|
||||||
|
height: 43rpx;
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #6471D9;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
margin-right: 24rpx;
|
||||||
|
position: absolute;
|
||||||
|
left: -20rpx;
|
||||||
|
|
||||||
|
// &:not(:first-child) {
|
||||||
|
// &::after {
|
||||||
|
// content: "";
|
||||||
|
// border-left: 1px solid #000;
|
||||||
|
// position: absolute;
|
||||||
|
// height: 100px;
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
|
||||||
|
.timeLine_content {
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #6471D9;
|
||||||
|
flex: 1;
|
||||||
|
padding-bottom: 33rpx;
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
.contentText {
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #C2C2C2;
|
||||||
|
margin-top: 14rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
image {
|
||||||
|
width: 343rpx;
|
||||||
|
height: 452rpx;
|
||||||
|
margin-top: 25rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,54 @@
|
||||||
|
// components/dialog/dialog.ts
|
||||||
|
Component({
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
visible: {
|
||||||
|
type: Boolean,
|
||||||
|
value: false
|
||||||
|
},
|
||||||
|
position: {
|
||||||
|
type: String,
|
||||||
|
value:""
|
||||||
|
},
|
||||||
|
|
||||||
|
title: {
|
||||||
|
type: String,
|
||||||
|
value: '标题'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
close() {
|
||||||
|
console.log('close');
|
||||||
|
|
||||||
|
this.triggerEvent('close')
|
||||||
|
this.hidden()
|
||||||
|
},
|
||||||
|
hidden() {
|
||||||
|
this.setData({
|
||||||
|
visible: false
|
||||||
|
})
|
||||||
|
},
|
||||||
|
goChrivc() {
|
||||||
|
wx.navigateToMiniProgram({
|
||||||
|
appId: 'wx1da91ccb94c17c99',
|
||||||
|
path: 'pages/report/report',
|
||||||
|
success(res) {
|
||||||
|
// 打开成功
|
||||||
|
}
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,64 @@
|
||||||
|
<!--components/dialog/dialog.wxml-->
|
||||||
|
<!-- catchtouchmove="none" -->
|
||||||
|
<view class="dialog_long" wx:if="{{visible}}">
|
||||||
|
<view class="dialog_box">
|
||||||
|
<btnClose bindtap="close" />
|
||||||
|
<view class="dialog_title">提示</view>
|
||||||
|
<view class="dialog_content" bindtap="hidden">
|
||||||
|
<text>您即将进入全国人力资源信息数据验证平台,邀请对方授权个人信息报告,操作流程如下:</text>
|
||||||
|
<view class="timeLine">
|
||||||
|
<view class="timeLine_item">
|
||||||
|
<view class="step">1</view>
|
||||||
|
<view class="timeLine_content">
|
||||||
|
<view>登录小程序</view>
|
||||||
|
<view class="contentText">通过手机号+验证码登录小程序;</view>
|
||||||
|
<image class="invite_pic" src="https://chrivc.obs.cn-north-4.myhuaweicloud.com/68da41b6790743df9c2672c09b4bef7e:invite_pic1.png"></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="timeLine_item">
|
||||||
|
<view class="step">2</view>
|
||||||
|
<view class="timeLine_content">
|
||||||
|
<view>实名认证</view>
|
||||||
|
<view class="contentText">基于国家数据平台的信息安全规范,平台用户均为实名用户,请先完成实名认证。</view>
|
||||||
|
<image class="invite_pic" src="https://chrivc.obs.cn-north-4.myhuaweicloud.com/0658077fbc9c4b2b988200383333e260:invite_pic2.png"></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="timeLine_item" wx:if="{{position==='my'}}">
|
||||||
|
<view class="step">3</view>
|
||||||
|
<view class="timeLine_content">
|
||||||
|
<view>新增个人信息报告</view>
|
||||||
|
<view class="contentText">查看、完善自填数据后,进入信息报告页面,您可根据您的需求选择性勾选数据生成个人信息报告,生成后的个人信息报告不可再次修改。</view>
|
||||||
|
<image class="invite_pic" style="height: 209rpx;" src="./images/step3.png"></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="timeLine_item" wx:else>
|
||||||
|
<view class="step">3</view>
|
||||||
|
<view class="timeLine_content">
|
||||||
|
<view>查验他人</view>
|
||||||
|
<view class="contentText">进入查验他人页面,输入准确的姓名和手机号码,向他人发起实名查验申请,他人同意并授权后即可查看其个人信息报告。</view>
|
||||||
|
<image class="invite_pic" style="height:452rpx;" src="./images/step3-2.png"></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
|
||||||
|
<view class="timeLine_item" wx:if="{{position==='my'}}">
|
||||||
|
<view class="step">4</view>
|
||||||
|
<view class="timeLine_content">
|
||||||
|
<view>给报告添加电子证书</view>
|
||||||
|
<view class="contentText">每份个人信息报告可生成多个授权查验的电子证书,通过电子证书授权允许他人查看个人信息报告。</view>
|
||||||
|
<image class="invite_pic" style="height: 426rpx;" src="./images/step4.png"></image>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<view class="timeLine_item" wx:if="{{position==='my'}}">
|
||||||
|
<view class="step">5</view>
|
||||||
|
<view class="timeLine_content">
|
||||||
|
<view>返回众评,选择证书展示</view>
|
||||||
|
<view class="contentText">完成电子证书授权后,返回众评再次选择想要展示的个人信息报告及对应的授权电子证书即可。</view>
|
||||||
|
<!-- <image class="invite_pic" src="/assets/images/searchResult/invite_pic1.png"></image> -->
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
<btn fontSize="24rpx" width="403rpx" height="64rpx" style="display: flex;justify-content: center;" bindtap="goChrivc">跳转至溯源优才小程序</btn>
|
||||||
|
<!-- </view> -->
|
||||||
|
</view>
|
||||||
|
</view>
|
||||||
|
</view>
|
After Width: | Height: | Size: 233 KiB |
After Width: | Height: | Size: 50 KiB |
After Width: | Height: | Size: 120 KiB |
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {}
|
||||||
|
}
|
|
@ -0,0 +1,14 @@
|
||||||
|
/* components/fileBox/fileBox.wxss */
|
||||||
|
.fileBox {
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #C3C3C3;
|
||||||
|
line-height: 30rpx;
|
||||||
|
|
||||||
|
.icon_file {
|
||||||
|
width: 36rpx;
|
||||||
|
height: 36rpx;
|
||||||
|
margin-right: 9rpx;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,36 @@
|
||||||
|
// components/fileBox/fileBox.ts
|
||||||
|
Component({
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
imgs: {
|
||||||
|
type: Array,
|
||||||
|
value: []
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
index: 0
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
preview() {
|
||||||
|
let temps: { url: any }[] = []
|
||||||
|
this.data.imgs.map((item: any) => {
|
||||||
|
console.log(item);
|
||||||
|
|
||||||
|
temps.push({
|
||||||
|
url: item,
|
||||||
|
})
|
||||||
|
})
|
||||||
|
wx.previewMedia({ sources: temps, current: this.data.index })
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,4 @@
|
||||||
|
<!--components/fileBox/fileBox.wxml-->
|
||||||
|
<view class="fileBox" bindtap="preview" wx:if="{{imgs.length}}">
|
||||||
|
<image class="icon_file" src="/assets/images/reportPreview/icon_file.png"></image>{{imgs.length}}个附件
|
||||||
|
</view>
|
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {}
|
||||||
|
}
|
|
@ -0,0 +1 @@
|
||||||
|
/* components/filter/filter.wxss */
|
|
@ -0,0 +1,58 @@
|
||||||
|
// components/filter/filter.ts
|
||||||
|
import { parseTime, optionsFilter, splitDates, hideInformation } from '../../utils/index'
|
||||||
|
Component({
|
||||||
|
options: {
|
||||||
|
styleIsolation: "shared"
|
||||||
|
},
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
type: {
|
||||||
|
type: String,
|
||||||
|
observer() {
|
||||||
|
this.initData()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
value: {
|
||||||
|
type: String,
|
||||||
|
observer() {
|
||||||
|
this.initData()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
params: {
|
||||||
|
type: Array,
|
||||||
|
value: [],
|
||||||
|
observer() {
|
||||||
|
this.initData()
|
||||||
|
}
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
funs: { parseTime, optionsFilter, splitDates, hideInformation },
|
||||||
|
_value: ''
|
||||||
|
},
|
||||||
|
|
||||||
|
lifetimes: {
|
||||||
|
ready() {
|
||||||
|
this.initData()
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
initData() {
|
||||||
|
const { type, value, params, funs } = this.data
|
||||||
|
this.setData({
|
||||||
|
// @ts-ignore
|
||||||
|
_value: funs[type](value, ...params)
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,2 @@
|
||||||
|
<!--components/filter/filter.wxml-->
|
||||||
|
{{_value}}
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {
|
||||||
|
"shadow": "/components/shadow/shadow"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,156 @@
|
||||||
|
/* components/guide/guide.wxss */
|
||||||
|
.guide-cmp {
|
||||||
|
font-size: 24rpx;
|
||||||
|
// font-weight: bold;
|
||||||
|
// font-family: YouSheBiaoTiHei;
|
||||||
|
// font-weight: 400;
|
||||||
|
color: #FFFFFF;
|
||||||
|
position: fixed;
|
||||||
|
top: 30rpx;
|
||||||
|
right: 0;
|
||||||
|
z-index: 100;
|
||||||
|
// background: #3A61B1;
|
||||||
|
width: 172rpx;
|
||||||
|
height: 50rpx;
|
||||||
|
border: 1px solid #FFFFFF;
|
||||||
|
border-right: 0;
|
||||||
|
border-radius: 25px 0px 0px 25px;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
// border-top-left-radius: 20rpx;
|
||||||
|
// border-bottom-left-radius: 20rpx;
|
||||||
|
display: flex;
|
||||||
|
justify-content: center;
|
||||||
|
align-items: center;
|
||||||
|
// font-style: italic;
|
||||||
|
|
||||||
|
.icon_guideClose {
|
||||||
|
width: 11rpx;
|
||||||
|
height: 11rpx;
|
||||||
|
margin-left: 7rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.guide-shadow {
|
||||||
|
width: 558rpx;
|
||||||
|
// height: 200rpx;
|
||||||
|
border-radius: 24rpx;
|
||||||
|
// background: linear-gradient(#BAC8E4, #FFF 162rpx);
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
padding: 35rpx 50rpx;
|
||||||
|
padding-bottom: 58rpx;
|
||||||
|
position: relative;
|
||||||
|
|
||||||
|
.cancel {
|
||||||
|
position: absolute;
|
||||||
|
top: 0;
|
||||||
|
right: 10rpx;
|
||||||
|
width: 31rpx;
|
||||||
|
height: 31rpx;
|
||||||
|
padding: 21rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.title {
|
||||||
|
font-size: 34rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: bold;
|
||||||
|
margin-bottom: 75rpx;
|
||||||
|
color: #FFFFFF;
|
||||||
|
}
|
||||||
|
|
||||||
|
.font-item {
|
||||||
|
width: 100%;
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #838383;
|
||||||
|
margin-bottom: 30rpx;
|
||||||
|
|
||||||
|
text {
|
||||||
|
color: #3A61B1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn {
|
||||||
|
width: 404rpx;
|
||||||
|
height: 75rpx;
|
||||||
|
line-height: 75rpx;
|
||||||
|
border-radius: 38rpx;
|
||||||
|
text-align: center;
|
||||||
|
font-size: 26rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #FFFFFF;
|
||||||
|
margin-top: 12rpx;
|
||||||
|
background: #3A61B1;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.guide {
|
||||||
|
width: 100%;
|
||||||
|
height: 100%;
|
||||||
|
padding-top: 210rpx;
|
||||||
|
color: #fff;
|
||||||
|
|
||||||
|
.title {
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
swiper {
|
||||||
|
margin-top: 100rpx;
|
||||||
|
height: 1000rpx;
|
||||||
|
text-align: center;
|
||||||
|
}
|
||||||
|
|
||||||
|
.steps {
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
.current {
|
||||||
|
font-size: 48rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.remember {
|
||||||
|
font-size: 24rpx;
|
||||||
|
display: flex;
|
||||||
|
align-items: center;
|
||||||
|
justify-content: center;
|
||||||
|
|
||||||
|
.checkbox {
|
||||||
|
width: 19rpx;
|
||||||
|
height: 19rpx;
|
||||||
|
border-radius: 6rpx;
|
||||||
|
border: 1rpx solid #fff;
|
||||||
|
margin-right: 12rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.btn_close {
|
||||||
|
margin-top: 20rpx;
|
||||||
|
width: 340rpx;
|
||||||
|
height: 69rpx;
|
||||||
|
font-size: 30rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #3A61B1;
|
||||||
|
background: none;
|
||||||
|
border: 3rpx solid #3A61B1;
|
||||||
|
border-radius: 35rpx;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
.icon_search {
|
||||||
|
width: 20rpx;
|
||||||
|
height: 20rpx;
|
||||||
|
margin-right: 8rpx;
|
||||||
|
}
|
||||||
|
|
||||||
|
.my {
|
||||||
|
width: 127rpx;
|
||||||
|
height: 58rpx;
|
||||||
|
background: #6571D9;
|
||||||
|
border-radius: 29rpx 0px 0px 29rpx;
|
||||||
|
border: 0;
|
||||||
|
}
|
|
@ -0,0 +1,76 @@
|
||||||
|
// components/guide/guide.ts
|
||||||
|
Component({
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
realName: {
|
||||||
|
type: Boolean,
|
||||||
|
value: false
|
||||||
|
},
|
||||||
|
title: {
|
||||||
|
type: String,
|
||||||
|
value: '查看我的号码'
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
show: false,
|
||||||
|
current: 1,
|
||||||
|
steps: [{
|
||||||
|
// url: 'https://chrivc.obs.cn-north-4.myhuaweicloud.com/33fc395162ea4ee58483d056627b6217:附件_1660788247.png', height: '778rpx',
|
||||||
|
url: 'https://chrivc.obs.cn-north-4.myhuaweicloud.com/41a16263956d45fda44214e58543d586:附件_1665473077.png', height: '778rpx',
|
||||||
|
},
|
||||||
|
{ url: 'https://chrivc.obs.cn-north-4.myhuaweicloud.com/0fa3a164228247f4839e72a1b3b550d5:附件_1660788307.png', height: '903rpx', },
|
||||||
|
{ url: 'https://chrivc.obs.cn-north-4.myhuaweicloud.com/7b237c62ba7f4981a0bf7f384334fc75:附件_1660788523.png', height: '950rpx', },
|
||||||
|
{ url: 'https://chrivc.obs.cn-north-4.myhuaweicloud.com/b80807ac97fb48dda9c576ae73e1ed1d:附件_1660788465.png', height: '1050rpx', },
|
||||||
|
{ url: 'https://chrivc.obs.cn-north-4.myhuaweicloud.com/cf95856c688642e1ad71d541ba29759f:附件_1660788570.png', height: '1076rpx', },
|
||||||
|
{ url: 'https://chrivc.obs.cn-north-4.myhuaweicloud.com/addf3101aac14c2f877c80e1b3289339:附件_1660788609.png', height: '989rpx', },
|
||||||
|
{ url: 'https://chrivc.obs.cn-north-4.myhuaweicloud.com/ca4c058b91674c9aafe21d5275646392:附件_1660788643.png', height: '909rpx', }
|
||||||
|
],
|
||||||
|
tagShow: true
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
guideShow() {
|
||||||
|
if (!this.data.realName) {
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '/pages/login/login'
|
||||||
|
})
|
||||||
|
} else {
|
||||||
|
wx.redirectTo({
|
||||||
|
url: '/pages/my/my'
|
||||||
|
})
|
||||||
|
}
|
||||||
|
},
|
||||||
|
goSearch() {
|
||||||
|
wx.reLaunch({
|
||||||
|
url: '/pages/index/index'
|
||||||
|
})
|
||||||
|
},
|
||||||
|
guideHide() {
|
||||||
|
this.setData({
|
||||||
|
show: false
|
||||||
|
})
|
||||||
|
},
|
||||||
|
stepChange(e) {
|
||||||
|
const { current } = e.detail
|
||||||
|
this.setData({
|
||||||
|
current: current + 1
|
||||||
|
})
|
||||||
|
},
|
||||||
|
closeTag() {
|
||||||
|
console.log('closeTag');
|
||||||
|
|
||||||
|
this.setData({
|
||||||
|
tagShow: false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,5 @@
|
||||||
|
<!--components/guide/guide.wxml-->
|
||||||
|
<view wx:if="{{title!=='查号码'}}" class="guide-cmp" bind:tap="guideShow">{{title}}</view>
|
||||||
|
<view wx:else class="guide-cmp my" bind:tap="goSearch">
|
||||||
|
<image class="icon_search" src="./images/icon_search.png"></image>查号码
|
||||||
|
</view>
|
After Width: | Height: | Size: 1.2 KiB |
|
@ -0,0 +1,4 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {}
|
||||||
|
}
|
|
@ -0,0 +1 @@
|
||||||
|
/* components/icon/icon.wxss */
|
|
@ -0,0 +1,23 @@
|
||||||
|
// components/icon/icon.ts
|
||||||
|
Component({
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,2 @@
|
||||||
|
<!--components/icon/icon.wxml-->
|
||||||
|
<image src="{{}}"></image>
|
|
@ -0,0 +1,6 @@
|
||||||
|
{
|
||||||
|
"component": true,
|
||||||
|
"usingComponents": {
|
||||||
|
"shadow": "/components/shadow/shadow"
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,62 @@
|
||||||
|
/* components/message/message.wxss */
|
||||||
|
.message-box{
|
||||||
|
width: 558rpx;
|
||||||
|
background: #ffffff;
|
||||||
|
border-radius: 24rpx;
|
||||||
|
box-sizing: border-box;
|
||||||
|
padding: 68rpx 76rpx;
|
||||||
|
|
||||||
|
display: flex;
|
||||||
|
flex-direction: column;
|
||||||
|
align-items: center;
|
||||||
|
|
||||||
|
text-align: center;
|
||||||
|
|
||||||
|
position: relative;
|
||||||
|
.cancel-icon{
|
||||||
|
position: absolute;
|
||||||
|
right: 10rpx;
|
||||||
|
top: 0;
|
||||||
|
padding: 21rpx;
|
||||||
|
width: 31rpx;
|
||||||
|
height: 31rpx;
|
||||||
|
}
|
||||||
|
.type-icon{
|
||||||
|
width: 121rpx;
|
||||||
|
height: 156rpx;
|
||||||
|
margin-bottom: 15rpx;
|
||||||
|
}
|
||||||
|
.title{
|
||||||
|
font-size: 34rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: bold;
|
||||||
|
color: #000000;
|
||||||
|
}
|
||||||
|
.message{
|
||||||
|
font-size: 24rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #838383;
|
||||||
|
margin-top: 20rpx;
|
||||||
|
}
|
||||||
|
.confim-btn{
|
||||||
|
width: 100%;
|
||||||
|
height: 76rpx;
|
||||||
|
line-height: 76rpx;
|
||||||
|
border-radius: 38rpx;
|
||||||
|
text-align: center;
|
||||||
|
background: #3A61B1;
|
||||||
|
font-size: 26rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #FFFFFF;
|
||||||
|
margin-top: 32rpx;
|
||||||
|
}
|
||||||
|
.cancel-btn{
|
||||||
|
font-size: 26rpx;
|
||||||
|
font-family: PingFang SC;
|
||||||
|
font-weight: 500;
|
||||||
|
color: #C3C3C3;
|
||||||
|
padding: 15rpx;
|
||||||
|
}
|
||||||
|
}
|
|
@ -0,0 +1,71 @@
|
||||||
|
// components/message/message.ts
|
||||||
|
Component({
|
||||||
|
/**
|
||||||
|
* 组件的属性列表
|
||||||
|
*/
|
||||||
|
properties: {
|
||||||
|
title: {
|
||||||
|
type: String,
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
message: {
|
||||||
|
type: String,
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
confirmText: {
|
||||||
|
type: String,
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
cancelText: {
|
||||||
|
type: String,
|
||||||
|
value: ''
|
||||||
|
},
|
||||||
|
confirmShow: {
|
||||||
|
type: Boolean,
|
||||||
|
value: true
|
||||||
|
},
|
||||||
|
cancelShow: {
|
||||||
|
type: Boolean,
|
||||||
|
value: true
|
||||||
|
},
|
||||||
|
iconShow: {
|
||||||
|
type: Boolean,
|
||||||
|
value: true
|
||||||
|
}
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的初始数据
|
||||||
|
*/
|
||||||
|
data: {
|
||||||
|
visible: false
|
||||||
|
},
|
||||||
|
|
||||||
|
/**
|
||||||
|
* 组件的方法列表
|
||||||
|
*/
|
||||||
|
methods: {
|
||||||
|
confirm() {
|
||||||
|
this.triggerEvent('confirm')
|
||||||
|
this.hidden()
|
||||||
|
},
|
||||||
|
cencel() {
|
||||||
|
this.triggerEvent('cancel')
|
||||||
|
this.hidden()
|
||||||
|
},
|
||||||
|
close() {
|
||||||
|
this.triggerEvent('close')
|
||||||
|
this.hidden()
|
||||||
|
},
|
||||||
|
show() {
|
||||||
|
this.setData({
|
||||||
|
visible: true
|
||||||
|
})
|
||||||
|
},
|
||||||
|
hidden() {
|
||||||
|
this.setData({
|
||||||
|
visible: false
|
||||||
|
})
|
||||||
|
}
|
||||||
|
}
|
||||||
|
})
|
|
@ -0,0 +1,13 @@
|
||||||
|
<!--components/message/message.wxml-->
|
||||||
|
<view wx:if="{{visible}}" class="message-cmp">
|
||||||
|
<shadow>
|
||||||
|
<view class="message-box">
|
||||||
|
<image src="/assets/images/message/cancel.png" class="cancel-icon" bind:tap="close" />
|
||||||
|
<image wx:if="{{iconShow}}" src="/assets/images/message/success.png" class="type-icon" />
|
||||||
|
<view class="title">{{title}}</view>
|
||||||
|
<view class="message">{{message}}</view>
|
||||||
|
<view wx:if="{{confirmShow}}" class="confim-btn" bind:tap="confirm">{{confirmText}}</view>
|
||||||
|
<view wx:if="{{cancelShow}}" class="cancel-btn" bind:tap="cencel">{{cancelText}}</view>
|
||||||
|
</view>
|
||||||
|
</shadow>
|
||||||
|
</view>
|