-
-
@@ -23,6 +23,9 @@ export default {
},
mixins: [ResizeMixin],
computed: {
+ hideSidebar() {
+ return this.$route.query.isSinglePage
+ },
sidebar() {
return this.$store.state.app.sidebar
},
diff --git a/src/main.js b/src/main.js
index 3be85be..16bfd61 100644
--- a/src/main.js
+++ b/src/main.js
@@ -53,14 +53,21 @@ Vue.config.productionTip = false
import Vant from 'vant'
import 'vant/lib/index.css';
Vue.use(Vant)
+import domZIndex from 'dom-zindex'
+domZIndex.setCurrent(2000)
import CardContainer from '@/layout/CardContainer.vue'
Vue.component('CardContainer', CardContainer)
//moment
import moment from 'moment'
+moment.locale('zh-cn')
Vue.prototype.$moment = moment;
import { setToken,getToken } from "@/utils/auth"
+if(window.top !== window.self) {
+ // 当前页面在iframe中
+ window._IN_IFRAME = true;
+}
if (window.__POWERED_BY_WUJIE__) {
let instance;
window.__WUJIE_MOUNT = () => {
@@ -77,31 +84,12 @@ if (window.__POWERED_BY_WUJIE__) {
window.__WUJIE_UNMOUNT = () => {
instance.$destroy();
};
-}
-else if(window.top !== window.self) {
- // 当前页面在iframe中
- window._IN_IFRAME = true;
-
- setToken(window.decodeURIComponent(getQueryParam('auth_token')))
+} else {
window.MODULE_NAME = getQueryParam('module_name')
new Vue({
router,
store,
render: h => h(App)
}).$mount("#app")
- router.push(getQueryParam('to') || '/')
- // window.addEventListener("message",function (e) {
- // const { module_name, auth_token } = e.data;
- // window.MODULE_NAME = module_name;
- // console.log('token',auth_token)
- //
- // })
-
-}
-else {
- new Vue({
- router,
- store,
- render: h => h(App)
- }).$mount("#app")
}
+
diff --git a/src/permission.js b/src/permission.js
index ab42591..7c0251b 100644
--- a/src/permission.js
+++ b/src/permission.js
@@ -16,6 +16,9 @@ router.beforeEach(async(to, from, next) => {
// set page title
document.title = getPageTitle(to.meta.title)
+ if(to.query.auth_token) {
+ setToken(window.decodeURIComponent(to.query.auth_token))
+ }
// determine whether the user has logged in
const hasToken = getToken()
if (hasToken) {
diff --git a/src/settings.js b/src/settings.js
index ae3c494..c573021 100644
--- a/src/settings.js
+++ b/src/settings.js
@@ -1,6 +1,6 @@
module.exports = {
- title: 'Vue Admin Template',
+ title: '内控管理平台',
/**
* @type {boolean} true | false
diff --git a/src/utils/formBuilder.js b/src/utils/formBuilder.js
index 05b1fca..ca34fb3 100644
--- a/src/utils/formBuilder.js
+++ b/src/utils/formBuilder.js
@@ -18,7 +18,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
if (info?.selection_model) {
options = info.selection_model_items;
} else if (info?.stub) {
- options = info?.stub?.split(/\n/) || [];
+ options = info?.stub?.split(/\r\n/) || [];
}
let options;
if (device === "desktop") {
@@ -617,6 +617,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
field: subField.name,
title: subField.label,
align: "center",
+ 'min-width': '180',
"edit-render": {},
},
scopedSlots: {
@@ -647,7 +648,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
color: "#333",
},
},
- moment(this.form[info.name]).format("YYYY年MM月DD日")
+ this.form[info.name] ? moment(this.form[info.name]).format("YYYY年MM月DD日") : ''
);
break;
case "datetime":
@@ -658,7 +659,7 @@ export default function formBuilder(device, info, h, row, pWrite = false,pReadab
color: "#333",
},
},
- moment(this.form[info.name]).format("YYYY年MM月DD日 HH时mm分ss秒")
+ this.form[info.name] ? moment(this.form[info.name]).format("YYYY年MM月DD日 HH时mm分ss秒") : ''
);
break;
case "select":
diff --git a/src/views/dashboard/index.vue b/src/views/dashboard/index.vue
index 33e5ab6..dd312da 100644
--- a/src/views/dashboard/index.vue
+++ b/src/views/dashboard/index.vue
@@ -1,30 +1,845 @@
-
-
name: {{ name }}
+
+
+
+
+
+
+
+ 去打卡
+
+
+
+
+
+
+
+
{{ $moment().format("dddd") }}
+
{{ weather.weather }}
+
+
+
+
+ {{ weather.temperature }}
+
+ °C
+
+
+ {{ weather.winddirection }}
+ {{ weather.windpower }}级
+
+
+
+
+
+
+
+
+
+
+
+ {{ data.day.split("-")[2] }}
+
+
+
+ {{
+ $moment(getTodayAttendance(data.day).sign_in_at).format(
+ "HH:mm"
+ )
+ }}
+
+
+ {{
+ $moment(
+ getTodayAttendance(data.day).sign_out_at
+ ).format("HH:mm")
+ }}
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+ 常用流程
+
+
+
+
+
+
+
+
+
+
+
+
+
+
{{ item.name }}
+
+
+
+
+
+
+
+
+
+ 待办事项
+
+
+
+
+
+
+
+
+ 设为已读
+ 办理
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/src/views/flow/DesktopForm.vue b/src/views/flow/DesktopForm.vue
index e8450dd..faea2e7 100644
--- a/src/views/flow/DesktopForm.vue
+++ b/src/views/flow/DesktopForm.vue
@@ -96,7 +96,7 @@ export default {
props: {
model: this.form,
'label-position': 'right',
- 'label-width': '80px',
+ 'label-width': '100px',
rules: this.rules,
'inline-message': true
}
diff --git a/src/views/flow/create.vue b/src/views/flow/create.vue
index 7b8fd9c..20b4268 100644
--- a/src/views/flow/create.vue
+++ b/src/views/flow/create.vue
@@ -289,6 +289,39 @@ export default {
};
},
methods: {
+ // 处理url中default_json
+ handleDefaultJSON() {
+ try {
+ const res = JSON.parse(this.$route.query?.default_json)
+ console.log('default_json', res)
+ for (let key in this.$route.query) {
+ if(/^out_(.*)_id/.test(key)) {
+ this.form[key] = this.$route.query[key]
+ }
+ }
+ for (let key in res) {
+ try {
+ let jsonObj = JSON.parse(res[key]);
+ if (this.form.hasOwnProperty(key)) {
+ this.form[key] = jsonObj;
+ }
+ if (this.fileList.hasOwnProperty(key)) {
+ this.fileList[key] = jsonObj.map((i) => ({
+ name: i.name,
+ url: i.url,
+ response: i,
+ }));
+ }
+ } catch (err) {
+ if (this.form.hasOwnProperty(key)) {
+ this.form[key] = res[key];
+ }
+ }
+ }
+ } catch (err) {
+ console.error(err)
+ }
+ },
async print(isLog=false) {
if(isLog) {
const res = await this.$refs['table'].exportData({
@@ -342,7 +375,7 @@ export default {
this.subConfig.get(field.sub_custom_model_id)?.customModel?.fields
);
} else {
- object[field.name] = "";
+ object[field.name] = field.default_value ? field.default_value : "";
}
});
},
@@ -363,7 +396,7 @@ export default {
spinner: "el-icon-loading",
background: "rgba(0, 0, 0, 0.8)",
});
- //路由为detail为详情
+ // 路由为detail为详情
if (/\/detail/.test(this.$route.path) && this.$route.query.flow_id) {
try {
const res = await view(this.$route.query.flow_id);
@@ -435,6 +468,7 @@ export default {
});
this.config = res;
this.generateForm(this.form, fields);
+ this.handleDefaultJSON();
this.form = Object.assign({}, this.form);
loading.close();
} catch (err) {
@@ -463,7 +497,7 @@ export default {
});
this.config = res;
this.generateForm(this.form, fields);
- this.form = Object.assign({}, this.form);
+ this.handleDefaultJSON();
const { data } = res?.flow;
for (let key in data) {
try {
@@ -485,6 +519,7 @@ export default {
}
}
this.fileList = Object.assign({}, this.fileList);
+ this.form = Object.assign({}, this.form);
loading.close();
} catch (err) {
console.error(err);