Compare commits
459 Commits
Feature/Sm
...
Main
| Author | SHA1 | Date | |
|---|---|---|---|
| dd89e5a04d | |||
| c844867cab | |||
|
|
59d73d5ca8 | ||
|
|
ce146d9733 | ||
| cb3d4b711a | |||
| 779514f5c0 | |||
|
|
ec8dfe4799 | ||
| b69d450a3a | |||
| bc491eec18 | |||
| c980c627ba | |||
| 67910d2fa5 | |||
| 8cf960ebd7 | |||
| ad167ea1f4 | |||
| 9475c786d3 | |||
| db32b1e6ea | |||
| b30a8b0e4d | |||
| 0ba0043751 | |||
| 79a9d72b86 | |||
| dddc4b143a | |||
| 127d9f7a46 | |||
| a8cb226d20 | |||
| 793b10c6cc | |||
| ffe8fa67e2 | |||
| a0d2023a6c | |||
|
|
8ff6d8ecc0 | ||
|
|
c466b68c9a | ||
| 332f58de9b | |||
| db0047d3d3 | |||
|
|
2c305e1d7a | ||
|
|
da966e49c3 | ||
|
|
7d35a65f35 | ||
| ddeb6a7182 | |||
| 77b5c8168e | |||
|
|
1343d9a2a7 | ||
| d7731cd7ad | |||
| cd2c770a9f | |||
|
|
734d0ca692 | ||
|
|
d07a78a637 | ||
| c28bb46aaf | |||
|
|
d2d95b4fbe | ||
|
|
f067d5a7b4 | ||
| dc56df5e0f | |||
| d6e60e2cab | |||
| fa4c39904a | |||
|
|
6e74447ccb | ||
|
|
b65c33c43a | ||
| 0b1cc34008 | |||
| 3dace574ff | |||
| bf2a102a55 | |||
| 88744bd4cf | |||
| 0705823157 | |||
| 5942075dd6 | |||
|
|
734fd9ebca | ||
|
|
add04f854e | ||
|
|
debb54bafc | ||
| 3bd20d528f | |||
| b850ab1206 | |||
| 33a2c0be95 | |||
| fedfc372d0 | |||
|
|
a2c1fd30bf | ||
| 170f30f162 | |||
| db26c29057 | |||
| 0e7787dd56 | |||
|
|
1e9f864c1e | ||
|
|
3f23d1dac0 | ||
|
|
6f0a579c33 | ||
|
|
26517c20d8 | ||
|
|
7ce3224d69 | ||
|
|
5a9bfde922 | ||
|
|
64746fa3c3 | ||
|
|
bc3bc17a61 | ||
|
|
a678b92c39 | ||
|
|
4c513191b6 | ||
|
|
33ae28f0e5 | ||
|
|
2f45d519b9 | ||
| 3840d89433 | |||
| 23d42bd8f5 | |||
| 25aa76b16c | |||
| d6a9c5e87d | |||
|
|
34d336f43e | ||
|
|
6b81f383f6 | ||
|
|
54ff59de48 | ||
| 411363555f | |||
|
|
faeb5e11a5 | ||
|
|
50b56d928d | ||
|
|
9f09b6af97 | ||
|
|
63e169b82d | ||
|
|
7339eaaadf | ||
|
|
e5c96c8bcb | ||
|
|
187b7406d2 | ||
|
|
c51bb90a2b | ||
|
|
17f117726e | ||
|
|
13fb6fec5d | ||
| 5bead0cc86 | |||
|
|
bef21edf22 | ||
|
|
c151e2d3f7 | ||
|
|
1e36966767 | ||
| 64693b2ca3 | |||
| 64cb4baba9 | |||
| 03657b6848 | |||
|
|
1324baa9c7 | ||
| ce836476a1 | |||
| 15f1c938f7 | |||
| 7e563a0f01 | |||
|
|
48cc07bf2a | ||
|
|
be319f6286 | ||
|
|
d3dacceab1 | ||
| a3fd3e6920 | |||
|
|
8db161f960 | ||
|
|
3bb16c02b4 | ||
| 025c59e695 | |||
|
|
7a79343b2f | ||
| 36ccd96352 | |||
| a7c97b22b4 | |||
| 4c143d6bbc | |||
| 0e5a0a16ac | |||
|
|
dfc392f07a | ||
| 88f54b6310 | |||
| a68b879e95 | |||
| 161f3a92a7 | |||
| 5a1ec104a1 | |||
|
|
7fc5ac7ccd | ||
|
|
5b6f967fca | ||
| d4694e7e1c | |||
|
|
3317bde6d6 | ||
| 4bde4ade2d | |||
|
|
5cd30e5910 | ||
| 5c3c9739d1 | |||
| bd12ff0506 | |||
|
|
d51e4c462a | ||
|
|
4463fdc177 | ||
|
|
2ce63d1e0f | ||
|
|
38603b2249 | ||
|
|
037723ef70 | ||
|
|
7bb507c841 | ||
|
|
bf03247f81 | ||
| cb2c6b9ad1 | |||
| 355ec72140 | |||
| 21b3467517 | |||
| e9d0efc52f | |||
| 301a8f06f4 | |||
| 63a3027a17 | |||
| b22aa86aea | |||
| f0feac9601 | |||
| 8faddedd46 | |||
|
|
12af5dcb56 | ||
| 1382305433 | |||
| 90fa0ac8f8 | |||
| eb8352e8fc | |||
| 4c7599b568 | |||
| d179c90c48 | |||
|
|
ae2427473b | ||
|
|
068d34b4b4 | ||
|
|
377f95561c | ||
| 8850328fd4 | |||
|
|
b66dc81688 | ||
|
|
20ff66da2f | ||
| 915f16c7c0 | |||
|
|
2e95846336 | ||
| ad91383e86 | |||
| 6281a024ca | |||
| 0ef4ead292 | |||
| b286923dfe | |||
| 18867b4929 | |||
| a9df0669c6 | |||
| 5c75316f40 | |||
| 8839b54dd3 | |||
| 87c3cebb60 | |||
| 0d72392701 | |||
| 8f6007835c | |||
| 05d860795e | |||
| 607c0780b6 | |||
| 791c8f91b7 | |||
| c980354c6b | |||
| 22a5564ba0 | |||
| ef49302f8a | |||
| d8d2c34de7 | |||
|
|
3a343a19e1 | ||
|
|
e65852c829 | ||
| 7f1939390c | |||
|
|
07a4ce1f64 | ||
|
|
7207172ce0 | ||
| 048da40f3c | |||
| 7ba85fe1aa | |||
|
|
3280202644 | ||
| 1a334c22b8 | |||
|
|
a1bda5bc54 | ||
| c80be16807 | |||
|
|
f6a285b6ea | ||
| 68b1f89ef0 | |||
| 18fe6a5c6a | |||
|
|
56fc69f99f | ||
| d6096b232d | |||
| 6d5c032802 | |||
| 71c0cff03a | |||
|
|
ebcb7530e0 | ||
|
|
9ff9b0be18 | ||
|
|
ceb328cfa7 | ||
| 5a7d65427d | |||
| 8adb0f567c | |||
|
|
7aaf161718 | ||
|
|
2f408a6cc1 | ||
|
|
3ef717583f | ||
|
|
551f5a754c | ||
|
|
ba88a012ff | ||
|
|
e4c41bb704 | ||
|
|
dee55f8854 | ||
|
|
802c79812b | ||
| e2e7aa1989 | |||
| b82e831991 | |||
|
|
44cbdbaa1c | ||
|
|
94466bbb27 | ||
| 931d41c446 | |||
|
|
9614e44003 | ||
|
|
f097be54aa | ||
| 5ba72e2281 | |||
|
|
be4bc2c900 | ||
| 0b42546666 | |||
| a35a51370a | |||
|
|
ef86c6d07d | ||
|
|
1b284b51b9 | ||
|
|
5b15596696 | ||
| f290a71dd3 | |||
| 0d0f643058 | |||
|
|
5ad5fdcca0 | ||
|
|
fb1601db77 | ||
|
|
b39b58b21e | ||
|
|
2a3e733eb6 | ||
| 5d2a917168 | |||
| 4ab9f60932 | |||
| cbcd42db85 | |||
|
|
76aabc3a45 | ||
| a22dbd8811 | |||
| 9cfae54db3 | |||
|
|
3cdd5e7ac7 | ||
| de4e2de2e7 | |||
| d7dd91eaba | |||
|
|
d6e3c48770 | ||
|
|
946024d81e | ||
| e7ce947342 | |||
| 796a13cdcc | |||
| 2b7871c582 | |||
| 8f0c707647 | |||
| a835663e5c | |||
| 0bceed55d1 | |||
| 946e980324 | |||
| 93847e6aa8 | |||
| b329e40930 | |||
|
|
6e34ba79e0 | ||
| 5f21b59cb3 | |||
| e0ea5aec53 | |||
|
|
43000bde7e | ||
|
|
0a7d80c2fe | ||
| 2984d2a3cf | |||
| bc6854f8a7 | |||
| 4f66270cb0 | |||
|
|
6b6ec79faa | ||
|
|
1304a3e8ef | ||
|
|
57881af130 | ||
|
|
6154c2c7f5 | ||
|
|
647909319f | ||
|
|
d5b70d1545 | ||
| 4ed1907075 | |||
| efcf40eea8 | |||
|
|
d2acf59eba | ||
|
|
3139552217 | ||
|
|
8e6defb29e | ||
|
|
fe4e81a60c | ||
|
|
098233fd1b | ||
| 61062dba7b | |||
| 5581e7e013 | |||
|
|
47d8f7156c | ||
| 0b704da21f | |||
| e8059f98d5 | |||
|
|
df5b820782 | ||
|
|
ed8f9558d6 | ||
| 60a1d1cd8e | |||
|
|
dc4c8e9a26 | ||
| 0721467abf | |||
|
|
0e7cb00a9f | ||
|
|
ba4c00c012 | ||
|
|
b3b3b14ebf | ||
|
|
ee486eb706 | ||
| c60af8d248 | |||
|
|
57d13b9bed | ||
|
|
6d0a6085a5 | ||
| 2e274dd280 | |||
| be7fad2cf5 | |||
| a79f9a28fb | |||
| 0d4b5774b6 | |||
|
|
a623044b93 | ||
|
|
76408c48cf | ||
|
|
4ac51f24b5 | ||
| ed121e9ade | |||
| 548aefb8e1 | |||
| 223c2bde21 | |||
| a1736fa3cc | |||
| 62f6817640 | |||
| f17b566957 | |||
|
|
27edcc5f7b | ||
|
|
21b69edf93 | ||
|
|
68b42c98d6 | ||
|
|
f13688ccb2 | ||
|
|
bb9074df34 | ||
| 1a6248f15d | |||
| a9511ffa82 | |||
| 6f3d6e986c | |||
| 18da3221d7 | |||
| 186cb95c70 | |||
| b1f9bc98ba | |||
| 93ee88ba46 | |||
| 5c6af6184c | |||
| e81a3ea7aa | |||
| 7d92ae6658 | |||
| 5de90be51e | |||
| a1ead80a42 | |||
| a121e62102 | |||
| 5d20238904 | |||
| 4b35c3e443 | |||
|
|
c8d6644116 | ||
|
|
fff5bb3706 | ||
|
|
74597c0ad5 | ||
|
|
cccccf084e | ||
| 54b3745276 | |||
| b50ad83144 | |||
| d2e832d52e | |||
| cdeba2009f | |||
| 65adbda73f | |||
|
|
c137c9e78e | ||
|
|
4801d593b7 | ||
|
|
582e140726 | ||
| ff04dff0ca | |||
|
|
c04089b68a | ||
|
|
d9ee96c057 | ||
| fc45e46502 | |||
| 8015e583bf | |||
| 524660d7b4 | |||
| c2d9d809f1 | |||
| b5d52feee4 | |||
| 4c58942e15 | |||
| edf8c8c92d | |||
|
|
8eaeefecc8 | ||
|
|
911c29ea6b | ||
| 8fc798746f | |||
| 3526fdbf2f | |||
|
|
9d0bb7df0e | ||
|
|
a1d0c3ba5b | ||
| 409fc0df96 | |||
| 7533bc821a | |||
|
|
ca520c7291 | ||
| 0a3bdb2720 | |||
| 1eb3b7d066 | |||
| bc3cb5b115 | |||
| c9f519d7ec | |||
| aabb53c6d2 | |||
|
|
0fe0c05e5c | ||
|
|
62349c0a54 | ||
|
|
cb08e11593 | ||
|
|
7eba632f1c | ||
| de37555db9 | |||
| 6102ec3be8 | |||
| aaea658e58 | |||
|
|
e704258c23 | ||
| ea153d17b7 | |||
| dce24e3849 | |||
| f112bab021 | |||
| 00ffb08e2e | |||
| 8b39eed7bb | |||
| 58e30eb297 | |||
| 07851ff7c8 | |||
|
|
17eb5832fe | ||
|
|
8b8b5c3e76 | ||
|
|
db761ceba8 | ||
| 58499d6837 | |||
| d2df27320f | |||
| f4c73a418b | |||
|
|
daf0a366ef | ||
| b36919e0b6 | |||
| 87d47fa0d9 | |||
| c7d4481a6d | |||
| 4b52d144e0 | |||
|
|
91b72fdf8f | ||
| 38184b8d1b | |||
| 90a1683047 | |||
|
|
f93991db96 | ||
|
|
bca3e1dd42 | ||
|
|
c7e22e4ca6 | ||
|
|
7386bd5750 | ||
|
|
5c8a521f8e | ||
|
|
22973fe47b | ||
|
|
48c83e648d | ||
| 36b60555f3 | |||
|
|
494b80c461 | ||
|
|
7cdb431d98 | ||
|
|
f7ae463544 | ||
|
|
1913147f89 | ||
|
|
77798eaccb | ||
|
|
f17c1f0d8e | ||
|
|
bd4f2d18f5 | ||
|
|
0bbed013d2 | ||
|
|
3455c8a786 | ||
|
|
9981116caa | ||
|
|
10e7400611 | ||
| 379126c513 | |||
| d078feccf9 | |||
| fb2d67c069 | |||
| d1ac8e49ba | |||
| c596bf78f4 | |||
| c6a7e0a0bd | |||
| d0fa1b2f58 | |||
| c10ae17f8c | |||
| e612150f1d | |||
| f3c391582c | |||
| c13ad3a8a7 | |||
|
|
2803c34591 | ||
| f76a12d45c | |||
| 2d5efb62be | |||
| ef3338c648 | |||
| fcf2b38457 | |||
|
|
82bb932cfc | ||
|
|
82c2b641fe | ||
| 7b71bd36b1 | |||
| bdc142d577 | |||
| 62900a22a1 | |||
|
|
23c99e60d5 | ||
| f7b9389f55 | |||
| 1c2ff03c90 | |||
| e6977b29fc | |||
| 6e902011ca | |||
| 7cce903f6e | |||
| 4d6077c93d | |||
| 83c1985ad9 | |||
| e0c247d07b | |||
| 1a3558df52 | |||
| c36e81e263 | |||
|
|
490393acbc | ||
| d3cd7e5b3c | |||
| 818d88d859 | |||
| 1a70569a36 | |||
| 8d24339f04 | |||
| bea858d4e7 | |||
|
|
c6874b33cf | ||
|
|
596e21b712 | ||
|
|
e9c3176dfc | ||
|
|
4a956a1397 | ||
|
|
fc3053dd17 | ||
|
|
bb79380ce5 | ||
|
|
849369fea3 | ||
|
|
283f66ab32 | ||
|
|
abf00884a4 | ||
|
|
50718eda93 | ||
|
|
a3dc27f08e | ||
|
|
055ce2b2a7 | ||
|
|
8171e06965 | ||
|
|
bfa8688c38 | ||
|
|
66c903045f | ||
|
|
b245023dd2 | ||
|
|
8044d64d5e | ||
|
|
1ef86d5e9c |
29
.github/workflows/dotnet-developPublish.yml
vendored
29
.github/workflows/dotnet-developPublish.yml
vendored
@@ -5,6 +5,8 @@ on:
|
||||
branches:
|
||||
- Main
|
||||
|
||||
env:
|
||||
DOTNET_ENVIRONMENT: Development
|
||||
|
||||
jobs:
|
||||
build-and-deploy:
|
||||
@@ -17,29 +19,36 @@ jobs:
|
||||
- name: Setup .NET SDK
|
||||
uses: actions/setup-dotnet@v4
|
||||
with:
|
||||
dotnet-version: '8.0.x' # یا نسخه پروژهت
|
||||
dotnet-version: '10.0.x'
|
||||
|
||||
- name: Restore dependencies
|
||||
run: dotnet restore
|
||||
|
||||
run: dotnet restore ServiceHost/ServiceHost.csproj
|
||||
- name: Build
|
||||
run: dotnet build --configuration Release
|
||||
run: dotnet build ServiceHost/ServiceHost.csproj --configuration Release
|
||||
|
||||
- name: Publish
|
||||
run: dotnet publish --configuration Release --output ./publish /p:EnvironmentName=Development --no-build
|
||||
run: dotnet publish ServiceHost/ServiceHost.csproj --configuration Release --output ./publish /p:EnvironmentName=Development --no-build
|
||||
|
||||
- name: Deploy to IIS via Web Deploy
|
||||
shell: powershell
|
||||
run: |
|
||||
$publishFolder = Resolve-Path ./publish
|
||||
$server = $env:SERVER_HOST
|
||||
$user = $env:DEPLOY_USER
|
||||
$pass = $env:DEPLOY_PASSWORD
|
||||
|
||||
& "C:\Program Files\IIS\Microsoft Web Deploy V3\msdeploy.exe" `
|
||||
-verb:sync `
|
||||
-source:contentPath="$publishFolder" `
|
||||
-dest:contentPath="dadmehrg",computerName="https://$env:SERVER_HOST:8172/msdeploy.axd?site=gozareshgir",userName="$env:DEPLOY_USER",password="$env:DEPLOY_PASSWORD",authType="Basic" `
|
||||
-dest:contentPath="dadmehrg",computerName="https://${server}:8172/msdeploy.axd?site=dadmehrg",userName="$user",password="$pass",authType="Basic" `
|
||||
-allowUntrusted `
|
||||
-enableRule:AppOffline
|
||||
-disableRule:DeleteRule `
|
||||
-useChecksum `
|
||||
-retryAttempts:3 `
|
||||
-retryInterval:2000
|
||||
|
||||
env:
|
||||
SERVER_HOST: 171.22.24.15
|
||||
DEPLOY_USER: ${{ secrets.DEPLOY_USER }}
|
||||
DEPLOY_PASSWORD: ${{ secrets.DEPLOY_PASSWORD }}
|
||||
env:
|
||||
SERVER_HOST: ${{ secrets.DEV_HOST }}
|
||||
DEPLOY_USER: ${{ secrets.DEV_USER }}
|
||||
DEPLOY_PASSWORD: ${{ secrets.DEV_PASS }}
|
||||
|
||||
1
.gitignore
vendored
1
.gitignore
vendored
@@ -364,6 +364,7 @@ MigrationBackup/
|
||||
.idea
|
||||
/ServiceHost/appsettings.Development.json
|
||||
/ServiceHost/appsettings.json
|
||||
/ServiceHost/web.config
|
||||
|
||||
# Storage folder - ignore all uploaded files, thumbnails, and temporary files
|
||||
ServiceHost/Storage
|
||||
|
||||
@@ -21,6 +21,7 @@
|
||||
<PackageReference Include="MD.PersianDateTime.Standard" Version="2.6.0" />
|
||||
<PackageReference Include="Swashbuckle.AspNetCore.Annotations" Version="10.0.1" />
|
||||
<PackageReference Include="System.Security.Cryptography.Xml" Version="10.0.1" />
|
||||
<!--<PackageReference Include="DNTPersianUtils.Core" Version="6.7.1" />-->
|
||||
|
||||
|
||||
|
||||
|
||||
237
0_Framework/Application/ClassificationRangeOfGroupRate.cs
Normal file
237
0_Framework/Application/ClassificationRangeOfGroupRate.cs
Normal file
@@ -0,0 +1,237 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace _0_Framework.Application;
|
||||
|
||||
/// <summary>
|
||||
/// دامنه امتیازات گروه های طبقه بندی مشاغل
|
||||
/// </summary>
|
||||
public static class ClassificationRangeOfGroupRate
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// دریافت فاصله امتیاز گروه
|
||||
/// </summary>
|
||||
/// <param name="groupNo"></param>
|
||||
/// <returns></returns>
|
||||
public static ClassificationGroupRate GetGroupDistanceRate(string groupNo)
|
||||
{
|
||||
|
||||
switch (groupNo)
|
||||
{
|
||||
case "1":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 0,
|
||||
HighRate = 80,
|
||||
DistanceRate = 0,
|
||||
};
|
||||
break;
|
||||
case "2":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 81,
|
||||
HighRate = 95,
|
||||
DistanceRate = 15,
|
||||
};
|
||||
break;
|
||||
case "3":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 96,
|
||||
HighRate = 110,
|
||||
DistanceRate = 30, //فاصله سقف این گروه تا سقف گروه یک
|
||||
};
|
||||
break;
|
||||
case "4":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 111,
|
||||
HighRate = 125,
|
||||
DistanceRate = 45, //فاصله سقف این گروه تا سقف گروه یک
|
||||
};
|
||||
break;
|
||||
case "5":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 126,
|
||||
HighRate = 145,
|
||||
DistanceRate = 65, //فاصله سقف این گروه تا سقف گروه یک
|
||||
};
|
||||
break;
|
||||
case "6":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 146,
|
||||
HighRate = 165,
|
||||
DistanceRate = 85,
|
||||
};
|
||||
break;
|
||||
case "7":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 166,
|
||||
HighRate = 185,
|
||||
DistanceRate = 105,
|
||||
};
|
||||
break;
|
||||
case "8":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 186,
|
||||
HighRate = 210,
|
||||
DistanceRate = 130,
|
||||
};
|
||||
break;
|
||||
case "9":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 211,
|
||||
HighRate = 235,
|
||||
DistanceRate = 155,
|
||||
};
|
||||
break;
|
||||
case "10":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 236,
|
||||
HighRate = 265,
|
||||
DistanceRate = 185,
|
||||
};
|
||||
break;
|
||||
case "11":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 266,
|
||||
HighRate = 295,
|
||||
DistanceRate = 215,
|
||||
};
|
||||
break;
|
||||
case "12":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 296,
|
||||
HighRate = 325,
|
||||
DistanceRate = 245,
|
||||
};
|
||||
break;
|
||||
case "13":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 326,
|
||||
HighRate = 365,
|
||||
DistanceRate = 285,
|
||||
};
|
||||
break;
|
||||
case "14":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 366,
|
||||
HighRate = 405,
|
||||
DistanceRate = 325,
|
||||
};
|
||||
break;
|
||||
case "15":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 406,
|
||||
HighRate = 445,
|
||||
DistanceRate = 365,
|
||||
};
|
||||
break;
|
||||
case "16":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 446,
|
||||
HighRate = 495,
|
||||
DistanceRate = 415,
|
||||
};
|
||||
break;
|
||||
case "17":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 496,
|
||||
HighRate = 545,
|
||||
DistanceRate = 465,
|
||||
};
|
||||
break;
|
||||
case "18":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 546,
|
||||
HighRate = 605,
|
||||
DistanceRate = 525,
|
||||
};
|
||||
break;
|
||||
case "19":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 606,
|
||||
HighRate = 665,
|
||||
DistanceRate = 585,
|
||||
};
|
||||
break;
|
||||
case "20":
|
||||
return new ClassificationGroupRate()
|
||||
{
|
||||
GroupNo = groupNo,
|
||||
LowRate = 666,
|
||||
HighRate = 740,
|
||||
DistanceRate = 660,
|
||||
};
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
return new ClassificationGroupRate();
|
||||
}
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// دیتای امتیازات هر گرو
|
||||
/// </summary>
|
||||
public class ClassificationGroupRate
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// شمازه گروه
|
||||
/// </summary>
|
||||
public string GroupNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// امتیاز کف
|
||||
/// </summary>
|
||||
public int LowRate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// امتیاز سقف
|
||||
/// </summary>
|
||||
public int HighRate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// فاصله امتیاز
|
||||
/// </summary>
|
||||
public int DistanceRate { get; set; }
|
||||
}
|
||||
14
0_Framework/Application/Enums/TypeOfCoefficient.cs
Normal file
14
0_Framework/Application/Enums/TypeOfCoefficient.cs
Normal file
@@ -0,0 +1,14 @@
|
||||
namespace _0_Framework.Application.Enums;
|
||||
|
||||
public enum TypeOfCoefficient
|
||||
{
|
||||
/// <summary>
|
||||
/// ضریب ریالی طرح
|
||||
/// </summary>
|
||||
RialCoefficient,
|
||||
|
||||
/// <summary>
|
||||
/// ضریب ریالی اداره کار
|
||||
/// </summary>
|
||||
JobOrganization,
|
||||
}
|
||||
@@ -7,7 +7,7 @@ namespace _0_Framework.Application;
|
||||
public class PagedResult<T> where T : class
|
||||
{
|
||||
public int TotalCount { get; set; }
|
||||
public List<T> List { get; set; }
|
||||
public List<T> List { get; set; } = [];
|
||||
}
|
||||
public class PagedResult<T,TMeta>:PagedResult<T> where T : class
|
||||
{
|
||||
|
||||
@@ -33,6 +33,35 @@ public static class Tools
|
||||
public static string[] DayNames = { "شنبه", "یکشنبه", "دو شنبه", "سه شنبه", "چهار شنبه", "پنج شنبه", "جمعه" };
|
||||
public static string[] DayNamesG = { "یکشنبه", "دو شنبه", "سه شنبه", "چهار شنبه", "پنج شنبه", "جمعه", "شنبه" };
|
||||
|
||||
/// <summary>
|
||||
/// نام ستون از جدول مزد سنوات طبثه بندی را میگیرد و دیتای داخل آن ستون را برمیگرداند
|
||||
/// </summary>
|
||||
/// <param name="obj"></param>
|
||||
/// <param name="propertyName"></param>
|
||||
/// <returns></returns>
|
||||
public static double? GetDynamicDouble(object obj, string propertyName)
|
||||
{
|
||||
if (obj == null || string.IsNullOrWhiteSpace(propertyName))
|
||||
return null;
|
||||
|
||||
var propertyInfo = obj.GetType().GetProperty(propertyName);
|
||||
if (propertyInfo == null)
|
||||
return null;
|
||||
|
||||
var value = propertyInfo.GetValue(obj);
|
||||
if (value == null)
|
||||
return null;
|
||||
|
||||
try
|
||||
{
|
||||
return Convert.ToDouble(value);
|
||||
}
|
||||
catch
|
||||
{
|
||||
return null;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
public static bool IsMobileValid(this string mobileNo)
|
||||
{
|
||||
@@ -41,6 +70,33 @@ public static class Tools
|
||||
return Regex.IsMatch(mobileNo, "^((09))(\\d{9})$");
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// متد رند کننده مبلغ
|
||||
/// استفاده شده در بیمه
|
||||
/// </summary>
|
||||
/// <param name="value"></param>
|
||||
/// <returns></returns>
|
||||
public static double GetRoundDoubleValue(double value)
|
||||
{
|
||||
string strValue = value.ToString();
|
||||
if (strValue.IndexOf('.') > -1)
|
||||
{
|
||||
|
||||
|
||||
string a = strValue.Substring(strValue.IndexOf('.') + 1, 1);
|
||||
if (int.Parse(a) > 5)
|
||||
{
|
||||
return (Math.Round(value, MidpointRounding.ToPositiveInfinity));
|
||||
}
|
||||
else
|
||||
{
|
||||
return (Math.Round(value, MidpointRounding.ToNegativeInfinity));
|
||||
}
|
||||
}
|
||||
|
||||
return value;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع و تعداد ماه را میگیرد و تاریخ پایان قراردا را بر میگرداند
|
||||
/// </summary>
|
||||
@@ -445,6 +501,30 @@ public static class Tools
|
||||
|
||||
return myMoney.ToString("N0", CultureInfo.CreateSpecificCulture("fa-ir"));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// اگر مبلغ صفر باشد خط تیره برمیگرداند
|
||||
/// </summary>
|
||||
/// <param name="myMoney"></param>
|
||||
/// <returns></returns>
|
||||
public static string ToMoneyCheckZero(this double myMoney)
|
||||
{
|
||||
if (myMoney == 0)
|
||||
return "-";
|
||||
return myMoney.ToString("N0", CultureInfo.CreateSpecificCulture("fa-ir"));
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// اگر مبلغ صفر یا نال باشد خط تیره برمیگرداند
|
||||
/// </summary>
|
||||
/// <param name="myMoney"></param>
|
||||
/// <returns></returns>
|
||||
public static string ToMoneyCheckZeroNullable(this double? myMoney)
|
||||
{
|
||||
if (myMoney == 0 || myMoney == null)
|
||||
return "-";
|
||||
return myMoney?.ToString("N0", CultureInfo.CreateSpecificCulture("fa-ir"));
|
||||
}
|
||||
public static string ToMoneyNullable(this double? myMoney)
|
||||
{
|
||||
|
||||
@@ -626,7 +706,115 @@ public static class Tools
|
||||
return y2;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شمسی میگیرد و پایان ماه را به میلادی برمیگرداند
|
||||
/// </summary>
|
||||
/// <param name="date"></param>
|
||||
/// <returns></returns>
|
||||
public static DateTime FindeEndOfMonthReturnGr(this string date)
|
||||
{
|
||||
string y2 = string.Empty;
|
||||
var year = Convert.ToInt32(date.Substring(0, 4));
|
||||
var month = Convert.ToInt32(date.Substring(5, 2));
|
||||
var YearD = date.Substring(0, 4);
|
||||
var MonthD = date.Substring(5, 2);
|
||||
if (month <= 6)
|
||||
{
|
||||
y2 = $"{YearD}/{MonthD}/31";
|
||||
}
|
||||
else if (month > 6 && month < 12)
|
||||
{
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
}
|
||||
else if (month == 12)
|
||||
{
|
||||
switch (year)
|
||||
{
|
||||
case 1346:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1350:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1354:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1358:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1362:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1366:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1370:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1375:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1379:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1383:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1387:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1391:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1395:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1399:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1403:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1408:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1412:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1416:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1420:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1424:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1428:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1432:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1436:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1441:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
case 1445:
|
||||
y2 = $"{YearD}/{MonthD}/30";
|
||||
break;
|
||||
|
||||
default:
|
||||
y2 = $"{YearD}/{MonthD}/29";
|
||||
break;
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
return y2.ToGeorgianDateTime();
|
||||
}
|
||||
/// <summary>
|
||||
/// تعداد روزهای سال را برمیگرداند
|
||||
/// اگر کبیسهد بود سال 366 روزه برمیگرداند
|
||||
|
||||
@@ -12,6 +12,7 @@ public interface IRepository<TKey, T> where T:class
|
||||
{
|
||||
T Get(TKey id);
|
||||
List<T> Get();
|
||||
Task<List<T>> GetListByIdList(List<TKey> ids);
|
||||
void Create(T entity);
|
||||
Task CreateAsync(T entity);
|
||||
bool ExistsIgnoreQueryFilter(Expression<Func<T, bool>> expression);
|
||||
|
||||
@@ -53,6 +53,11 @@ namespace _0_Framework.InfraStructure
|
||||
{
|
||||
return _context.Set<T>().ToList();
|
||||
}
|
||||
|
||||
public async Task<List<T>> GetListByIdList(List<TKey> ids)
|
||||
{
|
||||
return await _context.Set<T>().Where(e => ids.Contains(EF.Property<TKey>(e, "id"))).ToListAsync();
|
||||
}
|
||||
public void Remove(T entity)
|
||||
{
|
||||
_context.Set<T>().Remove(entity);
|
||||
|
||||
@@ -8,5 +8,6 @@ namespace Company.Domain.BankAgg
|
||||
{
|
||||
public void Remove(Bank entity);
|
||||
List<BankViewModel> Search(string name);
|
||||
List<BankSelectList> GetBanksForSelectList();
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,9 +1,10 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Application;
|
||||
using _0_Framework.Application;
|
||||
using _0_Framework.Domain;
|
||||
using CompanyManagment.App.Contracts.Checkout;
|
||||
using CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
|
||||
namespace Company.Domain.CheckoutAgg;
|
||||
@@ -22,7 +23,7 @@ public interface ICheckoutRepository : IRepository<long, Checkout>
|
||||
string year, string month);
|
||||
EditCheckout GetDetails(long id);
|
||||
|
||||
Task CreateCkeckout(Checkout command);
|
||||
Task<bool> CreateCheckout(Checkout command);
|
||||
/// <summary>
|
||||
/// لود لیست اولیه جهت ایجاد فیش حقوقی
|
||||
/// </summary>
|
||||
@@ -80,4 +81,44 @@ public interface ICheckoutRepository : IRepository<long, Checkout>
|
||||
#endregion
|
||||
|
||||
Task<Checkout> GetByWorkshopIdEmployeeIdInDate(long workshopId, long employeeId, DateTime inDate);
|
||||
Task<PagedResult<CheckoutListClientDto>> GetListForClient(long workshopId,
|
||||
CheckoutListClientSearchModel searchModel);
|
||||
|
||||
|
||||
#region ForApi
|
||||
/// <summary>
|
||||
/// دریافت سلکت لیست پرسنل کارگاه
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<EmployeeSelectListDto>> GetEmployeeSelectListByWorkshopId(long id);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت لیست فیش حقوقی
|
||||
/// </summary>
|
||||
/// <param name="searchModel"></param>
|
||||
/// <returns></returns>
|
||||
Task<PagedResult<CheckoutDto>> GetList(CheckoutSearchModelDto searchModel);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// پرینت فیش حقوقی
|
||||
/// Api
|
||||
/// </summary>
|
||||
/// <param name="ids"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<CheckoutPrintDto>> CheckoutPrint(List<long> ids);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت قردادها و جداول وابسته برای ایجاد فیش
|
||||
/// </summary>
|
||||
/// <param name="ids"></param>
|
||||
/// <param name="year"></param>
|
||||
/// <param name="month"></param>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult<GetContractAndIncludesDataToCreateDto>> GetContractsAndIncludeDataDataToCreateCheckout(
|
||||
List<long> ids, string year, string month, long workshopId);
|
||||
|
||||
#endregion
|
||||
}
|
||||
@@ -0,0 +1,93 @@
|
||||
using _0_Framework.Domain;
|
||||
using System;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
public class ClassificationEmployee : EntityBase
|
||||
{
|
||||
/// <summary>
|
||||
/// ایجاد پرسنل طرح
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <param name="employeeId"></param>
|
||||
/// <param name="classificationSchemeId"></param>
|
||||
/// <param name="classificationGroupId"></param>
|
||||
/// <param name="classificationGroupJobId"></param>
|
||||
/// <param name="startGroupDate"></param>
|
||||
/// <param name="endGroupDate"></param>
|
||||
public ClassificationEmployee(long workshopId, long employeeId, long classificationSchemeId, long classificationGroupId, long classificationGroupJobId, DateTime? startGroupDate)
|
||||
{
|
||||
WorkshopId = workshopId;
|
||||
EmployeeId = employeeId;
|
||||
ClassificationSchemeId = classificationSchemeId;
|
||||
ClassificationGroupId = classificationGroupId;
|
||||
ClassificationGroupJobId = classificationGroupJobId;
|
||||
StartGroupDate = startGroupDate;
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long EmployeeId { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long ClassificationSchemeId { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long ClassificationGroupId { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی شغل
|
||||
/// </summary>
|
||||
public long ClassificationGroupJobId { get; private set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع استفاده از گروه
|
||||
/// </summary>
|
||||
public DateTime? StartGroupDate{ get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان استفاده از گروه
|
||||
/// </summary>
|
||||
public DateTime? EndGroupDate { get; private set; }
|
||||
|
||||
public ClassificationGroup ClassificationGroup { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ویرایش پرسنل طرح
|
||||
/// </summary>
|
||||
/// <param name="classificationGroupId"></param>
|
||||
/// <param name="classificationGroupJobId"></param>
|
||||
public void Edit(long classificationGroupId, long classificationGroupJobId)
|
||||
{
|
||||
ClassificationGroupId = classificationGroupId;
|
||||
ClassificationGroupJobId = classificationGroupJobId;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// ویرایش گروه های چندگانه پرسنل طرح
|
||||
/// </summary>
|
||||
/// <param name="classificationGroupId"></param>
|
||||
/// <param name="classificationGroupJobId"></param>
|
||||
/// <param name="startGroupDate"></param>
|
||||
/// <param name="endGroupDate"></param>
|
||||
public void EditMultipleGroupMember(long classificationGroupId, long classificationGroupJobId, DateTime startGroupDate)
|
||||
{
|
||||
ClassificationGroupId = classificationGroupId;
|
||||
ClassificationGroupJobId = classificationGroupJobId;
|
||||
StartGroupDate = startGroupDate;
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,43 @@
|
||||
using System.Collections.Generic;
|
||||
using _0_Framework.Domain;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
|
||||
public class ClassificationGroup : EntityBase
|
||||
{
|
||||
/// <summary>
|
||||
/// ایجاد گروه های بیست گانه طرح طبقه بندی
|
||||
/// </summary>
|
||||
/// <param name="groupNo"></param>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <param name="classificationSchemeId"></param>
|
||||
public ClassificationGroup(string groupNo, long workshopId, long classificationSchemeId)
|
||||
{
|
||||
GroupNo = groupNo;
|
||||
WorkshopId = workshopId;
|
||||
ClassificationSchemeId = classificationSchemeId;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// </summary>
|
||||
public string GroupNo { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; private set; }
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long ClassificationSchemeId { get; private set; }
|
||||
|
||||
public ClassificationScheme ClassificationScheme { get; set; }
|
||||
|
||||
|
||||
public List<ClassificationGroupJob> ClassificationGroupJobs { get; set; }
|
||||
public List<ClassificationGroupSalary> ClassificationGroupSalaries { get; set; }
|
||||
|
||||
public List<ClassificationEmployee> ClassificationEmployees { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,55 @@
|
||||
using _0_Framework.Domain;
|
||||
using _0_Framework_b.Domain;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
public class ClassificationGroupJob : EntityBaseWithoutCreationDate
|
||||
{
|
||||
/// <summary>
|
||||
/// ایجاد لیست مشغال برای گروه های طرح طبقه بندی
|
||||
/// </summary>
|
||||
/// <param name="jobId"></param>
|
||||
/// <param name="jobName"></param>
|
||||
/// <param name="jobCode"></param>
|
||||
/// <param name="classificationGroupId"></param>
|
||||
/// <param name="groupNo"></param>
|
||||
public ClassificationGroupJob(long jobId, string jobName, string jobCode, long classificationGroupId, string groupNo)
|
||||
{
|
||||
JobId = jobId;
|
||||
JobName = jobName;
|
||||
JobCode = jobCode;
|
||||
ClassificationGroupId = classificationGroupId;
|
||||
GroupNo = groupNo;
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// آی دی شغل
|
||||
/// </summary>
|
||||
public long JobId { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام شغل
|
||||
/// </summary>
|
||||
public string JobName { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد شغل
|
||||
/// </summary>
|
||||
public string JobCode { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long ClassificationGroupId { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// </summary>
|
||||
public string GroupNo { get; private set; }
|
||||
|
||||
|
||||
public ClassificationGroup ClassificationGroup { get; set; }
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,82 @@
|
||||
using _0_Framework.Domain;
|
||||
using System;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
public class ClassificationGroupSalary : EntityBase
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد دستمزد برای گروه
|
||||
/// </summary>
|
||||
/// <param name="classificationGroupId"></param>
|
||||
/// <param name="groupNo"></param>
|
||||
/// <param name="groupSalary"></param>
|
||||
/// <param name="startDate"></param>
|
||||
/// <param name="endDate"></param>
|
||||
/// <param name="year"></param>
|
||||
public ClassificationGroupSalary(long classificationGroupId, string groupNo, double groupSalary, DateTime startDate, DateTime endDate, int year, long schemeId)
|
||||
{
|
||||
ClassificationGroupId = classificationGroupId;
|
||||
GroupNo = groupNo;
|
||||
GroupSalary = groupSalary;
|
||||
StartDate = startDate;
|
||||
EndDate = endDate;
|
||||
Year = year;
|
||||
SchemeId = schemeId;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long ClassificationGroupId { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// </summary>
|
||||
public string GroupNo { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// دستمزد گروه
|
||||
/// </summary>
|
||||
public double GroupSalary { get; private set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع
|
||||
/// </summary>
|
||||
public DateTime StartDate { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان
|
||||
/// </summary>
|
||||
public DateTime EndDate { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال
|
||||
/// </summary>
|
||||
public int Year { get; private set; }
|
||||
|
||||
public long SchemeId { get; private set; }
|
||||
|
||||
|
||||
public ClassificationGroup ClassificationGroup { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ویرایش دستمزد گروه
|
||||
/// </summary>
|
||||
|
||||
/// <param name="groupSalary"></param>
|
||||
/// <param name="startDate"></param>
|
||||
/// <param name="endDate"></param>
|
||||
/// <param name="year"></param>
|
||||
public void Edit(double groupSalary, DateTime startDate, DateTime endDate, int year)
|
||||
{
|
||||
|
||||
GroupSalary = groupSalary;
|
||||
StartDate = startDate;
|
||||
EndDate = endDate;
|
||||
Year = year;
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,68 @@
|
||||
using System;
|
||||
using _0_Framework.Domain;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
public class ClassificationRialCoefficient : EntityBaseWithoutCreationDate
|
||||
{
|
||||
/// <summary>
|
||||
/// ایچاد ضریب ریالی
|
||||
/// </summary>
|
||||
/// <param name="classificationSchemeId"></param>
|
||||
/// <param name="rialCoefficient"></param>
|
||||
/// <param name="startDate"></param>
|
||||
/// <param name="endDate"></param>
|
||||
/// <param name="year"></param>
|
||||
public ClassificationRialCoefficient(long classificationSchemeId, double rialCoefficient, DateTime startDate, DateTime endDate, int year)
|
||||
{
|
||||
ClassificationSchemeId = classificationSchemeId;
|
||||
RialCoefficient = rialCoefficient;
|
||||
StartDate = startDate;
|
||||
EndDate = endDate;
|
||||
Year = year;
|
||||
}
|
||||
|
||||
//آی دی طرح
|
||||
public long ClassificationSchemeId { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// ضریب ریالی
|
||||
/// </summary>
|
||||
public double RialCoefficient { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع
|
||||
/// </summary>
|
||||
public DateTime StartDate { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان
|
||||
/// </summary>
|
||||
public DateTime EndDate { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال
|
||||
/// </summary>
|
||||
public int Year { get; private set; }
|
||||
|
||||
|
||||
public ClassificationScheme ClassificationScheme { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ویرایش ضریب ریالی
|
||||
/// </summary>
|
||||
/// <param name="classificationSchemeId"></param>
|
||||
/// <param name="rialCoefficient"></param>
|
||||
/// <param name="startDate"></param>
|
||||
/// <param name="endDate"></param>
|
||||
/// <param name="year"></param>
|
||||
public void Edit(double rialCoefficient, DateTime startDate, DateTime endDate, int year)
|
||||
{
|
||||
|
||||
RialCoefficient = rialCoefficient;
|
||||
StartDate = startDate;
|
||||
EndDate = endDate;
|
||||
Year = year;
|
||||
}
|
||||
|
||||
}
|
||||
@@ -0,0 +1,88 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using _0_Framework.Application.Enums;
|
||||
using _0_Framework.Domain;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
public class ClassificationScheme : EntityBase
|
||||
{
|
||||
/// <summary>
|
||||
/// ایجاد طرح طبقه بندی مشاغل
|
||||
/// </summary>
|
||||
/// <param name="includingDateGr"></param>
|
||||
/// <param name="executionDateGr"></param>
|
||||
/// <param name="designerFullName"></param>
|
||||
/// <param name="designerPhone"></param>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <param name="typeOfCoefficient"></param>
|
||||
public ClassificationScheme(DateTime includingDateGr, DateTime executionDateGr, string designerFullName, string designerPhone, long workshopId, TypeOfCoefficient typeOfCoefficient)
|
||||
{
|
||||
IncludingDateGr = includingDateGr;
|
||||
ExecutionDateGr = executionDateGr;
|
||||
DesignerFullName = designerFullName;
|
||||
DesignerPhone = designerPhone;
|
||||
WorkshopId = workshopId;
|
||||
TypeOfCoefficient = typeOfCoefficient;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شمول طرح
|
||||
/// </summary>
|
||||
public DateTime IncludingDateGr { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ اجرای طرح
|
||||
/// </summary>
|
||||
public DateTime ExecutionDateGr { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان طرح
|
||||
/// </summary>
|
||||
public DateTime? EndSchemeDateGr { get; private set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل طراح
|
||||
/// </summary>
|
||||
public string DesignerFullName { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره همراه طراح
|
||||
/// </summary>
|
||||
public string DesignerPhone { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; private set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نوع ضریب
|
||||
/// </summary>
|
||||
public TypeOfCoefficient TypeOfCoefficient { get; private set; }
|
||||
|
||||
|
||||
public List<ClassificationGroup> ClassificationGroups { get; set; }
|
||||
|
||||
public List<ClassificationRialCoefficient> ClassificationRialCoefficients { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ویرایش طرح
|
||||
/// </summary>
|
||||
/// <param name="includingDateGr"></param>
|
||||
/// <param name="executionDateGr"></param>
|
||||
/// <param name="designerFullName"></param>
|
||||
/// <param name="designerPhone"></param>
|
||||
/// <param name="workshopId"></param>
|
||||
public void Edit(DateTime includingDateGr, DateTime executionDateGr,string designerFullName, string designerPhone, TypeOfCoefficient typeOfCoefficient)
|
||||
{
|
||||
IncludingDateGr = includingDateGr;
|
||||
ExecutionDateGr = executionDateGr;
|
||||
DesignerFullName = designerFullName;
|
||||
DesignerPhone = designerPhone;
|
||||
TypeOfCoefficient = typeOfCoefficient;
|
||||
|
||||
}
|
||||
}
|
||||
@@ -0,0 +1,42 @@
|
||||
using _0_Framework.Domain;
|
||||
using CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
public interface IClassificationEmployeeRepository : IRepository<long, ClassificationEmployee>
|
||||
{
|
||||
/// <summary>
|
||||
/// دریافت لیست پرسنل کارگاه
|
||||
/// تب افزودن پرسنل
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<EmployeeInfoList>> GetEmployeeListData(long schemeId);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت اطلاعات عضویتی پرسنل در گروه
|
||||
/// </summary>
|
||||
/// <param name="employeeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<EditEmployeeGroupList>> GetEmployeeMemberizeData(long employeeId);
|
||||
|
||||
/// <summary>
|
||||
/// ذخیره انتقال پرسنل به گره های دیگر
|
||||
///بصورت گروهی
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task CreateTransferRange(List<ClassificationEmployee> command);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// حذف پرسنل از گروه از سمت ویرایش
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task RemoveRangeByEdit(List<ClassificationEmployee> command);
|
||||
|
||||
}
|
||||
@@ -0,0 +1,89 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Domain;
|
||||
using CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
public interface IClassificationGroupRepository : IRepository<long, ClassificationGroup>
|
||||
{
|
||||
/// <summary>
|
||||
/// دریافت گروه های طرح
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<ClassificationGroupList>> GetGroups(long schemeId);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت گروه ها و مشاغلشان برای تب تعیین مشاغل
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<ClassificationGroupAndJobModel>> GetGroupAndJobs(long schemeId);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت لیست گروه ها
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<GetGroupAndJobSchemeListDto>> GetGroupList(long schemeId);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت لیست مشاغل برای مودال ایجاد و ویرایش
|
||||
/// </summary>
|
||||
/// <param name="groupId"></param>
|
||||
/// <returns></returns>
|
||||
Task<AddOrEditJobInGroupDto> GetCreateOrEditJobsData(long groupId);
|
||||
|
||||
/// <summary>
|
||||
/// چک میکند که آی پرسنلی وجود دارد که این شغل به او نسبت داده شده
|
||||
/// </summary>
|
||||
/// <param name="jobId"></param>
|
||||
/// <param name="groupId"></param>
|
||||
/// <returns></returns>
|
||||
Task<bool> CheckIfEmployeeHasThisJob(long jobId, long groupId);
|
||||
|
||||
/// <summary>
|
||||
/// ذخیر ایجاد یا ویرایش مشاغل در گروه
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<bool> SaveJobsToGroup(AddOrEditJobInGroupDto command);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت مشاغل گروه توسط آی دی گروه
|
||||
/// </summary>
|
||||
/// <param name="groupId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<EditClassificationGroupJob>> GetGroupJobs(long groupId);
|
||||
|
||||
/// <summary>
|
||||
/// چک میکند که آی پرسنلی وجود دارد که این شغل به او نسبت داده شده
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <param name="groupId"></param>
|
||||
/// <returns></returns>
|
||||
Task<bool> CheckEmployeeHasThisJob(long id, long groupId);
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد مشاغل
|
||||
/// </summary>
|
||||
/// <param name="createClassificationGroupJob"></param>
|
||||
/// <param name="deleteJobList"></param>
|
||||
/// <returns></returns>
|
||||
Task<bool> CreateJobs(List<ClassificationGroupJob> createClassificationGroupJob, List<long> deleteJobList);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// در یافت اطلاعات گروه برای لود مودال ایجاد دستمزد های
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<SalaryAndRialCoefficientModel> GetGroupToCreateSalariesModal(long schemeId);
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد گروه های بیست گانه
|
||||
/// </summary>
|
||||
/// <param name="groupList"></param>
|
||||
/// <returns></returns>
|
||||
Task CreateGroups(List<ClassificationGroup> groupList);
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
using _0_Framework.Domain;
|
||||
using CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
public interface IClassificationGroupSalariesRepository : IRepository<long, ClassificationGroupSalary>
|
||||
{
|
||||
/// <summary>
|
||||
/// ایجاد دستمزدهای گروه ها
|
||||
/// </summary>
|
||||
/// <param name="createClassificationGroupSalary"></param>
|
||||
/// <returns></returns>
|
||||
Task CreateSalaries(List<ClassificationGroupSalary> createClassificationGroupSalary);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت دستمزدها و ضریب ریالی برای مودال ویرایش
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <param name="startDate"></param>
|
||||
/// <param name="endDate"></param>
|
||||
/// <returns></returns>
|
||||
Task<SalaryAndRialCoefficientModel> GetEditSalariesData(long schemeId, string startDate, string endDate);
|
||||
|
||||
/// <summary>
|
||||
/// لیست دستمزدها بر اساس تاریخ و سال برای تب دستمزدها
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<SalaryAndRialCoefficientTab> GetSalariesTabData(long schemeId);
|
||||
|
||||
|
||||
#region ForApi
|
||||
/// <summary>
|
||||
/// لیست دستمزدها بر اساس تاریخ و سال برای تب دستمزدها
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<SalaryAndRialCoefficientTabDataList>> GetSalaryList(long schemeId);
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
@@ -0,0 +1,8 @@
|
||||
using _0_Framework.Domain;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
public interface IClassificationRialCoefficientRepository : IRepository<long, ClassificationRialCoefficient>
|
||||
{
|
||||
|
||||
}
|
||||
@@ -0,0 +1,56 @@
|
||||
using _0_Framework.Application;
|
||||
using _0_Framework.Domain;
|
||||
using CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
using CompanyManagment.App.Contracts.YearlySalary;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace Company.Domain.ClassificationSchemeAgg;
|
||||
|
||||
public interface IClassificationSchemeRepository : IRepository<long, ClassificationScheme>
|
||||
{
|
||||
/// <summary>
|
||||
/// پارشیال صفحه ایجاد طرح
|
||||
/// </summary>
|
||||
/// <param name="worskhopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<ClassificationSchemeListDto> GetClassificationSchemeList(long workshopId);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت اطلاعات طرح برای ویرایش
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task<EditClassificationSchemeDto> GetClassificationScheme(long id);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت اطلاعات طر برای محاسبات
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task<EditClassificationScheme> GetClassificationSchemeToCompute(long id);
|
||||
|
||||
/// <summary>
|
||||
/// متد محاسبه پایه سنوات برا افراد تک گروه
|
||||
/// </summary>
|
||||
/// <param name="schemeStart">تاریخ شروع طرح</param>
|
||||
/// <param name="schemeEnd">تاریخ پاین طرح، اجباری نیست</param>
|
||||
/// <param name="contractStart">تاریخ شروع قراداد</param>
|
||||
/// <param name="contractEnd">تاریخ پایان قراداد</param>
|
||||
/// <param name="groupNo">شماره گروه</param>
|
||||
/// <param name="employeeId">آی دی پرسنل</param>
|
||||
/// <param name="workshopId">آی دی کارگاه</param>
|
||||
/// <returns></returns>
|
||||
Task<BaseYearDataViewModel> BaseYearComputeOneGroup(DateTime schemeStart, DateTime? schemeEnd,
|
||||
DateTime contractStart, DateTime contractEnd, string groupNo, long employeeId, long workshopId);
|
||||
|
||||
/// <summary>
|
||||
/// حذف طرح
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task DeleteClassificationScheme(long id);
|
||||
}
|
||||
@@ -54,6 +54,7 @@ public interface IEmployeeRepository : IRepository<long, Employee>
|
||||
|
||||
Employee GetIgnoreQueryFilter(long id);
|
||||
|
||||
[Obsolete("این متد منسوخ شده است و از متد WorkedEmployeesInWorkshopSelectList استفاده کنید")]
|
||||
Task<List<EmployeeSelectListViewModel>> WorkedEmployeesInWorkshopSelectList(long workshopId);
|
||||
|
||||
|
||||
@@ -77,7 +78,39 @@ public interface IEmployeeRepository : IRepository<long, Employee>
|
||||
Task<List<EmployeeSelectListViewModel>> GetSelectList(string searchText,long id);
|
||||
Task<List<GetEmployeeListViewModel>> GetList(GetEmployeeListSearchModel searchModel);
|
||||
Task<List<GetClientEmployeeListViewModel>> GetClientEmployeeList(GetClientEmployeeListSearchModel searchModel, long workshopId);
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// دریافت لیست پرسنل کلاینت
|
||||
/// api
|
||||
/// </summary>
|
||||
/// <param name="searchModel"></param>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<EmployeeListDto>> ListOfAllEmployeesClient(EmployeeSearchModelDto searchModel, long workshopId);
|
||||
|
||||
/// <summary>
|
||||
/// پرینت تجمیعی پرسنل کلاینت
|
||||
/// api
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<PrintAllEmployeesInfoDtoClient>> PrintAllEmployeesInfoClient(long workshopId);
|
||||
|
||||
/// <summary>
|
||||
/// پرینت گروهی تفکیکی پرسنل
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<PrintAllDetailsPersonnelInfoDtoClient>> PrintAllDetailsPersonnelInfoClient(long workshopId);
|
||||
|
||||
/// <summary>
|
||||
/// سلکت لیست پرسنل های کارگاه کلاینت
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<EmployeeSelectListViewModel>> GetWorkingEmployeesSelectList(long workshopId);
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
}
|
||||
@@ -1,7 +1,11 @@
|
||||
|
||||
using System;
|
||||
using _0_Framework.Domain;
|
||||
using CompanyManagment.App.Contracts.EmployeeBankInformation;
|
||||
using System.Collections.Generic;
|
||||
using System.Security.AccessControl;
|
||||
using System.Threading.Tasks;
|
||||
using CompanyManagment.App.Contracts.Workshop;
|
||||
|
||||
namespace Company.Domain.EmployeeBankInformationAgg
|
||||
{
|
||||
@@ -11,14 +15,31 @@ namespace Company.Domain.EmployeeBankInformationAgg
|
||||
void Remove(EmployeeBankInformation bankInformation);
|
||||
void RemoveRange(List<EmployeeBankInformation> entities);
|
||||
|
||||
[Obsolete("از متد async استفاده کنید")]
|
||||
List<GroupedEmployeeBankInformationViewModel> Search(long workshopId, EmployeeBankInformationSearchModel searchParams);
|
||||
|
||||
Task<List<GroupedEmployeeBankInformationViewModel>> SearchAsync(long workshopId,
|
||||
EmployeeBankInformationSearchModel searchParams);
|
||||
|
||||
|
||||
GroupedEmployeeBankInformationViewModel GetByEmployeeId(long workshopId, long employeeId);
|
||||
List<EmployeeBankInformation> GetRangeByEmployeeId(long workshopId, long employeeId);
|
||||
EmployeeBankInformationViewModel GetDetails(long id);
|
||||
List<GroupedEmployeeBankInformationViewModel> GetAllByWorkshopId(long workshopId);
|
||||
|
||||
List<EmployeeBankInformationViewModelForExcel> SearchForExcel(long workshopId,
|
||||
EmployeeBankInformationSearchModel searchParams);
|
||||
|
||||
/// <summary>
|
||||
/// جزئیات اطلاعات بانکی بر اساس پرسنل
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <param name="employeeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<GetEmployeeBankInfoDetailsDto> GetDetailsByEmployeeIdAsync(long workshopId, long employeeId);
|
||||
|
||||
|
||||
|
||||
List<EmployeeBankInformationViewModelForExcel> SearchForExcel(long workshopId, EmployeeBankInformationSearchModel searchParams);
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -7,7 +7,6 @@ using _0_Framework.Application.Enums;
|
||||
using _0_Framework.Domain;
|
||||
using CompanyManagment.App.Contracts.InstitutionContract;
|
||||
using CompanyManagment.App.Contracts.Workshop;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace Company.Domain.InstitutionContractAgg;
|
||||
|
||||
@@ -89,6 +88,9 @@ public interface IInstitutionContractRepository : IRepository<long, InstitutionC
|
||||
|
||||
Task<List<InstitutionContractSelectListViewModel>> GetInstitutionContractSelectList(string search, string selected);
|
||||
Task<List<InstitutionContractPrintViewModel>> PrintAllAsync(List<long> ids);
|
||||
Task<GetInstitutionContractWorkshopsDetails> GetContractWorkshopsDetails(long id);
|
||||
Task AmendmentComplete(InstitutionContractAmendmentCompleteRequest request);
|
||||
Task<GetInstitutionAmendmentVerificationDetailsViewModel> GetAmendmentVerificationDetails(Guid id, long amendmentId);
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -275,6 +275,11 @@ public class InstitutionContract : EntityBase
|
||||
{
|
||||
SigningType = signingType;
|
||||
}
|
||||
|
||||
public void AddAmendment(InstitutionContractAmendment amendment)
|
||||
{
|
||||
Amendments.Add(amendment);
|
||||
}
|
||||
}
|
||||
|
||||
public class InstitutionContractAmendment : EntityBase
|
||||
@@ -282,14 +287,15 @@ public class InstitutionContractAmendment : EntityBase
|
||||
private InstitutionContractAmendment(){}
|
||||
public InstitutionContractAmendment(long institutionContractId,
|
||||
List<InstitutionContractInstallment> installments, double amount, bool hasInstallment,
|
||||
InstitutionContractAmendmentChange amendmentChange, long lawId)
|
||||
List<InstitutionContractAmendmentChange> amendmentChanges, long lawId)
|
||||
{
|
||||
InstitutionContractId = institutionContractId;
|
||||
Installments = installments is { Count: > 0} ? installments : [];
|
||||
Amount = amount;
|
||||
HasInstallment = hasInstallment;
|
||||
AmendmentChanges = [amendmentChange];
|
||||
AmendmentChanges = amendmentChanges;
|
||||
LawId = lawId;
|
||||
VerificationStatus = InstitutionContractVerificationStatus.PendingForVerify;
|
||||
}
|
||||
|
||||
public long InstitutionContractId { get; set; }
|
||||
@@ -303,6 +309,15 @@ public class InstitutionContractAmendment : EntityBase
|
||||
|
||||
public long LawId { get; set; }
|
||||
|
||||
|
||||
public string VerifierPhoneNumber { get; private set; }
|
||||
|
||||
public string VerifierFullName { get; private set; }
|
||||
|
||||
public InstitutionContractVerificationStatus VerificationStatus { get; set; }
|
||||
|
||||
public DateTime VerifyCodeCreation { get; set; }
|
||||
|
||||
public void SetVerifyCode(string code,string verifierFullName, string verifierPhoneNumber)
|
||||
{
|
||||
VerifyCode = code;
|
||||
@@ -310,25 +325,22 @@ public class InstitutionContractAmendment : EntityBase
|
||||
VerifierFullName = verifierFullName;
|
||||
VerifierPhoneNumber = verifierPhoneNumber;
|
||||
}
|
||||
|
||||
public string VerifierPhoneNumber { get; private set; }
|
||||
|
||||
public string VerifierFullName { get; private set; }
|
||||
|
||||
public DateTime VerifyCodeCreation { get; set; }
|
||||
public void Verified()
|
||||
{
|
||||
VerificationStatus = InstitutionContractVerificationStatus.Verified;
|
||||
}
|
||||
}
|
||||
|
||||
public class InstitutionContractAmendmentChange : EntityBase
|
||||
{
|
||||
private InstitutionContractAmendmentChange() { }
|
||||
private InstitutionContractAmendmentChange(long institutionContractAmendmentId,
|
||||
InstitutionContractAmendment institutionContractAmendment, InstitutionContractAmendmentChangeType changeType,
|
||||
DateTime changeDateGr, bool? hasRollCallPlan, bool? hasCustomizeCheckoutPlan, bool? hasContractPlan,
|
||||
|
||||
private InstitutionContractAmendmentChange(InstitutionContractAmendmentChangeType changeType,
|
||||
DateTime changeDateGr, bool? hasCustomizeCheckoutPlan, bool? hasContractPlan,
|
||||
bool? hasContractPlanInPerson, bool? hasInsurancePlan, bool? hasInsurancePlanInPerson, int? personnelCount,
|
||||
long? workshopDetailsId)
|
||||
bool? hasRollCallPlan, bool? hasRollCallInPerson,
|
||||
long? currentWorkshopId, int personnelCountDifference)
|
||||
{
|
||||
InstitutionContractAmendmentId = institutionContractAmendmentId;
|
||||
InstitutionContractAmendment = institutionContractAmendment;
|
||||
ChangeType = changeType;
|
||||
ChangeDateGr = changeDateGr;
|
||||
HasRollCallPlan = hasRollCallPlan;
|
||||
@@ -338,9 +350,80 @@ public class InstitutionContractAmendmentChange : EntityBase
|
||||
HasInsurancePlan = hasInsurancePlan;
|
||||
HasInsurancePlanInPerson = hasInsurancePlanInPerson;
|
||||
PersonnelCount = personnelCount;
|
||||
WorkshopDetailsId = workshopDetailsId;
|
||||
PersonnelCountDifference = personnelCountDifference;
|
||||
CurrentWorkshopId = currentWorkshopId;
|
||||
HasRollCallInPerson = hasRollCallInPerson;
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// تغییر تعداد پرسنل
|
||||
/// </summary>
|
||||
public static InstitutionContractAmendmentChange CreatePersonCountChange(
|
||||
DateTime changeDateGr, int personnelCount, int personnelCountDifference,
|
||||
long currentWorkshopId)
|
||||
{
|
||||
return new InstitutionContractAmendmentChange(
|
||||
changeType: InstitutionContractAmendmentChangeType.PersonCount,
|
||||
changeDateGr: changeDateGr,
|
||||
hasCustomizeCheckoutPlan: null,
|
||||
hasContractPlan: null,
|
||||
hasContractPlanInPerson: null,
|
||||
hasInsurancePlan: null,
|
||||
hasInsurancePlanInPerson: null,
|
||||
personnelCount: personnelCount,
|
||||
hasRollCallPlan: null,
|
||||
hasRollCallInPerson: null,
|
||||
currentWorkshopId: currentWorkshopId,
|
||||
personnelCountDifference: personnelCountDifference);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// تغییر خدمات
|
||||
/// </summary>
|
||||
public static InstitutionContractAmendmentChange CreateServicesChange(
|
||||
DateTime changeDateGr, long currentWorkshopId, bool hasRollCallPlan, bool hasRollCallInPerson,
|
||||
bool hasCustomizeCheckoutPlan, bool hasContractPlan, bool hasContractPlanInPerson,
|
||||
bool hasInsurancePlan, bool hasInsurancePlanInPerson)
|
||||
{
|
||||
return new InstitutionContractAmendmentChange(
|
||||
changeType: InstitutionContractAmendmentChangeType.Services,
|
||||
changeDateGr: changeDateGr,
|
||||
hasCustomizeCheckoutPlan: hasCustomizeCheckoutPlan,
|
||||
hasContractPlan: hasContractPlan,
|
||||
hasContractPlanInPerson: hasContractPlanInPerson,
|
||||
hasInsurancePlan: hasInsurancePlan,
|
||||
hasInsurancePlanInPerson: hasInsurancePlanInPerson,
|
||||
personnelCount: null,
|
||||
hasRollCallPlan: hasRollCallPlan,
|
||||
hasRollCallInPerson: hasRollCallInPerson,
|
||||
currentWorkshopId: currentWorkshopId,
|
||||
personnelCountDifference: 0);
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد کارگاه جدید
|
||||
/// </summary>
|
||||
public static InstitutionContractAmendmentChange CreateWorkshopCreatedChange(
|
||||
DateTime changeDateGr, bool hasRollCallPlan, bool hasRollCallInPerson,
|
||||
bool hasCustomizeCheckoutPlan, bool hasContractPlan, bool hasContractPlanInPerson,
|
||||
bool hasInsurancePlan, bool hasInsurancePlanInPerson,int personnelCount)
|
||||
{
|
||||
return new InstitutionContractAmendmentChange(
|
||||
changeType: InstitutionContractAmendmentChangeType.WorkshopCreated,
|
||||
changeDateGr: changeDateGr,
|
||||
hasCustomizeCheckoutPlan: hasCustomizeCheckoutPlan,
|
||||
hasContractPlan: hasContractPlan,
|
||||
hasContractPlanInPerson: hasContractPlanInPerson,
|
||||
hasInsurancePlan: hasInsurancePlan,
|
||||
hasInsurancePlanInPerson: hasInsurancePlanInPerson,
|
||||
personnelCount: personnelCount,
|
||||
hasRollCallPlan: hasRollCallPlan,
|
||||
hasRollCallInPerson: hasRollCallInPerson,
|
||||
currentWorkshopId: null,
|
||||
personnelCountDifference: 0);
|
||||
}
|
||||
|
||||
|
||||
public long InstitutionContractAmendmentId { get; private set; }
|
||||
public InstitutionContractAmendment InstitutionContractAmendment { get; private set; }
|
||||
public InstitutionContractAmendmentChangeType ChangeType { get; private set; }
|
||||
@@ -351,6 +434,8 @@ public class InstitutionContractAmendmentChange : EntityBase
|
||||
/// </summary>
|
||||
public bool? HasRollCallPlan { get; private set; }
|
||||
|
||||
public bool? HasRollCallInPerson { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// پلن فیش غیر رسمی
|
||||
/// </summary>
|
||||
@@ -381,10 +466,16 @@ public class InstitutionContractAmendmentChange : EntityBase
|
||||
/// </summary>
|
||||
public int? PersonnelCount { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// مقدار تغییرات تعداد پرسنل
|
||||
/// </summary>
|
||||
public int PersonnelCountDifference { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تعداد کارگاه
|
||||
/// </summary>
|
||||
public long? WorkshopDetailsId { get; private set; }
|
||||
public long? CurrentWorkshopId { get; private set; }
|
||||
}
|
||||
|
||||
public enum InstitutionContractAmendmentChangeType
|
||||
|
||||
@@ -9,7 +9,7 @@ public class InstitutionContractWorkshopBase:EntityBase
|
||||
protected InstitutionContractWorkshopBase(){}
|
||||
public InstitutionContractWorkshopBase(string workshopName, bool hasRollCallPlan,bool hasRollCallPlanInPerson,
|
||||
bool hasCustomizeCheckoutPlan, bool hasContractPlan,bool hasContractPlanInPerson,bool hasInsurancePlan,bool hasInsurancePlanInPerson,
|
||||
int personnelCount, double price )
|
||||
int personnelCount, double price,bool isAmendment )
|
||||
{
|
||||
WorkshopName = workshopName;
|
||||
Services = new WorkshopServices(hasInsurancePlan, hasInsurancePlanInPerson,
|
||||
@@ -17,7 +17,10 @@ public class InstitutionContractWorkshopBase:EntityBase
|
||||
PersonnelCount = personnelCount;
|
||||
Price = price;
|
||||
Employers = [];
|
||||
IsAmendment = isAmendment;
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// شناسه کارگاه
|
||||
/// </summary>
|
||||
@@ -43,6 +46,10 @@ public class InstitutionContractWorkshopBase:EntityBase
|
||||
|
||||
public double Price { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// جهت نمایش دادن اینکه آیا این کارگاه مربوط به ارتقا قرارداد است یا خیر
|
||||
/// </summary>
|
||||
public bool IsAmendment { get; set; }
|
||||
|
||||
public List<InstitutionContractWorkshopDetailEmployer> Employers { get; private set; } = new();
|
||||
|
||||
|
||||
@@ -11,9 +11,9 @@ public class InstitutionContractWorkshopCurrent:InstitutionContractWorkshopBase
|
||||
bool hasRollCallPlanInPerson, bool hasCustomizeCheckoutPlan, bool hasContractPlan,
|
||||
bool hasContractPlanInPerson, bool hasInsurancePlan, bool hasInsurancePlanInPerson,
|
||||
int personnelCount, double price,long institutionContractWorkshopGroupId,
|
||||
InstitutionContractWorkshopGroup workshopGroup,long workshopId,long initialWorkshopId) : base(workshopName, hasRollCallPlan,
|
||||
InstitutionContractWorkshopGroup workshopGroup,long workshopId,bool isAmendment, long initialWorkshopId) : base(workshopName, hasRollCallPlan,
|
||||
hasRollCallPlanInPerson, hasCustomizeCheckoutPlan, hasContractPlan,
|
||||
hasContractPlanInPerson, hasInsurancePlan, hasInsurancePlanInPerson, personnelCount, price)
|
||||
hasContractPlanInPerson, hasInsurancePlan, hasInsurancePlanInPerson, personnelCount, price,isAmendment)
|
||||
{
|
||||
InstitutionContractWorkshopGroupId = institutionContractWorkshopGroupId;
|
||||
WorkshopGroup = workshopGroup;
|
||||
|
||||
@@ -34,6 +34,13 @@ public class InstitutionContractWorkshopGroup : EntityBase
|
||||
LastModifiedDate = DateTime.Now;
|
||||
}
|
||||
|
||||
public void AddAmendmentWorkshops(List<InstitutionContractWorkshopInitial> amendmentDetails)
|
||||
{
|
||||
InitialWorkshops.AddRange(amendmentDetails);
|
||||
LastModifiedDate = DateTime.Now;
|
||||
}
|
||||
|
||||
|
||||
public void UpdateCurrentWorkshops(List<InstitutionContractWorkshopCurrent> updatedDetails)
|
||||
{
|
||||
CurrentWorkshops = updatedDetails.ToList();
|
||||
|
||||
@@ -11,9 +11,9 @@ public class InstitutionContractWorkshopInitial:InstitutionContractWorkshopBase
|
||||
public InstitutionContractWorkshopInitial(string workshopName, bool hasRollCallPlan,
|
||||
bool hasRollCallPlanInPerson, bool hasCustomizeCheckoutPlan, bool hasContractPlan,
|
||||
bool hasContractPlanInPerson, bool hasInsurancePlan, bool hasInsurancePlanInPerson,
|
||||
int personnelCount, double price) : base(workshopName, hasRollCallPlan,
|
||||
int personnelCount, double price,bool isAmendment =false) : base(workshopName, hasRollCallPlan,
|
||||
hasRollCallPlanInPerson, hasCustomizeCheckoutPlan, hasContractPlan, hasContractPlanInPerson,
|
||||
hasInsurancePlan, hasInsurancePlanInPerson, personnelCount, price)
|
||||
hasInsurancePlan, hasInsurancePlanInPerson, personnelCount, price,isAmendment)
|
||||
{
|
||||
WorkshopCreated = false;
|
||||
}
|
||||
@@ -31,7 +31,8 @@ public class InstitutionContractWorkshopInitial:InstitutionContractWorkshopBase
|
||||
WorkshopCreated = true;
|
||||
WorkshopCurrent = new InstitutionContractWorkshopCurrent(WorkshopName,Services.RollCall,Services.RollCallInPerson,
|
||||
Services.CustomizeCheckout,Services.Contract,Services.ContractInPerson,Services.Insurance,
|
||||
Services.InsuranceInPerson,PersonnelCount,Price,InstitutionContractWorkshopGroupId,WorkshopGroup,workshopId,id);
|
||||
Services.InsuranceInPerson,PersonnelCount,Price,InstitutionContractWorkshopGroupId,WorkshopGroup,workshopId,
|
||||
IsAmendment, id);
|
||||
WorkshopCurrent.SetEmployers(Employers.Select(x=>x.EmployerId).ToList());
|
||||
}
|
||||
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using CompanyManagment.App.Contracts.InstitutionContract;
|
||||
using MongoDB.Bson;
|
||||
using MongoDB.Bson.Serialization.Attributes;
|
||||
|
||||
@@ -16,7 +17,7 @@ public class InstitutionContractAmendmentTemp
|
||||
NewWorkshops = prevWorkshops.Select(x=> new InstitutionContractAmendmentTempNewWorkshop(
|
||||
x.WorkshopName, x.CountPerson, x.ContractAndCheckout, x.ContractAndCheckoutInPerson, x.Insurance,
|
||||
x.InsuranceInPerson, x.RollCall, x.RollCallInPerson, x.CustomizeCheckout, x.Price, x.WorkshopId,
|
||||
x.CurrentWorkshopId, 0)).ToList();
|
||||
x.CurrentWorkshopId, 0,x.Id)).ToList();
|
||||
InstitutionContractId = institutionContractId;
|
||||
}
|
||||
|
||||
@@ -25,17 +26,32 @@ public class InstitutionContractAmendmentTemp
|
||||
public Guid Id { get; private set; }
|
||||
public List<InstitutionContractAmendmentTempPrevWorkshop> PrevWorkshops { get; private set; }
|
||||
public List<InstitutionContractAmendmentTempNewWorkshop> NewWorkshops { get; private set; }
|
||||
|
||||
public InstitutionContractPaymentMonthlyViewModel MonthlyPayment { get; set; }
|
||||
|
||||
public InstitutionContractPaymentOneTimeViewModel OneTimePayment { get; set; }
|
||||
|
||||
public long InstitutionContractId { get; private set; }
|
||||
|
||||
public int MonthDifference { get; set; }
|
||||
public void AddPaymentDetails(InstitutionContractPaymentMonthlyViewModel resMonthly, InstitutionContractPaymentOneTimeViewModel resOneTime, int monthDiff)
|
||||
{
|
||||
MonthlyPayment = resMonthly;
|
||||
OneTimePayment = resOneTime;
|
||||
MonthDifference = monthDiff;
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
public class InstitutionContractAmendmentTempNewWorkshop : InstitutionContractAmendmentTempPrevWorkshop
|
||||
{
|
||||
public InstitutionContractAmendmentTempNewWorkshop(string workshopName, int countPerson, bool contractAndCheckout,
|
||||
bool contractAndCheckoutInPerson, bool insurance, bool insuranceInPerson, bool rollCall, bool rollCallInPerson,
|
||||
bool customizeCheckout, double price, long workshopId, long currentWorkshopId,double priceDifference) : base(
|
||||
bool customizeCheckout, double price, long workshopId, long currentWorkshopId,double priceDifference,Guid prevId) : base(
|
||||
workshopName, countPerson, contractAndCheckout, contractAndCheckoutInPerson, insurance, insuranceInPerson,
|
||||
rollCall, rollCallInPerson, customizeCheckout, price, workshopId, currentWorkshopId)
|
||||
{
|
||||
Id = prevId;
|
||||
PriceDifference = priceDifference;
|
||||
}
|
||||
|
||||
|
||||
@@ -11,6 +11,13 @@ public interface IJobRepository : IRepository<long, Job>
|
||||
EditJob GetDetails(long id);
|
||||
List<JobViewModel> Search(JobSearchModel searchModel);
|
||||
List<JobViewModel> SearchJobForMain(JobSearchModel searchModel);
|
||||
|
||||
/// <summary>
|
||||
/// جستجوس مشاغل
|
||||
/// </summary>
|
||||
/// <param name="searchtText"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<JobListDto>> JobSearchSelect(string searchtText);
|
||||
// Task<List<JobViewModel>> GetJobListByText(string searchtText);
|
||||
List<JobViewModel> GetJobListByText(string searchtText);
|
||||
List<JobViewModel> GetJobListByWorkshopId(long workshopId);
|
||||
|
||||
@@ -16,7 +16,7 @@ namespace Company.Domain.RollCallAgg;
|
||||
|
||||
public interface IRollCallMandatoryRepository : IRepository<long, RollCall>
|
||||
{
|
||||
ComputingViewModel MandatoryCompute(long employeeId, long workshopId, DateTime contractStart, DateTime contractEnd, CreateWorkingHoursTemp command, bool holidayWorking, bool isStaticCheckout, bool rotatingShiftCompute, double dailyWageUnAffected, bool totalLeaveCompute);
|
||||
Task<ComputingViewModel> MandatoryCompute(long employeeId, long workshopId, DateTime contractStart, DateTime contractEnd, CreateWorkingHoursTemp command, bool holidayWorking, bool isStaticCheckout, bool rotatingShiftCompute, double dailyWageUnAffected, bool totalLeaveCompute);
|
||||
|
||||
/// <summary>
|
||||
/// محاسبه ساعات کارکرد پرسنل در صورت داشتن حضور غیاب
|
||||
|
||||
@@ -4,6 +4,7 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Application;
|
||||
using _0_Framework.Domain;
|
||||
using CompanyManagment.App.Contracts.RollCall;
|
||||
using CompanyManagment.App.Contracts.WorkingHoursTemp;
|
||||
@@ -25,7 +26,7 @@ namespace Company.Domain.RollCallAgg
|
||||
DateTime endSearch);
|
||||
void RemoveEmployeeRollCallsInDate(long workshopId, long employeeId, DateTime date);
|
||||
RollCallsByDateViewModel GetWorkshopRollCallHistory(RollCallSearchModel searchModel);
|
||||
CurrentDayRollCall GetWorkshopCurrentDayRollCalls(long workshopId);
|
||||
CurrentDayRollCall GetWorkshopCurrentDayRollCalls(long workshopId,WorkshopCurrentDayRollCallSearchModel searchModel);
|
||||
List<PersonnelCheckoutDailyRollCallViewModel> GetEmployeeRollCallsForMonth(IEnumerable<long> employeeIds,
|
||||
long workshopId, DateTime start, DateTime end);
|
||||
|
||||
@@ -91,5 +92,9 @@ namespace Company.Domain.RollCallAgg
|
||||
Task<List<RollCall>> GetRollCallsUntilNowWithWorkshopIdEmployeeIds(long workshopId, List<long> employeeIds,
|
||||
DateTime fromDate);
|
||||
#endregion
|
||||
|
||||
Task<PagedResult<RollCallCaseHistoryTitleDto>> GetCaseHistoryTitles(long workshopId,RollCallCaseHistorySearchModel searchModel);
|
||||
Task<List<RollCallCaseHistoryDetail>> GetCaseHistoryDetails(long workshopId,
|
||||
string titleId, RollCallCaseHistorySearchModel searchModel);
|
||||
}
|
||||
}
|
||||
|
||||
@@ -1,5 +1,6 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Domain;
|
||||
using CompanyManagment.App.Contracts.RollCallEmployee;
|
||||
|
||||
@@ -7,7 +8,7 @@ namespace Company.Domain.RollCallEmployeeAgg;
|
||||
|
||||
public interface IRollCallEmployeeRepository : IRepository<long, RollCallEmployee>
|
||||
{
|
||||
bool HasRollCallRecord(long employeeId, long workshopId, DateTime contractStart, DateTime contractEnd);
|
||||
Task<bool> HasRollCallRecord(long employeeId, long workshopId, DateTime contractStart, DateTime contractEnd);
|
||||
List<RollCallEmployeeViewModel> GetByWorkshopId(long workshopId);
|
||||
EditRollCallEmployee GetDetails(long id);
|
||||
RollCallEmployeeViewModel GetByEmployeeIdAndWorkshopId(long employeeId, long workshopId);
|
||||
|
||||
@@ -15,7 +15,6 @@ public interface ISalaryAidRepository:IRepository<long,SalaryAid>
|
||||
void RemoveRange(IEnumerable<SalaryAid> salaryAids);
|
||||
|
||||
#region Pooya
|
||||
|
||||
/// <summary>
|
||||
/// گروهبندی بر اساس ماه هنگام جستجو با انتخاب کارمند
|
||||
/// </summary>
|
||||
|
||||
@@ -106,4 +106,14 @@ public interface IWorkshopRepository : IRepository<long, Workshop>
|
||||
|
||||
#endregion
|
||||
|
||||
|
||||
#region ForApi
|
||||
/// <summary>
|
||||
/// دریافت لیست کارگاه های ادمین برای سلکت تو
|
||||
/// Api
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<List<AdminWorkshopSelectListDto>> GetAdminWorkshopSelectList();
|
||||
|
||||
#endregion
|
||||
}
|
||||
@@ -185,8 +185,17 @@ public class Workshop : EntityBase
|
||||
public bool AddLeavePay { get; private set; }
|
||||
public string ZoneName { get; private set; }
|
||||
public bool TotalPaymentHide { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا طبقه بندی شده است
|
||||
/// [کارگاه دارای طرح طبقه بندی می باشد ؟]
|
||||
/// </summary>
|
||||
public bool IsClassified { get; private set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا طرح طبقه بندی تکمیل شده است
|
||||
/// </summary>
|
||||
public bool IsClassificationSchemeCompleted { get; private set; }
|
||||
|
||||
//نحوه محاسبه مزد مرخصی
|
||||
public string ComputeOptions { get; private set; }
|
||||
|
||||
@@ -1,6 +1,12 @@
|
||||
using _0_Framework.Excel;
|
||||
using _0_Framework.Application;
|
||||
using CompanyManagment.App.Contracts.RollCall;
|
||||
using OfficeOpenXml;
|
||||
using OfficeOpenXml.Drawing;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text.RegularExpressions;
|
||||
|
||||
namespace CompanyManagement.Infrastructure.Excel.RollCall;
|
||||
|
||||
@@ -308,6 +314,111 @@ public class RollCallExcelGenerator : ExcelGenerator
|
||||
return package.GetAsByteArray();
|
||||
}
|
||||
|
||||
public static byte[] CaseHistoryExcelForEmployee(List<RollCallCaseHistoryDetail> data, string titleId)
|
||||
{
|
||||
if (!Regex.IsMatch(titleId, @"^\d{4}_\d{2}$"))
|
||||
throw new ArgumentException("Invalid titleId format.", nameof(titleId));
|
||||
|
||||
var splitDate = titleId.Split("_");
|
||||
var year = Convert.ToInt32(splitDate.First());
|
||||
var month = Convert.ToInt32(splitDate.Last());
|
||||
|
||||
var startDateFa = $"{year:D4}/{month:D2}/01";
|
||||
var startDate = startDateFa.ToGeorgianDateTime();
|
||||
var endDateFa = startDateFa.FindeEndOfMonth();
|
||||
var endDate = endDateFa.ToGeorgianDateTime();
|
||||
|
||||
var dateRange = (int)(endDate.Date - startDate.Date).TotalDays + 1;
|
||||
var dates = Enumerable.Range(0, dateRange).Select(x => startDate.AddDays(x)).ToList();
|
||||
|
||||
var safeData = data ?? new List<RollCallCaseHistoryDetail>();
|
||||
var first = safeData.FirstOrDefault();
|
||||
var totalWorkingTime = new TimeSpan(safeData.Sum(x => x.TotalWorkingTime.Ticks));
|
||||
|
||||
var viewModel = new CaseHistoryRollCallExcelForEmployeeViewModel
|
||||
{
|
||||
EmployeeId = first?.EmployeeId ?? 0,
|
||||
DateGr = startDate,
|
||||
PersonnelCode = first?.PersonnelCode,
|
||||
EmployeeFullName = first?.EmployeeFullName,
|
||||
PersianMonthName = month.ToFarsiMonthByIntNumber(),
|
||||
PersianYear = year.ToString(),
|
||||
TotalWorkingHoursFa = totalWorkingTime.ToFarsiHoursAndMinutes("-"),
|
||||
TotalWorkingTimeSpan = $"{(int)totalWorkingTime.TotalHours}:{totalWorkingTime.Minutes:00}",
|
||||
RollCalls = dates.Select((date, index) =>
|
||||
{
|
||||
var item = index < safeData.Count ? safeData[index] : null;
|
||||
var records = item?.Records ?? new List<RollCallCaseHistoryDetailRecord>();
|
||||
|
||||
return new RollCallItemForEmployeeExcelViewModel
|
||||
{
|
||||
DateGr = date,
|
||||
DateFa = date.ToFarsi(),
|
||||
DayOfWeekFa = date.DayOfWeek.DayOfWeeKToPersian(),
|
||||
PersonnelCode = item?.PersonnelCode,
|
||||
EmployeeFullName = item?.EmployeeFullName,
|
||||
IsAbsent = item?.Status == RollCallRecordStatus.Absent,
|
||||
HasLeave = item?.Status == RollCallRecordStatus.Leaved,
|
||||
IsHoliday = false,
|
||||
TotalWorkingHours = (item?.TotalWorkingTime ?? TimeSpan.Zero).ToFarsiHoursAndMinutes("-"),
|
||||
StartsItems = JoinRecords(records, r => r.StartTime),
|
||||
EndsItems = JoinRecords(records, r => r.EndTime),
|
||||
EnterTimeDifferences = JoinRecords(records, r => FormatSignedTimeSpan(r.EntryTimeDifference)),
|
||||
ExitTimeDifferences = JoinRecords(records, r => FormatSignedTimeSpan(r.ExitTimeDifference))
|
||||
};
|
||||
}).ToList()
|
||||
};
|
||||
|
||||
return CaseHistoryExcelForEmployee(viewModel);
|
||||
}
|
||||
|
||||
public static byte[] CaseHistoryExcelForOneDay(List<RollCallCaseHistoryDetail> data, string titleId)
|
||||
{
|
||||
if (!Regex.IsMatch(titleId, @"^\d{4}/\d{2}/\d{2}$"))
|
||||
throw new ArgumentException("Invalid titleId format.", nameof(titleId));
|
||||
|
||||
var dateGr = titleId.ToGeorgianDateTime();
|
||||
var safeData = data ?? new List<RollCallCaseHistoryDetail>();
|
||||
|
||||
var viewModel = new CaseHistoryRollCallForOneDayViewModel
|
||||
{
|
||||
DateFa = titleId,
|
||||
DateGr = dateGr,
|
||||
DayOfWeekFa = dateGr.DayOfWeek.DayOfWeeKToPersian(),
|
||||
RollCalls = safeData.Select(item =>
|
||||
{
|
||||
var records = item.Records ?? new List<RollCallCaseHistoryDetailRecord>();
|
||||
return new RollCallItemForOneDayExcelViewModel
|
||||
{
|
||||
EmployeeFullName = item.EmployeeFullName,
|
||||
PersonnelCode = item.PersonnelCode,
|
||||
StartsItems = JoinRecords(records, r => r.StartTime),
|
||||
EndsItems = JoinRecords(records, r => r.EndTime),
|
||||
TotalWorkingHours = item.TotalWorkingTime.ToFarsiHoursAndMinutes("-")
|
||||
};
|
||||
}).ToList()
|
||||
};
|
||||
|
||||
return CaseHistoryExcelForOneDay(viewModel);
|
||||
}
|
||||
|
||||
private static string JoinRecords(IEnumerable<RollCallCaseHistoryDetailRecord> records, Func<RollCallCaseHistoryDetailRecord, string> selector)
|
||||
{
|
||||
var safeRecords = records ?? Enumerable.Empty<RollCallCaseHistoryDetailRecord>();
|
||||
var values = safeRecords.Select(selector).Where(x => !string.IsNullOrWhiteSpace(x)).ToList();
|
||||
return values.Count == 0 ? string.Empty : string.Join(Environment.NewLine, values);
|
||||
}
|
||||
|
||||
private static string FormatSignedTimeSpan(TimeSpan value)
|
||||
{
|
||||
if (value == TimeSpan.Zero)
|
||||
return "-";
|
||||
|
||||
var abs = value.Duration();
|
||||
var sign = value.Ticks < 0 ? "-" : "+";
|
||||
return $"{(int)abs.TotalHours}:{abs.Minutes:00}{sign}";
|
||||
}
|
||||
|
||||
private string CalculateExitMinuteDifference(TimeSpan early, TimeSpan late)
|
||||
{
|
||||
if (early == TimeSpan.Zero && late == TimeSpan.Zero)
|
||||
|
||||
@@ -10,5 +10,12 @@ namespace CompanyManagment.App.Contracts.Bank
|
||||
OperationResult Create(CreateBank command);
|
||||
OperationResult Edit(EditBank command);
|
||||
List<BankViewModel> Search(string name);
|
||||
List<BankSelectList> GetBanksForSelectList();
|
||||
|
||||
}
|
||||
|
||||
public class BankSelectList:SelectListViewModel
|
||||
{
|
||||
|
||||
}
|
||||
}
|
||||
|
||||
92
CompanyManagment.App.Contracts/Checkout/Dto/CheckoutDto.cs
Normal file
92
CompanyManagment.App.Contracts/Checkout/Dto/CheckoutDto.cs
Normal file
@@ -0,0 +1,92 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
|
||||
public class CheckoutDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی فیش
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کارگاه
|
||||
/// </summary>
|
||||
public string WorkshopName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره قراداد
|
||||
/// </summary>
|
||||
public string ContractNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع فیش
|
||||
/// </summary>
|
||||
public string ContractStart { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان فیش
|
||||
/// </summary>
|
||||
public string ContractEnd { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ماه
|
||||
/// </summary>
|
||||
public string Month { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال
|
||||
/// </summary>
|
||||
public string Year { get; set; }
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// روزهای کارکرد
|
||||
/// </summary>
|
||||
public string SumOfWorkingDays { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره کارگاه
|
||||
/// </summary>
|
||||
public string ArchiveCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد پرسنلی
|
||||
/// </summary>
|
||||
public string PersonnelCode { get; set; }
|
||||
/// <summary>
|
||||
/// فعال/غیرفعال
|
||||
/// </summary>
|
||||
public bool IsActive { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// امضاء فیش
|
||||
/// </summary>
|
||||
public bool Signature { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کارفرما
|
||||
/// </summary>
|
||||
public string EmployerName { get; set; }
|
||||
public bool IsBlockCantracingParty { get; set; }
|
||||
/// <summary>
|
||||
/// آیا فیش نیاز به بروزرسانی دارد
|
||||
/// </summary>
|
||||
public bool IsUpdateNeeded { get; set; }
|
||||
/// <summary>
|
||||
/// لیست پیام های هشدار فیش حقوقی
|
||||
/// </summary>
|
||||
public List<CheckoutWarningMessageModel> CheckoutWarningMessageList { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نیاز به امزا دارد یا خیر
|
||||
/// </summary>
|
||||
public bool HasSignCheckoutOption { get; set; }
|
||||
|
||||
}
|
||||
247
CompanyManagment.App.Contracts/Checkout/Dto/CheckoutPrintDto.cs
Normal file
247
CompanyManagment.App.Contracts/Checkout/Dto/CheckoutPrintDto.cs
Normal file
@@ -0,0 +1,247 @@
|
||||
using System;
|
||||
using CompanyManagment.App.Contracts.Loan;
|
||||
using CompanyManagment.App.Contracts.RollCall;
|
||||
using CompanyManagment.App.Contracts.SalaryAid;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
|
||||
public class CheckoutPrintDto
|
||||
{
|
||||
// هدر فیش
|
||||
// اطلاعات هویتی
|
||||
// اطلاعات کارگاه
|
||||
#region Header
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام پدر
|
||||
/// </summary>
|
||||
public string FathersName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد ملی
|
||||
/// </summary>
|
||||
public string NationalCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ تولد
|
||||
/// </summary>
|
||||
public string DateOfBirth { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کارگاه
|
||||
/// </summary>
|
||||
public string WorkshopName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره قراداد
|
||||
/// </summary>
|
||||
public string ContractNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ماه
|
||||
/// </summary>
|
||||
public string Month { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال
|
||||
/// </summary>
|
||||
public string Year { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// لیست کارفرما
|
||||
/// </summary>
|
||||
public List<CheckoutEmployersList> EmployersLists { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا کارقرما حقوقی است
|
||||
/// </summary>
|
||||
public bool EmployerIslegal { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا ترک کار کرده
|
||||
/// </summary>
|
||||
public bool HasLeft { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آخرین روز کاری
|
||||
/// </summary>
|
||||
public string LastDayOfWork { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// روز ترک کار
|
||||
/// </summary>
|
||||
public string LeftWorkDate { get; set; }
|
||||
|
||||
#endregion
|
||||
|
||||
//جدول مطالبات و کسورات
|
||||
#region PaymentAndDeductionTable
|
||||
/// <summary>
|
||||
/// مطالبات
|
||||
/// </summary>
|
||||
public List<PaymentAndDeductionList> PaymentList { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کسورات
|
||||
/// </summary>
|
||||
public List<PaymentAndDeductionList> DeductionList { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// جمع مطالبات
|
||||
/// </summary>
|
||||
public string TotalPayment { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// جمع کسورات
|
||||
/// </summary>
|
||||
public string TotalDeductions { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// مبلغ قابل پرداخت
|
||||
/// </summary>
|
||||
public string TotalClaims { get; set; }
|
||||
#endregion
|
||||
|
||||
//لیست ورود و خروج پرسنل
|
||||
//اطلاعات ساعات کار و موظقی
|
||||
#region RollCallData
|
||||
/// <summary>
|
||||
/// لیست حضورغیاب
|
||||
/// </summary>
|
||||
public List<CheckoutPrintRollCallDto> MonthlyRollCall { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// دیتای جدول حضورغیاب
|
||||
/// </summary>
|
||||
public CheckoutRollCallViewModel CheckoutRollCall { get; set; }
|
||||
|
||||
#endregion
|
||||
|
||||
//اقساط - مساعده
|
||||
#region SalaryAidAndInstallmentData
|
||||
|
||||
public List<CheckoutPrintInstallmentDto> Installments { get; set; }
|
||||
public List<CheckoutPrintSalaryAidDto> SalaryAids { get; set; }
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// کسورات
|
||||
/// </summary>
|
||||
public class PaymentData
|
||||
{
|
||||
/// <summary>
|
||||
/// حقوق و مزد
|
||||
/// </summary>
|
||||
public string MonthlySalary { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// پایه سنوات
|
||||
/// </summary>
|
||||
public string BaseYearsPay { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کمک هزینه اقلام مصرفی
|
||||
/// </summary>
|
||||
public string ConsumableItems { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کمک هزینه مسکن
|
||||
/// </summary>
|
||||
public string HousingAllowance { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// فوق العاده اضافه کاری
|
||||
/// </summary>
|
||||
public string OvertimePay { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// فوق العاده شبکاری
|
||||
/// </summary>
|
||||
public string NightworkPay { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// فوق العاده جمعه کاری
|
||||
/// </summary>
|
||||
public string FridayPay { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// فوق العاده ماموریت
|
||||
/// </summary>
|
||||
public string MissionPay { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// فوق العاده نوبت کاری
|
||||
/// </summary>
|
||||
public string ShiftPay { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کمک هزینه عائله مندی
|
||||
/// </summary>
|
||||
public string FamilyAllowance { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// حق تاهل
|
||||
/// </summary>
|
||||
public string MarriedAllowance { get; set; }
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// کسورات
|
||||
/// </summary>
|
||||
public class DeductionData
|
||||
{
|
||||
|
||||
}
|
||||
|
||||
public class PaymentAndDeductionList
|
||||
{
|
||||
public int RowNumber { get; set; }
|
||||
/// <summary>
|
||||
/// عنوان
|
||||
/// </summary>
|
||||
public string Title { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// مقدار/روز/ساعت
|
||||
/// </summary>
|
||||
public string Value { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// مبلغ
|
||||
/// </summary>
|
||||
public string Amount { get; set; }
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// لیست کارفرما
|
||||
/// </summary>
|
||||
public class CheckoutEmployersList
|
||||
{
|
||||
public string IsLegal { get; set; }
|
||||
public string EmployerFullName { get; set; }
|
||||
}
|
||||
|
||||
|
||||
|
||||
|
||||
public class CheckoutGetData : CheckoutPrintDto
|
||||
{
|
||||
public DateTime ContractStart { get; set; }
|
||||
|
||||
public int PersonnelCode { get; set; }
|
||||
|
||||
public long WorkshopId { get; set; }
|
||||
public long EmployeeId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,47 @@
|
||||
using _0_Framework.Application;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
|
||||
public class CheckoutSearchModelDto : PaginationRequest
|
||||
{
|
||||
/// <summary>
|
||||
/// نام پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره قرارداد
|
||||
/// </summary>
|
||||
public string ContractNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع فیش
|
||||
/// </summary>
|
||||
public string ContractStart { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پاین فیش
|
||||
/// </summary>
|
||||
public string ContractEnd { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ماه
|
||||
/// </summary>
|
||||
public string Month { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال
|
||||
/// </summary>
|
||||
public string Year { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی گارفرما
|
||||
/// </summary>
|
||||
public long EmployerId { get; set; }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,53 @@
|
||||
namespace CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
|
||||
public class ContractsListToCreateCheckoutDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی قراداد
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد پرسنلی
|
||||
/// </summary>
|
||||
public long PersonnelCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره قرارداد
|
||||
/// </summary>
|
||||
public string ContractNo { get; set; }
|
||||
|
||||
//نام کارگاه
|
||||
public string WorkshopName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شوع فیش
|
||||
/// </summary>
|
||||
public string ContractStart { get; set; }
|
||||
/// <summary>
|
||||
/// تاریخ پایان فیش
|
||||
/// </summary>
|
||||
public string ContractEnd { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ ترک کار
|
||||
/// </summary>
|
||||
public string LeftWorkDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// وضعیت ایجاد فیش
|
||||
/// </summary>
|
||||
public CreateCheckoutStatus CreateCheckoutStatus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// توضیحات
|
||||
/// </summary>
|
||||
public string Description { get; set; }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
namespace CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
|
||||
/// <summary>
|
||||
/// وضعیت ایجاد فیش
|
||||
/// </summary>
|
||||
public enum CreateCheckoutStatus
|
||||
{
|
||||
/// <summary>
|
||||
/// آماده ایجاد
|
||||
/// </summary>
|
||||
ReadyToCreate,
|
||||
|
||||
/// <summary>
|
||||
/// غیر مجاز
|
||||
/// </summary>
|
||||
NotValid,
|
||||
|
||||
/// <summary>
|
||||
/// دارای فیش حقوقی
|
||||
/// </summary>
|
||||
HasCheckout,
|
||||
}
|
||||
@@ -0,0 +1,14 @@
|
||||
namespace CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
|
||||
public class EmployeeSelectListDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,210 @@
|
||||
using System;
|
||||
using CompanyManagment.App.Contracts.Contract;
|
||||
using CompanyManagment.App.Contracts.EmployeeComputeOptions;
|
||||
using CompanyManagment.App.Contracts.WorkingHoursTemp;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
|
||||
public class GetContractAndIncludesDataToCreateDto
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کارگاه
|
||||
/// </summary>
|
||||
public string WorkshopName { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// کد بایگانی کارگاه
|
||||
/// </summary>
|
||||
public string ArchiveCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا تنظیمات کارگاه بر رو ایجاد فیش استاتیک است
|
||||
/// </summary>
|
||||
public bool IsStaticCheckout { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا کارگاه در تعطیلات رسمی باز است
|
||||
/// </summary>
|
||||
public bool WorkshopHolidayWorking { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// محاسبه نوبت کاری در فیش حقوقی
|
||||
/// </summary>
|
||||
public bool RotatingShiftCompute { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// آیا پاداش در فیش حقوقی محاسبه شود
|
||||
/// </summary>
|
||||
public bool RewardComputeOnCheckout { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا اضافه کار فیش حقوقی در بیمه محاسبه شود
|
||||
/// </summary>
|
||||
public bool HasInsuranceCheckoutOverTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی صنف بیمه کارگاه
|
||||
/// </summary>
|
||||
public long? InsuranceJobId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا کارگاه مشاغل مقطوع است
|
||||
/// </summary>
|
||||
public bool FixedSalary { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// جمعیت شهر کارگاه
|
||||
/// </summary>
|
||||
public string Population { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نوع ارسال لیست بیمه
|
||||
/// </summary>
|
||||
public string TypeOfInsuranceSend { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// قرارداد قدیمی است؟
|
||||
/// </summary>
|
||||
public bool IsOldContract { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
public List<ContractIncludedData> ContractIncludedData { get; set; }
|
||||
|
||||
}
|
||||
|
||||
|
||||
public class ContractIncludedData
|
||||
{
|
||||
/// <summary>
|
||||
/// شماره قرارداد
|
||||
/// </summary>
|
||||
public string ContractNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long EmployeeId { get; set; }
|
||||
/// <summary>
|
||||
/// نام کامل پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام پدر
|
||||
/// </summary>
|
||||
public string FathersName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد ملی
|
||||
/// </summary>
|
||||
public string NationalCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ تولد
|
||||
/// </summary>
|
||||
public string DateOfBirth { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// کد پرسنلس
|
||||
/// </summary>
|
||||
public string PersonnelCode { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// وضعیت تاهل
|
||||
/// </summary>
|
||||
|
||||
public string MaritalStatus { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ساعت کاری پرسنل
|
||||
/// </summary>
|
||||
public CreateWorkingHoursTemp WorkingHours { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// اطلاعات جداسازی تاریخ فیش
|
||||
/// </summary>
|
||||
public ContractSeparationViewModel Separation { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تنظیمات فنی پرسنل
|
||||
/// سنوات
|
||||
/// </summary>
|
||||
public string YearsOption { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تنظیمات فنی پرسنل
|
||||
/// عیدی و پاداش
|
||||
/// </summary>
|
||||
public string BonusesOption { get; set; }
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تنظیمات فنی پرسنل
|
||||
/// مزد مرخصی
|
||||
/// </summary>
|
||||
public string ComputeOption { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ترایخ شروع قراداد
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
public string ContractStart { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان قرارداد
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
public string ContractEnd { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ترایخ شروع قراداد
|
||||
/// میلادی
|
||||
/// </summary>
|
||||
public DateTime ContractStartGr { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان قرارداد
|
||||
/// میلادی
|
||||
/// </summary>
|
||||
public DateTime ContractEndGr { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی قراداد
|
||||
/// </summary>
|
||||
public long ContractId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// مزد روزانه قرداد بدون تاثیر ساعات کار
|
||||
/// </summary>
|
||||
public double DailySalaryUnAffected { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نوع مزد روزانه
|
||||
/// </summary>
|
||||
public string DailyWageType { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// اولین شروع بکار پرسنل
|
||||
/// </summary>
|
||||
public string FirstGetWorkingDay { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,75 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
|
||||
public class RotatingShiftOfCheckoutDto
|
||||
{
|
||||
/// <summary>
|
||||
/// نام پرسنل
|
||||
/// </summary>
|
||||
public string FullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// وضعیت نوبتکاری
|
||||
/// </summary>
|
||||
public string RotatingShiftStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا نوبت کاری دارد
|
||||
/// </summary>
|
||||
public bool HasRotatingShift { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال و ماه
|
||||
/// </summary>
|
||||
public string YearAndMonth { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نوع ساعت کاری
|
||||
/// </summary>
|
||||
public string TypeOfWorkingHours { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// لیست نوبت کاری
|
||||
/// </summary>
|
||||
public List<RotatingShiftListDto> RotatingShiftList { get; set; }
|
||||
}
|
||||
|
||||
public class RotatingShiftListDto
|
||||
{
|
||||
/// <summary>
|
||||
/// بازه کاری صبح
|
||||
/// </summary>
|
||||
public string MorningShiftSpan { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// بازه کاری عصر
|
||||
/// </summary>
|
||||
public string EveningShiftSpan { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// بازه کاری شب
|
||||
/// </summary>
|
||||
public string NightShiftSpan { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// آیا صبح کاری داشته
|
||||
/// </summary>
|
||||
public bool IsMorningShift { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا عصرکاری داشته
|
||||
/// </summary>
|
||||
public bool IsEveningShift { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا شبکاری داشته
|
||||
/// </summary>
|
||||
public bool IsNightShift { get; set; }
|
||||
/// <summary>
|
||||
/// تاریخ شیفت
|
||||
/// </summary>
|
||||
public string ShiftDate { get; set; }
|
||||
}
|
||||
@@ -1,9 +1,10 @@
|
||||
using System;
|
||||
using _0_Framework.Application;
|
||||
using CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Application;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Checkout;
|
||||
|
||||
@@ -62,4 +63,108 @@ public interface ICheckoutApplication
|
||||
long workshopId, DateTime start, DateTime end);
|
||||
|
||||
#endregion
|
||||
|
||||
Task<PagedResult<CheckoutListClientDto>> GetListForClient(long workshopId,
|
||||
CheckoutListClientSearchModel searchModel);
|
||||
|
||||
#region ForApi
|
||||
|
||||
/// <summary>
|
||||
/// دریافت سلکت لیست پرسنل کارگاه
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<EmployeeSelectListDto>> GetEmployeeSelectListByWorkshopId(long id);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت لیست فیش های حقوقی ادمین
|
||||
/// </summary>
|
||||
/// <param name="searchModel"></param>
|
||||
/// <returns></returns>
|
||||
Task<PagedResult<CheckoutDto>> GetList(CheckoutSearchModelDto searchModel);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت نوبتکاری
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task<RotatingShiftOfCheckoutDto> GetRotatingShiftApi(long id);
|
||||
|
||||
/// <summary>
|
||||
/// پرینت فیش حقوقی
|
||||
/// Api
|
||||
/// </summary>
|
||||
/// <param name="ids"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<CheckoutPrintDto>> CheckoutPrint(List<long> ids);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت لیست قراردادها برای ایجاد فیش حقوقی
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <param name="year"></param>
|
||||
/// <param name="month"></param>
|
||||
/// <param name="employeeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult<List<ContractsListToCreateCheckoutDto>>> GetContractToCreateCheckout(long workshopId,
|
||||
string year, string month, long employeeId);
|
||||
/// <summary>
|
||||
/// ایجاد فیش حقوقی
|
||||
/// </summary>
|
||||
/// <param name="ids"></param>
|
||||
/// <param name="year"></param>
|
||||
/// <param name="month"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> CreateCheckoutApi(List<long> ids, string year, string month, long workshopId);
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
public class CheckoutPrintInstallmentDto
|
||||
{
|
||||
public string RemainingAmount { get; set; }
|
||||
public string LoanAmount { get; set; }
|
||||
public string Amount { get; set; }
|
||||
}
|
||||
public class CheckoutPrintSalaryAidDto
|
||||
{
|
||||
public string Amount { get; set; }
|
||||
public string SalaryAidDateTimeFa { get; set; }
|
||||
}
|
||||
|
||||
|
||||
public class CheckoutListClientSearchModel:PaginationRequest
|
||||
{
|
||||
public long? EmployeeId { get; set; }
|
||||
public string Year { get; set; }
|
||||
public string Month { get; set; }
|
||||
public string StartDate { get; set; }
|
||||
public string EndDate { get; set; }
|
||||
public CheckoutClientListOrderType? OrderType { get; set; }
|
||||
}
|
||||
|
||||
public class CheckoutListClientDto
|
||||
{
|
||||
public long Id { get; set; }
|
||||
public string Year { get; set; }
|
||||
public string Month { get; set; }
|
||||
public string EmployeeName { get; set; }
|
||||
public string ContractNo { get; set; }
|
||||
public string ContractStart { get; set; }
|
||||
public string ContractEnd { get; set; }
|
||||
public bool Signature { get; set; }
|
||||
}
|
||||
|
||||
public enum CheckoutClientListOrderType
|
||||
{
|
||||
ByCheckoutCreationDate,
|
||||
BySignedCheckout,
|
||||
ByUnSignedCheckout,
|
||||
ByPersonnelCode,
|
||||
ByPersonnelCodeDescending,
|
||||
ByCheckoutStartDate,
|
||||
ByCheckoutStartDateDescending
|
||||
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,84 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
/// <summary>
|
||||
/// مدل برای مدال افزودن پرسنل ب گروه
|
||||
/// </summary>
|
||||
public class AddEmployeeToGroup
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long EmployeeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long SchemeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long GroupId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// </summary>
|
||||
public string GoroupNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی شغل
|
||||
/// </summary>
|
||||
public long JobId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام شغل
|
||||
/// </summary>
|
||||
public string JobName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد شغل
|
||||
/// </summary>
|
||||
public string JobCode { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// لیست گروه ها
|
||||
/// </summary>
|
||||
public List<ClassificationGroupList> ClassificationGroupList{ get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// لیست گروه ها
|
||||
/// </summary>
|
||||
public class ClassificationGroupList
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long GroupId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// استرینگ
|
||||
/// </summary>
|
||||
public string GroupNo { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// اینتیجر
|
||||
/// </summary>
|
||||
public int GroupNoInt { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,36 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
public class AddOrEditJobInGroupDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long GroupId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه نوع عددی
|
||||
/// </summary>
|
||||
public int GroupNoInt { get; set; }
|
||||
|
||||
|
||||
public List<AddJobListDto> AddJobListDto { get; set; }
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// لیست مشغال افزوده شده به گروه
|
||||
/// </summary>
|
||||
public class AddJobListDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی شغل در مشاغل اداره کار
|
||||
/// </summary>
|
||||
public long JobId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام شغل
|
||||
/// </summary>
|
||||
public string JobName { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
public class CheckStatusToDeleteScheme
|
||||
{
|
||||
/// <summary>
|
||||
/// وضعیت طرح برای حذف
|
||||
/// </summary>
|
||||
public DeleteSchemeStatus DeleteSchemeStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// پیام سیستم
|
||||
/// </summary>
|
||||
public string Message { get; set; }
|
||||
}
|
||||
|
||||
public enum DeleteSchemeStatus
|
||||
{
|
||||
/// <summary>
|
||||
/// مجاز
|
||||
/// </summary>
|
||||
Valid,
|
||||
/// <summary>
|
||||
/// مجاز باشرط تایید
|
||||
/// </summary>
|
||||
ConfirmationNeeded,
|
||||
|
||||
/// <summary>
|
||||
/// غیر مجاز
|
||||
/// </summary>
|
||||
NotValid,
|
||||
|
||||
}
|
||||
@@ -0,0 +1,104 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد گروه
|
||||
/// </summary>
|
||||
public class ClassificationGroupAndJobModel
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long GroupId { get; set; }
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// استرینگ
|
||||
/// </summary>
|
||||
public string GroupNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه نوع عددی
|
||||
/// </summary>
|
||||
public int GroupNoInt { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; set; }
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long ClassificationSchemeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// لیست مشاغل
|
||||
/// </summary>
|
||||
public List<EditClassificationGroupJob> EditClassificationGroupJob { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد مشاغل گروه
|
||||
/// </summary>
|
||||
public class CreateClassificationGroupJob
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی شغل
|
||||
/// </summary>
|
||||
public long JobId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام شغل
|
||||
/// </summary>
|
||||
public string JobName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد شغل
|
||||
/// </summary>
|
||||
public string JobCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long ClassificationGroupId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// </summary>
|
||||
public string GroupNo { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// ویرایش مشاغل گروه
|
||||
/// </summary>
|
||||
public class EditClassificationGroupJob : CreateClassificationGroupJob
|
||||
{
|
||||
/// <summary>
|
||||
/// ای دی شغل
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد یا ویرایش مشاغل
|
||||
/// </summary>
|
||||
public class CreateOrEditGroupJobs
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long GroupId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// استرینگ
|
||||
/// </summary>
|
||||
public string GroupNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی مشاغل
|
||||
/// </summary>
|
||||
public List<long> JobIdList { get; set; }
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
/// <summary>
|
||||
/// پارشیال صفحه ایجاد طرح
|
||||
/// </summary>
|
||||
public class ClassificationSchemeListDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آیا طرح دارد
|
||||
/// </summary>
|
||||
public bool HasScheme { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// لیست طرح
|
||||
/// </summary>
|
||||
public List<SchemeListDto> ClassificationSchemesList { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,204 @@
|
||||
using _0_Framework.Application.Enums;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد دستمزد گروه و ضریب ریالی
|
||||
/// </summary>
|
||||
public class CreateClassificationGroupSalaryAndRialCoefficient
|
||||
{
|
||||
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long ClassificationGroupId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// </summary>
|
||||
public string GroupNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// دستمزد گروه
|
||||
/// </summary>
|
||||
public double GroupSalary { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع
|
||||
/// </summary>
|
||||
public DateTime StartDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان
|
||||
/// </summary>
|
||||
public DateTime EndDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال
|
||||
/// </summary>
|
||||
public int Year { get; set; }
|
||||
|
||||
|
||||
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// ویرایش دستمزد
|
||||
/// </summary>
|
||||
public class EditClassificationGroupSalaryAndRialCoefficient : CreateClassificationGroupSalaryAndRialCoefficient
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
[DataType(DataType.Text)]
|
||||
public string StartDateFa { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
[DataType(DataType.Text)]
|
||||
public string EndDateFa { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// دستمزد گروه
|
||||
/// </summary>
|
||||
public string GroupSalaryStr { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// لیست دستمزدها و ضرایب ریالی
|
||||
/// </summary>
|
||||
public class SalaryAndRialCoefficientModel
|
||||
{
|
||||
/// <summary>
|
||||
/// تاریخ شروع
|
||||
/// میلادی
|
||||
/// </summary>
|
||||
public DateTime StartDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
[DataType(DataType.Text)]
|
||||
public string StartDateFa { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان
|
||||
/// میلادی
|
||||
/// </summary>
|
||||
public DateTime EndDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
[DataType(DataType.Text)]
|
||||
public string EndDateFa { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال
|
||||
/// </summary>
|
||||
public int Year { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ضریب ریالی
|
||||
/// string
|
||||
/// </summary>
|
||||
public string RialCoefficientStr { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ضریب ریالی
|
||||
/// double
|
||||
/// </summary>
|
||||
public double RialCoefficient { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long SchemeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نوع ضریب
|
||||
/// </summary>
|
||||
public TypeOfCoefficient TypeOfCoefficient { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی ضریب ریالی
|
||||
/// </summary>
|
||||
public long CoefficientId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// لیست دستمزدها و ضرایب بر اساس سال
|
||||
/// </summary>
|
||||
public List<EditClassificationGroupSalaryAndRialCoefficient> SalariesAndCoefficientList { get; set; }
|
||||
}
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تب دستمزد ها و ضرایب ریالی
|
||||
/// </summary>
|
||||
public class SalaryAndRialCoefficientTab
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long SchemeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا دستمزدی قبلا ایجاد شده است؟
|
||||
/// </summary>
|
||||
public bool HasAnySalaries { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// لیست دستمزدها و ضرایب
|
||||
/// </summary>
|
||||
public List<SalaryAndRialCoefficientTabDataList> SalaryAndRialCoefficientTabDataList { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// لیست دستمزدها
|
||||
/// </summary>
|
||||
public class SalaryAndRialCoefficientTabDataList
|
||||
{
|
||||
/// <summary>
|
||||
/// تاریخ شروع
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
[DataType(DataType.Text)]
|
||||
public string StartDateFa { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
[DataType(DataType.Text)]
|
||||
public string EndDateFa { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// سال
|
||||
/// </summary>
|
||||
public int Year { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// ضریب ریالی
|
||||
/// string
|
||||
/// </summary>
|
||||
public string RialCoefficientStr { get; set; }
|
||||
}
|
||||
|
||||
@@ -0,0 +1,59 @@
|
||||
using _0_Framework.Application.Enums;
|
||||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد طرح
|
||||
/// </summary>
|
||||
public class CreateClassificationScheme
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شمول طرح
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
public string IncludingDateFa { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ اجرای طرح
|
||||
/// میلادی
|
||||
/// </summary>
|
||||
public DateTime ExecutionDateGr { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ اجرای طرح
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
public string ExecutionDateFa { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان طرح
|
||||
/// </summary>
|
||||
public DateTime? EndSchemeDateGr { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل طراح
|
||||
/// </summary>
|
||||
public string DesignerFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره همراه طراح
|
||||
/// </summary>
|
||||
[RegularExpression("^[0-9]*$", ErrorMessage = "لطفا فقط عدد وارد کنید")]
|
||||
public string DesignerPhone { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نوع ضریب
|
||||
/// </summary>
|
||||
public TypeOfCoefficient TypeOfCoefficient { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,46 @@
|
||||
using _0_Framework.Application.Enums;
|
||||
using System;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
public class CreateClassificationSchemeDto
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شمول طرح
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
public string IncludingDateFa { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ اجرای طرح
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
public string ExecutionDateFa { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل طراح
|
||||
/// </summary>
|
||||
public string DesignerFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره همراه طراح
|
||||
/// </summary>
|
||||
[RegularExpression("^[0-9]*$", ErrorMessage = "لطفا فقط عدد وارد کنید")]
|
||||
public string DesignerPhone { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نوع ضریب
|
||||
/// </summary>
|
||||
public TypeOfCoefficient TypeOfCoefficient { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,12 @@
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
/// <summary>
|
||||
/// ویرایش طرح
|
||||
/// </summary>
|
||||
public class EditClassificationScheme : CreateClassificationScheme
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,45 @@
|
||||
using _0_Framework.Application.Enums;
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
public class EditClassificationSchemeDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شمول طرح
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
public string IncludingDateFa { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ اجرای طرح
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
public string ExecutionDateFa { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل طراح
|
||||
/// </summary>
|
||||
public string DesignerFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره همراه طراح
|
||||
/// </summary>
|
||||
[RegularExpression("^[0-9]*$", ErrorMessage = "لطفا فقط عدد وارد کنید")]
|
||||
public string DesignerPhone { get; set; }
|
||||
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نوع ضریب
|
||||
/// </summary>
|
||||
public TypeOfCoefficient TypeOfCoefficient { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,109 @@
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
/// <summary>
|
||||
/// ویرایش گروه پرسنل
|
||||
/// </summary>
|
||||
public class EditEmployeeGroup
|
||||
{
|
||||
/// <summary>
|
||||
/// آیا گروه بندی پرسنل چند گانه است
|
||||
/// </summary>
|
||||
public bool HasMultipleGroup { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long EmployeeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long SchemeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// لیست گروه های پرسنل
|
||||
/// </summary>
|
||||
public List<EditEmployeeGroupList> EditEmployeeGroupLists { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// لیست گروه های طرح
|
||||
/// </summary>
|
||||
public List<ClassificationGroupList> ClassificationGroupList { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// لیست گروه های پرسنل
|
||||
/// </summary>
|
||||
public class EditEmployeeGroupList
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long EmployeeId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long ClassificationGroupId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی شغل
|
||||
/// </summary>
|
||||
public long ClassificationGroupJobId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع استفاده از گروه
|
||||
/// </summary>
|
||||
public DateTime? StartGroupDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان استفاده از گروه
|
||||
/// </summary>
|
||||
public DateTime? EndGroupDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شروع استفاده از گروه
|
||||
/// </summary>
|
||||
public string StartGroupDateFa { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ پایان استفاده از گروه
|
||||
/// </summary>
|
||||
public string EndGroupDateFa { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا حذف شده است
|
||||
/// </summary>
|
||||
public bool IsRemoved { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long SchemeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// </summary>
|
||||
public string GroupNo { get; set; }
|
||||
|
||||
|
||||
}
|
||||
@@ -0,0 +1,110 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
/// <summary>
|
||||
/// جستجوی پرسنل
|
||||
/// تب افزودن پرسنل طبقه بندی مشاغل
|
||||
/// </summary>
|
||||
public class EmployeeInfoTab
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long WorkshopId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long EmployeeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل پرسنل
|
||||
/// </summary>
|
||||
public string FullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long SchemeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// لیست پرسنل
|
||||
/// </summary>
|
||||
public List<EmployeeInfoList> EmployeeInfoList { get; set; }
|
||||
|
||||
public List<string> YearlyList { get; set; }
|
||||
}
|
||||
|
||||
/// <summary>
|
||||
/// لیست پرسنل
|
||||
/// تب افزودن پرسنل طبقه بندی مشاغل
|
||||
/// </summary>
|
||||
public class EmployeeInfoList
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long EmployeeId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل پرسنل
|
||||
/// </summary>
|
||||
public string FullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه یا گره هایی که پرسنل در آن اضافه شده
|
||||
/// </summary>
|
||||
public string GroupNo { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا پرسنل هیچ گروهی دارد؟
|
||||
/// </summary>
|
||||
public bool HasGroup { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// آخرین تاریخ شروع بکار قراداد
|
||||
/// </summary>
|
||||
public string LastStartContractWork { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آخرین تاریخ ترک کار قراداد
|
||||
/// </summary>
|
||||
public string LastLeftContractWork { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آخرین تاریخ شروع بکار بیمه
|
||||
/// </summary>
|
||||
public string LastStartInsuranceWork { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آخرین تاریخ ترک کار بیمه
|
||||
/// </summary>
|
||||
public string LastLeftInsuranceWork { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا پرسنل قرداد است
|
||||
/// </summary>
|
||||
public bool ContractPerson { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا پرسنل بیمه است
|
||||
/// </summary>
|
||||
public bool InsurancePerson { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا ترک کار قرارداد دارد
|
||||
/// </summary>
|
||||
public bool ContractLeft { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا ترک کار بیمه دارد
|
||||
/// </summary>
|
||||
public bool InsuranceLeft { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا کلا ترک کار کرده است
|
||||
/// </summary>
|
||||
public bool Black { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,22 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
public class GetGroupAndJobSchemeListDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی گروه
|
||||
/// </summary>
|
||||
public long GroupId { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه نوع عددی
|
||||
/// </summary>
|
||||
public int GroupNoInt { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا شغلی به گروه اضافه شده
|
||||
/// </summary>
|
||||
public bool HasAnyJob { get; set; }
|
||||
}
|
||||
|
||||
@@ -0,0 +1,244 @@
|
||||
using _0_Framework.Application;
|
||||
using CompanyManagment.App.Contracts.TemporaryClientRegistration;
|
||||
using CompanyManagment.App.Contracts.YearlySalary;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
/// <summary>
|
||||
/// اپلیکیش طرح طبقه بندی مشاغل
|
||||
/// </summary>
|
||||
public interface IClassificationSchemeApplication
|
||||
{
|
||||
/// <summary>
|
||||
/// پارشیال صفحه ایجاد طرح
|
||||
/// </summary>
|
||||
/// <param name="worskhopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<ClassificationSchemeListDto> GetClassificationSchemeList(long workshopId);
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد طرح
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> CreateClassificationScheme(CreateClassificationSchemeDto command);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت اطلاعات طرح برای مودال ویرایش
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task<EditClassificationSchemeDto> GetClassificationScheme(long id);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت اطلاعات طر برای محاسبات
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task<EditClassificationScheme> GetClassificationSchemeToCompute(long id);
|
||||
|
||||
/// <summary>
|
||||
/// ویرایش طرح
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> EditClassificationScheme(EditClassificationSchemeDto command);
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت گروه ها و مشاغلشان برای تب تعیین مشاغل
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<ClassificationGroupAndJobModel>> GetGroupAndJobs(long schemeId);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت مشاغل گروه توسط آی دی گروه
|
||||
/// </summary>
|
||||
/// <param name="groupId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<EditClassificationGroupJob>> GetGroupJobs(long groupId);
|
||||
|
||||
/// <summary>
|
||||
/// چک میکند که آی پرسنلی وجود دارد که این شغل به او نسبت داده شده
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <param name="groupId"></param>
|
||||
/// <returns></returns>
|
||||
Task<bool> CheckEmployeeHasThisJob(long id, long groupId);
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد مشاغل گروه
|
||||
/// </summary>
|
||||
/// <param name="createClassificationGroupJob"></param>
|
||||
/// <param name="deleteJobList"></param>
|
||||
/// <returns></returns>
|
||||
Task<bool> CreateGroupJobs(List<CreateClassificationGroupJob> createClassificationGroupJob, List<long> deleteJobList);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// چک میکند که آیا برای این طرح تابحال دستمزدی ایجاد شده یا نه
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<SalaryAndRialCoefficientTab> GetSalariesTabData(long schemeId);
|
||||
|
||||
/// <summary>
|
||||
/// در یافت اطلاعات گروه برای لود مودال ایجاد دستمزد های
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<SalaryAndRialCoefficientModel> GetGroupToCreateSalariesModal(long schemeId);
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد دستمزدها و ضرایب ریالی هر گروه در هر سال
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> CreateGroupSalaryAndCoefficient(SalaryAndRialCoefficientModel command);
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت دستمزدها و ضریب ریالی برای مودال ویرایش
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <param name="startDate"></param>
|
||||
/// <param name="endDate"></param>
|
||||
/// <returns></returns>
|
||||
Task<SalaryAndRialCoefficientModel> GetEditSalariesData(long schemeId, string startDate, string endDate);
|
||||
|
||||
/// <summary>
|
||||
/// ثبت ویرایش دستمزدها و ضریب
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> EditGroupSalaryAndCoefficient(SalaryAndRialCoefficientModel command);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت لیست پرسنل برای تب افزودن پرسنل
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<EmployeeInfoTab> GetEmployeeDataTab(EmployeeInfoTab command);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت گروه های طرح
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<ClassificationGroupList>> GetGroups(long schemeId);
|
||||
|
||||
/// <summary>
|
||||
/// ذخیره پرسنل افزوده شده در گروه
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> AddEmployeeToGroup(AddEmployeeToGroup command);
|
||||
|
||||
/// <summary>
|
||||
/// انتقال پرسنل به گروه جدید
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> TransferEmployeeToNewGroup(List<EditEmployeeGroupList> command);
|
||||
|
||||
/// <summary>
|
||||
/// ذخیره ویرایش گروه پرسنل
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> EditGroupMember(AddEmployeeToGroup command);
|
||||
|
||||
/// <summary>
|
||||
/// ذخیره ویرایش گروه چندگانه پرسنل
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> EditMultipleGroupMember(List<EditEmployeeGroupList> command);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت اطلاعات عضویتی پرسنل در گروه
|
||||
/// </summary>
|
||||
/// <param name="employeeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<EditEmployeeGroup> GetEmployeeMemberizeData(long employeeId);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// متد محاسبه پایه سنوات برا افراد تک گروه
|
||||
/// </summary>
|
||||
/// <param name="schemeStart">تاریخ شروع طرح</param>
|
||||
/// <param name="schemeEnd">تاریخ پاین طرح، اجباری نیست</param>
|
||||
/// <param name="contractStart">تاریخ شروع قراداد</param>
|
||||
/// <param name="contractEnd">تاریخ پایان قراداد</param>
|
||||
/// <param name="groupNo">شماره گروه</param>
|
||||
/// <param name="employeeId">آی دی پرسنل</param>
|
||||
/// <param name="workshopId">آی دی کارگاه</param>
|
||||
/// <returns></returns>
|
||||
Task<BaseYearDataViewModel> BaseYearComputeOneGroup(DateTime schemeStart, DateTime? schemeEnd,
|
||||
DateTime contractStart, DateTime contractEnd, string groupNo, long employeeId, long workshopId);
|
||||
|
||||
#region ForApi
|
||||
|
||||
/// <summary>
|
||||
/// چک کردن امکان حذف طرح
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult<CheckStatusToDeleteScheme>> CheckToDeleteScheme(long id);
|
||||
|
||||
/// <summary>
|
||||
/// حذف طرح
|
||||
/// </summary>
|
||||
/// <param name="id"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> DeleteScheme(long id);
|
||||
|
||||
/// <summary>
|
||||
/// تب گروه ها و مشاغل
|
||||
/// لیست گروه ها
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<GetGroupAndJobSchemeListDto>> GetGroupList(long schemeId);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت لیست مشاغل برای مودال ایجاد و ویرایش
|
||||
/// </summary>
|
||||
/// <param name="groupId"></param>
|
||||
/// <returns></returns>
|
||||
Task<AddOrEditJobInGroupDto> GetCreateOrEditJobsData(long groupId);
|
||||
|
||||
/// <summary>
|
||||
/// چک میکند که آی پرسنلی وجود دارد که این شغل به او نسبت داده شده
|
||||
/// </summary>
|
||||
/// <param name="jobId"></param>
|
||||
/// <param name="groupId"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> CheckIfEmployeeHasThisJob(long jobId, long groupId);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// ذخیر ایجاد یا ویرایش مشاغل در گروه
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> SaveJobsToGroup(AddOrEditJobInGroupDto command);
|
||||
|
||||
/// <summary>
|
||||
/// لیست دستمزدها بر اساس تاریخ و سال برای تب دستمزدها
|
||||
/// </summary>
|
||||
/// <param name="schemeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<SalaryAndRialCoefficientTabDataList>> GetSalaryList(long schemeId);
|
||||
#endregion
|
||||
|
||||
}
|
||||
@@ -0,0 +1,32 @@
|
||||
using System.ComponentModel.DataAnnotations;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.ClassificationScheme;
|
||||
|
||||
public class SchemeListDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی طرح
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ شمول طرح
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
public string IncludingDateFa { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ اجرای طرح
|
||||
/// شمسی
|
||||
/// </summary>
|
||||
public string ExecutionDateFa { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل طراح
|
||||
/// </summary>
|
||||
public string DesignerFullName { get; set; }
|
||||
|
||||
|
||||
}
|
||||
@@ -19,4 +19,6 @@ public class ContractSeparationViewModel
|
||||
public string ConsumableItems { get; set; }
|
||||
public bool checker { get; set; }
|
||||
public bool HasLeft { get; set; }
|
||||
|
||||
public long EmployeeId { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,26 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Employee.DTO;
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد ترک کار از کلاینت
|
||||
/// api
|
||||
/// </summary>
|
||||
public class CreateLeftWorkTempDtoClient
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long EmployeeId { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ ترک کار
|
||||
/// </summary>
|
||||
public string LeftWorkTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ آخرین روز کاری
|
||||
/// </summary>
|
||||
public string LastDayStanding { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,92 @@
|
||||
using System.Diagnostics.Contracts;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Employee.DTO;
|
||||
|
||||
/// <summary>
|
||||
/// لیست پرسنل کلاینت
|
||||
/// api
|
||||
/// </summary>
|
||||
public class EmployeeListDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد پرسنلی
|
||||
/// </summary>
|
||||
public int PersonnelCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// وضعیت تاهل
|
||||
/// </summary>
|
||||
public string MaritalStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
///کد ملی
|
||||
/// </summary>
|
||||
public string NationalCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره شناسنامه
|
||||
/// </summary>
|
||||
public string IdNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ تولد
|
||||
/// </summary>
|
||||
public string DateOfBirth { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام پدر
|
||||
/// </summary>
|
||||
public string FatherName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تعداد فرزندان
|
||||
/// </summary>
|
||||
public string NumberOfChildren { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آخرین تاریخ شروع بکار قرارداد
|
||||
/// </summary>
|
||||
public string LatestContractStartDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ ترک کار قرارداد
|
||||
/// </summary>
|
||||
public string ContractLeftDate { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// آخرین تاریخ شروع بکار بیمه
|
||||
/// </summary>
|
||||
public string LatestInsuranceStartDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ ترک کار بیمه
|
||||
/// </summary>
|
||||
public string InsuranceLeftDate { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دارای قرارداد است؟
|
||||
/// </summary>
|
||||
public bool HasContract { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// دارای بیمه است؟
|
||||
/// </summary>
|
||||
public bool HasInsurance { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// وضعیت پرسنل در کارگاه
|
||||
/// </summary>
|
||||
public EmployeeStatusInWorkshop EmployeeStatusInWorkshop { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,18 @@
|
||||
namespace CompanyManagment.App.Contracts.Employee.DTO;
|
||||
|
||||
/// <summary>
|
||||
/// سرچ مدل پرسنل
|
||||
/// api
|
||||
/// </summary>
|
||||
public class EmployeeSearchModelDto
|
||||
{
|
||||
/// <summary>
|
||||
/// نام پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد ملی
|
||||
/// </summary>
|
||||
public string NationalCode { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,29 @@
|
||||
namespace CompanyManagment.App.Contracts.Employee.DTO;
|
||||
|
||||
/// <summary>
|
||||
/// وضعیت پرسنل در کارگاه
|
||||
/// api
|
||||
/// </summary>
|
||||
public enum EmployeeStatusInWorkshop
|
||||
{
|
||||
/// <summary>
|
||||
/// ایجاد شده توسط کارفرما
|
||||
/// </summary>
|
||||
CreatedByClient,
|
||||
|
||||
/// <summary>
|
||||
/// ترک کار موقت
|
||||
/// </summary>
|
||||
LefWorkTemp,
|
||||
|
||||
/// <summary>
|
||||
/// در حال کار در کارگاه
|
||||
/// </summary>
|
||||
Working,
|
||||
|
||||
/// <summary>
|
||||
/// قطع ارتباط و ترک کار کامب
|
||||
/// </summary>
|
||||
HasLeft,
|
||||
|
||||
}
|
||||
@@ -0,0 +1,25 @@
|
||||
namespace CompanyManagment.App.Contracts.Employee.DTO;
|
||||
|
||||
public class GetLeftWorkTempDayOfWeekDtoClient
|
||||
{
|
||||
/// <summary>
|
||||
/// تاریخ ترک کار
|
||||
/// </summary>
|
||||
public string LeftWorkTime { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آخرین روز کاری
|
||||
/// </summary>
|
||||
public string LastDayStanding { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// روز هفته ترک کار
|
||||
/// </summary>
|
||||
public string LeftWorkTimeDayOfWeek { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// روز هفته اخرین روز کاری
|
||||
/// </summary>
|
||||
public string LastDayStandingDayOfWeek { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,54 @@
|
||||
namespace CompanyManagment.App.Contracts.Employee.DTO;
|
||||
|
||||
/// <summary>
|
||||
/// پرینت گروهی تفکیکی پرسنل
|
||||
/// </summary>
|
||||
public class PrintAllDetailsPersonnelInfoDtoClient
|
||||
{
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
|
||||
|
||||
|
||||
/// <summary>
|
||||
///کد ملی
|
||||
/// </summary>
|
||||
public string NationalCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره شناسنامه
|
||||
/// </summary>
|
||||
public string IdNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ تولد
|
||||
/// </summary>
|
||||
public string DateOfBirth { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام پدر
|
||||
/// </summary>
|
||||
public string FatherName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تعداد فرزندان
|
||||
/// </summary>
|
||||
public string NumberOfChildren { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// استان
|
||||
/// </summary>
|
||||
public string State { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شهر
|
||||
/// </summary>
|
||||
public string City { get; set; }
|
||||
|
||||
|
||||
public string Address { get; set; }
|
||||
}
|
||||
@@ -0,0 +1,96 @@
|
||||
namespace CompanyManagment.App.Contracts.Employee.DTO;
|
||||
|
||||
/// <summary>
|
||||
/// پرینت تجمیعی پرسنل
|
||||
/// </summary>
|
||||
public class PrintAllEmployeesInfoDtoClient
|
||||
{
|
||||
public PrintAllEmployeesInfoDtoClient(EmployeeListDto source)
|
||||
{
|
||||
Id = source.Id;
|
||||
EmployeeFullName = source.EmployeeFullName;
|
||||
PersonnelCode = source.PersonnelCode;
|
||||
MaritalStatus = source.MaritalStatus;
|
||||
NationalCode = source.NationalCode;
|
||||
IdNumber = source.IdNumber;
|
||||
DateOfBirth = source.DateOfBirth;
|
||||
FatherName = source.FatherName;
|
||||
NumberOfChildren = source.NumberOfChildren;
|
||||
LatestContractStartDate = source.LatestContractStartDate;
|
||||
ContractLeftDate = source.ContractLeftDate;
|
||||
LatestInsuranceStartDate = source.LatestInsuranceStartDate;
|
||||
InsuranceLeftDate = source.InsuranceLeftDate;
|
||||
Black = source.EmployeeStatusInWorkshop == EmployeeStatusInWorkshop.HasLeft;
|
||||
}
|
||||
/// <summary>
|
||||
/// آی دی پرسنل
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کامل پرسنل
|
||||
/// </summary>
|
||||
public string EmployeeFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد پرسنلی
|
||||
/// </summary>
|
||||
public int PersonnelCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// وضعیت تاهل
|
||||
/// </summary>
|
||||
public string MaritalStatus { get; set; }
|
||||
|
||||
/// <summary>
|
||||
///کد ملی
|
||||
/// </summary>
|
||||
public string NationalCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره شناسنامه
|
||||
/// </summary>
|
||||
public string IdNumber { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ تولد
|
||||
/// </summary>
|
||||
public string DateOfBirth { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام پدر
|
||||
/// </summary>
|
||||
public string FatherName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تعداد فرزندان
|
||||
/// </summary>
|
||||
public string NumberOfChildren { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آخرین تاریخ شروع بکار قرارداد
|
||||
/// </summary>
|
||||
public string LatestContractStartDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ ترک کار قرارداد
|
||||
/// </summary>
|
||||
public string ContractLeftDate { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// آخرین تاریخ شروع بکار بیمه
|
||||
/// </summary>
|
||||
public string LatestInsuranceStartDate { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// تاریخ ترک کار بیمه
|
||||
/// </summary>
|
||||
public string InsuranceLeftDate { get; set; }
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// وضعیت پرسنل در کارگاه
|
||||
/// </summary>
|
||||
public bool Black { get; set; }
|
||||
}
|
||||
@@ -1,8 +1,10 @@
|
||||
using System.Collections.Generic;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Application;
|
||||
using CompanyManagment.App.Contracts.Employee.DTO;
|
||||
using CompanyManagment.App.Contracts.EmployeeInsuranceRecord;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Employee;
|
||||
|
||||
@@ -73,10 +75,12 @@ public interface IEmployeeApplication
|
||||
long workshopId);
|
||||
Task<OperationResult> EditEmployeeInEmployeeDocumentWorkFlow(EditEmployeeInEmployeeDocument command);
|
||||
|
||||
[Obsolete("این متد منسوخ شده است و از متد WorkedEmployeesInWorkshopSelectList استفاده کنید")]
|
||||
Task<List<EmployeeSelectListViewModel>> WorkedEmployeesInWorkshopSelectList(long workshopId);
|
||||
|
||||
Task<OperationResult<EmployeeDataFromApiViewModel>> GetEmployeeDataFromApi(string nationalCode, string birthDate);
|
||||
|
||||
|
||||
#endregion
|
||||
|
||||
#region Api
|
||||
@@ -103,7 +107,40 @@ public interface IEmployeeApplication
|
||||
/// <returns></returns>
|
||||
Task<List<GetClientEmployeeListViewModel>> GetClientEmployeeList(GetClientEmployeeListSearchModel searchModel, long workshopId);
|
||||
|
||||
#endregion
|
||||
|
||||
/// <summary>
|
||||
/// دریافت لیست پرسنل کلاینت
|
||||
/// api
|
||||
/// </summary>
|
||||
/// <param name="searchModel"></param>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<EmployeeListDto>> ListOfAllEmployeesClient(EmployeeSearchModelDto searchModel, long workshopId);
|
||||
|
||||
/// <summary>
|
||||
/// پرینت تجمیعی پرسنل کلاینت
|
||||
/// api
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<PrintAllEmployeesInfoDtoClient>> PrintAllEmployeesInfoClient(long workshopId);
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// پرینت گروهی تفکیکی پرسنل
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<PrintAllDetailsPersonnelInfoDtoClient>> PrintAllDetailsPersonnelInfoClient(long workshopId);
|
||||
|
||||
/// <summary>
|
||||
/// سلکت لیست پرسنل های کارگاه کلاینت
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<EmployeeSelectListViewModel>> GetWorkingEmployeesSelectList(long workshopId);
|
||||
#endregion
|
||||
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,14 @@
|
||||
namespace CompanyManagment.App.Contracts.EmployeeBankInformation;
|
||||
|
||||
public class GetEmployeeBankInfoDetailsBankItemDto
|
||||
{
|
||||
public long Id { get; set; }
|
||||
public string CardNumber { get; set; }
|
||||
public string ShebaNumber { get; set; }
|
||||
public string BankAccountNumber { get; set; }
|
||||
public string BankName { get; set; }
|
||||
public string BankLogoPath { get; set; }
|
||||
public bool IsDefault { get; set; }
|
||||
public long BankId { get; set; }
|
||||
|
||||
}
|
||||
@@ -0,0 +1,10 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.EmployeeBankInformation;
|
||||
|
||||
public class GetEmployeeBankInfoDetailsDto
|
||||
{
|
||||
public long EmployeeId { get; set; }
|
||||
public string EmployeeFullName { get; set; }
|
||||
public List<GetEmployeeBankInfoDetailsBankItemDto> BankItems { get; set; }
|
||||
}
|
||||
@@ -1,5 +1,7 @@
|
||||
using _0_Framework.Application;
|
||||
using System;
|
||||
using _0_Framework.Application;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.EmployeeBankInformation
|
||||
{
|
||||
@@ -8,6 +10,7 @@ namespace CompanyManagment.App.Contracts.EmployeeBankInformation
|
||||
OperationResult Create(CreateEmployeeInformation command);
|
||||
OperationResult GroupCreate(long workshopId, List<CreateEmployeeInformation> command);
|
||||
OperationResult Edit(EditEmployeeInformation command);
|
||||
[Obsolete("از متد Async استفاده شود")]
|
||||
List<GroupedEmployeeBankInformationViewModel> Search(long workshopId, EmployeeBankInformationSearchModel searchParams);
|
||||
List<EmployeeBankInformationViewModelForExcel> SearchForExcel(long workshopId,
|
||||
EmployeeBankInformationSearchModel searchParams);
|
||||
@@ -17,5 +20,22 @@ namespace CompanyManagment.App.Contracts.EmployeeBankInformation
|
||||
OperationResult RemoveByEmployeeId(long workshopId, long employeeId);
|
||||
List<GroupedEmployeeBankInformationViewModel> GetAllByWorkshopId(long workshopId);
|
||||
OperationResult SetDefault(long workshopId, long bankInfoId);
|
||||
|
||||
/// <summary>
|
||||
/// گرفتن لیست اطلاعات بانکی
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <param name="searchParams"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<GroupedEmployeeBankInformationViewModel>> SearchAsync
|
||||
(long workshopId, EmployeeBankInformationSearchModel searchParams);
|
||||
|
||||
/// <summary>
|
||||
/// جزئیات اطلاعات بانکی بر اساس پرسنل
|
||||
/// </summary>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <param name="employeeId"></param>
|
||||
/// <returns></returns>
|
||||
Task<GetEmployeeBankInfoDetailsDto> GetDetailsByEmployeeIdAsync(long workshopId, long employeeId);
|
||||
}
|
||||
}
|
||||
|
||||
18
CompanyManagment.App.Contracts/Hubs/CheckoutHub.cs
Normal file
18
CompanyManagment.App.Contracts/Hubs/CheckoutHub.cs
Normal file
@@ -0,0 +1,18 @@
|
||||
using System.Threading.Tasks;
|
||||
using Microsoft.AspNetCore.SignalR;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Hubs;
|
||||
|
||||
public class CheckoutHub : Hub
|
||||
{
|
||||
|
||||
public async Task send(long id)
|
||||
{
|
||||
await Groups.AddToGroupAsync(Context.ConnectionId, GetGroupName(id));
|
||||
}
|
||||
|
||||
public static string GetGroupName(long id)
|
||||
{
|
||||
return $"group-Checkout-{id}";
|
||||
}
|
||||
}
|
||||
@@ -1,4 +1,7 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Security.AccessControl;
|
||||
using CompanyManagment.App.Contracts.Workshop;
|
||||
using Microsoft.AspNetCore.Server.HttpSys;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.InstitutionContract;
|
||||
|
||||
@@ -104,6 +107,7 @@ public class InstitutionContractListWorkshop
|
||||
{
|
||||
public string WorkshopName { get; set; }
|
||||
public int EmployeeCount { get; set; }
|
||||
public string Price { get; set; }
|
||||
public WorkshopServicesViewModel WorkshopServices { get; set; }
|
||||
}
|
||||
|
||||
@@ -111,22 +115,31 @@ public class WorkshopServicesViewModel
|
||||
{
|
||||
public bool Insurance { get; set; }
|
||||
public string InsuranceLabel => "ارسال لیست بیمه";
|
||||
public string InsurancePrice { get; set; }
|
||||
|
||||
public bool InsuranceInPerson { get; set; }
|
||||
public string InsuranceInPersonLabel => "خدمات مستقیم";
|
||||
public string InsuranceInPersonPrice { get; set; }
|
||||
|
||||
|
||||
public bool Contract { get; set; }
|
||||
public string ContractLabel => "قرارداد و تصفیه حساب";
|
||||
public string ContractPrice { get; set; }
|
||||
|
||||
|
||||
public bool ContractInPerson { get; set; }
|
||||
public string ContractInPersonLabel => "خدمات مستقیم";
|
||||
public string ContractInPersonPrice { get; set; }
|
||||
|
||||
public bool RollCall { get; set; }
|
||||
public string RollCallLabel => "ساعت حضور و غیاب";
|
||||
public string RollCallPrice { get; set; }
|
||||
|
||||
public bool RollCallInPerson { get; set; }
|
||||
public string RollCallInPersonLabel => "خدمات مستقیم";
|
||||
public string RollCallInPersonPrice { get; set; }
|
||||
|
||||
public bool CustomizeCheckout { get; set; }
|
||||
public string CustomizeCheckoutLabel => "فیش غیر رسمی";
|
||||
public string CustomizeCheckoutPrice { get; set; }
|
||||
}
|
||||
@@ -13,6 +13,7 @@ public class GetInstitutionVerificationDetailsViewModel
|
||||
public string ContractStart { get; set; }
|
||||
public string ContractEnd { get; set; }
|
||||
public List<GetInstitutionVerificationDetailsWorkshopsViewModel> Workshops { get; set; }
|
||||
public string OneMonthPrice { get; set; }
|
||||
public string TotalPrice { get; set; }
|
||||
public string TaxPrice { get; set; }
|
||||
public string PaymentPrice { get; set; }
|
||||
|
||||
@@ -4,6 +4,7 @@ public class GetInstitutionVerificationDetailsWorkshopsViewModel
|
||||
{
|
||||
public string Name { get; set; }
|
||||
public int PersonnelCount { get; set; }
|
||||
|
||||
public WorkshopServicesViewModel OldServices { get; set; }
|
||||
public WorkshopServicesViewModel Services { get; set; }
|
||||
public string Price { get; set; }
|
||||
}
|
||||
@@ -283,7 +283,7 @@ public interface IInstitutionContractApplication
|
||||
#endregion
|
||||
|
||||
Task<OperationResult> ResendVerifyLink(long institutionContractId);
|
||||
|
||||
Task AmendmentComplete(InstitutionContractAmendmentCompleteRequest request);
|
||||
/// <summary>
|
||||
/// دیتای پرینت قرارداد مالی
|
||||
/// </summary>
|
||||
@@ -291,14 +291,17 @@ public interface IInstitutionContractApplication
|
||||
/// <returns></returns>
|
||||
Task<InstitutionContractPrintViewModel> PrintOneAsync(long id);
|
||||
|
||||
Task<OperationResult> SetPendingWorkflow(long entityId, InstitutionContractSigningType signingType);
|
||||
Task<long> GetIdByInstallmentId(long installmentId);
|
||||
Task<OperationResult> SetPendingWorkflow(long entityId,InstitutionContractSigningType signingType);
|
||||
|
||||
Task<GetInstitutionContractWorkshopsDetails> GetContractWorkshopsDetails(long id);
|
||||
|
||||
Task<GetInstitutionAmendmentVerificationDetailsViewModel> GetAmendmentVerificationDetails(Guid id, long amendmentId);
|
||||
Task<long> GetIdByInstallmentId(long installmentId);
|
||||
/// <summary>
|
||||
/// تایید قرارداد مالی به صورت دستی
|
||||
/// </summary>
|
||||
/// <param name="institutionContractId"></param>
|
||||
/// <returns></returns>
|
||||
/// </summary>
|
||||
Task<OperationResult> VerifyInstitutionContractManually(long institutionContractId);
|
||||
|
||||
Task<InstitutionContractCreationPaymentResponse> GetCreationPaymentMethod(InstitutionContractCreationPaymentRequest request);
|
||||
@@ -349,3 +352,34 @@ public class InstitutionContractCreationWorkshopsRequest
|
||||
|
||||
public long RepresentativeId { get; set; }
|
||||
}
|
||||
public class GetInstitutionAmendmentVerificationDetailsViewModel
|
||||
{
|
||||
public InstitutionContratVerificationParty FirstParty { get; set; }
|
||||
public InstitutionContratVerificationParty SecondParty { get; set; }
|
||||
public string ContractNo { get; set; }
|
||||
public string AmendmentCreationDate { get; set; }
|
||||
public string AmendmentStart { get; set; }
|
||||
public string AmendmentEnd { get; set; }
|
||||
public List<GetInstitutionVerificationDetailsWorkshopsViewModel> Workshops { get; set; }
|
||||
public string TotalPrice { get; set; }
|
||||
public string TaxPrice { get; set; }
|
||||
public string PaymentPrice { get; set; }
|
||||
public List<InstitutionContractInstallmentViewModel> Installments { get; set; }
|
||||
public bool IsInstallment { get; set; }
|
||||
|
||||
|
||||
}
|
||||
public class InstitutionContractAmendmentCompleteRequest
|
||||
{
|
||||
public Guid TempId { get; set; }
|
||||
public bool IsInstallment { get; set; }
|
||||
public long LawId { get; set; }
|
||||
|
||||
|
||||
}
|
||||
|
||||
public class GetInstitutionContractWorkshopsDetails
|
||||
{
|
||||
public List<InstitutionContractListWorkshop> Workshops { get; set; }
|
||||
|
||||
}
|
||||
|
||||
@@ -1,7 +1,10 @@
|
||||
using System.Collections.Generic;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.InstitutionContract;
|
||||
|
||||
public class InsitutionContractAmendmentPaymentResponse
|
||||
{
|
||||
public List<InsitutionContractAmendmentPaymentWorkshopResponse> workshops { get; set; }
|
||||
public InstitutionContractPaymentOneTimeViewModel OneTime { get; set; }
|
||||
public InstitutionContractPaymentMonthlyViewModel Monthly { get; set; }
|
||||
public string ContractStart { get; set; }
|
||||
@@ -9,3 +12,17 @@ public class InsitutionContractAmendmentPaymentResponse
|
||||
public string OneMonthAmount { get; set; }
|
||||
public string TotalAmount { get; set; }
|
||||
}
|
||||
|
||||
public class InsitutionContractAmendmentPaymentWorkshopResponse
|
||||
{
|
||||
public string WorkshopName { get; set; }
|
||||
public WorkshopServicesViewModel OldServices { get; set; }
|
||||
public WorkshopServicesViewModel NewServices { get; set; }
|
||||
|
||||
public bool IsNewWorkshop { get; set; }
|
||||
|
||||
public int PrevPersonnelCount { get; set; }
|
||||
public int NewPersonnelCount { get; set; }
|
||||
|
||||
public double Price { get; set; }
|
||||
}
|
||||
@@ -16,6 +16,8 @@ public class InstitutionContractPrintViewModel
|
||||
public string TaxPrice { get; set; }
|
||||
public string PaymentPrice { get; set; }
|
||||
public string OneMonthPrice { get; set; }
|
||||
public string OneMonthWithoutTax { get; set; }
|
||||
public string OneMonthTax { get; set; }
|
||||
public string VerifyCode { get; set; }
|
||||
public string VerifyDate { get; set; }
|
||||
public string VerifyTime { get; set; }
|
||||
@@ -23,6 +25,4 @@ public class InstitutionContractPrintViewModel
|
||||
public string VerifierPhoneNumber { get; set; }
|
||||
public LawViewModel LawViewModel { get; set; }
|
||||
public string Obligation { get; set; }
|
||||
public string OneMonthWithoutTax { get; set; }
|
||||
public string OneMonthTax { get; set; }
|
||||
}
|
||||
@@ -13,6 +13,13 @@ public interface IJobApplication
|
||||
List<JobViewModel> Search(JobSearchModel searchModel);
|
||||
List<JobViewModel> SearchJobForMain(JobSearchModel searchModel);
|
||||
//Task<List<JobViewModel>> GetJobListByText(string searchtText);
|
||||
|
||||
/// <summary>
|
||||
/// جستجوی مشاغل برای سلکت تو
|
||||
/// </summary>
|
||||
/// <param name="searchtText"></param>
|
||||
/// <returns></returns>
|
||||
Task<List<JobListDto>> JobSearchSelect(string searchtText);
|
||||
List<JobViewModel> GetJobListByText(string searchtText);
|
||||
List<JobViewModel> GetJobListByWorkshopId(long workshopId);
|
||||
List<JobViewModel> GetJobListByTextAndWorkshopId(string textSearch, long workshopId);
|
||||
|
||||
@@ -8,3 +8,10 @@ public class JobViewModel
|
||||
public string SearchResultTitle { get; set; }
|
||||
public string SearchResultCode { get; set; }
|
||||
}
|
||||
|
||||
|
||||
public class JobListDto
|
||||
{
|
||||
public long Id { get; set; }
|
||||
public string JobName { get; set; }
|
||||
}
|
||||
@@ -1,8 +1,9 @@
|
||||
using System;
|
||||
using _0_Framework.Application;
|
||||
using CompanyManagment.App.Contracts.Employee.DTO;
|
||||
using CompanyManagment.App.Contracts.LeftWork;
|
||||
using System;
|
||||
using System.Collections.Generic;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Application;
|
||||
using CompanyManagment.App.Contracts.LeftWork;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.LeftWorkTemp;
|
||||
|
||||
@@ -36,6 +37,27 @@ public interface ILeftWorkTempApplication
|
||||
|
||||
|
||||
List<LeftWorkTempViewModel> GetLeftWorksByWorkshopId(long workshopId);
|
||||
|
||||
#region ForApi
|
||||
|
||||
/// <summary>
|
||||
/// ایجاد ترک کار از کلاینت
|
||||
/// </summary>
|
||||
/// <param name="command"></param>
|
||||
/// <param name="workshopId"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> CreateLeftWorkTempClient(CreateLeftWorkTempDtoClient command, long workshopId);
|
||||
|
||||
/// <summary>
|
||||
/// دریافت روز هفته برای ترک کار و اخرین روز کاری
|
||||
/// </summary>
|
||||
/// <param name="leftWorkTime"></param>
|
||||
/// <param name="lastDayStanding"></param>
|
||||
/// <returns></returns>
|
||||
Task<GetLeftWorkTempDayOfWeekDtoClient> GetLeftWorkTempDayOfWeekDtoClient(string leftWorkTime,
|
||||
string lastDayStanding);
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
public class LeftWorkTempViewModel
|
||||
|
||||
@@ -21,6 +21,6 @@ public class LoanGroupedViewModel
|
||||
{
|
||||
public List<LoanGroupedByDateViewModel> GroupedByDate { get; set; }
|
||||
public List<LoanGroupedByEmployeeViewModel>GroupedByEmployee { get; set; }
|
||||
public List<LoanViewModel> LoanListViewModel { get; set; }
|
||||
public PagedResult<LoanViewModel> LoanListViewModel { get; set; }
|
||||
}
|
||||
|
||||
|
||||
@@ -16,5 +16,6 @@ public class LoanSearchViewModel
|
||||
public string EndDate { get; set; }
|
||||
|
||||
public int PageIndex { get; set; }
|
||||
public int PageSize { get; set; } = 30;
|
||||
public bool ShowAsGrouped { get; set; }
|
||||
}
|
||||
|
||||
@@ -45,4 +45,42 @@ namespace CompanyManagment.App.Contracts.RollCall
|
||||
}
|
||||
#endregion
|
||||
|
||||
public class CheckoutPrintRollCallDto
|
||||
{
|
||||
|
||||
public string RollCallDateFa { get; set; }
|
||||
public string StartDate1 { get; set; }
|
||||
public string EndDate1 { get; set; }
|
||||
|
||||
public string StartDate2 { get; set; }
|
||||
public string EndDate2 { get; set; }
|
||||
|
||||
//منقطع بودن شیفت کاری
|
||||
public bool IsSliced { get; set; }
|
||||
|
||||
public string TotalWorkingHours { get; set; }
|
||||
|
||||
public string DayOfWeek { get; set; }
|
||||
|
||||
public string BreakTimeString { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// اگر مرخصی نداشته باشد خالی خواهد بود، اگر داشته باشد نوع مرخصی جانشانی می شود
|
||||
/// </summary>
|
||||
public string LeaveType { get; set; }
|
||||
|
||||
public bool IsAbsent { get; set; }
|
||||
public bool IsFriday { get; set; }
|
||||
public bool IsHoliday { get; set; }
|
||||
public bool IsBirthDay { get; set; }
|
||||
|
||||
|
||||
public string EnterDifferencesMinutes1 { get; set; }
|
||||
public string ExitDifferencesMinutes1 { get; set; }
|
||||
|
||||
public string EnterDifferencesMinutes2 { get; set; }
|
||||
public string ExitDifferencesMinutes2 { get; set; }
|
||||
|
||||
}
|
||||
|
||||
}
|
||||
|
||||
@@ -4,6 +4,8 @@ using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Application;
|
||||
using CompanyManagment.App.Contracts.Workshop;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.RollCall
|
||||
{
|
||||
@@ -79,7 +81,7 @@ namespace CompanyManagment.App.Contracts.RollCall
|
||||
/// <summary>
|
||||
/// گزارش آنلاین حضور غیاب
|
||||
/// </summary>
|
||||
CurrentDayRollCall GetWorkshopCurrentDayRollCalls(long workshopId);
|
||||
CurrentDayRollCall GetWorkshopCurrentDayRollCalls(long workshopId,WorkshopCurrentDayRollCallSearchModel searchModel);
|
||||
|
||||
/// <summary>
|
||||
/// گزارش آفلاین حضور غیاب کارگاه
|
||||
@@ -125,7 +127,69 @@ namespace CompanyManagment.App.Contracts.RollCall
|
||||
/// <param name="command"></param>
|
||||
/// <returns></returns>
|
||||
Task<OperationResult> RecalculateValues(long workshopId, List<ReCalculateRollCallValues> command);
|
||||
|
||||
Task<PagedResult<RollCallCaseHistoryTitleDto>> GetCaseHistoryTitles(long workshopId,RollCallCaseHistorySearchModel searchModel);
|
||||
Task<List<RollCallCaseHistoryDetail>> GetCaseHistoryDetails(long workshopId, string titleId,
|
||||
RollCallCaseHistorySearchModel searchModel);
|
||||
|
||||
Task<RollCallCaseHistoryExcelDto> DownloadCaseHistoryExcel(long workshopId, string titleId,
|
||||
RollCallCaseHistorySearchModel searchModel);
|
||||
}
|
||||
|
||||
public class RollCallCaseHistoryExcelDto
|
||||
{
|
||||
public byte[] Bytes { get; set; }
|
||||
public string FileName { get; set; }
|
||||
public string MimeType { get; set; }
|
||||
}
|
||||
|
||||
public class RollCallCaseHistoryDetail
|
||||
{
|
||||
public string EmployeeFullName { get; set; }
|
||||
public string PersonnelCode { get; set; }
|
||||
public TimeSpan TotalWorkingTime { get; set; }
|
||||
public List<RollCallCaseHistoryDetailRecord> Records { get; set; }
|
||||
public RollCallRecordStatus Status { get; set; }
|
||||
public long EmployeeId { get; set; }
|
||||
}
|
||||
|
||||
public class WorkshopCurrentDayRollCallSearchModel
|
||||
{
|
||||
public long EmployeeId { get; set; }
|
||||
public int PersonnelCode { get; set; }
|
||||
}
|
||||
|
||||
|
||||
public enum RollCallRecordStatus
|
||||
{
|
||||
Worked = 0,
|
||||
Absent = 1,
|
||||
Leaved = 2
|
||||
}
|
||||
|
||||
public class RollCallCaseHistoryDetailRecord
|
||||
{
|
||||
public TimeSpan EntryTimeDifference { get; set; }
|
||||
public string StartTime { get; set; }
|
||||
public string EndTime { get; set; }
|
||||
public TimeSpan ExitTimeDifference { get; set; }
|
||||
|
||||
}
|
||||
|
||||
public class RollCallCaseHistorySearchModel:PaginationRequest
|
||||
{
|
||||
public string StartDate { get; set; }
|
||||
public string EndDate { get; set; }
|
||||
public string OneDayDate { get; set; }
|
||||
public long? EmployeeId { get; set; }
|
||||
}
|
||||
|
||||
public class RollCallCaseHistoryTitleDto
|
||||
{
|
||||
public string Id { get; set; }
|
||||
public string Title { get; set; }
|
||||
}
|
||||
|
||||
public class ReCalculateRollCallValues
|
||||
{
|
||||
public long EmployeeId { get; set; }
|
||||
|
||||
@@ -8,7 +8,6 @@ public class CreateSalaryAidViewModel
|
||||
public long WorkshopId { get; set; }
|
||||
public string Amount { get; set; }
|
||||
public string SalaryDateTime { get; set; }
|
||||
public string CalculationDateTime { get; set; }
|
||||
public string NationalCode { get; set; }
|
||||
public int CalculationMonth { get; set; }
|
||||
public int CalculationYear { get; set; }
|
||||
|
||||
@@ -8,7 +8,7 @@ public class SalaryAidGroupedByDateViewModel
|
||||
public string YearFa { get; set; }
|
||||
public int Month { get; set; }
|
||||
public int Year { get; set; }
|
||||
public List<SalaryAidGroupedByDateViewModelItems> SalaryAidViewModels { get; set; }
|
||||
public List<SalaryAidGroupedByDateViewModelItems> Items { get; set; }
|
||||
public string TotalAmount { get; set; }
|
||||
|
||||
}
|
||||
|
||||
@@ -6,7 +6,7 @@ public class SalaryAidGroupedByEmployeeViewModel
|
||||
{
|
||||
public string EmployeeName { get; set; }
|
||||
public long EmployeeId { get; set; }
|
||||
public List<SalaryAidGroupedByEmployeeViewModelItems> SalaryAidViewModels { get; set; }
|
||||
public List<SalaryAidGroupedByEmployeeViewModelItems> Items { get; set; }
|
||||
public string TotalAmount { get; set; }
|
||||
|
||||
}
|
||||
|
||||
@@ -3,15 +3,15 @@ using System.Collections.Generic;
|
||||
using System.Linq;
|
||||
using System.Text;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Application;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.SalaryAid;
|
||||
public class SalaryAidSearchViewModel
|
||||
public class SalaryAidSearchViewModel:PaginationRequest
|
||||
{
|
||||
public string StartDate { get; set; }
|
||||
public string EndDate { get; set; }
|
||||
public long EmployeeId { get; set; }
|
||||
public long WorkshopId { get; set; }
|
||||
public int PageIndex { get; set; }
|
||||
public bool ShowAsGrouped { get; set; }
|
||||
|
||||
}
|
||||
@@ -1,5 +1,6 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Security.Cryptography;
|
||||
using _0_Framework.Application;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.SalaryAid;
|
||||
|
||||
@@ -7,7 +8,7 @@ public class SalaryAidsGroupedViewModel
|
||||
{
|
||||
public List<SalaryAidGroupedByEmployeeViewModel> GroupedByEmployee { get; set; }
|
||||
public List<SalaryAidGroupedByDateViewModel> GroupedByDate { get; set; }
|
||||
public List<SalaryAidViewModel> SalaryAidListViewModels { get; set; }
|
||||
public PagedResult<SalaryAidViewModel> List { get; set; }
|
||||
|
||||
}
|
||||
|
||||
|
||||
@@ -0,0 +1,24 @@
|
||||
namespace CompanyManagment.App.Contracts.Workshop.DTOs;
|
||||
|
||||
public class AdminWorkshopSelectListDto
|
||||
{
|
||||
/// <summary>
|
||||
/// آی دی کارگاه
|
||||
/// </summary>
|
||||
public long Id { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// نام کارگاه
|
||||
/// </summary>
|
||||
public string WorkshopFullName { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// کد بایگانی
|
||||
/// </summary>
|
||||
public string ArchiveCode { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// آیا بلاک شده است
|
||||
/// </summary>
|
||||
public bool IsBlock { get; set; }
|
||||
}
|
||||
@@ -1,10 +1,12 @@
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Threading.Tasks;
|
||||
using _0_Framework.Application;
|
||||
using _0_Framework.Application;
|
||||
using AccountManagement.Application.Contracts.Account;
|
||||
using CompanyManagment.App.Contracts.Checkout.Dto;
|
||||
using CompanyManagment.App.Contracts.Employee.DTO;
|
||||
using CompanyManagment.App.Contracts.Workshop.DTOs;
|
||||
using Microsoft.AspNetCore.Mvc;
|
||||
using System.Collections.Generic;
|
||||
using System.Runtime.InteropServices;
|
||||
using System.Threading.Tasks;
|
||||
|
||||
namespace CompanyManagment.App.Contracts.Workshop;
|
||||
|
||||
@@ -92,6 +94,19 @@ public interface IWorkshopApplication
|
||||
#endregion
|
||||
|
||||
Task<ActionResult<OperationResult>> CreateWorkshopWorkflowRegistration(CreateWorkshopWorkflowRegistration command);
|
||||
|
||||
|
||||
#region ForApi
|
||||
|
||||
|
||||
/// <summary>
|
||||
/// دریافت لیست کارگاه های ادمین برای سلکت تو
|
||||
/// Api
|
||||
/// </summary>
|
||||
/// <returns></returns>
|
||||
Task<List<AdminWorkshopSelectListDto>> GetAdminWorkshopSelectList();
|
||||
|
||||
#endregion
|
||||
}
|
||||
|
||||
public class CreateWorkshopWorkflowRegistration
|
||||
|
||||
@@ -94,4 +94,9 @@ public class BaseYearDataList
|
||||
/// آیا تاریخ پایان کار دارد
|
||||
/// </summary>
|
||||
public bool HasLeftWork { get; set; }
|
||||
|
||||
/// <summary>
|
||||
/// شماره گروه
|
||||
/// </summary>
|
||||
public string GroupNo { get; set; }
|
||||
}
|
||||
@@ -104,5 +104,10 @@ namespace CompanyManagment.Application
|
||||
Id = x.Id
|
||||
}).ToList();
|
||||
}
|
||||
|
||||
public List<BankSelectList> GetBanksForSelectList()
|
||||
{
|
||||
return _bankRepository.GetBanksForSelectList();
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user