Ver a proveniência

202104212204

master
teddyhuang há 5 anos
ascendente
cometimento
39ad019256
11 ficheiros alterados com 109 adições e 45 eliminações
  1. +3
    -0
      app/src/components/AccountManage.vue
  2. +49
    -26
      app/src/components/AssetGroup.vue
  3. +3
    -0
      app/src/components/Home.vue
  4. +5
    -4
      app/src/components/Inventory.vue
  5. +22
    -13
      app/src/components/TypeManage.vue
  6. +3
    -1
      src/main/java/com/moze/rms/controller/AssertGroupController.java
  7. +1
    -0
      src/main/java/com/moze/rms/controller/InventoryController.java
  8. +3
    -0
      src/main/java/com/moze/rms/controller/TypeController.java
  9. +2
    -1
      src/main/java/com/moze/rms/dao/AssertDAO.java
  10. +6
    -0
      src/main/java/com/moze/rms/dao/InventoryDAO.java
  11. +12
    -0
      src/main/java/com/moze/rms/dao/TypeDAO.java

+ 3
- 0
app/src/components/AccountManage.vue Ver ficheiro

@@ -254,6 +254,7 @@
delete this.insertItem.tablename;
this.getUsers();
this.close();
alert('已新增');
}
);
},
@@ -263,7 +264,9 @@
Object.keys(this.modifyItem).forEach((key) => {
this.modifyItem[key] = '';
});
alert('已修改');
this.close();

}
);
},


+ 49
- 26
app/src/components/AssetGroup.vue Ver ficheiro

