|
|
@@ -0,0 +1,338 @@
|
|
|
+// pages/newCachePage/newCahePage.js
|
|
|
+import cloudApi from "../../apis/cloudApi"
|
|
|
+import {
|
|
|
+ postApi
|
|
|
+} from "../../apis/api"
|
|
|
+import {
|
|
|
+ uploadFile
|
|
|
+} from "../../utils/upload"
|
|
|
+
|
|
|
+Page({
|
|
|
+
|
|
|
+ /**
|
|
|
+ * 页面的初始数据
|
|
|
+ */
|
|
|
+ data: {
|
|
|
+ type: "",
|
|
|
+ file: "",
|
|
|
+ latitude: "",
|
|
|
+ longitude: "",
|
|
|
+ shipName: "",
|
|
|
+ shipMmsi: "",
|
|
|
+ agreeModal: false,
|
|
|
+ agreeText: false,
|
|
|
+ isWxRegister: false
|
|
|
+ },
|
|
|
+ goBack() {
|
|
|
+ wx.redirectTo({
|
|
|
+ url: '/pages/index/index',
|
|
|
+ })
|
|
|
+ },
|
|
|
+ async register() {
|
|
|
+ if (!this.checkout()) return
|
|
|
+ let res = await postApi('/user/wx/register', {
|
|
|
+ userId: wx.getStorageSync('userId'),
|
|
|
+ shipName: this.data.shipName,
|
|
|
+ shipMmsi: this.data.shipMmsi,
|
|
|
+ })
|
|
|
+ console.log(res)
|
|
|
+ if (res.data.status == 0) {
|
|
|
+ let {
|
|
|
+ shipInfo,
|
|
|
+ userInfo
|
|
|
+ } = res.data.result
|
|
|
+
|
|
|
+ let data = {
|
|
|
+ ...shipInfo,
|
|
|
+ ...userInfo
|
|
|
+ }
|
|
|
+ Object.keys(data).forEach(function (key) {
|
|
|
+ wx.setStorageSync(key, data[key])
|
|
|
+ })
|
|
|
+ wx.compressImage({
|
|
|
+ src: wx.getStorageSync('file'),
|
|
|
+ quality: 80, // 压缩质量
|
|
|
+ success: async e => {
|
|
|
+ console.log("图片压缩成功!", e)
|
|
|
+ wx.hideLoading({
|
|
|
+ success: (res) => {},
|
|
|
+ })
|
|
|
+ wx.showLoading({
|
|
|
+ title: '正在上传...',
|
|
|
+ })
|
|
|
+ let res = await uploadFile(e.tempFilePath, {
|
|
|
+ type: 3,
|
|
|
+ userId: wx.getStorageSync('userId'),
|
|
|
+ location: `${this.data.longitude},${this.data.latitude}`
|
|
|
+ })
|
|
|
+ console.log("上传结束", res)
|
|
|
+ if (res.status == 0) {
|
|
|
+ wx.showToast({
|
|
|
+ title: res.msg
|
|
|
+ })
|
|
|
+ wx.setStorageSync('shareImageUrl', res.result.viewUrl)
|
|
|
+ console.log(wx.getStorageSync('shareImageUrl'))
|
|
|
+ wx.downloadFile({
|
|
|
+ url: res.result.viewUrl,
|
|
|
+ success: e => {
|
|
|
+ console.log("下载调用!", e)
|
|
|
+ wx.setStorageSync('cacheImage', e.tempFilePath)
|
|
|
+ wx.saveImageToPhotosAlbum({
|
|
|
+ filePath: e.tempFilePath,
|
|
|
+ success: e => {
|
|
|
+ if (e.errMsg == "saveImageToPhotosAlbum:ok") {
|
|
|
+ wx.showToast({
|
|
|
+ title: '保存成功!',
|
|
|
+ })
|
|
|
+ wx.removeStorageSync('cacheImage')
|
|
|
+ }
|
|
|
+ },
|
|
|
+ fail: e => {
|
|
|
+ console.log("失败44", e)
|
|
|
+ this.setData({
|
|
|
+ authModal: true,
|
|
|
+ modalText: "文件存储"
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ wx.navigateTo({
|
|
|
+ url: '/pages/takePhoto/success/success',
|
|
|
+ })
|
|
|
+ },
|
|
|
+ fail: e => {
|
|
|
+ console.log("失败3", e)
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+
|
|
|
+ } else {
|
|
|
+ wx.showToast({
|
|
|
+ title: res.msg
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ fail: e => {
|
|
|
+ console.log("失败22", e)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+
|
|
|
+ }
|
|
|
+ },
|
|
|
+ checkout() {
|
|
|
+ if (!this.data.shipName) {
|
|
|
+ wx.showToast({
|
|
|
+ title: '请输入船名!',
|
|
|
+ icon: "error"
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ if (!this.data.shipMmsi) {
|
|
|
+ wx.showToast({
|
|
|
+ title: '请输入MMSI!',
|
|
|
+ icon: "error"
|
|
|
+ })
|
|
|
+ return
|
|
|
+ }
|
|
|
+
|
|
|
+ return true
|
|
|
+ },
|
|
|
+ agree() {
|
|
|
+ this.setData({
|
|
|
+ agreeText: false,
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ showAgeeeText() {
|
|
|
+ this.setData({
|
|
|
+ agreeText: true
|
|
|
+ })
|
|
|
+ },
|
|
|
+ hideAgreeText() {
|
|
|
+ this.setData({
|
|
|
+ agreeText: false
|
|
|
+ })
|
|
|
+ },
|
|
|
+ hideAgreeModal() {
|
|
|
+ this.setData({
|
|
|
+ agreeModal: false
|
|
|
+ })
|
|
|
+ },
|
|
|
+ showAgreeModal() {
|
|
|
+ this.setData({
|
|
|
+ agreeModal: true
|
|
|
+ })
|
|
|
+ },
|
|
|
+ async getPhoneNumber(e) {
|
|
|
+ try {
|
|
|
+ if (e.detail.errMsg == "getPhoneNumber:ok") {
|
|
|
+ wx.showLoading({
|
|
|
+ title: '正在登录...',
|
|
|
+ mask: true
|
|
|
+ })
|
|
|
+ let session_key = wx.getStorageSync('session_key')
|
|
|
+ let {
|
|
|
+ result
|
|
|
+ } = await cloudApi("getWxPhoneNumber", {
|
|
|
+ ...e.detail,
|
|
|
+ session_key
|
|
|
+ })
|
|
|
+ let {
|
|
|
+ phone,
|
|
|
+ } = result
|
|
|
+ if (phone) {
|
|
|
+ wx.setStorageSync('phone', phone)
|
|
|
+ try {
|
|
|
+ let res = await postApi('/user/wx/login', {
|
|
|
+ openId: wx.getStorageSync('openId'),
|
|
|
+ phone
|
|
|
+ })
|
|
|
+ console.log(res)
|
|
|
+ if (res.data.status == 0) {
|
|
|
+ let {
|
|
|
+ shipInfo,
|
|
|
+ userInfo
|
|
|
+ } = res.data.result
|
|
|
+
|
|
|
+ let data = {
|
|
|
+ ...shipInfo,
|
|
|
+ ...userInfo
|
|
|
+ }
|
|
|
+ Object.keys(data).forEach(function (key) {
|
|
|
+ wx.setStorageSync(key, data[key])
|
|
|
+ })
|
|
|
+ wx.compressImage({
|
|
|
+ src: wx.getStorageSync('file'),
|
|
|
+ quality: 80, // 压缩质量
|
|
|
+ success: async e => {
|
|
|
+ console.log("图片压缩成功!", e)
|
|
|
+ wx.hideLoading({
|
|
|
+ success: (res) => {},
|
|
|
+ })
|
|
|
+ wx.showLoading({
|
|
|
+ title: '正在上传...',
|
|
|
+ })
|
|
|
+ let res = await uploadFile(e.tempFilePath, {
|
|
|
+ type: 3,
|
|
|
+ userId: wx.getStorageSync('userId'),
|
|
|
+ location: `${this.data.longitude},${this.data.latitude}`
|
|
|
+ })
|
|
|
+ console.log("上传结束", res)
|
|
|
+ if (res.status == 0) {
|
|
|
+ wx.showToast({
|
|
|
+ title: res.msg
|
|
|
+ })
|
|
|
+ wx.setStorageSync('shareImageUrl', res.result.viewUrl)
|
|
|
+ console.log(wx.getStorageSync('shareImageUrl'))
|
|
|
+ wx.downloadFile({
|
|
|
+ url: res.result.viewUrl,
|
|
|
+ success: e => {
|
|
|
+ console.log("下载调用!", e)
|
|
|
+ wx.setStorageSync('cacheImage', e.tempFilePath)
|
|
|
+ wx.saveImageToPhotosAlbum({
|
|
|
+ filePath: e.tempFilePath,
|
|
|
+ success: e => {
|
|
|
+ if (e.errMsg == "saveImageToPhotosAlbum:ok") {
|
|
|
+ wx.showToast({
|
|
|
+ title: '保存成功!',
|
|
|
+ })
|
|
|
+ wx.removeStorageSync('cacheImage')
|
|
|
+ }
|
|
|
+ },
|
|
|
+ fail: e => {
|
|
|
+ console.log("失败4", e)
|
|
|
+ this.setData({
|
|
|
+ authModal: true,
|
|
|
+ modalText: "文件存储"
|
|
|
+ })
|
|
|
+ }
|
|
|
+ })
|
|
|
+ wx.navigateTo({
|
|
|
+ url: '/pages/takePhoto/success/success',
|
|
|
+ })
|
|
|
+ },
|
|
|
+ fail: e => {
|
|
|
+ console.log("失败33", e)
|
|
|
+ }
|
|
|
+ })
|
|
|
+
|
|
|
+
|
|
|
+ } else {
|
|
|
+ wx.showToast({
|
|
|
+ title: res.msg
|
|
|
+ })
|
|
|
+ }
|
|
|
+ },
|
|
|
+ fail: e => {
|
|
|
+ console.log("失败2", e)
|
|
|
+ }
|
|
|
+ })
|
|
|
+ } else {
|
|
|
+ let {
|
|
|
+ userInfo
|
|
|
+ } = res.data.result
|
|
|
+
|
|
|
+ let data = {
|
|
|
+ ...userInfo
|
|
|
+ }
|
|
|
+ Object.keys(data).forEach(function (key) {
|
|
|
+ wx.setStorageSync(key, data[key])
|
|
|
+ })
|
|
|
+ this.setData({
|
|
|
+ isWxRegister: true,
|
|
|
+ agreeModal: false
|
|
|
+ })
|
|
|
+ }
|
|
|
+ } catch (error) {
|
|
|
+ console.log(error)
|
|
|
+ } finally {
|
|
|
+ wx.hideLoading({
|
|
|
+ success: (res) => {},
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+ } else {
|
|
|
+ wx.hideLoading({})
|
|
|
+ wx.showToast({
|
|
|
+ title: '获取手机号失败',
|
|
|
+ duration: 5000
|
|
|
+ })
|
|
|
+ await cloudApi('sendError', {
|
|
|
+ msg: "获取手机号失败"
|
|
|
+ })
|
|
|
+ }
|
|
|
+ } else {
|
|
|
+ wx.showToast({
|
|
|
+ title: '请授权以登录',
|
|
|
+ icon: "error"
|
|
|
+ })
|
|
|
+ await cloudApi('sendError', {
|
|
|
+ msg: "未授权手机号"
|
|
|
+ })
|
|
|
+ }
|
|
|
+ } catch (error) {
|
|
|
+ await cloudApi('sendError', {
|
|
|
+ msg: "全局trycatch",
|
|
|
+ error
|
|
|
+ })
|
|
|
+ }
|
|
|
+
|
|
|
+
|
|
|
+ },
|
|
|
+ /**
|
|
|
+ * 生命周期函数--监听页面加载
|
|
|
+ */
|
|
|
+ onLoad: function (options) {
|
|
|
+ this.setData({
|
|
|
+ type: wx.getStorageSync('type'),
|
|
|
+ file: wx.getStorageSync('file'),
|
|
|
+ latitude: wx.getStorageSync('latitude'),
|
|
|
+ longitude: wx.getStorageSync('longitude')
|
|
|
+ })
|
|
|
+ },
|
|
|
+
|
|
|
+ onShareAppMessage: function () {
|
|
|
+
|
|
|
+ }
|
|
|
+})
|