11import connector from "#models/databaseUtil" ;
22
3- const employeeCurrentEmployementSchema = {
3+ const employeeCurrentEmploymentSchema = {
44 uid : { type : String , require : true } ,
55 date_of_joining : { type : Date , required : true } ,
66 department_name : { type : String , required : true } ,
@@ -11,7 +11,64 @@ const employeeCurrentEmployementSchema = {
1111} ;
1212
1313// eslint-disable-next-line no-unused-vars
14- const employeeCurrentEmployement = connector . model (
15- "Employee current Employement " ,
16- employeeCurrentEmployementSchema ,
14+ const EmployeeCurrentEmployment = connector . model (
15+ "EmployeeCurrentEmployement " ,
16+ employeeCurrentEmploymentSchema ,
1717) ;
18+
19+ async function create ( employeeCurrentEmploymentData ) {
20+ const {
21+ uid,
22+ dateOfJoining,
23+ departmentName,
24+ designation,
25+ jobStatus,
26+ jobProfile,
27+ currentCtc,
28+ } = employeeCurrentEmploymentData ;
29+
30+ const empCurEmp = new EmployeeCurrentEmployment ( {
31+ uid,
32+ dateOfJoining,
33+ departmentName,
34+ designation,
35+ jobStatus,
36+ jobProfile,
37+ currentCtc,
38+ } ) ;
39+
40+ const empCurrentEmploymentDoc = await empCurEmp . save ( ) ;
41+ return empCurrentEmploymentDoc ;
42+ }
43+
44+ async function read ( filter , limit = 0 , page = 1 ) {
45+ const empCurrentEmploymentDoc = await EmployeeCurrentEmployment . find ( filter )
46+ . limit ( limit )
47+ . skip ( ( page - 1 ) * limit )
48+ . exec ( ) ;
49+ const count = await EmployeeCurrentEmployment . count ( ) ;
50+ const totalPages = Math . ceil ( count / limit ) ;
51+ return { totalPages, data : empCurrentEmploymentDoc } ;
52+ }
53+
54+ async function update ( filter , updateObject , options = { multi : true } ) {
55+ const updateResult = await EmployeeCurrentEmployment . updateMany (
56+ filter ,
57+ { $set : updateObject } ,
58+ options ,
59+ ) ;
60+ return updateResult . acknowledged ;
61+ }
62+
63+ async function remove ( filter ) {
64+ const deleteResult =
65+ await EmployeeCurrentEmployment . deleteMany ( filter ) . exec ( ) ;
66+ return deleteResult . acknowledged ;
67+ }
68+
69+ export default {
70+ create,
71+ read,
72+ update,
73+ remove,
74+ } ;
0 commit comments