@@ -252,7 +252,7 @@
<v-text-field
v-if="header.text !== '' && header.value !== 'isselect' && isBooleanCol.indexOf(header.value) < 0 && header.value !== 'descript2'"
:label='header.text'
:value="insertColItem[header.value]"
v-model="insertColItem[header.value]"
hint='必填'
v-on:input='oninput(insertColItem, header.value, $event)'
/>
@@ -260,6 +260,7 @@
<v-select
v-if="header.value === 'isselect' && isBooleanCol.indexOf(header.value) < 0"
:label='header.text' hint='必填'
v-model="insertColItem[header.value]"
v-on:input='oninput(insertColItem, header.value, $event)'
:items="selectColItem.isselect"
:item-text="selectColItem.isselect.text"
@@ -269,13 +270,14 @@
<v-select
v-if="header.value && isBooleanCol.indexOf(header.value) >= 0"
:label='header.text' hint='必填'
v-model="insertColItem[header.value]"
v-on:input='oninput(insertColItem, header.value, $event)'
:items="selectColItem.boolean"
:item-text="selectColItem.boolean.text"
:item-value="selectColItem.boolean.value"
/>
<v-btn
v-if="header.value === 'isselect' && insertColItem.isselect === 'true'"
v-if="insertColItem.colname !== 'type' && header.value === 'isselect' && insertColItem.isselect === 'true'"
@click='dialogInsertSelectItem = true'
>
編輯選項
@@ -283,6 +285,7 @@
<!--欄位說明欄位-->
<v-textarea v-if="header.text === '欄位說明'"
:label='header.text' hint='必填'
v-model="insertColItem[header.value]"
v-on:input='oninput(insertColItem, header.value, $event)'
auto-grow
rows="1" />
@@ -412,12 +415,12 @@
:item-text="selectColItem.boolean.text"
:item-value="selectColItem.boolean.value"
/>
<!-- <v-btn-->
<!-- v-if="header.value === 'isselect' && modifyColItem.isselect === 'true'"-->
<!-- @click='dialogModifySelectItem = true'-->
<!-- >-->
<!-- 編輯選項-->
<!-- </v-btn>-->
<v-btn
v-if="modifyColItem.colname !== 'type' && header.value === 'isselect' && modifyColItem.isselect === 'true'"
@click='dialogModifySelectItem = true'
>
編輯選項
</v-btn>
<!--欄位說明欄位-->
<v-textarea v-if="header.text === '欄位說明'"
:label='header.text' hint='必填'
@@ -542,7 +545,7 @@
'tablename': '',
'descript': '',
'colname': '',
'level': null,
// 'level': null,
// 'type': '',
'index': '',
'isselect': '',
@@ -604,7 +607,7 @@
this.getCols();
},
dialogModifySelectItem() {
this.modifySelectItems = [];
},
modifySelectItems() {
console.log(this.modifySelectItems[0]);
@@ -617,7 +620,7 @@
this.getModifySelectItems();
}
this.oldIndex = this.modifyColItem.index;
}
},
},
methods: {
// eslint-disable-next-line no-unused-vars
@@ -652,7 +655,7 @@
}
},
pushModifySelectItem() {
if (this.modifySelectItems.indexOf(this.modifySelectItem) >= 0 || this.modifySelectItem === '' || this.modifyTypeSelectItem === '') {
if (this.modifySelectItems.indexOf(this.modifySelectItem) >= 0 || this.modifySelectItem === '') {
alert('選項不得重複或為空');
} else {
if (this.modifyColItem.colname === 'type') {
@@ -702,9 +705,12 @@
insertCol() {
this.insertColItem.issearch = 'true';
this.insertColItem.isexport = 'true';
this.insertColItem.isrequire = 'true';
console.log(this.insertColItem);
let stop;
for (const key in this.insertColItem) {
if (this.insertColItem[key] === '' && key !== 'tablename') {
if (this.insertColItem[key] === '' && key !== 'tablename' && key !== 'insertSelectItems' && key !== 'modifySelectItems' && key !== 'isselect' && key !== 'descript2') {
alert(key);
alert('所有資料不可為空');
stop = true;
return;
@@ -724,11 +730,13 @@
this.getCols();
this.close();
this.insertSelectItems = [];
delete this.insertColItem.tablename;
delete this.insertColItem.insertselectItems;
Object.keys(this.insertColItem).forEach((key) => {
this.insertColItem[key] = '';
});
// delete this.insertColItem.tablename;
// delete this.insertColItem.insertselectItems;
this.insertColItem = {};
// Object.keys(this.insertColItem).forEach((key) => {
// this.insertColItem[key] = '';
// });
alert('已新增');
}
);

@@ -738,6 +746,8 @@
this.dialogModify = false;
this.dialogNewAssertGroup = false;
this.dialogModifyAssertGroupName = false;
this.insertSelectItems = [];
this.modifySelectItems = [];
},
isDisabled(key) {
const disabledKey = ['id'];
@@ -760,7 +770,10 @@
modifyCol() {
let stop;
for (const key in this.modifyColItem) {
if (this.modifyColItem[key] === '') {
if (this.modifyColItem[key] === '' && key !== 'level'
&& key !== 'insertSelectItems' && key !== 'modifySelectItems'
&& key !== 'oldIndex' && key !== 'type') {
console.log(key);
alert('所有資料不可為空');
stop = true;
return;
@@ -780,6 +793,7 @@
Object.keys(this.modifyColItem).forEach((key) => {
this.modifyColItem[key] = '';
});
alert('已修改');
}
);

@@ -797,9 +811,14 @@
await this.$axios.post(`/assert/assertGroups`, {
assertGroupDescript: this.insertAssertGroupDescript,
assertGroupTablename: this.insertAssertGroupTablename
}).then(() => {
// this.getTabs();
// this.close();
location.reload();
}).catch(() => {
alert('名稱不可重複');
});
await this.getTabs();
this.close();

},
showTabOptionIcon(index) {
this.optionIconShow = index;
@@ -808,16 +827,20 @@
let yes = confirm('確認刪除此群組?');
if (yes) {
await this.$axios.delete(`/assert/assertGroups?tablename=${item.value}`).then(() => {
this.getTabs();
alert('已刪除');
// this.getTabs();
// alert('已刪除');
});
location.reload();
}
},
async modifyAssertGroupName() {
await this.$axios.put(`/assert/assertGroups?tablename=${this.modifyAssertGroup.value}&&newDescript=${this.modifyAssertGroup.text}`).then(() => {
this.getTabs();
alert('已修改');
this.close();
// this.getTabs();
// alert('已修改');
// this.close();
location.reload();
}).catch(() => {
alert('名稱不可重複');
});
},



+ 3
- 0
app/src/components/Home.vue Ver ficheiro

@@ -197,6 +197,9 @@
this.getRoutes();
},
methods: {
log(val) {
alert(val);
},
logout() {
this.$emit("authenticated", {
'username': null,


+ 5
- 4
app/src/components/Inventory.vue Ver ficheiro

@@ -347,7 +347,7 @@
<v-btn
color="blue darken-1"
text
@click="modifyOne(item)"
@click="modifyOne"
>
修改
</v-btn>
@@ -499,11 +499,12 @@
isRequire(key) {
return this.isrequired.indexOf(key) >= 0;
},
modifyOne(item) {
item.tablename = this.tablename;
this.$axios.put(`/inventory?`, item).then(() => {
modifyOne() {
this.modifyItem.tablename = this.tablename;
this.$axios.put(`/inventory?`, this.modifyItem).then(() => {
this.getInventories();
this.close();
alert('已修改');
}
);
},


+ 22
- 13
app/src/components/TypeManage.vue Ver ficheiro

@@ -108,6 +108,7 @@
<!--欄位說明欄位-->
<v-textarea v-if="header.text === '說明' || header.text === '範例'"
:label='header.text' hint='必填'
:value="insertColItem[header.value]"
v-on:input='oninput(insertColItem, header.value, $event)'
auto-grow
rows="1" />
@@ -296,6 +297,21 @@
},
insertCol() {
let stop;
if (this.insertColItem.c && this.insertColItem.c !== '' && isNaN(this.insertColItem.c) ) {
alert('欄位C、I和A須為數字或為空');
stop = true;
return;
}
if (this.insertColItem.i && this.insertColItem.i !== '' && isNaN(this.insertColItem.i) ) {
alert('欄位C、I和A須為數字或為空');
stop = true;
return;
}
if (this.insertColItem.a && this.insertColItem.a !== '' && isNaN(this.insertColItem.a) ) {
alert('欄位C、I和A須為數字或為空');
stop = true;
return;
}
this.cols.forEach((col) => {
if (col.type === this.insertColItem.type) {
alert('項次不可重複');
@@ -309,9 +325,11 @@
this.getCols();
this.close();
delete this.insertColItem.tablename;
Object.keys(this.insertColItem).forEach((key) => {
this.insertColItem[key] = '';
});
this.insertColItem = {};
// Object.keys(this.insertColItem).forEach((key) => {
// this.insertColItem[key] = '';
// });
alert('已新增');
}
);

@@ -321,16 +339,6 @@
this.dialogModify = false;
},
modifyCol() {
// let repatCount = 0;
// this.cols.forEach((col) => {
// if (col.type === this.modifyColItem.type) {
// repatCount++;
// }
// });
// if (repatCount >= 1) {
// alert('項次不可重複');
// return;
// }
this.modifyColItem.tablename = this.assertGroup[this.currentTab].value;
this.modifyColItem.oldId = this.oldId;
this.$axios.put(`/type`, this.modifyColItem).then(() => {
@@ -341,6 +349,7 @@
Object.keys(this.modifyColItem).forEach((key) => {
this.modifyColItem[key] = '';
});
alert('已修改');
}
);
},


+ 3
- 1
src/main/java/com/moze/rms/controller/AssertGroupController.java Ver ficheiro

@@ -98,8 +98,10 @@ public class AssertGroupController {
assertDAO.sortCol2(mappingCol.getOldIndex(), mappingCol.getIndex(), mappingCol.getTablename());

assertDAO.modifyColToMappingCol(mappingCol);
if (!mappingCol.getColname().equals("type")) {
assertDAO.modifySelectItems(mappingCol);
assertDAO.modifyMappingType(mappingCol);
// assertDAO.modifyMappingType(mappingCol);
}

return new JsonResult(StatusCode.SUCCESS, null);
}


+ 1
- 0
src/main/java/com/moze/rms/controller/InventoryController.java Ver ficheiro

@@ -118,6 +118,7 @@ public class InventoryController {
List<MappingCol> mappingCols = mappingColDAO.findByTable(tablename);
inventoryDAO.truncateTable(tablename);
searchDAO.deleteByTablename(tablename);
// inventoryDAO.resetIndex(tablename);
inventoryDAO.importInventories(tablename, mappingCols, data, searchDAO);
f.deleteOnExit();



+ 3
- 0
src/main/java/com/moze/rms/controller/TypeController.java Ver ficheiro

@@ -45,6 +45,9 @@ public class TypeController {
if (type.get("id") != type.get("oldId")) {
typeDAO.sortType1( type.get("oldId").toString(), type.get("id").toString(), (String)type.get("tablename"));
typeDAO.sortType2( type.get("oldId").toString(), type.get("id").toString(), (String)type.get("tablename"));
typeDAO.sortTypeInSelectItem1( type.get("oldId").toString(), type.get("id").toString(), (String)type.get("tablename"));
typeDAO.sortTypeInSelectItem2( type.get("oldId").toString(), type.get("id").toString(), (String)type.get("tablename"));

}
typeDAO.updateType(type);
mappingColDAO.updateType(type.get("type").toString(),type.get("type") + " " + type.get("name"), type.get("tablename").toString(), type.get("id").toString());


+ 2
- 1
src/main/java/com/moze/rms/dao/AssertDAO.java Ver ficheiro

@@ -65,7 +65,8 @@ public interface AssertDAO extends SqlObject {
sql += " [ ] int,";
sql += " C int,";
sql += " I int,";
sql += " A int";
sql += " A int,";
sql += " id int";
sql += ")";

handle.createUpdate(sql).execute();


+ 6
- 0
src/main/java/com/moze/rms/dao/InventoryDAO.java Ver ficheiro

@@ -146,6 +146,12 @@ public interface InventoryDAO extends SqlObject {
return handle.createQuery(sql).mapToMap().list();
}

default void resetIndex(String tablename) {
Handle handle = this.getHandle();
String sql = "DBCC CHECKIDENT ("+ tablename +", RESEED, 0)";
handle.createUpdate(sql).execute();
}

default void importInventories(String tablename, List<MappingCol> mappingCols, List<Map<String, String>> datas, SearchDAO searchDAO) {

Handle handle = this.getHandle();


+ 12
- 0
src/main/java/com/moze/rms/dao/TypeDAO.java Ver ficheiro

@@ -95,6 +95,18 @@ public interface TypeDAO extends SqlObject {
handle.createUpdate(sql).execute();
}

default void sortTypeInSelectItem1(String oldId ,String id, String tablename) {
Handle handle = this.getHandle();
String sql = "update mapping.selectItem set [index] = [index] + 1 where [index] >= " + id + " and [index] < " + oldId + " and tablename = '" +tablename + "' and colname = 'type'";
handle.createUpdate(sql).execute();
}

default void sortTypeInSelectItem2(String oldId ,String id, String tablename) {
Handle handle = this.getHandle();
String sql = "update mapping.selectItem set [index] = [index] - 1 where [index] > " + oldId + " and [index] <= " + id + " and tablename = '" +tablename + "' and colname = 'type'";
handle.createUpdate(sql).execute();
}

default void sortTypeAfterDelete(String id, String tablename) {
Handle handle = this.getHandle();
String sql = "update mapping.mapping_" + tablename + " set id = id - 1 where id > " + id;


Carregando…
Cancelar
Guardar