تغییرات

This commit is contained in:
Mehdi104797 2025-05-01 08:26:09 +03:30
parent fd3221ea12
commit 1c9ea2ed11
6 changed files with 82 additions and 57 deletions

View File

@ -73,7 +73,8 @@
<label class="multiselect-lable text no-wrap width-auto" for="users"
>جستجوی کاربر:</label
>
<multiselect
<!-- <multiselect
class="multiselect template form-control input w-auto"
id="users"
track-by="user_id"
@ -100,7 +101,7 @@
@select="addUserToGroup"
@close="resetFoundUsers"
>
</multiselect>
</multiselect> -->
</div>
<!-- <div class="coolinput select-template d-flex align-items-center">
<label class="multiselect-lable text" for="input">نوع قالب</label>
@ -183,7 +184,7 @@
>
<div class="main-page_body-items-move-copy in-desktop mt-2">
<div class="btn-move move ms-3">
<PersianDatepicker
<!-- <PersianDatepicker
title="انتقال"
label="انتقال محتوا به تاریخ دیگر"
class="date-picker text-move"
@ -191,7 +192,7 @@
format="YYYY-MM-DD"
display-format="jYYYY-jMM-jDD"
@input="PostDateToMoveInformation()"
/>
/> -->
<span class="svgIcon-move" title="انتقال">
<svg class="icon icon-forward">
<use xlink:href="#icon-forward"></use>
@ -199,7 +200,7 @@
</span>
</div>
<div class="copy btn-copy">
<PersianDatepicker
<!-- <PersianDatepicker
title="کپی"
label="کپی محتوا به تاریخ دیگر"
class="date-picker text-copy"
@ -207,7 +208,7 @@
format="YYYY-MM-DD"
display-format="jYYYY-jMM-jDD"
@input="PostDateToCopyInformation()"
/>
/> -->
<span class="svgIcon-copy" title="کپی">
<svg class="icon icon-copy2">
<use xlink:href="#icon-copy2"></use>
@ -217,7 +218,7 @@
</div>
<div class="main-page_body-items-move-copy in-mobile mt-2">
<div class="btn-move move ms-3">
<PersianDatepicker
<!-- <PersianDatepicker
title="انتقال"
label="انتقال"
class="date-picker text-move"
@ -225,7 +226,7 @@
format="YYYY-MM-DD"
display-format="jYYYY-jMM-jDD"
@input="PostDateToMoveInformation()"
/>
/> -->
<span class="svgIcon-move" title="انتقال">
<svg class="icon icon-forward">
@ -234,7 +235,7 @@
</span>
</div>
<div class="copy btn-copy">
<PersianDatepicker
<!-- <PersianDatepicker
title="کپی"
label="کپی"
class="date-picker text-copy"
@ -242,7 +243,7 @@
format="YYYY-MM-DD"
display-format="jYYYY-jMM-jDD"
@input="PostDateToCopyInformation()"
/>
/> -->
<span class="svgIcon-copy" title="کپی">
<svg class="icon icon-copy2">
<use xlink:href="#icon-copy2"></use>
@ -262,7 +263,7 @@
import taskApi from "@task/apis/taskApi";
// import HttpService from "@services/httpService";
// import VuePersianDatetimePicker from "vue-persian-datetime-picker";
import { p2e } from "@plugins/persianNumber";
import { p2e } from "~/manuals/persianNumber";
// import { mapGetters, mapMutations } from "vuex";
import { mapState, mapActions } from "pinia";
import { useAuthStore } from "~/stores/authStore";
@ -859,7 +860,7 @@ export default {
HoursForm: () => import("@task/components/HoursForm"),
Multiselect: () => import("vue-multiselect"),
datePicker: VuePersianDatetimePicker,
// datePicker: VuePersianDatetimePicker,
},
};
</script>

View File

@ -183,8 +183,8 @@ import { mapState, mapActions } from "pinia";
import { useSearchStore } from "@search/stores/searchStore";
import { useAuthStore } from "~/stores/authStore";
// import HttpService from "@services/httpService";
import VuePersianDatetimePicker from "vue-persian-datetime-picker";
import { p2e } from "@plugins/persianNumber";
// import VuePersianDatetimePicker from "vue-persian-datetime-picker";
import { p2e } from "~/manuals/persianNumber";
// import thiqatRoutes from "../../../routes/thiqatRoutes";
export default {
@ -386,7 +386,7 @@ export default {
},
},
components: {
datePicker: VuePersianDatetimePicker,
// datePicker: VuePersianDatetimePicker,
Multiselect: () => import("vue-multiselect"),
},
};

View File

