diff --git a/App.vue b/App.vue
index 25a08d2..d7cde2e 100644
--- a/App.vue
+++ b/App.vue
@@ -20,9 +20,16 @@ export default {
// console.log(JSON.stringify(arg), "登录用户");
if (arg.data.page) {
- uni.reLaunch({
- url: arg.data.page + "?current=" + arg.data.current,
- });
+ if(arg.data.current) {
+ uni.reLaunch({
+ url: arg.data.page + "?current=" + arg.data.current,
+ });
+ } else {
+ uni.reLaunch({
+ url: arg.data.page,
+ });
+ }
+
} else {
uni.reLaunch({
url: "/pages/submit/submit",
diff --git a/components/ClickInput.vue b/components/ClickInput.vue
index 26412aa..606b39e 100644
--- a/components/ClickInput.vue
+++ b/components/ClickInput.vue
@@ -5,7 +5,10 @@
{{_value}}
{{props.placeholder}}
-
+
+
@@ -29,7 +32,11 @@
//自定义取名函数
valueFunc: Function,
placeholder: String,
- disabled: Boolean
+ disabled: Boolean,
+ isColse: {
+ type: Boolean,
+ default: false
+ },
})
const showVal = computed(() => {
@@ -54,7 +61,9 @@
})
const emits = defineEmits(['update:modelValue'])
-
+ const onClose = () => {
+ emits('customEvent')
+ }
diff --git a/components/form/SelectPlus.vue b/components/form/SelectPlus.vue
index a6e4170..7a6ff57 100644
--- a/components/form/SelectPlus.vue
+++ b/components/form/SelectPlus.vue
@@ -23,7 +23,7 @@
-
@@ -191,6 +191,11 @@
const onCancel = () => {
isSearch.value = false;
}
+ const customEventClear = (e) => {
+ console.log('关闭',e)
+ index.value = "";
+ __value.value = "";
+ }
const isSearchFn = () => {
//.box获取class为box的元素,如果使用的id= 'box' 则使用'#box'
// uni.createSelectorQuery().in(this).select('.picker').boundingClientRect(data => {
diff --git a/components/headers/headers.vue b/components/headers/headers.vue
index bcbef1f..f677ac2 100644
--- a/components/headers/headers.vue
+++ b/components/headers/headers.vue
@@ -86,28 +86,35 @@
const arrListCode = [{
code: 'wf66f6451c48b718d0aaf27522',
name: '安全检查',
- path: '/pages/projectEnd/safeSame/index'
+ path: '/pages/projectEnd/safeSame/index',
+ routePath: '/pages/projectEnd/safeSame/list'
}, {
code: "wf67072b923afc947a1a819313",
name: '质量检查',
- path: '/pages/projectEnd/qualityManage/index'
+ path: '/pages/projectEnd/qualityManage/index',
+ routePath: '/pages/projectEnd/qualityManage/list'
},{
code: "wf670a4a6c2384bf3e58f62681",
name: '质量监督',
- path: '/pages/projectEnd/qualitySurveillance/index'
+ path: '/pages/projectEnd/qualitySurveillance/index',
+ routePath: '/pages/projectEnd/qualitySurveillance/list'
},{
code: "wf670735f73afc947a1a819314",
name: '文明施工',
- path: '/pages/projectEnd/civilConstruction/constructionProblemRecord/index'
+ path: '/pages/projectEnd/civilConstruction/constructionProblemRecord/index',
+ routePath: '/pages/projectEnd/civilConstruction/constructionProblemRecord/list'
}]
let pathUrl = "/pages/projectEnd/projectIndex/projectIndex";
console.log('pages', pages)
- const find = arrListCode.find(item => pages[0].options.code && pages[0].options.code.includes(item.code));
- // console.log('prevPage',pages, pages[0].options.code)
+ console.log('prevPage',pages, pages[0].options.code)
+ // routeName
+
+ const find = arrListCode.find(item => pages[0].options.code && pages[0].options.code.includes(item.code) || pages[0].options.routeName && pages[0].options.routeName.includes(item.name));
if(find) {
- pathUrl = find.path;
+ pathUrl = pages[0].options.code ? find.path : find.routePath;
}
+
console.log('pathUrl', pathUrl)
if(window.plus) {
webUni.webView.postMessage({
diff --git a/utils/tool.js b/utils/tool.js
index 045fdde..48cfd32 100644
--- a/utils/tool.js
+++ b/utils/tool.js
@@ -1,15 +1,15 @@
import {
- BASE_URL
+ BASE_URL
} from '@/api/request.js'
//获取文件访问路径
export function getRes(url) {
- if (url) {
- const reg = /^(http:|https:).*/gi
- return reg.test(url) ? url : BASE_URL + '/image/' + url
- } else {
- return url
- }
+ if (url) {
+ const reg = /^(http:|https:).*/gi
+ return reg.test(url) ? url : BASE_URL + '/image/' + url
+ } else {
+ return url
+ }
}
/**
@@ -19,194 +19,194 @@ export function getRes(url) {
* @returns {(function(): void)|*}
*/
export function debounce(call, cycle = 800) {
- var timer = null; // 创建一个用来存放定时器的变量
- let func = call
- return function(...args) {
- clearTimeout(timer); //只要触发就清除
- timer = setTimeout(() => {
- func.apply(this, args);
- }, cycle);
- };
+ var timer = null; // 创建一个用来存放定时器的变量
+ let func = call
+ return function(...args) {
+ clearTimeout(timer); //只要触发就清除
+ timer = setTimeout(() => {
+ func.apply(this, args);
+ }, cycle);
+ };
}
export function getFileSize(size) {
- if (size > 1048576) {
- return (size / 1048576).toFixed(1) + 'MB'
- } else if (size > 1024) {
- return (size / 1024).toFixed(1) + 'KB'
- } else {
- return size + 'B'
- }
+ if (size > 1048576) {
+ return (size / 1048576).toFixed(1) + 'MB'
+ } else if (size > 1024) {
+ return (size / 1024).toFixed(1) + 'KB'
+ } else {
+ return size + 'B'
+ }
}
export function $deepCopy(obj) {
- return JSON.parse(JSON.stringify(obj))
+ return JSON.parse(JSON.stringify(obj))
}
export function $nEmpty(obj) {
- return obj && (obj || '') !== ''
+ return obj && (obj || '') !== ''
}
export function parseNumber(val, precision) {
- if (typeof(val) === 'string') {
- return precision > 0 ? parseFloat(parseFloat(val).toFixed(precision)) : parseInt(val)
- }
- return val
+ if (typeof(val) === 'string') {
+ return precision > 0 ? parseFloat(parseFloat(val).toFixed(precision)) : parseInt(val)
+ }
+ return val
}
//常用文件格式
const fileTypes = {
- pdf: ['pdf'],
- img: ['bmp', 'jpg', 'png', 'tif', 'gif', 'svg', 'psd', 'webp', 'apng'],
- video: ['mp4', 'avi', 'mpeg', 'mkv', 'mov', 'rmvb', 'flv', '3gp', 'wav'],
- word: ['doc', 'docx'],
- excel: ['xls', 'xlsx'],
- ppt: ['ppt', 'pptx'],
- txt: ['txt'],
- zip: ['zip', 'rar', '7z', 'iso'],
+ pdf: ['pdf'],
+ img: ['bmp', 'jpg', 'png', 'tif', 'gif', 'svg', 'psd', 'webp', 'apng'],
+ video: ['mp4', 'avi', 'mpeg', 'mkv', 'mov', 'rmvb', 'flv', '3gp', 'wav'],
+ word: ['doc', 'docx'],
+ excel: ['xls', 'xlsx'],
+ ppt: ['ppt', 'pptx'],
+ txt: ['txt'],
+ zip: ['zip', 'rar', '7z', 'iso'],
}
const fileTypeMap = new Map()
for (const key of Object.keys(fileTypes)) {
- fileTypes[key].forEach(v => fileTypeMap.set(v, key))
+ fileTypes[key].forEach(v => fileTypeMap.set(v, key))
}
/**
* 从文件名获取文件对应图标
* @param {Object} fileName 文件名
*/
export function getFileImgByType(fileName) {
- const type = fileTypeMap.get(fileName.split('.').pop())
- return `/static/image/filetype/${(type || '') === '' ? 'file': type}.png`
+ const type = fileTypeMap.get(fileName.split('.').pop())
+ return `/static/image/filetype/${(type || '') === '' ? 'file': type}.png`
}
//记录下本地文件,方便打开的时候直接取本地
export function saveFileTemp(file) {
- // #ifndef H5
- let fileObj = uni.getStorageSync('localFile')
- if (!fileObj) {
- fileObj = {}
- }
- fileObj[file.name] = file
- uni.setStorageSync('localFile', fileObj)
- // #endif
+ // #ifndef H5
+ let fileObj = uni.getStorageSync('localFile')
+ if (!fileObj) {
+ fileObj = {}
+ }
+ fileObj[file.name] = file
+ uni.setStorageSync('localFile', fileObj)
+ // #endif
}
//记录下本地文件,方便打开的时候直接取本地
export function removeFileTemp(name) {
- // #ifndef H5
- let fileObj = uni.getStorageSync('localFile')
- delete fileObj[name]
- uni.setStorageSync('localFile', fileObj)
- // #endif
+ // #ifndef H5
+ let fileObj = uni.getStorageSync('localFile')
+ delete fileObj[name]
+ uni.setStorageSync('localFile', fileObj)
+ // #endif
}
//下载并打开文件
export function openLocalFile(name, path) {
- //除h5外其他端先看本地有没有,没有就下载到本地再打开,有就直接打开
- // #ifdef H5
- window.open(path)
- // #endif
- // #ifndef H5
- let fileObj = uni.getStorageSync('localFile')
- if (fileObj && fileObj[name]) {
- uni.openDocument({
- filePath: fileObj.path,
- showMenu: true,
- fileType: getFileImgByType(name),
- success: function(res) {
- console.log('打开文档成功');
- }
- });
- return
- }
- uni.downloadFile({
- url: path,
- header: {
- //大家在这里传自定义的token,这里默认wflow的
- Authorization: "Bearer " + uni.getStorageSync('wflow-token'),
- TenantId: JSON.parse(uni.getStorageSync("loginUser")).sn
- },
- success: function(res) {
- uni.showToast({
- icon: 'none',
- title: '文件下载成功'
- });
- //ios中文文件名会报错,需要编码下
- let filePath = uni.getSystemInfoSync().platform === 'ios' ? res.tempFilePath : escape(res
- .tempFilePath)
- uni.saveFile({
- tempFilePath: filePath, //临时路径
- success: function(res) {
- uni.showToast({
- icon: 'none',
- mask: true,
- title: '保存在:' + res.savedFilePath, //保存路径
- duration: 2000,
- });
- // 保存好再打开文件
- setTimeout(() => {
- uni.openDocument({
- filePath: res.savedFilePath,
- showMenu: true,
- fileType: getFileImgByType(name),
- success: function(res) {
- console.log('打开文档成功');
- }
- });
- }, 1000)
- }
- })
- uni.openDocument({
- filePath: filePath,
- showMenu: true,
- fileType: getFileImgByType(name),
- success: function(res) {
- console.log('打开文档成功');
- }
- });
- }
- });
+ //除h5外其他端先看本地有没有,没有就下载到本地再打开,有就直接打开
+ // #ifdef H5
+ window.open(path)
+ // #endif
+ // #ifndef H5
+ let fileObj = uni.getStorageSync('localFile')
+ if (fileObj && fileObj[name]) {
+ uni.openDocument({
+ filePath: fileObj.path,
+ showMenu: true,
+ fileType: getFileImgByType(name),
+ success: function(res) {
+ console.log('打开文档成功');
+ }
+ });
+ return
+ }
+ uni.downloadFile({
+ url: path,
+ header: {
+ //大家在这里传自定义的token,这里默认wflow的
+ Authorization: "Bearer " + uni.getStorageSync('wflow-token'),
+ TenantId: JSON.parse(uni.getStorageSync("loginUser")).sn
+ },
+ success: function(res) {
+ uni.showToast({
+ icon: 'none',
+ title: '文件下载成功'
+ });
+ //ios中文文件名会报错,需要编码下
+ let filePath = uni.getSystemInfoSync().platform === 'ios' ? res.tempFilePath : escape(res
+ .tempFilePath)
+ uni.saveFile({
+ tempFilePath: filePath, //临时路径
+ success: function(res) {
+ uni.showToast({
+ icon: 'none',
+ mask: true,
+ title: '保存在:' + res.savedFilePath, //保存路径
+ duration: 2000,
+ });
+ // 保存好再打开文件
+ setTimeout(() => {
+ uni.openDocument({
+ filePath: res.savedFilePath,
+ showMenu: true,
+ fileType: getFileImgByType(name),
+ success: function(res) {
+ console.log('打开文档成功');
+ }
+ });
+ }, 1000)
+ }
+ })
+ uni.openDocument({
+ filePath: filePath,
+ showMenu: true,
+ fileType: getFileImgByType(name),
+ success: function(res) {
+ console.log('打开文档成功');
+ }
+ });
+ }
+ });
- // #endif
+ // #endif
}
//获取表单组件文本值
export function getFormValText(obj) {
- switch (obj.type) {
- case 'DeptPicker':
- case 'GroupPicker':
- case 'UserPicker':
- case 'FileUpload':
- case 'ImageUpload':
- return (obj.value || []).map(v => v.name).join('、');
- case 'TimeRangePicker':
- case 'DateTimeRange':
- case 'SelectPlus':
- case 'MultipleSelect':
- return (obj.value || []).join('、');
- case 'ProcessIndex':
- return (obj.value || []).map(v => v.startUser.name + '-' + v.name).join('、');
- default:
- return obj.value;
- }
+ switch (obj.type) {
+ case 'DeptPicker':
+ case 'GroupPicker':
+ case 'UserPicker':
+ case 'FileUpload':
+ case 'ImageUpload':
+ return (obj.value || []).map(v => v.name).join('、');
+ case 'TimeRangePicker':
+ case 'DateTimeRange':
+ case 'SelectPlus':
+ case 'MultipleSelect':
+ return (obj.value || []).join('、');
+ case 'ProcessIndex':
+ return (obj.value || []).map(v => v.startUser.name + '-' + v.name).join('、');
+ default:
+ return obj.value;
+ }
}
export function showItem(item, val) {
- return !(item.perm === 'R' && isEm(val)) || item.perm === 'H'
+ return !(item.perm === 'R' && isEm(val)) && item.perm !== 'H'
}
function isEm(val) {
- return !$nEmpty(val) ||
- ((val instanceof String) && val.trim() === '') ||
- (Array.isArray(val) && val.length === 0)
+ return !$nEmpty(val) ||
+ ((val instanceof String) && val.trim() === '') ||
+ (Array.isArray(val) && val.length === 0)
}
export function isVideoLink(url) {
- const videoExtensions = ['mp4', 'webm', 'ogg', 'mov', 'avi', 'flv', 'wmv'];
- const extension = url.split('.').pop().toLowerCase();
- return videoExtensions.includes(extension);
+ const videoExtensions = ['mp4', 'webm', 'ogg', 'mov', 'avi', 'flv', 'wmv'];
+ const extension = url.split('.').pop().toLowerCase();
+ return videoExtensions.includes(extension);
}
export function isImageLink(url) {
- // 正则表达式匹配常见的图片文件扩展名
- const imageExtensionsRegex = /\.(jpg|jpeg|png|gif|webp)$/i;
- return imageExtensionsRegex.test(url);
+ // 正则表达式匹配常见的图片文件扩展名
+ const imageExtensionsRegex = /\.(jpg|jpeg|png|gif|webp)$/i;
+ return imageExtensionsRegex.test(url);
}
\ No newline at end of file