孕橙试纸小程序插件

简介

孕橙试纸小程序插件可以用来分析试纸,返回试纸的t,c线的位置和分析出来试纸值

演示

插件申请

微信公众平台插件申请

打开https://mp.weixin.qq.com/ ,登录到小程序微信公众平台(登录你的小程序账号,否则看到的界面会不一样),在设置-第三方服务-插件管理下添加插件孕橙试纸插件

搜索输入孕橙试纸插件即可搜索到插件并添加,你也可以点击查看详情了解具体信息

申请成功后即可对接孕橙试纸插件

孕橙saas 认证申请

申请使用可邮件告知你的称呼,联系方式,以及小程序名称,也可以加微信或者打电话进行咨询

1
2
3
邮箱:bd@ikangtai.com
电话:13716387504
微信:qq378115003

技术对接孕橙试纸插件

添加合法域名

开发者登陆到小程序微信公众平台,在设置-开发设置-服务器域名下添加孕橙试纸插件的服务器request合法域名:

  • saas.shecarefertility.com

引入代码插件包

app.json

在app.json中添加plugin,其中version建议使用1.0.2以上

1
2
3
4
5
6
"plugins": {
"myPlugin": {
"version": "1.0.2",
"provider": "wx479777803030f27b"
}
}

小程序页面引入孕橙试纸插件模块

小程序原生集成

page.json
1
2
3
4
5
{
"usingComponents": {
"v-lh-paper-analysis": "plugin://myPlugin/lhPaperAnalysis"
}
}
page.wxml

需保证在一个页面中仅有该插件

1
2
3
4
5
6
<v-lh-paper-analysis
bind:getBase64ForImage="getBase64ForImage"
bind:navigateBack="navigateBack"
bind:confirmSubmit="confirmSubmit"
saasOb="saasOb"
/>
page.js
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
Page({
data: {
saasOb: {
// 裁剪图,保存在小程序的临时路径
// 例:http://tmp/wx5817660dcd0e4962.o6zAJs3rw5P5v5UaQr3Vq53AjESw.3naiQ1doAFjB17c3e652f2e92f482030def684652e68.jpg
cropImage: '',

// 全景图,保存在小程序的临时路径
// 例:http://tmp/wx5817660dcd0e4962.o6zAJs3rw5P5v5UaQr3Vq53AjESw.3naiQ1doAFjB17c3e652f2e92f482030def684652e68.jpg
panoramaImage: '',

// saas申请的saasAppId
saasAppId: '',

// saas申请的saasAppKey
saasAppKey: '',

// 用户的唯一标识
userId: '',

// 试纸时间,形如'2020-01-01 12:00:00'
usingTime: '',

// 相册选择传1,拍照传2
fromSource: 2
}
},
onLoad(options) {
var cropImage = options.cropImage
var panoramaImage = options.panoramaImage
var saasAppId = options.appId
var saasAppKey = options.appKey
var userId = options.userId
var usingTime = options.usingTime
var fromSource = options.fromSource
var saasOb = {
cropImage: cropImage,
panoramaImage: panoramaImage,
userId: userId,
usingTime: usingTime,
saasAppId: saasAppId,
saasAppKey: saasAppKey,
fromSource: fromSource
}
// 当插件检测到saasOb变化的时候,会进行重新分析
this.saasOb = saasOb
},
methods: {
// 因微信插件功能限制,在此需要声明一个图片转base64编码的方法给插件使用
getBase64ForImage(e, success, faile) {
var imgSrc = e.target.imgSrc
var res = wx.getFileSystemManager().readFileSync(imgSrc, 'base64')
e.target.success(res)
},
// 点击返回重拍触发的事件
navigateBack(event) {
console.log('返回重拍')
// 调用方可在此做自定义跳转等
},
// 插件中点击确认提交触发的事件可在此方法接收,返回结果有三:
// valueTLocation:t线的位置,百分比,值在0-1之间,保留四位小数,例:0.4533
// valueCLocation:c线的位置,百分比,值在0-1之间,保留四位小数,例:0.5533
// analysisResultValue: 试纸分析出来的value值,值是0,5,10,15,20,25,45,65的其中之一,例:10
confirmSubmit(event) {
console.log('确认提交' + JSON.stringify(event))
var valueTLocation = event.target.valueTLocation
var valueCLocation = event.target.valueCLocation
var analysisResultValue = event.target.analysisResultValue
}
}

})

mpvue集成

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
<template>
<lh-paper-analysis
@getBase64ForImage="getBase64ForImage"
@navigateBack="navigateBack"
@confirmSubmit="confirmSubmit"
:saasOb="saasOb"
/>
</template>

<script>

export default {
data () {
return {
saasOb: {
// 裁剪图,保存在小程序的临时路径
// 例:http://tmp/wx5817660dcd0e4962.o6zAJs3rw5P5v5UaQr3Vq53AjESw.3naiQ1doAFjB17c3e652f2e92f482030def684652e68.jpg
cropImage: '',

// 全景图,保存在小程序的临时路径
// 例:http://tmp/wx5817660dcd0e4962.o6zAJs3rw5P5v5UaQr3Vq53AjESw.3naiQ1doAFjB17c3e652f2e92f482030def684652e68.jpg
panoramaImage: '',

// saas申请的saasAppId
saasAppId: '',

// saas申请的saasAppKey
saasAppKey: '',

// 用户的唯一标识
userId: '',

// 试纸时间,形如'2020-01-01 12:00:00'
usingTime: '',

// 相册选择传1,拍照传2
fromSource: 2
}
}
},
onLoad(options) {
var cropImage = options.cropImage
var panoramaImage = options.panoramaImage
var saasAppId = options.appId
var saasAppKey = options.appKey
var userId = options.userId
var usingTime = options.usingTime
var fromSource = options.fromSource
var saasOb = {
cropImage: cropImage,
panoramaImage: panoramaImage,
userId: userId,
usingTime: usingTime,
saasAppId: saasAppId,
saasAppKey: saasAppKey,
fromSource: fromSource
}
// 当插件检测到saasOb变化的时候,会进行重新分析
this.saasOb = saasOb
},
methods: {

// 因微信插件功能限制,在此需要声明一个图片转base64编码的方法给插件使用
getBase64ForImage(e, success, faile) {
var imgSrc = e.target.imgSrc
var res = wx.getFileSystemManager().readFileSync(imgSrc, 'base64')
e.target.success(res)
},

// 点击返回重拍触发的事件
navigateBack(event) {
console.log('返回重拍')
// 调用方可在此做自定义跳转等
},

// 插件中点击确认提交触发的事件可在此方法接收,返回结果有三:
// valueTLocation:t线的位置,百分比,值在0-1之间,保留四位小数,例:0.4533
// valueCLocation:c线的位置,百分比,值在0-1之间,保留四位小数,例:0.5533
// analysisResultValue: 试纸分析出来的value值,值是0,5,10,15,20,25,45,65的其中之一,例:10
confirmSubmit(event) {
console.log('确认提交' + JSON.stringify(event))
var valueTLocation = event.target.valueTLocation
var valueCLocation = event.target.valueCLocation
var analysisResultValue = event.target.analysisResultValue
}
}
}
</script>

<style>
</style>