@ -9,7 +9,7 @@
class="col-1 ps-0 pe-0 task-Form-Organ"
style="color: #97f295 !important"
>
<multiselect
<!-- <multiselect
v-model.number="taskForm.organ"
class="multiselect Organ"
tag-placeholder="Add this as new tag"
@ -23,10 +23,10 @@
:preserve-search="true"
@tag="addTagOrgan"
@select="organSelect"
></multiselect>
></multiselect> -->
</div>
<div class="col-2 ps-0 pe-0 task-Form-category">
<multiselect
<!-- <multiselect
class="multiselect category"
id="task-Form-category"
v-model.number="taskForm.category"
@ -40,7 +40,7 @@
:max-height="250"
:preserve-search="true"
@tag="addTagCategury"
></multiselect>
></multiselect> -->
<!-- <pre
class="language-json"
><code>{{ taskForm.category }}</code></pre> -->
@ -209,10 +209,13 @@
</template>
<script>
import taskApi from "@apis/taskApi";
import taskApi from "@task/apis/taskApi";
import HttpService from "@services/httpService";
import { mapGetters } from "vuex";
// import HttpService from "@services/httpService";
// import { mapGetters } from "vuex";
import { mapState, mapActions } from "pinia";
import { useSearchStore } from "@task/stores/searchStore";
import VueTribute from "vue-tribute";
export default {
@ -245,7 +248,8 @@ export default {
},
emits: ["close-form-tasks", "save-form-tasks", "add-new-record"],
beforeMount() {
this.httpService = new HttpService(this.taskMicroServiceName);
// this.httpService = new HttpService(this.taskMicroServiceName);
this.httpService = useNuxtApp()["$http"];
},
mounted() {
if (this.taskSchemaGetter?.categoryOptions)
@ -264,6 +268,7 @@ export default {
data() {
return {
categoryOptions: [],
httpService: {},
organOptions: [],
showOrgan: this.isMultiOrgan,
userLang: "fa-IR",
@ -362,7 +367,7 @@ export default {
};
},
computed: {
...mapGetters(["taskSchemaGetter"]),
...mapState(useSearchStore,["taskSchemaGetter"]),
taskMicroServiceName() {
return process.env.VUE_APP_TASK;
},

View File

@ -158,9 +158,23 @@ export default {
},
components: {
MainSection: () => import("@task/components/MainSection"),
RightSection: () => import("@task/components/RightSection"),
Navbar: () => import("@task/components/Navbar"),
MainSection: defineAsyncComponent(() =>
import("@task/components/MainSection")
),
RightSection: defineAsyncComponent(() =>
import("@task/components/RightSection")
),
Navbar: defineAsyncComponent(() =>
import("@task/components/Navbar")
),
// MainSection: () => import("@task/components/MainSection"),
// RightSection: () => import("@task/components/RightSection"),
// Navbar: () => import("@task/components/Navbar"),
},
};
</script>

View File

@ -1,5 +1,5 @@
<template>
<section>
<section style="width: 100%;">
<Navbar class="task-navbar"> </Navbar>
<main
class="task-dashboard main-page__content"
@ -72,7 +72,6 @@
</template>
<script>
import { mapState, mapActions } from "pinia";
import { useCommonStore } from "~/stores/commonStore";
@ -81,7 +80,6 @@ import { useAuthStore } from "~/stores/authStore";
import taskApi from "@task/apis/taskApi";
export default {
// mixins: [commentMixin],
mounted() {
this.httpService = useNuxtApp()["$http"];
@ -107,7 +105,7 @@ export default {
data() {
return {
PieOptions: {
radius: ['40%', '70%'],
radius: ["40%", "70%"],
selectedMode: "single",
},
// #region mehdi
@ -118,14 +116,11 @@ export default {
// #endregion
rerenderChatList: 1,
showListPanel: false,
};
},
computed: {
...mapState(useAuthStore,[
"currentUser",
]),
...mapState(useCommonStore,[
...mapState(useAuthStore, ["currentUser"]),
...mapState(useCommonStore, [
"getPanelStatus",
"isSidebarCollapsed",
"sidebarListStatusGetter",
@ -142,11 +137,13 @@ export default {
// },
},
methods: {
...mapActions(useCommonStore,[
...mapActions(useCommonStore, [
"TOGGLE_PANEL",
"sidebarCollapsedSetter",
"SET_SIDEBAR_LIST_STATUS",
"checkPermissions", "storeState", "getState"
"checkPermissions",
"storeState",
"getState",
]),
...mapActions(useSearchStore, [
"SET_LIST_COMPONENT_NAME",
@ -156,7 +153,7 @@ export default {
"SET_LIST",
"SET_LIST_ID",
]),
selectedListBackTitle(name) {
if (name == "groups") return "دانشتو با بقیه به اشتراک بزار.";
if (name == "privates") return "به هر کی دوست داری، پیام بده.";
@ -205,27 +202,28 @@ export default {
};
let url = taskUrl() + taskApi.taskChart.donut;
var vm = this;
this.httpService
.postRequest(url, payload)
.then((res) => {
vm.dataPie = [];
res.data.forEach((element) => {
vm.dataPie.push({
y: element.Percent,
name: element.category,
// color: colors[5],
drilldown: {
categories: [element.category],
data: [element.Total],
},
});
this.httpService.postRequest(url, payload).then((res) => {
vm.dataPie = [];
res.data.forEach((element) => {
vm.dataPie.push({
y: element.Percent,
name: element.category,
// color: colors[5],
drilldown: {
categories: [element.category],
data: [element.Total],
},
});
})
});
});
},
},
components: {
// MainSection: () => import("@task/components/MainSection"),H:\new-folder\base_ui\components\charts\PieDonut.vue
PieDonut: defineAsyncComponent(() =>
import("~/components/charts/PieDonut.vue")
),
},
};
</script>

View File

@ -54,8 +54,12 @@ export const useSearchStore = defineStore("searchStore", {
searchSynonymForm: undefined as searchSynonymForm | undefined,
selectionFilterItems: [] as selectionFilterItems,
taskSchema:{} as {},
}),
getters: {
taskSchemaGetter(state) {
return state.taskSchema;
},
projectsGetter(state) {
return state.projects;
},
@ -128,6 +132,9 @@ export const useSearchStore = defineStore("searchStore", {
},
},
actions: {
taskSchemaSetter( taskSchema = undefined) {
this.taskSchema = taskSchema;
},
SET_SELECTED_PROJECT(selectedProject = undefined) {
this.selectedProject = selectedProject;
},