Compare commits

...

588 Commits

Author SHA1 Message Date
7e20807325 corrected the distinct by error 2025-10-11 15:57:53 +05:30
186486d934 Added the new API to get organizations for dropdown 2025-10-11 15:36:52 +05:30
d07f0311ae Optmized the work status master APIs 2025-10-11 13:52:20 +05:30
2f6031e62c revert e02636b6b66287a22fcfb34c150aece1b136cc68
revert Optmized the work status master APIs
2025-10-11 08:19:59 +00:00
e02636b6b6 Optmized the work status master APIs 2025-10-11 13:48:36 +05:30
bad784e147 Optimized the contact related msater APIs 2025-10-11 12:59:31 +05:30
886d0bb3b1 Clearing the employee profile cache when selecting the tenant 2025-10-10 18:32:01 +05:30
74dd9eeb8d organization Tenant Mapping is already existed then return error message 2025-10-10 17:53:23 +05:30
1939a63d9a Assigning the appilcation role to root employee of the any organization 2025-10-10 17:05:43 +05:30
c07db9f94d removed employee project cache when adding the subscription 2025-10-10 15:59:42 +05:30
53da15416a Removing all employees profile from cache for certain tenant 2025-10-10 15:46:56 +05:30
a809bdd469 Merge pull request 'Sloved issues of permissions not been assigned when updating the subscription' (#144) from Ashutosh_Bug#1461 into main
Reviewed-on: #144
2025-10-10 08:49:19 +00:00
bb2c098cb9 Sloved issues of permissions not been assigned when updating the subscription 2025-10-10 14:17:32 +05:30
bd3b70f4ea Merge pull request 'Added the RequestedAt and RequestedBy in attendance' (#143) from Ashutosh_Enhancement#1452 into main
Reviewed-on: #143
2025-10-10 07:06:25 +00:00
000cef3bb7 enhanced the get team based on project 2025-10-10 12:36:11 +05:30
522deae8f7 Added the RequestedAt and RequestedBy in attendance 2025-10-10 12:08:53 +05:30
9a8aa4f5ce Changed the index of reject button in expense controller 2025-10-09 16:52:34 +05:30
af92ab977b Added the get filter API 2025-10-09 16:47:06 +05:30
c06dc8ebe7 Selecting the default services in project allocation 2025-10-09 16:00:26 +05:30
8609db64d2 Made the serviceId is nullable in project allocation 2025-10-09 15:23:37 +05:30
e831f50505 Removed the logic to save the FCM from verify FCM API 2025-10-08 11:33:34 +05:30
ba88fbced6 Removed the FCM token from MPIN verify API 2025-10-08 11:27:30 +05:30
13d2e1cd7d Corrected the mistake of showing all images except selected project 2025-10-07 12:34:48 +05:30
26acfec408 Added the todays completed tasks 2025-10-06 18:33:37 +05:30
3bd38f3c68 Changed the logic in API to get Attendance logs by employee 2025-10-06 16:10:58 +05:30
2e29dc9946 Chnaged the check for persentages 2025-10-06 14:42:29 +05:30
db752a4678 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api 2025-10-06 13:16:31 +05:30
245182eb07 Added the attendance persentage and task persentage 2025-10-06 13:15:48 +05:30
9daf76c6eb return all employees when allEmployee=true 2025-10-05 00:24:26 +05:30
c33afa58c3 Solved spelling mistake 2025-10-04 17:51:58 +05:30
4ceb5c3cb2 Changed the authontication logic for delete contact notes 2025-10-04 17:50:18 +05:30
d0dabf776b Added the condition to not get services object in project allocation 2025-10-04 17:26:08 +05:30
04223578ad Added the ExpenseUId in expenses tables 2025-10-04 16:56:04 +05:30
f94a7de4ab change email in complete system 2025-10-01 17:46:11 +05:30
eb3a65428e Modyfied the attendance report API 2025-10-01 15:09:51 +05:30
8ddb414e91 Added the organization type in assignd organization list 2025-09-30 18:08:07 +05:30
d8329f1fab Removed the tenant check from master services 2025-09-30 17:10:30 +05:30
d0912cca56 Merge pull request 'Organization_Management' (#142) from Organization_Management into main
Reviewed-on: #142
2025-09-30 09:05:14 +00:00
d957c692f1 Added new API to get monthly attendance report 2025-09-30 14:34:29 +05:30
40ca680f45 Added the Organization sub-menu in project menu in MenuStaticMaster 2025-09-30 12:42:29 +05:30
8dee7b0fa2 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api into Organization_Management 2025-09-30 12:36:39 +05:30
1e1fe6692d Added the permission check in note create API 2025-09-30 12:34:58 +05:30
0df13975a7 Added logic to add hard coded menu if menu from mongodb connot be found 2025-09-30 12:30:04 +05:30
8fb5aa632d Removed the cache get logic from expenses get APIs 2025-09-30 12:26:10 +05:30
7e4d4b0f5b Chnaged the log to check if sprid in used wile searching 2025-09-30 11:40:43 +05:30
64bde99ab5 Corrected the check to add self organization 2025-09-30 10:18:15 +05:30
90851a3349 Added HasAdmin check when adding note for contact 2025-09-29 17:22:45 +05:30
2c0cd87227 Sloved the issue in get task list where user is getting the list of all tasks accept the task of selected project 2025-09-29 16:50:38 +05:30
c3670eaab9 Added Primary organization of tenant in get organization list 2025-09-29 14:48:42 +05:30
1cd8203d27 Added the PMC, Promotor and Primary organization of the tenant in list of assigned organization to project 2025-09-29 14:33:57 +05:30
5df66b79ca Added check to check the Designation in create contact API 2025-09-29 11:15:14 +05:30
31da8a4402 Added the AsNoTracking in GetCurrentEmployeeAsync and get permission Ids helper functions 2025-09-29 10:18:44 +05:30
27a2610388 Added the HasApplicationAccess in Employee VM 2025-09-29 10:08:14 +05:30
cd175c4fdf Added the services in organization details API 2025-09-29 09:42:21 +05:30
d6145ee0ba Added the forgin key for approver in attends table 2025-09-27 14:50:51 +05:30
04086ed7e0 Creating the application user in manage employee API through mobile 2025-09-27 14:18:42 +05:30
a9b4b79ee4 Added the service ID and Organization ID in get project allocation API 2025-09-27 10:33:42 +05:30
70092e5601 Added the created by and updated by in organization update API 2025-09-26 16:12:46 +05:30
33cd7113a7 Merge pull request 'Add new API to get organization details' (#141) from Ashutosh_Task_#1362 into Organization_Management
Reviewed-on: #141
2025-09-26 10:26:46 +00:00
1d4d61ef2c Add new API to get organization details 2025-09-26 15:53:38 +05:30
f93686c1df Removed the Activity from master menu 2025-09-26 14:59:24 +05:30
f2213db807 Added organizationId filter to the employee list for organization assiged to the project 2025-09-26 11:43:44 +05:30
eddbdde355 Merge pull request 'Added new API to get list of employees assigned to project and filtered by services and organizations' (#140) from Ashutosh_Task#1360 into Organization_Management
Reviewed-on: #140
2025-09-26 06:02:25 +00:00
0048281616 Added new API to get list of employees assigned to project and filtered by services and organizations 2025-09-26 11:30:28 +05:30
f248557704 Optimized the Organization APIs 2025-09-25 17:17:21 +05:30
18d590ccbe Added the promotor and PMC in project VM 2025-09-25 16:56:21 +05:30
4c6070fee5 Merge pull request 'Added the service Id in Query parameter to get infra details API' (#139) from Ashutosh_Enhancement_#1355 into Organization_Management
Reviewed-on: #139
2025-09-25 10:16:20 +00:00
0fb5c3935d Added the service Id in Query parameter to get infra details API 2025-09-25 15:45:47 +05:30
2f052174aa Changed the VM when creating and updating project 2025-09-25 12:37:57 +05:30
2258771229 Merge pull request 'Enhanced the Create and update project API' (#138) from Ashutosh_Enhancement#1347 into Organization_Management
Reviewed-on: #138
2025-09-25 06:50:39 +00:00
e4e49595e6 Enhanced the Create and update project API 2025-09-25 12:18:44 +05:30
44d2827dcc Added the global services ids list parameter in create tenant DTO 2025-09-25 09:54:08 +05:30
fef3db297c Mapping the tenant with organization when creating the organization 2025-09-24 19:43:45 +05:30
0d4d4c3754 Seprated the service ID in task list from filter 2025-09-24 19:35:16 +05:30
162d735d16 Added new API to get employee list 2025-09-24 19:20:21 +05:30
38e1f7a0fc Added no tracking in upate bucket API 2025-09-24 17:47:08 +05:30
fe1dfd7293 Getting the employee list of user's organization only 2025-09-24 17:23:32 +05:30
42da1f12cf Added the assigned by in organization mapping 2025-09-24 17:20:09 +05:30
c5da400e6b Enhanced the manage employe API 2025-09-24 13:06:51 +05:30
a405cfec13 If team meamber not found send empty 2025-09-23 13:24:19 +05:30
bc3e927777 Solved the typo 2025-09-23 13:17:58 +05:30
c304b615f7 Fixed the spelling mistake 2025-09-23 13:15:11 +05:30
8d64e9702d Added the get filter API in image gallery 2025-09-23 13:05:23 +05:30
98acbb66d6 Merge pull request 'Added the new parameter of service ids in image gallery filter' (#137) from Ashutosh_Enhancement_#1297 into Organization_Management
Reviewed-on: #137
2025-09-23 06:26:27 +00:00
81d1137939 Added the new parameter of service ids in image gallery filter 2025-09-23 11:55:29 +05:30
0c6f5e0df0 Merge pull request 'Added the filter and pagenation in get task list API' (#136) from Ashutosh_Enhancement_#1293 into Organization_Management
Reviewed-on: #136
2025-09-23 06:15:47 +00:00
f45bc29a44 Added the filter and pagenation in get task list API 2025-09-23 11:34:14 +05:30
ef84ba34da Addedd the tenant ID in employee profile cache 2025-09-21 18:10:25 +05:30
bd421d45aa Added the Jobrole in attendance 2025-09-21 16:37:15 +05:30
777a72c71f Filtered the employees in attendance by organization 2025-09-21 16:11:23 +05:30
264c9466c9 Chnaged the logic check if tenant and organization have any relation 2025-09-21 15:37:55 +05:30
a1f6552347 Added OrganizationID in JWT token 2025-09-21 11:44:38 +05:30
06c5457981 Added the new API to get detailed list of services and enhanced the get work-items list to filter by service 2025-09-21 11:36:09 +05:30
0ba4ccf45c Added the logic to filter by service Id 2025-09-20 19:25:33 +05:30
84e2f840b4 distinct the organization in Get Assigned Organizations To Project API 2025-09-20 18:37:08 +05:30
34b89c4718 Solved the rebase issues 2025-09-20 18:06:37 +05:30
d0745e8688 Merge pull request 'Firebase_Implementation' (#135) from Firebase_Implementation into main
Reviewed-on: #135
2025-09-20 12:11:54 +00:00
7d85cb5f4c Added the serviceId in project allocation 2025-09-20 17:05:30 +05:30
9b59a4d6b6 Added the organization filter in get project allocation API 2025-09-20 14:58:32 +05:30
7e0322c859 Chnage the keyword modefied to modified 2025-09-20 12:44:39 +05:30
05bfa48115 added the TenantStatus and Industry in get tenant list API 2025-09-20 12:30:37 +05:30
091d73958d Added the comma seprated project IDs to notification data 2025-09-20 12:25:48 +05:30
f45ada2be2 Changed the login endpoints 2025-09-20 12:06:27 +05:30
bcc416f47e Changed the Login Flow for auth controller and added the get tenant list and select tenant 2025-09-20 11:40:04 +05:30
ee1cb73fe5 Added the commit statement in assign organization to tenant API 2025-09-20 11:33:01 +05:30
eba1a70037 Added the data notification in delete employee API 2025-09-20 11:12:32 +05:30
2f03de97d6 Added the total pages, page number, tota count in response 2025-09-19 21:13:53 +05:30
a1ab143df5 Fixed the error of checking the updated date to uploaded date 2025-09-19 18:02:29 +05:30
64e6255458 Solved the rebase issuees 2025-09-19 17:51:27 +05:30
aa596b736d If service not exist in databse the not added in mapping 2025-09-19 16:56:31 +05:30
3884c74d9b First saving the project sevice mapping then the project org mapping 2025-09-19 16:46:41 +05:30
7f2b9f0ceb Merge pull request 'Added the API to get the organization list assigned to the project' (#134) from Ashutosh_Task#1246 into Organization_Management
Reviewed-on: #134
2025-09-19 10:36:49 +00:00
f633e11e97 Added the API to get the organization list assigned to the project 2025-09-19 16:04:32 +05:30
5fab8371ac Merge pull request 'Added the API to assign the organization to tenant' (#133) from Ashutosh_Task#1239 into Organization_Management
Reviewed-on: #133
2025-09-19 10:04:08 +00:00
2e0ea562fe Added the API to assign the organization to tenant 2025-09-19 15:31:07 +05:30
8c97c78408 Added the API to get organization type list 2025-09-19 14:53:55 +05:30
86102ef70d Merge pull request 'Added the API to get list of services according to the project and logged in employee' (#132) from Ashutosh_Task#1225 into Organization_Management
Reviewed-on: #132
2025-09-19 08:53:59 +00:00
009ac36e38 Changed the response message for get services API 2025-09-19 14:22:14 +05:30
d38bc4752a Added the API to get list of services according to the project and logged in employee 2025-09-19 14:15:41 +05:30
77db9a6bd9 Added the services in master menu list 2025-09-19 11:42:23 +05:30
d452faf6a9 Solved the misssig key word 2025-09-18 18:11:57 +05:30
2ce294904b Checking the project levelmpermission in project controller 2025-09-18 18:04:22 +05:30
1e66dd2017 Added the deassiged service from project API 2025-09-18 17:23:50 +05:30
aed6949187 Added IsActive In ProjectServiceMapping Table 2025-09-18 16:54:37 +05:30
b069e9f07d Changed the check of the add note API 2025-09-18 16:17:48 +05:30
d41c49af7b Removed the Document ID Uniqueness 2025-09-18 15:55:45 +05:30
a10b24523e Added the checks to check the Designation and Description in contact 2025-09-18 15:42:49 +05:30
efd8667774 Added the VM in assign organization to project 2025-09-18 15:18:33 +05:30
ac672d0cc2 Added the document ID in document controller firebase data notification 2025-09-18 15:04:41 +05:30
de883103d5 Added the assign organization to project API 2025-09-18 13:10:08 +05:30
bb31e33983 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api into Organization_Management 2025-09-18 12:02:44 +05:30
51d86d7bfc Merge pull request 'Ashutosh_Subscription_Plan' (#131) from Ashutosh_Subscription_Plan into main
Reviewed-on: #131
2025-09-18 06:32:18 +00:00
2039d84918 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api into Ashutosh_Subscription_Plan 2025-09-18 12:01:57 +05:30
0ecc07777f Resolved the multi-threading issue 2025-09-18 12:01:08 +05:30
0dd5633f2e Resolved the multi-threading issue 2025-09-18 11:53:05 +05:30
f8182494d2 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api into Organization_Management 2025-09-18 11:38:31 +05:30
dbd551e08c Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api 2025-09-18 11:34:03 +05:30
d9e0c2ee57 Resloved the issue #1125 2025-09-18 11:33:59 +05:30
db0d464ab5 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api into Organization_Management 2025-09-18 10:26:29 +05:30
55cae17ed1 Added the API og list organization 2025-09-18 10:25:59 +05:30
846b3ed6e3 Merge pull request 'Ashutosh_Get_All_Permission' (#130) from Ashutosh_Get_All_Permission into main
Reviewed-on: #130
2025-09-18 04:52:11 +00:00
3f8024421a Sending the data message to all employees asigned to the project 2025-09-18 10:07:05 +05:30
9d71a71a53 Sending the attendance data notification to all employees from the project 2025-09-18 09:56:39 +05:30
4a25158cc9 Added the Promoter and PMC in project 2025-09-17 18:09:58 +05:30
20b12cfcd4 Added the contactId in firebase for directory notification 2025-09-17 17:19:55 +05:30
0eb740fa25 Added the organization forgin key in tenant table and removed the tenantId from application user 2025-09-17 15:01:40 +05:30
5158153ee6 Added the forign key of organization in eployee table 2025-09-17 14:40:04 +05:30
4884bf5de0 Checking the manage infra permission when getting the infra 2025-09-17 13:17:38 +05:30
368fd37115 Removed the employee management from project-level permissions 2025-09-17 12:47:09 +05:30
68cd5acc9c Added the HasApplicationAccess parameter in employees table 2025-09-17 12:27:13 +05:30
30623d6bbc Added the create organization API 2025-09-17 12:01:22 +05:30
1e8c967d7a Added migration for Organization related permissions 2025-09-17 11:40:03 +05:30
cda8005b1b Added the Organization related permissions 2025-09-17 11:35:53 +05:30
8d97b2a687 Added the create global service API 2025-09-17 11:15:06 +05:30
061f287e8c Added the API to get global services 2025-09-17 11:01:34 +05:30
84baa3a147 Added the subscription list API in Market Controller 2025-09-16 18:17:43 +05:30
fae6d7bbe9 Added the CRUD operation for services, activity group, activity 2025-09-16 15:29:32 +05:30
0ef9d66cf1 Adding the models related to organizations 2025-09-16 15:27:44 +05:30
d9a1832e2e updated the get project-level permissions 2025-09-16 15:05:32 +05:30
122e7074b8 Added the GetAllPermissionFroProject API 2025-09-16 13:34:22 +05:30
cdc2afb688 Added the update bucket query 2025-09-16 11:36:38 +05:30
892facef40 Added the projectID and employeeID in document modification notification 2025-09-15 18:04:44 +05:30
0b150fed9a Checking the correct permission updating the notes 2025-09-15 17:04:18 +05:30
b17d1d30e5 taken the requried service from thread 2025-09-15 17:01:29 +05:30
a0789f7f8e Corrected the spell mistake in firebase keywords 2025-09-15 16:31:43 +05:30
7d30831408 Removed the requried from base64 when getting any attachment 2025-09-15 16:24:47 +05:30
87ebee8005 Added the firebase notification in document controller 2025-09-12 18:02:58 +05:30
a88446ceb5 Added the firebase notification in directory controller 2025-09-12 16:31:39 +05:30
5717bb6dac Added the joining date parameter when creating or update employee using the mobiles 2025-09-12 12:46:07 +05:30
cf35b8c773 Added the IsAttachmentRequried parameter to ExpensesTypeMaster table 2025-09-12 12:38:26 +05:30
5105da7b54 Resloved the rebase 2025-09-12 09:46:39 +05:30
e1b045f852 Merge pull request 'Document_Manager' (#129) from Document_Manager into main
Reviewed-on: #129
2025-09-11 04:12:00 +00:00
f75c31b3ce Added the check for checking uniquness of document ID 2025-09-10 11:52:13 +05:30
01f214a60b Added the TotalRecords parameter to get contact list API response 2025-09-10 10:27:24 +05:30
935f5345b9 Solved the rebase issues 2025-09-09 16:38:24 +05:30
5263e89df6 Merge pull request 'Directory_Refactor' (#128) from Directory_Refactor into Document_Manager
Reviewed-on: #128
2025-09-09 11:03:45 +00:00
7324537a90 Solved the rebase issues 2025-09-09 16:33:23 +05:30
caeac04d0d Added the logic to bypass the seat check condition 2025-09-09 15:29:26 +05:30
33ebee08db Merge pull request 'Mobile_Logger_Feature' (#127) from Mobile_Logger_Feature into Directory_Refactor
Reviewed-on: #127
2025-09-09 05:19:45 +00:00
d51d7da4f8 Merge branch 'Directory_Refactor' of https://git.marcoaiot.com/admin/marco.pms.api into Mobile_Logger_Feature 2025-09-09 10:49:13 +05:30
de08ceeb0d reduce the otp exprie time to 5 mins 2025-09-08 15:12:26 +05:30
ecabf52f2f splited the logic to get employee by projecr id 2025-09-08 15:09:25 +05:30
aa2a370467 getting the employee list filtered by tenant 2025-09-08 15:07:30 +05:30
73318060ec Added the distinct in get employee list 2025-09-08 14:58:16 +05:30
365439b2de only send employee with unique IDs when getting list 2025-09-08 14:49:14 +05:30
06db1adc52 Added the debug logs in log controller 2025-09-08 11:47:53 +05:30
4f77431541 Changed the folder name 2025-09-08 10:32:32 +05:30
1fd0837640 Solved the rebase error 2025-09-08 10:26:05 +05:30
672046d02e Added the contact note filter in get all contact notes API 2025-09-05 17:48:25 +05:30
48562235f5 Added the get filter APIs for contacts and contact notes 2025-09-04 16:57:37 +05:30
d507b9ede2 Intregating the project-level permissions in document controller 2025-09-04 14:52:25 +05:30
194764c9d6 Solving the rebase confilt 2025-09-04 12:42:44 +05:30
28caee40e3 Adding the overwriting the project-level permissions to tenant-level permission 2025-09-04 12:39:25 +05:30
4a13386546 Optimized the get employee list for project-level permission 2025-09-04 12:27:48 +05:30
b336bd3481 Added the API to get list of employee whom project-level is assigned 2025-09-04 12:19:27 +05:30
3a3e742296 Added the API to get modules for project level configuration 2025-09-03 18:08:43 +05:30
35ea41d1ce Added the file meta-data of file in details and get version API 2025-09-03 18:01:07 +05:30
0916abe464 Added the Manage project-level permissions API 2025-09-03 16:55:20 +05:30
961cc018cf Chnage response of get tag API 2025-09-03 16:05:35 +05:30
2e55d1e3c4 Added the get document tags API 2025-09-03 15:31:26 +05:30
c27b2a2ff1 Added the check to check the system defined types 2025-09-03 14:50:03 +05:30
cd489f45ae added the document categeory vm in document type 2025-09-03 13:15:15 +05:30
4c2b33472b Added the new condition while checking the document category or type by name 2025-09-03 12:51:07 +05:30
9b3324c27c Added the documents in mobile side menu 2025-09-03 11:46:14 +05:30
efc577f9a2 Corrected the equation to gt total number of pages 2025-09-03 11:06:22 +05:30
391d79af3e Created the structure for project-level-permissions APIs 2025-09-02 16:05:08 +05:30
830a9526dd Added the total page and count in list APis for documnets 2025-09-02 15:29:48 +05:30
067da422c2 Added the pagenantion to get version list API 2025-09-02 14:46:51 +05:30
c199e3e241 Added the end-point for maste APIs of document modules 2025-09-02 14:36:42 +05:30
1d50d4987a added the crud opration for document modules 2025-09-02 14:19:03 +05:30
de4d62ba78 added tags in documents details API 2025-09-01 20:56:25 +05:30
b6243f8100 Added the document category in details 2025-09-01 12:09:34 +05:30
727df6e828 Added the download permission to get persigned Url API 2025-08-30 10:27:42 +05:30
e34840fbb8 Added the entity Id in get list API 2025-08-29 18:27:35 +05:30
dd48e5071c Merge pull request 'Added the API to activate and deactivate the document' (#126) from Ashutosh_Task#1036 into Document_Manager
Reviewed-on: #126
2025-08-29 12:54:28 +00:00
242c345ce1 Added the API to activate and deactivate the document 2025-08-29 18:23:55 +05:30
2ca9dead1f Merge pull request 'Added the API to get document attachment details' (#125) from Ashutosh_Task#1029 into Document_Manager
Reviewed-on: #125
2025-08-29 11:48:16 +00:00
ec4756d888 Added the API to get document attachment details 2025-08-29 17:17:38 +05:30
03959f9b38 Merge pull request 'Added the API to get Pre-Signed Url by attachment ID' (#124) from Ashutosh_Task#1027 into Document_Manager
Reviewed-on: #124
2025-08-29 10:42:43 +00:00
ac69bcb339 Added the API to get Pre-Signed Url by attachment ID 2025-08-29 16:11:58 +05:30
a24db1716f Merge pull request 'Added the API to get old version list' (#123) from Ashutosh_Task#1026 into Document_Manager
Reviewed-on: #123
2025-08-29 10:14:48 +00:00
ec85fd8eb3 Added the API to get old version list 2025-08-29 15:44:15 +05:30
61f5b14fcc Merge pull request 'Added the API to verify or reject the document' (#122) from Ashutosh_Task#1025 into Document_Manager
Reviewed-on: #122
2025-08-29 07:41:07 +00:00
87cf37ca03 Added the API to verify or reject the document 2025-08-29 13:10:31 +05:30
0cdbd574db changing the documentDataId if attachment is not verified 2025-08-29 12:42:27 +05:30
72765fd491 Merge pull request 'Added the get filter for documents' (#121) from Ashutosh_Task#1013 into Document_Manager
Reviewed-on: #121
2025-08-29 06:56:16 +00:00
7e98429e10 Added the get filter for documents 2025-08-29 12:25:43 +05:30
759fa9324b Merge pull request 'Added the update document API' (#120) from Ashutosh_Task#1010 into Document_Manager
Reviewed-on: #120
2025-08-29 05:59:39 +00:00
d2af05b6a0 Added the update document API 2025-08-29 11:29:04 +05:30
6d207e8f7d Merge pull request 'Added the list document API' (#119) from Ashutosh_Task#1011 into Document_Manager
Reviewed-on: #119
2025-08-28 11:50:47 +00:00
cf2b07ee77 Added the list document API 2025-08-28 17:20:09 +05:30
08232ee34f Added uploaded by in response of upload document API 2025-08-28 15:13:44 +05:30
d57395efcd Merge pull request 'Added the upload document API' (#118) from Ashutosh_Task#1009 into Document_Manager
Reviewed-on: #118
2025-08-28 09:31:22 +00:00
75ae12a81e Added the upload document API 2025-08-28 15:00:16 +05:30
4c36cf266f Added Document Category and Document Type in master menu list 2025-08-28 14:31:55 +05:30
39ebc69da7 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api into Document_Manager 2025-08-28 12:53:46 +05:30
8ceac5aa91 Merge pull request 'Added the get list of Document type API' (#117) from Ashutosh_Task#1019 into Document_Manager
Reviewed-on: #117
2025-08-28 07:19:30 +00:00
4161506def Added the get list of Document type API 2025-08-28 12:48:13 +05:30
a89a2f076f Merge pull request 'Added the Get Document Category list API' (#116) from Ashutosh_Task#1018 into Document_Manager
Reviewed-on: #116
2025-08-28 06:47:43 +00:00
eac77e23d4 Added the Get Document Category list API 2025-08-28 12:17:05 +05:30
0ef9f0e62d Change the endpoint of request Demo API 2025-08-28 11:50:06 +05:30
6aaa38ba52 Fixed the spelling mistake 2025-08-28 11:41:32 +05:30
535a9924cc Merge pull request 'Added the tables for document management' (#115) from Ashutosh_Task#980 into Document_Manager
Reviewed-on: #115
2025-08-28 05:55:42 +00:00
3dfdb2ab5d Added the tables for document management 2025-08-28 11:22:31 +05:30
d3eebb2086 Merge pull request 'Tenant_Management' (#114) from Tenant_Management into main
Reviewed-on: #114
2025-08-28 05:13:09 +00:00
03f7a5ba14 Added new get menu list for mobile 2025-08-26 15:17:00 +05:30
6253ba7de3 Chnaged the logic of adding and removing the permissions 2025-08-25 15:21:02 +05:30
fdcbd9af5f Added the logic to only remove the employee permission if every module in subscription is not enabled 2025-08-25 12:57:15 +05:30
9765ce1b8f Added the check to check the max user in add subscription as well 2025-08-25 11:02:38 +05:30
5d8a5909bc Added the check to check the ma user count 2025-08-25 10:40:09 +05:30
2c841b3bd0 Resovled the mearge confilects 2025-08-25 10:22:51 +05:30
66716dda0f Sending the master list by name order 2025-08-25 10:19:39 +05:30
76ac9de014 Set logic the get all master table for super tenant 2025-08-24 14:12:55 +05:30
3864788d43 Changed the logic for super tenant 2025-08-24 13:57:56 +05:30
300f570907 Optimized the get master table list 2025-08-24 13:53:09 +05:30
e7705a5051 Added API to get Master Tables list dynamically 2025-08-24 13:38:39 +05:30
f85f1adb92 Added current plan feature details in tenant profile 2025-08-23 18:28:24 +05:30
9e11ca0008 added coments in appmenu controller 2025-08-23 18:23:26 +05:30
ff288448b0 Optimized the the Appmenu controller 2025-08-23 17:53:53 +05:30
4ebd49d0c8 Merge pull request 'Issues_Aug_1W' (#113) from Issues_Aug_1W into main
Reviewed-on: #113
2025-08-23 11:08:42 +00:00
7cfebd764c sloving the merage conflicts 2025-08-23 13:23:00 +05:30
5d2687f1e7 Merge pull request 'AppMenu : Implement Sidebar Menu with Permission-based Access Control' (#112) from AppMenu into Tenant_Management
Reviewed-on: #112
2025-08-23 07:49:59 +00:00
f97a59994e Sloving the Mearge conflict 2025-08-23 13:19:39 +05:30
68027ded77 If user has manage tenant permission then only showing the tenants he/she created 2025-08-23 13:07:20 +05:30
ea1e172c65 resolved conflicts 2025-08-23 12:45:20 +05:30
bd4f1d5e69 Added the IsRoot user Field in employee profile VM 2025-08-23 11:42:11 +05:30
da787cfe43 Removed the FCM token from login DTO and logic of adding FCM token to database from mobile login API 2025-08-23 11:17:28 +05:30
ac23a8724d Added page size the search emplyee API 2025-08-23 09:53:32 +05:30
540c3e75fd Changed the logic of validating 2025-08-22 17:27:53 +05:30
6f7fad1ae4 Added a new validation to check if the tenant is it's own tenant 2025-08-22 14:50:59 +05:30
88a7a90bfe Getting the permission through different scope 2025-08-22 12:55:07 +05:30
7eabd4fa73 Added the tenant ID in emplyee profile 2025-08-22 10:17:54 +05:30
452f4a7e5a Removed the unnesseary notification 2025-08-21 11:23:17 +05:30
0de2e3f75d Corrected the typo in method name 2025-08-21 09:50:10 +05:30
ca31c011e4 Addd code to remove duplicate FCM tokens 2025-08-20 17:11:16 +05:30
5ac1c2b798 Added the expiry date in FCM mapping table 2025-08-20 17:00:17 +05:30
cf51d4f37c Added the notification for expenses controller 2025-08-20 16:07:00 +05:30
445d02662a Merge pull request 'Restrict the user creation if the maximum user limit is reached' (#111) from Ashutosh_Bug#935 into Tenant_Management
Reviewed-on: #111
2025-08-20 06:50:20 +00:00
307c7c96c2 Optimized the helper function 2025-08-20 12:19:16 +05:30
bc935282a5 Restrict the user creation if the maximum user limit is reached 2025-08-20 12:12:12 +05:30
2b6e8b7c8a Added proper keyword for firebase notification 2025-08-20 11:19:16 +05:30
4af6891821 Optimized the Directory notes API 2025-08-20 10:55:16 +05:30
455cbc5cd4 Added the firebase to project created and update API 2025-08-19 16:04:56 +05:30
f6ce8dd4f6 Changed the logic to check if logout done by mobile APP 2025-08-19 15:39:34 +05:30
5538c3ae25 Removing the FCM Token if employee is logout 2025-08-19 15:25:20 +05:30
38450dce70 Firebase notification is Implemented in project infra 2025-08-19 12:07:44 +05:30
889b5a84b6 change the employee fetching logic in employe suspend employee 2025-08-19 11:46:14 +05:30
b4cb81772e Added the function to re activeate the employee 2025-08-19 11:31:14 +05:30
e8c8c92120 handle error 2025-08-18 23:31:18 +05:30
3ba954ac82 correct the order of haspermission method parameters 2025-08-18 18:22:50 +05:30
23473b33f0 Added firebase notification for task allocation 2025-08-18 17:14:27 +05:30
90a2b23c1a Added the condition to check if it is the root tenant 2025-08-18 12:41:00 +05:30
c84ea987c5 Added the pagenantion in employee search API 2025-08-18 12:21:01 +05:30
cf161e4a04 Only sending the feature that tenant has permission of 2025-08-18 11:46:42 +05:30
374e023cde added perfectly permssion checking coondition and fixed previous mistake 2025-08-18 10:29:53 +05:30
732cfbef3e added permission for fetch menu according feature permission 2025-08-18 09:37:16 +05:30
ff5f673475 initially added fetch menu api 2025-08-17 12:55:53 +05:30
288c0fe492 Adding the days to end date while adding or updating subscription rather than months 2025-08-16 17:26:42 +05:30
d240a79e49 Assigning the root employee to default when creating the tenant 2025-08-16 17:15:01 +05:30
d8870b8140 Added default entries for the tenant in master tables depending upon its plan 2025-08-16 16:59:36 +05:30
7b1238e7d6 Sending the notification to team member when task is assigned 2025-08-16 11:51:30 +05:30
4655aa948b Chnaged the firebase service-account json 2025-08-14 15:05:32 +05:30
f4cb08f472 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api into Firebase_Implementation 2025-08-14 14:45:13 +05:30
990b928a63 Added proper logs in firebase service 2025-08-14 11:46:40 +05:30
3d6926864d Added the current plan details in tenant details API 2025-08-14 11:06:55 +05:30
9a9876b7ca Chnaged the login notification body and title 2025-08-13 16:44:54 +05:30
884efdce61 Sending the data when marking the Attendance 2025-08-13 16:33:19 +05:30
ba5698f4b2 Fixed the typo 2025-08-13 16:04:30 +05:30
673102cb50 Changed the notification body and titile 2025-08-13 15:40:23 +05:30
2699439996 Made FCM token nullable for loginDTO 2025-08-13 15:21:35 +05:30
813bc70bda Added firebase in attendance record API 2025-08-13 15:15:14 +05:30
58b817be99 Added the firebase services 2025-08-13 11:52:44 +05:30
d74e64d1dc Merge pull request 'profile_page' (#110) from profile_page into main
Reviewed-on: #110
This branched is tested and deployed on  production
2025-08-13 05:44:45 +00:00
d113fc3c3d Sending the project degination in place of employee degination in allocation history API 2025-08-13 11:07:36 +05:30
47a3d6035c Changed the Parameter DeviceToken to FcmToken 2025-08-13 10:41:35 +05:30
7f4f266dd0 Changed the notification body 2025-08-13 10:35:24 +05:30
5cf6885a93 Added the FCMTokenMapping model 2025-08-13 10:27:13 +05:30
48fb5fd449 Sending the notification after sending the response 2025-08-13 10:21:07 +05:30
f19f759752 Added suspend tenant API 2025-08-12 14:49:23 +05:30
d9a454ca28 Added the update logs in mongoDB while updating tenant 2025-08-12 14:23:53 +05:30
b44fd6d49f Created the structure for set device token API 2025-08-12 14:09:16 +05:30
56977e3702 Added firebase nuget package 2025-08-12 12:00:59 +05:30
6f1a9cd892 solved the conflicts 2025-08-12 11:57:37 +05:30
44614f475b solve confilectes 2025-08-12 11:52:53 +05:30
7335ad23ce added the logs 2025-08-12 11:31:04 +05:30
c5385c0b06 Added logs in login-mobile 2025-08-12 10:54:40 +05:30
6017d87793 Taking token from model 2025-08-12 10:19:31 +05:30
f502adb6c6 added notofication in attendance 2025-08-12 10:15:24 +05:30
1b47fbdcf0 Testing the firebase notification added in login API 2025-08-12 10:03:28 +05:30
37c91d4432 resolving the rebase errors 2025-08-11 16:54:47 +05:30
0ba2874041 solving rebase 2025-08-11 16:52:19 +05:30
4bd3e59427 Sloving the rebase 2025-08-11 16:50:55 +05:30
4a78bb8074 Added updatelogs in update and delete bucket API 2025-08-11 16:37:41 +05:30
e7302ecd6c Added updatelogs in delete contact API 2025-08-11 14:40:49 +05:30
6688b76145 Added updatelogs in update contact API 2025-08-11 14:29:07 +05:30
21e1a7322c Saving the tenant subscription modification logs in mongo DB 2025-08-11 11:43:46 +05:30
ac0843ffe7 Solved migration error occured while rebasing 2025-08-11 11:05:21 +05:30
897a998b27 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api into profile_page 2025-08-08 12:20:55 +05:30
7f0dd1c08a Sloved the rebase issue 2025-08-08 12:20:02 +05:30
de41db6219 Resolved the rebase issues 2025-08-08 12:19:31 +05:30
759d152a9a Resolving the Rebase issues 2025-08-08 12:00:14 +05:30
ef41990d7f Optimized the get list Notes API 2025-08-08 11:47:18 +05:30
5c411602bc Merge pull request 'Expanses_Management_Feature' (#109) from Expanses_Management_Feature into main
Reviewed-on: #109
2025-08-08 06:14:47 +00:00
830accbe98 Optimized the assign bucket API and delete bucket API in Directory module 2025-08-07 15:16:15 +05:30
9b241a0c70 Made MPIN to be 4 digit 2025-08-07 15:03:52 +05:30
3980c14d72 Optimized the contact update API, Delete API , Bucket list API, Create Bucket API, Update Bucket API without implementing cache 2025-08-07 13:28:32 +05:30
9c6bd2c053 Added update tenant API in tenant controller 2025-08-07 09:45:03 +05:30
0aee183fdd Showing profile of all emplyee event if it inactive 2025-08-06 17:54:37 +05:30
f02eb32143 Changed status code 401 to 403 2025-08-06 15:10:55 +05:30
9ef7946d89 Teannt porfile API Optimized 2025-08-06 15:05:48 +05:30
7555b73f02 Added an API to get task by employeeId 2025-08-06 14:51:55 +05:30
9edc0e645e Added to an API to get project assignment histery of an employee 2025-08-06 13:07:41 +05:30
c210e6e3f2 Added the Tenant Profile API 2025-08-06 12:41:32 +05:30
6b4e229f6b Added Currency in subscription list VM 2025-08-06 12:16:46 +05:30
fb1f34f950 Added new condition for checking the permission for expense Action API 2025-08-06 12:14:18 +05:30
cbcae9fb57 Optimized the CreateSubscriptionPlan API 2025-08-06 11:08:24 +05:30
640b80ea82 Subscription plan details added in update subscription API 2025-08-06 10:14:53 +05:30
c65d73ff87 Added new subscription details in add-subscription API 2025-08-06 09:47:16 +05:30
54bf49a005 Seprated the subscrption plan and subscription details and commented add-subscription and update-subscription 2025-08-06 09:36:40 +05:30
60a3b3ab22 Added new API check if user with email exists or not 2025-08-05 11:18:31 +05:30
7bf30d722b Optimzed the add subscription API 2025-08-04 17:01:02 +05:30
19aedfb648 Chnage the cache logic 2025-08-04 15:45:04 +05:30
33538c25b7 Chnaged get query 2025-08-04 14:51:05 +05:30
c3571f76b8 Changed the if condition in expense list API 2025-08-04 14:46:40 +05:30
1072a2da03 Added mongoDB string in appsetting 2025-08-04 12:39:28 +05:30
b9f2bc53c8 Added updated at in action API 2025-08-04 12:26:33 +05:30
545018dde1 If frequency is null send all prices for all plans 2025-08-04 12:24:37 +05:30
c708fa1ea1 Crrocted the typo in SubScription Plans 2025-08-04 12:16:40 +05:30
53a2c5d87c Added API to get plan List and add subscription to specific tenant 2025-08-04 12:10:52 +05:30
30fa924d0f added the date in update logs 2025-08-04 11:12:07 +05:30
2c94854f57 Showing the draft of self only 2025-08-04 09:46:56 +05:30
6c394f40ad added PermissionKey inside MenuItem and start to making get api 2025-08-04 09:46:40 +05:30
ee4e3f713e added two more end-point for Add Item and SubItem 2025-08-03 11:33:08 +05:30
5988a98016 created edit MenuItem and subMenuItem end -points 2025-08-03 02:20:51 +05:30
cc5badeb0f create menu api created 2025-08-02 14:45:38 +05:30
2ccae935f3 Sending the ExpenseLogs in Details API 2025-08-02 12:48:20 +05:30
001bb6447d corrected the typo 2025-08-02 09:45:56 +05:30
c8435020a4 Chnaged the function to chek if base64 is valid or not 2025-08-01 18:22:31 +05:30
a7392a515d Added new logs in expense update API 2025-08-01 17:50:59 +05:30
3915e9b9d0 Correct Typo of OrganizationSize and OrganizationName 2025-08-01 16:43:07 +05:30
8210e250a1 added new parameter tenant table 2025-08-01 16:22:12 +05:30
eaf6284a57 Order nextStatus by it name 2025-08-01 16:18:17 +05:30
56d3b754d9 side bar Menu Model define 2025-08-01 14:50:00 +05:30
fdac2e06e1 Added get tenant list API 2025-08-01 13:17:49 +05:30
555bb87779 Validating the null objects while saving the object in cache 2025-08-01 12:15:24 +05:30
0be021448d Added the date filert in mongo get function also 2025-08-01 11:34:23 +05:30
ff0bead3a0 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api into Tenant_Management 2025-08-01 09:39:16 +05:30
4808d6e77b COrrected the seppling mistake for projectDetails API 2025-08-01 09:03:12 +05:30
59459acaee Only sending 10 employees if project Id is not provided 2025-07-31 19:06:26 +05:30
e565a80f7a Optimized the create tenant API 2025-07-31 18:56:19 +05:30
732182a672 Added new API to fetch basic employee list 2025-07-31 17:26:09 +05:30
b7d770716a Created the API ot Create new Tenant 2025-07-31 16:54:06 +05:30
d001366d77 Merge branch 'main' of https://git.marcoaiot.com/admin/marco.pms.api into Expanses_Management_Feature 2025-07-31 11:30:38 +05:30
7fe8dc60cb Merge pull request 'Issues_July_4W' (#108) from Issues_July_4W into main
Reviewed-on: #108
the branch is deloyed on production
2025-07-31 05:52:51 +00:00
36db35d90e Sending every project exists in expense table 2025-07-31 11:15:37 +05:30
1c9008ca62 Added the search funcationality abd chnaged the cache object 2025-07-31 10:28:45 +05:30
1a0641162c Added the currency master table 2025-07-30 15:44:19 +05:30
d28f37714f Added new status and change expesne status from tenant scop to system scope 2025-07-30 12:24:19 +05:30
388979ef82 Chnage Reviewed to Mark as Reviewed in expenses status 2025-07-30 10:08:26 +05:30
4325dffc06 change ExpensesReimburse from list to single entity in expense details view model 2025-07-30 09:34:16 +05:30
0c1cb98f5b Added the code to save reimbursement in database 2025-07-29 18:11:33 +05:30
f4368ae4e3 change display name fo expense status from Paid to Mark as Paid 2025-07-29 17:17:57 +05:30
ce4e52e69d Chnage the name of Prosecc Pending to payment Payment pending 2025-07-29 15:59:12 +05:30
6c32a48095 Changed the display names of expense status 2025-07-29 15:47:49 +05:30
9e15cf0447 Optimized the Create contact API in directory module 2025-07-29 15:00:23 +05:30
0b2883af0f Added proper reponse message in expense APIs 2025-07-28 18:00:37 +05:30
53a93542e9 Optimized the Get contact details API 2025-07-28 14:50:48 +05:30
5b091a8d6f Rewrite the uf condiotn in get expense details API 2025-07-28 11:18:26 +05:30
61741331e0 Corrected the feaching logic for expense delete API 2025-07-28 10:37:18 +05:30
019ef5d997 Optimized the contact list API in Directory Controller 2025-07-26 14:57:05 +05:30
7619ce9820 FIltering the master list by active and inactive 2025-07-26 09:17:26 +05:30
57d2b03c02 Change the id else logic to show proper message upon deletion or resotation of master entity in expenses module 2025-07-26 09:11:04 +05:30
aa47bfe59c Added an API to modify isActive parameter in Payment mode master table for that tenant 2025-07-25 13:06:28 +05:30
f1e9a8655a Added an API to modify isActive parameter in Expense status master table for that tenant 2025-07-25 13:02:13 +05:30
b4931aafd6 Added an API to modify isActive parameter in Expense type master table for that tenant 2025-07-25 12:54:49 +05:30
e31e19ed74 Added an API to update expenses status to master table for that tenant 2025-07-25 12:28:06 +05:30
2ad0638d4f Added applied filters in response 2025-07-25 12:26:34 +05:30
a196906bf9 Added an API to update payment mode to master table for that tenant 2025-07-25 12:07:16 +05:30
5b5aa9f77a Added an API to update Expense type to master table for that tenant 2025-07-25 11:52:47 +05:30
cad631ec7a Added the end point for add expenses status API 2025-07-25 11:07:15 +05:30
9cd9bac975 Added an API to add new Expense status to master table for that tenant 2025-07-25 10:55:25 +05:30
1834c103f0 Added an API to add new payment mode to master table for that tenant 2025-07-25 10:36:57 +05:30
e1102c2978 Added an API to add new Expense type to master table for that tenant 2025-07-25 10:26:29 +05:30
62956d6b12 solved the mearge error 2025-07-24 17:28:27 +05:30
c2fe726f0c Added signalR in update expesne API 2025-07-24 16:16:30 +05:30
c881964ab1 Added proper validation and logs in get expesne status, expenses type and payment mode APIs 2025-07-24 16:07:39 +05:30
809d64e296 Added permission IDs in expesne status master View model 2025-07-24 16:03:23 +05:30
36163e97cc Merge pull request 'Added Designation Parameter in Contacts and Implement in Related APIs' (#104) from Ashutosh_Enhancement_#631 into Issues_July_4W
Reviewed-on: #104
2025-07-24 10:04:45 +00:00
57d7b4c07b Solved the issue of not showing final status in list and details API of expesne model 2025-07-24 10:38:31 +05:30
a1db851edd Added peoper return messages and validations in update expesnse API 2025-07-24 10:15:33 +05:30
8cc6584e7c will be pushed in another branch
revert Made MPIN to be 4 digit
2025-07-23 12:47:45 +00:00
5926ec6655 will be pushed in another branch
revert Changed the function from GetProjectDetailsAsync to GetProjectDetailsOldAsync
2025-07-23 12:47:22 +00:00
346f2cebcb Changed the function from GetProjectDetailsAsync to GetProjectDetailsOldAsync 2025-07-23 18:11:10 +05:30
468bfdf635 Made MPIN to be 4 digit 2025-07-23 18:09:52 +05:30
8b5b0aed4c Added proper logs to all Expesne APIs 2025-07-23 18:02:12 +05:30
ae1222bb96 Added the API to featch list of suppler names from expenses 2025-07-23 17:31:15 +05:30
b6dfb30f92 Create API base for delete expense API 2025-07-23 17:22:19 +05:30
4370d5a350 Adsing file to delete from S3 in mongoDB while update expenes 2025-07-23 16:24:59 +05:30
0095cd54f6 Added persigned Urls in Expesne Details API 2025-07-23 12:50:42 +05:30
4a762e4983 commented un wanted code 2025-07-23 10:58:16 +05:30
3083083148 Created the get Expense details API 2025-07-23 10:51:58 +05:30
73cf85a1cc Added cache to expenses get list and create expense APIs 2025-07-23 09:56:01 +05:30
d536b9c99c Added proper namespances and changed the getProjectdetails to getProjectDetailsOld 2025-07-22 14:23:39 +05:30
cfbfbf2e2b Renamed the CacheHelper To Helpers 2025-07-22 10:53:55 +05:30
5be154a9f1 Added totalPages , totalEntites and Currect page in response of get expenses list 2025-07-22 09:58:13 +05:30
2449d2a518 FIxed the database transaction error 2025-07-21 18:50:08 +05:30
1fffde6d7f Solved the database transcation error 2025-07-21 18:39:34 +05:30
f9213b6040 Completely optimmized the Action API 2025-07-21 18:21:51 +05:30
282d33d8b2 Optimized and enchance the created expense API 2025-07-21 13:05:04 +05:30
839bc360f3 Added skeleton for action and update API. 2025-07-21 12:29:33 +05:30
3b4b09783b Completed the get expenses list API with optimized code 2025-07-19 20:32:06 +05:30
c1845dd8b7 Change the ExpanseController to ExpenseController 2025-07-19 19:05:07 +05:30
741acb194e Added the status Mapping table in database 2025-07-19 17:10:02 +05:30
448d586b94 Changed the endpoint names in expense controller 2025-07-19 16:21:54 +05:30
c27ffe3a28 Addd a table to save logs of expenses 2025-07-19 16:13:37 +05:30
84f5da25f6 Added the get API in Expenses module 2025-07-19 15:49:23 +05:30
15f100308f Added created API to create expenses entity 2025-07-19 15:41:27 +05:30
8e69219e73 Added all get lsit for Expenses-Type, Expenses-Status and payment-mode 2025-07-19 15:02:48 +05:30
cc2e545442 Added created by and created at in expenses model 2025-07-19 15:00:21 +05:30
0b1d2669ca Improved the data seeder function 2025-07-19 14:58:47 +05:30
cf01fd1138 Added models for Expenses management models and migrations 2025-07-19 13:12:47 +05:30
51b379916f Solving the rebase errors 2025-07-18 18:43:22 +05:30
027d6a8c3b Solving the rebase error 2025-07-18 18:40:41 +05:30
1d5b0a9b06 Created an Utility function store logs in mogoDB 2025-07-18 18:39:05 +05:30
afe20b404a Merge pull request 'Ashutosh_Refactor' (#107) from Ashutosh_Refactor into main
Reviewed-on: #107
2025-07-18 13:01:28 +00:00
d84b01473a Merge pull request 'Created an Utility function store logs in mogoDB' (#106) from Ashutosh_Task#767 into Expanses_Management_Feature
Reviewed-on: #106
2025-07-18 11:05:02 +00:00
328c6ec4e3 When sending the report before data has been taken from cache not from database change it to both 2025-07-18 16:03:53 +05:30
b614ca93e6 Created an Utility function store logs in mogoDB 2025-07-18 13:00:50 +05:30
7b2a3887de Solved the rebase issues 2025-07-17 17:36:58 +05:30
0ac4c23e74 Merge branch 'Ashutosh_Refactor' of https://git.marcoaiot.com/admin/marco.pms.api into Ashutosh_Refactor 2025-07-17 17:23:08 +05:30
b71935dd1f Removed commented code from project Cache 2025-07-17 17:23:02 +05:30
c8978ee9b1 added new function delete all employee entries from cache 2025-07-17 17:23:02 +05:30
0ecf258661 Deleted the unused variable 2025-07-17 17:23:01 +05:30
30d614fa11 Added the logs setp in program.cs 2025-07-17 17:23:01 +05:30
5deb97d73b Added one more condition to check if active is false while removing the employee from buckets 2025-07-17 17:23:01 +05:30
6ac28de56a Removed the reassgining of same object 2025-07-17 17:23:01 +05:30
8735de3d93 Remove the projectHelper and ProjetsHelper and move its bussiness logic to project services 2025-07-17 17:23:01 +05:30
c8ca2d5c49 Optimization of WorkItem Delete API in Project Controller 2025-07-17 17:23:00 +05:30
eabd31f8cf Optimized the Manage infra API in Project Controller 2025-07-17 17:23:00 +05:30
57b7f941e6 Optimized the manage task API in projectController 2025-07-17 17:23:00 +05:30
c90f39082a Optimized the project allocation by employee Id Apis 2025-07-17 17:23:00 +05:30
c03fae4b65 Added Sonar files in git ignore 2025-07-17 17:23:00 +05:30
168922c278 Optimized the Project Allocation API 2025-07-17 17:22:59 +05:30
72dccc0c6a Added Employee ID of creater to bucket in Employee IDs 2025-07-17 17:22:59 +05:30
7914cf20d4 Removed unused code from employee cache class 2025-07-17 17:22:59 +05:30
80149f05f7 Solved the issue of project is not updating properly 2025-07-17 17:22:59 +05:30
560d2f2d4d adde functionality to delete workItems from cache 2025-07-17 17:22:59 +05:30
f4ca7670e3 Refactored: Moved business logic from ProjectController to ProjectService 2025-07-17 17:22:58 +05:30
36eb7aef7f Optimized the Update project API 2025-07-17 17:22:58 +05:30
ca34b01ab0 Optimized the Get project By ID API 2025-07-17 17:22:58 +05:30
b78f58c304 Solved Concurrency Issue 2025-07-17 17:22:58 +05:30
c359212ee5 Optimized both get Project list API and get Project list basic API 2025-07-17 17:22:58 +05:30
7d160a9a52 Refactored the function to add project in cache and added auto Mapper 2025-07-17 17:22:57 +05:30
3bc51f9cd9 Refactor project report APIs to improve performance and readability 2025-07-17 17:22:57 +05:30
3a45bded08 Merge pull request 'Attendance_Weidget_feature' (#105) from Attendance_Weidget_feature into main
Reviewed-on: #105
2025-07-17 11:50:32 +00:00
5e84ee9345 Removed commented code from project Cache 2025-07-17 17:16:16 +05:30
7c8a80addc Merge branch 'Ashutosh_Refactor' of https://git.marcoaiot.com/admin/marco.pms.api into Ashutosh_Refactor 2025-07-17 17:02:00 +05:30
079a380422 Deleted the unused variable 2025-07-17 17:01:51 +05:30
5b0e9ffb7c added new function delete all employee entries from cache 2025-07-17 16:38:39 +05:30
c6ba233e6d Added the logs setp in program.cs 2025-07-17 16:06:54 +05:30
0ec507c97c Included the jobrole when feaching employee list 2025-07-17 15:31:05 +05:30
760b4638e6 Added one more condition to check if active is false while removing the employee from buckets 2025-07-17 12:53:01 +05:30
2a3c75b0c8 Removed the reassgining of same object 2025-07-17 12:42:02 +05:30
d1106bc86b Can able update note of deleted not also 2025-07-17 12:01:47 +05:30
ccce0d48d5 Remove the projectHelper and ProjetsHelper and move its bussiness logic to project services 2025-07-17 10:17:57 +05:30
089ae7e9e5 Optimization of WorkItem Delete API in Project Controller 2025-07-16 18:39:29 +05:30
3f7925aa72 Optimized the Manage infra API in Project Controller 2025-07-16 18:15:43 +05:30
0859284f4a Merge branch 'Attendance_Weidget_feature' of https://git.marcoaiot.com/admin/marco.pms.api into Attendance_Weidget_feature 2025-07-16 18:00:27 +05:30
bbd2054867 only checking if the user have permission of project or not only 2025-07-16 18:00:15 +05:30
e4246df315 Changed the business logic of teams and tasks API in DashboardController to accept project ID and provide data according to project ID or project IDs assigned to logged in user 2025-07-16 18:00:15 +05:30
237b178107 Replace lazy loading with eager loading 2025-07-16 17:52:25 +05:30
c79cbf32ea Optimized the manage task API in projectController 2025-07-16 15:08:53 +05:30
2889620c1c only checking if the user have permission of project or not only 2025-07-16 14:49:34 +05:30
08e8e8d75f Changed the business logic of teams and tasks API in DashboardController to accept project ID and provide data according to project ID or project IDs assigned to logged in user 2025-07-16 12:39:16 +05:30
c3da83d165 Optimized the project allocation by employee Id Apis 2025-07-15 16:37:57 +05:30
9d0c16b887 Added Sonar files in git ignore 2025-07-15 15:37:15 +05:30
823deb17cc Optimized the Project Allocation API 2025-07-15 15:30:41 +05:30
f406a15508 Added Employee ID of creater to bucket in Employee IDs 2025-07-15 15:21:48 +05:30
a64ce4fb02 Removed unused code from employee cache class 2025-07-15 14:34:26 +05:30
5369bbae29 Solved the issue of project is not updating properly 2025-07-15 13:09:27 +05:30
73aa1d6181 adde functionality to delete workItems from cache 2025-07-15 12:44:38 +05:30
5de59f0292 Refactored: Moved business logic from ProjectController to ProjectService 2025-07-14 18:45:23 +05:30
e769c161f4 Optimized the Update project API 2025-07-14 17:00:28 +05:30
c5d9beec04 Optimized the Get project By ID API 2025-07-14 15:57:52 +05:30
0c84bb11a3 Solved Concurrency Issue 2025-07-14 15:08:31 +05:30
4ba533f647 Optimized both get Project list API and get Project list basic API 2025-07-14 12:02:45 +05:30
8bb8b3643f Refactored the function to add project in cache and added auto Mapper 2025-07-12 13:14:15 +05:30
d27cdee72d Refactor project report APIs to improve performance and readability 2025-07-12 13:13:29 +05:30
852b079428 Merge pull request 'ProjectDetails_Split_API' (#103) from ProjectDetails_Split_API into main
Reviewed-on: #103
2025-07-11 11:32:33 +00:00
5cb56b7a10 Sovled the rebase code errors 2025-07-11 11:06:29 +05:30
56161d302b Solving rebase issues 2025-07-11 11:04:28 +05:30
8e3eedbfa7 Removing the project stored in cache for employee who have the project manage permission 2025-07-11 11:03:33 +05:30
3c8a044d66 Added the workcategory in WorkItem 2025-07-11 11:03:33 +05:30
ff722503d5 Added new parameter in log "Origin" 2025-07-11 11:03:33 +05:30
669500e57e Added the caching project report API and added expiry in workItems in cache 2025-07-11 11:03:33 +05:30
3e316ef388 Changed the signalR keyword for work item 2025-07-11 11:03:33 +05:30
3ec4bd762f Added old project Details API 2025-07-11 11:03:33 +05:30
0be200e77a In Project Report Email only sending data of job role assigned to that project 2025-07-11 11:03:33 +05:30
3646163593 Implemented the cache in task allocation 2025-07-11 10:32:11 +05:30
cbcc3398c3 Storing workItem in cache and changing planned work and completed work for respective project, building, floor, and workarea 2025-07-11 10:30:39 +05:30
d8cf87aee4 Implemented the methods for deleting permission am asigned project from caches for certien employee 2025-07-11 10:30:39 +05:30
3d8e91d58d Added error handling in cache helper 2025-07-11 10:30:39 +05:30
129ccf7fae removed comented code from appsetting file 2025-07-11 10:30:39 +05:30
3e8ef856d4 Saving project details with infrastructure, employee permissions and assigned project for that employee in mongodb 2025-07-11 10:30:35 +05:30
de3fa6b929 project details API is split into three APIs. 2025-07-11 10:29:29 +05:30
bb76c45195 Removing the project stored in cache for employee who have the project manage permission 2025-07-10 15:57:08 +05:30
40ce4ced42 Added the workcategory in WorkItem 2025-07-10 14:59:28 +05:30
60517f3f60 Merge branch 'ProjectDetails_Split_API' of https://git.marcoaiot.com/admin/marco.pms.api into ProjectDetails_Split_API 2025-07-10 09:52:39 +05:30
c2a9a42af5 Added old project Details API 2025-07-10 09:52:18 +05:30
17c56be712 Added new parameter in log "Origin" 2025-07-09 15:11:08 +05:30
183d72017d Merge pull request 'vikas#387_code_review' (#102) from vikas#387_code_review into main
Reviewed-on: #102
2025-07-09 09:36:28 +00:00
c4ad3fdad5 Added the caching project report API and added expiry in workItems in cache 2025-07-09 12:39:27 +05:30
de5485b8f6 Changed the signalR keyword for work item 2025-07-09 10:35:35 +05:30
2304912bf8 Added all Feature permission in static file and use that static file to check the permission 2025-07-08 16:07:27 +05:30
5c1dcd89b5 directoryAdmin, directoryManager, and directoryUser are hard-coded in the helper class. Instead of hard-coding, we can create a static class and use it across the application.
Ref: https://redmine.marcoaiot.com/issues/387
2025-07-08 15:12:36 +05:30
856510baff In Project Report Email only sending data of job role assigned to that project 2025-07-08 12:48:13 +05:30
49b85c4df9 Rresloving rebase issues 2025-07-08 12:38:00 +05:30
aebb344a5a Implemented the cache in task allocation 2025-07-08 12:36:17 +05:30
56aca323e5 Storing workItem in cache and changing planned work and completed work for respective project, building, floor, and workarea 2025-07-08 12:22:29 +05:30
1d318c75d8 Implemented the methods for deleting permission am asigned project from caches for certien employee 2025-07-08 12:22:29 +05:30
8521a68c3e Added error handling in cache helper 2025-07-08 12:22:28 +05:30
8c85d92ba6 removed comented code from appsetting file 2025-07-08 12:22:28 +05:30
3ce9851a7f Saving project details with infrastructure, employee permissions and assigned project for that employee in mongodb 2025-07-08 12:22:28 +05:30
3dd5e7f626 project details API is split into three APIs. 2025-07-08 12:22:28 +05:30
67c8bee2c2 Implemented the cache in task allocation 2025-07-08 12:20:54 +05:30
bc0ef0b88b Merge pull request 'Image_Gallery' (#101) from Image_Gallery into main
Reviewed-on: #101
2025-07-08 06:42:02 +00:00
411902eef7 Merge branch 'ProjectDetails_Split_API' of https://git.marcoaiot.com/admin/marco.pms.api into ProjectDetails_Split_API 2025-07-07 17:48:09 +05:30
80a197b408 Storing workItem in cache and changing planned work and completed work for respective project, building, floor, and workarea 2025-07-07 17:47:37 +05:30
11b54debc6 Implemented the methods for deleting permission am asigned project from caches for certien employee 2025-07-07 17:47:37 +05:30
0654bca655 Added error handling in cache helper 2025-07-07 17:47:37 +05:30
8e67e801a3 removed comented code from appsetting file 2025-07-07 17:47:37 +05:30
c2354033b7 Saving project details with infrastructure, employee permissions and assigned project for that employee in mongodb 2025-07-07 17:47:37 +05:30
ec1e2dc59f Storing workItem in cache and changing planned work and completed work for respective project, building, floor, and workarea 2025-07-07 17:44:58 +05:30
43e2aeb097 Showing the comment added when task is reported 2025-07-07 13:15:27 +05:30
65f3376523 Added new paremeter of NumberOfImages in signalR message object 2025-07-07 11:21:31 +05:30
b8cba9f378 Implemented the methods for deleting permission am asigned project from caches for certien employee 2025-07-07 10:04:11 +05:30
558fd6bd5b Corrected Key for signalR 2025-07-05 17:24:57 +05:30
e4cc6c1578 Merge pull request 'Added SignalR Integration for Reporting, Commenting, and Approving Tasks' (#100) from Ashutosh_Task#663 into Image_Gallery
Reviewed-on: #100
2025-07-05 11:44:00 +00:00
0052692283 Added error handling in cache helper 2025-07-05 15:25:01 +05:30
7be7d6f13d removed comented code from appsetting file 2025-07-04 17:50:27 +05:30
cd4ad6f4ac Saving project details with infrastructure, employee permissions and assigned project for that employee in mongodb 2025-07-04 17:49:25 +05:30
3216318acb Added Designation Parameter in Contacts and Implement in Related APIs 2025-07-02 15:07:08 +05:30
6b5c09c562 Merge branch 'ProjectDetails_Split_API' of https://git.marcoaiot.com/admin/marco.pms.api into ProjectDetails_Split_API 2025-07-01 15:59:54 +05:30
8055c04e4b project details API is split into three APIs. 2025-07-01 15:59:49 +05:30
2c445878d0 project details API is split into three APIs. 2025-07-01 12:39:07 +05:30
373d80260f Removed demo objects for which is used for testing purpose 2025-06-24 10:10:03 +05:30
bb76047605 Implemeted an API to store logs from mobile Application 2025-06-23 17:09:39 +05:30
648b4f9ef0 Implemented firebase client and sended push notification to mobile app 2025-06-11 19:33:21 +05:30
391 changed files with 235428 additions and 5492 deletions

5
.gitignore vendored
View File

@ -360,4 +360,7 @@ MigrationBackup/
.ionide/
# Fody - auto-generated XML schema
FodyWeavers.xsd
FodyWeavers.xsd
# Sonar
/.sonarqube

File diff suppressed because one or more lines are too long

View File

@ -62,7 +62,6 @@ namespace Marco.Pms.DataAccess.Initializer
// State = "State",
// Postalcode = "1234567890",
// City = "City",
TenantId = Guid.Parse("b3466e83-7e11-464c-b93a-daf047838b26"),
IsRootUser = true,
}, "User@123").GetAwaiter().GetResult();
@ -78,13 +77,10 @@ namespace Marco.Pms.DataAccess.Initializer
Gender = "",
EmergencyPhoneNumber = "1234567890",
CurrentAddress = "",
AadharNumber = "1234567890",
ApplicationUserId = user.Id,
BirthDate = DateTime.MinValue,
PanNumber = "",
PermanentAddress = "",
PhoneNumber = "",
TenantId = user.TenantId
PhoneNumber = ""
};
_db.Employees.Add(emp);

View File

@ -1274,7 +1274,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1295,7 +1295,7 @@ namespace Marco.Pms.DataAccess.Migrations
columns: new[] { "Id", "ColorCode", "Description", "IsDefault", "Name", "TenantId" },
values: new object[,]
{
{ new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"), "#6c757d", "These issues are currently under review", true, "In Review", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"), "#8592a3", "These issues are currently under review", true, "In Review", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("6b0c409b-3e80-4165-8b39-f3fcacb4c797"), "#FFCC99", "This is a newly created issue.", true, "New", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("6c5ac37d-5b7d-40f3-adec-2dabaa5cca86"), "#E6FF99", "Assigned to employee or team of employees", true, "Assigned", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("7f96bcd5-0c66-411b-8a1d-9d1a4785194e"), "#99E6FF", "These issues are currently in progress", true, "In Progress", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },

View File

@ -1216,7 +1216,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1222,7 +1222,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1299,7 +1299,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1299,7 +1299,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1267,7 +1267,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1602,7 +1602,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1626,7 +1626,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1593,7 +1593,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1633,7 +1633,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1358,7 +1358,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1366,7 +1366,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1425,7 +1425,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1425,7 +1425,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1428,7 +1428,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1428,7 +1428,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1811,7 +1811,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1835,7 +1835,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1835,7 +1835,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1817,7 +1817,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1857,7 +1857,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1857,7 +1857,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1857,7 +1857,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -1862,7 +1862,7 @@ namespace Marco.Pms.DataAccess.Migrations
new
{
Id = new Guid("5c72b630-6923-4215-bf2c-b1622afd76e7"),
ColorCode = "#6c757d",
ColorCode = "#8592a3",
Description = "These issues are currently under review",
IsDefault = true,
Name = "In Review",

View File

@ -0,0 +1,29 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Designation_Paraneter_In_Contacts_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<string>(
name: "Designation",
table: "Contacts",
type: "longtext",
nullable: false)
.Annotation("MySql:CharSet", "utf8mb4");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "Designation",
table: "Contacts");
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,664 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Expense_Related_Tables : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "ExpensesReimburse",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ReimburseTransactionId = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
ReimburseDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
ReimburseById = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ReimburseNote = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ExpensesReimburse", x => x.Id);
table.ForeignKey(
name: "FK_ExpensesReimburse_Employees_ReimburseById",
column: x => x.ReimburseById,
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ExpensesReimburse_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "ExpensesStatusMaster",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
DisplayName = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Color = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
IsSystem = table.Column<bool>(type: "tinyint(1)", nullable: false),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ExpensesStatusMaster", x => x.Id);
table.ForeignKey(
name: "FK_ExpensesStatusMaster_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "ExpensesTypeMaster",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
NoOfPersonsRequired = table.Column<bool>(type: "tinyint(1)", nullable: false),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ExpensesTypeMaster", x => x.Id);
table.ForeignKey(
name: "FK_ExpensesTypeMaster_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "PaymentModeMatser",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_PaymentModeMatser", x => x.Id);
table.ForeignKey(
name: "FK_PaymentModeMatser_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "ExpensesStatusMapping",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
StatusId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
NextStatusId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ExpensesStatusMapping", x => x.Id);
table.ForeignKey(
name: "FK_ExpensesStatusMapping_ExpensesStatusMaster_NextStatusId",
column: x => x.NextStatusId,
principalTable: "ExpensesStatusMaster",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ExpensesStatusMapping_ExpensesStatusMaster_StatusId",
column: x => x.StatusId,
principalTable: "ExpensesStatusMaster",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ExpensesStatusMapping_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "StatusPermissionMapping",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
StatusId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
PermissionId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_StatusPermissionMapping", x => x.Id);
table.ForeignKey(
name: "FK_StatusPermissionMapping_ExpensesStatusMaster_StatusId",
column: x => x.StatusId,
principalTable: "ExpensesStatusMaster",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_StatusPermissionMapping_FeaturePermissions_PermissionId",
column: x => x.PermissionId,
principalTable: "FeaturePermissions",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_StatusPermissionMapping_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "Expenses",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ProjectId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ExpensesTypeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
PaymentModeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
PaidById = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
CreatedById = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
TransactionDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
TransactionId = table.Column<string>(type: "longtext", nullable: true)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Location = table.Column<string>(type: "longtext", nullable: true)
.Annotation("MySql:CharSet", "utf8mb4"),
GSTNumber = table.Column<string>(type: "longtext", nullable: true)
.Annotation("MySql:CharSet", "utf8mb4"),
SupplerName = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Amount = table.Column<double>(type: "double", nullable: false),
NoOfPersons = table.Column<int>(type: "int", nullable: true),
StatusId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
PreApproved = table.Column<bool>(type: "tinyint(1)", nullable: false),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_Expenses", x => x.Id);
table.ForeignKey(
name: "FK_Expenses_Employees_CreatedById",
column: x => x.CreatedById,
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_Expenses_Employees_PaidById",
column: x => x.PaidById,
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_Expenses_ExpensesStatusMaster_StatusId",
column: x => x.StatusId,
principalTable: "ExpensesStatusMaster",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_Expenses_ExpensesTypeMaster_ExpensesTypeId",
column: x => x.ExpensesTypeId,
principalTable: "ExpensesTypeMaster",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_Expenses_PaymentModeMatser_PaymentModeId",
column: x => x.PaymentModeId,
principalTable: "PaymentModeMatser",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_Expenses_Projects_ProjectId",
column: x => x.ProjectId,
principalTable: "Projects",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_Expenses_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "BillAttachments",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ExpensesId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
DocumentId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_BillAttachments", x => x.Id);
table.ForeignKey(
name: "FK_BillAttachments_Documents_DocumentId",
column: x => x.DocumentId,
principalTable: "Documents",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_BillAttachments_Expenses_ExpensesId",
column: x => x.ExpensesId,
principalTable: "Expenses",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_BillAttachments_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "ExpenseLogs",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ExpenseId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
UpdatedById = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Action = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Comment = table.Column<string>(type: "longtext", nullable: true)
.Annotation("MySql:CharSet", "utf8mb4"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ExpenseLogs", x => x.Id);
table.ForeignKey(
name: "FK_ExpenseLogs_Employees_UpdatedById",
column: x => x.UpdatedById,
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ExpenseLogs_Expenses_ExpenseId",
column: x => x.ExpenseId,
principalTable: "Expenses",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ExpenseLogs_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "ExpensesReimburseMapping",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ExpensesId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ExpensesReimburseId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ExpensesReimburseMapping", x => x.Id);
table.ForeignKey(
name: "FK_ExpensesReimburseMapping_ExpensesReimburse_ExpensesReimburse~",
column: x => x.ExpensesReimburseId,
principalTable: "ExpensesReimburse",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ExpensesReimburseMapping_Expenses_ExpensesId",
column: x => x.ExpensesId,
principalTable: "Expenses",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ExpensesReimburseMapping_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.InsertData(
table: "ExpensesStatusMaster",
columns: new[] { "Id", "Color", "Description", "DisplayName", "IsActive", "IsSystem", "Name", "TenantId" },
values: new object[,]
{
{ new Guid("297e0d8f-f668-41b5-bfea-e03b354251c8"), "#8592a3", "Expense has been created but not yet submitted.", "Draft", true, true, "Draft", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("4068007f-c92f-4f37-a907-bc15fe57d4d8"), "#03c3ec", "Review is completed, waiting for action of approver.", "Mark as Reviewed", true, true, "Approval Pending", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("61578360-3a49-4c34-8604-7b35a3787b95"), "#71dd37", "Expense has been settled.", "Mark as Paid", true, true, "Paid", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7"), "#696cff", "Reviewer is currently reviewing the expense.", "Submit", true, true, "Review Pending", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"), "#ff3e1d", "Expense was declined, often with a reason(either review rejected or approval rejected.", "Reject", true, true, "Rejected", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("f18c5cfd-7815-4341-8da2-2c2d65778e27"), "#ffab00", "Approved expense is awaiting final payment.", "Mark as Approved", true, true, "Payment Pending", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
});
migrationBuilder.InsertData(
table: "ExpensesTypeMaster",
columns: new[] { "Id", "Description", "IsActive", "Name", "NoOfPersonsRequired", "TenantId" },
values: new object[,]
{
{ new Guid("1e2d697a-76b4-4be8-bc66-87144561a1a0"), "Scheduled payments for external services or goods.", true, "Vendor/Supplier Payments", false, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("2de53163-0dbd-404b-8e60-1b02e6b4886a"), "Vehicle fuel, logistics services and delivery of goods or personnel.", true, "Transport", false, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("4842fa61-64eb-4241-aebd-8282065af9f9"), "Government fees, insurance, inspections and safety-related expenditures.", true, "Compliance & Safety", false, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("52484820-1b54-4865-8f0f-baa2b1d339b9"), "Site setup costs including equipment deployment and temporary infrastructure.", true, "Mobilization", false, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("5e0c6227-d49d-41ff-9f1f-781f0aee2469"), "Materials, equipment and supplies purchased for site operations.", true, "Procurement", false, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("77013784-9324-4d8b-bd36-d6f928e68942"), "Machinery servicing, electricity, water, and temporary office needs.", true, "Maintenance & Utilities", false, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("dd120bc4-ab0a-45ba-8450-5cd45ff221ca"), "Delivery of personnel.", true, "Travelling", true, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("fc59eb90-98ea-481c-b421-54bfa9e42d8f"), " Worker amenities like snacks, meals, safety gear, accommodation, medical support etc.", true, "Employee Welfare", true, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
});
migrationBuilder.InsertData(
table: "Features",
columns: new[] { "Id", "Description", "IsActive", "ModuleId", "Name" },
values: new object[] { new Guid("a4e25142-449b-4334-a6e5-22f70e4732d7"), "Expense Management is the systematic process of tracking, controlling, and reporting business-related expenditures.", true, new Guid("bf59fd88-b57a-4d67-bf01-3780f385896b"), "Expense Management" });
migrationBuilder.InsertData(
table: "PaymentModeMatser",
columns: new[] { "Id", "Description", "IsActive", "Name", "TenantId" },
values: new object[,]
{
{ new Guid("24e6b0df-7929-47d2-88a3-4cf14c1f28f9"), "Physical currency; still used for small or informal transactions.", true, "Cash", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("2e919e94-694c-41d9-9489-0a2b4208a027"), "Real-time bank-to-bank transfer using mobile apps; widely used for peer-to-peer and merchant payments.", true, "UPI", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("48d9b462-5d87-4dec-8dec-2bc943943172"), "Paper-based payment order; less common now due to processing delays and fraud risks.", true, "Cheque", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("ed667353-8eea-4fd1-8750-719405932480"), "Online banking portals used to transfer funds directly between accounts", true, "NetBanking", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
});
migrationBuilder.InsertData(
table: "ExpensesStatusMapping",
columns: new[] { "Id", "NextStatusId", "StatusId", "TenantId" },
values: new object[,]
{
{ new Guid("1fca1700-1266-477d-bba4-9ac3753aa33c"), new Guid("f18c5cfd-7815-4341-8da2-2c2d65778e27"), new Guid("4068007f-c92f-4f37-a907-bc15fe57d4d8"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("36c00548-241c-43ec-bc95-cacebedb925c"), new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"), new Guid("4068007f-c92f-4f37-a907-bc15fe57d4d8"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("5cf7f1df-9d1f-4289-add0-1775ad614f25"), new Guid("61578360-3a49-4c34-8604-7b35a3787b95"), new Guid("f18c5cfd-7815-4341-8da2-2c2d65778e27"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("75bbda6a-6a53-47d1-ad71-5f5f9446a11e"), new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7"), new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("af1e4492-98ee-4451-8ab7-fd8323f29c32"), new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7"), new Guid("297e0d8f-f668-41b5-bfea-e03b354251c8"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("ef1fcfbc-60e0-4f17-9308-c583a05d48fd"), new Guid("4068007f-c92f-4f37-a907-bc15fe57d4d8"), new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("fddaaf20-4ccc-4f4e-a724-dd310272b356"), new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"), new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
});
migrationBuilder.InsertData(
table: "FeaturePermissions",
columns: new[] { "Id", "Description", "FeatureId", "IsEnabled", "Name" },
values: new object[,]
{
{ new Guid("01e06444-9ca7-4df4-b900-8c3fa051b92f"), "Allows a user to view all expense records across the organization or project, regardless of who submitted or paid them", new Guid("a4e25142-449b-4334-a6e5-22f70e4732d7"), true, "View All" },
{ new Guid("0f57885d-bcb2-4711-ac95-d841ace6d5a7"), "Allows a user to create and submit new expense records, including attaching relevant documents like receipts or invoices.", new Guid("a4e25142-449b-4334-a6e5-22f70e4732d7"), true, "Upload" },
{ new Guid("1f4bda08-1873-449a-bb66-3e8222bd871b"), "Allows a user to examine submitted expenses for accuracy, completeness, and policy compliance before they are approved or rejected.", new Guid("a4e25142-449b-4334-a6e5-22f70e4732d7"), true, "Review" },
{ new Guid("385be49f-8fde-440e-bdbc-3dffeb8dd116"), "Allows a user to view only the expense records that they have personally submitted", new Guid("a4e25142-449b-4334-a6e5-22f70e4732d7"), true, "View Self" },
{ new Guid("bdee29a2-b73b-402d-8dd1-c4b1f81ccbc3"), "Allows a user to configure and control system settings, such as managing expense types, payment modes, permissions, and overall workflow rules.", new Guid("a4e25142-449b-4334-a6e5-22f70e4732d7"), true, "Manage" },
{ new Guid("ea5a1529-4ee8-4828-80ea-0e23c9d4dd11"), "Allows a user to handle post-approval actions such as recording payments, updating financial records, or marking expenses as reimbursed or settled.", new Guid("a4e25142-449b-4334-a6e5-22f70e4732d7"), true, "Process" },
{ new Guid("eaafdd76-8aac-45f9-a530-315589c6deca"), "Allows a user to authorize or reject submitted expenses, making them officially accepted or declined within the system.", new Guid("a4e25142-449b-4334-a6e5-22f70e4732d7"), true, "Approve" }
});
migrationBuilder.InsertData(
table: "StatusPermissionMapping",
columns: new[] { "Id", "PermissionId", "StatusId", "TenantId" },
values: new object[,]
{
{ new Guid("214354e5-daad-4569-ad69-eb5bf4e87fbc"), new Guid("ea5a1529-4ee8-4828-80ea-0e23c9d4dd11"), new Guid("61578360-3a49-4c34-8604-7b35a3787b95"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("4652d73f-fc71-4fe1-9f2f-1e48b342d741"), new Guid("1f4bda08-1873-449a-bb66-3e8222bd871b"), new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("cd15f9b9-be45-4deb-9c71-2f23f872dbcd"), new Guid("eaafdd76-8aac-45f9-a530-315589c6deca"), new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("ed893799-1a5f-4311-a077-de93c86ca8fd"), new Guid("1f4bda08-1873-449a-bb66-3e8222bd871b"), new Guid("4068007f-c92f-4f37-a907-bc15fe57d4d8"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("f6f26b2f-2fa6-40b7-8601-cbd4bcdda0cc"), new Guid("eaafdd76-8aac-45f9-a530-315589c6deca"), new Guid("f18c5cfd-7815-4341-8da2-2c2d65778e27"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
});
migrationBuilder.CreateIndex(
name: "IX_BillAttachments_DocumentId",
table: "BillAttachments",
column: "DocumentId");
migrationBuilder.CreateIndex(
name: "IX_BillAttachments_ExpensesId",
table: "BillAttachments",
column: "ExpensesId");
migrationBuilder.CreateIndex(
name: "IX_BillAttachments_TenantId",
table: "BillAttachments",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ExpenseLogs_ExpenseId",
table: "ExpenseLogs",
column: "ExpenseId");
migrationBuilder.CreateIndex(
name: "IX_ExpenseLogs_TenantId",
table: "ExpenseLogs",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ExpenseLogs_UpdatedById",
table: "ExpenseLogs",
column: "UpdatedById");
migrationBuilder.CreateIndex(
name: "IX_Expenses_CreatedById",
table: "Expenses",
column: "CreatedById");
migrationBuilder.CreateIndex(
name: "IX_Expenses_ExpensesTypeId",
table: "Expenses",
column: "ExpensesTypeId");
migrationBuilder.CreateIndex(
name: "IX_Expenses_PaidById",
table: "Expenses",
column: "PaidById");
migrationBuilder.CreateIndex(
name: "IX_Expenses_PaymentModeId",
table: "Expenses",
column: "PaymentModeId");
migrationBuilder.CreateIndex(
name: "IX_Expenses_ProjectId",
table: "Expenses",
column: "ProjectId");
migrationBuilder.CreateIndex(
name: "IX_Expenses_StatusId",
table: "Expenses",
column: "StatusId");
migrationBuilder.CreateIndex(
name: "IX_Expenses_TenantId",
table: "Expenses",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesReimburse_ReimburseById",
table: "ExpensesReimburse",
column: "ReimburseById");
migrationBuilder.CreateIndex(
name: "IX_ExpensesReimburse_TenantId",
table: "ExpensesReimburse",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesReimburseMapping_ExpensesId",
table: "ExpensesReimburseMapping",
column: "ExpensesId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesReimburseMapping_ExpensesReimburseId",
table: "ExpensesReimburseMapping",
column: "ExpensesReimburseId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesReimburseMapping_TenantId",
table: "ExpensesReimburseMapping",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesStatusMapping_NextStatusId",
table: "ExpensesStatusMapping",
column: "NextStatusId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesStatusMapping_StatusId",
table: "ExpensesStatusMapping",
column: "StatusId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesStatusMapping_TenantId",
table: "ExpensesStatusMapping",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesStatusMaster_TenantId",
table: "ExpensesStatusMaster",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesTypeMaster_TenantId",
table: "ExpensesTypeMaster",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_PaymentModeMatser_TenantId",
table: "PaymentModeMatser",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_StatusPermissionMapping_PermissionId",
table: "StatusPermissionMapping",
column: "PermissionId");
migrationBuilder.CreateIndex(
name: "IX_StatusPermissionMapping_StatusId",
table: "StatusPermissionMapping",
column: "StatusId");
migrationBuilder.CreateIndex(
name: "IX_StatusPermissionMapping_TenantId",
table: "StatusPermissionMapping",
column: "TenantId");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "BillAttachments");
migrationBuilder.DropTable(
name: "ExpenseLogs");
migrationBuilder.DropTable(
name: "ExpensesReimburseMapping");
migrationBuilder.DropTable(
name: "ExpensesStatusMapping");
migrationBuilder.DropTable(
name: "StatusPermissionMapping");
migrationBuilder.DropTable(
name: "ExpensesReimburse");
migrationBuilder.DropTable(
name: "Expenses");
migrationBuilder.DropTable(
name: "ExpensesStatusMaster");
migrationBuilder.DropTable(
name: "ExpensesTypeMaster");
migrationBuilder.DropTable(
name: "PaymentModeMatser");
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("01e06444-9ca7-4df4-b900-8c3fa051b92f"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("0f57885d-bcb2-4711-ac95-d841ace6d5a7"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("1f4bda08-1873-449a-bb66-3e8222bd871b"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("385be49f-8fde-440e-bdbc-3dffeb8dd116"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("bdee29a2-b73b-402d-8dd1-c4b1f81ccbc3"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("ea5a1529-4ee8-4828-80ea-0e23c9d4dd11"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("eaafdd76-8aac-45f9-a530-315589c6deca"));
migrationBuilder.DeleteData(
table: "Features",
keyColumn: "Id",
keyValue: new Guid("a4e25142-449b-4334-a6e5-22f70e4732d7"));
}
}
}

View File

@ -0,0 +1,437 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Change_ExpenseStatus_To_Be_System_Scope : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_ExpensesStatusMapping_Tenants_TenantId",
table: "ExpensesStatusMapping");
migrationBuilder.DropForeignKey(
name: "FK_ExpensesStatusMaster_Tenants_TenantId",
table: "ExpensesStatusMaster");
migrationBuilder.DropForeignKey(
name: "FK_StatusPermissionMapping_Tenants_TenantId",
table: "StatusPermissionMapping");
migrationBuilder.DropIndex(
name: "IX_StatusPermissionMapping_TenantId",
table: "StatusPermissionMapping");
migrationBuilder.DropIndex(
name: "IX_ExpensesStatusMaster_TenantId",
table: "ExpensesStatusMaster");
migrationBuilder.DropIndex(
name: "IX_ExpensesStatusMapping_TenantId",
table: "ExpensesStatusMapping");
migrationBuilder.DeleteData(
table: "ExpensesStatusMapping",
keyColumn: "Id",
keyValue: new Guid("75bbda6a-6a53-47d1-ad71-5f5f9446a11e"));
migrationBuilder.DeleteData(
table: "ExpensesStatusMapping",
keyColumn: "Id",
keyValue: new Guid("fddaaf20-4ccc-4f4e-a724-dd310272b356"));
migrationBuilder.DeleteData(
table: "StatusPermissionMapping",
keyColumn: "Id",
keyValue: new Guid("4652d73f-fc71-4fe1-9f2f-1e48b342d741"));
migrationBuilder.DeleteData(
table: "StatusPermissionMapping",
keyColumn: "Id",
keyValue: new Guid("ed893799-1a5f-4311-a077-de93c86ca8fd"));
migrationBuilder.DropColumn(
name: "TenantId",
table: "StatusPermissionMapping");
migrationBuilder.DropColumn(
name: "TenantId",
table: "ExpensesStatusMaster");
migrationBuilder.DropColumn(
name: "TenantId",
table: "ExpensesStatusMapping");
migrationBuilder.AddColumn<Guid>(
name: "ApprovedById",
table: "Expenses",
type: "char(36)",
nullable: true,
collation: "ascii_general_ci");
migrationBuilder.AddColumn<Guid>(
name: "ProcessedById",
table: "Expenses",
type: "char(36)",
nullable: true,
collation: "ascii_general_ci");
migrationBuilder.AddColumn<Guid>(
name: "ReviewedById",
table: "Expenses",
type: "char(36)",
nullable: true,
collation: "ascii_general_ci");
migrationBuilder.InsertData(
table: "ExpensesStatusMapping",
columns: new[] { "Id", "NextStatusId", "StatusId" },
values: new object[] { new Guid("4ddddc10-0ffd-4884-accf-d4fa0bd97f54"), new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7"), new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729") });
migrationBuilder.UpdateData(
table: "ExpensesStatusMaster",
keyColumn: "Id",
keyValue: new Guid("61578360-3a49-4c34-8604-7b35a3787b95"),
columns: new[] { "DisplayName", "Name" },
values: new object[] { "Mark as Processed", "Processed" });
migrationBuilder.UpdateData(
table: "ExpensesStatusMaster",
keyColumn: "Id",
keyValue: new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"),
columns: new[] { "Description", "Name" },
values: new object[] { "Expense was declined, often with a reason(approval rejected).", "Rejected by Approver" });
migrationBuilder.InsertData(
table: "ExpensesStatusMaster",
columns: new[] { "Id", "Color", "Description", "DisplayName", "IsActive", "IsSystem", "Name" },
values: new object[] { new Guid("965eda62-7907-4963-b4a1-657fb0b2724b"), "#ff3e1d", "Expense was declined, often with a reason(review rejected).", "Reject", true, true, "Rejected by Reviewer" });
migrationBuilder.InsertData(
table: "StatusPermissionMapping",
columns: new[] { "Id", "PermissionId", "StatusId" },
values: new object[,]
{
{ new Guid("0b7926fc-a34b-4a5b-8c7d-1003480cf0fa"), new Guid("1f4bda08-1873-449a-bb66-3e8222bd871b"), new Guid("4068007f-c92f-4f37-a907-bc15fe57d4d8") },
{ new Guid("722b0c3c-5a78-456d-b9bb-b6ba1b21d59b"), new Guid("0f57885d-bcb2-4711-ac95-d841ace6d5a7"), new Guid("297e0d8f-f668-41b5-bfea-e03b354251c8") },
{ new Guid("7deb0945-e1c9-411f-8b3c-c9bdbe3c3c2d"), new Guid("0f57885d-bcb2-4711-ac95-d841ace6d5a7"), new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7") }
});
migrationBuilder.InsertData(
table: "ExpensesStatusMapping",
columns: new[] { "Id", "NextStatusId", "StatusId" },
values: new object[,]
{
{ new Guid("6b867bec-66e6-42a7-9611-f4595af9b9ce"), new Guid("965eda62-7907-4963-b4a1-657fb0b2724b"), new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7") },
{ new Guid("9e2ec648-1ca2-4747-9329-e911b18edb3e"), new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7"), new Guid("965eda62-7907-4963-b4a1-657fb0b2724b") }
});
migrationBuilder.InsertData(
table: "StatusPermissionMapping",
columns: new[] { "Id", "PermissionId", "StatusId" },
values: new object[] { new Guid("9e2ec648-1ca2-4747-9329-e911b18edb3e"), new Guid("1f4bda08-1873-449a-bb66-3e8222bd871b"), new Guid("965eda62-7907-4963-b4a1-657fb0b2724b") });
migrationBuilder.CreateIndex(
name: "IX_Expenses_ApprovedById",
table: "Expenses",
column: "ApprovedById");
migrationBuilder.CreateIndex(
name: "IX_Expenses_ProcessedById",
table: "Expenses",
column: "ProcessedById");
migrationBuilder.CreateIndex(
name: "IX_Expenses_ReviewedById",
table: "Expenses",
column: "ReviewedById");
migrationBuilder.AddForeignKey(
name: "FK_Expenses_Employees_ApprovedById",
table: "Expenses",
column: "ApprovedById",
principalTable: "Employees",
principalColumn: "Id");
migrationBuilder.AddForeignKey(
name: "FK_Expenses_Employees_ProcessedById",
table: "Expenses",
column: "ProcessedById",
principalTable: "Employees",
principalColumn: "Id");
migrationBuilder.AddForeignKey(
name: "FK_Expenses_Employees_ReviewedById",
table: "Expenses",
column: "ReviewedById",
principalTable: "Employees",
principalColumn: "Id");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Expenses_Employees_ApprovedById",
table: "Expenses");
migrationBuilder.DropForeignKey(
name: "FK_Expenses_Employees_ProcessedById",
table: "Expenses");
migrationBuilder.DropForeignKey(
name: "FK_Expenses_Employees_ReviewedById",
table: "Expenses");
migrationBuilder.DropIndex(
name: "IX_Expenses_ApprovedById",
table: "Expenses");
migrationBuilder.DropIndex(
name: "IX_Expenses_ProcessedById",
table: "Expenses");
migrationBuilder.DropIndex(
name: "IX_Expenses_ReviewedById",
table: "Expenses");
migrationBuilder.DeleteData(
table: "ExpensesStatusMapping",
keyColumn: "Id",
keyValue: new Guid("4ddddc10-0ffd-4884-accf-d4fa0bd97f54"));
migrationBuilder.DeleteData(
table: "ExpensesStatusMapping",
keyColumn: "Id",
keyValue: new Guid("6b867bec-66e6-42a7-9611-f4595af9b9ce"));
migrationBuilder.DeleteData(
table: "ExpensesStatusMapping",
keyColumn: "Id",
keyValue: new Guid("9e2ec648-1ca2-4747-9329-e911b18edb3e"));
migrationBuilder.DeleteData(
table: "StatusPermissionMapping",
keyColumn: "Id",
keyValue: new Guid("0b7926fc-a34b-4a5b-8c7d-1003480cf0fa"));
migrationBuilder.DeleteData(
table: "StatusPermissionMapping",
keyColumn: "Id",
keyValue: new Guid("722b0c3c-5a78-456d-b9bb-b6ba1b21d59b"));
migrationBuilder.DeleteData(
table: "StatusPermissionMapping",
keyColumn: "Id",
keyValue: new Guid("7deb0945-e1c9-411f-8b3c-c9bdbe3c3c2d"));
migrationBuilder.DeleteData(
table: "StatusPermissionMapping",
keyColumn: "Id",
keyValue: new Guid("9e2ec648-1ca2-4747-9329-e911b18edb3e"));
migrationBuilder.DeleteData(
table: "ExpensesStatusMaster",
keyColumn: "Id",
keyValue: new Guid("965eda62-7907-4963-b4a1-657fb0b2724b"));
migrationBuilder.DropColumn(
name: "ApprovedById",
table: "Expenses");
migrationBuilder.DropColumn(
name: "ProcessedById",
table: "Expenses");
migrationBuilder.DropColumn(
name: "ReviewedById",
table: "Expenses");
migrationBuilder.AddColumn<Guid>(
name: "TenantId",
table: "StatusPermissionMapping",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.AddColumn<Guid>(
name: "TenantId",
table: "ExpensesStatusMaster",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.AddColumn<Guid>(
name: "TenantId",
table: "ExpensesStatusMapping",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.UpdateData(
table: "ExpensesStatusMapping",
keyColumn: "Id",
keyValue: new Guid("1fca1700-1266-477d-bba4-9ac3753aa33c"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "ExpensesStatusMapping",
keyColumn: "Id",
keyValue: new Guid("36c00548-241c-43ec-bc95-cacebedb925c"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "ExpensesStatusMapping",
keyColumn: "Id",
keyValue: new Guid("5cf7f1df-9d1f-4289-add0-1775ad614f25"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "ExpensesStatusMapping",
keyColumn: "Id",
keyValue: new Guid("af1e4492-98ee-4451-8ab7-fd8323f29c32"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "ExpensesStatusMapping",
keyColumn: "Id",
keyValue: new Guid("ef1fcfbc-60e0-4f17-9308-c583a05d48fd"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.InsertData(
table: "ExpensesStatusMapping",
columns: new[] { "Id", "NextStatusId", "StatusId", "TenantId" },
values: new object[,]
{
{ new Guid("75bbda6a-6a53-47d1-ad71-5f5f9446a11e"), new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7"), new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("fddaaf20-4ccc-4f4e-a724-dd310272b356"), new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"), new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
});
migrationBuilder.UpdateData(
table: "ExpensesStatusMaster",
keyColumn: "Id",
keyValue: new Guid("297e0d8f-f668-41b5-bfea-e03b354251c8"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "ExpensesStatusMaster",
keyColumn: "Id",
keyValue: new Guid("4068007f-c92f-4f37-a907-bc15fe57d4d8"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "ExpensesStatusMaster",
keyColumn: "Id",
keyValue: new Guid("61578360-3a49-4c34-8604-7b35a3787b95"),
columns: new[] { "DisplayName", "Name", "TenantId" },
values: new object[] { "Mark as Paid", "Paid", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") });
migrationBuilder.UpdateData(
table: "ExpensesStatusMaster",
keyColumn: "Id",
keyValue: new Guid("6537018f-f4e9-4cb3-a210-6c3b2da999d7"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "ExpensesStatusMaster",
keyColumn: "Id",
keyValue: new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"),
columns: new[] { "Description", "Name", "TenantId" },
values: new object[] { "Expense was declined, often with a reason(either review rejected or approval rejected.", "Rejected", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") });
migrationBuilder.UpdateData(
table: "ExpensesStatusMaster",
keyColumn: "Id",
keyValue: new Guid("f18c5cfd-7815-4341-8da2-2c2d65778e27"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "StatusPermissionMapping",
keyColumn: "Id",
keyValue: new Guid("214354e5-daad-4569-ad69-eb5bf4e87fbc"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "StatusPermissionMapping",
keyColumn: "Id",
keyValue: new Guid("cd15f9b9-be45-4deb-9c71-2f23f872dbcd"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "StatusPermissionMapping",
keyColumn: "Id",
keyValue: new Guid("f6f26b2f-2fa6-40b7-8601-cbd4bcdda0cc"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.InsertData(
table: "StatusPermissionMapping",
columns: new[] { "Id", "PermissionId", "StatusId", "TenantId" },
values: new object[,]
{
{ new Guid("4652d73f-fc71-4fe1-9f2f-1e48b342d741"), new Guid("1f4bda08-1873-449a-bb66-3e8222bd871b"), new Guid("d1ee5eec-24b6-4364-8673-a8f859c60729"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("ed893799-1a5f-4311-a077-de93c86ca8fd"), new Guid("1f4bda08-1873-449a-bb66-3e8222bd871b"), new Guid("4068007f-c92f-4f37-a907-bc15fe57d4d8"), new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
});
migrationBuilder.CreateIndex(
name: "IX_StatusPermissionMapping_TenantId",
table: "StatusPermissionMapping",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesStatusMaster_TenantId",
table: "ExpensesStatusMaster",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ExpensesStatusMapping_TenantId",
table: "ExpensesStatusMapping",
column: "TenantId");
migrationBuilder.AddForeignKey(
name: "FK_ExpensesStatusMapping_Tenants_TenantId",
table: "ExpensesStatusMapping",
column: "TenantId",
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_ExpensesStatusMaster_Tenants_TenantId",
table: "ExpensesStatusMaster",
column: "TenantId",
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_StatusPermissionMapping_Tenants_TenantId",
table: "StatusPermissionMapping",
column: "TenantId",
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,57 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_CurrencyMaster_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "CurrencyMaster",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
CurrencyCode = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
CurrencyName = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Symbol = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_CurrencyMaster", x => x.Id);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.InsertData(
table: "CurrencyMaster",
columns: new[] { "Id", "CurrencyCode", "CurrencyName", "IsActive", "Symbol" },
values: new object[,]
{
{ new Guid("297e237a-56d3-48f6-b39d-ec3991dea8bf"), "JPY", "Japanese Yen", true, "¥" },
{ new Guid("2f672568-a67b-4961-acb2-a8c7834e1762"), "USD", "US Dollar", true, "$" },
{ new Guid("3e456237-ef06-4ea1-a261-188c9b0c6df6"), "GBP", "Pound Sterling", true, "£" },
{ new Guid("4d1155bb-1448-4d97-a732-96c92eb99c45"), "EUR", "Euro", true, "€" },
{ new Guid("78e96e4a-7ce0-4164-ae3a-c833ad45ec2c"), "INR", "Indian Rupee", true, "₹" },
{ new Guid("b960166a-f7e9-49e3-bb4b-28511f126c08"), "CNY", "Chinese Yuan (Renminbi)", true, "¥" },
{ new Guid("efe9b4f6-64d6-446e-a42d-1c7aaf6dd70d"), "RUB", "Russian Ruble", true, "₽" }
});
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "CurrencyMaster");
}
}
}

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,37 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_New_Parameter_In_Tenant_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<string>(
name: "OfficeNumber",
table: "Tenants",
type: "longtext",
nullable: true)
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.UpdateData(
table: "Tenants",
keyColumn: "Id",
keyValue: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"),
column: "OfficeNumber",
value: null);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "OfficeNumber",
table: "Tenants");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,28 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Fixed_Spelling_Mistake_In_Tenant_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.RenameColumn(
name: "OragnizationSize",
table: "Tenants",
newName: "OrganizationSize");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.RenameColumn(
name: "OrganizationSize",
table: "Tenants",
newName: "OragnizationSize");
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,29 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Updated_At_In_UpdateLogs : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<DateTime>(
name: "UpdateAt",
table: "ExpenseLogs",
type: "datetime(6)",
nullable: true);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "UpdateAt",
table: "ExpenseLogs");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,207 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Subscription_Related_Tables : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "SubscriptionStatus",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4")
},
constraints: table =>
{
table.PrimaryKey("PK_SubscriptionStatus", x => x.Id);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "SubscriptionPlans",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
PlanName = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
PriceQuarterly = table.Column<double>(type: "double", nullable: false),
PriceMonthly = table.Column<double>(type: "double", nullable: false),
PriceHalfMonthly = table.Column<double>(type: "double", nullable: false),
PriceYearly = table.Column<double>(type: "double", nullable: false),
TrialDays = table.Column<int>(type: "int", nullable: false),
MaxUser = table.Column<double>(type: "double", nullable: false),
MaxStorage = table.Column<double>(type: "double", nullable: false),
FeaturesId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
CreateAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
UpdateAt = table.Column<DateTime>(type: "datetime(6)", nullable: true),
CurrencyId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
CreatedById = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
UpdatedById = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_SubscriptionPlans", x => x.Id);
table.ForeignKey(
name: "FK_SubscriptionPlans_CurrencyMaster_CurrencyId",
column: x => x.CurrencyId,
principalTable: "CurrencyMaster",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_SubscriptionPlans_Employees_CreatedById",
column: x => x.CreatedById,
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_SubscriptionPlans_Employees_UpdatedById",
column: x => x.UpdatedById,
principalTable: "Employees",
principalColumn: "Id");
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "TenantSubscriptions",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
PlanId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
StartDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
EndDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
IsTrial = table.Column<bool>(type: "tinyint(1)", nullable: false),
StatusId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
CurrencyId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
NextBillingDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
CancellationDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
AutoRemew = table.Column<bool>(type: "tinyint(1)", nullable: false),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
UpdateAt = table.Column<DateTime>(type: "datetime(6)", nullable: true),
CreatedById = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
UpdatedById = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_TenantSubscriptions", x => x.Id);
table.ForeignKey(
name: "FK_TenantSubscriptions_CurrencyMaster_CurrencyId",
column: x => x.CurrencyId,
principalTable: "CurrencyMaster",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_TenantSubscriptions_Employees_CreatedById",
column: x => x.CreatedById,
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_TenantSubscriptions_Employees_UpdatedById",
column: x => x.UpdatedById,
principalTable: "Employees",
principalColumn: "Id");
table.ForeignKey(
name: "FK_TenantSubscriptions_SubscriptionPlans_PlanId",
column: x => x.PlanId,
principalTable: "SubscriptionPlans",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_TenantSubscriptions_SubscriptionStatus_StatusId",
column: x => x.StatusId,
principalTable: "SubscriptionStatus",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_TenantSubscriptions_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.InsertData(
table: "SubscriptionStatus",
columns: new[] { "Id", "Name" },
values: new object[,]
{
{ new Guid("1c0e422e-01b6-412f-b72a-1db004cc8a7f"), "Suspended" },
{ new Guid("4ed487b1-af22-4e25-aecd-b63fd850cf2d"), "InActive" },
{ new Guid("cd3a68ea-41fd-42f0-bd0c-c871c7337727"), "Active" }
});
migrationBuilder.CreateIndex(
name: "IX_SubscriptionPlans_CreatedById",
table: "SubscriptionPlans",
column: "CreatedById");
migrationBuilder.CreateIndex(
name: "IX_SubscriptionPlans_CurrencyId",
table: "SubscriptionPlans",
column: "CurrencyId");
migrationBuilder.CreateIndex(
name: "IX_SubscriptionPlans_UpdatedById",
table: "SubscriptionPlans",
column: "UpdatedById");
migrationBuilder.CreateIndex(
name: "IX_TenantSubscriptions_CreatedById",
table: "TenantSubscriptions",
column: "CreatedById");
migrationBuilder.CreateIndex(
name: "IX_TenantSubscriptions_CurrencyId",
table: "TenantSubscriptions",
column: "CurrencyId");
migrationBuilder.CreateIndex(
name: "IX_TenantSubscriptions_PlanId",
table: "TenantSubscriptions",
column: "PlanId");
migrationBuilder.CreateIndex(
name: "IX_TenantSubscriptions_StatusId",
table: "TenantSubscriptions",
column: "StatusId");
migrationBuilder.CreateIndex(
name: "IX_TenantSubscriptions_TenantId",
table: "TenantSubscriptions",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_TenantSubscriptions_UpdatedById",
table: "TenantSubscriptions",
column: "UpdatedById");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "TenantSubscriptions");
migrationBuilder.DropTable(
name: "SubscriptionPlans");
migrationBuilder.DropTable(
name: "SubscriptionStatus");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,28 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Corrected_Typo_In_Subscription_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.RenameColumn(
name: "AutoRemew",
table: "TenantSubscriptions",
newName: "AutoRenew");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.RenameColumn(
name: "AutoRenew",
table: "TenantSubscriptions",
newName: "AutoRemew");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,28 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Corrected_Typo_In_SubscriptionPlan_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.RenameColumn(
name: "PriceHalfMonthly",
table: "SubscriptionPlans",
newName: "PriceHalfYearly");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.RenameColumn(
name: "PriceHalfYearly",
table: "SubscriptionPlans",
newName: "PriceHalfMonthly");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,411 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Seprated_SubscriptionPlan_And_SubscriptionPlanDetails : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_StatusMasters_Tenants_TenantId",
table: "StatusMasters");
migrationBuilder.DropForeignKey(
name: "FK_SubscriptionPlans_CurrencyMaster_CurrencyId",
table: "SubscriptionPlans");
migrationBuilder.DropForeignKey(
name: "FK_SubscriptionPlans_Employees_CreatedById",
table: "SubscriptionPlans");
migrationBuilder.DropForeignKey(
name: "FK_SubscriptionPlans_Employees_UpdatedById",
table: "SubscriptionPlans");
migrationBuilder.DropForeignKey(
name: "FK_TenantSubscriptions_SubscriptionPlans_PlanId",
table: "TenantSubscriptions");
migrationBuilder.DropIndex(
name: "IX_SubscriptionPlans_CreatedById",
table: "SubscriptionPlans");
migrationBuilder.DropIndex(
name: "IX_SubscriptionPlans_CurrencyId",
table: "SubscriptionPlans");
migrationBuilder.DropIndex(
name: "IX_SubscriptionPlans_UpdatedById",
table: "SubscriptionPlans");
migrationBuilder.DropIndex(
name: "IX_StatusMasters_TenantId",
table: "StatusMasters");
migrationBuilder.DropColumn(
name: "CreateAt",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "CreatedById",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "CurrencyId",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "FeaturesId",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "MaxStorage",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "MaxUser",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "PriceHalfYearly",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "PriceMonthly",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "PriceQuarterly",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "PriceYearly",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "TrialDays",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "UpdateAt",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "UpdatedById",
table: "SubscriptionPlans");
migrationBuilder.DropColumn(
name: "TenantId",
table: "StatusMasters");
migrationBuilder.AddColumn<bool>(
name: "IsCancelled",
table: "TenantSubscriptions",
type: "tinyint(1)",
nullable: false,
defaultValue: false);
migrationBuilder.AddColumn<double>(
name: "MaxUsers",
table: "TenantSubscriptions",
type: "double",
nullable: false,
defaultValue: 0.0);
migrationBuilder.CreateTable(
name: "SubscriptionPlanDetails",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Price = table.Column<double>(type: "double", nullable: false),
Frequency = table.Column<int>(type: "int", nullable: false),
TrialDays = table.Column<int>(type: "int", nullable: false),
MaxUser = table.Column<double>(type: "double", nullable: false),
MaxStorage = table.Column<double>(type: "double", nullable: false),
FeaturesId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
CreateAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
UpdateAt = table.Column<DateTime>(type: "datetime(6)", nullable: true),
PlanId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
CurrencyId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
CreatedById = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
UpdatedById = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_SubscriptionPlanDetails", x => x.Id);
table.ForeignKey(
name: "FK_SubscriptionPlanDetails_CurrencyMaster_CurrencyId",
column: x => x.CurrencyId,
principalTable: "CurrencyMaster",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_SubscriptionPlanDetails_Employees_CreatedById",
column: x => x.CreatedById,
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_SubscriptionPlanDetails_Employees_UpdatedById",
column: x => x.UpdatedById,
principalTable: "Employees",
principalColumn: "Id");
table.ForeignKey(
name: "FK_SubscriptionPlanDetails_SubscriptionPlans_PlanId",
column: x => x.PlanId,
principalTable: "SubscriptionPlans",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateIndex(
name: "IX_SubscriptionPlanDetails_CreatedById",
table: "SubscriptionPlanDetails",
column: "CreatedById");
migrationBuilder.CreateIndex(
name: "IX_SubscriptionPlanDetails_CurrencyId",
table: "SubscriptionPlanDetails",
column: "CurrencyId");
migrationBuilder.CreateIndex(
name: "IX_SubscriptionPlanDetails_PlanId",
table: "SubscriptionPlanDetails",
column: "PlanId");
migrationBuilder.CreateIndex(
name: "IX_SubscriptionPlanDetails_UpdatedById",
table: "SubscriptionPlanDetails",
column: "UpdatedById");
migrationBuilder.AddForeignKey(
name: "FK_TenantSubscriptions_SubscriptionPlanDetails_PlanId",
table: "TenantSubscriptions",
column: "PlanId",
principalTable: "SubscriptionPlanDetails",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_TenantSubscriptions_SubscriptionPlanDetails_PlanId",
table: "TenantSubscriptions");
migrationBuilder.DropTable(
name: "SubscriptionPlanDetails");
migrationBuilder.DropColumn(
name: "IsCancelled",
table: "TenantSubscriptions");
migrationBuilder.DropColumn(
name: "MaxUsers",
table: "TenantSubscriptions");
migrationBuilder.AddColumn<DateTime>(
name: "CreateAt",
table: "SubscriptionPlans",
type: "datetime(6)",
nullable: false,
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
migrationBuilder.AddColumn<Guid>(
name: "CreatedById",
table: "SubscriptionPlans",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.AddColumn<Guid>(
name: "CurrencyId",
table: "SubscriptionPlans",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.AddColumn<Guid>(
name: "FeaturesId",
table: "SubscriptionPlans",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.AddColumn<double>(
name: "MaxStorage",
table: "SubscriptionPlans",
type: "double",
nullable: false,
defaultValue: 0.0);
migrationBuilder.AddColumn<double>(
name: "MaxUser",
table: "SubscriptionPlans",
type: "double",
nullable: false,
defaultValue: 0.0);
migrationBuilder.AddColumn<double>(
name: "PriceHalfYearly",
table: "SubscriptionPlans",
type: "double",
nullable: false,
defaultValue: 0.0);
migrationBuilder.AddColumn<double>(
name: "PriceMonthly",
table: "SubscriptionPlans",
type: "double",
nullable: false,
defaultValue: 0.0);
migrationBuilder.AddColumn<double>(
name: "PriceQuarterly",
table: "SubscriptionPlans",
type: "double",
nullable: false,
defaultValue: 0.0);
migrationBuilder.AddColumn<double>(
name: "PriceYearly",
table: "SubscriptionPlans",
type: "double",
nullable: false,
defaultValue: 0.0);
migrationBuilder.AddColumn<int>(
name: "TrialDays",
table: "SubscriptionPlans",
type: "int",
nullable: false,
defaultValue: 0);
migrationBuilder.AddColumn<DateTime>(
name: "UpdateAt",
table: "SubscriptionPlans",
type: "datetime(6)",
nullable: true);
migrationBuilder.AddColumn<Guid>(
name: "UpdatedById",
table: "SubscriptionPlans",
type: "char(36)",
nullable: true,
collation: "ascii_general_ci");
migrationBuilder.AddColumn<Guid>(
name: "TenantId",
table: "StatusMasters",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.UpdateData(
table: "StatusMasters",
keyColumn: "Id",
keyValue: new Guid("33deaef9-9af1-4f2a-b443-681ea0d04f81"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "StatusMasters",
keyColumn: "Id",
keyValue: new Guid("603e994b-a27f-4e5d-a251-f3d69b0498ba"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "StatusMasters",
keyColumn: "Id",
keyValue: new Guid("b74da4c2-d07e-46f2-9919-e75e49b12731"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "StatusMasters",
keyColumn: "Id",
keyValue: new Guid("cdad86aa-8a56-4ff4-b633-9c629057dfef"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.UpdateData(
table: "StatusMasters",
keyColumn: "Id",
keyValue: new Guid("ef1c356e-0fe0-42df-a5d3-8daee355492d"),
column: "TenantId",
value: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"));
migrationBuilder.CreateIndex(
name: "IX_SubscriptionPlans_CreatedById",
table: "SubscriptionPlans",
column: "CreatedById");
migrationBuilder.CreateIndex(
name: "IX_SubscriptionPlans_CurrencyId",
table: "SubscriptionPlans",
column: "CurrencyId");
migrationBuilder.CreateIndex(
name: "IX_SubscriptionPlans_UpdatedById",
table: "SubscriptionPlans",
column: "UpdatedById");
migrationBuilder.CreateIndex(
name: "IX_StatusMasters_TenantId",
table: "StatusMasters",
column: "TenantId");
migrationBuilder.AddForeignKey(
name: "FK_StatusMasters_Tenants_TenantId",
table: "StatusMasters",
column: "TenantId",
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_SubscriptionPlans_CurrencyMaster_CurrencyId",
table: "SubscriptionPlans",
column: "CurrencyId",
principalTable: "CurrencyMaster",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_SubscriptionPlans_Employees_CreatedById",
table: "SubscriptionPlans",
column: "CreatedById",
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_SubscriptionPlans_Employees_UpdatedById",
table: "SubscriptionPlans",
column: "UpdatedById",
principalTable: "Employees",
principalColumn: "Id");
migrationBuilder.AddForeignKey(
name: "FK_TenantSubscriptions_SubscriptionPlans_PlanId",
table: "TenantSubscriptions",
column: "PlanId",
principalTable: "SubscriptionPlans",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,49 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_FCMTokenMApping_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "FCMTokenMappings",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
EmployeeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
FcmToken = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_FCMTokenMappings", x => x.Id);
table.ForeignKey(
name: "FK_FCMTokenMappings_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateIndex(
name: "IX_FCMTokenMappings_TenantId",
table: "FCMTokenMappings",
column: "TenantId");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "FCMTokenMappings");
}
}
}

File diff suppressed because it is too large Load Diff

View File

@ -0,0 +1,30 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Expriy_Date_In_FCMMapping_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<DateTime>(
name: "ExpiredAt",
table: "FCMTokenMappings",
type: "datetime(6)",
nullable: false,
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified));
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "ExpiredAt",
table: "FCMTokenMappings");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,488 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Document_Manager_Tables : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "DocumentTagMasters",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_DocumentTagMasters", x => x.Id);
table.ForeignKey(
name: "FK_DocumentTagMasters_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "EntityTypeMasters",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4")
},
constraints: table =>
{
table.PrimaryKey("PK_EntityTypeMasters", x => x.Id);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "DocumentCategoryMasters",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
EntityTypeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_DocumentCategoryMasters", x => x.Id);
table.ForeignKey(
name: "FK_DocumentCategoryMasters_EntityTypeMasters_EntityTypeId",
column: x => x.EntityTypeId,
principalTable: "EntityTypeMasters",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_DocumentCategoryMasters_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "DocumentTypeMasters",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
RegexExpression = table.Column<string>(type: "longtext", nullable: true)
.Annotation("MySql:CharSet", "utf8mb4"),
AllowedContentType = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
MaxSizeAllowedInMB = table.Column<double>(type: "double", nullable: false),
IsValidationRequired = table.Column<bool>(type: "tinyint(1)", nullable: false),
IsMandatory = table.Column<bool>(type: "tinyint(1)", nullable: false),
IsSystem = table.Column<bool>(type: "tinyint(1)", nullable: false),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
DocumentCategoryId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_DocumentTypeMasters", x => x.Id);
table.ForeignKey(
name: "FK_DocumentTypeMasters_DocumentCategoryMasters_DocumentCategory~",
column: x => x.DocumentCategoryId,
principalTable: "DocumentCategoryMasters",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_DocumentTypeMasters_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "DocumentAttachments",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
DocumentId = table.Column<string>(type: "longtext", nullable: true)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
UploadedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
UploadedById = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
UpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
UpdatedById = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
VerifiedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
IsVerified = table.Column<bool>(type: "tinyint(1)", nullable: true),
VerifiedById = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
EntityId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
DocumentTypeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_DocumentAttachments", x => x.Id);
table.ForeignKey(
name: "FK_DocumentAttachments_DocumentTypeMasters_DocumentTypeId",
column: x => x.DocumentTypeId,
principalTable: "DocumentTypeMasters",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_DocumentAttachments_Employees_UpdatedById",
column: x => x.UpdatedById,
principalTable: "Employees",
principalColumn: "Id");
table.ForeignKey(
name: "FK_DocumentAttachments_Employees_UploadedById",
column: x => x.UploadedById,
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_DocumentAttachments_Employees_VerifiedById",
column: x => x.VerifiedById,
principalTable: "Employees",
principalColumn: "Id");
table.ForeignKey(
name: "FK_DocumentAttachments_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "AttachmentTagMappings",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
DocumentTagId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
AttachmentId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_AttachmentTagMappings", x => x.Id);
table.ForeignKey(
name: "FK_AttachmentTagMappings_DocumentAttachments_AttachmentId",
column: x => x.AttachmentId,
principalTable: "DocumentAttachments",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_AttachmentTagMappings_DocumentTagMasters_DocumentTagId",
column: x => x.DocumentTagId,
principalTable: "DocumentTagMasters",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_AttachmentTagMappings_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "AttachmentVersionMappings",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ParentAttachmentId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Version = table.Column<int>(type: "int", nullable: false),
ChildAttachmentId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_AttachmentVersionMappings", x => x.Id);
table.ForeignKey(
name: "FK_AttachmentVersionMappings_DocumentAttachments_ChildAttachmen~",
column: x => x.ChildAttachmentId,
principalTable: "DocumentAttachments",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_AttachmentVersionMappings_DocumentAttachments_ParentAttachme~",
column: x => x.ParentAttachmentId,
principalTable: "DocumentAttachments",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_AttachmentVersionMappings_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "DocumentAttachmentMappings",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
DocumentId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
AttachmentId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_DocumentAttachmentMappings", x => x.Id);
table.ForeignKey(
name: "FK_DocumentAttachmentMappings_DocumentAttachments_AttachmentId",
column: x => x.AttachmentId,
principalTable: "DocumentAttachments",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_DocumentAttachmentMappings_Documents_DocumentId",
column: x => x.DocumentId,
principalTable: "Documents",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_DocumentAttachmentMappings_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.InsertData(
table: "EntityTypeMasters",
columns: new[] { "Id", "Description", "Name" },
values: new object[,]
{
{ new Guid("c8fe7115-aa27-43bc-99f4-7b05fabe436e"), "Emtities related to project.", "Project Entity" },
{ new Guid("dbb9555a-7a0c-40f2-a9ed-f0463f1ceed7"), "Employee related entitie", "Employee Entity" }
});
migrationBuilder.InsertData(
table: "Features",
columns: new[] { "Id", "Description", "IsActive", "ModuleId", "Name" },
values: new object[] { new Guid("a8cf4331-8f04-4961-8360-a3f7c3cc7462"), "Manage Document", true, new Guid("2a231490-bcb1-4bdd-91f1-f25fb7f25b23"), "Document Management" });
migrationBuilder.InsertData(
table: "DocumentCategoryMasters",
columns: new[] { "Id", "CreatedAt", "Description", "EntityTypeId", "Name", "TenantId" },
values: new object[,]
{
{ new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"), new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8157), "Employment details along with legal IDs like passports or drivers licenses to verify identity and work authorization.", new Guid("dbb9555a-7a0c-40f2-a9ed-f0463f1ceed7"), "Employee Documents", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"), new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8150), "Project documents are formal records that outline the plans, progress, and details necessary to execute and manage a project effectively.", new Guid("c8fe7115-aa27-43bc-99f4-7b05fabe436e"), "Project Documents", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
});
migrationBuilder.InsertData(
table: "FeaturePermissions",
columns: new[] { "Id", "Description", "FeatureId", "IsEnabled", "Name" },
values: new object[,]
{
{ new Guid("13a1f30f-38d1-41bf-8e7a-b75189aab8e0"), "Grants a user the authority to verify the document", new Guid("a8cf4331-8f04-4961-8360-a3f7c3cc7462"), true, "Verify Document" },
{ new Guid("3f6d1f67-6fa5-4b7c-b17b-018d4fe4aab8"), "Grants a user the authority to upload the document", new Guid("a8cf4331-8f04-4961-8360-a3f7c3cc7462"), true, "Upload Document" },
{ new Guid("40863a13-5a66-469d-9b48-135bc5dbf486"), "Grants a user the authority to delete the document", new Guid("a8cf4331-8f04-4961-8360-a3f7c3cc7462"), true, "Delete Document" },
{ new Guid("71189504-f1c8-4ca5-8db6-810497be2854"), "Grants a user the authority to view all documents related to employees and projects", new Guid("a8cf4331-8f04-4961-8360-a3f7c3cc7462"), true, "View Document" },
{ new Guid("c423fd81-6273-4b9d-bb5e-76a0fb343833"), "Grants a user the authority to modify document", new Guid("a8cf4331-8f04-4961-8360-a3f7c3cc7462"), true, "Mofify Document" }
});
migrationBuilder.InsertData(
table: "DocumentTypeMasters",
columns: new[] { "Id", "AllowedContentType", "CreatedAt", "DocumentCategoryId", "IsActive", "IsMandatory", "IsSystem", "IsValidationRequired", "MaxSizeAllowedInMB", "Name", "RegexExpression", "TenantId" },
values: new object[,]
{
{ new Guid("07ca7182-9ac0-4407-b988-59901170cb86"), "application/pdf,application/msword,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8229), new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"), true, false, true, false, 1.0, "Letter of Agreement", null, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"), "application/pdf", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8216), new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"), true, true, true, true, 2.0, "Passport", "^[A-PR-WY][1-9]\\d\\s?\\d{4}[1-9]$", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"), "application/pdf,application/msword,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8222), new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"), true, false, true, false, 1.0, "Bill of Quantities (BOQ)", null, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"), "application/pdf", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8212), new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"), true, true, true, true, 2.0, "Voter Card", "^[A-Z]{3}[0-9]{7}$", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"), "application/pdf", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8204), new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"), true, true, true, true, 2.0, "Aadhaar card", "^[2-9][0-9]{11}$", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"), "application/pdf,image/vnd.dwg,application/acad", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8238), new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"), true, false, true, false, 20.0, "Drawings", null, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"), "application/pdf", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8209), new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"), true, true, true, true, 2.0, "Pan Card", "^[A-Z]{5}[0-9]{4}[A-Z]{1}$", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("7cc41c91-23cb-442b-badd-f932138d149f"), "application/pdf,application/msword,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8235), new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"), true, false, true, false, 1.0, "Standard Operating Procedure (SOP)", null, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"), "application/pdf,application/msword,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8232), new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"), true, false, true, false, 1.0, "Health and Safety Document", null, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"), "application/pdf,application/msword,application/vnd.ms-excel,application/vnd.openxmlformats-officedocument.spreadsheetml.sheet,application/vnd.openxmlformats-officedocument.wordprocessingml.document", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8226), new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"), true, false, true, false, 1.0, "Work Order", null, new Guid("b3466e83-7e11-464c-b93a-daf047838b26") },
{ new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"), "application/pdf", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8219), new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"), true, true, true, true, 2.0, "Bank Passbook", "^\\d{9,18}$", new Guid("b3466e83-7e11-464c-b93a-daf047838b26") }
});
migrationBuilder.CreateIndex(
name: "IX_AttachmentTagMappings_AttachmentId",
table: "AttachmentTagMappings",
column: "AttachmentId");
migrationBuilder.CreateIndex(
name: "IX_AttachmentTagMappings_DocumentTagId",
table: "AttachmentTagMappings",
column: "DocumentTagId");
migrationBuilder.CreateIndex(
name: "IX_AttachmentTagMappings_TenantId",
table: "AttachmentTagMappings",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_AttachmentVersionMappings_ChildAttachmentId",
table: "AttachmentVersionMappings",
column: "ChildAttachmentId");
migrationBuilder.CreateIndex(
name: "IX_AttachmentVersionMappings_ParentAttachmentId",
table: "AttachmentVersionMappings",
column: "ParentAttachmentId");
migrationBuilder.CreateIndex(
name: "IX_AttachmentVersionMappings_TenantId",
table: "AttachmentVersionMappings",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachmentMappings_AttachmentId",
table: "DocumentAttachmentMappings",
column: "AttachmentId");
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachmentMappings_DocumentId",
table: "DocumentAttachmentMappings",
column: "DocumentId");
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachmentMappings_TenantId",
table: "DocumentAttachmentMappings",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachments_DocumentTypeId",
table: "DocumentAttachments",
column: "DocumentTypeId");
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachments_TenantId",
table: "DocumentAttachments",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachments_UpdatedById",
table: "DocumentAttachments",
column: "UpdatedById");
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachments_UploadedById",
table: "DocumentAttachments",
column: "UploadedById");
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachments_VerifiedById",
table: "DocumentAttachments",
column: "VerifiedById");
migrationBuilder.CreateIndex(
name: "IX_DocumentCategoryMasters_EntityTypeId",
table: "DocumentCategoryMasters",
column: "EntityTypeId");
migrationBuilder.CreateIndex(
name: "IX_DocumentCategoryMasters_TenantId",
table: "DocumentCategoryMasters",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_DocumentTagMasters_TenantId",
table: "DocumentTagMasters",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_DocumentTypeMasters_DocumentCategoryId",
table: "DocumentTypeMasters",
column: "DocumentCategoryId");
migrationBuilder.CreateIndex(
name: "IX_DocumentTypeMasters_TenantId",
table: "DocumentTypeMasters",
column: "TenantId");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "AttachmentTagMappings");
migrationBuilder.DropTable(
name: "AttachmentVersionMappings");
migrationBuilder.DropTable(
name: "DocumentAttachmentMappings");
migrationBuilder.DropTable(
name: "DocumentTagMasters");
migrationBuilder.DropTable(
name: "DocumentAttachments");
migrationBuilder.DropTable(
name: "DocumentTypeMasters");
migrationBuilder.DropTable(
name: "DocumentCategoryMasters");
migrationBuilder.DropTable(
name: "EntityTypeMasters");
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("13a1f30f-38d1-41bf-8e7a-b75189aab8e0"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("3f6d1f67-6fa5-4b7c-b17b-018d4fe4aab8"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("40863a13-5a66-469d-9b48-135bc5dbf486"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("71189504-f1c8-4ca5-8db6-810497be2854"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("c423fd81-6273-4b9d-bb5e-76a0fb343833"));
migrationBuilder.DeleteData(
table: "Features",
keyColumn: "Id",
keyValue: new Guid("a8cf4331-8f04-4961-8360-a3f7c3cc7462"));
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,285 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Removed_DocumentAttachmentyMapping_And_Added : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "DocumentAttachmentMappings");
migrationBuilder.AddColumn<Guid>(
name: "DocumentDataId",
table: "DocumentAttachments",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7895));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7887));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7995));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
columns: new[] { "AllowedContentType", "CreatedAt" },
values: new object[] { "application/pdf,image/jpeg", new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7975) });
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7984));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
columns: new[] { "AllowedContentType", "CreatedAt" },
values: new object[] { "application/pdf,image/jpeg", new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7971) });
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
columns: new[] { "AllowedContentType", "CreatedAt" },
values: new object[] { "application/pdf,image/jpeg", new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7958) });
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(8008));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
columns: new[] { "AllowedContentType", "CreatedAt" },
values: new object[] { "application/pdf,image/jpeg", new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7966) });
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(8004));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(8000));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7991));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
columns: new[] { "AllowedContentType", "CreatedAt" },
values: new object[] { "application/pdf,image/jpeg", new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7980) });
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachments_DocumentDataId",
table: "DocumentAttachments",
column: "DocumentDataId");
migrationBuilder.AddForeignKey(
name: "FK_DocumentAttachments_Documents_DocumentDataId",
table: "DocumentAttachments",
column: "DocumentDataId",
principalTable: "Documents",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_DocumentAttachments_Documents_DocumentDataId",
table: "DocumentAttachments");
migrationBuilder.DropIndex(
name: "IX_DocumentAttachments_DocumentDataId",
table: "DocumentAttachments");
migrationBuilder.DropColumn(
name: "DocumentDataId",
table: "DocumentAttachments");
migrationBuilder.CreateTable(
name: "DocumentAttachmentMappings",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
AttachmentId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
DocumentId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_DocumentAttachmentMappings", x => x.Id);
table.ForeignKey(
name: "FK_DocumentAttachmentMappings_DocumentAttachments_AttachmentId",
column: x => x.AttachmentId,
principalTable: "DocumentAttachments",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_DocumentAttachmentMappings_Documents_DocumentId",
column: x => x.DocumentId,
principalTable: "Documents",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_DocumentAttachmentMappings_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8157));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8150));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8229));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
columns: new[] { "AllowedContentType", "CreatedAt" },
values: new object[] { "application/pdf", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8216) });
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8222));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
columns: new[] { "AllowedContentType", "CreatedAt" },
values: new object[] { "application/pdf", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8212) });
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
columns: new[] { "AllowedContentType", "CreatedAt" },
values: new object[] { "application/pdf", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8204) });
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8238));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
columns: new[] { "AllowedContentType", "CreatedAt" },
values: new object[] { "application/pdf", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8209) });
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8235));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8232));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8226));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
columns: new[] { "AllowedContentType", "CreatedAt" },
values: new object[] { "application/pdf", new DateTime(2025, 8, 28, 5, 50, 2, 39, DateTimeKind.Utc).AddTicks(8219) });
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachmentMappings_AttachmentId",
table: "DocumentAttachmentMappings",
column: "AttachmentId");
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachmentMappings_DocumentId",
table: "DocumentAttachmentMappings",
column: "DocumentId");
migrationBuilder.CreateIndex(
name: "IX_DocumentAttachmentMappings_TenantId",
table: "DocumentAttachmentMappings",
column: "TenantId");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,212 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_IsCurrentVersion_Field_In_Document_Attachment : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<bool>(
name: "IsCurrentVersion",
table: "DocumentAttachments",
type: "tinyint(1)",
nullable: false,
defaultValue: false);
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1227));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1217));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1308));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1293));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1300));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1289));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1275));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1391));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1284));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1388));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1384));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1305));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1297));
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "IsCurrentVersion",
table: "DocumentAttachments");
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7895));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7887));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7995));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7975));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7984));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7971));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7958));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(8008));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7966));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(8004));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(8000));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7991));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 9, 22, 46, 902, DateTimeKind.Utc).AddTicks(7980));
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,237 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Modified_UpdatedAt_And_VerifiedAt_To_Nullable : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AlterColumn<DateTime>(
name: "VerifiedAt",
table: "DocumentAttachments",
type: "datetime(6)",
nullable: true,
oldClrType: typeof(DateTime),
oldType: "datetime(6)");
migrationBuilder.AlterColumn<DateTime>(
name: "UpdatedAt",
table: "DocumentAttachments",
type: "datetime(6)",
nullable: true,
oldClrType: typeof(DateTime),
oldType: "datetime(6)");
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(8988));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(8981));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9059));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9042));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9051));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9038));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9028));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9072));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9034));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9068));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9063));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9055));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9046));
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.AlterColumn<DateTime>(
name: "VerifiedAt",
table: "DocumentAttachments",
type: "datetime(6)",
nullable: false,
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified),
oldClrType: typeof(DateTime),
oldType: "datetime(6)",
oldNullable: true);
migrationBuilder.AlterColumn<DateTime>(
name: "UpdatedAt",
table: "DocumentAttachments",
type: "datetime(6)",
nullable: false,
defaultValue: new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified),
oldClrType: typeof(DateTime),
oldType: "datetime(6)",
oldNullable: true);
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1227));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1217));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1308));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1293));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1300));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1289));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1275));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1391));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1284));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1388));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1384));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1305));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 11, 44, 468, DateTimeKind.Utc).AddTicks(1297));
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,211 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_New_Permission_To_Download_Document : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2627));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2617));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2718));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2700));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2710));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2695));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2684));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2731));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2690));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2727));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2722));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2714));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2705));
migrationBuilder.InsertData(
table: "FeaturePermissions",
columns: new[] { "Id", "Description", "FeatureId", "IsEnabled", "Name" },
values: new object[] { new Guid("404373d0-860f-490e-a575-1c086ffbce1d"), "Grants a user the authority to download the document", new Guid("a8cf4331-8f04-4961-8360-a3f7c3cc7462"), true, "Download Document" });
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("404373d0-860f-490e-a575-1c086ffbce1d"));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(8988));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(8981));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9059));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9042));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9051));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9038));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9028));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9072));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9034));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9068));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9063));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9055));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 28, 11, 18, 55, 873, DateTimeKind.Utc).AddTicks(9046));
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,264 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Project_Level_Permssion_Mapping_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateTable(
name: "ProjectLevelPermissionMappings",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
EmployeeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ProjectId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
PermissionId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ProjectLevelPermissionMappings", x => x.Id);
table.ForeignKey(
name: "FK_ProjectLevelPermissionMappings_Employees_EmployeeId",
column: x => x.EmployeeId,
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ProjectLevelPermissionMappings_FeaturePermissions_Permission~",
column: x => x.PermissionId,
principalTable: "FeaturePermissions",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ProjectLevelPermissionMappings_Projects_ProjectId",
column: x => x.ProjectId,
principalTable: "Projects",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ProjectLevelPermissionMappings_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6233));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6226));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6307));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6290));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6298));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6286));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6275));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6319));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6282));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6314));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6311));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6302));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6295));
migrationBuilder.CreateIndex(
name: "IX_ProjectLevelPermissionMappings_EmployeeId",
table: "ProjectLevelPermissionMappings",
column: "EmployeeId");
migrationBuilder.CreateIndex(
name: "IX_ProjectLevelPermissionMappings_PermissionId",
table: "ProjectLevelPermissionMappings",
column: "PermissionId");
migrationBuilder.CreateIndex(
name: "IX_ProjectLevelPermissionMappings_ProjectId",
table: "ProjectLevelPermissionMappings",
column: "ProjectId");
migrationBuilder.CreateIndex(
name: "IX_ProjectLevelPermissionMappings_TenantId",
table: "ProjectLevelPermissionMappings",
column: "TenantId");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropTable(
name: "ProjectLevelPermissionMappings");
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2627));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2617));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2718));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2700));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2710));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2695));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2684));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2731));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2690));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2727));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2722));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2714));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 8, 30, 4, 55, 10, 359, DateTimeKind.Utc).AddTicks(2705));
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,268 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_IsAttachmentRequried_Parameter_In_ExpensesTypeMaster_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<bool>(
name: "IsAttachmentRequried",
table: "ExpensesTypeMaster",
type: "tinyint(1)",
nullable: false,
defaultValue: false);
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 9, 12, 7, 6, 13, 429, DateTimeKind.Utc).AddTicks(3323));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 9, 12, 7, 6, 13, 429, DateTimeKind.Utc).AddTicks(3316));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "ExpensesTypeMaster",
keyColumn: "Id",
keyValue: new Guid("1e2d697a-76b4-4be8-bc66-87144561a1a0"),
column: "IsAttachmentRequried",
value: true);
migrationBuilder.UpdateData(
table: "ExpensesTypeMaster",
keyColumn: "Id",
keyValue: new Guid("2de53163-0dbd-404b-8e60-1b02e6b4886a"),
column: "IsAttachmentRequried",
value: false);
migrationBuilder.UpdateData(
table: "ExpensesTypeMaster",
keyColumn: "Id",
keyValue: new Guid("4842fa61-64eb-4241-aebd-8282065af9f9"),
column: "IsAttachmentRequried",
value: true);
migrationBuilder.UpdateData(
table: "ExpensesTypeMaster",
keyColumn: "Id",
keyValue: new Guid("52484820-1b54-4865-8f0f-baa2b1d339b9"),
column: "IsAttachmentRequried",
value: true);
migrationBuilder.UpdateData(
table: "ExpensesTypeMaster",
keyColumn: "Id",
keyValue: new Guid("5e0c6227-d49d-41ff-9f1f-781f0aee2469"),
column: "IsAttachmentRequried",
value: true);
migrationBuilder.UpdateData(
table: "ExpensesTypeMaster",
keyColumn: "Id",
keyValue: new Guid("77013784-9324-4d8b-bd36-d6f928e68942"),
column: "IsAttachmentRequried",
value: true);
migrationBuilder.UpdateData(
table: "ExpensesTypeMaster",
keyColumn: "Id",
keyValue: new Guid("dd120bc4-ab0a-45ba-8450-5cd45ff221ca"),
column: "IsAttachmentRequried",
value: false);
migrationBuilder.UpdateData(
table: "ExpensesTypeMaster",
keyColumn: "Id",
keyValue: new Guid("fc59eb90-98ea-481c-b421-54bfa9e42d8f"),
column: "IsAttachmentRequried",
value: true);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "IsAttachmentRequried",
table: "ExpensesTypeMaster");
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6233));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6226));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6307));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6290));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6298));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6286));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6275));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6319));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6282));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6314));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6311));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6302));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6295));
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,757 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Tables_Related_To_Organizations : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.UpdateData(
table: "ActivityMasters",
keyColumn: "UnitOfMeasurement",
keyValue: null,
column: "UnitOfMeasurement",
value: "");
migrationBuilder.AlterColumn<string>(
name: "UnitOfMeasurement",
table: "ActivityMasters",
type: "longtext",
nullable: false,
oldClrType: typeof(string),
oldType: "longtext",
oldNullable: true)
.Annotation("MySql:CharSet", "utf8mb4")
.OldAnnotation("MySql:CharSet", "utf8mb4");
migrationBuilder.UpdateData(
table: "ActivityMasters",
keyColumn: "ActivityName",
keyValue: null,
column: "ActivityName",
value: "");
migrationBuilder.AlterColumn<string>(
name: "ActivityName",
table: "ActivityMasters",
type: "longtext",
nullable: false,
oldClrType: typeof(string),
oldType: "longtext",
oldNullable: true)
.Annotation("MySql:CharSet", "utf8mb4")
.OldAnnotation("MySql:CharSet", "utf8mb4");
migrationBuilder.AddColumn<Guid>(
name: "ActivityGroupId",
table: "ActivityMasters",
type: "char(36)",
nullable: true,
collation: "ascii_general_ci");
migrationBuilder.AddColumn<bool>(
name: "IsSystem",
table: "ActivityMasters",
type: "tinyint(1)",
nullable: false,
defaultValue: false);
migrationBuilder.CreateTable(
name: "GlobalServiceMasters",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4")
},
constraints: table =>
{
table.PrimaryKey("PK_GlobalServiceMasters", x => x.Id);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "Organizations",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Email = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
ContactPerson = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Address = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
ContactNumber = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
SPRID = table.Column<double>(type: "double", nullable: false),
CreatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: false),
CreatedById = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
UpdatedById = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"),
UpdatedAt = table.Column<DateTime>(type: "datetime(6)", nullable: true),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_Organizations", x => x.Id);
table.ForeignKey(
name: "FK_Organizations_Employees_CreatedById",
column: x => x.CreatedById,
principalTable: "Employees",
principalColumn: "Id");
table.ForeignKey(
name: "FK_Organizations_Employees_UpdatedById",
column: x => x.UpdatedById,
principalTable: "Employees",
principalColumn: "Id");
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "OrgTypeMasters",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4")
},
constraints: table =>
{
table.PrimaryKey("PK_OrgTypeMasters", x => x.Id);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "ServiceMasters",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
IsSystem = table.Column<bool>(type: "tinyint(1)", nullable: false),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ServiceMasters", x => x.Id);
table.ForeignKey(
name: "FK_ServiceMasters_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "GlobalActivityGroupMasters",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
ServiceId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_GlobalActivityGroupMasters", x => x.Id);
table.ForeignKey(
name: "FK_GlobalActivityGroupMasters_GlobalServiceMasters_ServiceId",
column: x => x.ServiceId,
principalTable: "GlobalServiceMasters",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "OrgServiceMappings",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
OrganizationId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ServiceId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_OrgServiceMappings", x => x.Id);
table.ForeignKey(
name: "FK_OrgServiceMappings_GlobalServiceMasters_ServiceId",
column: x => x.ServiceId,
principalTable: "GlobalServiceMasters",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_OrgServiceMappings_Organizations_OrganizationId",
column: x => x.OrganizationId,
principalTable: "Organizations",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "TenantOrgMappings",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
OrganizationId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
SPRID = table.Column<double>(type: "double", nullable: false),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false),
AssignedDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
ReassignedDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_TenantOrgMappings", x => x.Id);
table.ForeignKey(
name: "FK_TenantOrgMappings_Organizations_OrganizationId",
column: x => x.OrganizationId,
principalTable: "Organizations",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_TenantOrgMappings_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "ActivityGroupMasters",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
Name = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
Description = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
ServiceId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
IsSystem = table.Column<bool>(type: "tinyint(1)", nullable: false),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ActivityGroupMasters", x => x.Id);
table.ForeignKey(
name: "FK_ActivityGroupMasters_ServiceMasters_ServiceId",
column: x => x.ServiceId,
principalTable: "ServiceMasters",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ActivityGroupMasters_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "ProjectServiceMappings",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ServiceId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ProjectId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
PlannedStartDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
PlannedEndDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
ActualStartDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
ActualEndDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ProjectServiceMappings", x => x.Id);
table.ForeignKey(
name: "FK_ProjectServiceMappings_Projects_ProjectId",
column: x => x.ProjectId,
principalTable: "Projects",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ProjectServiceMappings_ServiceMasters_ServiceId",
column: x => x.ServiceId,
principalTable: "ServiceMasters",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ProjectServiceMappings_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "GlobalActivityMasters",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ActivityName = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
UnitOfMeasurement = table.Column<string>(type: "longtext", nullable: false)
.Annotation("MySql:CharSet", "utf8mb4"),
ActivityGroupId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
IsActive = table.Column<bool>(type: "tinyint(1)", nullable: false)
},
constraints: table =>
{
table.PrimaryKey("PK_GlobalActivityMasters", x => x.Id);
table.ForeignKey(
name: "FK_GlobalActivityMasters_GlobalActivityGroupMasters_ActivityGro~",
column: x => x.ActivityGroupId,
principalTable: "GlobalActivityGroupMasters",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.CreateTable(
name: "ProjectOrgMappings",
columns: table => new
{
Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
OrganizationId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ParentOrganizationId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
ProjectServiceId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
OrganizationTypeId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"),
AssignedDate = table.Column<DateTime>(type: "datetime(6)", nullable: false),
CompletionDate = table.Column<DateTime>(type: "datetime(6)", nullable: true),
TenantId = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci")
},
constraints: table =>
{
table.PrimaryKey("PK_ProjectOrgMappings", x => x.Id);
table.ForeignKey(
name: "FK_ProjectOrgMappings_OrgTypeMasters_OrganizationTypeId",
column: x => x.OrganizationTypeId,
principalTable: "OrgTypeMasters",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ProjectOrgMappings_Organizations_OrganizationId",
column: x => x.OrganizationId,
principalTable: "Organizations",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ProjectOrgMappings_Organizations_ParentOrganizationId",
column: x => x.ParentOrganizationId,
principalTable: "Organizations",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ProjectOrgMappings_ProjectServiceMappings_ProjectServiceId",
column: x => x.ProjectServiceId,
principalTable: "ProjectServiceMappings",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
table.ForeignKey(
name: "FK_ProjectOrgMappings_Tenants_TenantId",
column: x => x.TenantId,
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
})
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 9, 15, 12, 42, 3, 202, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 9, 15, 12, 42, 3, 202, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc));
migrationBuilder.InsertData(
table: "OrgTypeMasters",
columns: new[] { "Id", "Name" },
values: new object[,]
{
{ new Guid("5ee49bcd-b6d3-482f-9aaf-484afe04abec"), "Service Provider" },
{ new Guid("743806fe-d991-4079-b223-e4e2da44f435"), "Tenant" },
{ new Guid("a283356a-9b02-4029-afb7-e65c703efdd4"), "Sub-Contractor" },
{ new Guid("b1877a3b-8832-47b1-bbe3-dc7e98672f49"), "PMC" }
});
migrationBuilder.InsertData(
table: "Organizations",
columns: new[] { "Id", "Address", "ContactNumber", "ContactPerson", "CreatedAt", "CreatedById", "Email", "IsActive", "Name", "SPRID", "UpdatedAt", "UpdatedById" },
values: new object[] { new Guid("4e3a6d31-c640-40f7-8d67-6c109fcdb9ea"), "2nd Floor, Fullora Building, Tejas CHS, behind Kothrud Stand, Tejas Society, Dahanukar Colony, Kothrud, Pune, Maharashtra 411038", "123456789", "Admin", new DateTime(1, 1, 1, 0, 0, 0, 0, DateTimeKind.Unspecified), null, "admin@marcoaiot.com", true, "MarcoBMS", 5400.0, null, null });
migrationBuilder.CreateIndex(
name: "IX_ActivityMasters_ActivityGroupId",
table: "ActivityMasters",
column: "ActivityGroupId");
migrationBuilder.CreateIndex(
name: "IX_ActivityGroupMasters_ServiceId",
table: "ActivityGroupMasters",
column: "ServiceId");
migrationBuilder.CreateIndex(
name: "IX_ActivityGroupMasters_TenantId",
table: "ActivityGroupMasters",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_GlobalActivityGroupMasters_ServiceId",
table: "GlobalActivityGroupMasters",
column: "ServiceId");
migrationBuilder.CreateIndex(
name: "IX_GlobalActivityMasters_ActivityGroupId",
table: "GlobalActivityMasters",
column: "ActivityGroupId");
migrationBuilder.CreateIndex(
name: "IX_Organizations_CreatedById",
table: "Organizations",
column: "CreatedById");
migrationBuilder.CreateIndex(
name: "IX_Organizations_UpdatedById",
table: "Organizations",
column: "UpdatedById");
migrationBuilder.CreateIndex(
name: "IX_OrgServiceMappings_OrganizationId",
table: "OrgServiceMappings",
column: "OrganizationId");
migrationBuilder.CreateIndex(
name: "IX_OrgServiceMappings_ServiceId",
table: "OrgServiceMappings",
column: "ServiceId");
migrationBuilder.CreateIndex(
name: "IX_ProjectOrgMappings_OrganizationId",
table: "ProjectOrgMappings",
column: "OrganizationId");
migrationBuilder.CreateIndex(
name: "IX_ProjectOrgMappings_OrganizationTypeId",
table: "ProjectOrgMappings",
column: "OrganizationTypeId");
migrationBuilder.CreateIndex(
name: "IX_ProjectOrgMappings_ParentOrganizationId",
table: "ProjectOrgMappings",
column: "ParentOrganizationId");
migrationBuilder.CreateIndex(
name: "IX_ProjectOrgMappings_ProjectServiceId",
table: "ProjectOrgMappings",
column: "ProjectServiceId");
migrationBuilder.CreateIndex(
name: "IX_ProjectOrgMappings_TenantId",
table: "ProjectOrgMappings",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ProjectServiceMappings_ProjectId",
table: "ProjectServiceMappings",
column: "ProjectId");
migrationBuilder.CreateIndex(
name: "IX_ProjectServiceMappings_ServiceId",
table: "ProjectServiceMappings",
column: "ServiceId");
migrationBuilder.CreateIndex(
name: "IX_ProjectServiceMappings_TenantId",
table: "ProjectServiceMappings",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_ServiceMasters_TenantId",
table: "ServiceMasters",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_TenantOrgMappings_OrganizationId",
table: "TenantOrgMappings",
column: "OrganizationId");
migrationBuilder.CreateIndex(
name: "IX_TenantOrgMappings_TenantId",
table: "TenantOrgMappings",
column: "TenantId");
migrationBuilder.AddForeignKey(
name: "FK_ActivityMasters_ActivityGroupMasters_ActivityGroupId",
table: "ActivityMasters",
column: "ActivityGroupId",
principalTable: "ActivityGroupMasters",
principalColumn: "Id");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_ActivityMasters_ActivityGroupMasters_ActivityGroupId",
table: "ActivityMasters");
migrationBuilder.DropTable(
name: "ActivityGroupMasters");
migrationBuilder.DropTable(
name: "GlobalActivityMasters");
migrationBuilder.DropTable(
name: "OrgServiceMappings");
migrationBuilder.DropTable(
name: "ProjectOrgMappings");
migrationBuilder.DropTable(
name: "TenantOrgMappings");
migrationBuilder.DropTable(
name: "GlobalActivityGroupMasters");
migrationBuilder.DropTable(
name: "OrgTypeMasters");
migrationBuilder.DropTable(
name: "ProjectServiceMappings");
migrationBuilder.DropTable(
name: "Organizations");
migrationBuilder.DropTable(
name: "GlobalServiceMasters");
migrationBuilder.DropTable(
name: "ServiceMasters");
migrationBuilder.DropIndex(
name: "IX_ActivityMasters_ActivityGroupId",
table: "ActivityMasters");
migrationBuilder.DropColumn(
name: "ActivityGroupId",
table: "ActivityMasters");
migrationBuilder.DropColumn(
name: "IsSystem",
table: "ActivityMasters");
migrationBuilder.AlterColumn<string>(
name: "UnitOfMeasurement",
table: "ActivityMasters",
type: "longtext",
nullable: true,
oldClrType: typeof(string),
oldType: "longtext")
.Annotation("MySql:CharSet", "utf8mb4")
.OldAnnotation("MySql:CharSet", "utf8mb4");
migrationBuilder.AlterColumn<string>(
name: "ActivityName",
table: "ActivityMasters",
type: "longtext",
nullable: true,
oldClrType: typeof(string),
oldType: "longtext")
.Annotation("MySql:CharSet", "utf8mb4")
.OldAnnotation("MySql:CharSet", "utf8mb4");
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("2d9fb9cf-db53-476b-a452-492e88e2b51f"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6233));
migrationBuilder.UpdateData(
table: "DocumentCategoryMasters",
keyColumn: "Id",
keyValue: new Guid("cfbff269-072b-477a-b48b-72cdc57dd1d3"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6226));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("07ca7182-9ac0-4407-b988-59901170cb86"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6307));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("16c40b80-c207-4a0c-a4d3-381414afe35a"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6290));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("260abd7e-c96d-4ae4-a29b-9b5bb5d24ebd"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6298));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("2d1d7441-46a8-425e-9395-94d0956f8e91"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6286));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("336225ac-67f3-4e14-ba7a-8fad03cf2832"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6275));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("5668de00-5d84-47f7-b9b5-7fefd1219f05"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6319));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("6344393b-9bb1-45f8-b620-9f6e279d012c"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6282));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("7cc41c91-23cb-442b-badd-f932138d149f"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6314));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("846e89a9-5735-45ec-a21d-c97f85a94ada"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6311));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("a1a190ba-c4a8-432f-b26d-1231ca1d44bc"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6302));
migrationBuilder.UpdateData(
table: "DocumentTypeMasters",
keyColumn: "Id",
keyValue: new Guid("f76d8215-d399-4f0e-b414-12e427f50be3"),
column: "CreatedAt",
value: new DateTime(2025, 9, 3, 10, 46, 49, 955, DateTimeKind.Utc).AddTicks(6295));
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,77 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_IsActive_In_ServiceMaster : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<bool>(
name: "IsActive",
table: "ServiceMasters",
type: "tinyint(1)",
nullable: false,
defaultValue: false);
migrationBuilder.AddColumn<bool>(
name: "IsActive",
table: "ActivityGroupMasters",
type: "tinyint(1)",
nullable: false,
defaultValue: false);
migrationBuilder.InsertData(
table: "Features",
columns: new[] { "Id", "Description", "IsActive", "ModuleId", "Name" },
values: new object[] { new Guid("6d4c82d6-dbce-48ab-b8b8-f785f4d8c914"), "Managing all organization related rights", true, new Guid("c43db8c7-ab73-47f4-9d3b-f83e81357924"), "Organization Management" });
migrationBuilder.InsertData(
table: "FeaturePermissions",
columns: new[] { "Id", "Description", "FeatureId", "IsEnabled", "Name" },
values: new object[,]
{
{ new Guid("068cb3c1-49c5-4746-9f29-1fce16e820ac"), "Allow user to create new organization", new Guid("6d4c82d6-dbce-48ab-b8b8-f785f4d8c914"), true, "Add Organization" },
{ new Guid("7a6cf830-0008-4e03-b31d-0d050cb634f4"), "Allow the user to view information of the organization", new Guid("6d4c82d6-dbce-48ab-b8b8-f785f4d8c914"), true, "View Organization" },
{ new Guid("c1ae1363-ab8a-4bd9-a9d1-8c2c6083873a"), "Allow the user to update the basic information of the organization", new Guid("6d4c82d6-dbce-48ab-b8b8-f785f4d8c914"), true, "Edit Organization" }
});
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("068cb3c1-49c5-4746-9f29-1fce16e820ac"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("7a6cf830-0008-4e03-b31d-0d050cb634f4"));
migrationBuilder.DeleteData(
table: "FeaturePermissions",
keyColumn: "Id",
keyValue: new Guid("c1ae1363-ab8a-4bd9-a9d1-8c2c6083873a"));
migrationBuilder.DeleteData(
table: "Features",
keyColumn: "Id",
keyValue: new Guid("6d4c82d6-dbce-48ab-b8b8-f785f4d8c914"));
migrationBuilder.DropColumn(
name: "IsActive",
table: "ServiceMasters");
migrationBuilder.DropColumn(
name: "IsActive",
table: "ActivityGroupMasters");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,136 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Updated_EMployee_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Employees_JobRoles_JobRoleId",
table: "Employees");
migrationBuilder.DropColumn(
name: "AadharNumber",
table: "Employees");
migrationBuilder.DropColumn(
name: "PanNumber",
table: "Employees");
migrationBuilder.DropColumn(
name: "RoleId",
table: "Employees");
migrationBuilder.AlterColumn<Guid>(
name: "JobRoleId",
table: "Employees",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci",
oldClrType: typeof(Guid),
oldType: "char(36)",
oldNullable: true)
.OldAnnotation("Relational:Collation", "ascii_general_ci");
migrationBuilder.UpdateData(
table: "Employees",
keyColumn: "FirstName",
keyValue: null,
column: "FirstName",
value: "");
migrationBuilder.AlterColumn<string>(
name: "FirstName",
table: "Employees",
type: "longtext",
nullable: false,
oldClrType: typeof(string),
oldType: "longtext",
oldNullable: true)
.Annotation("MySql:CharSet", "utf8mb4")
.OldAnnotation("MySql:CharSet", "utf8mb4");
migrationBuilder.AddColumn<bool>(
name: "HasApplicationAccess",
table: "Employees",
type: "tinyint(1)",
nullable: false,
defaultValue: false);
migrationBuilder.AddForeignKey(
name: "FK_Employees_JobRoles_JobRoleId",
table: "Employees",
column: "JobRoleId",
principalTable: "JobRoles",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Employees_JobRoles_JobRoleId",
table: "Employees");
migrationBuilder.DropColumn(
name: "HasApplicationAccess",
table: "Employees");
migrationBuilder.AlterColumn<Guid>(
name: "JobRoleId",
table: "Employees",
type: "char(36)",
nullable: true,
collation: "ascii_general_ci",
oldClrType: typeof(Guid),
oldType: "char(36)")
.OldAnnotation("Relational:Collation", "ascii_general_ci");
migrationBuilder.AlterColumn<string>(
name: "FirstName",
table: "Employees",
type: "longtext",
nullable: true,
oldClrType: typeof(string),
oldType: "longtext")
.Annotation("MySql:CharSet", "utf8mb4")
.OldAnnotation("MySql:CharSet", "utf8mb4");
migrationBuilder.AddColumn<string>(
name: "AadharNumber",
table: "Employees",
type: "longtext",
nullable: true)
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.AddColumn<string>(
name: "PanNumber",
table: "Employees",
type: "longtext",
nullable: true)
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.AddColumn<Guid>(
name: "RoleId",
table: "Employees",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.AddForeignKey(
name: "FK_Employees_JobRoles_JobRoleId",
table: "Employees",
column: "JobRoleId",
principalTable: "JobRoles",
principalColumn: "Id");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,70 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Organization_In_Employee_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Organizations_Employees_CreatedById",
table: "Organizations");
migrationBuilder.DropForeignKey(
name: "FK_Organizations_Employees_UpdatedById",
table: "Organizations");
migrationBuilder.DropIndex(
name: "IX_Organizations_CreatedById",
table: "Organizations");
migrationBuilder.DropIndex(
name: "IX_Organizations_UpdatedById",
table: "Organizations");
migrationBuilder.AddColumn<Guid>(
name: "OrganizationId",
table: "Employees",
type: "char(36)",
nullable: false,
defaultValue: new Guid("4e3a6d31-c640-40f7-8d67-6c109fcdb9ea"),
collation: "ascii_general_ci");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "OrganizationId",
table: "Employees");
migrationBuilder.CreateIndex(
name: "IX_Organizations_CreatedById",
table: "Organizations",
column: "CreatedById");
migrationBuilder.CreateIndex(
name: "IX_Organizations_UpdatedById",
table: "Organizations",
column: "UpdatedById");
migrationBuilder.AddForeignKey(
name: "FK_Organizations_Employees_CreatedById",
table: "Organizations",
column: "CreatedById",
principalTable: "Employees",
principalColumn: "Id");
migrationBuilder.AddForeignKey(
name: "FK_Organizations_Employees_UpdatedById",
table: "Organizations",
column: "UpdatedById",
principalTable: "Employees",
principalColumn: "Id");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,39 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Organization_In_Employee_Table_As_Forgin_Key : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.CreateIndex(
name: "IX_Employees_OrganizationId",
table: "Employees",
column: "OrganizationId");
migrationBuilder.AddForeignKey(
name: "FK_Employees_Organizations_OrganizationId",
table: "Employees",
column: "OrganizationId",
principalTable: "Organizations",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Employees_Organizations_OrganizationId",
table: "Employees");
migrationBuilder.DropIndex(
name: "IX_Employees_OrganizationId",
table: "Employees");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,29 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_IsPrimary_Parameter_In_Employee_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<bool>(
name: "IsPrimary",
table: "Employees",
type: "tinyint(1)",
nullable: false,
defaultValue: false);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "IsPrimary",
table: "Employees");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,69 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Organization_In_Tenant_Table_As_Forgin_Key : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "TenantId",
table: "AspNetUsers");
migrationBuilder.AddColumn<Guid>(
name: "OrganizationId",
table: "Tenants",
type: "char(36)",
nullable: false,
defaultValue: new Guid("4e3a6d31-c640-40f7-8d67-6c109fcdb9ea"),
collation: "ascii_general_ci");
migrationBuilder.UpdateData(
table: "Tenants",
keyColumn: "Id",
keyValue: new Guid("b3466e83-7e11-464c-b93a-daf047838b26"),
column: "OrganizationId",
value: new Guid("4e3a6d31-c640-40f7-8d67-6c109fcdb9ea"));
migrationBuilder.CreateIndex(
name: "IX_Tenants_OrganizationId",
table: "Tenants",
column: "OrganizationId");
migrationBuilder.AddForeignKey(
name: "FK_Tenants_Organizations_OrganizationId",
table: "Tenants",
column: "OrganizationId",
principalTable: "Organizations",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Tenants_Organizations_OrganizationId",
table: "Tenants");
migrationBuilder.DropIndex(
name: "IX_Tenants_OrganizationId",
table: "Tenants");
migrationBuilder.DropColumn(
name: "OrganizationId",
table: "Tenants");
migrationBuilder.AddColumn<Guid>(
name: "TenantId",
table: "AspNetUsers",
type: "char(36)",
nullable: true,
collation: "ascii_general_ci");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,136 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Promoter_And_PMC_In_Project_Table_As_Forgin_Key : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Employees_Tenants_TenantId",
table: "Employees");
migrationBuilder.AddColumn<Guid>(
name: "PMCId",
table: "Projects",
type: "char(36)",
nullable: false,
defaultValue: new Guid("4e3a6d31-c640-40f7-8d67-6c109fcdb9ea"),
collation: "ascii_general_ci");
migrationBuilder.AddColumn<Guid>(
name: "PromoterId",
table: "Projects",
type: "char(36)",
nullable: false,
defaultValue: new Guid("4e3a6d31-c640-40f7-8d67-6c109fcdb9ea"),
collation: "ascii_general_ci");
migrationBuilder.AlterColumn<Guid>(
name: "TenantId",
table: "Employees",
type: "char(36)",
nullable: true,
collation: "ascii_general_ci",
oldClrType: typeof(Guid),
oldType: "char(36)")
.OldAnnotation("Relational:Collation", "ascii_general_ci");
migrationBuilder.UpdateData(
table: "Projects",
keyColumn: "Id",
keyValue: new Guid("85bf587b-7ca9-4685-b77c-d817f5847e85"),
columns: new[] { "PMCId", "PromoterId" },
values: new object[] { new Guid("4e3a6d31-c640-40f7-8d67-6c109fcdb9ea"), new Guid("4e3a6d31-c640-40f7-8d67-6c109fcdb9ea") });
migrationBuilder.CreateIndex(
name: "IX_Projects_PMCId",
table: "Projects",
column: "PMCId");
migrationBuilder.CreateIndex(
name: "IX_Projects_PromoterId",
table: "Projects",
column: "PromoterId");
migrationBuilder.AddForeignKey(
name: "FK_Employees_Tenants_TenantId",
table: "Employees",
column: "TenantId",
principalTable: "Tenants",
principalColumn: "Id");
migrationBuilder.AddForeignKey(
name: "FK_Projects_Organizations_PMCId",
table: "Projects",
column: "PMCId",
principalTable: "Organizations",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_Projects_Organizations_PromoterId",
table: "Projects",
column: "PromoterId",
principalTable: "Organizations",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Employees_Tenants_TenantId",
table: "Employees");
migrationBuilder.DropForeignKey(
name: "FK_Projects_Organizations_PMCId",
table: "Projects");
migrationBuilder.DropForeignKey(
name: "FK_Projects_Organizations_PromoterId",
table: "Projects");
migrationBuilder.DropIndex(
name: "IX_Projects_PMCId",
table: "Projects");
migrationBuilder.DropIndex(
name: "IX_Projects_PromoterId",
table: "Projects");
migrationBuilder.DropColumn(
name: "PMCId",
table: "Projects");
migrationBuilder.DropColumn(
name: "PromoterId",
table: "Projects");
migrationBuilder.AlterColumn<Guid>(
name: "TenantId",
table: "Employees",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci",
oldClrType: typeof(Guid),
oldType: "char(36)",
oldNullable: true)
.OldAnnotation("Relational:Collation", "ascii_general_ci");
migrationBuilder.AddForeignKey(
name: "FK_Employees_Tenants_TenantId",
table: "Employees",
column: "TenantId",
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,29 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_IsActive_In_ProjectServiceMapping_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<bool>(
name: "IsActive",
table: "ProjectServiceMappings",
type: "tinyint(1)",
nullable: false,
defaultValue: false);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "IsActive",
table: "ProjectServiceMappings");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,85 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Removed_TenantId_From_MPIN_And_OTP : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_MPINDetails_Tenants_TenantId",
table: "MPINDetails");
migrationBuilder.DropForeignKey(
name: "FK_OTPDetails_Tenants_TenantId",
table: "OTPDetails");
migrationBuilder.DropIndex(
name: "IX_OTPDetails_TenantId",
table: "OTPDetails");
migrationBuilder.DropIndex(
name: "IX_MPINDetails_TenantId",
table: "MPINDetails");
migrationBuilder.DropColumn(
name: "TenantId",
table: "OTPDetails");
migrationBuilder.DropColumn(
name: "TenantId",
table: "MPINDetails");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<Guid>(
name: "TenantId",
table: "OTPDetails",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.AddColumn<Guid>(
name: "TenantId",
table: "MPINDetails",
type: "char(36)",
nullable: false,
defaultValue: new Guid("00000000-0000-0000-0000-000000000000"),
collation: "ascii_general_ci");
migrationBuilder.CreateIndex(
name: "IX_OTPDetails_TenantId",
table: "OTPDetails",
column: "TenantId");
migrationBuilder.CreateIndex(
name: "IX_MPINDetails_TenantId",
table: "MPINDetails",
column: "TenantId");
migrationBuilder.AddForeignKey(
name: "FK_MPINDetails_Tenants_TenantId",
table: "MPINDetails",
column: "TenantId",
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_OTPDetails_Tenants_TenantId",
table: "OTPDetails",
column: "TenantId",
principalTable: "Tenants",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,68 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Service_FK_In_ProjectAllocation : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<Guid>(
name: "ServiceId",
table: "ProjectAllocations",
type: "char(36)",
nullable: true,
collation: "ascii_general_ci");
migrationBuilder.AddColumn<string>(
name: "logoImage",
table: "Organizations",
type: "longtext",
nullable: true)
.Annotation("MySql:CharSet", "utf8mb4");
migrationBuilder.UpdateData(
table: "Organizations",
keyColumn: "Id",
keyValue: new Guid("4e3a6d31-c640-40f7-8d67-6c109fcdb9ea"),
column: "logoImage",
value: null);
migrationBuilder.CreateIndex(
name: "IX_ProjectAllocations_ServiceId",
table: "ProjectAllocations",
column: "ServiceId");
migrationBuilder.AddForeignKey(
name: "FK_ProjectAllocations_ServiceMasters_ServiceId",
table: "ProjectAllocations",
column: "ServiceId",
principalTable: "ServiceMasters",
principalColumn: "Id");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_ProjectAllocations_ServiceMasters_ServiceId",
table: "ProjectAllocations");
migrationBuilder.DropIndex(
name: "IX_ProjectAllocations_ServiceId",
table: "ProjectAllocations");
migrationBuilder.DropColumn(
name: "ServiceId",
table: "ProjectAllocations");
migrationBuilder.DropColumn(
name: "logoImage",
table: "Organizations");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,84 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Assigned_By_In_Mapping_Tables : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<Guid>(
name: "AssignedById",
table: "TenantOrgMappings",
type: "char(36)",
nullable: false,
defaultValue: new Guid("08dd8b35-d98b-44f1-896d-12aec3f035aa"),
collation: "ascii_general_ci");
migrationBuilder.AddColumn<Guid>(
name: "AssignedById",
table: "ProjectOrgMappings",
type: "char(36)",
nullable: false,
defaultValue: new Guid("08dd8b35-d98b-44f1-896d-12aec3f035aa"),
collation: "ascii_general_ci");
migrationBuilder.CreateIndex(
name: "IX_TenantOrgMappings_AssignedById",
table: "TenantOrgMappings",
column: "AssignedById");
migrationBuilder.CreateIndex(
name: "IX_ProjectOrgMappings_AssignedById",
table: "ProjectOrgMappings",
column: "AssignedById");
migrationBuilder.AddForeignKey(
name: "FK_ProjectOrgMappings_Employees_AssignedById",
table: "ProjectOrgMappings",
column: "AssignedById",
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
migrationBuilder.AddForeignKey(
name: "FK_TenantOrgMappings_Employees_AssignedById",
table: "TenantOrgMappings",
column: "AssignedById",
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_ProjectOrgMappings_Employees_AssignedById",
table: "ProjectOrgMappings");
migrationBuilder.DropForeignKey(
name: "FK_TenantOrgMappings_Employees_AssignedById",
table: "TenantOrgMappings");
migrationBuilder.DropIndex(
name: "IX_TenantOrgMappings_AssignedById",
table: "TenantOrgMappings");
migrationBuilder.DropIndex(
name: "IX_ProjectOrgMappings_AssignedById",
table: "ProjectOrgMappings");
migrationBuilder.DropColumn(
name: "AssignedById",
table: "TenantOrgMappings");
migrationBuilder.DropColumn(
name: "AssignedById",
table: "ProjectOrgMappings");
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,40 @@
using System;
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
#pragma warning disable CA1814 // Prefer jagged arrays over multidimensional
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Deleted_Organization_Types : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DeleteData(
table: "OrgTypeMasters",
keyColumn: "Id",
keyValue: new Guid("743806fe-d991-4079-b223-e4e2da44f435"));
migrationBuilder.DeleteData(
table: "OrgTypeMasters",
keyColumn: "Id",
keyValue: new Guid("b1877a3b-8832-47b1-bbe3-dc7e98672f49"));
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.InsertData(
table: "OrgTypeMasters",
columns: new[] { "Id", "Name" },
values: new object[,]
{
{ new Guid("743806fe-d991-4079-b223-e4e2da44f435"), "Tenant" },
{ new Guid("b1877a3b-8832-47b1-bbe3-dc7e98672f49"), "PMC" }
});
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,92 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_Forgin_Key_For_Approver : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Attendes_Employees_EmployeeID",
table: "Attendes");
migrationBuilder.RenameColumn(
name: "EmployeeID",
table: "Attendes",
newName: "EmployeeId");
migrationBuilder.RenameColumn(
name: "ApprovedBy",
table: "Attendes",
newName: "ApprovedById");
migrationBuilder.RenameIndex(
name: "IX_Attendes_EmployeeID",
table: "Attendes",
newName: "IX_Attendes_EmployeeId");
migrationBuilder.CreateIndex(
name: "IX_Attendes_ApprovedById",
table: "Attendes",
column: "ApprovedById");
migrationBuilder.AddForeignKey(
name: "FK_Attendes_Employees_ApprovedById",
table: "Attendes",
column: "ApprovedById",
principalTable: "Employees",
principalColumn: "Id");
migrationBuilder.AddForeignKey(
name: "FK_Attendes_Employees_EmployeeId",
table: "Attendes",
column: "EmployeeId",
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropForeignKey(
name: "FK_Attendes_Employees_ApprovedById",
table: "Attendes");
migrationBuilder.DropForeignKey(
name: "FK_Attendes_Employees_EmployeeId",
table: "Attendes");
migrationBuilder.DropIndex(
name: "IX_Attendes_ApprovedById",
table: "Attendes");
migrationBuilder.RenameColumn(
name: "EmployeeId",
table: "Attendes",
newName: "EmployeeID");
migrationBuilder.RenameColumn(
name: "ApprovedById",
table: "Attendes",
newName: "ApprovedBy");
migrationBuilder.RenameIndex(
name: "IX_Attendes_EmployeeId",
table: "Attendes",
newName: "IX_Attendes_EmployeeID");
migrationBuilder.AddForeignKey(
name: "FK_Attendes_Employees_EmployeeID",
table: "Attendes",
column: "EmployeeID",
principalTable: "Employees",
principalColumn: "Id",
onDelete: ReferentialAction.Cascade);
}
}
}

File diff suppressed because one or more lines are too long

View File

@ -0,0 +1,29 @@
using Microsoft.EntityFrameworkCore.Migrations;
#nullable disable
namespace Marco.Pms.DataAccess.Migrations
{
/// <inheritdoc />
public partial class Added_ExpenceUID_In_Expense_Table : Migration
{
/// <inheritdoc />
protected override void Up(MigrationBuilder migrationBuilder)
{
migrationBuilder.AddColumn<string>(
name: "ExpenseUId",
table: "Expenses",
type: "longtext",
nullable: false)
.Annotation("MySql:CharSet", "utf8mb4");
}
/// <inheritdoc />
protected override void Down(MigrationBuilder migrationBuilder)
{
migrationBuilder.DropColumn(
name: "ExpenseUId",
table: "Expenses");
}
}
}

Some files were not shown because too many files have changed in this diff Show More