diff --git a/resources/assets/js/pages/manage/components/ProjectList.vue b/resources/assets/js/pages/manage/components/ProjectList.vue
index 0a9eba0c..616fd4c5 100644
--- a/resources/assets/js/pages/manage/components/ProjectList.vue
+++ b/resources/assets/js/pages/manage/components/ProjectList.vue
@@ -156,9 +156,9 @@
@@ -695,6 +695,12 @@ export default {
})
},
+ addColumnBlur() {
+ if (this.addColumnName === '') {
+ this.addColumnShow = false
+ }
+ },
+
addColumnSubmit() {
let name = this.addColumnName.trim();
if (name === '') {
@@ -712,6 +718,7 @@ export default {
success: ({ret, data, msg}) => {
if (ret === 1) {
$A.messageSuccess(msg);
+ this.addColumnName = '';
this.projectDetail.project_column.push(data)
} else {
$A.modalError(msg, 301);
diff --git a/resources/assets/js/pages/manage/components/TaskAddSimple.vue b/resources/assets/js/pages/manage/components/TaskAddSimple.vue
index dc35e23f..e6ba9440 100644
--- a/resources/assets/js/pages/manage/components/TaskAddSimple.vue
+++ b/resources/assets/js/pages/manage/components/TaskAddSimple.vue
@@ -17,7 +17,7 @@
-
-
+
{
this.commit('getUserBasic', params);
}, 20);
return;
}
- state.cacheUserBasic["::loading"] = true;
+ state.cacheUserBasic["::load"] = true;
$A.apiAjax({
url: 'users/basic',
data: {
userid: array
},
complete: () => {
- state.cacheUserBasic["::loading"] = false;
+ state.cacheUserBasic["::load"] = false;
typeof complete === "function" && complete()
},
success: ({ret, data, msg}) => {
@@ -195,6 +196,7 @@ export default {
time,
data: item
};
+ state.method.setStorage("cacheUserBasic", state.cacheUserBasic);
this.commit('setUserOnlineStatus', item);
typeof success === "function" && success(item, true)
});
@@ -329,6 +331,7 @@ export default {
dialog: data.dialog,
data: data.data.reverse(),
};
+ state.method.setStorage("cacheDialog", state.cacheDialog);
if (state.dialogId === dialog_id) {
state.dialogDetail = state.cacheDialog[dialog_id].dialog;
state.cacheDialog[dialog_id].data.forEach((item) => {
diff --git a/resources/assets/js/store/state.js b/resources/assets/js/store/state.js
index bb5ffbdc..273fca65 100644
--- a/resources/assets/js/store/state.js
+++ b/resources/assets/js/store/state.js
@@ -49,41 +49,43 @@ const method = {
},
storage(key, value) {
- let keyName = 'state';
+ if (!key) {
+ return;
+ }
+ let keyName = '__state__';
+ if (key.substring(0, 5) === 'cache') {
+ keyName = '__state:Cache__';
+ }
if (typeof value === 'undefined') {
- return this.loadFromlLocal('__::', key, '', '__' + keyName + '__');
+ return this.loadFromlLocal(key, '', keyName);
} else {
- this.savaToLocal('__::', key, value, '__' + keyName + '__');
+ this.savaToLocal(key, value, keyName);
}
},
- savaToLocal(id, key, value, keyName) {
+ savaToLocal(key, value, keyName) {
try {
if (typeof keyName === 'undefined') keyName = '__seller__';
let seller = window.localStorage[keyName];
if (!seller) {
seller = {};
- seller[id] = {};
} else {
seller = JSON.parse(seller);
- if (!seller[id]) {
- seller[id] = {};
- }
}
- seller[id][key] = value;
+ seller[key] = value;
window.localStorage[keyName] = JSON.stringify(seller);
} catch (e) {
}
},
- loadFromlLocal(id, key, def, keyName) {
+ loadFromlLocal(key, def, keyName) {
try {
if (typeof keyName === 'undefined') keyName = '__seller__';
let seller = window.localStorage[keyName];
if (!seller) {
return def;
}
- seller = JSON.parse(seller)[id];
+ seller = JSON.parse(seller);
if (!seller || typeof seller[key] === 'undefined') {
return def;
}
@@ -195,8 +197,8 @@ state.dialogMsgUnread = 0;
state.taskPriority = [];
// 其他
-state.cacheProject = {};
-state.cacheUserBasic = {};
-state.cacheDialog = {};
+state.cacheProject = state.method.getStorageJson("cacheProject");
+state.cacheUserBasic = state.method.getStorageJson("cacheUserBasic");
+state.cacheDialog = state.method.getStorageJson("cacheDialog");
export default state
diff --git a/resources/assets/sass/project-list.scss b/resources/assets/sass/project-list.scss
index 46e342a2..cf887a48 100644
--- a/resources/assets/sass/project-list.scss
+++ b/resources/assets/sass/project-list.scss
@@ -185,6 +185,12 @@
height: 36px;
.ivu-input {
height: 36px;
+ padding: 4px 10px;
+ }
+ .ivu-input-icon {
+ width: 36px;
+ height: 36px;
+ line-height: 36px;
}
}
&.show-input {
@@ -239,7 +245,7 @@
}
.ivu-poptip-popper {
color: #515a6e;
- min-width: 150px;
+ min-width: 130px;
.ivu-poptip-body {
padding: 0;
}
@@ -383,6 +389,8 @@
> li {
list-style: none;
margin-left: -6px;
+ width: 32px;
+ height: 32px;
&:first-child {
margin-left: 0;
}