| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155 |
- /*************** 扫码相关方法 ***************/
- import {
- chemicalAppletSelectStockInfo,
- laboratorySubPassOutIsotopeSubSign,
- } from '@/pages/api/index.js'
- // 公共扫码-方法
- function scanCode(path){
- /*************** H5方法 ***************/
- // #ifdef WEB
- uni.navigateTo({
- url: "/pages/views/scanCodePage?path="+path,
- });
- // #endif
- /*************** 微信方法 ***************/
- // #ifdef MP-WEIXIN
- uni.scanCode({
- onlyFromCamera: true,
- success: function (res) {
- scanTheCodeDataTreating(path,res.result);
- },
- fail: (err) => {
- uni.showToast({
- mask: true,
- icon: "none",
- position: "center",
- title: err,
- duration: 2000
- });
- return false
- }
- });
- // #endif
- }
- //公共扫码-参数处理方法
- function scanTheCodeDataTreating(path,result){
- if(result.indexOf('type') != -1){
- //项目二维码
- let list = result.split("?")[1].split("&");
- let codeData = {};
- list.forEach((item) => {
- codeData[item.split("=")[0]] = item.split("=")[1];
- })
- if (codeData.type == 1 || codeData.type == 2 || codeData.type == 3 || codeData.type == 7 ||
- codeData.type == 8 || codeData.type == 10 ||
- codeData.type == 11 || codeData.type == 12 || codeData.type == 13 || codeData.type == 14) {
- // 基础扫码逻辑
- goCodePage(path,result);
- }else if(codeData.type == 5){
- // 同位素实验室相关-暂时注释
- // laboratorySubPassOutIsotopeSubSignF(path,codeData.subId,result);
- uni.reLaunch({
- url: '/pages/views/saoCode/saoCode?q=' + encodeURIComponent(result)
- });
- }else if(codeData.type == 9){
- chemicalAppletSelectStockInfoF(path,codeData.code);
- }
- }else{
- chemicalAppletSelectStockInfoF(path,result);
- }
- }
- //通用二维码页面
- function goCodePage(path,result){
- if(path == 'home'){
- uni.reLaunch({
- url: '/pages/views/saoCode/saoCode?q=' + encodeURIComponent(result)
- });
- }else{
- uni.showToast({
- mask: true,
- icon: "none",
- position: "center",
- title: "当前页面无法使用该二维码",
- duration: 2000
- });
- setTimeout(() => {
- uni.navigateBack();
- }, 2000);
- }
- }
- //查询是否是同位素实验并且有签退
- async function laboratorySubPassOutIsotopeSubSignF(path,subId,result){
- if(path == 'home'){
- const {
- data
- } = await laboratorySubPassOutIsotopeSubSign({subId:subId});
- if (data.code == 200) {
- if(data.data.isotope){
- let obj = {
- subId:subId,
- subName:data.data.subName,
- passOutId:data.data.passOutId,
- }
- uni.navigateTo({
- url: "/pages_basics/views/photoInspection?item=" + encodeURIComponent(JSON.stringify(obj)),
- });
- }else{
- uni.reLaunch({
- url: '/pages/views/saoCode/saoCode?q=' + encodeURIComponent(result)
- });
- }
- }
- }else{
- uni.showToast({
- mask: true,
- icon: "none",
- position: "center",
- title: "当前页面无法使用该二维码",
- duration: 2000
- });
- setTimeout(() => {
- uni.navigateBack();
- }, 2000);
- }
- }
- //扫码查询-化学品基本信息
- async function chemicalAppletSelectStockInfoF(path,code){
- if(path == 'home'){
- const {
- data
- } = await chemicalAppletSelectStockInfo({tagCode:code});
- if (data.code == 200) {
- if(data.data){
- data.data.code = code;
- //化学品信息
- uni.navigateTo({
- url: "/pages_basics/views/chemicalsInfo/chemicalsInfo?item=" + encodeURIComponent(JSON.stringify(data.data)),
- });
- }else{
- uni.showToast({
- mask: true,
- icon: "none",
- position: "center",
- title: '未找到相关信息,请扫描正确的二维码',
- duration: 2000
- });
- }
- }
- }else{
- uni.showToast({
- mask: true,
- icon: "none",
- position: "center",
- title: "当前页面无法使用该二维码",
- duration: 2000
- });
- setTimeout(() => {
- uni.navigateBack();
- }, 2000);
- }
- }
- export { scanCode , scanTheCodeDataTreating }
|