12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879 |
- import axios from "axios";
- import _ from "lodash";
-
- export default {
- namespaced: true,
- state: {
- list: [],
- fields: [],
- filter: {
- by: undefined,
- value: undefined
- }
- },
- mutations: {
- updateSearch(state, data) {
- state.list = [];
- state.fields = [];
- state.list = data;
- data.forEach(item => {
- state.fields.push(item.property);
- });
- state.fields.push("UserName");
- state.fields.push("Type");
- state.fields.push("Date");
- state.fields.push("Time");
- state.fields = state.fields.filter((x, i, a) => a.indexOf(x) === i);
- },
- onClearFilter(state) {
- state.filter = {
- by: undefined,
- value: undefined
- };
- }
- },
- getters: {
- filterList: state => {
- let lst = state.list;
- const { filter } = state;
- if (filter) {
- if (filter.by) {
- if (filter.by === "UserName") {
- lst = _.filter(lst, x => x.userName.toUpperCase().includes(filter.value.toUpperCase()));
- } else if (filter.by === "Type") {
- lst = _.filter(lst, x => x.type.toUpperCase().includes(filter.value.toUpperCase()));
- } else if (filter.by === "Date") {
- lst = _.filter(lst, x => x.date.toUpperCase().includes(filter.value.toUpperCase()));
- } else if (filter.by === "Time") {
- lst = _.filter(lst, x => x.time.toUpperCase().includes(filter.value.toUpperCase()));
- } else {
- lst = _.filter(lst, x => x.property === filter.by);
- if (filter.value) {
- lst = _.filter(lst, x => x.value.toUpperCase().includes(filter.value.toUpperCase()));
- }
- }
- } else if (filter.value) {
- lst = _.filter(
- lst,
- x =>
- x.value.toUpperCase().includes(filter.value.toUpperCase()) ||
- x.userName.toUpperCase().includes(filter.value.toUpperCase()) ||
- x.type.toUpperCase().includes(filter.value.toUpperCase())
- );
- }
- }
- return lst;
- }
- },
- actions: {
- getPropertySearchLogs({ commit }) {
- axios
- .get("/api/searchLog")
- .then(result => commit("updateSearch", result.data))
- .catch(console.error);
- },
- clearFilter({ commit }) {
- commit("onClearFilter");
- }
- }
- };
|