diff --git a/src/assets/scss/vuexy/_typography.scss b/src/assets/scss/vuexy/_typography.scss
index 1a42059..22c97ef 100644
--- a/src/assets/scss/vuexy/_typography.scss
+++ b/src/assets/scss/vuexy/_typography.scss
@@ -40,7 +40,7 @@ a:active,
a:visited,
a:hover,
a {
- color: rgba(var(--vs-primary), 1);
+ color: rgba(#fff, 1);
}
// quill editor
diff --git a/src/components/new-x-table/XTable.vue b/src/components/new-x-table/XTable.vue
index 5f16d51..fc9641c 100644
--- a/src/components/new-x-table/XTable.vue
+++ b/src/components/new-x-table/XTable.vue
@@ -240,12 +240,12 @@ export default {
this.fetch();
},
removeFilter(index) {
- console.log("index ==> ", index);
+ // console.log("index ==> ", index);
this.$delete(this.query.filters, index)
this.$forceUpdate();
},
filterChange(value) {
- console.log("value ==> " , value);
+ // console.log("value ==> " , value);
this.query.filters[value.index] = value;
},
@@ -339,7 +339,7 @@ export default {
}
this.data = data.rows;
this.query = data.query
- console.log("this.query ==> ", this.query);
+ // console.log("this.query ==> ", this.query);
this.$emit('fetch', data)
} catch (e) {
this.$message.error('خطا در دریافت اطلاعات');
@@ -398,7 +398,7 @@ export default {
return this.cols.filter(item => item.filtered)
},
visibleCols() {
- console.log(" ==> " , this.cols.filter(item => item.show));
+ // console.log(" ==> " , this.cols.filter(item => item.show));
return this.cols.filter(item => item.show)
}
},
diff --git a/src/components/x-table/XTable.vue b/src/components/x-table/XTable.vue
index 1e334f9..4e8e206 100644
--- a/src/components/x-table/XTable.vue
+++ b/src/components/x-table/XTable.vue
@@ -204,7 +204,7 @@
noThings() {
},
onSearch(value) {
- console.log(value);
+ // console.log(value);
this.query.search = value;
if (value) {
this.fetch();
diff --git a/src/layouts/components/vertical-nav-menu/navMenuItems-permission.js b/src/layouts/components/vertical-nav-menu/navMenuItems-permission.js
index 20cbb34..ac115a7 100644
--- a/src/layouts/components/vertical-nav-menu/navMenuItems-permission.js
+++ b/src/layouts/components/vertical-nav-menu/navMenuItems-permission.js
@@ -80,7 +80,7 @@ const menu_items = [
url: '/adv/malicious',
name: 'advMalicious',
slug: 'adv-malicious',
- i18n: 'لیست آگهی های مخرب',
+ i18n: 'لیست آگهی های مخرب',ّ
permission_id: 'bad_adv.manage'
},
{
diff --git a/src/layouts/components/vertical-nav-menu/navMenuItems.js b/src/layouts/components/vertical-nav-menu/navMenuItems.js
index 43099da..a3e12ca 100644
--- a/src/layouts/components/vertical-nav-menu/navMenuItems.js
+++ b/src/layouts/components/vertical-nav-menu/navMenuItems.js
@@ -31,6 +31,14 @@ export default [
i18n: "اطلاعات پرسنلی",
permissionId:'personnel'
},
+ {
+ url: "/contract",
+ name: "contract",
+ slug: "contract",
+ icon: "AlignJustifyIcon",
+ i18n: "قرارداد ها",
+ permissionId:'personnel.contract.show'
+ },
{
url: "/permission",
name: "permission",
diff --git a/src/router.js b/src/router.js
index 589a1eb..eabbf02 100644
--- a/src/router.js
+++ b/src/router.js
@@ -90,6 +90,24 @@ const router = new Router({
parent: 'main'
}
},
+ {
+ path: '/register/contract',
+ name: 'register-contract',
+ component: () => import('./views/register/RegisterPersonnel.vue'),
+ meta: {
+ rule: 'editor',
+ parent: 'main'
+ }
+ },
+ {
+ path: '/contract',
+ name: 'contract',
+ component: () => import('./views/contract/list.vue'),
+ meta: {
+ rule: 'editor',
+ parent: 'main'
+ }
+ },
{
path: '/users',
name: 'users',
@@ -108,15 +126,6 @@ const router = new Router({
parent: 'main'
}
},
- {
- path: '/register/personnel',
- name: 'register-personnel',
- component: () => import('./views/register/RegisterPersonnel.vue'),
- meta: {
- rule: 'editor',
- parent: 'main'
- }
- },
{
path: '/permission',
name: 'permission',
@@ -160,25 +169,23 @@ router.afterEach((to) => {
})
router.beforeEach(async (to, from, next) => {
- // return next();
+ // return next();
let isLogin = sessionStorage.getItem('accessToken');
- await store.commit('route/SET_ROUTE',to.path)
+ await store.commit('route/SET_ROUTE', to.path)
//console.log("to.path ==> ", to.path);
if (
- to.path === "/register/form" ||
- to.path === "/auth/login" ||
- to.path === "/auth/register" ||
- to.path === "/pages/error-404" ||
- to.path === "/pages/error-403" ||
- to.path === "/auth/forgot-password"
- ) {
- /* if (isLogin) {
- router.push({path: '/'});
- }*/
+ to.path === "/register/form" ||
+ to.path === "/auth/login" ||
+ to.path === "/auth/register" ||
+ to.path === "/pages/error-404" ||
+ to.path === "/pages/error-403" ||
+ to.path === "/auth/forgot-password"
+ ) {
+ /* if (isLogin) {
+ router.push({path: '/'});
+ }*/
return next();
- }
-
- else if (!isLogin) {
+ } else if (!isLogin) {
router.push({path: '/auth/login'});
return;
} else {
diff --git a/src/store/contract/index.js b/src/store/contract/index.js
new file mode 100644
index 0000000..63d431c
--- /dev/null
+++ b/src/store/contract/index.js
@@ -0,0 +1,23 @@
+const state = {
+ units: [],
+ contractTypes: [],
+}
+const mutations = {
+ setUnits(state, data) {
+ state.units = data;
+ },
+ setContractTypes(state, data) {
+ state.contractTypes = data;
+ },
+};
+
+
+const actions = {}
+
+
+export default {
+ namespaced: true,
+ state,
+ mutations,
+ actions
+}
diff --git a/src/store/store.js b/src/store/store.js
index 15cbc2c..8b641c9 100644
--- a/src/store/store.js
+++ b/src/store/store.js
@@ -18,6 +18,7 @@ import actions from './actions'
Vue.use(Vuex)
+// unknown
// import moduleTodo from './todo/moduleTodo.js'
// import moduleCalendar from './calendar/moduleCalendar.js'
// import moduleChat from './chat/moduleChat.js'
@@ -44,6 +45,11 @@ import points from './point/points'
import transaction from './transaction/transaction'
import price from './price/price'
import route from './route'
+// unknown
+
+// sedmed known store
+import contract from './contract/index'
+// sedmed known store
export default new Vuex.Store({
getters,
@@ -73,6 +79,10 @@ export default new Vuex.Store({
variantAdd:variantAdd,
advModel:advModel,
route:route,
+
+// sedmed known store
+ contract,
+// sedmed known store
},
strict: process.env.NODE_ENV !== 'production'
})
diff --git a/src/views/contract/conractModel.js b/src/views/contract/conractModel.js
new file mode 100644
index 0000000..0b5834f
--- /dev/null
+++ b/src/views/contract/conractModel.js
@@ -0,0 +1,41 @@
+import XTbl, {Xtc} from '../../components/new-x-table/index';
+import store from '@/store/store'
+let unitsFilter = {}
+store.state.contract.units.map((x) => {
+ unitsFilter[x.id] = x.value
+})
+let contractTypes = store.state.contract.contractTypes
+
+const tbl = new XTbl('http://hr.asco-intl.com:2020/kernel/api/personnel/contract/table', 'لیست قرارداد ها');
+tbl.add(new Xtc('personnel.proposal.name', 'نام پرسنل').filterText())
+tbl.add(new Xtc('personnel.proposal.ncode', 'کد ملی').filterText())
+tbl.add(new Xtc('personnel_id', 'کد پرسنلی').filterText())
+tbl.add(new Xtc('personnel.proposal.mobile', 'شماره تلفن').filterText())
+tbl.add(new Xtc('personnel.proposal.iden_place', 'محل صدور').filterText())
+tbl.add(new Xtc('personnel.proposal.birth_place', 'محل تولد').filterText())
+
+tbl.add(new Xtc('salary', 'حقوق پایه').filterText().hidden())
+tbl.add(new Xtc('worker_coupon', 'بن کارگری').filterText().hidden())
+tbl.add(new Xtc('housing_allowance', 'کمک هزینه مسکن').filterText().hidden())
+tbl.add(new Xtc('right_attraction', 'حق جذب').filterText().hidden())
+tbl.add(new Xtc('right_guardianship', 'حق سرپرستی').filterText().hidden())
+tbl.add(new Xtc('right_child', 'حق فرزند').filterText().hidden())
+tbl.add(new Xtc('right_mission', 'حق ماموریت').filterText().hidden())
+tbl.add(new Xtc('right_shift', 'حق شیفت').filterText().hidden())
+tbl.add(new Xtc('right_try', 'حق السعی').filterText().hidden())
+tbl.add(new Xtc('promissory', 'مبلغ سفته').filterText().hidden())
+tbl.add(new Xtc('promissory_number', 'شماره سفته').filterText().hidden())
+tbl.add(new Xtc('contract_number', 'شماره قرارداد').filterText().hidden())
+tbl.add(new Xtc('basic_years', 'پایه سنوات').filterText().hidden())
+tbl.add(new Xtc('reward', 'پاداش مستمر').filterText().hidden())
+tbl.add(new Xtc('city_workplace', 'محل خدمت').filterText().hidden())
+tbl.add(new Xtc('personnel.gender', 'جنسیت').filterSelect({1: 'مرد', 2: 'زن'}).filterKey('personnel.gender').hidden().renderSlot('gender'))
+tbl.add(new Xtc('type_str', 'نوع قرارداد').hidden().filterKey('type').filterSelect(contractTypes))
+tbl.add(new Xtc('work_unit', 'واحد کار').hidden().renderSlot('work_unit').filterSelect(unitsFilter))
+tbl.add(new Xtc('start_at', 'تاریخ شروع قراداد').filterDate().filterKey('start_at').hidden().renderSlot('start_at'))
+tbl.add(new Xtc('end_at', 'تاریخ پایان قراداد').filterDate().filterKey('end_at').hidden().renderSlot('end_at'))
+
+tbl.add(new Xtc('reason_termination', 'دلیل فسخ قرارداد').filterText().hidden())
+tbl.add(new Xtc('date_termination', 'تاریخ فسخ قرارداد').filterDate().filterKey('date_termination').hidden())
+
+export default tbl;
diff --git a/src/views/contract/list.vue b/src/views/contract/list.vue
new file mode 100644
index 0000000..92b9b33
--- /dev/null
+++ b/src/views/contract/list.vue
@@ -0,0 +1,79 @@
+
+
+
+
+ {{text.record.personnel.proposal.gender_str}}
+
+
+ {{findWorkUnit(text.record.work_unit)}}
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/src/views/dashboard/contractTerminationCurrentMonthTbl.js b/src/views/dashboard/contractTerminationCurrentMonthTbl.js
index 11a862f..9f32586 100644
--- a/src/views/dashboard/contractTerminationCurrentMonthTbl.js
+++ b/src/views/dashboard/contractTerminationCurrentMonthTbl.js
@@ -1,8 +1,8 @@
import XTbl, {Xtc} from '../../components/new-x-table/index';
const tbl = new XTbl('contractTerminationCurrentMonth/table', 'لیست پرسنل');
-tbl.add(new Xtc('personnel.personel_id', 'کد پرسنلی').hidden().filterText());
-tbl.add(new Xtc('personnel.name', 'نام و نام خانوادگی').filterText())
+tbl.add(new Xtc('contract.personel_id', 'کد پرسنلی').hidden().filterText());
+tbl.add(new Xtc('contract.name', 'نام و نام خانوادگی').filterText())
tbl.add(new Xtc('start_atj', 'تاریخ شروع قرارداد').filterDate().filterKey('start_at'))
tbl.add(new Xtc('end_atj', 'تاریخ اتمام قرارداد').filterDate().filterKey('end_at'))
tbl.add(new Xtc('reason_termination', 'علت فسخ قرارداد').filterText())
diff --git a/src/views/dashboard/contractTerminationPastMonthTbl.js b/src/views/dashboard/contractTerminationPastMonthTbl.js
index 36d8b60..dc2a4cd 100644
--- a/src/views/dashboard/contractTerminationPastMonthTbl.js
+++ b/src/views/dashboard/contractTerminationPastMonthTbl.js
@@ -1,8 +1,8 @@
import XTbl, {Xtc} from '../../components/new-x-table/index';
const tbl = new XTbl('contractTerminationPastMonth/table', 'لیست پرسنل');
-tbl.add(new Xtc('personnel.personel_id', 'کد پرسنلی').hidden().filterText());
-tbl.add(new Xtc('personnel.name', 'نام و نام خانوادگی').filterText())
+tbl.add(new Xtc('contract.personel_id', 'کد پرسنلی').hidden().filterText());
+tbl.add(new Xtc('contract.name', 'نام و نام خانوادگی').filterText())
tbl.add(new Xtc('start_atj', 'تاریخ شروع قرارداد').filterDate().filterKey('start_at'))
tbl.add(new Xtc('end_atj', 'تاریخ اتمام قرارداد').filterDate().filterKey('end_at'))
tbl.add(new Xtc('reason_termination', 'علت فسخ قرارداد').filterText())
diff --git a/src/views/dashboard/personelEndContractCurrentmonthTbl.js b/src/views/dashboard/personelEndContractCurrentmonthTbl.js
index 35fb773..62f97ee 100644
--- a/src/views/dashboard/personelEndContractCurrentmonthTbl.js
+++ b/src/views/dashboard/personelEndContractCurrentmonthTbl.js
@@ -1,8 +1,8 @@
import XTbl, {Xtc} from '../../components/new-x-table/index';
const tbl = new XTbl('personelContactEndCurrentMonth/table', 'لیست پرسنل');
-tbl.add(new Xtc('personnel.personel_id', 'کد پرسنلی').filterText());
-tbl.add(new Xtc('personnel.name', 'نام و نام خانوادگی').filterText())
+tbl.add(new Xtc('contract.personel_id', 'کد پرسنلی').filterText());
+tbl.add(new Xtc('contract.name', 'نام و نام خانوادگی').filterText())
tbl.add(new Xtc('start_atj', 'تاریخ شروع قرارداد').filterDate().filterKey('start_at'))
tbl.add(new Xtc('end_atj', 'تاریخ اتمام قرارداد').filterDate().filterKey('end_at'))
tbl.add(new Xtc('date_work', 'مدت تصدی (روز)'))
diff --git a/src/views/dashboard/personelEndContractNextmonthTbl.js b/src/views/dashboard/personelEndContractNextmonthTbl.js
index d643ef9..54705cd 100644
--- a/src/views/dashboard/personelEndContractNextmonthTbl.js
+++ b/src/views/dashboard/personelEndContractNextmonthTbl.js
@@ -1,8 +1,8 @@
import XTbl, {Xtc} from '../../components/new-x-table/index';
const tbl = new XTbl('personelContactEndNextMonth/table', 'لیست پرسنل');
-tbl.add(new Xtc('personnel.personel_id', 'کد پرسنلی').noSort());
-tbl.add(new Xtc('personnel.name', 'نام و نام خانوادگی').noSort())
+tbl.add(new Xtc('contract.personel_id', 'کد پرسنلی').noSort());
+tbl.add(new Xtc('contract.name', 'نام و نام خانوادگی').noSort())
tbl.add(new Xtc('start_atj', 'تاریخ شروع قرارداد').noSort())
tbl.add(new Xtc('end_atj', 'تاریخ اتمام قرارداد').noSort())
tbl.add(new Xtc('date_work', 'مدت تصدی (روز)'))
diff --git a/src/views/dashboard/personelEndContractPastmonthTbl.js b/src/views/dashboard/personelEndContractPastmonthTbl.js
index f38b0d4..edb8be9 100644
--- a/src/views/dashboard/personelEndContractPastmonthTbl.js
+++ b/src/views/dashboard/personelEndContractPastmonthTbl.js
@@ -1,8 +1,8 @@
import XTbl, {Xtc} from '../../components/new-x-table/index';
const tbl = new XTbl('personelContactEndPastMonth/table', 'لیست پرسنل اتمام قرارداد در ماه گذشته');
-tbl.add(new Xtc('personnel.personel_id', 'کد پرسنلی').filterText());
-tbl.add(new Xtc('personnel.name', 'نام و نام خانوادگی').filterText())
+tbl.add(new Xtc('contract.personel_id', 'کد پرسنلی').filterText());
+tbl.add(new Xtc('contract.name', 'نام و نام خانوادگی').filterText())
tbl.add(new Xtc('start_atj', 'تاریخ شروع قرارداد').filterDate().filterKey('start_at'))
tbl.add(new Xtc('end_atj', 'تاریخ اتمام قرارداد').filterDate().filterKey('end_at'))
tbl.add(new Xtc('date_work', 'مدت تصدی (روز)'))
diff --git a/src/views/personel/Personel.vue b/src/views/personel/Personel.vue
index 3ec33de..b9befd4 100644
--- a/src/views/personel/Personel.vue
+++ b/src/views/personel/Personel.vue
@@ -14,6 +14,15 @@
مشاهده و ویرایش اطلاعات
+
+ {{text.record.proposal.gender_str}}
+
+
+ {{text.record.birth_date | jdate}}
+
+
+ {{findWorkUnit(text.record.contract[0].work_unit)}}
+
@@ -471,7 +480,7 @@
-
دانلود پیوست
+ دانلود پیوست
@@ -556,7 +565,7 @@
@click="removetermination(index)">لغو فسخ قرارداد
دانلود پیوست
+ target="_blank" type="primary" :href="item.file.storage">دانلود پیوست
@@ -600,31 +609,31 @@
نوع 1
- نوع 2
+ نوع 2
- نوع 3
+ نوع 3
- نوع 4
+ نوع 4
- نوع 5
+ نوع 5
- نوع 6
+ نوع 6
- نوع 7
+ نوع 7
- نوع 8
+ نوع 8
- نوع 9
+ نوع 9
- نوع 10
+ نوع 10
<!–
نوع سوم
@@ -799,7 +808,7 @@
- دانلود
+ دانلود
پیوست
@@ -1319,13 +1328,13 @@ export default {
},
checkPermission(index) {
const steps = {
- 1: 'personnel.basic.update',
- 3: 'personnel.train',
- 4: 'personnel.contract',
- 5: 'personnel.intro',
- 6: 'personnel.delivery',
- 7: 'personnel.function',
- 8: 'personnel.rule'
+ 1: 'contract.basic.update',
+ 3: 'contract.train',
+ 4: 'contract.contract',
+ 5: 'contract.intro',
+ 6: 'contract.delivery',
+ 7: 'contract.function',
+ 8: 'contract.rule'
}
return !this.$getAccess(steps[index])
},
@@ -1930,6 +1939,7 @@ export default {
try {
const {data} = await axios.get('/personnel/type')
this.contractTypes = data
+ await this.$store.commit('personnel/setContractTypes',data)
} catch (e) {
throw e
}
@@ -1937,6 +1947,7 @@ export default {
async getUnits() {
try {
let {data} = await axios.get('/personnel/unit')
+ await this.$store.commit('personnel/setUnits',data)
data.push
({
id: "new",
@@ -1951,8 +1962,7 @@ export default {
if (id == "new") {
this.showName = true
}
- }
-
+ },
},
beforeCreate() {
},
diff --git a/src/views/personel/personelTbl.js b/src/views/personel/personelTbl.js
index 6b4f782..6771c21 100644
--- a/src/views/personel/personelTbl.js
+++ b/src/views/personel/personelTbl.js
@@ -5,6 +5,13 @@ tbl.add(new Xtc('name', 'نام و نام خانوادگی').filterText());
tbl.add(new Xtc('personel_id', 'کد پرسنلی').filterText())
tbl.add(new Xtc('insurance_no', 'شماره بیمه').filterText())
tbl.add(new Xtc('ncode', 'کد ملی').filterText())
+
+tbl.add(new Xtc('proposal.mobile', 'شماره تلفن').filterText().hidden())
+tbl.add(new Xtc('proposal.iden_place', 'محل صدور').filterText().hidden())
+tbl.add(new Xtc('proposal.birth_place', 'محل تولد').filterText().hidden())
+tbl.add(new Xtc('birth_date', 'تاریخ تولد').filterDate().filterKey('birth_date').hidden().renderSlot('birth_date'))
+tbl.add(new Xtc('proposal.gender', 'جنسیت').filterSelect({1: 'مرد', 2: 'زن'}).filterKey('proposal.gender').hidden().renderSlot('gender'))
+
tbl.add(new Xtc('caj', 'ثبت نام').filterDate().filterKey('created_at'))
tbl.add(new Xtc('uaj', 'به روز رسانی').filterDate().filterKey('updated_at'))
tbl.add(new Xtc('operator', 'عملیات').renderSlot('operator').noSort())
diff --git a/src/views/proposal/Proposal.vue b/src/views/proposal/Proposal.vue
index ef52644..530e0c3 100644
--- a/src/views/proposal/Proposal.vue
+++ b/src/views/proposal/Proposal.vue
@@ -715,9 +715,9 @@
- افزودن اطلاعات خانوادگی
+ افزودن اطلاعات خانوادگی
- حذف
+ حذف
@@ -760,9 +760,9 @@
- افزودن سابقه تحصیلی
+ افزودن سابقه تحصیلی
- حذف
+ حذف
@@ -805,9 +805,9 @@
- افزودن سابقه آموزشی
+ افزودن سابقه آموزشی
- حذف
+ حذف
@@ -830,9 +830,9 @@
- افزودن سابقه کاری
+ افزودن سابقه کاری
- حذف
+ حذف
diff --git a/src/views/register/RegisterPersonnel.vue b/src/views/register/RegisterPersonnel.vue
index 01e6df1..323b794 100644
--- a/src/views/register/RegisterPersonnel.vue
+++ b/src/views/register/RegisterPersonnel.vue
@@ -1186,7 +1186,7 @@ export default {
this.getDate()
},
LoginUser() {
- this.$router.push('/register/personnel')
+ this.$router.push('/register/contract')
},
next() {
this.current++;