PMCORE-2600
This commit is contained in:
@@ -12,36 +12,28 @@ export let cases = {
|
||||
todo(data) {
|
||||
return Api.get({
|
||||
service: "TODO_LIST",
|
||||
params: {
|
||||
paged: data.paged
|
||||
},
|
||||
params: data,
|
||||
keys: {}
|
||||
});
|
||||
},
|
||||
draft(data) {
|
||||
return Api.get({
|
||||
service: "DRAFT_LIST",
|
||||
params: {
|
||||
paged: data.paged
|
||||
},
|
||||
params: data,
|
||||
keys: {}
|
||||
});
|
||||
},
|
||||
paused(data) {
|
||||
return Api.get({
|
||||
service: "PAUSED_LIST",
|
||||
params: {
|
||||
paged: data.paged
|
||||
},
|
||||
params: data,
|
||||
keys: {}
|
||||
});
|
||||
},
|
||||
unassigned(data) {
|
||||
return Api.get({
|
||||
service: "UNASSIGNED_LIST",
|
||||
params: {
|
||||
paged: data.paged
|
||||
},
|
||||
params: data,
|
||||
keys: {}
|
||||
});
|
||||
},
|
||||
@@ -95,15 +87,15 @@ export let cases = {
|
||||
window.config.SYS_URI +
|
||||
`appProxy/getNotesList`, params);
|
||||
},
|
||||
pendingtask(data){
|
||||
pendingtask(data) {
|
||||
return axios.get(window.config.SYS_SERVER +
|
||||
'/api/1.0/' +
|
||||
window.config.SYS_WORKSPACE +
|
||||
'/home/' + data.APP_NUMBER + '/pending-tasks', {
|
||||
headers: {
|
||||
'Authorization': 'Bearer ' + window.config.SYS_CREDENTIALS.accessToken
|
||||
}
|
||||
});
|
||||
headers: {
|
||||
'Authorization': 'Bearer ' + window.config.SYS_CREDENTIALS.accessToken
|
||||
}
|
||||
});
|
||||
},
|
||||
start(dt) {
|
||||
var params = new URLSearchParams();
|
||||
@@ -179,7 +171,7 @@ export let casesHeader = {
|
||||
'/home/counters', {
|
||||
headers: {
|
||||
'Authorization': 'Bearer ' + window.config.SYS_CREDENTIALS.accessToken
|
||||
}
|
||||
}
|
||||
});
|
||||
}
|
||||
};
|
||||
|
||||
314
resources/assets/js/components/search/CasesFilter.vue
Normal file
314
resources/assets/js/components/search/CasesFilter.vue
Normal file
File diff suppressed because it is too large
Load Diff
@@ -20,9 +20,11 @@
|
||||
</template>
|
||||
<div>
|
||||
<slot name="body"></slot>
|
||||
<div class="float-right">
|
||||
<b-button @click="onClose" size="sm" variant="danger"> {{$t('ID_CANCEL')}}</b-button>
|
||||
<b-button @click="onSave" size="sm" variant="primary">{{$t('ID_SAVE')}}</b-button>
|
||||
<div class="v-popover-footer">
|
||||
<div class="float-right">
|
||||
<b-button @click="onClose" size="sm" variant="danger"> {{$t('ID_CANCEL')}}</b-button>
|
||||
<b-button @click="onSave" size="sm" variant="success">{{$t('ID_SAVE')}}</b-button>
|
||||
</div>
|
||||
</div>
|
||||
</div>
|
||||
</b-popover>
|
||||
@@ -56,4 +58,8 @@ export default {
|
||||
max-width: 650px !important;
|
||||
min-width: 400px !important;
|
||||
}
|
||||
|
||||
.v-popover-footer{
|
||||
display: flow-root;
|
||||
}
|
||||
</style>
|
||||
@@ -2,7 +2,11 @@
|
||||
<div id="v-draft" ref="v-draft" class="v-container-draft">
|
||||
<button-fleft :data="newCase"></button-fleft>
|
||||
<modal-new-request ref="newRequest"></modal-new-request>
|
||||
|
||||
<CasesFilter
|
||||
:filters="filters"
|
||||
@onRemoveFilter="onRemoveFilter"
|
||||
@onUpdateFilters="onUpdateFilters"
|
||||
/>
|
||||
<v-server-table
|
||||
:data="tableData"
|
||||
:columns="columns"
|
||||
@@ -40,6 +44,7 @@
|
||||
import HeaderCounter from "../components/home/HeaderCounter.vue";
|
||||
import ButtonFleft from "../components/home/ButtonFleft.vue";
|
||||
import ModalNewRequest from "./ModalNewRequest.vue";
|
||||
import CasesFilter from "../components/search/CasesFilter";
|
||||
import TaskCell from "../components/vuetable/TaskCell.vue";
|
||||
import api from "./../api/index";
|
||||
|
||||
@@ -50,6 +55,7 @@ export default {
|
||||
ButtonFleft,
|
||||
ModalNewRequest,
|
||||
TaskCell,
|
||||
CasesFilter,
|
||||
},
|
||||
props: {},
|
||||
data() {
|
||||
@@ -71,7 +77,9 @@ export default {
|
||||
"actions",
|
||||
],
|
||||
tableData: [],
|
||||
filters: {},
|
||||
options: {
|
||||
filterable: false,
|
||||
headings: {
|
||||
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
|
||||
case_title: this.$i18n.t("ID_CASE_TITLE"),
|
||||
@@ -117,13 +125,20 @@ export default {
|
||||
dt,
|
||||
paged,
|
||||
limit = data.limit,
|
||||
start = data.page === 1 ? 0 : limit * (data.page - 1);
|
||||
paged = start + ',' + limit;
|
||||
start = data.page === 1 ? 0 : limit * (data.page - 1),
|
||||
filters = {};
|
||||
paged = start + "," + limit;
|
||||
|
||||
filters = {
|
||||
paged: paged,
|
||||
};
|
||||
|
||||
_.forIn(this.filters, function (item, key) {
|
||||
filters[item.filterVar] = item.value;
|
||||
});
|
||||
return new Promise((resolutionFunc, rejectionFunc) => {
|
||||
api.cases
|
||||
.draft({
|
||||
paged: paged
|
||||
})
|
||||
.draft(filters)
|
||||
.then((response) => {
|
||||
dt = that.formatDataResponse(response.data.data);
|
||||
resolutionFunc({
|
||||
@@ -225,11 +240,20 @@ export default {
|
||||
DEL_INDEX: item.DEL_INDEX,
|
||||
PRO_UID: item.PRO_UID,
|
||||
TAS_UID: item.TAS_UID,
|
||||
APP_NUMBER: item.CASE_NUMBER
|
||||
APP_NUMBER: item.CASE_NUMBER,
|
||||
});
|
||||
that.$emit("onUpdatePage", "case-detail");
|
||||
});
|
||||
},
|
||||
onRemoveFilter(data) {},
|
||||
onUpdateFilters(data) {
|
||||
this.filters = data.params;
|
||||
if (data.refresh) {
|
||||
this.$nextTick(() => {
|
||||
this.$refs["vueTable"].getData();
|
||||
});
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
@@ -2,7 +2,11 @@
|
||||
<div id="v-paused" ref="v-paused" class="v-container-paused">
|
||||
<button-fleft :data="newCase"></button-fleft>
|
||||
<modal-new-request ref="newRequest"></modal-new-request>
|
||||
|
||||
<CasesFilter
|
||||
:filters="filters"
|
||||
@onRemoveFilter="onRemoveFilter"
|
||||
@onUpdateFilters="onUpdateFilters"
|
||||
/>
|
||||
<v-server-table
|
||||
:data="tableData"
|
||||
:columns="columns"
|
||||
@@ -61,6 +65,7 @@
|
||||
import HeaderCounter from "../components/home/HeaderCounter.vue";
|
||||
import ButtonFleft from "../components/home/ButtonFleft.vue";
|
||||
import ModalNewRequest from "./ModalNewRequest.vue";
|
||||
import CasesFilter from "../components/search/CasesFilter";
|
||||
import TaskCell from "../components/vuetable/TaskCell.vue";
|
||||
import ModalUnpauseCase from "./modal/ModalUnpauseCase.vue";
|
||||
import api from "./../api/index";
|
||||
@@ -73,6 +78,7 @@ export default {
|
||||
ModalNewRequest,
|
||||
TaskCell,
|
||||
ModalUnpauseCase,
|
||||
CasesFilter,
|
||||
},
|
||||
props: {},
|
||||
data() {
|
||||
@@ -97,7 +103,9 @@ export default {
|
||||
"actions",
|
||||
],
|
||||
tableData: [],
|
||||
filters: {},
|
||||
options: {
|
||||
filterable: false,
|
||||
headings: {
|
||||
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
|
||||
case_title: this.$i18n.t("ID_CASE_TITLE"),
|
||||
@@ -146,13 +154,20 @@ export default {
|
||||
dt,
|
||||
paged,
|
||||
limit = data.limit,
|
||||
start = data.page === 1 ? 0 : limit * (data.page - 1);
|
||||
paged = start + ',' + limit;
|
||||
start = data.page === 1 ? 0 : limit * (data.page - 1),
|
||||
filters = {};
|
||||
paged = start + "," + limit;
|
||||
|
||||
filters = {
|
||||
paged: paged,
|
||||
};
|
||||
|
||||
_.forIn(this.filters, function (item, key) {
|
||||
filters[item.filterVar] = item.value;
|
||||
});
|
||||
return new Promise((resolutionFunc, rejectionFunc) => {
|
||||
api.cases
|
||||
.paused({
|
||||
paged: paged
|
||||
})
|
||||
.paused(filters)
|
||||
.then((response) => {
|
||||
dt = that.formatDataResponse(response.data.data);
|
||||
resolutionFunc({
|
||||
@@ -239,7 +254,7 @@ export default {
|
||||
DEL_INDEX: item.DEL_INDEX,
|
||||
PRO_UID: item.PRO_UID,
|
||||
TAS_UID: item.TAS_UID,
|
||||
APP_NUMBER: item.CASE_NUMBER
|
||||
APP_NUMBER: item.CASE_NUMBER,
|
||||
});
|
||||
that.$emit("onUpdatePage", "case-detail");
|
||||
});
|
||||
@@ -248,6 +263,15 @@ export default {
|
||||
this.$refs["modal-unpause-case"].data = item;
|
||||
this.$refs["modal-unpause-case"].show();
|
||||
},
|
||||
onRemoveFilter(data) {},
|
||||
onUpdateFilters(data) {
|
||||
this.filters = data.params;
|
||||
if (data.refresh) {
|
||||
this.$nextTick(() => {
|
||||
this.$refs["vueTable"].getData();
|
||||
});
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
@@ -2,7 +2,11 @@
|
||||
<div id="v-todo" ref="v-todo" class="v-container-todo">
|
||||
<button-fleft :data="newCase"></button-fleft>
|
||||
<modal-new-request ref="newRequest"></modal-new-request>
|
||||
|
||||
<CasesFilter
|
||||
:filters="filters"
|
||||
@onRemoveFilter="onRemoveFilter"
|
||||
@onUpdateFilters="onUpdateFilters"
|
||||
/>
|
||||
<v-server-table
|
||||
:data="tableData"
|
||||
:columns="columns"
|
||||
@@ -58,6 +62,7 @@ import HeaderCounter from "../components/home/HeaderCounter.vue";
|
||||
import ButtonFleft from "../components/home/ButtonFleft.vue";
|
||||
import ModalNewRequest from "./ModalNewRequest.vue";
|
||||
import TaskCell from "../components/vuetable/TaskCell.vue";
|
||||
import CasesFilter from "../components/search/CasesFilter";
|
||||
import api from "./../api/index";
|
||||
|
||||
export default {
|
||||
@@ -67,8 +72,8 @@ export default {
|
||||
ButtonFleft,
|
||||
ModalNewRequest,
|
||||
TaskCell,
|
||||
CasesFilter,
|
||||
},
|
||||
props: {},
|
||||
data() {
|
||||
return {
|
||||
newCase: {
|
||||
@@ -91,7 +96,9 @@ export default {
|
||||
"actions",
|
||||
],
|
||||
tableData: [],
|
||||
filters: {},
|
||||
options: {
|
||||
filterable: false,
|
||||
headings: {
|
||||
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
|
||||
case_title: this.$i18n.t("ID_CASE_TITLE"),
|
||||
@@ -139,13 +146,20 @@ export default {
|
||||
dt,
|
||||
paged,
|
||||
limit = data.limit,
|
||||
start = data.page === 1 ? 0 : limit * (data.page - 1);
|
||||
paged = start + ',' + limit;
|
||||
start = data.page === 1 ? 0 : limit * (data.page - 1),
|
||||
filters = {};
|
||||
paged = start + "," + limit;
|
||||
|
||||
filters = {
|
||||
paged: paged,
|
||||
};
|
||||
|
||||
_.forIn(this.filters, function (item, key) {
|
||||
filters[item.filterVar] = item.value;
|
||||
});
|
||||
return new Promise((resolutionFunc, rejectionFunc) => {
|
||||
api.cases
|
||||
.todo({
|
||||
paged: paged
|
||||
})
|
||||
.todo(filters)
|
||||
.then((response) => {
|
||||
dt = that.formatDataResponse(response.data.data);
|
||||
resolutionFunc({
|
||||
@@ -247,11 +261,20 @@ export default {
|
||||
DEL_INDEX: item.DEL_INDEX,
|
||||
PRO_UID: item.PRO_UID,
|
||||
TAS_UID: item.TAS_UID,
|
||||
APP_NUMBER: item.CASE_NUMBER
|
||||
APP_NUMBER: item.CASE_NUMBER,
|
||||
});
|
||||
that.$emit("onUpdatePage", "case-detail");
|
||||
});
|
||||
},
|
||||
onRemoveFilter(data) {},
|
||||
onUpdateFilters(data) {
|
||||
this.filters = data.params;
|
||||
if (data.refresh) {
|
||||
this.$nextTick(() => {
|
||||
this.$refs["vueTable"].getData();
|
||||
});
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
@@ -262,4 +285,7 @@ export default {
|
||||
padding-left: 50px;
|
||||
padding-right: 50px;
|
||||
}
|
||||
.VueTables__limit {
|
||||
display: none;
|
||||
}
|
||||
</style>
|
||||
@@ -2,7 +2,11 @@
|
||||
<div id="v-unassigned" ref="v-unassigned" class="v-container-unassigned">
|
||||
<button-fleft :data="newCase"></button-fleft>
|
||||
<modal-new-request ref="newRequest"></modal-new-request>
|
||||
|
||||
<CasesFilter
|
||||
:filters="filters"
|
||||
@onRemoveFilter="onRemoveFilter"
|
||||
@onUpdateFilters="onUpdateFilters"
|
||||
/>
|
||||
<v-server-table
|
||||
:data="tableData"
|
||||
:columns="columns"
|
||||
@@ -59,6 +63,7 @@ import HeaderCounter from "../components/home/HeaderCounter.vue";
|
||||
import ButtonFleft from "../components/home/ButtonFleft.vue";
|
||||
import ModalNewRequest from "./ModalNewRequest.vue";
|
||||
import TaskCell from "../components/vuetable/TaskCell.vue";
|
||||
import CasesFilter from "../components/search/CasesFilter";
|
||||
import ModalClaimCase from "./modal/ModalClaimCase.vue";
|
||||
import api from "./../api/index";
|
||||
|
||||
@@ -70,6 +75,7 @@ export default {
|
||||
ModalNewRequest,
|
||||
TaskCell,
|
||||
ModalClaimCase,
|
||||
CasesFilter,
|
||||
},
|
||||
props: {},
|
||||
data() {
|
||||
@@ -94,7 +100,9 @@ export default {
|
||||
"actions",
|
||||
],
|
||||
tableData: [],
|
||||
filters: {},
|
||||
options: {
|
||||
filterable: false,
|
||||
headings: {
|
||||
case_number: this.$i18n.t("ID_MYCASE_NUMBER"),
|
||||
case_title: this.$i18n.t("ID_CASE_TITLE"),
|
||||
@@ -143,13 +151,20 @@ export default {
|
||||
dt,
|
||||
paged,
|
||||
limit = data.limit,
|
||||
start = data.page === 1 ? 0 : limit * (data.page - 1);
|
||||
paged = start + ',' + limit;
|
||||
start = data.page === 1 ? 0 : limit * (data.page - 1),
|
||||
filters = {};
|
||||
paged = start + "," + limit;
|
||||
|
||||
filters = {
|
||||
paged: paged,
|
||||
};
|
||||
|
||||
_.forIn(this.filters, function (item, key) {
|
||||
filters[item.filterVar] = item.value;
|
||||
});
|
||||
return new Promise((resolutionFunc, rejectionFunc) => {
|
||||
api.cases
|
||||
.unassigned({
|
||||
paged: paged
|
||||
})
|
||||
.unassigned(filters)
|
||||
.then((response) => {
|
||||
dt = that.formatDataResponse(response.data.data);
|
||||
resolutionFunc({
|
||||
@@ -252,11 +267,20 @@ export default {
|
||||
DEL_INDEX: item.DEL_INDEX,
|
||||
PRO_UID: item.PRO_UID,
|
||||
TAS_UID: item.TAS_UID,
|
||||
APP_NUMBER: item.CASE_NUMBER
|
||||
APP_NUMBER: item.CASE_NUMBER,
|
||||
});
|
||||
that.$emit("onUpdatePage", "case-detail");
|
||||
});
|
||||
},
|
||||
onRemoveFilter(data) {},
|
||||
onUpdateFilters(data) {
|
||||
this.filters = data.params;
|
||||
if (data.refresh) {
|
||||
this.$nextTick(() => {
|
||||
this.$refs["vueTable"].getData();
|
||||
});
|
||||
}
|
||||
},
|
||||
},
|
||||
};
|
||||
</script>
|
||||
|
||||
Reference in New Issue
Block a user