Compare commits
36 Commits
Author | SHA1 | Date | |
---|---|---|---|
e6cafe58f8 | |||
0831f3df6a | |||
327d9843d7 | |||
e77dbeaf9f | |||
4468d8f269 | |||
4f7337c5b7 | |||
89f9dddd85 | |||
be93060dea | |||
d78c5879ac | |||
62d6ccb45c | |||
792277e83b | |||
8ebc08eb60 | |||
cde8907768 | |||
af46e47314 | |||
5b834601eb | |||
6a89e67a42 | |||
ceb4fa8fb1 | |||
6babd91d22 | |||
77a7512781 | |||
110fc609ac | |||
4ab0535819 | |||
134c0db3d1 | |||
c576cea7d7 | |||
9e974f1b6e | |||
f784e6f7e9 | |||
55590f8035 | |||
710f5ba9c4 | |||
6063bf6cf9 | |||
a95acdeaef | |||
a0474a12b3 | |||
b3aaed7af4 | |||
6a436e9b3c | |||
ca8befd8cb | |||
bfd2b38e58 | |||
d3a7d1be86 | |||
185f9f1155 |
|
@ -542,6 +542,7 @@ namespace HRM.BO
|
||||||
void UpdatePayrollType(int empID, int payrollTypeID, DateTime dEffectDate);
|
void UpdatePayrollType(int empID, int payrollTypeID, DateTime dEffectDate);
|
||||||
//void SaveIntegration(List<HREmployee> oEmps);
|
//void SaveIntegration(List<HREmployee> oEmps);
|
||||||
int Save(Employee item);
|
int Save(Employee item);
|
||||||
|
Employee SaveEmployee(Employee item);
|
||||||
//void Delete(int id);
|
//void Delete(int id);
|
||||||
//void DeleteAll();
|
//void DeleteAll();
|
||||||
//string GenerateLoanNo(Employee oEmp, string sLoanName);
|
//string GenerateLoanNo(Employee oEmp, string sLoanName);
|
||||||
|
|
|
@ -3991,4 +3991,13 @@ namespace HRM.BO
|
||||||
ReadyInOneYear = 2,
|
ReadyInOneYear = 2,
|
||||||
ReadyInTwoYears = 3
|
ReadyInTwoYears = 3
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public enum EnumProfileReportType : short
|
||||||
|
{
|
||||||
|
Print_CV = 1,
|
||||||
|
Employee_Service_Book = 2,
|
||||||
|
Appointment_Letter_Worker = 3,
|
||||||
|
Appointment_Letter_Staff = 4,
|
||||||
|
Appointment_Letter_Officer = 5
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -1128,7 +1128,16 @@ namespace HRM.BO
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
#region Property NomineeMobileNo : string
|
||||||
|
|
||||||
|
private string _nomineeMobileNo;
|
||||||
|
public string NomineeMobileNo
|
||||||
|
{
|
||||||
|
get { return _nomineeMobileNo; }
|
||||||
|
set { _nomineeMobileNo = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
#endregion
|
||||||
public EnumProfileStatus ProfileStatus { get; set; }
|
public EnumProfileStatus ProfileStatus { get; set; }
|
||||||
public string NomineeStatus { get; set; }
|
public string NomineeStatus { get; set; }
|
||||||
public bool HasPicture { get; set; }
|
public bool HasPicture { get; set; }
|
||||||
|
@ -2349,7 +2358,7 @@ namespace HRM.BO
|
||||||
#region parent's function definition
|
#region parent's function definition
|
||||||
|
|
||||||
HREmployee Get(int id);
|
HREmployee Get(int id);
|
||||||
int SavePersonalInfo(HREmployee employee);
|
HREmployee SavePersonalInfo(HREmployee employee);
|
||||||
void SaveEmployeeProfileUpload(List<HREmployee> oHREmployee);
|
void SaveEmployeeProfileUpload(List<HREmployee> oHREmployee);
|
||||||
void DeleteChildData(string tableName, string columnName, int id);
|
void DeleteChildData(string tableName, string columnName, int id);
|
||||||
List<HREmployee> GetAllHREmps();
|
List<HREmployee> GetAllHREmps();
|
||||||
|
|
|
@ -110,6 +110,28 @@ namespace HRM.BO
|
||||||
get { return _basicSalary; }
|
get { return _basicSalary; }
|
||||||
set { _basicSalary = value; }
|
set { _basicSalary = value; }
|
||||||
}
|
}
|
||||||
|
private DateTime _encashMonth;
|
||||||
|
|
||||||
|
public DateTime EncashMonth
|
||||||
|
{
|
||||||
|
get { return _encashMonth; }
|
||||||
|
set { _encashMonth = value; }
|
||||||
|
}
|
||||||
|
private DateTime _encashmentFromDate;
|
||||||
|
|
||||||
|
public DateTime EncashmentFromDate
|
||||||
|
{
|
||||||
|
get { return _encashmentFromDate; }
|
||||||
|
set { _encashmentFromDate = value; }
|
||||||
|
}
|
||||||
|
|
||||||
|
private DateTime _encashmentToDate;
|
||||||
|
|
||||||
|
public DateTime EncashmentToDate
|
||||||
|
{
|
||||||
|
get { return _encashmentToDate; }
|
||||||
|
set { _encashmentToDate = value; }
|
||||||
|
}
|
||||||
#region Property IncomeTax : List<IncomeTax>
|
#region Property IncomeTax : List<IncomeTax>
|
||||||
|
|
||||||
private List<IncomeTax> _incomeTax = null;
|
private List<IncomeTax> _incomeTax = null;
|
||||||
|
|
|
@ -383,7 +383,7 @@ namespace HRM.BO
|
||||||
List<SalaryProcessStatus> SalaryProcess(SalaryProcess item, List<Employee> employees);
|
List<SalaryProcessStatus> SalaryProcess(SalaryProcess item, List<Employee> employees);
|
||||||
int Save(SalaryProcess item);
|
int Save(SalaryProcess item);
|
||||||
void Delete(int id);
|
void Delete(int id);
|
||||||
|
bool IsSalaryprocessed(DateTime salarymonth, int payrollTypeID);
|
||||||
void UndoSalary(int id);
|
void UndoSalary(int id);
|
||||||
void UndoMonthlySalaryByIDs(string ids);
|
void UndoMonthlySalaryByIDs(string ids);
|
||||||
void UndoMonthlySalaryByEmpIDs(string ids, DateTime salaryMonth);
|
void UndoMonthlySalaryByEmpIDs(string ids, DateTime salaryMonth);
|
||||||
|
|
|
@ -369,6 +369,7 @@ namespace HRM.BO
|
||||||
List<SearchEmployee> Find(SearchManager oManager);
|
List<SearchEmployee> Find(SearchManager oManager);
|
||||||
List<SearchEmployee> FindCordinator(int? id, int? payrollTypeID);
|
List<SearchEmployee> FindCordinator(int? id, int? payrollTypeID);
|
||||||
List<SearchEmployee> FindEmpCodeName(int payrolltypeid, string code, string name);
|
List<SearchEmployee> FindEmpCodeName(int payrolltypeid, string code, string name);
|
||||||
|
List<SearchEmployee> FindEmpCodeNameForEmployeePicker(int userid, int payrolltypeid, string code, string name);
|
||||||
SearchEmployee get(int empid);
|
SearchEmployee get(int empid);
|
||||||
List<SearchEmployee> GetEmployeeNotYetUser(int payrollTypeID);
|
List<SearchEmployee> GetEmployeeNotYetUser(int payrollTypeID);
|
||||||
List<SearchEmployee> GetTeam(int employeeid);
|
List<SearchEmployee> GetTeam(int employeeid);
|
||||||
|
|
|
@ -642,10 +642,16 @@ namespace HRM.DA
|
||||||
|
|
||||||
internal static IDataReader Get(TransactionContext tc, string empID, DateTime fromDate, DateTime toDate)
|
internal static IDataReader Get(TransactionContext tc, string empID, DateTime fromDate, DateTime toDate)
|
||||||
{
|
{
|
||||||
|
//string sql =
|
||||||
|
// SQLParser.MakeSQL(
|
||||||
|
// "SELECT dap.* FROM DailyAttnProcess dap Inner Join Employee e on e.EmployeeID=dap.EmployeeID " +
|
||||||
|
// "WHERE dap.EmployeeID IN(%q) AND dap.AttnDate BETWEEN %d AND %d order by dap.AttnDate DESC",
|
||||||
|
// empID, fromDate, toDate);
|
||||||
string sql =
|
string sql =
|
||||||
SQLParser.MakeSQL(
|
SQLParser.MakeSQL(
|
||||||
"SELECT dap.* FROM DailyAttnProcess dap Inner Join Employee e on e.EmployeeID=dap.EmployeeID WHERE dap.EmployeeID IN(%q) AND dap.AttnDate BETWEEN %d AND %d order by dap.AttnDate DESC",
|
"SELECT dap.* FROM DailyAttnProcess dap " +
|
||||||
empID, fromDate, toDate);
|
"WHERE dap.EmployeeID IN(%q) AND dap.AttnDate BETWEEN %d AND %d order by dap.AttnDate DESC",
|
||||||
|
empID, fromDate, toDate);
|
||||||
IDataReader dr = tc.ExecuteReader(sql);
|
IDataReader dr = tc.ExecuteReader(sql);
|
||||||
return dr;
|
return dr;
|
||||||
}
|
}
|
||||||
|
|
|
@ -3628,7 +3628,8 @@ AND ea.EMPLOYEEID=emp.EMPLOYEEID AND ea.LASTLEVEL=1),'') LastAcademic ,
|
||||||
SqlHelperExtension.CreateInParam("@ModAttendance", SqlDbType.Int, isAttendance),
|
SqlHelperExtension.CreateInParam("@ModAttendance", SqlDbType.Int, isAttendance),
|
||||||
SqlHelperExtension.CreateInParam("@PayrollTypeID", SqlDbType.Int, payrollTypeId)
|
SqlHelperExtension.CreateInParam("@PayrollTypeID", SqlDbType.Int, payrollTypeId)
|
||||||
};
|
};
|
||||||
return tc.ExecuteDataSet(CommandType.StoredProcedure, "sp_DashboardInformation", p.ToArray());
|
//return tc.ExecuteDataSet(CommandType.StoredProcedure, "sp_DashboardInformation", p.ToArray());
|
||||||
|
return tc.ExecuteDataSet("SELECT * FROM DashboardInformation");
|
||||||
}
|
}
|
||||||
//Mobile Profile
|
//Mobile Profile
|
||||||
internal static DataSet GetMobileProfile(TransactionContext tc, int employeeID)
|
internal static DataSet GetMobileProfile(TransactionContext tc, int employeeID)
|
||||||
|
|
|
@ -676,16 +676,16 @@ namespace HRM.DA
|
||||||
tc.ExecuteNonQuery("INSERT INTO EmpNominee(" +
|
tc.ExecuteNonQuery("INSERT INTO EmpNominee(" +
|
||||||
"EmployeeID, NomineeID, NominationPurposeID, NominationDate, Name, RelationID, " +
|
"EmployeeID, NomineeID, NominationPurposeID, NominationDate, Name, RelationID, " +
|
||||||
" Percentage, BirthDate, OccupationID, Address, TelePhone," +
|
" Percentage, BirthDate, OccupationID, Address, TelePhone," +
|
||||||
" EmailAddress)" +
|
" EmailAddress, NomineeMobileNo)" +
|
||||||
" VALUES(" +
|
" VALUES(" +
|
||||||
" %n, %n, %n, %d, %s, %n," +
|
" %n, %n, %n, %d, %s, %n," +
|
||||||
" %n, %d, %n, %s, %s, %s)",
|
" %n, %d, %n, %s, %s, %s, %s)",
|
||||||
nominee.EmployeeID, nominee.ID, nominee.NominationPurposeID,
|
nominee.EmployeeID, nominee.ID, nominee.NominationPurposeID,
|
||||||
DataReader.GetNullValue(nominee.NominationDate), nominee.Name,
|
DataReader.GetNullValue(nominee.NominationDate), nominee.Name,
|
||||||
DataReader.GetNullValue(nominee.RelationID, 0),
|
DataReader.GetNullValue(nominee.RelationID, 0),
|
||||||
nominee.Percentage, DataReader.GetNullValue(nominee.BirthDate),
|
nominee.Percentage, DataReader.GetNullValue(nominee.BirthDate),
|
||||||
DataReader.GetNullValue(nominee.OccupationID, 0), nominee.Address, nominee.TelePhone,
|
DataReader.GetNullValue(nominee.OccupationID, 0), nominee.Address, nominee.TelePhone,
|
||||||
nominee.EmailAddress);
|
nominee.EmailAddress, nominee.NomineeMobileNo);
|
||||||
}
|
}
|
||||||
|
|
||||||
public static void Update(TransactionContext tc, EmpNominee nominee)
|
public static void Update(TransactionContext tc, EmpNominee nominee)
|
||||||
|
@ -700,8 +700,9 @@ namespace HRM.DA
|
||||||
,[ADDRESS] = %s
|
,[ADDRESS] = %s
|
||||||
,[TELEPHONE] = %s
|
,[TELEPHONE] = %s
|
||||||
,[EMAILADDRESS] = %s
|
,[EMAILADDRESS] = %s
|
||||||
|
,[NomineeMobileNo] = %s
|
||||||
WHERE NOMINEEID = %n", nominee.ID, nominee.NominationPurposeID, nominee.Name, nominee.RelationID,
|
WHERE NOMINEEID = %n", nominee.ID, nominee.NominationPurposeID, nominee.Name, nominee.RelationID,
|
||||||
nominee.Percentage, nominee.OccupationID, nominee.Address, nominee.TelePhone, nominee.EmailAddress,
|
nominee.Percentage, nominee.OccupationID, nominee.Address, nominee.TelePhone, nominee.EmailAddress, nominee.NomineeMobileNo,
|
||||||
nominee.ID);
|
nominee.ID);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -943,6 +944,7 @@ namespace HRM.DA
|
||||||
,[PHOTOPATH]
|
,[PHOTOPATH]
|
||||||
,[TELEPHONE]
|
,[TELEPHONE]
|
||||||
,[EMAILADDRESS]
|
,[EMAILADDRESS]
|
||||||
|
,[NomineeMobileNo]
|
||||||
,[SIGNATURE]
|
,[SIGNATURE]
|
||||||
,[EMPLOYEEID]
|
,[EMPLOYEEID]
|
||||||
,[NOMINEENAME]
|
,[NOMINEENAME]
|
||||||
|
@ -1465,5 +1467,35 @@ namespace HRM.DA
|
||||||
|
|
||||||
return tc.ExecuteReader(sSQL);
|
return tc.ExecuteReader(sSQL);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public static DataSet GetEmpELDetails(TransactionContext tc, int empID)
|
||||||
|
{
|
||||||
|
string sql = SQLParser.MakeSQL(@"SELECT le.EMPID,le.APRFROMDATE STARTDATE,le.APRTODATE ENDDATE,le.APRTOTALDAYS,Year(le.APRFROMDATE) AS Year
|
||||||
|
FROM
|
||||||
|
LEAVEENTRY le,
|
||||||
|
LEAVE lv
|
||||||
|
WHERE le.EMPID = %n
|
||||||
|
AND lv.LEAVEID = le.LEAVEID
|
||||||
|
AND lv.CODE = 'EL' AND le.APRFROMDATE > '31 Dec 2018' order by le.APRFROMDATE", empID);
|
||||||
|
return tc.ExecuteDataSet(sql);
|
||||||
|
}
|
||||||
|
public static DataSet GetNumberOfYears(TransactionContext tc, int empID)
|
||||||
|
{
|
||||||
|
string sql = SQLParser.MakeSQL(@"SELECT tab.Year,count(tab.Year) Number FROM
|
||||||
|
(
|
||||||
|
SELECT Year(le.APRFROMDATE) AS Year
|
||||||
|
FROM
|
||||||
|
LEAVEENTRY le,
|
||||||
|
LEAVE lv
|
||||||
|
WHERE le.EMPID = %n
|
||||||
|
AND lv.LEAVEID = le.LEAVEID
|
||||||
|
AND lv.CODE = 'EL' AND le.APRFROMDATE > '31 Dec 2018'
|
||||||
|
|
||||||
|
) tab
|
||||||
|
|
||||||
|
GROUP BY tab.Year
|
||||||
|
order by tab.Year", empID);
|
||||||
|
return tc.ExecuteDataSet(sql);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
|
@ -114,7 +114,16 @@ namespace HRM.DA
|
||||||
return bShowInDesktop;
|
return bShowInDesktop;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
internal static bool IsSalaryprocessed(TransactionContext tc, DateTime dSMonth, int payrollTypeID)
|
||||||
|
{
|
||||||
|
bool bShowInDesktop = false;
|
||||||
|
object obj =
|
||||||
|
tc.ExecuteScalar("Select SALARYPROCESSID from SALARYPROCESS where SALARYMONTH=%d AND PAYROLLTYPEID=%n",
|
||||||
|
dSMonth, payrollTypeID);
|
||||||
|
if (obj == DBNull.Value) return false;
|
||||||
|
else bShowInDesktop=true;
|
||||||
|
return bShowInDesktop;
|
||||||
|
}
|
||||||
#endregion
|
#endregion
|
||||||
|
|
||||||
#region Delete function
|
#region Delete function
|
||||||
|
|
|
@ -231,6 +231,7 @@ END;";
|
||||||
{
|
{
|
||||||
string orderby = "name";
|
string orderby = "name";
|
||||||
string sqlClause = "";
|
string sqlClause = "";
|
||||||
|
string top = "";
|
||||||
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("PayrollTypeID =%n AND Status = %n", payrollTypeID, EnumStatus.Active);
|
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("PayrollTypeID =%n AND Status = %n", payrollTypeID, EnumStatus.Active);
|
||||||
if (code != string.Empty)
|
if (code != string.Empty)
|
||||||
{
|
{
|
||||||
|
@ -242,8 +243,153 @@ END;";
|
||||||
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("Name LIKE %s", ("%" + name + "%"));
|
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("Name LIKE %s", ("%" + name + "%"));
|
||||||
|
|
||||||
return tc.ExecuteReader(
|
return tc.ExecuteReader(
|
||||||
"Select EmployeeID, EmployeeNo, Name, categoryID, GradeID, LocationID, designationid, DepartmentID From Employee %q Order by %s",
|
"Select %q EmployeeID, EmployeeNo, Name, categoryID, GradeID, LocationID, designationid, DepartmentID From Employee %q Order by %s",
|
||||||
sqlClause, orderby);
|
top, sqlClause, orderby);
|
||||||
|
}
|
||||||
|
internal static IDataReader SearchForEmployeePicker(TransactionContext tc, int userID, int payrollTypeID, string code, string name)
|
||||||
|
{
|
||||||
|
string orderby = "name";
|
||||||
|
string sqlClause = "";
|
||||||
|
string top = "";
|
||||||
|
|
||||||
|
string recurSqlClause = SQLParser.MakeSQL(@"
|
||||||
|
DECLARE @userid INT = %n;
|
||||||
|
DECLARE @payrolltypeid INT = %n;
|
||||||
|
DECLARE @permissionstatus INT = %n;
|
||||||
|
WITH RecursiveCategory AS
|
||||||
|
(
|
||||||
|
SELECT
|
||||||
|
CATEGORYID
|
||||||
|
FROM
|
||||||
|
dbo.CATEGORY
|
||||||
|
WHERE
|
||||||
|
CATEGORYID IN (
|
||||||
|
SELECT REFERENCEID
|
||||||
|
FROM DATAPERMISSION
|
||||||
|
WHERE USERID = @userid
|
||||||
|
AND PAYROLLTYPEID = @payrolltypeid
|
||||||
|
AND PERMISSIONSTATUS = @permissionstatus
|
||||||
|
AND PERMISSIONTYPE = %n
|
||||||
|
)
|
||||||
|
),
|
||||||
|
RecursiveGrade AS
|
||||||
|
(
|
||||||
|
SELECT
|
||||||
|
GRADEID
|
||||||
|
FROM
|
||||||
|
dbo.GRADES
|
||||||
|
WHERE
|
||||||
|
GRADEID IN (
|
||||||
|
SELECT REFERENCEID
|
||||||
|
FROM DATAPERMISSION
|
||||||
|
WHERE USERID = @userid
|
||||||
|
AND PAYROLLTYPEID = @payrolltypeid
|
||||||
|
AND PERMISSIONSTATUS = @permissionstatus
|
||||||
|
AND PERMISSIONTYPE = %n
|
||||||
|
)
|
||||||
|
),
|
||||||
|
RecursiveDepartment AS
|
||||||
|
(
|
||||||
|
SELECT
|
||||||
|
DEPARTMENTID
|
||||||
|
FROM
|
||||||
|
dbo.DEPARTMENT
|
||||||
|
WHERE
|
||||||
|
DEPARTMENTID IN (
|
||||||
|
SELECT REFERENCEID
|
||||||
|
FROM DATAPERMISSION
|
||||||
|
WHERE USERID = @userid
|
||||||
|
AND PAYROLLTYPEID = @payrolltypeid
|
||||||
|
AND PERMISSIONSTATUS = @permissionstatus
|
||||||
|
AND PERMISSIONTYPE = %n
|
||||||
|
)
|
||||||
|
UNION ALL
|
||||||
|
SELECT
|
||||||
|
d.DEPARTMENTID
|
||||||
|
FROM
|
||||||
|
dbo.DEPARTMENT d
|
||||||
|
INNER JOIN
|
||||||
|
RecursiveDepartment rd
|
||||||
|
ON
|
||||||
|
d.PARENTID = rd.DEPARTMENTID
|
||||||
|
),
|
||||||
|
RecursiveLocation AS
|
||||||
|
(
|
||||||
|
SELECT
|
||||||
|
LOCATIONID
|
||||||
|
FROM
|
||||||
|
dbo.LOCATION
|
||||||
|
WHERE
|
||||||
|
LOCATIONID IN (
|
||||||
|
SELECT REFERENCEID
|
||||||
|
FROM DATAPERMISSION
|
||||||
|
WHERE USERID = @userid
|
||||||
|
AND PAYROLLTYPEID = @payrolltypeid
|
||||||
|
AND PERMISSIONSTATUS = @permissionstatus
|
||||||
|
AND PERMISSIONTYPE = %n
|
||||||
|
)
|
||||||
|
UNION ALL
|
||||||
|
SELECT
|
||||||
|
l.LOCATIONID
|
||||||
|
FROM
|
||||||
|
dbo.LOCATION l
|
||||||
|
INNER JOIN
|
||||||
|
RecursiveLocation rl
|
||||||
|
ON
|
||||||
|
l.PARENTID = rl.LOCATIONID
|
||||||
|
)", userID, payrollTypeID, EnumMenuPermissionStatus.Approved, EnumDataPermissionType.Cagtegory, EnumDataPermissionType.Grade, EnumDataPermissionType.Department, EnumDataPermissionType.Location);
|
||||||
|
string recurWhereClause = SQLParser.MakeSQL(@"
|
||||||
|
AND
|
||||||
|
(
|
||||||
|
(
|
||||||
|
EXISTS (SELECT 1 FROM RecursiveCategory)
|
||||||
|
AND CATEGORYID IN (SELECT CATEGORYID FROM RecursiveCategory)
|
||||||
|
)
|
||||||
|
OR
|
||||||
|
(
|
||||||
|
EXISTS (SELECT 1 FROM RecursiveGrade)
|
||||||
|
AND GRADEID IN (SELECT GRADEID FROM RecursiveGrade)
|
||||||
|
)
|
||||||
|
OR
|
||||||
|
(
|
||||||
|
EXISTS (SELECT 1 FROM RecursiveDepartment)
|
||||||
|
AND DEPARTMENTID IN (SELECT DEPARTMENTID FROM RecursiveDepartment)
|
||||||
|
)
|
||||||
|
OR
|
||||||
|
(
|
||||||
|
EXISTS (SELECT 1 FROM RecursiveLocation)
|
||||||
|
AND LOCATIONID IN (SELECT LOCATIONID FROM RecursiveLocation)
|
||||||
|
)
|
||||||
|
)");
|
||||||
|
|
||||||
|
//Previous Code For only Live Employee
|
||||||
|
//sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("PayrollTypeID =%n AND Status = %n", payrollTypeID, EnumStatus.Active);
|
||||||
|
|
||||||
|
//New Code For live And Waitiong for join Employee
|
||||||
|
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("PayrollTypeID =%n AND (Status = %n OR Status = %n)", payrollTypeID, EnumEmployeeStatus.Live, EnumEmployeeStatus.Waitingforjoin);
|
||||||
|
if (code != string.Empty)
|
||||||
|
{
|
||||||
|
//Previous with suggestion
|
||||||
|
//sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("EmployeeNo LIKE %s", ("%" + code + "%"));
|
||||||
|
//orderby = "EmployeeNo";
|
||||||
|
|
||||||
|
//Using TOP
|
||||||
|
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("EmployeeNo LIKE %s", ( code + "%"));
|
||||||
|
orderby = "EmployeeNo";
|
||||||
|
top = "TOP 50";
|
||||||
|
|
||||||
|
//Without suggestion
|
||||||
|
//sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("EmployeeNo = %s", code );
|
||||||
|
//orderby = "EmployeeNo";
|
||||||
|
}
|
||||||
|
|
||||||
|
if (name != string.Empty)
|
||||||
|
sqlClause = SQLParser.TagSQL(sqlClause) + SQLParser.MakeSQL("Name LIKE %s", ("%" + name + "%"));
|
||||||
|
string finalSQl = SQLParser.MakeSQL(
|
||||||
|
"%q Select %q EmployeeID, EmployeeNo, Name, categoryID, GradeID, LocationID, designationid, DepartmentID From Employee %q %q Order by %s",
|
||||||
|
recurSqlClause, top, sqlClause, recurWhereClause, orderby);
|
||||||
|
|
||||||
|
return tc.ExecuteReader(finalSQl);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endregion
|
#endregion
|
||||||
|
|
|
@ -1985,6 +1985,39 @@ namespace HRM.DA
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public Employee SaveEmployee(Employee oEmployee)
|
||||||
|
{
|
||||||
|
TransactionContext tc = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
tc = TransactionContext.Begin(true);
|
||||||
|
if (oEmployee.IsNew)
|
||||||
|
{
|
||||||
|
int id = tc.GenerateID("Employee", "EmployeeID");
|
||||||
|
base.SetObjectID(oEmployee, id);
|
||||||
|
oEmployee.EmployeeNo = new HREmployeeService().GetNextEmployeeNo(tc);
|
||||||
|
EmployeeDA.Insert(tc, oEmployee);
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
EmployeeDA.Update(tc, oEmployee);
|
||||||
|
}
|
||||||
|
|
||||||
|
tc.End();
|
||||||
|
return oEmployee;
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
#region Handle Exception
|
||||||
|
|
||||||
|
if (tc != null)
|
||||||
|
tc.HandleError();
|
||||||
|
ExceptionLog.Write(e);
|
||||||
|
throw new ServiceException(e.Message, e);
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
public int SaveHnmEmployee(List<object> employeeData)
|
public int SaveHnmEmployee(List<object> employeeData)
|
||||||
{
|
{
|
||||||
|
|
|
@ -551,6 +551,7 @@ namespace HRM.DA
|
||||||
|
|
||||||
oEmpNominee.TelePhone = oReader.GetString("TelePhone");
|
oEmpNominee.TelePhone = oReader.GetString("TelePhone");
|
||||||
oEmpNominee.EmailAddress = oReader.GetString("EmailAddress");
|
oEmpNominee.EmailAddress = oReader.GetString("EmailAddress");
|
||||||
|
oEmpNominee.NomineeMobileNo = oReader.GetString("NomineeMobileNo", true, string.Empty);
|
||||||
oEmpNominee.ProfileStatus = (EnumProfileStatus)oReader.GetInt32("ProfileStatus", true, 0);
|
oEmpNominee.ProfileStatus = (EnumProfileStatus)oReader.GetInt32("ProfileStatus", true, 0);
|
||||||
oEmpNominee.HasPicture = oReader.GetBoolean("HasPicture", true, false);
|
oEmpNominee.HasPicture = oReader.GetBoolean("HasPicture", true, false);
|
||||||
oEmpNominee.HasSignature = oReader.GetBoolean("HasSignature", true, false);
|
oEmpNominee.HasSignature = oReader.GetBoolean("HasSignature", true, false);
|
||||||
|
@ -2722,7 +2723,7 @@ namespace HRM.DA
|
||||||
tc.End();
|
tc.End();
|
||||||
}
|
}
|
||||||
|
|
||||||
public int SavePersonalInfo(HREmployee employee)
|
public HREmployee SavePersonalInfo(HREmployee employee)
|
||||||
{
|
{
|
||||||
TransactionContext tc = null;
|
TransactionContext tc = null;
|
||||||
try
|
try
|
||||||
|
@ -2737,7 +2738,7 @@ namespace HRM.DA
|
||||||
if (employee.IsNew)
|
if (employee.IsNew)
|
||||||
{
|
{
|
||||||
this.SetObjectID(employee, (HREmployeeDA.GetNewID(tc)));
|
this.SetObjectID(employee, (HREmployeeDA.GetNewID(tc)));
|
||||||
|
employee.EmployeeNo = this.GetNextEmployeeNo(tc);
|
||||||
HREmployeeDA.Insert(tc, employee);
|
HREmployeeDA.Insert(tc, employee);
|
||||||
}
|
}
|
||||||
else
|
else
|
||||||
|
@ -2749,7 +2750,7 @@ namespace HRM.DA
|
||||||
|
|
||||||
|
|
||||||
tc.End();
|
tc.End();
|
||||||
return employee.ID;
|
return employee;
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
@ -2763,7 +2764,35 @@ namespace HRM.DA
|
||||||
#endregion
|
#endregion
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
public string GetNextEmployeeNo(TransactionContext tc)
|
||||||
|
{
|
||||||
|
string nextEmployeeNo = string.Empty;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
|
||||||
|
object obj = tc.ExecuteScalar("SELECT MAX(Cast(EmployeeNo AS Decimal(18,0)))+1 FROM EMPLOYEE");
|
||||||
|
if (obj == DBNull.Value)
|
||||||
|
{
|
||||||
|
nextEmployeeNo = "1";
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
nextEmployeeNo = Convert.ToString(obj);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
#region Handle Exception
|
||||||
|
if (tc != null)
|
||||||
|
tc.HandleError();
|
||||||
|
ExceptionLog.Write(e);
|
||||||
|
throw new Exception(e.Message, e);
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
|
||||||
|
return nextEmployeeNo;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public int Save(HREmployee employee)
|
public int Save(HREmployee employee)
|
||||||
|
@ -5023,6 +5052,40 @@ namespace HRM.DA
|
||||||
return list;
|
return list;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public DataSet GetEmpELDetails(int empID)
|
||||||
|
{
|
||||||
|
DataSet empLeaveDetails = null;
|
||||||
|
TransactionContext tc = null;
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
tc = TransactionContext.Begin();
|
||||||
|
empLeaveDetails = HREmployeeDA.GetEmpELDetails(tc, empID);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
throw new Exception(e.Message);
|
||||||
|
}
|
||||||
|
return empLeaveDetails;
|
||||||
|
}
|
||||||
|
public DataSet GetNumberOfYears(int empID)
|
||||||
|
{
|
||||||
|
DataSet NumberOfYears = null;
|
||||||
|
TransactionContext tc = null;
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
tc = TransactionContext.Begin();
|
||||||
|
NumberOfYears = HREmployeeDA.GetNumberOfYears(tc, empID);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
throw new Exception(e.Message);
|
||||||
|
}
|
||||||
|
return NumberOfYears;
|
||||||
|
}
|
||||||
|
|
||||||
#region EmpHRQuestionAnswer service implementation
|
#region EmpHRQuestionAnswer service implementation
|
||||||
|
|
||||||
public List<EmpHRQuestionAnswer> GetEmpHRQuestionAnswers(TransactionContext tc, int id)
|
public List<EmpHRQuestionAnswer> GetEmpHRQuestionAnswers(TransactionContext tc, int id)
|
||||||
|
|
|
@ -978,6 +978,31 @@ namespace HRM.DA
|
||||||
return bShowInDesktop;
|
return bShowInDesktop;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public bool IsSalaryprocessed(DateTime dSalaryMonth, int payrollTypeID)
|
||||||
|
{
|
||||||
|
TransactionContext tc = null;
|
||||||
|
bool isSalaryprocessed;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
tc = TransactionContext.Begin();
|
||||||
|
isSalaryprocessed = SalaryProcessDA.IsSalaryprocessed(tc, dSalaryMonth, payrollTypeID);
|
||||||
|
tc.End();
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
#region Handle Exception
|
||||||
|
|
||||||
|
if (tc != null)
|
||||||
|
tc.HandleError();
|
||||||
|
ExceptionLog.Write(e);
|
||||||
|
throw new ServiceException(e.Message, e);
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
|
||||||
|
return isSalaryprocessed;
|
||||||
|
}
|
||||||
|
|
||||||
public List<SalaryProcess> GetAllProcess(int payrollTypeID, DateTime nextPayProcessDate)
|
public List<SalaryProcess> GetAllProcess(int payrollTypeID, DateTime nextPayProcessDate)
|
||||||
{
|
{
|
||||||
List<SalaryProcess> salaryProcesss = new List<SalaryProcess>();
|
List<SalaryProcess> salaryProcesss = new List<SalaryProcess>();
|
||||||
|
|
|
@ -288,6 +288,43 @@ namespace HRM.DA
|
||||||
|
|
||||||
return searchEmployees;
|
return searchEmployees;
|
||||||
}
|
}
|
||||||
|
public List<SearchEmployee> FindEmpCodeNameForEmployeePicker(int userID, int payrollTypeID, string code, string name)
|
||||||
|
{
|
||||||
|
List<SearchEmployee> searchEmployees = new List<SearchEmployee>();
|
||||||
|
|
||||||
|
TransactionContext tc = null;
|
||||||
|
try
|
||||||
|
{
|
||||||
|
tc = TransactionContext.Begin();
|
||||||
|
|
||||||
|
DataReader dr = new DataReader(SearchEmployeeDA.SearchForEmployeePicker(tc, userID, payrollTypeID, code, name));
|
||||||
|
searchEmployees = this.CreateObjects<SearchEmployee>(dr);
|
||||||
|
//while (dr.Read())
|
||||||
|
//{
|
||||||
|
// SearchEmployee item = new SearchEmployee();
|
||||||
|
// item.Name = dr.GetString("name");
|
||||||
|
// item.EmployeeNo = dr.GetString("employeeNo");
|
||||||
|
|
||||||
|
// searchEmployees.Add(item);
|
||||||
|
//}
|
||||||
|
dr.Close();
|
||||||
|
tc.End();
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
#region Handle Exception
|
||||||
|
|
||||||
|
if (tc != null)
|
||||||
|
tc.HandleError();
|
||||||
|
ExceptionLog.Write(e);
|
||||||
|
|
||||||
|
throw new ServiceException(e.Message, e);
|
||||||
|
|
||||||
|
#endregion
|
||||||
|
}
|
||||||
|
|
||||||
|
return searchEmployees;
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
public List<SearchEmployee> GetEmployeeNotYetUser(int payrollTypeID)
|
public List<SearchEmployee> GetEmployeeNotYetUser(int payrollTypeID)
|
||||||
|
|
|
@ -15448,6 +15448,10 @@ namespace HRM.Report.Attendence.AttendenceDataSet {
|
||||||
|
|
||||||
private global::System.Data.DataColumn columnShift;
|
private global::System.Data.DataColumn columnShift;
|
||||||
|
|
||||||
|
private global::System.Data.DataColumn columnMinutes;
|
||||||
|
|
||||||
|
private global::System.Data.DataColumn columnExtraAllowance;
|
||||||
|
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
public MonthlyKPIDetailDataTable() {
|
public MonthlyKPIDetailDataTable() {
|
||||||
|
@ -15633,6 +15637,22 @@ namespace HRM.Report.Attendence.AttendenceDataSet {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
|
public global::System.Data.DataColumn MinutesColumn {
|
||||||
|
get {
|
||||||
|
return this.columnMinutes;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
|
public global::System.Data.DataColumn ExtraAllowanceColumn {
|
||||||
|
get {
|
||||||
|
return this.columnExtraAllowance;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
[global::System.ComponentModel.Browsable(false)]
|
[global::System.ComponentModel.Browsable(false)]
|
||||||
|
@ -15689,7 +15709,9 @@ namespace HRM.Report.Attendence.AttendenceDataSet {
|
||||||
string Department,
|
string Department,
|
||||||
string Unit,
|
string Unit,
|
||||||
string FunctionalUnit,
|
string FunctionalUnit,
|
||||||
string Shift) {
|
string Shift,
|
||||||
|
double Minutes,
|
||||||
|
int ExtraAllowance) {
|
||||||
MonthlyKPIDetailRow rowMonthlyKPIDetailRow = ((MonthlyKPIDetailRow)(this.NewRow()));
|
MonthlyKPIDetailRow rowMonthlyKPIDetailRow = ((MonthlyKPIDetailRow)(this.NewRow()));
|
||||||
object[] columnValuesArray = new object[] {
|
object[] columnValuesArray = new object[] {
|
||||||
EmployeeName,
|
EmployeeName,
|
||||||
|
@ -15710,7 +15732,9 @@ namespace HRM.Report.Attendence.AttendenceDataSet {
|
||||||
Department,
|
Department,
|
||||||
Unit,
|
Unit,
|
||||||
FunctionalUnit,
|
FunctionalUnit,
|
||||||
Shift};
|
Shift,
|
||||||
|
Minutes,
|
||||||
|
ExtraAllowance};
|
||||||
rowMonthlyKPIDetailRow.ItemArray = columnValuesArray;
|
rowMonthlyKPIDetailRow.ItemArray = columnValuesArray;
|
||||||
this.Rows.Add(rowMonthlyKPIDetailRow);
|
this.Rows.Add(rowMonthlyKPIDetailRow);
|
||||||
return rowMonthlyKPIDetailRow;
|
return rowMonthlyKPIDetailRow;
|
||||||
|
@ -15752,6 +15776,8 @@ namespace HRM.Report.Attendence.AttendenceDataSet {
|
||||||
this.columnUnit = base.Columns["Unit"];
|
this.columnUnit = base.Columns["Unit"];
|
||||||
this.columnFunctionalUnit = base.Columns["FunctionalUnit"];
|
this.columnFunctionalUnit = base.Columns["FunctionalUnit"];
|
||||||
this.columnShift = base.Columns["Shift"];
|
this.columnShift = base.Columns["Shift"];
|
||||||
|
this.columnMinutes = base.Columns["Minutes"];
|
||||||
|
this.columnExtraAllowance = base.Columns["ExtraAllowance"];
|
||||||
}
|
}
|
||||||
|
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
@ -15795,6 +15821,10 @@ namespace HRM.Report.Attendence.AttendenceDataSet {
|
||||||
base.Columns.Add(this.columnFunctionalUnit);
|
base.Columns.Add(this.columnFunctionalUnit);
|
||||||
this.columnShift = new global::System.Data.DataColumn("Shift", typeof(string), null, global::System.Data.MappingType.Element);
|
this.columnShift = new global::System.Data.DataColumn("Shift", typeof(string), null, global::System.Data.MappingType.Element);
|
||||||
base.Columns.Add(this.columnShift);
|
base.Columns.Add(this.columnShift);
|
||||||
|
this.columnMinutes = new global::System.Data.DataColumn("Minutes", typeof(double), null, global::System.Data.MappingType.Element);
|
||||||
|
base.Columns.Add(this.columnMinutes);
|
||||||
|
this.columnExtraAllowance = new global::System.Data.DataColumn("ExtraAllowance", typeof(int), null, global::System.Data.MappingType.Element);
|
||||||
|
base.Columns.Add(this.columnExtraAllowance);
|
||||||
this.columnAttenType.Caption = "AttnType";
|
this.columnAttenType.Caption = "AttnType";
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -31459,6 +31489,38 @@ namespace HRM.Report.Attendence.AttendenceDataSet {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
|
public double Minutes {
|
||||||
|
get {
|
||||||
|
try {
|
||||||
|
return ((double)(this[this.tableMonthlyKPIDetail.MinutesColumn]));
|
||||||
|
}
|
||||||
|
catch (global::System.InvalidCastException e) {
|
||||||
|
throw new global::System.Data.StrongTypingException("The value for column \'Minutes\' in table \'MonthlyKPIDetail\' is DBNull.", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
this[this.tableMonthlyKPIDetail.MinutesColumn] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
|
public int ExtraAllowance {
|
||||||
|
get {
|
||||||
|
try {
|
||||||
|
return ((int)(this[this.tableMonthlyKPIDetail.ExtraAllowanceColumn]));
|
||||||
|
}
|
||||||
|
catch (global::System.InvalidCastException e) {
|
||||||
|
throw new global::System.Data.StrongTypingException("The value for column \'ExtraAllowance\' in table \'MonthlyKPIDetail\' is DBNull.", e);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
set {
|
||||||
|
this[this.tableMonthlyKPIDetail.ExtraAllowanceColumn] = value;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
public bool IsEmployeeNameNull() {
|
public bool IsEmployeeNameNull() {
|
||||||
|
@ -31686,6 +31748,30 @@ namespace HRM.Report.Attendence.AttendenceDataSet {
|
||||||
public void SetShiftNull() {
|
public void SetShiftNull() {
|
||||||
this[this.tableMonthlyKPIDetail.ShiftColumn] = global::System.Convert.DBNull;
|
this[this.tableMonthlyKPIDetail.ShiftColumn] = global::System.Convert.DBNull;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
|
public bool IsMinutesNull() {
|
||||||
|
return this.IsNull(this.tableMonthlyKPIDetail.MinutesColumn);
|
||||||
|
}
|
||||||
|
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
|
public void SetMinutesNull() {
|
||||||
|
this[this.tableMonthlyKPIDetail.MinutesColumn] = global::System.Convert.DBNull;
|
||||||
|
}
|
||||||
|
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
|
public bool IsExtraAllowanceNull() {
|
||||||
|
return this.IsNull(this.tableMonthlyKPIDetail.ExtraAllowanceColumn);
|
||||||
|
}
|
||||||
|
|
||||||
|
[global::System.Diagnostics.DebuggerNonUserCodeAttribute()]
|
||||||
|
[global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Data.Design.TypedDataSetGenerator", "17.0.0.0")]
|
||||||
|
public void SetExtraAllowanceNull() {
|
||||||
|
this[this.tableMonthlyKPIDetail.ExtraAllowanceColumn] = global::System.Convert.DBNull;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
/// <summary>
|
/// <summary>
|
||||||
|
|
|
@ -649,6 +649,8 @@
|
||||||
<xs:element name="Unit" msprop:Generator_ColumnPropNameInTable="UnitColumn" msprop:Generator_ColumnPropNameInRow="Unit" msprop:Generator_UserColumnName="Unit" msprop:Generator_ColumnVarNameInTable="columnUnit" type="xs:string" minOccurs="0" />
|
<xs:element name="Unit" msprop:Generator_ColumnPropNameInTable="UnitColumn" msprop:Generator_ColumnPropNameInRow="Unit" msprop:Generator_UserColumnName="Unit" msprop:Generator_ColumnVarNameInTable="columnUnit" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="FunctionalUnit" msprop:Generator_ColumnPropNameInTable="FunctionalUnitColumn" msprop:Generator_ColumnPropNameInRow="FunctionalUnit" msprop:Generator_UserColumnName="FunctionalUnit" msprop:Generator_ColumnVarNameInTable="columnFunctionalUnit" type="xs:string" minOccurs="0" />
|
<xs:element name="FunctionalUnit" msprop:Generator_ColumnPropNameInTable="FunctionalUnitColumn" msprop:Generator_ColumnPropNameInRow="FunctionalUnit" msprop:Generator_UserColumnName="FunctionalUnit" msprop:Generator_ColumnVarNameInTable="columnFunctionalUnit" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Shift" msprop:Generator_ColumnPropNameInTable="ShiftColumn" msprop:Generator_ColumnPropNameInRow="Shift" msprop:Generator_UserColumnName="Shift" msprop:Generator_ColumnVarNameInTable="columnShift" type="xs:string" minOccurs="0" />
|
<xs:element name="Shift" msprop:Generator_ColumnPropNameInTable="ShiftColumn" msprop:Generator_ColumnPropNameInRow="Shift" msprop:Generator_UserColumnName="Shift" msprop:Generator_ColumnVarNameInTable="columnShift" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="Minutes" msprop:Generator_ColumnPropNameInRow="Minutes" msprop:Generator_ColumnPropNameInTable="MinutesColumn" msprop:Generator_ColumnVarNameInTable="columnMinutes" msprop:Generator_UserColumnName="Minutes" type="xs:double" minOccurs="0" />
|
||||||
|
<xs:element name="ExtraAllowance" msprop:Generator_ColumnPropNameInRow="ExtraAllowance" msprop:Generator_ColumnPropNameInTable="ExtraAllowanceColumn" msprop:Generator_ColumnVarNameInTable="columnExtraAllowance" msprop:Generator_UserColumnName="ExtraAllowance" type="xs:int" minOccurs="0" />
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
|
@ -698,7 +700,7 @@
|
||||||
<xs:element name="Line" msprop:Generator_ColumnPropNameInTable="LineColumn" msprop:Generator_ColumnPropNameInRow="Line" msprop:Generator_UserColumnName="Line" msprop:Generator_ColumnVarNameInTable="columnLine" type="xs:string" minOccurs="0" />
|
<xs:element name="Line" msprop:Generator_ColumnPropNameInTable="LineColumn" msprop:Generator_ColumnPropNameInRow="Line" msprop:Generator_UserColumnName="Line" msprop:Generator_ColumnVarNameInTable="columnLine" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Floor" msprop:Generator_ColumnPropNameInTable="FloorColumn" msprop:Generator_ColumnPropNameInRow="Floor" msprop:Generator_UserColumnName="Floor" msprop:Generator_ColumnVarNameInTable="columnFloor" type="xs:string" minOccurs="0" />
|
<xs:element name="Floor" msprop:Generator_ColumnPropNameInTable="FloorColumn" msprop:Generator_ColumnPropNameInRow="Floor" msprop:Generator_UserColumnName="Floor" msprop:Generator_ColumnVarNameInTable="columnFloor" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="TotalOTDBL" msprop:Generator_ColumnPropNameInTable="TotalOTDBLColumn" msprop:Generator_ColumnPropNameInRow="TotalOTDBL" msprop:Generator_UserColumnName="TotalOTDBL" msprop:Generator_ColumnVarNameInTable="columnTotalOTDBL" type="xs:double" minOccurs="0" />
|
<xs:element name="TotalOTDBL" msprop:Generator_ColumnPropNameInTable="TotalOTDBLColumn" msprop:Generator_ColumnPropNameInRow="TotalOTDBL" msprop:Generator_UserColumnName="TotalOTDBL" msprop:Generator_ColumnVarNameInTable="columnTotalOTDBL" type="xs:double" minOccurs="0" />
|
||||||
<xs:element name="Division" msprop:Generator_UserColumnName="Division" msprop:Generator_ColumnPropNameInTable="DivisionColumn" msprop:Generator_ColumnPropNameInRow="Division" msprop:Generator_ColumnVarNameInTable="columnDivision" type="xs:string" minOccurs="0" />
|
<xs:element name="Division" msprop:Generator_ColumnPropNameInTable="DivisionColumn" msprop:Generator_ColumnPropNameInRow="Division" msprop:Generator_UserColumnName="Division" msprop:Generator_ColumnVarNameInTable="columnDivision" type="xs:string" minOccurs="0" />
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
|
@ -730,7 +732,7 @@
|
||||||
<xs:element name="AttnDate" msprop:Generator_ColumnPropNameInTable="AttnDateColumn" msprop:Generator_ColumnPropNameInRow="AttnDate" msprop:Generator_UserColumnName="AttnDate" msprop:Generator_ColumnVarNameInTable="columnAttnDate" type="xs:string" minOccurs="0" />
|
<xs:element name="AttnDate" msprop:Generator_ColumnPropNameInTable="AttnDateColumn" msprop:Generator_ColumnPropNameInRow="AttnDate" msprop:Generator_UserColumnName="AttnDate" msprop:Generator_ColumnVarNameInTable="columnAttnDate" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="WorkingHour" msprop:Generator_ColumnPropNameInTable="WorkingHourColumn" msprop:Generator_ColumnPropNameInRow="WorkingHour" msprop:Generator_UserColumnName="WorkingHour" msprop:Generator_ColumnVarNameInTable="columnWorkingHour" type="xs:string" minOccurs="0" />
|
<xs:element name="WorkingHour" msprop:Generator_ColumnPropNameInTable="WorkingHourColumn" msprop:Generator_ColumnPropNameInRow="WorkingHour" msprop:Generator_UserColumnName="WorkingHour" msprop:Generator_ColumnVarNameInTable="columnWorkingHour" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="InTimeShow" msprop:Generator_ColumnPropNameInTable="InTimeShowColumn" msprop:Generator_ColumnPropNameInRow="InTimeShow" msprop:Generator_UserColumnName="InTimeShow" msprop:Generator_ColumnVarNameInTable="columnInTimeShow" type="xs:string" minOccurs="0" />
|
<xs:element name="InTimeShow" msprop:Generator_ColumnPropNameInTable="InTimeShowColumn" msprop:Generator_ColumnPropNameInRow="InTimeShow" msprop:Generator_UserColumnName="InTimeShow" msprop:Generator_ColumnVarNameInTable="columnInTimeShow" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="LateHour" msprop:Generator_ColumnPropNameInRow="LateHour" msprop:Generator_ColumnPropNameInTable="LateHourColumn" msprop:Generator_ColumnVarNameInTable="columnLateHour" msprop:Generator_UserColumnName="LateHour" type="xs:string" minOccurs="0" />
|
<xs:element name="LateHour" msprop:Generator_UserColumnName="LateHour" msprop:Generator_ColumnPropNameInTable="LateHourColumn" msprop:Generator_ColumnPropNameInRow="LateHour" msprop:Generator_ColumnVarNameInTable="columnLateHour" type="xs:string" minOccurs="0" />
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
|
|
|
@ -4,48 +4,48 @@
|
||||||
Changes to this file may cause incorrect behavior and will be lost if
|
Changes to this file may cause incorrect behavior and will be lost if
|
||||||
the code is regenerated.
|
the code is regenerated.
|
||||||
</autogenerated>-->
|
</autogenerated>-->
|
||||||
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="-10" ViewPortY="1" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
|
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="-10" ViewPortY="123" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
|
||||||
<Shapes>
|
<Shapes>
|
||||||
<Shape ID="DesignTable:DailyAttnProcess" ZOrder="17" X="2" Y="30" Height="28" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
<Shape ID="DesignTable:DailyAttnProcess" ZOrder="18" X="2" Y="30" Height="28" Width="164" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EmpDailyAttnPrev" ZOrder="7" X="310" Y="116" Height="28" Width="172" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="349" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmpDailyAttnPrev" ZOrder="8" X="310" Y="116" Height="28" Width="172" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="349" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EmpDailyAttnParentNew" ZOrder="4" X="236" Y="34" Height="28" Width="211" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmpDailyAttnParentNew" ZOrder="5" X="236" Y="34" Height="28" Width="211" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:MonthlyDetail" ZOrder="40" X="1184" Y="70" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="253" />
|
<Shape ID="DesignTable:MonthlyDetail" ZOrder="40" X="1184" Y="70" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:EmpInfo" ZOrder="39" X="1446" Y="165" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
|
<Shape ID="DesignTable:EmpInfo" ZOrder="39" X="1446" Y="165" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
|
||||||
<Shape ID="DesignTable:IDCard" ZOrder="11" X="7" Y="131" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="24" />
|
<Shape ID="DesignTable:IDCard" ZOrder="12" X="7" Y="131" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:MonthlyAttnBenefit" ZOrder="25" X="1010" Y="275" Height="28" Width="182" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:MonthlyAttnBenefit" ZOrder="26" X="1010" Y="275" Height="28" Width="182" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BadliEmpNotAssignInWork" ZOrder="13" X="2" Y="165" Height="28" Width="224" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
<Shape ID="DesignTable:BadliEmpNotAssignInWork" ZOrder="14" X="2" Y="165" Height="28" Width="224" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BadliPaymentRegister" ZOrder="12" X="3" Y="96" Height="28" Width="194" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:BadliPaymentRegister" ZOrder="13" X="3" Y="96" Height="28" Width="194" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BadliWorkStatus" ZOrder="5" X="782" Y="388" Height="28" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="24" />
|
<Shape ID="DesignTable:BadliWorkStatus" ZOrder="6" X="782" Y="388" Height="28" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DailyLabourSummary" ZOrder="36" X="1517" Y="371" Height="162" Width="191" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="158" />
|
<Shape ID="DesignTable:DailyLabourSummary" ZOrder="36" X="1517" Y="371" Height="162" Width="191" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="158" />
|
||||||
<Shape ID="DesignTable:BadliDailyBill" ZOrder="38" X="1295" Y="310" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
<Shape ID="DesignTable:BadliDailyBill" ZOrder="38" X="1295" Y="310" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:BadliEmpAssignInWork" ZOrder="16" X="0" Y="0" Height="28" Width="202" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:BadliEmpAssignInWork" ZOrder="17" X="0" Y="0" Height="28" Width="202" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:TimeCard" ZOrder="30" X="242" Y="180" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:TimeCard" ZOrder="30" X="242" Y="180" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BadliWeeklyPayment" ZOrder="10" X="240" Y="149" Height="28" Width="189" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:BadliWeeklyPayment" ZOrder="11" X="240" Y="149" Height="28" Width="189" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BadliMonthWiseSummary" ZOrder="8" X="4" Y="321" Height="28" Width="217" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
<Shape ID="DesignTable:BadliMonthWiseSummary" ZOrder="9" X="4" Y="321" Height="28" Width="217" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DailyOverTime" ZOrder="37" X="1116" Y="539" Height="257" Width="151" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
<Shape ID="DesignTable:DailyOverTime" ZOrder="37" X="1116" Y="539" Height="257" Width="151" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:AttnBenefitDataCompare" ZOrder="35" X="717" Y="718" Height="239" Width="213" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
<Shape ID="DesignTable:AttnBenefitDataCompare" ZOrder="35" X="717" Y="718" Height="239" Width="213" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
||||||
<Shape ID="DesignTable:AttnMonthlyBDataCompare" ZOrder="34" X="3" Y="353" Height="28" Width="228" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:AttnMonthlyBDataCompare" ZOrder="34" X="3" Y="353" Height="28" Width="228" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:ActingAllowance" ZOrder="9" X="237" Y="120" Height="28" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:ActingAllowance" ZOrder="10" X="237" Y="120" Height="28" Width="163" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DepartmentWiseOT" ZOrder="33" X="1145" Y="777" Height="239" Width="180" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
<Shape ID="DesignTable:DepartmentWiseOT" ZOrder="33" X="1145" Y="777" Height="239" Width="180" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
||||||
<Shape ID="DesignTable:LeaveWithoutPay" ZOrder="19" X="235" Y="92" Height="28" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:LeaveWithoutPay" ZOrder="20" X="235" Y="92" Height="28" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DailyInOut" ZOrder="15" X="7" Y="195" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:DailyInOut" ZOrder="16" X="7" Y="195" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EmpAttenInfo" ZOrder="27" X="1434" Y="144" Height="182" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
|
<Shape ID="DesignTable:EmpAttenInfo" ZOrder="28" X="1434" Y="144" Height="182" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="178" />
|
||||||
<Shape ID="DesignTable:DailyAbsent" ZOrder="14" X="10" Y="260" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:DailyAbsent" ZOrder="15" X="10" Y="260" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:OddNumberInOut" ZOrder="32" X="13" Y="292" Height="28" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
<Shape ID="DesignTable:OddNumberInOut" ZOrder="32" X="13" Y="292" Height="28" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:InOutMissing" ZOrder="20" X="236" Y="63" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:InOutMissing" ZOrder="21" X="236" Y="63" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:MnthlyKPIDtlSummary" ZOrder="21" X="236" Y="2" Height="28" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:MnthlyKPIDtlSummary" ZOrder="22" X="236" Y="2" Height="28" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DateWiseInOut" ZOrder="26" X="1020" Y="502" Height="28" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
|
<Shape ID="DesignTable:DateWiseInOut" ZOrder="27" X="1020" Y="502" Height="28" Width="154" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:LateNessWise" ZOrder="6" X="930" Y="280" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:LateNessWise" ZOrder="7" X="930" Y="280" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DateWiseInOutFiledForce" ZOrder="31" X="1178" Y="502" Height="239" Width="213" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
<Shape ID="DesignTable:DateWiseInOutFiledForce" ZOrder="31" X="1178" Y="502" Height="239" Width="213" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
||||||
<Shape ID="DesignTable:AbsentDataForMailSender" ZOrder="23" X="407" Y="1" Height="28" Width="218" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
<Shape ID="DesignTable:AbsentDataForMailSender" ZOrder="24" X="407" Y="1" Height="28" Width="218" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DailyAttnReportForMailSender" ZOrder="22" X="405" Y="28" Height="28" Width="245" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="273" SplitterPosition="24" />
|
<Shape ID="DesignTable:DailyAttnReportForMailSender" ZOrder="23" X="405" Y="28" Height="28" Width="245" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="273" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:MonthlyKPIDetail" ZOrder="29" X="968" Y="266" Height="257" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
<Shape ID="DesignTable:MonthlyKPIDetail" ZOrder="1" X="968" Y="266" Height="257" Width="169" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:MonthlyAttendanceReportNew" ZOrder="18" X="0" Y="0" Height="28" Width="248" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:MonthlyAttendanceReportNew" ZOrder="19" X="0" Y="0" Height="28" Width="248" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:MonthlyAttn" ZOrder="2" X="12" Y="63" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="253" />
|
<Shape ID="DesignTable:MonthlyAttn" ZOrder="3" X="12" Y="63" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:EmpDailyAttn" ZOrder="1" X="470" Y="232" Height="257" Width="154" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="253" />
|
<Shape ID="DesignTable:EmpDailyAttn" ZOrder="2" X="470" Y="232" Height="257" Width="154" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:EmpDailyAttnParent" ZOrder="28" X="0" Y="108" Height="28" Width="184" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmpDailyAttnParent" ZOrder="29" X="0" Y="108" Height="28" Width="184" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EmpDailyAttnTest" ZOrder="24" X="681" Y="242" Height="239" Width="170" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
<Shape ID="DesignTable:EmpDailyAttnTest" ZOrder="25" X="681" Y="242" Height="239" Width="170" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="235" />
|
||||||
<Shape ID="DesignTable:EmpDailyAttnParentNewLiFung" ZOrder="3" X="312" Y="281" Height="219" Width="250" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="215" />
|
<Shape ID="DesignTable:EmpDailyAttnParentNewLiFung" ZOrder="4" X="312" Y="281" Height="219" Width="250" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="215" />
|
||||||
</Shapes>
|
</Shapes>
|
||||||
<Connectors />
|
<Connectors />
|
||||||
</DiagramLayout>
|
</DiagramLayout>
|
|
@ -1242,6 +1242,7 @@ namespace HRM.Report
|
||||||
string shortAttnType = "";
|
string shortAttnType = "";
|
||||||
if (!(dAttnProcessess == null || dAttnProcessess.Count <= 0))
|
if (!(dAttnProcessess == null || dAttnProcessess.Count <= 0))
|
||||||
{
|
{
|
||||||
|
dAttnProcessess= dAttnProcessess.OrderBy(x => x.AttnDate).ToList();
|
||||||
foreach (DailyAttnProcess dAttnProcess in dAttnProcessess)
|
foreach (DailyAttnProcess dAttnProcess in dAttnProcessess)
|
||||||
{
|
{
|
||||||
sLeaveName = string.Empty;
|
sLeaveName = string.Empty;
|
||||||
|
@ -1351,7 +1352,7 @@ namespace HRM.Report
|
||||||
startTime = startTime.Value.AddMinutes(-15) > dAttnProcess.InTime ? startTime.Value.AddMinutes(-15) : dAttnProcess.InTime;
|
startTime = startTime.Value.AddMinutes(-15) > dAttnProcess.InTime ? startTime.Value.AddMinutes(-15) : dAttnProcess.InTime;
|
||||||
|
|
||||||
endTime = dAttnProcess.OutTime;
|
endTime = dAttnProcess.OutTime;
|
||||||
if (endTime != DateTime.MinValue)
|
if (endTime != DateTime.MinValue && endTime != null)
|
||||||
{
|
{
|
||||||
if (endTime.Value.Subtract(startTime.Value).Add(TimeSpan.FromMinutes(1)).TotalHours >= dExtraAllowanceHours)
|
if (endTime.Value.Subtract(startTime.Value).Add(TimeSpan.FromMinutes(1)).TotalHours >= dExtraAllowanceHours)
|
||||||
{
|
{
|
||||||
|
@ -1413,10 +1414,10 @@ namespace HRM.Report
|
||||||
dTable.Rows.Add(Rowbody);
|
dTable.Rows.Add(Rowbody);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
DataView dv = dTable.DefaultView;
|
//DataView dv = dTable.DefaultView;
|
||||||
dv.Sort = "Date ASC";
|
//dv.Sort = "Date ASC";
|
||||||
DataTable sortedDT = dv.ToTable();
|
//DataTable sortedDT = dv.ToTable();
|
||||||
return sortedDT;
|
return dTable;
|
||||||
}
|
}
|
||||||
|
|
||||||
public DataTable GetEmpDailyAttn(int EmpID, DateTime dFromDate, DateTime dToDate, int PayrollTypeID)
|
public DataTable GetEmpDailyAttn(int EmpID, DateTime dFromDate, DateTime dToDate, int PayrollTypeID)
|
||||||
|
|
|
@ -46,19 +46,19 @@
|
||||||
</Field>
|
</Field>
|
||||||
<Field Name="AttnDate">
|
<Field Name="AttnDate">
|
||||||
<DataField>AttnDate</DataField>
|
<DataField>AttnDate</DataField>
|
||||||
<rd:TypeName>System.DateTime</rd:TypeName>
|
<rd:TypeName>System.String</rd:TypeName>
|
||||||
</Field>
|
</Field>
|
||||||
<Field Name="AttnType">
|
<Field Name="AttenType">
|
||||||
<DataField>AttnType</DataField>
|
<DataField>AttenType</DataField>
|
||||||
<rd:TypeName>System.Int16</rd:TypeName>
|
<rd:TypeName>System.String</rd:TypeName>
|
||||||
</Field>
|
</Field>
|
||||||
<Field Name="OTHour">
|
<Field Name="OTHour">
|
||||||
<DataField>OTHour</DataField>
|
<DataField>OTHour</DataField>
|
||||||
<rd:TypeName>System.Double</rd:TypeName>
|
<rd:TypeName>System.String</rd:TypeName>
|
||||||
</Field>
|
</Field>
|
||||||
<Field Name="ReferenceID">
|
<Field Name="ReferenceID">
|
||||||
<DataField>ReferenceID</DataField>
|
<DataField>ReferenceID</DataField>
|
||||||
<rd:TypeName>System.Int32</rd:TypeName>
|
<rd:TypeName>System.String</rd:TypeName>
|
||||||
</Field>
|
</Field>
|
||||||
<Field Name="KPIStatus">
|
<Field Name="KPIStatus">
|
||||||
<DataField>KPIStatus</DataField>
|
<DataField>KPIStatus</DataField>
|
||||||
|
@ -88,10 +88,30 @@
|
||||||
<DataField>Department</DataField>
|
<DataField>Department</DataField>
|
||||||
<rd:TypeName>System.String</rd:TypeName>
|
<rd:TypeName>System.String</rd:TypeName>
|
||||||
</Field>
|
</Field>
|
||||||
|
<Field Name="Unit">
|
||||||
|
<DataField>Unit</DataField>
|
||||||
|
<rd:TypeName>System.String</rd:TypeName>
|
||||||
|
</Field>
|
||||||
|
<Field Name="FunctionalUnit">
|
||||||
|
<DataField>FunctionalUnit</DataField>
|
||||||
|
<rd:TypeName>System.String</rd:TypeName>
|
||||||
|
</Field>
|
||||||
|
<Field Name="Shift">
|
||||||
|
<DataField>Shift</DataField>
|
||||||
|
<rd:TypeName>System.String</rd:TypeName>
|
||||||
|
</Field>
|
||||||
|
<Field Name="Minutes">
|
||||||
|
<DataField>Minutes</DataField>
|
||||||
|
<rd:TypeName>System.Double</rd:TypeName>
|
||||||
|
</Field>
|
||||||
|
<Field Name="ExtraAllowance">
|
||||||
|
<DataField>ExtraAllowance</DataField>
|
||||||
|
<rd:TypeName>System.Int32</rd:TypeName>
|
||||||
|
</Field>
|
||||||
</Fields>
|
</Fields>
|
||||||
<rd:DataSetInfo>
|
<rd:DataSetInfo>
|
||||||
<rd:DataSetName>AttendenceDataSet</rd:DataSetName>
|
<rd:DataSetName>AttendenceDataSet</rd:DataSetName>
|
||||||
<rd:SchemaPath>D:\Local\EchoTex\Echo_Desktop\Payroll.Report\Attendence\AttendenceDataSet\AttendenceDataSet.xsd</rd:SchemaPath>
|
<rd:SchemaPath>D:\Git\EchoTex_Payroll\HRM.Report\Attendence\AttendenceDataSet\AttendenceDataSet.xsd</rd:SchemaPath>
|
||||||
<rd:TableName>MonthlyKPIDetail</rd:TableName>
|
<rd:TableName>MonthlyKPIDetail</rd:TableName>
|
||||||
<rd:TableAdapterFillMethod />
|
<rd:TableAdapterFillMethod />
|
||||||
<rd:TableAdapterGetDataMethod />
|
<rd:TableAdapterGetDataMethod />
|
||||||
|
@ -131,7 +151,7 @@
|
||||||
</Fields>
|
</Fields>
|
||||||
<rd:DataSetInfo>
|
<rd:DataSetInfo>
|
||||||
<rd:DataSetName>AttendenceDataSet</rd:DataSetName>
|
<rd:DataSetName>AttendenceDataSet</rd:DataSetName>
|
||||||
<rd:SchemaPath>D:\Local\EchoTextPR\Echo_Desktop.root\Echo_Desktop\Payroll.Report\Attendence\AttendenceDataSet\AttendenceDataSet.xsd</rd:SchemaPath>
|
<rd:SchemaPath>D:\Git\EchoTex_Payroll\HRM.Report\Attendence\AttendenceDataSet\AttendenceDataSet.xsd</rd:SchemaPath>
|
||||||
<rd:TableName>MnthlyKPIDtlSummary</rd:TableName>
|
<rd:TableName>MnthlyKPIDtlSummary</rd:TableName>
|
||||||
<rd:TableAdapterFillMethod />
|
<rd:TableAdapterFillMethod />
|
||||||
<rd:TableAdapterGetDataMethod />
|
<rd:TableAdapterGetDataMethod />
|
||||||
|
@ -931,7 +951,7 @@
|
||||||
<Paragraph>
|
<Paragraph>
|
||||||
<TextRuns>
|
<TextRuns>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value />
|
<Value>=Math.Round(Sum(Fields!Minutes.Value)/60,2)</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontSize>8pt</FontSize>
|
<FontSize>8pt</FontSize>
|
||||||
<Color>Green</Color>
|
<Color>Green</Color>
|
||||||
|
@ -995,7 +1015,7 @@
|
||||||
<Paragraph>
|
<Paragraph>
|
||||||
<TextRuns>
|
<TextRuns>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value>=IIF((Sum(iif(Fields!AttnType.Value = 1 or Fields!AttnType.Value = 3 or Fields!AttnType.Value = 7 or Fields!AttnType.Value = 11 or Fields!AttnType.Value = 12,1,0)))>0,Sum(Fields!OTHour.Value)/(Sum(iif(Fields!AttnType.Value = 1 or Fields!AttnType.Value = 3 or Fields!AttnType.Value = 7 or Fields!AttnType.Value = 11 or Fields!AttnType.Value = 12,1,0))),0)</Value>
|
<Value>=IIF((Sum(iif(Fields!AttenType.Value = 1 or Fields!AttenType.Value = 3 or Fields!AttenType.Value = 7 or Fields!AttenType.Value = 11 or Fields!AttenType.Value = 12,1,0)))>0,Sum(Fields!OTHour.Value)/(Sum(iif(Fields!AttenType.Value = 1 or Fields!AttenType.Value = 3 or Fields!AttenType.Value = 7 or Fields!AttenType.Value = 11 or Fields!AttenType.Value = 12,1,0))),0)</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontSize>8pt</FontSize>
|
<FontSize>8pt</FontSize>
|
||||||
<Format>0.00;(0.00)</Format>
|
<Format>0.00;(0.00)</Format>
|
||||||
|
@ -1187,7 +1207,7 @@
|
||||||
<Paragraph>
|
<Paragraph>
|
||||||
<TextRuns>
|
<TextRuns>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value>=Sum(iif(Fields!AttnType.Value = 1 or Fields!AttnType.Value = 3 or Fields!AttnType.Value = 7 or Fields!AttnType.Value = 11 or Fields!AttnType.Value = 12,1,0))</Value>
|
<Value>=Sum(iif(Fields!AttenType.Value = 1 or Fields!AttenType.Value = 3 or Fields!AttenType.Value = 7 or Fields!AttenType.Value = 11 or Fields!AttenType.Value = 12,1,0))</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontSize>8pt</FontSize>
|
<FontSize>8pt</FontSize>
|
||||||
</Style>
|
</Style>
|
||||||
|
@ -1201,7 +1221,7 @@
|
||||||
<Border>
|
<Border>
|
||||||
<Style>Solid</Style>
|
<Style>Solid</Style>
|
||||||
</Border>
|
</Border>
|
||||||
<BackgroundColor>=iif(Sum(iif(Fields!AttnType.Value = 1 or Fields!AttnType.Value = 3 or Fields!AttnType.Value = 7 or Fields!AttnType.Value = 11 or Fields!AttnType.Value = 12,1,0))>0,"Yellow","White")</BackgroundColor>
|
<BackgroundColor>=iif(Sum(iif(Fields!AttenType.Value = 1 or Fields!AttenType.Value = 3 or Fields!AttenType.Value = 7 or Fields!AttenType.Value = 11 or Fields!AttenType.Value = 12,1,0))>0,"Yellow","White")</BackgroundColor>
|
||||||
<PaddingLeft>2pt</PaddingLeft>
|
<PaddingLeft>2pt</PaddingLeft>
|
||||||
<PaddingRight>2pt</PaddingRight>
|
<PaddingRight>2pt</PaddingRight>
|
||||||
<PaddingTop>2pt</PaddingTop>
|
<PaddingTop>2pt</PaddingTop>
|
||||||
|
@ -1219,7 +1239,7 @@
|
||||||
<Paragraph>
|
<Paragraph>
|
||||||
<TextRuns>
|
<TextRuns>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value>=Sum(iif(Fields!AttnType.Value = 5 or Fields!AttnType.Value = 8,1,0))</Value>
|
<Value>=Sum(iif(Fields!AttenType.Value = 5 or Fields!AttenType.Value = 8,1,0))</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontSize>8pt</FontSize>
|
<FontSize>8pt</FontSize>
|
||||||
</Style>
|
</Style>
|
||||||
|
@ -1233,7 +1253,7 @@
|
||||||
<Border>
|
<Border>
|
||||||
<Style>Solid</Style>
|
<Style>Solid</Style>
|
||||||
</Border>
|
</Border>
|
||||||
<BackgroundColor>=IIF(Sum(iif(Fields!AttnType.Value = 5 or Fields!AttnType.Value = 8,1,0))>0,"Yellow","White")</BackgroundColor>
|
<BackgroundColor>=IIF(Sum(iif(Fields!AttenType.Value = 5 or Fields!AttenType.Value = 8,1,0))>0,"Yellow","White")</BackgroundColor>
|
||||||
<PaddingLeft>2pt</PaddingLeft>
|
<PaddingLeft>2pt</PaddingLeft>
|
||||||
<PaddingRight>2pt</PaddingRight>
|
<PaddingRight>2pt</PaddingRight>
|
||||||
<PaddingTop>2pt</PaddingTop>
|
<PaddingTop>2pt</PaddingTop>
|
||||||
|
@ -1251,7 +1271,7 @@
|
||||||
<Paragraph>
|
<Paragraph>
|
||||||
<TextRuns>
|
<TextRuns>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value>=Sum(iif(Fields!AttnType.Value = 2,1,0))</Value>
|
<Value>=Sum(iif(Fields!AttenType.Value = 2,1,0))</Value>
|
||||||
<Style>
|
<Style>
|
||||||
<FontSize>8pt</FontSize>
|
<FontSize>8pt</FontSize>
|
||||||
</Style>
|
</Style>
|
||||||
|
@ -1265,7 +1285,7 @@
|
||||||
<Border>
|
<Border>
|
||||||
<Style>Solid</Style>
|
<Style>Solid</Style>
|
||||||
</Border>
|
</Border>
|
||||||
<BackgroundColor>=IIF(Sum(iif(Fields!AttnType.Value = 2,1,0))>0,"Yellow","White")</BackgroundColor>
|
<BackgroundColor>=IIF(Sum(iif(Fields!AttenType.Value = 2,1,0))>0,"Yellow","White")</BackgroundColor>
|
||||||
<PaddingLeft>2pt</PaddingLeft>
|
<PaddingLeft>2pt</PaddingLeft>
|
||||||
<PaddingRight>2pt</PaddingRight>
|
<PaddingRight>2pt</PaddingRight>
|
||||||
<PaddingTop>2pt</PaddingTop>
|
<PaddingTop>2pt</PaddingTop>
|
||||||
|
@ -4495,7 +4515,7 @@
|
||||||
<Height>2.20187in</Height>
|
<Height>2.20187in</Height>
|
||||||
<Style />
|
<Style />
|
||||||
</Body>
|
</Body>
|
||||||
<Width>23in</Width>
|
<Width>25in</Width>
|
||||||
<Page>
|
<Page>
|
||||||
<PageHeader>
|
<PageHeader>
|
||||||
<Height>1.45313in</Height>
|
<Height>1.45313in</Height>
|
||||||
|
@ -4722,7 +4742,7 @@
|
||||||
</Style>
|
</Style>
|
||||||
</PageFooter>
|
</PageFooter>
|
||||||
<PageHeight>8.5in</PageHeight>
|
<PageHeight>8.5in</PageHeight>
|
||||||
<PageWidth>25in</PageWidth>
|
<PageWidth>27in</PageWidth>
|
||||||
<LeftMargin>0.375in</LeftMargin>
|
<LeftMargin>0.375in</LeftMargin>
|
||||||
<TopMargin>0.375in</TopMargin>
|
<TopMargin>0.375in</TopMargin>
|
||||||
<Style />
|
<Style />
|
||||||
|
|
|
@ -276,7 +276,9 @@ namespace HRM.Report
|
||||||
dSet.Tables.Add(dTable);
|
dSet.Tables.Add(dTable);
|
||||||
|
|
||||||
//string RDLC = "Payroll.Report.RDLC.rptEmpDesignWiseProdBonus.rdlc";
|
//string RDLC = "Payroll.Report.RDLC.rptEmpDesignWiseProdBonus.rdlc";
|
||||||
|
|
||||||
string RDLC = "rptEmpDesignWiseProdBonus.rdlc";
|
string RDLC = "rptEmpDesignWiseProdBonus.rdlc";
|
||||||
|
//string RDLC = "rptEmpDesignWiseProdBonusOld.rdlc";
|
||||||
|
|
||||||
List<ReportParameter> _reportParameters = new List<ReportParameter>();
|
List<ReportParameter> _reportParameters = new List<ReportParameter>();
|
||||||
ReportParameter rParam = new ReportParameter("Month", dBonusMonth.ToString("MMM yyyy"));
|
ReportParameter rParam = new ReportParameter("Month", dBonusMonth.ToString("MMM yyyy"));
|
||||||
|
@ -337,6 +339,7 @@ namespace HRM.Report
|
||||||
DateTime? bonusIntime = DateTime.MinValue;
|
DateTime? bonusIntime = DateTime.MinValue;
|
||||||
DateTime? bonusOuttime = DateTime.MinValue;
|
DateTime? bonusOuttime = DateTime.MinValue;
|
||||||
List<ProdBonusAttn> prodAttn = new ProdBonusAttnService().GetBySetupID(designId);
|
List<ProdBonusAttn> prodAttn = new ProdBonusAttnService().GetBySetupID(designId);
|
||||||
|
if (prodAttn.Count <= 0) return null;
|
||||||
string empIds = string.Empty;
|
string empIds = string.Empty;
|
||||||
empIds = prodAttn.Select(x => x.EmployeeID).Distinct().Aggregate(new StringBuilder(), (sb, empid) => sb.Append(empid + ","), sb => sb.ToString().Trim(','));
|
empIds = prodAttn.Select(x => x.EmployeeID).Distinct().Aggregate(new StringBuilder(), (sb, empid) => sb.Append(empid + ","), sb => sb.ToString().Trim(','));
|
||||||
|
|
||||||
|
|
|
@ -16,6 +16,10 @@ using System.IO;
|
||||||
using Ease.Core;
|
using Ease.Core;
|
||||||
using Microsoft.Reporting.NETCore;
|
using Microsoft.Reporting.NETCore;
|
||||||
using Org.BouncyCastle.Ocsp;
|
using Org.BouncyCastle.Ocsp;
|
||||||
|
using HRM.Service;
|
||||||
|
using HRM.BO.Configuration;
|
||||||
|
using Microsoft.Extensions.Configuration;
|
||||||
|
using NPOI.SS.Formula.Functions;
|
||||||
|
|
||||||
namespace HRM.Report
|
namespace HRM.Report
|
||||||
{
|
{
|
||||||
|
@ -2914,5 +2918,526 @@ namespace HRM.Report
|
||||||
return reportProcessor.ShowDlgForEmployeeEvaluationSheet(null, dTEmpInfo, payrollTypeId, reportType);
|
return reportProcessor.ShowDlgForEmployeeEvaluationSheet(null, dTEmpInfo, payrollTypeId, reportType);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
//Echotex Profile Reports
|
||||||
|
public byte[] GetEmployeeCV(int empid, int payrollTypeId, string reportType)
|
||||||
|
{
|
||||||
|
ReportProcessor reportProcessor = new ReportProcessor();
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
HREmployee employee = new HREmployeeService().Get(empid);
|
||||||
|
|
||||||
|
DataRow oRow = null;
|
||||||
|
//_rImageManager = new RemoteImageManager();
|
||||||
|
String RDLC = "HRM.Report.RDLC.EmployeeCV.rdlc";
|
||||||
|
PayrollDataSet.dsCompany.EmployeePersonalInfoDataTable dEmpInfo = new HRM.Report.PayrollDataSet.dsCompany.EmployeePersonalInfoDataTable();
|
||||||
|
PayrollDataSet.dsCompany.EmployeeQualificationDataTable dEmpQualification = new HRM.Report.PayrollDataSet.dsCompany.EmployeeQualificationDataTable();
|
||||||
|
|
||||||
|
string sempId = Convert.ToString(employee.ID);
|
||||||
|
PhotoPath pPath = new PhotoPathService().Get().FirstOrDefault();
|
||||||
|
DataTable dtEmpBasicInfo = new EmployeeService().GetAllEmpBasicInfo(sempId)
|
||||||
|
.Tables[0]
|
||||||
|
.AsEnumerable()
|
||||||
|
.OrderBy(x => Convert.ToInt32(x["EmployeeID"].ToString()))
|
||||||
|
.CopyToDataTable();
|
||||||
|
|
||||||
|
|
||||||
|
foreach (DataRow drBasic in dtEmpBasicInfo.Rows)
|
||||||
|
{
|
||||||
|
oRow = dEmpInfo.NewRow();
|
||||||
|
|
||||||
|
if (drBasic != null)
|
||||||
|
{
|
||||||
|
oRow["EmpName"] = drBasic["Name"];
|
||||||
|
oRow["EmpCode"] = drBasic["EmployeeNo"];
|
||||||
|
oRow["FatherName"] = drBasic["FATHERNAME"];
|
||||||
|
oRow["MotherName"] = drBasic["MOTHERNAME"];
|
||||||
|
oRow["VoterID"] = drBasic["NationalID"];
|
||||||
|
oRow["Nationality"] = drBasic["Nationality"];
|
||||||
|
oRow["DateofBirth"] = drBasic["BIRTHDATE"];
|
||||||
|
oRow["Gender"] = (EnumGender)Convert.ToInt16(drBasic["GenderID"]);
|
||||||
|
oRow["MartialStatus"] = (EnumMaritalStatus)Convert.ToInt16(drBasic["MARITALSTATUSID"]);
|
||||||
|
oRow["Religion"] = drBasic["Religion"];
|
||||||
|
oRow["Email"] = drBasic["PERSONALEMAIL"];
|
||||||
|
//Commented for development
|
||||||
|
//oRow["EmpPhotograph"] = _rImageManager.GetImage(drBasic["PhotoPath"].ToString());
|
||||||
|
|
||||||
|
//Contact
|
||||||
|
oRow["Telephone1"] = drBasic["EMERGENCYTELEPHONE"];
|
||||||
|
oRow["Telephone2"] = drBasic["EMERGENCYMOBILE"];
|
||||||
|
oRow["PERSONALTELEPHONE"] = drBasic["PERSONALTELEPHONE"];
|
||||||
|
oRow["MobileNo"] = drBasic["MOBILENO"];
|
||||||
|
oRow["FaxNumber"] = drBasic["FAX"];
|
||||||
|
oRow["VillagePA"] = drBasic["PARMANENTADDRESS"];
|
||||||
|
oRow["PostOfficePA"] = drBasic["PermanentPO"];
|
||||||
|
oRow["ThanaPA"] = drBasic["ParmanentThana"];
|
||||||
|
oRow["DistrictPA"] = drBasic["ParmanentDistric"];
|
||||||
|
// oRow["Email"] = employee.Contacts[0].PersonalEMail;
|
||||||
|
oRow["OfficialEmail"] = drBasic["OFFICIALEMAIL"];
|
||||||
|
oRow["VillageTA"] = drBasic["PRESENTADDRESS"];
|
||||||
|
oRow["PostOfficeTA"] = drBasic["PresentPO"];
|
||||||
|
oRow["ThanaTA"] = drBasic["TempThana"];
|
||||||
|
oRow["DistrictTA"] = drBasic["TempDistric"];
|
||||||
|
oRow["Division"] = "";
|
||||||
|
oRow["Line"] = drBasic["Line"];
|
||||||
|
oRow["Department"] = drBasic["Department"];
|
||||||
|
oRow["Section"] = drBasic["Section"];
|
||||||
|
oRow["Designation"] = drBasic["Designation"];
|
||||||
|
oRow["Appointment"] = drBasic["JoiningDate"];
|
||||||
|
oRow["Status"] = (EnumStatus)Convert.ToInt16(drBasic["STATUS"]);
|
||||||
|
oRow["Grade"] = drBasic["GradeName"];
|
||||||
|
oRow["EducationLevel"] = drBasic["EducationLevel"];
|
||||||
|
oRow["CompletionDate"] = drBasic["PASSINGYEAR"];
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
dEmpInfo.Rows.Add(oRow);
|
||||||
|
|
||||||
|
|
||||||
|
}
|
||||||
|
DataSet dSet = new DataSet();
|
||||||
|
dEmpInfo.TableName = "dsCompany_EmployeePersonalInfo";
|
||||||
|
dSet.Tables.Add(dEmpInfo);
|
||||||
|
|
||||||
|
foreach (var empQualification in employee.Academics)
|
||||||
|
{
|
||||||
|
oRow = dEmpQualification.NewRow();
|
||||||
|
|
||||||
|
oRow["Qualification"] = empQualification.EducationLevel.Description;
|
||||||
|
oRow["CompletionDate"] = empQualification.PassingYear.ToString();
|
||||||
|
|
||||||
|
dEmpQualification.Rows.Add(oRow);
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
dEmpQualification.TableName = "dsCompany_EmployeeQualification";
|
||||||
|
dSet.Tables.Add(dEmpQualification);
|
||||||
|
|
||||||
|
//fReportViewer form = new fReportViewer();
|
||||||
|
//form.CommonReportView(null, dSet, RDLC, null);
|
||||||
|
return reportProcessor.CommonReportView(null, RDLC, dSet, null, null, true, payrollTypeId, reportType);
|
||||||
|
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
throw new Exception(ex.Message);
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
//public byte[] GetServiceBook(HREmployee employee, int authPersonID, int payrollTypeId, string reportType)
|
||||||
|
//{
|
||||||
|
// ReportProcessor reportProcessor = new ReportProcessor();
|
||||||
|
|
||||||
|
// try
|
||||||
|
// {
|
||||||
|
// //_rImageManager = new RemoteImageManager();
|
||||||
|
// string signaturePath = string.Empty;
|
||||||
|
// AuthorizedPerson oAuthPerson = null;
|
||||||
|
// int empID = employee.ID;
|
||||||
|
|
||||||
|
|
||||||
|
// if (authPersonID != null)
|
||||||
|
// {
|
||||||
|
// oAuthPerson = new AuthorizedPersonService().Get(authPersonID);
|
||||||
|
// //signaturePath = _rImageManager.GetImage(oAuthPerson.GetImage(authPersonID.Integer), "AuthSign.jpg");
|
||||||
|
// }
|
||||||
|
|
||||||
|
// String RDLC = "Payroll.Report.RDLC.rptServiceBook.rdlc";
|
||||||
|
// DataSet dSet = new DataSet();
|
||||||
|
// DataTable dTable = CollectDataForBanglaAppointment(employee, true);
|
||||||
|
// DateTime dTimeTemp;
|
||||||
|
// foreach (DataRow item in dTable.Rows)
|
||||||
|
// {
|
||||||
|
// string[] strArrs = item["JoiningDate"].ToString().Split('/', '-');
|
||||||
|
// if (strArrs.Length > 2)
|
||||||
|
// {
|
||||||
|
// dTimeTemp = new DateTime(Convert.ToInt32(strArrs[2]), Convert.ToInt32(strArrs[1]), Convert.ToInt32(strArrs[0]));
|
||||||
|
// item["JoiningDate"] = string.Format("{0} {1} {2}", dTimeTemp.Day, dTimeTemp.BanglaMonth(), dTimeTemp.Year);
|
||||||
|
// }
|
||||||
|
|
||||||
|
// string[] strArrs2 = item["BirthDate"].ToString().Split('/', '-');
|
||||||
|
// if (strArrs2.Length > 2)
|
||||||
|
// {
|
||||||
|
// dTimeTemp = new DateTime(Convert.ToInt32(strArrs2[2]), Convert.ToInt32(strArrs2[1]), Convert.ToInt32(strArrs2[0]));
|
||||||
|
// item["BirthDate"] = string.Format("{0} {1} {2}", dTimeTemp.Day, dTimeTemp.BanglaMonth(), dTimeTemp.Year);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
|
// dTable.TableName = "dsCompany_EmployeeAppointmentInfo";
|
||||||
|
// dSet.Tables.Add(dTable);
|
||||||
|
|
||||||
|
// //dTable = GetEmployeeExperiences(employee);
|
||||||
|
// dTable = GetServiceInfo(employee);
|
||||||
|
// dTable.TableName = "dsCompany_PastOwnerAndJobInfo";
|
||||||
|
// dSet.Tables.Add(dTable);
|
||||||
|
|
||||||
|
// dTable = GetEmpELDetails(employee, payrollTypeId);
|
||||||
|
// dTable.TableName = "dsCompany_LeaveRecord";
|
||||||
|
// dSet.Tables.Add(dTable);
|
||||||
|
|
||||||
|
// dTable = GetEmployeeBehaviourRecord(employee);
|
||||||
|
// dTable.TableName = "dsCompany_BehaviorRecord";
|
||||||
|
// dSet.Tables.Add(dTable);
|
||||||
|
|
||||||
|
|
||||||
|
// //dTable = CollectDataForServiceRecord(employee, true);
|
||||||
|
|
||||||
|
// foreach (DataRow item in dTable.Rows)
|
||||||
|
// {
|
||||||
|
// string[] strArrs = item["JoiningDate"].ToString().Split('/', '-');
|
||||||
|
// if (strArrs.Length > 2)
|
||||||
|
// {
|
||||||
|
// dTimeTemp = new DateTime(Convert.ToInt32(strArrs[2]), Convert.ToInt32(strArrs[1]), Convert.ToInt32(strArrs[0]));
|
||||||
|
// item["JoiningDate"] = string.Format("{0} {1} {2}", dTimeTemp.Day, dTimeTemp.BanglaMonth(), dTimeTemp.Year);
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
// dTable.TableName = "dsCompany_EmpSalaryInfo";
|
||||||
|
// dSet.Tables.Add(dTable);
|
||||||
|
|
||||||
|
// var builder = new ConfigurationBuilder().SetBasePath(Directory.GetCurrentDirectory()).AddJsonFile("appsettings.json");
|
||||||
|
// EmailSettings emailSettings = new EmailSettings();
|
||||||
|
// IConfiguration Configuration = builder.Build();
|
||||||
|
// Configuration.GetSection("CompanyInfo").Bind(emailSettings);
|
||||||
|
// string companyNameBangla = Configuration.GetSection("CompanyInfo")["CompanyNameBangla"];
|
||||||
|
// string companyAddressBangla = Configuration.GetSection("CompanyInfo")["CAddress"];
|
||||||
|
|
||||||
|
|
||||||
|
// ReportParameter rParam;
|
||||||
|
// List<ReportParameter> _reportParameters = new List<ReportParameter>();
|
||||||
|
// rParam = new ReportParameter("SignPath", signaturePath);
|
||||||
|
// _reportParameters.Add(rParam);
|
||||||
|
// rParam = new ReportParameter("AuthPersonName", oAuthPerson != null ? oAuthPerson.Name : "");
|
||||||
|
// _reportParameters.Add(rParam);
|
||||||
|
// rParam = new ReportParameter("companyNameBangla", companyNameBangla);
|
||||||
|
// _reportParameters.Add(rParam);
|
||||||
|
// rParam = new ReportParameter("CAddress", companyAddressBangla);
|
||||||
|
// _reportParameters.Add(rParam);
|
||||||
|
// //rParam = new ReportParameter("EmpSignature", _rImageManager.GetImage(employee.Signature));
|
||||||
|
// _reportParameters.Add(rParam);
|
||||||
|
|
||||||
|
// //fReportViewer rViewer = new fReportViewer();
|
||||||
|
// //rViewer.CommonReportViewer(null, RDLC, dSet, _reportParameters, true);
|
||||||
|
|
||||||
|
// return reportProcessor.CommonReportView(null, RDLC, dSet, null, null, true, payrollTypeId, reportType);
|
||||||
|
// }
|
||||||
|
// catch (Exception e)
|
||||||
|
// {
|
||||||
|
|
||||||
|
// throw new Exception(e.Message);
|
||||||
|
// }
|
||||||
|
// //finally
|
||||||
|
// //{
|
||||||
|
// // if (_rImageManager != null)
|
||||||
|
// // _rImageManager.Dispose();
|
||||||
|
// //}
|
||||||
|
|
||||||
|
//}
|
||||||
|
|
||||||
|
//private DataTable GetServiceInfo(HREmployee employee)
|
||||||
|
//{
|
||||||
|
// DataRow oRow = null;
|
||||||
|
// PayrollDataSet.dsCompany.PastOwnerAndJobInfoDataTable pastExpinfo = new PayrollDataSet.dsCompany.PastOwnerAndJobInfoDataTable();
|
||||||
|
|
||||||
|
// oRow = pastExpinfo.NewRow();
|
||||||
|
// //oRow["JoinDate"] = employee.JoiningDate.CommonDateFormat();
|
||||||
|
// //oRow["ResignationDate"] = employee.EndOfContractDate.HasValue ?
|
||||||
|
// // (employee.EndOfContractDate.Value == DateTime.MinValue ? "" : employee.EndOfContractDate.Value.CommonDateFormat())
|
||||||
|
// // : "";
|
||||||
|
// oRow["CauseOfResignation"] = string.Empty;
|
||||||
|
// pastExpinfo.Rows.Add(oRow);
|
||||||
|
|
||||||
|
// return pastExpinfo;
|
||||||
|
|
||||||
|
//}
|
||||||
|
//private DataTable GetEmployeeBehaviourRecord(HREmployee employee)
|
||||||
|
//{
|
||||||
|
// DataRow oRow = null;
|
||||||
|
// //PayrollDataSet.dsCompany.BehaviorRecordDataTable dempRecord = new HRM.Report.PayrollDataSet.dsCompany.BehaviorRecordDataTable();
|
||||||
|
// //DataSet ds = EmployeeBehaviourRecord.GetBrecordByEmpID(employee.ID);
|
||||||
|
// //if (ds.Tables.Count > 0 && ds.Tables[0].Rows.Count > 0)
|
||||||
|
// //{
|
||||||
|
// // DataTable bhaviourRecords = ds.Tables[0].AsEnumerable().CopyToDataTable();
|
||||||
|
// // foreach (DataRow bRecord in bhaviourRecords.Rows)
|
||||||
|
// // {
|
||||||
|
// // oRow = dempRecord.NewRow();
|
||||||
|
// // oRow["BehaviorDesc"] = bRecord["Description"];
|
||||||
|
// // oRow["BehaviourDescInBangla"] = bRecord["DescriptionBangla"];
|
||||||
|
// // DateTime dtTemp = Convert.ToDateTime(bRecord["ConductDate"]);
|
||||||
|
// // oRow["ConductDate"] = dtTemp.Day + " " + dtTemp.BanglaMonth() + " " + dtTemp.Year;
|
||||||
|
// // dempRecord.Rows.Add(oRow);
|
||||||
|
// // }
|
||||||
|
|
||||||
|
// //}
|
||||||
|
// //return dempRecord;
|
||||||
|
// return null;
|
||||||
|
//}
|
||||||
|
//private DataTable GetEmpELDetails(HREmployee employee, int payrollTypeID)
|
||||||
|
//{
|
||||||
|
// DataRow oRow = null;
|
||||||
|
// PayrollDataSet.dsCompany.LeaveRecordDataTable leaveReocd = new PayrollDataSet.dsCompany.LeaveRecordDataTable();
|
||||||
|
// DataSet OLeaveRecords = new HREmployeeService().GetEmpELDetails(employee.ID);
|
||||||
|
// //GetNumberOfYears
|
||||||
|
// DataSet NumberOfYears = new HREmployeeService().GetNumberOfYears(employee.ID);
|
||||||
|
|
||||||
|
// // for tomorrow
|
||||||
|
// //List<LeaveEncashment> oLeaveEncashment = new LeaveEncashmentService().GetByEmpIDs(employee.ID.ToString());
|
||||||
|
// List<Leave> oLeaves = new LeaveService().Get();
|
||||||
|
// Leave oLeave = null;
|
||||||
|
// LeaveYear lyy = new LeaveYearService().GetCurrentYear(payrollTypeID);
|
||||||
|
// Employee oEmp = new EmployeeService().Get(employee.ID);
|
||||||
|
// double EL = 0;
|
||||||
|
// int OpeningEL = 0;
|
||||||
|
// // for tomorrow
|
||||||
|
// //List<EmpLeaveStatus> dcurrentStatus = new EmpLeaveStatusService().CurrentYearStatus(new List<Employee> { oEmp }, lyy, EnumLeaveStatus.Approved);
|
||||||
|
// //if (dcurrentStatus.Count > 0)
|
||||||
|
// //{
|
||||||
|
|
||||||
|
// // for (int i = 0; i < dcurrentStatus.Count; i++)
|
||||||
|
// // {
|
||||||
|
// // oLeave = oLeaves.FirstOrDefault(x => x.ID == dcurrentStatus[i].LeaveId);
|
||||||
|
// // if (oLeave != null)
|
||||||
|
// // switch (oLeave.Code)
|
||||||
|
// // {
|
||||||
|
|
||||||
|
// // case "EL":
|
||||||
|
// // EL = (int)dcurrentStatus[i].OpeningBalance;
|
||||||
|
// // OpeningEL = (int)dcurrentStatus[i].OpeningBalance;
|
||||||
|
// // break;
|
||||||
|
// // default:
|
||||||
|
// // break;
|
||||||
|
// // }
|
||||||
|
// // }
|
||||||
|
|
||||||
|
// //}
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
// List<int> encashYears = new List<int>();
|
||||||
|
// // List<int> years = new List<int>();
|
||||||
|
// //foreach (DataRow dr in OLeaveRecords.Tables[0].Rows)
|
||||||
|
// //{
|
||||||
|
// // int yy = Convert.ToInt32(dr["Year"]);
|
||||||
|
// // bool yr = years.Contains(yy);
|
||||||
|
// // if (!yr)
|
||||||
|
// // years.Add(yy);
|
||||||
|
// //}
|
||||||
|
// int flag = 0;
|
||||||
|
// foreach (DataRow dr in OLeaveRecords.Tables[0].Rows)
|
||||||
|
// {
|
||||||
|
// int year = Convert.ToInt32(dr["Year"]);
|
||||||
|
// bool bEncashFound = false;
|
||||||
|
// ++flag;
|
||||||
|
// var result = NumberOfYears.Tables[0]
|
||||||
|
// .AsEnumerable().Where(x => Convert.ToInt32(x["Number"]) == flag && Convert.ToInt32(x["Year"]) == year).FirstOrDefault();
|
||||||
|
// bool isFirstRow = false;
|
||||||
|
// //LeaveEncashment le = null;
|
||||||
|
// //if (oLeaveEncashment.Count > 0)
|
||||||
|
// //{
|
||||||
|
// // le = oLeaveEncashment.Where(x => x.EmployeeID.Integer == Convert.ToInt32(dr["EMPID"].ToString()) && Convert.ToDateTime(dr["ENDDATE"].ToString()) > x.EncashmentToDate).FirstOrDefault();
|
||||||
|
// // if (le != null && !encashYears.Any(x => x == le.EncashMonth.Year))
|
||||||
|
// // {
|
||||||
|
// // isFirstRow = true;
|
||||||
|
// // bEncashFound = true;
|
||||||
|
// // encashYears.Add(le.EncashMonth.Year);
|
||||||
|
// // }
|
||||||
|
// //}
|
||||||
|
// oRow = leaveReocd.NewRow();
|
||||||
|
// DateTime dtTemp = Convert.ToDateTime(dr["STARTDATE"]);
|
||||||
|
// oRow["FromDate"] = dtTemp.Day + " " + dtTemp.BanglaMonth() + " " + dtTemp.Year;
|
||||||
|
// dtTemp = Convert.ToDateTime(dr["ENDDATE"]);
|
||||||
|
// oRow["EndDate"] = dtTemp.Day + " " + dtTemp.BanglaMonth() + " " + dtTemp.Year;
|
||||||
|
// oRow["Total"] = dr["APRTOTALDAYS"];
|
||||||
|
// //oRow["TotalAmount"] = isFirstRow ? Math.Round(le.EncashmentDays, 2).ToString() : "0";//dr["APRTOTALDAYS"];
|
||||||
|
// oRow["TotalAmount"] = "0";//dr["APRTOTALDAYS"];
|
||||||
|
// //oRow["Date"] = isFirstRow ? le.EncashMonth.Day + " " + le.EncashMonth.BanglaMonth() + " " + le.EncashMonth.Year : "";
|
||||||
|
// oRow["Date"] = "";
|
||||||
|
// EL = EL - Convert.ToInt32(dr["APRTOTALDAYS"]);
|
||||||
|
// oRow["RemainingEL"] = EL;
|
||||||
|
// // oRow["RemainingELCash"] = isFirstRow ? le.AbsentDays.ToString() : "0"; ;// EL;
|
||||||
|
// oRow["RemainingELCash"] = "0";// EL;
|
||||||
|
|
||||||
|
// leaveReocd.Rows.Add(oRow);
|
||||||
|
// if (result != null)
|
||||||
|
// {
|
||||||
|
// //result = null;
|
||||||
|
// flag = 0;
|
||||||
|
// oRow = leaveReocd.NewRow();
|
||||||
|
// oRow["FromDate"] = "";
|
||||||
|
// oRow["EndDate"] = "";
|
||||||
|
// oRow["Total"] = "";
|
||||||
|
// // for tomorrow
|
||||||
|
// //LeaveEncashment le = oLeaveEncashment.Where(x => x.EmployeeID == Convert.ToInt32(dr["EMPID"].ToString()) && Convert.ToInt16(result[0].ToString()) == x.EncashmentFromDate.Year).FirstOrDefault();
|
||||||
|
// //if (le != null)
|
||||||
|
// //{
|
||||||
|
// // oRow["TotalAmount"] = Math.Round(le.EncashmentDays, 2).ToString();
|
||||||
|
// // oRow["Date"] = le.EncashMonth.Day + " " + le.EncashMonth.BanglaMonth() + " " + le.EncashMonth.Year;
|
||||||
|
// // oRow["RemainingEL"] = Math.Round((decimal)EL, 2);
|
||||||
|
// // oRow["RemainingELCash"] = Math.Round(EL - le.EncashmentDays, 2) > 0 ? (Math.Round(EL - le.EncashmentDays, 2)).ToString() : "0";
|
||||||
|
// // leaveReocd.Rows.Add(oRow);
|
||||||
|
// // EL -= Math.Round(le.EncashmentDays, 2);
|
||||||
|
// //}
|
||||||
|
// result = null;
|
||||||
|
|
||||||
|
// }
|
||||||
|
|
||||||
|
|
||||||
|
// }
|
||||||
|
// return leaveReocd;
|
||||||
|
//}
|
||||||
|
|
||||||
|
public byte[] GetAsstOfficeAndAbove(int empid, int payrollTypeID, string reportType)
|
||||||
|
{
|
||||||
|
try
|
||||||
|
{
|
||||||
|
Employee employee = new EmployeeService().Get(empid);
|
||||||
|
|
||||||
|
String RDLC = "HRM.Report.RDLC.ApLetterForAssistantOfficerToAbove.rdlc";
|
||||||
|
DataSet dSet = new DataSet();
|
||||||
|
DataTable dTable = CollectDataForEnglishAppointment(employee, payrollTypeID);
|
||||||
|
dTable.TableName = "dsCompany_EmployeeAppointmentInfo";
|
||||||
|
dSet.Tables.Add(dTable);
|
||||||
|
|
||||||
|
|
||||||
|
double total = 0;
|
||||||
|
if (dSet.Tables[0].Rows.Count > 0)
|
||||||
|
{
|
||||||
|
total = Convert.ToDouble(dSet.Tables[0].Rows[0]["Basic"]) +
|
||||||
|
Convert.ToDouble(dSet.Tables[0].Rows[0]["HouseRent"]) +
|
||||||
|
Convert.ToDouble(dSet.Tables[0].Rows[0]["Conveyence"]) +
|
||||||
|
Convert.ToDouble(dSet.Tables[0].Rows[0]["Medical"]);
|
||||||
|
// Convert.ToDouble(dSet.Tables[0].Rows[0]["Food"]);
|
||||||
|
}
|
||||||
|
|
||||||
|
SystemInformation systemInformation = new SystemInformationService().Get();
|
||||||
|
List<ReportParameter> _parameters = new List<ReportParameter>();
|
||||||
|
|
||||||
|
ReportParameter parameter = new ReportParameter("CompanyName", systemInformation.name);
|
||||||
|
_parameters.Add(parameter);
|
||||||
|
parameter = new ReportParameter("AmountInWord", Global.NumericFunctions.AmountInWords((decimal)total, "", " only"));
|
||||||
|
_parameters.Add(parameter);
|
||||||
|
|
||||||
|
|
||||||
|
ReportProcessor reportProcessor = new ReportProcessor();
|
||||||
|
return reportProcessor.CommonReportView(null, RDLC, dSet, null, _parameters, false, payrollTypeID, reportType);
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
throw new Exception(ex.Message);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
private DataTable CollectDataForEnglishAppointment(Employee employee, int payrollTypeID)
|
||||||
|
{
|
||||||
|
DataRow oRow = null;
|
||||||
|
PayrollDataSet.dsCompany.EmployeeAppointmentInfoDataTable dEmpInfo = new HRM.Report.PayrollDataSet.dsCompany.EmployeeAppointmentInfoDataTable();
|
||||||
|
string sempId = Convert.ToString(employee.ID);
|
||||||
|
PhotoPath pPath = new PhotoPathService().Get().FirstOrDefault();
|
||||||
|
DataSet ds = new EmployeeService().GetAllEmpBasicInfo(sempId);
|
||||||
|
DataTable dtEmpBasicInfo = new DataTable();
|
||||||
|
|
||||||
|
if (ds.Tables[0].Rows.Count > 0)
|
||||||
|
{
|
||||||
|
dtEmpBasicInfo = ds.Tables[0]
|
||||||
|
.AsEnumerable()
|
||||||
|
.CopyToDataTable();
|
||||||
|
}
|
||||||
|
|
||||||
|
foreach (DataRow drBasic in dtEmpBasicInfo.Rows)
|
||||||
|
{
|
||||||
|
oRow = dEmpInfo.NewRow();
|
||||||
|
oRow["EmpName"] = drBasic["Name"];
|
||||||
|
oRow["EmpCode"] = drBasic["EmployeeNo"];
|
||||||
|
oRow["FatherName"] = drBasic["FATHERNAME"];
|
||||||
|
oRow["MotherName"] = drBasic["MOTHERNAME"];
|
||||||
|
oRow["HusbandName"] = string.Empty;
|
||||||
|
oRow["JoiningDate"] = Convert.ToDateTime(drBasic["JoiningDate"].ToString()).ToString("dd'/'MM'/'yyyy");
|
||||||
|
oRow["ProbationEndDate"] = Convert.ToDateTime(drBasic["JoiningDate"].ToString()).AddDays(90).ToString("dd'/'MM'/'yyyy");
|
||||||
|
oRow["BirthDate"] = Convert.ToDateTime(drBasic["BIRTHDATE"]).ToString("dd'/'MM'/'yyyy");
|
||||||
|
oRow["BloodGroup"] = ((EnumBloodGroup)Convert.ToInt32(drBasic["BLOODGROUP"].ToString())).BloodGroupToFriendlyName();
|
||||||
|
|
||||||
|
oRow["Nationality"] = drBasic["Nationality"];
|
||||||
|
oRow["Gender"] = (EnumGender)Convert.ToInt16(drBasic["GenderID"]);
|
||||||
|
oRow["MartialStatus"] = (EnumMaritalStatus)Convert.ToInt16(drBasic["MARITALSTATUSID"]);
|
||||||
|
oRow["Religion"] = drBasic["Religion"];
|
||||||
|
oRow["VillagePA"] = drBasic["PARMANENTADDRESS"];
|
||||||
|
oRow["PostOfficePA"] = drBasic["PermanentPO"];
|
||||||
|
oRow["ThanaPA"] = drBasic["ParmanentThana"];
|
||||||
|
oRow["DistrictPA"] = drBasic["ParmanentDistric"];
|
||||||
|
oRow["VillageTA"] = drBasic["PRESENTADDRESS"];
|
||||||
|
oRow["PostOfficeTA"] = drBasic["PresentPO"];
|
||||||
|
oRow["ThanaTA"] = drBasic["TempThana"];
|
||||||
|
oRow["DistrictTA"] = drBasic["TempDistric"];
|
||||||
|
oRow["Department"] = drBasic["Department"];
|
||||||
|
oRow["Section"] = drBasic["Section"];
|
||||||
|
oRow["Floor"] = drBasic["Floor"];
|
||||||
|
oRow["Designation"] = drBasic["Designation"];
|
||||||
|
|
||||||
|
oRow["Basic"] = employee.BasicSalary;
|
||||||
|
List<ADParameter> adParams = new ADParameterService().Get(employee.GradeID, EnumEntitleType.Grade, EnumAllowOrDeduct.Allowance, payrollTypeID);
|
||||||
|
List<ADParameterEmployee> adParamEmps = null;
|
||||||
|
|
||||||
|
//EmployeeGradeSalary oEmpGradeSalary = new EmployeeGradeSalaryService().Get();
|
||||||
|
EmployeeGradeSalary oEmpGradeSalary = new EmployeeGradeSalaryService().GetBasicOnDateBAT(employee.ID, DateTime.Now);
|
||||||
|
if (adParams != null)
|
||||||
|
{
|
||||||
|
foreach (ADParameter adParam in adParams)
|
||||||
|
{
|
||||||
|
double amount = new ADParameterService().GetGradeDefinedAmount(employee, employee.BasicSalary, employee.GrossSalary, oEmpGradeSalary, adParam);
|
||||||
|
switch (adParam.AllowanceDeduction.Code.Trim())
|
||||||
|
{
|
||||||
|
case "008":
|
||||||
|
oRow["HouseRent"] = amount;
|
||||||
|
break;
|
||||||
|
case "010":
|
||||||
|
oRow["Conveyence"] = amount;
|
||||||
|
break;
|
||||||
|
case "011":
|
||||||
|
oRow["Medical"] = amount;
|
||||||
|
break;
|
||||||
|
case "006":
|
||||||
|
oRow["Food"] = amount;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
adParamEmps = new ADParameterEmployeeService().GetByEmployee(employee.ID, EnumAllowOrDeduct.Allowance, EnumADEmpType.AppliedToIndividual);
|
||||||
|
|
||||||
|
if (adParamEmps != null)
|
||||||
|
{
|
||||||
|
foreach (ADParameterEmployee adEmp in adParamEmps)
|
||||||
|
{
|
||||||
|
|
||||||
|
switch (adEmp.AllowDeduct.Code.Trim())
|
||||||
|
{
|
||||||
|
case "008":
|
||||||
|
oRow["HouseRent"] = adEmp.MonthlyAmount;
|
||||||
|
break;
|
||||||
|
case "010":
|
||||||
|
oRow["Conveyence"] = adEmp.MonthlyAmount;
|
||||||
|
break;
|
||||||
|
case "011":
|
||||||
|
oRow["Medical"] = adEmp.MonthlyAmount;
|
||||||
|
break;
|
||||||
|
case "006":
|
||||||
|
oRow["Food"] = adEmp.MonthlyAmount;
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
dEmpInfo.Rows.Add(oRow);
|
||||||
|
}
|
||||||
|
|
||||||
|
return dEmpInfo;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -45,6 +45,7 @@
|
||||||
<None Remove="RDLC\AllDigitalServiceBook.rdlc" />
|
<None Remove="RDLC\AllDigitalServiceBook.rdlc" />
|
||||||
<None Remove="RDLC\AllEmpTaxInfo.rdlc" />
|
<None Remove="RDLC\AllEmpTaxInfo.rdlc" />
|
||||||
<None Remove="RDLC\AllMedicalClaim.rdlc" />
|
<None Remove="RDLC\AllMedicalClaim.rdlc" />
|
||||||
|
<None Remove="RDLC\ApLetterForAssistantOfficerToAbove.rdlc" />
|
||||||
<None Remove="RDLC\ApointmentLetterForStuff.rdlc" />
|
<None Remove="RDLC\ApointmentLetterForStuff.rdlc" />
|
||||||
<None Remove="RDLC\ApointmentLetterForWorker.rdlc" />
|
<None Remove="RDLC\ApointmentLetterForWorker.rdlc" />
|
||||||
<None Remove="RDLC\ArrearBankAdvice.rdlc" />
|
<None Remove="RDLC\ArrearBankAdvice.rdlc" />
|
||||||
|
@ -239,6 +240,7 @@
|
||||||
<None Remove="RDLC\rptDeletedLifeCycleForExcel.rdlc" />
|
<None Remove="RDLC\rptDeletedLifeCycleForExcel.rdlc" />
|
||||||
<None Remove="RDLC\rptEmpAcademicInfo.rdlc" />
|
<None Remove="RDLC\rptEmpAcademicInfo.rdlc" />
|
||||||
<None Remove="RDLC\rptEmpDesignWiseProdBonus.rdlc" />
|
<None Remove="RDLC\rptEmpDesignWiseProdBonus.rdlc" />
|
||||||
|
<None Remove="RDLC\rptEmpDesignWiseProdBonusOld.rdlc" />
|
||||||
<None Remove="RDLC\rptEmpGeneralInfo.rdlc" />
|
<None Remove="RDLC\rptEmpGeneralInfo.rdlc" />
|
||||||
<None Remove="RDLC\rptEmployeeChildInfo.rdlc" />
|
<None Remove="RDLC\rptEmployeeChildInfo.rdlc" />
|
||||||
<None Remove="RDLC\rptEmployeeContactInfo.rdlc" />
|
<None Remove="RDLC\rptEmployeeContactInfo.rdlc" />
|
||||||
|
@ -313,11 +315,14 @@
|
||||||
<EmbeddedResource Include="Attendence\RDLC\MonthlyDetailAttnEcho.rdlc" />
|
<EmbeddedResource Include="Attendence\RDLC\MonthlyDetailAttnEcho.rdlc" />
|
||||||
<EmbeddedResource Include="Attendence\RDLC\MultipleJobCard.rdlc" />
|
<EmbeddedResource Include="Attendence\RDLC\MultipleJobCard.rdlc" />
|
||||||
<EmbeddedResource Include="Attendence\RDLC\MultipleJobCardSub.rdlc" />
|
<EmbeddedResource Include="Attendence\RDLC\MultipleJobCardSub.rdlc" />
|
||||||
<EmbeddedResource Include="Attendence\RDLC\rptMonthlyKPI.rdlc" />
|
<EmbeddedResource Include="Attendence\RDLC\rptMonthlyKPI.rdlc">
|
||||||
|
<CopyToOutputDirectory>Always</CopyToOutputDirectory>
|
||||||
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="RDLC\ActiveEmployeeDetail.rdlc" />
|
<EmbeddedResource Include="RDLC\ActiveEmployeeDetail.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\AllDigitalServiceBook.rdlc" />
|
<EmbeddedResource Include="RDLC\AllDigitalServiceBook.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\AllEmpTaxInfo.rdlc" />
|
<EmbeddedResource Include="RDLC\AllEmpTaxInfo.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\AllMedicalClaim.rdlc" />
|
<EmbeddedResource Include="RDLC\AllMedicalClaim.rdlc" />
|
||||||
|
<EmbeddedResource Include="RDLC\ApLetterForAssistantOfficerToAbove.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\ApointmentLetterForStuff.rdlc" />
|
<EmbeddedResource Include="RDLC\ApointmentLetterForStuff.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\ApointmentLetterForWorker.rdlc" />
|
<EmbeddedResource Include="RDLC\ApointmentLetterForWorker.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\ArrearBankAdvice.rdlc" />
|
<EmbeddedResource Include="RDLC\ArrearBankAdvice.rdlc" />
|
||||||
|
@ -527,7 +532,12 @@
|
||||||
<EmbeddedResource Include="RDLC\rptDeletedLifeCycle.rdlc" />
|
<EmbeddedResource Include="RDLC\rptDeletedLifeCycle.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\rptDeletedLifeCycleForExcel.rdlc" />
|
<EmbeddedResource Include="RDLC\rptDeletedLifeCycleForExcel.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\rptEmpAcademicInfo.rdlc" />
|
<EmbeddedResource Include="RDLC\rptEmpAcademicInfo.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\rptEmpDesignWiseProdBonus.rdlc" />
|
<EmbeddedResource Include="RDLC\rptEmpDesignWiseProdBonus.rdlc">
|
||||||
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
</EmbeddedResource>
|
||||||
|
<EmbeddedResource Include="RDLC\rptEmpDesignWiseProdBonusOld.rdlc">
|
||||||
|
<CopyToOutputDirectory>PreserveNewest</CopyToOutputDirectory>
|
||||||
|
</EmbeddedResource>
|
||||||
<EmbeddedResource Include="RDLC\rptEmpGeneralInfo.rdlc" />
|
<EmbeddedResource Include="RDLC\rptEmpGeneralInfo.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\rptEmployeeChildInfo.rdlc" />
|
<EmbeddedResource Include="RDLC\rptEmployeeChildInfo.rdlc" />
|
||||||
<EmbeddedResource Include="RDLC\rptEmployeeContactInfo.rdlc" />
|
<EmbeddedResource Include="RDLC\rptEmployeeContactInfo.rdlc" />
|
||||||
|
|
1618
HRM.Report/PayrollDataSet/dsCompany.Designer.cs
generated
|
@ -524,6 +524,13 @@
|
||||||
<xs:element name="NumberOfPreviousJob" msprop:Generator_ColumnPropNameInTable="NumberOfPreviousJobColumn" msprop:Generator_ColumnPropNameInRow="NumberOfPreviousJob" msprop:Generator_UserColumnName="NumberOfPreviousJob" msprop:Generator_ColumnVarNameInTable="columnNumberOfPreviousJob" type="xs:string" minOccurs="0" />
|
<xs:element name="NumberOfPreviousJob" msprop:Generator_ColumnPropNameInTable="NumberOfPreviousJobColumn" msprop:Generator_ColumnPropNameInRow="NumberOfPreviousJob" msprop:Generator_UserColumnName="NumberOfPreviousJob" msprop:Generator_ColumnVarNameInTable="columnNumberOfPreviousJob" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="LastPromotionBefore" msprop:Generator_ColumnPropNameInTable="LastPromotionBeforeColumn" msprop:Generator_ColumnPropNameInRow="LastPromotionBefore" msprop:Generator_UserColumnName="LastPromotionBefore" msprop:Generator_ColumnVarNameInTable="columnLastPromotionBefore" type="xs:string" minOccurs="0" />
|
<xs:element name="LastPromotionBefore" msprop:Generator_ColumnPropNameInTable="LastPromotionBeforeColumn" msprop:Generator_ColumnPropNameInRow="LastPromotionBefore" msprop:Generator_UserColumnName="LastPromotionBefore" msprop:Generator_ColumnVarNameInTable="columnLastPromotionBefore" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="EmergencyTel" msprop:Generator_ColumnPropNameInTable="EmergencyTelColumn" msprop:Generator_ColumnPropNameInRow="EmergencyTel" msprop:Generator_UserColumnName="EmergencyTel" msprop:Generator_ColumnVarNameInTable="columnEmergencyTel" type="xs:string" minOccurs="0" />
|
<xs:element name="EmergencyTel" msprop:Generator_ColumnPropNameInTable="EmergencyTelColumn" msprop:Generator_ColumnPropNameInRow="EmergencyTel" msprop:Generator_UserColumnName="EmergencyTel" msprop:Generator_ColumnVarNameInTable="columnEmergencyTel" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="OfficialEmail" msprop:Generator_ColumnPropNameInRow="OfficialEmail" msprop:Generator_ColumnPropNameInTable="OfficialEmailColumn" msprop:Generator_ColumnVarNameInTable="columnOfficialEmail" msprop:Generator_UserColumnName="OfficialEmail" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="EducationLevel" msprop:Generator_ColumnPropNameInRow="EducationLevel" msprop:Generator_ColumnPropNameInTable="EducationLevelColumn" msprop:Generator_ColumnVarNameInTable="columnEducationLevel" msprop:Generator_UserColumnName="EducationLevel" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="EMERGENCYTELEPHONE" msprop:Generator_ColumnPropNameInRow="EMERGENCYTELEPHONE" msprop:Generator_ColumnPropNameInTable="EMERGENCYTELEPHONEColumn" msprop:Generator_ColumnVarNameInTable="columnEMERGENCYTELEPHONE" msprop:Generator_UserColumnName="EMERGENCYTELEPHONE" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="EMERGENCYMOBILE" msprop:Generator_ColumnPropNameInRow="EMERGENCYMOBILE" msprop:Generator_ColumnPropNameInTable="EMERGENCYMOBILEColumn" msprop:Generator_ColumnVarNameInTable="columnEMERGENCYMOBILE" msprop:Generator_UserColumnName="EMERGENCYMOBILE" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="CompletionDate" msprop:Generator_ColumnPropNameInRow="CompletionDate" msprop:Generator_ColumnPropNameInTable="CompletionDateColumn" msprop:Generator_ColumnVarNameInTable="columnCompletionDate" msprop:Generator_UserColumnName="CompletionDate" type="xs:short" minOccurs="0" />
|
||||||
|
<xs:element name="Line" msprop:Generator_ColumnPropNameInRow="Line" msprop:Generator_ColumnPropNameInTable="LineColumn" msprop:Generator_ColumnVarNameInTable="columnLine" msprop:Generator_UserColumnName="Line" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="PERSONALTELEPHONE" msprop:Generator_ColumnPropNameInRow="PERSONALTELEPHONE" msprop:Generator_ColumnPropNameInTable="PERSONALTELEPHONEColumn" msprop:Generator_ColumnVarNameInTable="columnPERSONALTELEPHONE" msprop:Generator_UserColumnName="PERSONALTELEPHONE" type="xs:string" minOccurs="0" />
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
|
@ -912,47 +919,75 @@
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
<xs:element name="dtPerquisite" msprop:Generator_RowClassName="dtPerquisiteRow" msprop:Generator_RowEvHandlerName="dtPerquisiteRowChangeEventHandler" msprop:Generator_RowDeletedName="dtPerquisiteRowDeleted" msprop:Generator_RowDeletingName="dtPerquisiteRowDeleting" msprop:Generator_RowEvArgName="dtPerquisiteRowChangeEvent" msprop:Generator_TablePropName="dtPerquisite" msprop:Generator_RowChangedName="dtPerquisiteRowChanged" msprop:Generator_UserTableName="dtPerquisite" msprop:Generator_RowChangingName="dtPerquisiteRowChanging" msprop:Generator_TableClassName="dtPerquisiteDataTable" msprop:Generator_TableVarName="tabledtPerquisite">
|
<xs:element name="dtPerquisite" msprop:Generator_RowEvHandlerName="dtPerquisiteRowChangeEventHandler" msprop:Generator_RowDeletedName="dtPerquisiteRowDeleted" msprop:Generator_RowDeletingName="dtPerquisiteRowDeleting" msprop:Generator_RowEvArgName="dtPerquisiteRowChangeEvent" msprop:Generator_TablePropName="dtPerquisite" msprop:Generator_RowChangedName="dtPerquisiteRowChanged" msprop:Generator_UserTableName="dtPerquisite" msprop:Generator_RowChangingName="dtPerquisiteRowChanging" msprop:Generator_RowClassName="dtPerquisiteRow" msprop:Generator_TableClassName="dtPerquisiteDataTable" msprop:Generator_TableVarName="tabledtPerquisite">
|
||||||
<xs:complexType>
|
<xs:complexType>
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="Name" msdata:Caption="EmpName" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_ColumnVarNameInTable="columnName" type="xs:string" minOccurs="0" />
|
<xs:element name="Name" msdata:Caption="EmpName" msprop:Generator_ColumnPropNameInTable="NameColumn" msprop:Generator_ColumnPropNameInRow="Name" msprop:Generator_UserColumnName="Name" msprop:Generator_ColumnVarNameInTable="columnName" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Designation" msprop:Generator_UserColumnName="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_ColumnVarNameInTable="columnDesignation" type="xs:string" minOccurs="0" />
|
<xs:element name="Designation" msprop:Generator_ColumnPropNameInTable="DesignationColumn" msprop:Generator_ColumnPropNameInRow="Designation" msprop:Generator_UserColumnName="Designation" msprop:Generator_ColumnVarNameInTable="columnDesignation" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="EmpNo" msprop:Generator_UserColumnName="EmpNo" msprop:Generator_ColumnPropNameInTable="EmpNoColumn" msprop:Generator_ColumnPropNameInRow="EmpNo" msprop:Generator_ColumnVarNameInTable="columnEmpNo" type="xs:string" minOccurs="0" />
|
<xs:element name="EmpNo" msprop:Generator_ColumnPropNameInTable="EmpNoColumn" msprop:Generator_ColumnPropNameInRow="EmpNo" msprop:Generator_UserColumnName="EmpNo" msprop:Generator_ColumnVarNameInTable="columnEmpNo" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="AmountDescription" msprop:Generator_UserColumnName="AmountDescription" msprop:Generator_ColumnPropNameInTable="AmountDescriptionColumn" msprop:Generator_ColumnPropNameInRow="AmountDescription" msprop:Generator_ColumnVarNameInTable="columnAmountDescription" type="xs:string" minOccurs="0" />
|
<xs:element name="AmountDescription" msprop:Generator_ColumnPropNameInTable="AmountDescriptionColumn" msprop:Generator_ColumnPropNameInRow="AmountDescription" msprop:Generator_UserColumnName="AmountDescription" msprop:Generator_ColumnVarNameInTable="columnAmountDescription" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Amount" msprop:Generator_UserColumnName="Amount" msprop:Generator_ColumnPropNameInTable="AmountColumn" msprop:Generator_ColumnPropNameInRow="Amount" msprop:Generator_ColumnVarNameInTable="columnAmount" type="xs:double" minOccurs="0" />
|
<xs:element name="Amount" msprop:Generator_ColumnPropNameInTable="AmountColumn" msprop:Generator_ColumnPropNameInRow="Amount" msprop:Generator_UserColumnName="Amount" msprop:Generator_ColumnVarNameInTable="columnAmount" type="xs:double" minOccurs="0" />
|
||||||
<xs:element name="Grade" msprop:Generator_UserColumnName="Grade" msprop:Generator_ColumnPropNameInTable="GradeColumn" msprop:Generator_ColumnPropNameInRow="Grade" msprop:Generator_ColumnVarNameInTable="columnGrade" type="xs:string" minOccurs="0" />
|
<xs:element name="Grade" msprop:Generator_ColumnPropNameInTable="GradeColumn" msprop:Generator_ColumnPropNameInRow="Grade" msprop:Generator_UserColumnName="Grade" msprop:Generator_ColumnVarNameInTable="columnGrade" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Department" msprop:Generator_UserColumnName="Department" msprop:Generator_ColumnPropNameInTable="DepartmentColumn" msprop:Generator_ColumnPropNameInRow="Department" msprop:Generator_ColumnVarNameInTable="columnDepartment" type="xs:string" minOccurs="0" />
|
<xs:element name="Department" msprop:Generator_ColumnPropNameInTable="DepartmentColumn" msprop:Generator_ColumnPropNameInRow="Department" msprop:Generator_UserColumnName="Department" msprop:Generator_ColumnVarNameInTable="columnDepartment" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="CC" msprop:Generator_UserColumnName="CC" msprop:Generator_ColumnPropNameInTable="CCColumn" msprop:Generator_ColumnPropNameInRow="CC" msprop:Generator_ColumnVarNameInTable="columnCC" type="xs:string" minOccurs="0" />
|
<xs:element name="CC" msprop:Generator_ColumnPropNameInTable="CCColumn" msprop:Generator_ColumnPropNameInRow="CC" msprop:Generator_UserColumnName="CC" msprop:Generator_ColumnVarNameInTable="columnCC" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="DOJ" msprop:Generator_UserColumnName="DOJ" msprop:Generator_ColumnPropNameInTable="DOJColumn" msprop:Generator_ColumnPropNameInRow="DOJ" msprop:Generator_ColumnVarNameInTable="columnDOJ" type="xs:string" minOccurs="0" />
|
<xs:element name="DOJ" msprop:Generator_ColumnPropNameInTable="DOJColumn" msprop:Generator_ColumnPropNameInRow="DOJ" msprop:Generator_UserColumnName="DOJ" msprop:Generator_ColumnVarNameInTable="columnDOJ" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="DOB" msprop:Generator_UserColumnName="DOB" msprop:Generator_ColumnPropNameInTable="DOBColumn" msprop:Generator_ColumnPropNameInRow="DOB" msprop:Generator_ColumnVarNameInTable="columnDOB" type="xs:string" minOccurs="0" />
|
<xs:element name="DOB" msprop:Generator_ColumnPropNameInTable="DOBColumn" msprop:Generator_ColumnPropNameInRow="DOB" msprop:Generator_UserColumnName="DOB" msprop:Generator_ColumnVarNameInTable="columnDOB" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="GroupID" msprop:Generator_UserColumnName="GroupID" msprop:Generator_ColumnPropNameInTable="GroupIDColumn" msprop:Generator_ColumnPropNameInRow="GroupID" msprop:Generator_ColumnVarNameInTable="columnGroupID" type="xs:int" minOccurs="0" />
|
<xs:element name="GroupID" msprop:Generator_ColumnPropNameInTable="GroupIDColumn" msprop:Generator_ColumnPropNameInRow="GroupID" msprop:Generator_UserColumnName="GroupID" msprop:Generator_ColumnVarNameInTable="columnGroupID" type="xs:int" minOccurs="0" />
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
<xs:element name="BankAdviceWithRoutingNo" msprop:Generator_RowEvHandlerName="BankAdviceWithRoutingNoRowChangeEventHandler" msprop:Generator_RowDeletedName="BankAdviceWithRoutingNoRowDeleted" msprop:Generator_RowDeletingName="BankAdviceWithRoutingNoRowDeleting" msprop:Generator_RowEvArgName="BankAdviceWithRoutingNoRowChangeEvent" msprop:Generator_TablePropName="BankAdviceWithRoutingNo" msprop:Generator_RowChangedName="BankAdviceWithRoutingNoRowChanged" msprop:Generator_RowChangingName="BankAdviceWithRoutingNoRowChanging" msprop:Generator_TableClassName="BankAdviceWithRoutingNoDataTable" msprop:Generator_RowClassName="BankAdviceWithRoutingNoRow" msprop:Generator_TableVarName="tableBankAdviceWithRoutingNo" msprop:Generator_UserTableName="BankAdviceWithRoutingNo">
|
<xs:element name="BankAdviceWithRoutingNo" msprop:Generator_RowClassName="BankAdviceWithRoutingNoRow" msprop:Generator_RowEvHandlerName="BankAdviceWithRoutingNoRowChangeEventHandler" msprop:Generator_RowDeletedName="BankAdviceWithRoutingNoRowDeleted" msprop:Generator_RowDeletingName="BankAdviceWithRoutingNoRowDeleting" msprop:Generator_RowEvArgName="BankAdviceWithRoutingNoRowChangeEvent" msprop:Generator_TablePropName="BankAdviceWithRoutingNo" msprop:Generator_RowChangedName="BankAdviceWithRoutingNoRowChanged" msprop:Generator_UserTableName="BankAdviceWithRoutingNo" msprop:Generator_RowChangingName="BankAdviceWithRoutingNoRowChanging" msprop:Generator_TableClassName="BankAdviceWithRoutingNoDataTable" msprop:Generator_TableVarName="tableBankAdviceWithRoutingNo">
|
||||||
<xs:complexType>
|
<xs:complexType>
|
||||||
<xs:sequence>
|
<xs:sequence>
|
||||||
<xs:element name="EmpNo" msprop:Generator_ColumnPropNameInRow="EmpNo" msprop:Generator_ColumnPropNameInTable="EmpNoColumn" msprop:Generator_ColumnVarNameInTable="columnEmpNo" msprop:Generator_UserColumnName="EmpNo" type="xs:string" minOccurs="0" />
|
<xs:element name="EmpNo" msprop:Generator_UserColumnName="EmpNo" msprop:Generator_ColumnPropNameInTable="EmpNoColumn" msprop:Generator_ColumnPropNameInRow="EmpNo" msprop:Generator_ColumnVarNameInTable="columnEmpNo" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="EmpName" msprop:Generator_ColumnPropNameInRow="EmpName" msprop:Generator_ColumnPropNameInTable="EmpNameColumn" msprop:Generator_ColumnVarNameInTable="columnEmpName" msprop:Generator_UserColumnName="EmpName" type="xs:string" minOccurs="0" />
|
<xs:element name="EmpName" msprop:Generator_UserColumnName="EmpName" msprop:Generator_ColumnPropNameInTable="EmpNameColumn" msprop:Generator_ColumnPropNameInRow="EmpName" msprop:Generator_ColumnVarNameInTable="columnEmpName" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="AccountNo" msprop:Generator_ColumnPropNameInRow="AccountNo" msprop:Generator_ColumnPropNameInTable="AccountNoColumn" msprop:Generator_ColumnVarNameInTable="columnAccountNo" msprop:Generator_UserColumnName="AccountNo" type="xs:string" minOccurs="0" />
|
<xs:element name="AccountNo" msprop:Generator_UserColumnName="AccountNo" msprop:Generator_ColumnPropNameInTable="AccountNoColumn" msprop:Generator_ColumnPropNameInRow="AccountNo" msprop:Generator_ColumnVarNameInTable="columnAccountNo" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Amount" msprop:Generator_ColumnPropNameInRow="Amount" msprop:Generator_ColumnPropNameInTable="AmountColumn" msprop:Generator_ColumnVarNameInTable="columnAmount" msprop:Generator_UserColumnName="Amount" type="xs:double" minOccurs="0" />
|
<xs:element name="Amount" msprop:Generator_UserColumnName="Amount" msprop:Generator_ColumnPropNameInTable="AmountColumn" msprop:Generator_ColumnPropNameInRow="Amount" msprop:Generator_ColumnVarNameInTable="columnAmount" type="xs:double" minOccurs="0" />
|
||||||
<xs:element name="SalaryMonth" msprop:Generator_ColumnPropNameInRow="SalaryMonth" msprop:Generator_ColumnPropNameInTable="SalaryMonthColumn" msprop:Generator_ColumnVarNameInTable="columnSalaryMonth" msprop:Generator_UserColumnName="SalaryMonth" type="xs:dateTime" minOccurs="0" />
|
<xs:element name="SalaryMonth" msprop:Generator_UserColumnName="SalaryMonth" msprop:Generator_ColumnPropNameInTable="SalaryMonthColumn" msprop:Generator_ColumnPropNameInRow="SalaryMonth" msprop:Generator_ColumnVarNameInTable="columnSalaryMonth" type="xs:dateTime" minOccurs="0" />
|
||||||
<xs:element name="Email" msprop:Generator_ColumnPropNameInRow="Email" msprop:Generator_ColumnPropNameInTable="EmailColumn" msprop:Generator_ColumnVarNameInTable="columnEmail" msprop:Generator_UserColumnName="Email" type="xs:string" minOccurs="0" />
|
<xs:element name="Email" msprop:Generator_UserColumnName="Email" msprop:Generator_ColumnPropNameInTable="EmailColumn" msprop:Generator_ColumnPropNameInRow="Email" msprop:Generator_ColumnVarNameInTable="columnEmail" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="SLNo" msprop:Generator_ColumnPropNameInRow="SLNo" msprop:Generator_ColumnPropNameInTable="SLNoColumn" msprop:Generator_ColumnVarNameInTable="columnSLNo" msprop:Generator_UserColumnName="SLNo" type="xs:string" minOccurs="0" />
|
<xs:element name="SLNo" msprop:Generator_UserColumnName="SLNo" msprop:Generator_ColumnPropNameInTable="SLNoColumn" msprop:Generator_ColumnPropNameInRow="SLNo" msprop:Generator_ColumnVarNameInTable="columnSLNo" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Maintenance" msprop:Generator_ColumnPropNameInRow="Maintenance" msprop:Generator_ColumnPropNameInTable="MaintenanceColumn" msprop:Generator_ColumnVarNameInTable="columnMaintenance" msprop:Generator_UserColumnName="Maintenance" type="xs:string" minOccurs="0" />
|
<xs:element name="Maintenance" msprop:Generator_UserColumnName="Maintenance" msprop:Generator_ColumnPropNameInTable="MaintenanceColumn" msprop:Generator_ColumnPropNameInRow="Maintenance" msprop:Generator_ColumnVarNameInTable="columnMaintenance" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Currency" msprop:Generator_ColumnPropNameInRow="Currency" msprop:Generator_ColumnPropNameInTable="CurrencyColumn" msprop:Generator_ColumnVarNameInTable="columnCurrency" msprop:Generator_UserColumnName="Currency" type="xs:string" minOccurs="0" />
|
<xs:element name="Currency" msprop:Generator_UserColumnName="Currency" msprop:Generator_ColumnPropNameInTable="CurrencyColumn" msprop:Generator_ColumnPropNameInRow="Currency" msprop:Generator_ColumnVarNameInTable="columnCurrency" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Method" msprop:Generator_ColumnPropNameInRow="Method" msprop:Generator_ColumnPropNameInTable="MethodColumn" msprop:Generator_ColumnVarNameInTable="columnMethod" msprop:Generator_UserColumnName="Method" type="xs:string" minOccurs="0" />
|
<xs:element name="Method" msprop:Generator_UserColumnName="Method" msprop:Generator_ColumnPropNameInTable="MethodColumn" msprop:Generator_ColumnPropNameInRow="Method" msprop:Generator_ColumnVarNameInTable="columnMethod" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Cheque" msprop:Generator_ColumnPropNameInRow="Cheque" msprop:Generator_ColumnPropNameInTable="ChequeColumn" msprop:Generator_ColumnVarNameInTable="columnCheque" msprop:Generator_UserColumnName="Cheque" type="xs:string" minOccurs="0" />
|
<xs:element name="Cheque" msprop:Generator_UserColumnName="Cheque" msprop:Generator_ColumnPropNameInTable="ChequeColumn" msprop:Generator_ColumnPropNameInRow="Cheque" msprop:Generator_ColumnVarNameInTable="columnCheque" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="DeNomination" msprop:Generator_ColumnPropNameInRow="DeNomination" msprop:Generator_ColumnPropNameInTable="DeNominationColumn" msprop:Generator_ColumnVarNameInTable="columnDeNomination" msprop:Generator_UserColumnName="DeNomination" type="xs:string" minOccurs="0" />
|
<xs:element name="DeNomination" msprop:Generator_UserColumnName="DeNomination" msprop:Generator_ColumnPropNameInTable="DeNominationColumn" msprop:Generator_ColumnPropNameInRow="DeNomination" msprop:Generator_ColumnVarNameInTable="columnDeNomination" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Bank" msprop:Generator_ColumnPropNameInRow="Bank" msprop:Generator_ColumnPropNameInTable="BankColumn" msprop:Generator_ColumnVarNameInTable="columnBank" msprop:Generator_UserColumnName="Bank" type="xs:string" minOccurs="0" />
|
<xs:element name="Bank" msprop:Generator_UserColumnName="Bank" msprop:Generator_ColumnPropNameInTable="BankColumn" msprop:Generator_ColumnPropNameInRow="Bank" msprop:Generator_ColumnVarNameInTable="columnBank" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Branch" msprop:Generator_ColumnPropNameInRow="Branch" msprop:Generator_ColumnPropNameInTable="BranchColumn" msprop:Generator_ColumnVarNameInTable="columnBranch" msprop:Generator_UserColumnName="Branch" type="xs:string" minOccurs="0" />
|
<xs:element name="Branch" msprop:Generator_UserColumnName="Branch" msprop:Generator_ColumnPropNameInTable="BranchColumn" msprop:Generator_ColumnPropNameInRow="Branch" msprop:Generator_ColumnVarNameInTable="columnBranch" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="Remarks" msprop:Generator_ColumnPropNameInRow="Remarks" msprop:Generator_ColumnPropNameInTable="RemarksColumn" msprop:Generator_ColumnVarNameInTable="columnRemarks" msprop:Generator_UserColumnName="Remarks" type="xs:string" minOccurs="0" />
|
<xs:element name="Remarks" msprop:Generator_UserColumnName="Remarks" msprop:Generator_ColumnPropNameInTable="RemarksColumn" msprop:Generator_ColumnPropNameInRow="Remarks" msprop:Generator_ColumnVarNameInTable="columnRemarks" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="SenderAccNo" msprop:Generator_ColumnPropNameInRow="SenderAccNo" msprop:Generator_ColumnPropNameInTable="SenderAccNoColumn" msprop:Generator_ColumnVarNameInTable="columnSenderAccNo" msprop:Generator_UserColumnName="SenderAccNo" type="xs:string" minOccurs="0" />
|
<xs:element name="SenderAccNo" msprop:Generator_UserColumnName="SenderAccNo" msprop:Generator_ColumnPropNameInTable="SenderAccNoColumn" msprop:Generator_ColumnPropNameInRow="SenderAccNo" msprop:Generator_ColumnVarNameInTable="columnSenderAccNo" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="BankRoutingNo" msdata:Caption="BankRouting" msprop:Generator_ColumnPropNameInRow="BankRoutingNo" msprop:Generator_ColumnPropNameInTable="BankRoutingNoColumn" msprop:Generator_ColumnVarNameInTable="columnBankRoutingNo" msprop:Generator_UserColumnName="BankRoutingNo" type="xs:string" minOccurs="0" />
|
<xs:element name="BankRoutingNo" msdata:Caption="BankRouting" msprop:Generator_UserColumnName="BankRoutingNo" msprop:Generator_ColumnPropNameInTable="BankRoutingNoColumn" msprop:Generator_ColumnPropNameInRow="BankRoutingNo" msprop:Generator_ColumnVarNameInTable="columnBankRoutingNo" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="AccType" msprop:Generator_ColumnPropNameInRow="AccType" msprop:Generator_ColumnPropNameInTable="AccTypeColumn" msprop:Generator_ColumnVarNameInTable="columnAccType" msprop:Generator_UserColumnName="AccType" type="xs:string" minOccurs="0" />
|
<xs:element name="AccType" msprop:Generator_UserColumnName="AccType" msprop:Generator_ColumnPropNameInTable="AccTypeColumn" msprop:Generator_ColumnPropNameInRow="AccType" msprop:Generator_ColumnVarNameInTable="columnAccType" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="CostCenter" msprop:Generator_ColumnPropNameInRow="CostCenter" msprop:Generator_ColumnPropNameInTable="CostCenterColumn" msprop:Generator_ColumnVarNameInTable="columnCostCenter" msprop:Generator_UserColumnName="CostCenter" type="xs:string" minOccurs="0" />
|
<xs:element name="CostCenter" msprop:Generator_UserColumnName="CostCenter" msprop:Generator_ColumnPropNameInTable="CostCenterColumn" msprop:Generator_ColumnPropNameInRow="CostCenter" msprop:Generator_ColumnVarNameInTable="columnCostCenter" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="ProcessDate" msprop:Generator_ColumnPropNameInRow="ProcessDate" msprop:Generator_ColumnPropNameInTable="ProcessDateColumn" msprop:Generator_ColumnVarNameInTable="columnProcessDate" msprop:Generator_UserColumnName="ProcessDate" type="xs:string" minOccurs="0" />
|
<xs:element name="ProcessDate" msprop:Generator_UserColumnName="ProcessDate" msprop:Generator_ColumnPropNameInTable="ProcessDateColumn" msprop:Generator_ColumnPropNameInRow="ProcessDate" msprop:Generator_ColumnVarNameInTable="columnProcessDate" type="xs:string" minOccurs="0" />
|
||||||
<xs:element name="PaymentDate" msprop:Generator_ColumnPropNameInRow="PaymentDate" msprop:Generator_ColumnPropNameInTable="PaymentDateColumn" msprop:Generator_ColumnVarNameInTable="columnPaymentDate" msprop:Generator_UserColumnName="PaymentDate" type="xs:string" minOccurs="0" />
|
<xs:element name="PaymentDate" msprop:Generator_UserColumnName="PaymentDate" msprop:Generator_ColumnPropNameInTable="PaymentDateColumn" msprop:Generator_ColumnPropNameInRow="PaymentDate" msprop:Generator_ColumnVarNameInTable="columnPaymentDate" type="xs:string" minOccurs="0" />
|
||||||
|
</xs:sequence>
|
||||||
|
</xs:complexType>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="PastOwnerAndJobInfo" msprop:Generator_RowEvHandlerName="PastOwnerAndJobInfoRowChangeEventHandler" msprop:Generator_RowDeletedName="PastOwnerAndJobInfoRowDeleted" msprop:Generator_RowDeletingName="PastOwnerAndJobInfoRowDeleting" msprop:Generator_RowEvArgName="PastOwnerAndJobInfoRowChangeEvent" msprop:Generator_TablePropName="PastOwnerAndJobInfo" msprop:Generator_RowChangedName="PastOwnerAndJobInfoRowChanged" msprop:Generator_RowChangingName="PastOwnerAndJobInfoRowChanging" msprop:Generator_TableClassName="PastOwnerAndJobInfoDataTable" msprop:Generator_RowClassName="PastOwnerAndJobInfoRow" msprop:Generator_TableVarName="tablePastOwnerAndJobInfo" msprop:Generator_UserTableName="PastOwnerAndJobInfo">
|
||||||
|
<xs:complexType>
|
||||||
|
<xs:sequence>
|
||||||
|
<xs:element name="InstituteNameAddress" msprop:Generator_ColumnPropNameInRow="InstituteNameAddress" msprop:Generator_ColumnPropNameInTable="InstituteNameAddressColumn" msprop:Generator_ColumnVarNameInTable="columnInstituteNameAddress" msprop:Generator_UserColumnName="InstituteNameAddress" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="OwnerManagementName" msprop:Generator_ColumnPropNameInRow="OwnerManagementName" msprop:Generator_ColumnPropNameInTable="OwnerManagementNameColumn" msprop:Generator_ColumnVarNameInTable="columnOwnerManagementName" msprop:Generator_UserColumnName="OwnerManagementName" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="JoinDate" msprop:Generator_ColumnPropNameInRow="JoinDate" msprop:Generator_ColumnPropNameInTable="JoinDateColumn" msprop:Generator_ColumnVarNameInTable="columnJoinDate" msprop:Generator_UserColumnName="JoinDate" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="ResignationDate" msprop:Generator_ColumnPropNameInRow="ResignationDate" msprop:Generator_ColumnPropNameInTable="ResignationDateColumn" msprop:Generator_ColumnVarNameInTable="columnResignationDate" msprop:Generator_UserColumnName="ResignationDate" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="CauseOfResignation" msprop:Generator_ColumnPropNameInRow="CauseOfResignation" msprop:Generator_ColumnPropNameInTable="CauseOfResignationColumn" msprop:Generator_ColumnVarNameInTable="columnCauseOfResignation" msprop:Generator_UserColumnName="CauseOfResignation" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="Signature" msprop:Generator_ColumnPropNameInRow="Signature" msprop:Generator_ColumnPropNameInTable="SignatureColumn" msprop:Generator_ColumnVarNameInTable="columnSignature" msprop:Generator_UserColumnName="Signature" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="PastOwnerSignature" msprop:Generator_ColumnPropNameInRow="PastOwnerSignature" msprop:Generator_ColumnPropNameInTable="PastOwnerSignatureColumn" msprop:Generator_ColumnVarNameInTable="columnPastOwnerSignature" msprop:Generator_UserColumnName="PastOwnerSignature" type="xs:string" minOccurs="0" />
|
||||||
|
</xs:sequence>
|
||||||
|
</xs:complexType>
|
||||||
|
</xs:element>
|
||||||
|
<xs:element name="LeaveRecord" msprop:Generator_RowEvHandlerName="LeaveRecordRowChangeEventHandler" msprop:Generator_RowDeletedName="LeaveRecordRowDeleted" msprop:Generator_RowDeletingName="LeaveRecordRowDeleting" msprop:Generator_RowEvArgName="LeaveRecordRowChangeEvent" msprop:Generator_TablePropName="LeaveRecord" msprop:Generator_RowChangedName="LeaveRecordRowChanged" msprop:Generator_RowChangingName="LeaveRecordRowChanging" msprop:Generator_TableClassName="LeaveRecordDataTable" msprop:Generator_RowClassName="LeaveRecordRow" msprop:Generator_TableVarName="tableLeaveRecord" msprop:Generator_UserTableName="LeaveRecord">
|
||||||
|
<xs:complexType>
|
||||||
|
<xs:sequence>
|
||||||
|
<xs:element name="FromDate" msprop:Generator_ColumnPropNameInRow="FromDate" msprop:Generator_ColumnPropNameInTable="FromDateColumn" msprop:Generator_ColumnVarNameInTable="columnFromDate" msprop:Generator_UserColumnName="FromDate" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="EndDate" msprop:Generator_ColumnPropNameInRow="EndDate" msprop:Generator_ColumnPropNameInTable="EndDateColumn" msprop:Generator_ColumnVarNameInTable="columnEndDate" msprop:Generator_UserColumnName="EndDate" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="OwnerSignature" msprop:Generator_ColumnPropNameInRow="OwnerSignature" msprop:Generator_ColumnPropNameInTable="OwnerSignatureColumn" msprop:Generator_ColumnVarNameInTable="columnOwnerSignature" msprop:Generator_UserColumnName="OwnerSignature" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="EmpSiganture" msprop:Generator_ColumnPropNameInRow="EmpSiganture" msprop:Generator_ColumnPropNameInTable="EmpSigantureColumn" msprop:Generator_ColumnVarNameInTable="columnEmpSiganture" msprop:Generator_UserColumnName="EmpSiganture" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="Total" msprop:Generator_ColumnPropNameInRow="Total" msprop:Generator_ColumnPropNameInTable="TotalColumn" msprop:Generator_ColumnVarNameInTable="columnTotal" msprop:Generator_UserColumnName="Total" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="Date" msprop:Generator_ColumnPropNameInRow="Date" msprop:Generator_ColumnPropNameInTable="DateColumn" msprop:Generator_ColumnVarNameInTable="columnDate" msprop:Generator_UserColumnName="Date" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="RemainingEL" msprop:Generator_ColumnPropNameInRow="RemainingEL" msprop:Generator_ColumnPropNameInTable="RemainingELColumn" msprop:Generator_ColumnVarNameInTable="columnRemainingEL" msprop:Generator_UserColumnName="RemainingEL" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="TotalAmount" msprop:Generator_ColumnPropNameInRow="TotalAmount" msprop:Generator_ColumnPropNameInTable="TotalAmountColumn" msprop:Generator_ColumnVarNameInTable="columnTotalAmount" msprop:Generator_UserColumnName="TotalAmount" type="xs:string" minOccurs="0" />
|
||||||
|
<xs:element name="RemainingELCash" msprop:Generator_ColumnPropNameInRow="RemainingELCash" msprop:Generator_ColumnPropNameInTable="RemainingELCashColumn" msprop:Generator_ColumnVarNameInTable="columnRemainingELCash" msprop:Generator_UserColumnName="RemainingELCash" type="xs:string" minOccurs="0" />
|
||||||
</xs:sequence>
|
</xs:sequence>
|
||||||
</xs:complexType>
|
</xs:complexType>
|
||||||
</xs:element>
|
</xs:element>
|
||||||
|
|
|
@ -4,59 +4,61 @@
|
||||||
Changes to this file may cause incorrect behavior and will be lost if
|
Changes to this file may cause incorrect behavior and will be lost if
|
||||||
the code is regenerated.
|
the code is regenerated.
|
||||||
</autogenerated>-->
|
</autogenerated>-->
|
||||||
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="-14" ViewPortY="55" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
|
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="-8" ViewPortY="195" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
|
||||||
<Shapes>
|
<Shapes>
|
||||||
<Shape ID="DesignTable:ComapnyInformation" ZOrder="14" X="-4" Y="38" Height="28" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="91" SplitterPosition="24" />
|
<Shape ID="DesignTable:ComapnyInformation" ZOrder="19" X="-4" Y="38" Height="28" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="91" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DepartmentWiseManpower" ZOrder="11" X="260" Y="7" Height="28" Width="226" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="24" />
|
<Shape ID="DesignTable:DepartmentWiseManpower" ZOrder="16" X="260" Y="7" Height="28" Width="226" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BankAdvice" ZOrder="26" X="583" Y="51" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:BankAdvice" ZOrder="30" X="583" Y="51" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BankAdviceLetter" ZOrder="22" X="580" Y="14" Height="28" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:BankAdviceLetter" ZOrder="26" X="580" Y="14" Height="28" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BankAdviceParameters" ZOrder="4" X="582" Y="84" Height="28" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:BankAdviceParameters" ZOrder="9" X="582" Y="84" Height="28" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DtAgeRange" ZOrder="10" X="261" Y="40" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="24" />
|
<Shape ID="DesignTable:DtAgeRange" ZOrder="15" X="261" Y="40" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtQualificationWiseManpower" ZOrder="9" X="261" Y="72" Height="28" Width="243" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtQualificationWiseManpower" ZOrder="14" X="261" Y="72" Height="28" Width="243" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EmployeeMasterData" ZOrder="30" X="906" Y="1" Height="28" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmployeeMasterData" ZOrder="33" X="906" Y="1" Height="28" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DTProvidentFund" ZOrder="8" X="261" Y="104" Height="28" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
<Shape ID="DesignTable:DTProvidentFund" ZOrder="13" X="261" Y="104" Height="28" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:SalarySheet" ZOrder="47" X="1255" Y="6" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:SalarySheet" ZOrder="49" X="1255" Y="6" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:SalarySummary" ZOrder="48" X="1255" Y="40" Height="28" Width="156" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="24" />
|
<Shape ID="DesignTable:SalarySummary" ZOrder="50" X="1255" Y="40" Height="28" Width="156" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtCashAdvice" ZOrder="7" X="263" Y="138" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtCashAdvice" ZOrder="12" X="263" Y="138" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:StuffListWithoutSalary" ZOrder="46" X="1256" Y="75" Height="28" Width="198" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:StuffListWithoutSalary" ZOrder="48" X="1256" Y="75" Height="28" Width="198" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DTOPI" ZOrder="6" X="262" Y="202" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
<Shape ID="DesignTable:DTOPI" ZOrder="11" X="262" Y="202" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:SalaryComparison" ZOrder="49" X="1257" Y="109" Height="28" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:SalaryComparison" ZOrder="51" X="1257" Y="109" Height="28" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:ExperienceCertificate" ZOrder="29" X="907" Y="41" Height="28" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
<Shape ID="DesignTable:ExperienceCertificate" ZOrder="32" X="907" Y="41" Height="28" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BonusBankAdvice" ZOrder="24" X="581" Y="117" Height="28" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:BonusBankAdvice" ZOrder="28" X="581" Y="117" Height="28" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:ManagersPTT" ZOrder="13" X="-1" Y="79" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:ManagersPTT" ZOrder="18" X="-1" Y="79" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DeptWiseCompany" ZOrder="5" X="262" Y="236" Height="28" Width="177" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:DeptWiseCompany" ZOrder="10" X="262" Y="236" Height="28" Width="177" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:SalaryCertificate" ZOrder="45" X="1258" Y="141" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
|
<Shape ID="DesignTable:SalaryCertificate" ZOrder="47" X="1258" Y="141" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:LetterOfAccountIntro" ZOrder="44" X="1258" Y="173" Height="28" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:LetterOfAccountIntro" ZOrder="46" X="1258" Y="173" Height="28" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DTFSS" ZOrder="16" X="263" Y="269" Height="28" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:DTFSS" ZOrder="21" X="263" Y="269" Height="28" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DTFSSItems" ZOrder="51" X="265" Y="301" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:DTFSSItems" ZOrder="53" X="265" Y="301" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:PFException" ZOrder="23" X="907" Y="88" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:PFException" ZOrder="27" X="907" Y="88" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:NewPF" ZOrder="31" X="909" Y="141" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:NewPF" ZOrder="34" X="909" Y="141" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:MonthlySalaryRevision" ZOrder="12" X="-4" Y="123" Height="28" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:MonthlySalaryRevision" ZOrder="17" X="-4" Y="123" Height="28" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EmployeePersonalInfo" ZOrder="28" X="570" Y="166" Height="28" Width="200" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmployeePersonalInfo" ZOrder="4" X="570" Y="166" Height="257" Width="200" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:EmployeeQualification" ZOrder="32" X="-2" Y="167" Height="28" Width="197" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmployeeQualification" ZOrder="3" X="-2" Y="167" Height="219" Width="197" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="215" />
|
||||||
<Shape ID="DesignTable:EmpGrandFatherInfo" ZOrder="2" X="567" Y="258" Height="28" Width="187" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmpGrandFatherInfo" ZOrder="7" X="567" Y="258" Height="28" Width="187" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:AllTaxInfo" ZOrder="50" X="582" Y="431" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
<Shape ID="DesignTable:AllTaxInfo" ZOrder="52" X="582" Y="431" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:CostCenterInfo" ZOrder="15" X="-1" Y="0" Height="28" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
<Shape ID="DesignTable:CostCenterInfo" ZOrder="20" X="-1" Y="0" Height="28" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:MoneyReceipt" ZOrder="3" X="572" Y="213" Height="28" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:MoneyReceipt" ZOrder="8" X="572" Y="213" Height="28" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BankAdviceNmgt" ZOrder="43" X="1259" Y="216" Height="28" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:BankAdviceNmgt" ZOrder="45" X="1259" Y="216" Height="28" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtGeneral" ZOrder="38" X="1262" Y="250" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtGeneral" ZOrder="40" X="1262" Y="250" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtContacts" ZOrder="42" X="1242" Y="281" Height="28" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtContacts" ZOrder="44" X="1242" Y="281" Height="28" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtSpouse" ZOrder="39" X="1266" Y="311" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtSpouse" ZOrder="41" X="1266" Y="311" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtChildren" ZOrder="41" X="1267" Y="345" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtChildren" ZOrder="43" X="1267" Y="345" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtEmpExperience" ZOrder="40" X="1259" Y="378" Height="28" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtEmpExperience" ZOrder="42" X="1259" Y="378" Height="28" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtEmpTraining" ZOrder="37" X="1270" Y="411" Height="28" Width="152" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtEmpTraining" ZOrder="39" X="1270" Y="411" Height="28" Width="152" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtEmpAcademic" ZOrder="36" X="1268" Y="445" Height="28" Width="160" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtEmpAcademic" ZOrder="38" X="1268" Y="445" Height="28" Width="160" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtEmpReference" ZOrder="35" X="1265" Y="480" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtEmpReference" ZOrder="37" X="1265" Y="480" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtEmpPublication" ZOrder="33" X="1262" Y="517" Height="28" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtEmpPublication" ZOrder="35" X="1262" Y="517" Height="28" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtNominee" ZOrder="34" X="1280" Y="547" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtNominee" ZOrder="36" X="1280" Y="547" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EducationalInfo" ZOrder="27" X="907" Y="227" Height="28" Width="157" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:EducationalInfo" ZOrder="31" X="907" Y="227" Height="28" Width="157" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EmployeeAppointmentInfo" ZOrder="25" X="237" Y="397" Height="28" Width="224" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmployeeAppointmentInfo" ZOrder="29" X="237" Y="397" Height="28" Width="224" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DtCostCenterTotal" ZOrder="21" X="899" Y="183" Height="28" Width="173" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="24" />
|
<Shape ID="DesignTable:DtCostCenterTotal" ZOrder="25" X="899" Y="183" Height="28" Width="173" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DTMonthlyPF" ZOrder="20" X="262" Y="340" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:DTMonthlyPF" ZOrder="24" X="262" Y="340" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:CCWiseBonusSummary" ZOrder="19" X="579" Y="333" Height="28" Width="200" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="24" />
|
<Shape ID="DesignTable:CCWiseBonusSummary" ZOrder="23" X="579" Y="333" Height="28" Width="200" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:CCWiseBonus" ZOrder="18" X="590" Y="385" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:CCWiseBonus" ZOrder="5" X="590" Y="385" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtPerquisite" ZOrder="17" X="1084" Y="257" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtPerquisite" ZOrder="22" X="1084" Y="257" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BankAdviceWithRoutingNo" ZOrder="1" X="577" Y="492" Height="257" Width="210" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="253" />
|
<Shape ID="DesignTable:BankAdviceWithRoutingNo" ZOrder="6" X="577" Y="492" Height="257" Width="210" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="24" SplitterPosition="253" />
|
||||||
|
<Shape ID="DesignTable:PastOwnerAndJobInfo" ZOrder="2" X="862" Y="331" Height="28" Width="197" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
|
<Shape ID="DesignTable:LeaveRecord" ZOrder="1" X="1072" Y="334" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
||||||
</Shapes>
|
</Shapes>
|
||||||
<Connectors />
|
<Connectors />
|
||||||
</DiagramLayout>
|
</DiagramLayout>
|
3015
HRM.Report/RDLC/ApLetterForAssistantOfficerToAbove.rdlc
Normal file
|
@ -3911,21 +3911,25 @@
|
||||||
</ReportParameter>
|
</ReportParameter>
|
||||||
<ReportParameter Name="CompanyInfo">
|
<ReportParameter Name="CompanyInfo">
|
||||||
<DataType>String</DataType>
|
<DataType>String</DataType>
|
||||||
|
<Nullable>true</Nullable>
|
||||||
<AllowBlank>true</AllowBlank>
|
<AllowBlank>true</AllowBlank>
|
||||||
<Prompt>Report_Parameter_1</Prompt>
|
<Prompt>Report_Parameter_1</Prompt>
|
||||||
</ReportParameter>
|
</ReportParameter>
|
||||||
<ReportParameter Name="Logo">
|
<ReportParameter Name="Logo">
|
||||||
<DataType>String</DataType>
|
<DataType>String</DataType>
|
||||||
|
<Nullable>true</Nullable>
|
||||||
<AllowBlank>true</AllowBlank>
|
<AllowBlank>true</AllowBlank>
|
||||||
<Prompt>Report_Parameter_2</Prompt>
|
<Prompt>Report_Parameter_2</Prompt>
|
||||||
</ReportParameter>
|
</ReportParameter>
|
||||||
<ReportParameter Name="Address">
|
<ReportParameter Name="Address">
|
||||||
<DataType>String</DataType>
|
<DataType>String</DataType>
|
||||||
|
<Nullable>true</Nullable>
|
||||||
<AllowBlank>true</AllowBlank>
|
<AllowBlank>true</AllowBlank>
|
||||||
<Prompt>Report_Parameter_3</Prompt>
|
<Prompt>Report_Parameter_3</Prompt>
|
||||||
</ReportParameter>
|
</ReportParameter>
|
||||||
<ReportParameter Name="Phone">
|
<ReportParameter Name="Phone">
|
||||||
<DataType>String</DataType>
|
<DataType>String</DataType>
|
||||||
|
<Nullable>true</Nullable>
|
||||||
<AllowBlank>true</AllowBlank>
|
<AllowBlank>true</AllowBlank>
|
||||||
<Prompt>Report_Parameter_4</Prompt>
|
<Prompt>Report_Parameter_4</Prompt>
|
||||||
</ReportParameter>
|
</ReportParameter>
|
||||||
|
|
|
@ -162,7 +162,7 @@
|
||||||
<Paragraph>
|
<Paragraph>
|
||||||
<TextRuns>
|
<TextRuns>
|
||||||
<TextRun>
|
<TextRun>
|
||||||
<Value>="Department: " &Fields!Department.Value</Value>
|
<Value>="Design No: " &Fields!DesignNo.Value</Value>
|
||||||
<Style />
|
<Style />
|
||||||
</TextRun>
|
</TextRun>
|
||||||
</TextRuns>
|
</TextRuns>
|
||||||
|
@ -1656,7 +1656,7 @@
|
||||||
<TablixMember>
|
<TablixMember>
|
||||||
<Group Name="table1_Group1">
|
<Group Name="table1_Group1">
|
||||||
<GroupExpressions>
|
<GroupExpressions>
|
||||||
<GroupExpression>=Fields!DepartmentID.Value</GroupExpression>
|
<GroupExpression>=Fields!DesignNo.Value</GroupExpression>
|
||||||
</GroupExpressions>
|
</GroupExpressions>
|
||||||
</Group>
|
</Group>
|
||||||
<TablixMembers>
|
<TablixMembers>
|
||||||
|
|
1534
HRM.Report/RDLC/rptEmpDesignWiseProdBonusOld.rdlc
Normal file
11738
HRM.Report/RDLC/rptServiceBook.rdlc
Normal file
|
@ -838,7 +838,7 @@ namespace HRM.Report
|
||||||
reportParameters.Add(rParam);
|
reportParameters.Add(rParam);
|
||||||
|
|
||||||
// rParam = new ReportParameter("CompanyInfo", oPT.Description.ToString());
|
// rParam = new ReportParameter("CompanyInfo", oPT.Description.ToString());
|
||||||
rParam = new ReportParameter("CompanyInfo", payrollType != null ? payrollType.CompanyName : string.Empty);
|
rParam = new ReportParameter("CompanyInfo", payrollType != null ? (payrollType.CompanyName != null && payrollType.CompanyName.Trim() != "" ? payrollType.CompanyName : systemInformation?.name) : string.Empty);
|
||||||
reportParameters.Add(rParam);
|
reportParameters.Add(rParam);
|
||||||
|
|
||||||
rParam = new ReportParameter("SearchCriteria", "");
|
rParam = new ReportParameter("SearchCriteria", "");
|
||||||
|
|
BIN
HRM.UI/ClientApp/src/Documents/EMPPHOTO/Image-3.jpg
Normal file
After Width: | Height: | Size: 161 KiB |
BIN
HRM.UI/ClientApp/src/Documents/EMPPHOTO/Signature-3.jpg
Normal file
After Width: | Height: | Size: 11 KiB |
|
@ -138,7 +138,7 @@ export class Employee {
|
||||||
this.taxCircle = EnumTaxCircle.CityCorporation;
|
this.taxCircle = EnumTaxCircle.CityCorporation;
|
||||||
this.isConfirmed = false;
|
this.isConfirmed = false;
|
||||||
this.endOfContractDate = null;
|
this.endOfContractDate = null;
|
||||||
this.status = EnumEmployeeStatus.Live;
|
this.status = EnumEmployeeStatus.Waitingforjoin;
|
||||||
this.statusName = '';
|
this.statusName = '';
|
||||||
this.isShownInTaxSheet = false;
|
this.isShownInTaxSheet = false;
|
||||||
this.pfMemberType = EnumPFMembershipType.NotYetLive;
|
this.pfMemberType = EnumPFMembershipType.NotYetLive;
|
||||||
|
@ -219,6 +219,9 @@ export class Employee {
|
||||||
case EnumEmployeeStatus.Discontinued:
|
case EnumEmployeeStatus.Discontinued:
|
||||||
str = "Discontinued";
|
str = "Discontinued";
|
||||||
break;
|
break;
|
||||||
|
case EnumEmployeeStatus.Waitingforjoin:
|
||||||
|
str = "Waiting For Join";
|
||||||
|
break;
|
||||||
default:
|
default:
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -19,6 +19,7 @@ export class EmpNominee extends BaseObject {
|
||||||
occupation: Occupation;
|
occupation: Occupation;
|
||||||
address: string;
|
address: string;
|
||||||
telePhone: string;
|
telePhone: string;
|
||||||
|
nomineeMobileNo: string;
|
||||||
photograph: empFileuploads;
|
photograph: empFileuploads;
|
||||||
signature: empFileuploads;
|
signature: empFileuploads;
|
||||||
emailAddress: string;
|
emailAddress: string;
|
||||||
|
@ -40,6 +41,7 @@ export class EmpNominee extends BaseObject {
|
||||||
this.photograph = new empFileuploads();
|
this.photograph = new empFileuploads();
|
||||||
this.signature = new empFileuploads();
|
this.signature = new empFileuploads();
|
||||||
this.emailAddress = '';
|
this.emailAddress = '';
|
||||||
|
this.nomineeMobileNo = '';
|
||||||
this.hasSignature = false;
|
this.hasSignature = false;
|
||||||
this.hasPicture = false;
|
this.hasPicture = false;
|
||||||
}
|
}
|
||||||
|
|
|
@ -99,6 +99,13 @@ export class EmployeeServices {
|
||||||
return this.apiService.httpGet<SearchEmployee[]>('/Employee/getEmpCodeName' + '/' + ncode + '/' + nname);
|
return this.apiService.httpGet<SearchEmployee[]>('/Employee/getEmpCodeName' + '/' + ncode + '/' + nname);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
getEmpCodeNameForEmployeePickerInput(code?: string, name?: string) {
|
||||||
|
let nname = this.apiService.getApiDefaultData(name);
|
||||||
|
let ncode = this.apiService.getApiDefaultData(code);
|
||||||
|
|
||||||
|
return this.apiService.httpGet<SearchEmployee[]>('/Employee/getEmpCodeNameForEmployeePickerInput' + '/' + ncode + '/' + nname);
|
||||||
|
}
|
||||||
|
|
||||||
getEmployees() {
|
getEmployees() {
|
||||||
return this.apiService.httpGet(this.apiService.base_url + 'getemployees');
|
return this.apiService.httpGet(this.apiService.base_url + 'getemployees');
|
||||||
}
|
}
|
||||||
|
@ -360,6 +367,12 @@ export class EmployeeServices {
|
||||||
|
|
||||||
return this.apiService.httpGet<any>('/Employee/GetuploadEmpFile' + '/' + empid + '/' + referenceid + '/' + filetype);
|
return this.apiService.httpGet<any>('/Employee/GetuploadEmpFile' + '/' + empid + '/' + referenceid + '/' + filetype);
|
||||||
}
|
}
|
||||||
|
GetEmpImageSignFile(empid: number, referenceid: number, filetype: number):
|
||||||
|
Observable<HttpEvent<any>> {
|
||||||
|
|
||||||
|
return this.apiService.httpGet<any>('/Employee/GetEmpImageSignFile' + '/' + empid + '/' + referenceid + '/' + filetype);
|
||||||
|
}
|
||||||
|
|
||||||
GetCompanyImage(): Observable<HttpEvent<any>>{
|
GetCompanyImage(): Observable<HttpEvent<any>>{
|
||||||
return this.apiService.httpGet<any>('/Employee/GetCompanyImage');
|
return this.apiService.httpGet<any>('/Employee/GetCompanyImage');
|
||||||
}
|
}
|
||||||
|
|
|
@ -238,5 +238,7 @@ export class SalaryService {
|
||||||
DownloadPayslipForMultiple(param: any): Observable<HttpEvent<any>> {
|
DownloadPayslipForMultiple(param: any): Observable<HttpEvent<any>> {
|
||||||
return this.apiService.httpPost<any>('/salary/DownloadPayslipForMultiple', param);
|
return this.apiService.httpPost<any>('/salary/DownloadPayslipForMultiple', param);
|
||||||
}
|
}
|
||||||
|
IsSalaryProcessed(salaryMonth: Date) {
|
||||||
|
return this.apiService.httpGet<boolean>('/salary' + '/IsSalaryprocessedMonthly' + '/' + salaryMonth.toDateString());
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -130,4 +130,7 @@ export class ReportServices {
|
||||||
getAttendanceReport(param: any, reportType: string) {
|
getAttendanceReport(param: any, reportType: string) {
|
||||||
return this.apiService.httpPost<any>('/Report/getAttendanceReport/' + reportType, param);
|
return this.apiService.httpPost<any>('/Report/getAttendanceReport/' + reportType, param);
|
||||||
}
|
}
|
||||||
|
getProfileReportData(param: any): Observable<HttpEvent<any>> {
|
||||||
|
return this.apiService.httpPost<any>('/Report/getProfileReportData/', param);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
|
@ -13,7 +13,7 @@ export class ApiService {
|
||||||
|
|
||||||
public isSSO = false;
|
public isSSO = false;
|
||||||
public versionDeployement = false;
|
public versionDeployement = false;
|
||||||
public versionNumber = `V-${GlobalfunctionExtension.generateVersionNumber(new Date(2024, 10, 3))}-`+"01";
|
public versionNumber = `V-${GlobalfunctionExtension.generateVersionNumber(new Date(2025, 0, 9))}-`+"01";
|
||||||
public static BASE_URL = '';
|
public static BASE_URL = '';
|
||||||
public base_url = '';
|
public base_url = '';
|
||||||
// public currentLink = '';
|
// public currentLink = '';
|
||||||
|
|
|
@ -26,7 +26,7 @@ export class IdCardPrintComponent implements OnInit {
|
||||||
selectedAuthorizePersonid = undefined;
|
selectedAuthorizePersonid = undefined;
|
||||||
selectedReportTypeid = undefined;
|
selectedReportTypeid = undefined;
|
||||||
reportTypes: { id: number, name: string }[] = [];
|
reportTypes: { id: number, name: string }[] = [];
|
||||||
constructor(public notificctionService : HRMNotificationService,
|
constructor(public notificationService : HRMNotificationService,
|
||||||
public reportService: ReportServices,
|
public reportService: ReportServices,
|
||||||
public basicService: BasicService,
|
public basicService: BasicService,
|
||||||
public employeeService: EmployeeServices,
|
public employeeService: EmployeeServices,
|
||||||
|
@ -59,7 +59,8 @@ export class IdCardPrintComponent implements OnInit {
|
||||||
this.authorizedPersons = resp;
|
this.authorizedPersons = resp;
|
||||||
},
|
},
|
||||||
(x)=>{
|
(x)=>{
|
||||||
console.log(x);
|
this.notificationService.showError(x.error);
|
||||||
|
// console.log(x);
|
||||||
},
|
},
|
||||||
()=>{
|
()=>{
|
||||||
}
|
}
|
||||||
|
@ -67,15 +68,15 @@ export class IdCardPrintComponent implements OnInit {
|
||||||
}
|
}
|
||||||
preview(reportType: string) {
|
preview(reportType: string) {
|
||||||
if(this.selectedAuthorizePersonid === undefined){
|
if(this.selectedAuthorizePersonid === undefined){
|
||||||
this.notificctionService.showWarning("Please select Authorized Person first!","Warning");
|
this.notificationService.showWarning("Please select Authorized Person first!","Warning");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(this.selectedReportTypeid === undefined){
|
if(this.selectedReportTypeid === undefined){
|
||||||
this.notificctionService.showWarning("Please select Report Type first!","Warning");
|
this.notificationService.showWarning("Please select Report Type first!","Warning");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if(this.isThreeYear!= true && this.isFiveYear!=true){
|
if(this.isThreeYear!= true && this.isFiveYear!=true){
|
||||||
this.notificctionService.showWarning("Please select Expire Date first!","Warning");
|
this.notificationService.showWarning("Please select Expire Date first!","Warning");
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
let empIds = SearchEmployee.getEmpIds(this.selectedEmps);
|
let empIds = SearchEmployee.getEmpIds(this.selectedEmps);
|
||||||
|
@ -102,7 +103,8 @@ export class IdCardPrintComponent implements OnInit {
|
||||||
}
|
}
|
||||||
},
|
},
|
||||||
(err) => {
|
(err) => {
|
||||||
console.log(err);
|
// console.log(err);
|
||||||
|
this.notificationService.showError(err.error);
|
||||||
this.loadingPanel.ShowLoadingPanel = false;
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
this.closeForm();
|
this.closeForm();
|
||||||
},
|
},
|
||||||
|
|
|
@ -26,11 +26,12 @@
|
||||||
<kendo-dropdownlist
|
<kendo-dropdownlist
|
||||||
style="width:100%"
|
style="width:100%"
|
||||||
[data]="users"
|
[data]="users"
|
||||||
[defaultItem]="{ userName: 'Select User', userID: null }"
|
[defaultItem]="{ userName: 'Select User', id: null }"
|
||||||
[textField]="'userName'"
|
[textField]="'userName'"
|
||||||
[valueField]="'userID'"
|
[valueField]="'id'"
|
||||||
[(ngModel)]="selectedUser"
|
[(ngModel)]="selectedUser"
|
||||||
(valueChange)="onUserChange($event)"
|
(valueChange)="onUserChange($event)"
|
||||||
|
[disabled]="!(_selectedPayroll != null && _selectedRoleType != null) "
|
||||||
>
|
>
|
||||||
</kendo-dropdownlist>
|
</kendo-dropdownlist>
|
||||||
</div>
|
</div>
|
||||||
|
@ -48,6 +49,7 @@
|
||||||
[valueField]="'id'"
|
[valueField]="'id'"
|
||||||
[valuePrimitive]="true"
|
[valuePrimitive]="true"
|
||||||
(valueChange)="onPayrollChange($event)"
|
(valueChange)="onPayrollChange($event)"
|
||||||
|
[disabled]="!_selectedRoleType"
|
||||||
>
|
>
|
||||||
</kendo-dropdownlist>
|
</kendo-dropdownlist>
|
||||||
</div>
|
</div>
|
||||||
|
@ -59,10 +61,11 @@
|
||||||
<kendo-dropdownlist class="form-control form-control-sm input-sm"
|
<kendo-dropdownlist class="form-control form-control-sm input-sm"
|
||||||
style="width:100%"
|
style="width:100%"
|
||||||
[data]="permissionTypes"
|
[data]="permissionTypes"
|
||||||
[defaultItem]="{ name: 'Select Permission Type', id: null }"
|
[defaultItem]="{ name: 'Select Permission Type', value: null }"
|
||||||
[textField]="'name'"
|
[textField]="'name'"
|
||||||
[valueField]="'id'"
|
[valueField]="'value'"
|
||||||
(selectionChange)="EventPermissionType($event)"
|
(selectionChange)="EventPermissionType($event)"
|
||||||
|
[disabled]="!_selectedPayroll"
|
||||||
>
|
>
|
||||||
</kendo-dropdownlist>
|
</kendo-dropdownlist>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -10,13 +10,13 @@ import { DataTransferService } from '../../data.transfer.service';
|
||||||
import { ApiService } from '../../app.api.service';
|
import { ApiService } from '../../app.api.service';
|
||||||
import { User } from '../../_models/Authentication/user';
|
import { User } from '../../_models/Authentication/user';
|
||||||
import { EnumAuthStatus, EnumExtension, TempEnumAuthStatus } from '../../_models/enums';
|
import { EnumAuthStatus, EnumExtension, TempEnumAuthStatus } from '../../_models/enums';
|
||||||
import {PayrollType} from '../../_models/Authentication/payrollType';
|
import { PayrollType } from '../../_models/Authentication/payrollType';
|
||||||
import {Employee} from '../../_models/Employee/employee';
|
import { Employee } from '../../_models/Employee/employee';
|
||||||
import {Grade} from '../../_models/Basic/grade';
|
import { Grade } from '../../_models/Basic/grade';
|
||||||
import {Department} from '../../_models/Basic/department';
|
import { Department } from '../../_models/Basic/department';
|
||||||
import {Designation} from '../../_models/HRBasic/designation';
|
import { Designation } from '../../_models/HRBasic/designation';
|
||||||
import {Location} from '../../_models/Basic/location';
|
import { Location } from '../../_models/Basic/location';
|
||||||
import {DynamicPicker, EnumDynamicpickerType} from '../../picker/dynamic-picker/Dynamic-Picker';
|
import { DynamicPicker, EnumDynamicpickerType } from '../../picker/dynamic-picker/Dynamic-Picker';
|
||||||
import { DataPermission } from 'src/app/_models/Basic/DataPermission';
|
import { DataPermission } from 'src/app/_models/Basic/DataPermission';
|
||||||
|
|
||||||
|
|
||||||
|
@ -52,19 +52,25 @@ export class DataPermssionComponent implements OnInit {
|
||||||
public isLocation: boolean = false;
|
public isLocation: boolean = false;
|
||||||
|
|
||||||
onUserTypeChange(_selectedRoleType: any): void {
|
onUserTypeChange(_selectedRoleType: any): void {
|
||||||
this.utilityHandlerService.ShowLoadingPanel = true;
|
if (this._selectedRoleType.value != null) {
|
||||||
this.userService.GetUsers(this._selectedRoleType.value).subscribe(
|
this.utilityHandlerService.ShowLoadingPanel = true;
|
||||||
(x) => {
|
this.userService.GetUsers(this._selectedRoleType.value).subscribe(
|
||||||
this.users = x;
|
(x) => {
|
||||||
this.utilityHandlerService.ShowLoadingPanel = false;
|
this.users = x;
|
||||||
},
|
this.utilityHandlerService.ShowLoadingPanel = false;
|
||||||
(x) => {
|
},
|
||||||
this.notificationService.showError(x);
|
(x) => {
|
||||||
this.utilityHandlerService.ShowLoadingPanel = false;
|
this.notificationService.showError(x);
|
||||||
},
|
this.utilityHandlerService.ShowLoadingPanel = false;
|
||||||
() => {
|
},
|
||||||
this.utilityHandlerService.ShowLoadingPanel = false;
|
() => {
|
||||||
});
|
this.utilityHandlerService.ShowLoadingPanel = false;
|
||||||
|
});
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this.users = [];
|
||||||
|
this.selectedUser = undefined;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
EventPermissionType(selectedPermissionType: any): void {
|
EventPermissionType(selectedPermissionType: any): void {
|
||||||
|
@ -80,11 +86,13 @@ export class DataPermssionComponent implements OnInit {
|
||||||
}
|
}
|
||||||
|
|
||||||
onUserChange(selectedUserID: any): void {
|
onUserChange(selectedUserID: any): void {
|
||||||
this._selectedUser = selectedUserID;
|
if(selectedUserID.id != null){
|
||||||
this._userID = this._selectedUser.id;
|
this._selectedUser = selectedUserID;
|
||||||
|
this._userID = this._selectedUser.id;
|
||||||
|
|
||||||
if (this._userID != undefined && this._selectedPayroll != undefined)
|
if (this._userID != undefined && this._selectedPayroll != undefined)
|
||||||
this.loadGridView()
|
this.loadGridView()
|
||||||
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
onPayrollChange(selectedPayrollID: any): void {
|
onPayrollChange(selectedPayrollID: any): void {
|
||||||
|
|
|
@ -184,8 +184,10 @@ export class UserRoleEntryComponent implements OnInit {
|
||||||
userRole.payrollTypeID = this._selectedPayrollTypeid;
|
userRole.payrollTypeID = this._selectedPayrollTypeid;
|
||||||
userRole.employeeID = u.employeeID;
|
userRole.employeeID = u.employeeID;
|
||||||
}
|
}
|
||||||
if (this._selectedRoleType == EnumRoleType.Admin)
|
if (this._selectedRoleType == EnumRoleType.Admin){
|
||||||
userRole.userID = u.id;
|
userRole.userID = u.id;
|
||||||
|
userRole.userRoleStatus = EnumAuthStatus.Active;
|
||||||
|
}
|
||||||
|
|
||||||
userRole.loginIDView = u.loginID;
|
userRole.loginIDView = u.loginID;
|
||||||
userRole.roleID = r;
|
userRole.roleID = r;
|
||||||
|
|
|
@ -16,7 +16,7 @@
|
||||||
</div>
|
</div>
|
||||||
<div *ngIf="newEmployee" class="p-col-12 p-lg-4">
|
<div *ngIf="newEmployee" class="p-col-12 p-lg-4">
|
||||||
<input [(ngModel)]="this.employeeService.hrEmployee.employeeNo"
|
<input [(ngModel)]="this.employeeService.hrEmployee.employeeNo"
|
||||||
placeholder="Input Employee Id for new Employee.." id="txtempno" pInputText style="width:100%" type="text">
|
placeholder="Input Employee Id for new Employee.." id="txtempno" pInputText style="width:100%" type="text" [readOnly]="true">
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-lg-6" style="margin: auto;" align="middle">
|
<div class="p-col-12 p-lg-6" style="margin: auto;" align="middle">
|
||||||
<span class="k-icon k-i-warning k-i-exception"></span>
|
<span class="k-icon k-i-warning k-i-exception"></span>
|
||||||
|
|
|
@ -189,19 +189,19 @@ export class EmployeeProfileComponent implements OnInit {
|
||||||
|
|
||||||
this.refreshEmployee(new HrEmployee());
|
this.refreshEmployee(new HrEmployee());
|
||||||
|
|
||||||
this.loadingPanel.ShowLoadingPanel = true;
|
// this.loadingPanel.ShowLoadingPanel = true;
|
||||||
this.employeeService.generateEmployeeNo().subscribe(
|
// this.employeeService.generateEmployeeNo().subscribe(
|
||||||
(resp) => {
|
// (resp) => {
|
||||||
this.employeeService.hrEmployee.employeeNo = resp as string;
|
// this.employeeService.hrEmployee.employeeNo = resp as string;
|
||||||
},
|
// },
|
||||||
(err) => {
|
// (err) => {
|
||||||
this.notificationService.showError(err);
|
// this.notificationService.showError(err);
|
||||||
this.loadingPanel.ShowLoadingPanel = false;
|
// this.loadingPanel.ShowLoadingPanel = false;
|
||||||
},
|
// },
|
||||||
() => {
|
// () => {
|
||||||
this.loadingPanel.ShowLoadingPanel = false;
|
// this.loadingPanel.ShowLoadingPanel = false;
|
||||||
}
|
// }
|
||||||
);
|
// );
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
this.employeeService.hrEmployee.employeeNo = undefined;
|
this.employeeService.hrEmployee.employeeNo = undefined;
|
||||||
|
|
|
@ -10,19 +10,27 @@
|
||||||
<div class="p-col-12">
|
<div class="p-col-12">
|
||||||
<div style="position: relative; display: inline-block;">
|
<div style="position: relative; display: inline-block;">
|
||||||
<img id="imgProfilePicture" [src]="employeePhoto"
|
<img id="imgProfilePicture" [src]="employeePhoto"
|
||||||
style="height: 180px; width: 180px; border-radius: 50%; border: 1px solid #52527A;" />
|
style="height: 180px; width: 180px; border-radius: 50%; border: 1px solid #52527A;" />
|
||||||
<button class="editImage" (click)="fileInput.click()"
|
<button class="editImage" (click)="fileInput.click()"
|
||||||
style="position: absolute; bottom: 18px; right: 18px;">
|
style="position: absolute; bottom: 18px; right: 18px;">
|
||||||
<span class="editIcon">✎</span>
|
<span class="editIcon">✎</span>
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
<div style="position: relative; display: inline-block;">
|
||||||
|
<img id="imgEmpSigneture" [src]="empSigneture"
|
||||||
|
style="height: 60px; width: 180px; border-radius: 10px; border: 1px solid #52527A;" />
|
||||||
|
|
||||||
|
</div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-12 p-lg-12" align="center">
|
<div class="p-col-12 p-md-12 p-lg-12" align="center">
|
||||||
<input formControlName="empPhoto" id="fupEmpPhoto" #fileInput
|
<input formControlName="empPhoto" id="fupEmpPhoto" #fileInput
|
||||||
(change)="selectFile($event)" type="file" style="display: none;">
|
(change)="selectFile($event)" type="file" style="display: none;">
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-12 p-lg-12" style="height: 76px;"></div>
|
<div class="p-col-12 p-md-12 p-lg-12" style="height: 76px;">
|
||||||
|
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
@ -173,6 +181,7 @@
|
||||||
|
|
||||||
<button class="k-button k-primary" kendoButton icon="save"
|
<button class="k-button k-primary" kendoButton icon="save"
|
||||||
(click)="SavePersonalInfo()">
|
(click)="SavePersonalInfo()">
|
||||||
|
<!-- (click)="SavePersonalInfo()"> -->
|
||||||
Save
|
Save
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
@ -359,7 +368,9 @@
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-12 p-lg-4" style="margin-top: 11px;" align="right">
|
<div class="p-col-12 p-md-12 p-lg-4" style="margin-top: 11px;" align="right">
|
||||||
<button class="k-button k-primary" kendoButton icon="save" (click)="SavePersonalInfo()">
|
<button class="k-button k-primary" kendoButton icon="save"
|
||||||
|
(click)="SavePersonalInfo()">
|
||||||
|
<!-- (click)="SavePersonalInfo()"> -->
|
||||||
Save
|
Save
|
||||||
</button>
|
</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
|
@ -104,6 +104,7 @@ export class GeneralComponent implements OnInit {
|
||||||
selectedFiles?: FileList;
|
selectedFiles?: FileList;
|
||||||
currentFile?: File;
|
currentFile?: File;
|
||||||
employeePhoto: any;
|
employeePhoto: any;
|
||||||
|
empSigneture: any;
|
||||||
occupations: Occupation[];
|
occupations: Occupation[];
|
||||||
newUser: boolean = false;
|
newUser: boolean = false;
|
||||||
userid: number;
|
userid: number;
|
||||||
|
@ -116,6 +117,7 @@ export class GeneralComponent implements OnInit {
|
||||||
defaultNationality: Nationality;
|
defaultNationality: Nationality;
|
||||||
nameBangla: string = 'asasas';
|
nameBangla: string = 'asasas';
|
||||||
defaultPhoto = "assets/photos/profile-default.jpg";
|
defaultPhoto = "assets/photos/profile-default.jpg";
|
||||||
|
photoPath = "Documents/EMPPHOTO";
|
||||||
isDisplay: boolean = false;
|
isDisplay: boolean = false;
|
||||||
|
|
||||||
contactForm: FormGroup;
|
contactForm: FormGroup;
|
||||||
|
@ -134,6 +136,7 @@ export class GeneralComponent implements OnInit {
|
||||||
ngOnInit() {
|
ngOnInit() {
|
||||||
|
|
||||||
this.employeePhoto = this.defaultPhoto;
|
this.employeePhoto = this.defaultPhoto;
|
||||||
|
this.empSigneture = "";
|
||||||
this.basicService.getAllReligion().subscribe(
|
this.basicService.getAllReligion().subscribe(
|
||||||
(resp: any) => {
|
(resp: any) => {
|
||||||
this.religions = resp;
|
this.religions = resp;
|
||||||
|
@ -173,8 +176,8 @@ export class GeneralComponent implements OnInit {
|
||||||
() => {
|
() => {
|
||||||
},
|
},
|
||||||
() => {
|
() => {
|
||||||
this.defaultNationality=this.nationalities.find(x=>x.description.toLowerCase()=="bangladeshi");
|
this.defaultNationality = this.nationalities.find(x => x.description.toLowerCase() == "bangladeshi");
|
||||||
if(this.defaultNationality){
|
if (this.defaultNationality) {
|
||||||
this.hrEmployee.nationalityID = this.defaultNationality.id;
|
this.hrEmployee.nationalityID = this.defaultNationality.id;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
@ -229,7 +232,7 @@ export class GeneralComponent implements OnInit {
|
||||||
maxValue: new FormControl(),
|
maxValue: new FormControl(),
|
||||||
insuranceId: new FormControl(''),
|
insuranceId: new FormControl(''),
|
||||||
inclusionDate: new FormControl(),
|
inclusionDate: new FormControl(),
|
||||||
//signature: new FormControl()
|
empSigneture: new FormControl(),
|
||||||
dateOfRetirement: new FormControl(),
|
dateOfRetirement: new FormControl(),
|
||||||
spouseNameBangla: new FormControl(),
|
spouseNameBangla: new FormControl(),
|
||||||
spouseName: new FormControl(),
|
spouseName: new FormControl(),
|
||||||
|
@ -246,6 +249,7 @@ export class GeneralComponent implements OnInit {
|
||||||
(resp: any) => {
|
(resp: any) => {
|
||||||
this.hrEmployee = resp;
|
this.hrEmployee = resp;
|
||||||
//console.log(this.hrEmployee);
|
//console.log(this.hrEmployee);
|
||||||
|
debugger;
|
||||||
if (this.hrEmployee.id !== undefined && this.hrEmployee.id !== 0) {
|
if (this.hrEmployee.id !== undefined && this.hrEmployee.id !== 0) {
|
||||||
this.showEmpImage();
|
this.showEmpImage();
|
||||||
this.userid = undefined;
|
this.userid = undefined;
|
||||||
|
@ -253,6 +257,7 @@ export class GeneralComponent implements OnInit {
|
||||||
emp.employeeID = this.employeeService.hrEmployee.id;
|
emp.employeeID = this.employeeService.hrEmployee.id;
|
||||||
emp.employeeNo = this.employeeService.hrEmployee.employeeNo;
|
emp.employeeNo = this.employeeService.hrEmployee.employeeNo;
|
||||||
emp.name = this.employeeService.hrEmployee.name;
|
emp.name = this.employeeService.hrEmployee.name;
|
||||||
|
//this.employeePhoto = this.employeeService.hrEmployee.photoPath;
|
||||||
this.pickerEmployee = emp;
|
this.pickerEmployee = emp;
|
||||||
if (this.hrEmployee.lineManagerID > 0) {
|
if (this.hrEmployee.lineManagerID > 0) {
|
||||||
this.getLineManager();
|
this.getLineManager();
|
||||||
|
@ -262,6 +267,7 @@ export class GeneralComponent implements OnInit {
|
||||||
}
|
}
|
||||||
} else {
|
} else {
|
||||||
this.employeePhoto = this.defaultPhoto;
|
this.employeePhoto = this.defaultPhoto;
|
||||||
|
this.empSigneture = "";
|
||||||
// this.employeeService.generateEmployeeNo().subscribe(
|
// this.employeeService.generateEmployeeNo().subscribe(
|
||||||
// (resp) => {
|
// (resp) => {
|
||||||
// this.hrEmployee.employeeNo = resp as string;
|
// this.hrEmployee.employeeNo = resp as string;
|
||||||
|
@ -359,10 +365,15 @@ export class GeneralComponent implements OnInit {
|
||||||
}
|
}
|
||||||
|
|
||||||
public showEmpImage() {
|
public showEmpImage() {
|
||||||
|
debugger;
|
||||||
this.loadingPanel.ShowLoadingPanel = true;
|
this.loadingPanel.ShowLoadingPanel = true;
|
||||||
this.employeeService.GetuploadEmpFile(this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.Profile_Picture).subscribe(
|
this.empSigneture = "";
|
||||||
|
this.employeePhoto = this.defaultPhoto;
|
||||||
|
//this.employeePhoto = this.photoPath + "/" + "Image-" + this.hrEmployee.employeeNo + ".jpg";
|
||||||
|
this.employeeService.GetEmpImageSignFile(this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.Profile_Picture).subscribe(
|
||||||
(resp: any) => {
|
(resp: any) => {
|
||||||
if (resp) {
|
if (resp) {
|
||||||
|
|
||||||
this.employeePhoto = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp}`);
|
this.employeePhoto = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp}`);
|
||||||
} else {
|
} else {
|
||||||
this.employeePhoto = this.defaultPhoto;
|
this.employeePhoto = this.defaultPhoto;
|
||||||
|
@ -372,6 +383,26 @@ export class GeneralComponent implements OnInit {
|
||||||
(err: any) => {
|
(err: any) => {
|
||||||
|
|
||||||
|
|
||||||
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
|
this.notificationService.showError(err.error);
|
||||||
|
},
|
||||||
|
() => {
|
||||||
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
|
}
|
||||||
|
);
|
||||||
|
this.employeeService.GetEmpImageSignFile(this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.signature).subscribe(
|
||||||
|
(resp: any) => {
|
||||||
|
if (resp) {
|
||||||
|
|
||||||
|
this.empSigneture = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp}`);
|
||||||
|
} else {
|
||||||
|
this.employeePhoto = this.defaultPhoto;
|
||||||
|
}
|
||||||
|
|
||||||
|
},
|
||||||
|
(err: any) => {
|
||||||
|
|
||||||
|
|
||||||
this.loadingPanel.ShowLoadingPanel = false;
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
this.notificationService.showError(err.error);
|
this.notificationService.showError(err.error);
|
||||||
},
|
},
|
||||||
|
@ -386,6 +417,29 @@ export class GeneralComponent implements OnInit {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
// public saveGeneratedEmployee() {
|
||||||
|
// debugger
|
||||||
|
// if (this.active == false) {
|
||||||
|
// this.loadingPanel.ShowLoadingPanel = true;
|
||||||
|
// this.employeeService.generateEmployeeNo().subscribe(
|
||||||
|
// (resp) => {
|
||||||
|
// this.employeeService.hrEmployee.employeeNo = resp as string;
|
||||||
|
// },
|
||||||
|
// (err) => {
|
||||||
|
// this.notificationService.showError(err);
|
||||||
|
// this.loadingPanel.ShowLoadingPanel = false;
|
||||||
|
// },
|
||||||
|
// () => {
|
||||||
|
// this.loadingPanel.ShowLoadingPanel = false; setTimeout(() => {
|
||||||
|
// this.SavePersonalInfo();
|
||||||
|
// }, 1000);
|
||||||
|
// }
|
||||||
|
// );
|
||||||
|
// }
|
||||||
|
// else{
|
||||||
|
// this.SavePersonalInfo();
|
||||||
|
// }
|
||||||
|
// }
|
||||||
SavePersonalInfo() {
|
SavePersonalInfo() {
|
||||||
// console.log(this.hrEmployee.banglaName);
|
// console.log(this.hrEmployee.banglaName);
|
||||||
// return;
|
// return;
|
||||||
|
@ -401,12 +455,18 @@ export class GeneralComponent implements OnInit {
|
||||||
if (this.hrEmployee.lastName !== null) {
|
if (this.hrEmployee.lastName !== null) {
|
||||||
this.hrEmployee.name += ' ' + this.hrEmployee.lastName;
|
this.hrEmployee.name += ' ' + this.hrEmployee.lastName;
|
||||||
}
|
}
|
||||||
if (this.employeeService.hrEmployee.employeeNo.length > 0) {
|
// if (this.employeeService.hrEmployee.employeeNo.length > 0) {
|
||||||
this.hrEmployee.employeeNo = this.employeeService.hrEmployee.employeeNo;
|
// this.hrEmployee.employeeNo = this.employeeService.hrEmployee.employeeNo;
|
||||||
}
|
// }
|
||||||
this.employeeService.saveHrPersonalInfo(this.hrEmployee).subscribe(
|
this.employeeService.saveHrPersonalInfo(this.hrEmployee).subscribe(
|
||||||
(resp: any) => {
|
(resp: HrEmployee) => {
|
||||||
this.hrEmployee.id = resp;
|
if(resp != undefined){
|
||||||
|
this.hrEmployee.id = resp.id;
|
||||||
|
if (this.active == false) {
|
||||||
|
this.hrEmployee.employeeNo = resp.employeeNo;
|
||||||
|
this.employeeService.hrEmployee.employeeNo = resp.employeeNo;
|
||||||
|
}
|
||||||
|
}
|
||||||
},
|
},
|
||||||
(err: any) => {
|
(err: any) => {
|
||||||
console.log(err);
|
console.log(err);
|
||||||
|
@ -415,7 +475,7 @@ export class GeneralComponent implements OnInit {
|
||||||
},
|
},
|
||||||
() => {
|
() => {
|
||||||
this.loadingPanel.ShowLoadingPanel = false;
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
this.isDisplay=false;
|
this.isDisplay = false;
|
||||||
this.notificationService.showSuccess('Data save successfully');
|
this.notificationService.showSuccess('Data save successfully');
|
||||||
if (this.selectedTinFiles !== null && this.selectedTinFiles !== undefined && this.selectedTinFiles.length > 0) {
|
if (this.selectedTinFiles !== null && this.selectedTinFiles !== undefined && this.selectedTinFiles.length > 0) {
|
||||||
this.saveFile(this.hrEmployee.id, this.selectedTinFiles, enumEmpFileUploadType.TIN);
|
this.saveFile(this.hrEmployee.id, this.selectedTinFiles, enumEmpFileUploadType.TIN);
|
||||||
|
@ -451,7 +511,7 @@ export class GeneralComponent implements OnInit {
|
||||||
},
|
},
|
||||||
() => {
|
() => {
|
||||||
this.loadingPanel.ShowLoadingPanel = false;
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
this.isDisplay=false;
|
this.isDisplay = false;
|
||||||
this.notificationService.showSuccess('Data Save successfully.');
|
this.notificationService.showSuccess('Data Save successfully.');
|
||||||
this.employeeService.hrEmployee.contacts = [];
|
this.employeeService.hrEmployee.contacts = [];
|
||||||
this.employeeService.hrEmployee.contacts.push(this.contact);
|
this.employeeService.hrEmployee.contacts.push(this.contact);
|
||||||
|
@ -460,6 +520,7 @@ export class GeneralComponent implements OnInit {
|
||||||
|
|
||||||
}
|
}
|
||||||
saveFile(feferenceID: number, selectedFiles: any, type: enumEmpFileUploadType) {
|
saveFile(feferenceID: number, selectedFiles: any, type: enumEmpFileUploadType) {
|
||||||
|
debugger;
|
||||||
if (selectedFiles != undefined && selectedFiles.length > 0) {
|
if (selectedFiles != undefined && selectedFiles.length > 0) {
|
||||||
const file: File | null = selectedFiles.item(0);
|
const file: File | null = selectedFiles.item(0);
|
||||||
this.currentFile = file;
|
this.currentFile = file;
|
||||||
|
@ -485,48 +546,48 @@ export class GeneralComponent implements OnInit {
|
||||||
this.NIDFiles = undefined;
|
this.NIDFiles = undefined;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
saveBanglaPersonalInformation(){
|
saveBanglaPersonalInformation() {
|
||||||
const data ={
|
const data = {
|
||||||
employeeNo: this.employeeService.hrEmployee.employeeNo,
|
employeeNo: this.employeeService.hrEmployee.employeeNo,
|
||||||
banglaName: this.hrEmployee.banglaName,
|
banglaName: this.hrEmployee.banglaName,
|
||||||
banglaSpouseName: this.hrEmployee.spouseNameBangla,
|
banglaSpouseName: this.hrEmployee.spouseNameBangla,
|
||||||
banglaFathersName: this.hrEmployee.fatherNameBangla,
|
banglaFathersName: this.hrEmployee.fatherNameBangla,
|
||||||
banglaMothersName: this.hrEmployee.motherNameBangla
|
banglaMothersName: this.hrEmployee.motherNameBangla
|
||||||
}
|
}
|
||||||
this.loadingPanel.ShowLoadingPanel=true;
|
this.loadingPanel.ShowLoadingPanel = true;
|
||||||
this.employeeService.updateBanglaInformation(data).subscribe(
|
this.employeeService.updateBanglaInformation(data).subscribe(
|
||||||
(resp: any)=>{
|
(resp: any) => {
|
||||||
|
|
||||||
},(err)=>{
|
}, (err) => {
|
||||||
this.loadingPanel.ShowLoadingPanel=false;
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
this.notificationService.showError(err.error);
|
this.notificationService.showError(err.error);
|
||||||
},() =>{
|
}, () => {
|
||||||
this.loadingPanel.ShowLoadingPanel=false;
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
this.isDisplay=false;
|
this.isDisplay = false;
|
||||||
this.notificationService.showSuccess("Bangla Information Updated Successfully!");
|
this.notificationService.showSuccess("Bangla Information Updated Successfully!");
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
SaveBanglaContactInformation(){
|
SaveBanglaContactInformation() {
|
||||||
const data ={
|
const data = {
|
||||||
employeeNo: this.employeeService.hrEmployee.employeeNo,
|
employeeNo: this.employeeService.hrEmployee.employeeNo,
|
||||||
presentPOInBangla: this.contact.presentPOInBangla,
|
presentPOInBangla: this.contact.presentPOInBangla,
|
||||||
presentAddressInBangla: this.contact.presentAddressInBangla,
|
presentAddressInBangla: this.contact.presentAddressInBangla,
|
||||||
parmanentPOInBangla: this.contact.parmanentPOInBangla,
|
parmanentPOInBangla: this.contact.parmanentPOInBangla,
|
||||||
permanentAddressInBangla: this.contact.permanentAddressInBangla
|
permanentAddressInBangla: this.contact.permanentAddressInBangla
|
||||||
}
|
}
|
||||||
this.loadingPanel.ShowLoadingPanel=true;
|
this.loadingPanel.ShowLoadingPanel = true;
|
||||||
this.employeeService.updateBanglaContactInformation(data).subscribe(
|
this.employeeService.updateBanglaContactInformation(data).subscribe(
|
||||||
(resp: any)=>{
|
(resp: any) => {
|
||||||
|
|
||||||
},(err)=>{
|
}, (err) => {
|
||||||
this.loadingPanel.ShowLoadingPanel=false;
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
this.notificationService.showError(err.error);
|
this.notificationService.showError(err.error);
|
||||||
},() =>{
|
}, () => {
|
||||||
this.loadingPanel.ShowLoadingPanel=false;
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
this.isDisplay=false;
|
this.isDisplay = false;
|
||||||
this.notificationService.showSuccess("Bangla Contact Information Updated Successfully!");
|
this.notificationService.showSuccess("Bangla Contact Information Updated Successfully!");
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
private markFormGroupTouched(formGroup: FormGroup) {
|
private markFormGroupTouched(formGroup: FormGroup) {
|
||||||
|
@ -558,18 +619,19 @@ export class GeneralComponent implements OnInit {
|
||||||
if (confirm('Are you sure change the profile picture? selected picture will be store in database as well as will be used as profile picture.') == false) {
|
if (confirm('Are you sure change the profile picture? selected picture will be store in database as well as will be used as profile picture.') == false) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
debugger;
|
||||||
this.selectedFiles = event.target.files;
|
this.selectedFiles = event.target.files;
|
||||||
|
|
||||||
if (this.selectedFiles.length > 0) {
|
if (this.selectedFiles.length > 0) {
|
||||||
const file: File | null = this.selectedFiles.item(0);
|
const file: File | null = this.selectedFiles.item(0);
|
||||||
this.currentFile = file;
|
this.currentFile = file;
|
||||||
|
debugger;
|
||||||
this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.Profile_Picture).subscribe(
|
this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.Profile_Picture).subscribe(
|
||||||
(resp: any) => {
|
(resp: any) => {
|
||||||
console.log('image data');
|
console.log('image data');
|
||||||
// console.log(resp.body);
|
// console.log(resp.body);
|
||||||
|
//this.employeePhoto = resp;
|
||||||
this.employeePhoto = resp;// this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
|
this.employeePhoto = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
|
||||||
},
|
},
|
||||||
(err: any) => {
|
(err: any) => {
|
||||||
this.notificationService.showError(err.error);
|
this.notificationService.showError(err.error);
|
||||||
|
@ -806,14 +868,15 @@ export class GeneralComponent implements OnInit {
|
||||||
this.currentFile = file;
|
this.currentFile = file;
|
||||||
this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.signature).subscribe(
|
this.employeeService.uploadEmpFile(this.currentFile, this.hrEmployee.id, this.hrEmployee.id, enumEmpFileUploadType.signature).subscribe(
|
||||||
(resp: any) => {
|
(resp: any) => {
|
||||||
|
this.empSigneture = this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
|
||||||
// console.log(resp.body);
|
// console.log(resp.body);
|
||||||
//this.Sigfiles = resp;// this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
|
//this.Sigfiles = resp;// this.sanitizer.bypassSecurityTrustResourceUrl(`data:image/png;base64, ${resp.body}`);
|
||||||
},
|
},
|
||||||
(err: any) => {
|
(err: any) => {
|
||||||
this.notificationService.showError(err.error);
|
this.notificationService.showError(err.error);
|
||||||
this.currentFile = undefined;
|
this.currentFile = undefined;
|
||||||
},()=>{
|
}, () => {
|
||||||
this.signaturePopUp=false;
|
this.signaturePopUp = false;
|
||||||
this.notificationService.showSuccess("Signature Uploaded Successfully!")
|
this.notificationService.showSuccess("Signature Uploaded Successfully!")
|
||||||
});
|
});
|
||||||
this.selectedFiles = undefined;
|
this.selectedFiles = undefined;
|
||||||
|
@ -861,7 +924,7 @@ export class GeneralComponent implements OnInit {
|
||||||
tinPopUp: boolean = false;
|
tinPopUp: boolean = false;
|
||||||
dlnoPopUp: boolean = false;
|
dlnoPopUp: boolean = false;
|
||||||
passnoPopUp: boolean = false;
|
passnoPopUp: boolean = false;
|
||||||
signaturePopUp:boolean = false;
|
signaturePopUp: boolean = false;
|
||||||
popUpAttachment(type: string) {
|
popUpAttachment(type: string) {
|
||||||
if (type === 'NID')
|
if (type === 'NID')
|
||||||
this.nidPopUp = true;
|
this.nidPopUp = true;
|
||||||
|
|
|
@ -32,10 +32,10 @@
|
||||||
pInputText style="width:100%" />
|
pInputText style="width:100%" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="p-col-12 p-md-6 p-lg-2" >
|
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
||||||
<label>Relation</label>
|
<label>Relation</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-4" style="margin: auto;">
|
<div class="p-col-12 p-md-6 p-lg-4">
|
||||||
<kendo-dropdownlist [(ngModel)]="nominee.relationID" [data]="relations"
|
<kendo-dropdownlist [(ngModel)]="nominee.relationID" [data]="relations"
|
||||||
[defaultItem]="{ description: 'Select Relations..', value: null }" [textField]="'description'"
|
[defaultItem]="{ description: 'Select Relations..', value: null }" [textField]="'description'"
|
||||||
[valueField]="'id'" [valuePrimitive]="true" class="form-control form-control-sm input-sm"
|
[valueField]="'id'" [valuePrimitive]="true" class="form-control form-control-sm input-sm"
|
||||||
|
@ -46,15 +46,15 @@
|
||||||
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
||||||
<label for="txtPercentage">Percentage</label>
|
<label for="txtPercentage">Percentage</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-4" >
|
<div class="p-col-12 p-md-6 p-lg-4">
|
||||||
<input id="txtPercentage" formControlName="percentage" [(ngModel)]="nominee.percentage"
|
<input id="txtPercentage" formControlName="percentage" [(ngModel)]="nominee.percentage"
|
||||||
type="number" pInputText style="width:100%" />
|
type="number" pInputText style="width:100%" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="p-col-12 p-md-6 p-lg-2" >
|
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
||||||
<label for="dtpDateOfBirth">Birth Date</label>
|
<label for="dtpDateOfBirth">Birth Date</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-4" style="margin: auto;">
|
<div class="p-col-12 p-md-6 p-lg-4">
|
||||||
<kendo-datepicker [(ngModel)]="nominee.birthDate" [format]="'dd-MMM-yyyy'"
|
<kendo-datepicker [(ngModel)]="nominee.birthDate" [format]="'dd-MMM-yyyy'"
|
||||||
formControlName="dateOfBirth" id="dtpDateOfBirth" style="width:100%"></kendo-datepicker>
|
formControlName="dateOfBirth" id="dtpDateOfBirth" style="width:100%"></kendo-datepicker>
|
||||||
</div>
|
</div>
|
||||||
|
@ -62,7 +62,7 @@
|
||||||
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
||||||
<label>Occupation</label>
|
<label>Occupation</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-4" >
|
<div class="p-col-12 p-md-6 p-lg-4">
|
||||||
<kendo-dropdownlist [(ngModel)]="nominee.occupationID" [data]="occupations"
|
<kendo-dropdownlist [(ngModel)]="nominee.occupationID" [data]="occupations"
|
||||||
[defaultItem]="{ description: 'Select Occupations..', value: null }" [textField]="'description'"
|
[defaultItem]="{ description: 'Select Occupations..', value: null }" [textField]="'description'"
|
||||||
[valueField]="'id'" [valuePrimitive]="true" class="form-control form-control-sm input-sm"
|
[valueField]="'id'" [valuePrimitive]="true" class="form-control form-control-sm input-sm"
|
||||||
|
@ -70,10 +70,10 @@
|
||||||
</kendo-dropdownlist>
|
</kendo-dropdownlist>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="p-col-12 p-md-6 p-lg-2" >
|
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
||||||
<label for="txtAddress">Address</label>
|
<label for="txtAddress">Address</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-4" style="margin: auto;">
|
<div class="p-col-12 p-md-6 p-lg-4">
|
||||||
<input id="txtAddress" formControlName="address" [(ngModel)]="nominee.address" type="text"
|
<input id="txtAddress" formControlName="address" [(ngModel)]="nominee.address" type="text"
|
||||||
pInputText style="width:100%" />
|
pInputText style="width:100%" />
|
||||||
</div>
|
</div>
|
||||||
|
@ -86,10 +86,18 @@
|
||||||
pInputText style="width:100%" />
|
pInputText style="width:100%" />
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="p-col-12 p-md-6 p-lg-2" >
|
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
||||||
|
<label for="txtNomineeMobileNo">Mobile</label>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-12 p-md-6 p-lg-4">
|
||||||
|
<input id="txtNnomineeMobileNo" formControlName="mobile" [(ngModel)]="nominee.nomineeMobileNo" type="text"
|
||||||
|
pInputText style="width:100%" />
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
||||||
<label for="txtEmail">Email</label>
|
<label for="txtEmail">Email</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-4" style="margin: auto;">
|
<div class="p-col-12 p-md-6 p-lg-4">
|
||||||
<input id="txtEmail" formControlName="email" [(ngModel)]="nominee.emailAddress" type="text"
|
<input id="txtEmail" formControlName="email" [(ngModel)]="nominee.emailAddress" type="text"
|
||||||
pInputText style="width:100%" />
|
pInputText style="width:100%" />
|
||||||
</div>
|
</div>
|
||||||
|
@ -97,19 +105,21 @@
|
||||||
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
||||||
<label for="fupPicture">Picture</label>
|
<label for="fupPicture">Picture</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-4" >
|
<div class="p-col-12 p-md-6 p-lg-4">
|
||||||
<input formControlName="picturePath" pInputText style="width:100%" (change)="selectPicture($event)"
|
<input formControlName="picturePath" pInputText style="width:100%" (change)="selectPicture($event)"
|
||||||
type="file">
|
type="file">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="p-col-12 p-md-6 p-lg-2" >
|
<div class="p-col-12 p-md-6 p-lg-2" style="margin: auto;">
|
||||||
<label for="fupSignature">Signature</label>
|
<label for="fupSignature">Signature</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-4" style="margin: auto;">
|
<div class="p-col-12 p-md-6 p-lg-4">
|
||||||
<input formControlName="signaturePath" pInputText (change)="selectSignature($event)" type="file"
|
<input formControlName="signaturePath" pInputText (change)="selectSignature($event)" type="file"
|
||||||
style="width:100%">
|
style="width:100%">
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="p-col-12 p-md-6 p-lg-6" ></div>
|
||||||
|
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</fieldset>
|
</fieldset>
|
||||||
|
|
|
@ -90,6 +90,7 @@ export class NomineeEntryComponent implements OnInit {
|
||||||
email: [''],
|
email: [''],
|
||||||
picturePath: [''],
|
picturePath: [''],
|
||||||
signaturePath: [''],
|
signaturePath: [''],
|
||||||
|
mobile: [''],
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
@ -67,12 +67,12 @@
|
||||||
</ng-template>
|
</ng-template>
|
||||||
</kendo-grid-command-column>
|
</kendo-grid-command-column>
|
||||||
<kendo-grid-command-column title="Action" width="100">
|
<kendo-grid-command-column title="Action" width="100">
|
||||||
<ng-template kendoGridCellTemplate let-dataItem>
|
<ng-template kendoGridCellTemplate let-dataItem let-rowIndex="rowIndex">
|
||||||
<button
|
<button
|
||||||
kendoGridEditCommand
|
kendoGridEditCommand
|
||||||
icon="pencil"
|
icon="pencil"
|
||||||
[primary]="true"
|
[primary]="true"
|
||||||
(click)="editHandler(dataItem)"
|
(click)="editHandler(rowIndex)"
|
||||||
[style.width.%]="49"
|
[style.width.%]="49"
|
||||||
></button>
|
></button>
|
||||||
<button
|
<button
|
||||||
|
|
|
@ -89,6 +89,7 @@ export class NomineeListComponent implements OnInit {
|
||||||
this.isDisplay = true;
|
this.isDisplay = true;
|
||||||
}
|
}
|
||||||
public editHandler(rowIndex: any) {
|
public editHandler(rowIndex: any) {
|
||||||
|
debugger
|
||||||
this.editIndex = rowIndex;
|
this.editIndex = rowIndex;
|
||||||
this.nominee = this.nominees[this.editIndex];
|
this.nominee = this.nominees[this.editIndex];
|
||||||
this.isDisplay = true;
|
this.isDisplay = true;
|
||||||
|
|
|
@ -66,7 +66,7 @@
|
||||||
<label>Schedule Date</label>
|
<label>Schedule Date</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-6 p-md-2">
|
<div class="p-col-6 p-md-2">
|
||||||
<kendo-datepicker [(ngModel)]="selectedDate" [format]="'dd MMMM yyyy'" style="width:100%"></kendo-datepicker>
|
<kendo-datepicker [(ngModel)]="selectedDate" [format]="'dd MMMM yyyy'" style="width:100%" (valueChange)="scheduleDateChange($event)" ></kendo-datepicker>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div class="p-col-6 p-md-1 label-ailgn">
|
<div class="p-col-6 p-md-1 label-ailgn">
|
||||||
|
@ -136,6 +136,6 @@
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-10"></div>
|
<div class="p-col-10"></div>
|
||||||
<div class="p-col-2" align="right">
|
<div class="p-col-2" align="right">
|
||||||
<button icon="save" kendoButton style="width:80%" (click)="onClickSubmit()">Submit</button>
|
<button icon="save" kendoButton style="width:80%" (click)="onClickSubmit()" [disabled]="isprevious">Submit</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
|
@ -20,6 +20,9 @@ import { EnumBonusItemType, EnumProductionBonusType } from 'src/app/_models/enum
|
||||||
import { ProdBonusParameter } from 'src/app/_models/Payroll/ProductionBonus/prodBonusParameter';
|
import { ProdBonusParameter } from 'src/app/_models/Payroll/ProductionBonus/prodBonusParameter';
|
||||||
import { error } from 'console';
|
import { error } from 'console';
|
||||||
import { GridComponent } from '@progress/kendo-angular-grid';
|
import { GridComponent } from '@progress/kendo-angular-grid';
|
||||||
|
import { AuthService } from '../../_services/auth/auth.service';
|
||||||
|
import { SalaryService } from '../../_services/payroll/salary.service';
|
||||||
|
import { PayrollType } from '../../_models/Authentication/payrollType';
|
||||||
|
|
||||||
|
|
||||||
@Component({
|
@Component({
|
||||||
|
@ -43,7 +46,8 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
|
|
||||||
prodBonusAttn: ProdBonusAttn[];
|
prodBonusAttn: ProdBonusAttn[];
|
||||||
|
|
||||||
selectedDate: Date = new Date;
|
// selectedDate: Date = new Date;
|
||||||
|
selectedDate: Date;
|
||||||
|
|
||||||
startTime: Date = new Date();
|
startTime: Date = new Date();
|
||||||
endTime: Date = new Date();
|
endTime: Date = new Date();
|
||||||
|
@ -62,7 +66,11 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
employeeSelection: string = 'commonEmployee';
|
employeeSelection: string = 'commonEmployee';
|
||||||
|
|
||||||
employeeList: Employee[] = [];
|
employeeList: Employee[] = [];
|
||||||
allEmps: any[] = [];
|
allEmps: any[] = [];
|
||||||
|
isprevious: boolean = false;
|
||||||
|
iSalaryProcesed: boolean = false;
|
||||||
|
salaryMonth: Date = new Date();
|
||||||
|
payrollType: PayrollType;
|
||||||
|
|
||||||
value: '';
|
value: '';
|
||||||
|
|
||||||
|
@ -71,7 +79,9 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
public dataTransferService: DataTransferService,
|
public dataTransferService: DataTransferService,
|
||||||
public WindowPopUp: AppWindowPopUp,
|
public WindowPopUp: AppWindowPopUp,
|
||||||
public loadingPanelService: loadingPanelService,
|
public loadingPanelService: loadingPanelService,
|
||||||
public employeeService: EmployeeServices,
|
public employeeService: EmployeeServices,
|
||||||
|
public authservice: AuthService,
|
||||||
|
public salaryService: SalaryService,
|
||||||
public bonusService: BonusService) {
|
public bonusService: BonusService) {
|
||||||
this.apiService.selectedMenuName = 'Production Bonus Attendance';
|
this.apiService.selectedMenuName = 'Production Bonus Attendance';
|
||||||
this._departmentPicker = new DynamicPicker(EnumDynamicpickerType.Department, false);
|
this._departmentPicker = new DynamicPicker(EnumDynamicpickerType.Department, false);
|
||||||
|
@ -79,7 +89,17 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
|
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
// this.Loadlayout();
|
// this.Loadlayout();
|
||||||
|
this.authservice.GetPayrollTypeByLoginID().subscribe(
|
||||||
|
(resp: any) => {
|
||||||
|
this.payrollType = resp;
|
||||||
|
},
|
||||||
|
(err: any) => {
|
||||||
|
},
|
||||||
|
() => {
|
||||||
|
this.salaryMonth = new Date(this.payrollType.nextPayProcessDate);
|
||||||
|
}
|
||||||
|
);
|
||||||
this.GetAllEmployees();
|
this.GetAllEmployees();
|
||||||
this.productionBonusSetup = new ProductionBonusSetup();
|
this.productionBonusSetup = new ProductionBonusSetup();
|
||||||
this.showScheduleDate = false;
|
this.showScheduleDate = false;
|
||||||
|
@ -116,7 +136,31 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
}
|
}
|
||||||
Loadlayout() {
|
Loadlayout() {
|
||||||
this.clear();
|
this.clear();
|
||||||
debugger;
|
debugger;
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = true;
|
||||||
|
this.salaryService.IsSalaryProcessed(new Date(this.payrollType.nextPayProcessDate)).subscribe(
|
||||||
|
(resp: any) => {
|
||||||
|
this.iSalaryProcesed = resp;
|
||||||
|
},
|
||||||
|
(err: any) => {
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
|
this.notificationService.showError(err.error);
|
||||||
|
|
||||||
|
},
|
||||||
|
() => {
|
||||||
|
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
|
|
||||||
|
if (new Date(this.selectedSalaryDate) <= new Date(this.payrollType.lastPayProcessDate) ||
|
||||||
|
(new Date(this.selectedSalaryDate) > new Date(this.payrollType.lastPayProcessDate) &&
|
||||||
|
new Date(this.payrollType.nextPayProcessDate) >= new Date(this.selectedSalaryDate) && this.iSalaryProcesed)) {
|
||||||
|
this.isprevious = true;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this.isprevious = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
const data = {
|
const data = {
|
||||||
createdDate: this.selectedSalaryDate
|
createdDate: this.selectedSalaryDate
|
||||||
}
|
}
|
||||||
|
@ -160,6 +204,7 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
loadLines(value: any) {
|
loadLines(value: any) {
|
||||||
// console.log('Selected value changed:', newValue);
|
// console.log('Selected value changed:', newValue);
|
||||||
// debugger;
|
// debugger;
|
||||||
|
this.selectedDate = undefined;
|
||||||
this.loadingPanelService.ShowLoadingPanel = true;
|
this.loadingPanelService.ShowLoadingPanel = true;
|
||||||
debugger;
|
debugger;
|
||||||
// this.bonusService.getLines(this.selectedProdBSdata.id).subscribe(
|
// this.bonusService.getLines(this.selectedProdBSdata.id).subscribe(
|
||||||
|
@ -189,33 +234,34 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
|
|
||||||
onClickLoad() {
|
onClickLoad() {
|
||||||
// debugger;
|
// debugger;
|
||||||
const fromDate = new Date(this.productionBonusSetup.fromDate.setHours(0, 0, 0, 0));
|
// const fromDate = new Date(this.productionBonusSetup.fromDate.setHours(0, 0, 0, 0));
|
||||||
const toDate = new Date(this.productionBonusSetup.toDate.setHours(0, 0, 0, 0));
|
// const toDate = new Date(this.productionBonusSetup.toDate.setHours(0, 0, 0, 0));
|
||||||
const selectedDate = new Date(this.selectedDate.setHours(0, 0, 0, 0));
|
// const selectedDate = new Date(this.selectedDate.setHours(0, 0, 0, 0));
|
||||||
if (selectedDate >= fromDate && selectedDate <= toDate) {
|
// if (selectedDate >= fromDate && selectedDate <= toDate) {
|
||||||
var dataForAttn = {
|
// var dataForAttn = {
|
||||||
setupId: this.productionBonusSetup.id,
|
// setupId: this.productionBonusSetup.id,
|
||||||
lineId: this.selectedLine.id,
|
// lineId: this.selectedLine.id,
|
||||||
date: this.selectedDate
|
// date: this.selectedDate
|
||||||
}
|
// }
|
||||||
// console.log(dataForAttn);
|
// // console.log(dataForAttn);
|
||||||
this.loadingPanelService.ShowLoadingPanel = true;
|
// this.loadingPanelService.ShowLoadingPanel = true;
|
||||||
this.bonusService.getProdBonusAtten(dataForAttn).subscribe(
|
// this.bonusService.getProdBonusAtten(dataForAttn).subscribe(
|
||||||
(resp) => {
|
// (resp) => {
|
||||||
this.prodBonusAttn = resp;
|
// this.prodBonusAttn = resp;
|
||||||
// console.log('Attn List', this.prodBonusAttn);
|
// // console.log('Attn List', this.prodBonusAttn);
|
||||||
// console.log(this.prodBonusAttn);
|
// // console.log(this.prodBonusAttn);
|
||||||
},
|
// },
|
||||||
(err) => {
|
// (err) => {
|
||||||
this.notificationService.showError(err.error);
|
// this.notificationService.showError(err.error);
|
||||||
this.loadingPanelService.ShowLoadingPanel = false;
|
// this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
},
|
// },
|
||||||
() => {
|
// () => {
|
||||||
this.loadingPanelService.ShowLoadingPanel = false;
|
// this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
this.employeeList = [];
|
// this.employeeList = [];
|
||||||
// debugger;
|
// debugger;
|
||||||
if (this.prodBonusAttn.length <= 0 && (this.productionBonusSetup.productionBonusType == EnumProductionBonusType.Cutting ||
|
if (this.prodBonusAttn.length <= 0 && (this.productionBonusSetup.productionBonusType == EnumProductionBonusType.Cutting ||
|
||||||
this.productionBonusSetup.productionBonusType == EnumProductionBonusType.Finishing)) {
|
this.productionBonusSetup.productionBonusType == EnumProductionBonusType.Finishing)) {
|
||||||
|
this.employeeList = [];
|
||||||
let data = {
|
let data = {
|
||||||
prodLine: this.selectedLine,
|
prodLine: this.selectedLine,
|
||||||
date: this.selectedDate
|
date: this.selectedDate
|
||||||
|
@ -235,21 +281,12 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
this.loadingPanelService.ShowLoadingPanel = false;
|
this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
}
|
}
|
||||||
);
|
);
|
||||||
// if (this.selectedLine.prodBonusParameters !== null && this.selectedLine.prodBonusParameters.length > 0) {
|
|
||||||
// var desigparam: ProdBonusParameter;
|
|
||||||
// desigparam = this.selectedLine.prodBonusParameters.find(o => o.itemType == EnumBonusItemType.Designation);
|
|
||||||
// // var pbp: ProdBonusParameter;
|
|
||||||
// for (let pbp in this.selectedLine.prodBonusParameters) {
|
|
||||||
// if (pbp['itemType'] == EnumBonusItemType.Department) {
|
|
||||||
// oTempEmployees: Employee[] = this.employeeList.filter(e1 => e1.DepartmentID === pbp['itemID'] && e1.DesignationID !== 2);
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
// }
|
|
||||||
}
|
}
|
||||||
|
|
||||||
//New For Swing And Printig
|
//New For Swing And Printig
|
||||||
if (this.prodBonusAttn.length <= 0 && (this.productionBonusSetup.productionBonusType == EnumProductionBonusType.Sewing ||
|
if (this.prodBonusAttn.length <= 0 && (this.productionBonusSetup.productionBonusType == EnumProductionBonusType.Sewing ||
|
||||||
this.productionBonusSetup.productionBonusType == EnumProductionBonusType.Printing)) {
|
this.productionBonusSetup.productionBonusType == EnumProductionBonusType.Printing)) {
|
||||||
|
this.employeeList = [];
|
||||||
let data = {
|
let data = {
|
||||||
prodLine: this.selectedLine,
|
prodLine: this.selectedLine,
|
||||||
date: this.selectedDate
|
date: this.selectedDate
|
||||||
|
@ -271,25 +308,25 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
);
|
);
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.prodBonusAttn.length > 0) {
|
// if (this.prodBonusAttn.length > 0) {
|
||||||
debugger;
|
// debugger;
|
||||||
for (let i = 0; i < this.prodBonusAttn.length; i++) {
|
// this.employeeList = [];
|
||||||
this.AddEmployeebyId(this.prodBonusAttn[i].employeeID);
|
// for (let i = 0; i < this.prodBonusAttn.length; i++) {
|
||||||
}
|
// this.AddEmployeebyId(this.prodBonusAttn[i].employeeID);
|
||||||
let inTime = new Date(this.prodBonusAttn[0].inTime);
|
// }
|
||||||
let outTime = new Date(this.prodBonusAttn[0].outTime);
|
// let inTime = new Date(this.prodBonusAttn[0].inTime);
|
||||||
this.startTime = this.setTime(inTime, inTime.getHours(), inTime.getMinutes(), inTime.getSeconds());
|
// let outTime = new Date(this.prodBonusAttn[0].outTime);
|
||||||
this.endTime = this.setTime(outTime, outTime.getHours(), outTime.getMinutes(), outTime.getSeconds());
|
// this.startTime = this.setTime(inTime, inTime.getHours(), inTime.getMinutes(), inTime.getSeconds());
|
||||||
}
|
// this.endTime = this.setTime(outTime, outTime.getHours(), outTime.getMinutes(), outTime.getSeconds());
|
||||||
}
|
// }
|
||||||
);
|
// }
|
||||||
}
|
// );
|
||||||
else {
|
// }
|
||||||
this.notificationService.showWarning('Date did not match with Work Schedule','Schedule not matched!');
|
// else {
|
||||||
}
|
// this.notificationService.showWarning('Date did not match with Work Schedule','Schedule not matched!');
|
||||||
|
// }
|
||||||
}
|
}
|
||||||
onClickAdd() {
|
onClickAdd() {
|
||||||
// console.log(this.employeeSelection);
|
|
||||||
debugger;
|
debugger;
|
||||||
if (this.selectedEmps === undefined) {
|
if (this.selectedEmps === undefined) {
|
||||||
this.notificationService.showWarning('Please Select an Employee');
|
this.notificationService.showWarning('Please Select an Employee');
|
||||||
|
@ -297,11 +334,6 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
}
|
}
|
||||||
if (this.employeeSelection === 'commonEmployee') {
|
if (this.employeeSelection === 'commonEmployee') {
|
||||||
if (this.selectedEmps !== null || this.selectedEmps !== undefined) {
|
if (this.selectedEmps !== null || this.selectedEmps !== undefined) {
|
||||||
// console.log(this.selectedEmps);
|
|
||||||
// console.log(this.employeeList);
|
|
||||||
// for (let i = 0; i < this.selectedEmps.length; i++) {
|
|
||||||
// this.AddEmployeebyId(this.selectedEmps[i].employeeID);
|
|
||||||
// }
|
|
||||||
for (let i = 0, isNew = true; i < this.selectedEmps.length; i++, isNew = true) {
|
for (let i = 0, isNew = true; i < this.selectedEmps.length; i++, isNew = true) {
|
||||||
for (let j = 0; j < this.employeeList.length; j++) {
|
for (let j = 0; j < this.employeeList.length; j++) {
|
||||||
if (this.selectedEmps[i].employeeID == this.employeeList[j].id) {
|
if (this.selectedEmps[i].employeeID == this.employeeList[j].id) {
|
||||||
|
@ -350,21 +382,6 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
AddEmployeebyId(empId: number) {
|
AddEmployeebyId(empId: number) {
|
||||||
// this.loadingPanelService.ShowLoadingPanel = true;
|
|
||||||
// this.employeeService.getEmployeeByID(empId).subscribe(
|
|
||||||
// (resp) => {
|
|
||||||
// this.employeeList.push(resp);
|
|
||||||
// },
|
|
||||||
// (err) => {
|
|
||||||
// this.notificationService.showError(err.error);
|
|
||||||
// this.loadingPanelService.ShowLoadingPanel = false;
|
|
||||||
// },
|
|
||||||
// () => {
|
|
||||||
// // this.AddEmployeeGridData(empId, isCommonValue);
|
|
||||||
// // console.log(this.prodBonusAttn);
|
|
||||||
// this.loadingPanelService.ShowLoadingPanel = false;
|
|
||||||
// }
|
|
||||||
// );
|
|
||||||
this.employeeList.push(this.allEmps.find(e => e.id == empId));
|
this.employeeList.push(this.allEmps.find(e => e.id == empId));
|
||||||
}
|
}
|
||||||
AddEmployeeGridData(empId: number, isCommonValue: boolean) {
|
AddEmployeeGridData(empId: number, isCommonValue: boolean) {
|
||||||
|
@ -381,29 +398,9 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
isCommon: false
|
isCommon: false
|
||||||
};
|
};
|
||||||
this.prodBonusAttn.push(newProdBonusAttn);
|
this.prodBonusAttn.push(newProdBonusAttn);
|
||||||
// console.log('emplist ' + this.employeeList.length + '\n PbAttn ' + this.prodBonusAttn.length);
|
|
||||||
// this.selectedEmps = undefined;
|
// this.selectedEmps = undefined;
|
||||||
}
|
}
|
||||||
// GetSelectedEmployee(sremployee: SearchEmployee) {
|
|
||||||
// if (sremployee === undefined) {
|
|
||||||
// this._employee = new Employee();
|
|
||||||
// return;
|
|
||||||
// }
|
|
||||||
// this.loadingPanelService.ShowLoadingPanel = true;
|
|
||||||
// this.employeeService.getEmployeeByID(sremployee.employeeID).subscribe(
|
|
||||||
// (resp: any) => {
|
|
||||||
// this._employee = resp;
|
|
||||||
// },
|
|
||||||
// (err: any) => {
|
|
||||||
// this.loadingPanelService.ShowLoadingPanel = false;
|
|
||||||
// },
|
|
||||||
// () => {
|
|
||||||
// this.loadingPanelService.ShowLoadingPanel = false;
|
|
||||||
// }
|
|
||||||
// );
|
|
||||||
// }
|
|
||||||
onClickSubmit() {
|
onClickSubmit() {
|
||||||
// console.log(this.prodBonusAttn);
|
|
||||||
debugger;
|
debugger;
|
||||||
if (this.startTime == undefined || this.endTime == undefined) {
|
if (this.startTime == undefined || this.endTime == undefined) {
|
||||||
this.notificationService.showWarning('Please Select In/Out Time');
|
this.notificationService.showWarning('Please Select In/Out Time');
|
||||||
|
@ -466,6 +463,8 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
this.productionBonusSetup = new ProductionBonusSetup();
|
this.productionBonusSetup = new ProductionBonusSetup();
|
||||||
this.employeeList = [];
|
this.employeeList = [];
|
||||||
this.selectedLine = undefined;
|
this.selectedLine = undefined;
|
||||||
|
this.selectedProdBSdata = undefined;
|
||||||
|
this.selectedDate = undefined;
|
||||||
}
|
}
|
||||||
|
|
||||||
public onKeyDown(pressedKey) {
|
public onKeyDown(pressedKey) {
|
||||||
|
@ -496,5 +495,52 @@ export class ProductionBonusAttendanceComponent implements OnInit {
|
||||||
date.setSeconds(sec);
|
date.setSeconds(sec);
|
||||||
return date;
|
return date;
|
||||||
}
|
}
|
||||||
|
public scheduleDateChange(date: any){
|
||||||
|
debugger;
|
||||||
|
date;
|
||||||
|
if (date > new Date( 2015,1,1) && this.selectedProdBSdata != undefined && this.selectedLine != undefined ) {
|
||||||
|
|
||||||
|
const fromDate = new Date(this.productionBonusSetup.fromDate.setHours(0, 0, 0, 0));
|
||||||
|
const toDate = new Date(this.productionBonusSetup.toDate.setHours(0, 0, 0, 0));
|
||||||
|
const selectedDate = new Date(this.selectedDate.setHours(0, 0, 0, 0));
|
||||||
|
if (selectedDate >= fromDate && selectedDate <= toDate) {
|
||||||
|
var dataForAttn = {
|
||||||
|
setupId: this.productionBonusSetup.id,
|
||||||
|
lineId: this.selectedLine.id,
|
||||||
|
date: this.selectedDate
|
||||||
|
}
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = true;
|
||||||
|
this.bonusService.getProdBonusAtten(dataForAttn).subscribe(
|
||||||
|
(resp) => {
|
||||||
|
this.prodBonusAttn = resp;
|
||||||
|
},
|
||||||
|
(err) => {
|
||||||
|
this.notificationService.showError(err.error);
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
|
},
|
||||||
|
() => {
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
|
if (this.prodBonusAttn.length > 0) {
|
||||||
|
debugger;
|
||||||
|
this.employeeList = [];
|
||||||
|
for (let i = 0; i < this.prodBonusAttn.length; i++) {
|
||||||
|
this.AddEmployeebyId(this.prodBonusAttn[i].employeeID);
|
||||||
|
}
|
||||||
|
let inTime = new Date(this.prodBonusAttn[0].inTime);
|
||||||
|
let outTime = new Date(this.prodBonusAttn[0].outTime);
|
||||||
|
this.startTime = this.setTime(inTime, inTime.getHours(), inTime.getMinutes(), inTime.getSeconds());
|
||||||
|
this.endTime = this.setTime(outTime, outTime.getHours(), outTime.getMinutes(), outTime.getSeconds());
|
||||||
|
}
|
||||||
|
else{
|
||||||
|
this.employeeList.forEach(x => this.AddEmployeeGridData(x.id, false));
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this.notificationService.showWarning('Date did not match with Work Schedule','Schedule not matched!');
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -130,7 +130,7 @@
|
||||||
|
|
||||||
|
|
||||||
<div class="p-col-12 p-lg-12" align="right">
|
<div class="p-col-12 p-lg-12" align="right">
|
||||||
<button kendoButton icon="save" [primary]="true" style="width: fit-content" (click)="onClickSubmit()">Submit</button>
|
<button kendoButton icon="save" [primary]="true" style="width: fit-content" (click)="onClickSubmit()" [disabled]="isprevious">Submit</button>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
<div>
|
<div>
|
||||||
|
@ -187,7 +187,7 @@
|
||||||
style="width:80%">Add</button>
|
style="width:80%">Add</button>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
<kendo-grid [kendoGridBinding]="prodBonusLine.prodBonusSupervisors" [sortable]="true" [style.height.%]="100"
|
<kendo-grid [kendoGridBinding]="prodBonusLine.prodBonusSupervisors" [sortable]="true" [style.height.px]="250"
|
||||||
[reorderable]="true">
|
[reorderable]="true">
|
||||||
<!-- [resizable]="true" [pageSize]="state.take" [skip]="state.skip"
|
<!-- [resizable]="true" [pageSize]="state.take" [skip]="state.skip"
|
||||||
[sort]="state.sort" [pageable]="true" (dataStateChange)="dataStateChange($event)">-->
|
[sort]="state.sort" [pageable]="true" (dataStateChange)="dataStateChange($event)">-->
|
||||||
|
@ -195,23 +195,23 @@
|
||||||
<!-- <ng-template kendoGridCellTemplate let-dataItem let-rowIndex="rowIndex">
|
<!-- <ng-template kendoGridCellTemplate let-dataItem let-rowIndex="rowIndex">
|
||||||
</ng-template> -->
|
</ng-template> -->
|
||||||
</kendo-grid-column>
|
</kendo-grid-column>
|
||||||
<kendo-grid-column field="employeeNo" title="Employee No" [width]="100">
|
<kendo-grid-column field="employeeNo" title="Employee No" [width]="80">
|
||||||
<!-- <ng-template kendoGridCellTemplate let-dataItem let-rowIndex="rowIndex">
|
<!-- <ng-template kendoGridCellTemplate let-dataItem let-rowIndex="rowIndex">
|
||||||
</ng-template> -->
|
</ng-template> -->
|
||||||
</kendo-grid-column>
|
</kendo-grid-column>
|
||||||
|
|
||||||
<kendo-grid-column field="devGrantParentName" title="top Parent (section)" [width]="120">
|
<kendo-grid-column field="devGrantParentName" title="Top Parent (section)" [width]="90">
|
||||||
</kendo-grid-column>
|
</kendo-grid-column>
|
||||||
<kendo-grid-column field="devParentName" title="parent (floor)" [width]="120">
|
<kendo-grid-column field="devParentName" title="Parent (floor)" [width]="80">
|
||||||
</kendo-grid-column>
|
</kendo-grid-column>
|
||||||
|
|
||||||
<kendo-grid-column field="devName" title="posted" [width]="120">
|
<kendo-grid-column field="devName" title="Posted" [width]="80">
|
||||||
</kendo-grid-column>
|
</kendo-grid-column>
|
||||||
|
|
||||||
|
|
||||||
<kendo-grid-column field="bonusPercent" title="Bonus Percent" [width]="100">
|
<kendo-grid-column field="bonusPercent" title="Bonus Percent" [width]="80">
|
||||||
</kendo-grid-column>
|
</kendo-grid-column>
|
||||||
<kendo-grid-column title="Actions" [width]="50">
|
<kendo-grid-column title="Actions" [width]="85">
|
||||||
<ng-template kendoGridCellTemplate let-dataItem let-rowIndex="rowIndex">
|
<ng-template kendoGridCellTemplate let-dataItem let-rowIndex="rowIndex">
|
||||||
<button type="button" kendoButton icon="delete" class="kt-delete"
|
<button type="button" kendoButton icon="delete" class="kt-delete"
|
||||||
style="width: fit-content;" (click)="onClickRemoveSupervisors(dataItem)">
|
style="width: fit-content;" (click)="onClickRemoveSupervisors(dataItem)">
|
||||||
|
|
|
@ -29,6 +29,9 @@ import { process, State } from '@progress/kendo-data-query';
|
||||||
import { DataStateChangeEvent } from '@progress/kendo-angular-grid';
|
import { DataStateChangeEvent } from '@progress/kendo-angular-grid';
|
||||||
import { noUndefined } from '@angular/compiler/src/util';
|
import { noUndefined } from '@angular/compiler/src/util';
|
||||||
import { EnumStatus } from '../../_models/enums';
|
import { EnumStatus } from '../../_models/enums';
|
||||||
|
import { AuthService } from '../../_services/auth/auth.service';
|
||||||
|
import { PayrollType } from '../../_models/Authentication/payrollType';
|
||||||
|
import { SalaryService } from '../../_services/payroll/salary.service';
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
|
@ -46,7 +49,9 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
public WindowPopUp: AppWindowPopUp,
|
public WindowPopUp: AppWindowPopUp,
|
||||||
public loadingPanelService: loadingPanelService,
|
public loadingPanelService: loadingPanelService,
|
||||||
public employeeService: EmployeeServices,
|
public employeeService: EmployeeServices,
|
||||||
public bonusService: BonusService,
|
public bonusService: BonusService,
|
||||||
|
public authservice: AuthService,
|
||||||
|
public salaryService: SalaryService,
|
||||||
public datePipe: DatePipe) {
|
public datePipe: DatePipe) {
|
||||||
this.apiService.selectedMenuName = 'Production Bonus Setup';
|
this.apiService.selectedMenuName = 'Production Bonus Setup';
|
||||||
this._departmentPicker = new DynamicPicker(EnumDynamicpickerType.Department, false);
|
this._departmentPicker = new DynamicPicker(EnumDynamicpickerType.Department, false);
|
||||||
|
@ -69,10 +74,14 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
prodBonusWork: ProdBonusWorkSchedule;
|
prodBonusWork: ProdBonusWorkSchedule;
|
||||||
//Child-level 2
|
//Child-level 2
|
||||||
prodBonusSupervisor: ProdBonusSupervisor;
|
prodBonusSupervisor: ProdBonusSupervisor;
|
||||||
prodBonusParameter: ProdBonusParameter;
|
prodBonusParameter: ProdBonusParameter;
|
||||||
|
isprevious: boolean = false;
|
||||||
|
iSalaryProcesed: boolean = false;
|
||||||
|
salaryMonth: Date = new Date();
|
||||||
|
payrollType: PayrollType;
|
||||||
|
|
||||||
prodBonusAttn: ProdBonusAttn[];
|
prodBonusAttn: ProdBonusAttn[];
|
||||||
depts: Department[] = [];
|
depts: Department[] = [];
|
||||||
layoutNo: string;
|
layoutNo: string;
|
||||||
// programName: string;
|
// programName: string;
|
||||||
// maxPerson: number;
|
// maxPerson: number;
|
||||||
|
@ -106,7 +115,7 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
department: Department;
|
department: Department;
|
||||||
|
|
||||||
selectedRow: any;
|
selectedRow: any;
|
||||||
scheduleTime: any;
|
scheduleTime: any;
|
||||||
|
|
||||||
|
|
||||||
editDetails: boolean = false;
|
editDetails: boolean = false;
|
||||||
|
@ -119,45 +128,56 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
// { text: "Large", value: 3 },
|
// { text: "Large", value: 3 },
|
||||||
// ];
|
// ];
|
||||||
|
|
||||||
ngOnInit(): void {
|
ngOnInit(): void {
|
||||||
|
|
||||||
this.productionBonusSetup = new ProductionBonusSetup();
|
this.productionBonusSetup = new ProductionBonusSetup();
|
||||||
this.prodBonusLine = new ProdBonusLine();
|
this.prodBonusLine = new ProdBonusLine();
|
||||||
this.prodBonusSupervisor = new ProdBonusSupervisor();
|
this.prodBonusSupervisor = new ProdBonusSupervisor();
|
||||||
this.prodBonusParameter = new ProdBonusParameter();
|
this.prodBonusParameter = new ProdBonusParameter();
|
||||||
this.prodBonusWork = new ProdBonusWorkSchedule();
|
this.prodBonusWork = new ProdBonusWorkSchedule();
|
||||||
|
this.authservice.GetPayrollTypeByLoginID().subscribe(
|
||||||
|
(resp: any) => {
|
||||||
|
this.payrollType = resp;
|
||||||
|
},
|
||||||
|
(err: any) => {
|
||||||
|
},
|
||||||
|
() => {
|
||||||
|
this.salaryMonth = new Date(this.payrollType.nextPayProcessDate);
|
||||||
|
}
|
||||||
|
);
|
||||||
this.getBonusType();
|
this.getBonusType();
|
||||||
|
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
OnclickCheckbox() {
|
OnclickCheckbox() {
|
||||||
debugger;
|
debugger;
|
||||||
if (this.isNewLayout === false) {
|
if (this.isNewLayout === false) {
|
||||||
this.isNewLayout = true;
|
this.isNewLayout = true;
|
||||||
this.productionBonusSetup = new ProductionBonusSetup();
|
this.productionBonusSetup = new ProductionBonusSetup();
|
||||||
this.prodBonusLine = new ProdBonusLine();
|
this.prodBonusLine = new ProdBonusLine();
|
||||||
this.prodBonusSupervisor = new ProdBonusSupervisor();
|
this.prodBonusSupervisor = new ProdBonusSupervisor();
|
||||||
this.prodBonusParameter = new ProdBonusParameter();
|
this.prodBonusParameter = new ProdBonusParameter();
|
||||||
this.prodBonusWork = new ProdBonusWorkSchedule();
|
this.prodBonusWork = new ProdBonusWorkSchedule();
|
||||||
this.productionBonusSetup.fromDate = new Date();
|
this.productionBonusSetup.fromDate = new Date();
|
||||||
this.productionBonusSetup.toDate = new Date();
|
this.productionBonusSetup.toDate = new Date();
|
||||||
}
|
|
||||||
else {
|
|
||||||
this.isNewLayout = false;
|
|
||||||
this.productionBonusSetup.fromDate = undefined;
|
|
||||||
this.productionBonusSetup.toDate = undefined;
|
|
||||||
|
|
||||||
}
|
|
||||||
this.prodBSdata = undefined;
|
|
||||||
this.filteredProdBSdata = undefined;
|
|
||||||
this.selectedProdBSdata = undefined;
|
|
||||||
this.selectedBonusType = {
|
|
||||||
label: 'Select Bonus Type...',
|
|
||||||
value: null
|
|
||||||
}
|
|
||||||
this.editDetails = false;
|
|
||||||
}
|
}
|
||||||
|
else {
|
||||||
|
this.isNewLayout = false;
|
||||||
|
this.productionBonusSetup.fromDate = undefined;
|
||||||
|
this.productionBonusSetup.toDate = undefined;
|
||||||
|
|
||||||
|
}
|
||||||
|
this.prodBSdata = undefined;
|
||||||
|
this.filteredProdBSdata = undefined;
|
||||||
|
this.selectedProdBSdata = undefined;
|
||||||
|
this.selectedBonusType = {
|
||||||
|
label: 'Select Bonus Type...',
|
||||||
|
value: null
|
||||||
|
}
|
||||||
|
this.editDetails = false;
|
||||||
|
}
|
||||||
|
|
||||||
handleFilter(value) {
|
handleFilter(value) {
|
||||||
this.filteredProdBSdata = this.prodBSdata.filter(
|
this.filteredProdBSdata = this.prodBSdata.filter(
|
||||||
|
@ -174,8 +194,34 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
|
|
||||||
Loadlayout() {
|
Loadlayout() {
|
||||||
this.selectedProdBSdata = undefined;
|
this.selectedProdBSdata = undefined;
|
||||||
debugger;
|
debugger;
|
||||||
const data = {
|
this.loadingPanelService.ShowLoadingPanel = true;
|
||||||
|
this.salaryService.IsSalaryProcessed(new Date(this.payrollType.nextPayProcessDate)).subscribe(
|
||||||
|
(resp: any) => {
|
||||||
|
this.iSalaryProcesed = resp;
|
||||||
|
},
|
||||||
|
(err: any) => {
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
|
this.notificationService.showError(err.error);
|
||||||
|
|
||||||
|
},
|
||||||
|
() => {
|
||||||
|
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
|
|
||||||
|
if (new Date(this.selectedSalaryDate) <= new Date(this.payrollType.lastPayProcessDate) ||
|
||||||
|
(new Date(this.selectedSalaryDate) > new Date(this.payrollType.lastPayProcessDate) &&
|
||||||
|
new Date(this.payrollType.nextPayProcessDate) >= new Date(this.selectedSalaryDate) && this.iSalaryProcesed)) {
|
||||||
|
this.isprevious = true;
|
||||||
|
}
|
||||||
|
else {
|
||||||
|
this.isprevious = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
});
|
||||||
|
|
||||||
|
|
||||||
|
const data = {
|
||||||
createdDate: this.selectedSalaryDate
|
createdDate: this.selectedSalaryDate
|
||||||
}
|
}
|
||||||
this.loadingPanelService.ShowLoadingPanel = true;
|
this.loadingPanelService.ShowLoadingPanel = true;
|
||||||
|
@ -272,90 +318,90 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
this.bonusPercent = 0;
|
this.bonusPercent = 0;
|
||||||
}
|
}
|
||||||
|
|
||||||
onClickAddLine(): void {
|
onClickAddLine(): void {
|
||||||
debugger;
|
debugger;
|
||||||
// this.onEdit = false;
|
// this.onEdit = false;
|
||||||
this.isNewLine = true;
|
this.isNewLine = true;
|
||||||
this.selectedRow = new ProdBonusLine();
|
this.selectedRow = new ProdBonusLine();
|
||||||
|
|
||||||
this._departmentPicker = new DynamicPicker(EnumDynamicpickerType.Department, false);
|
this._departmentPicker = new DynamicPicker(EnumDynamicpickerType.Department, false);
|
||||||
this.prodBonusLine = new ProdBonusLine();
|
this.prodBonusLine = new ProdBonusLine();
|
||||||
this.prodBonusWork = new ProdBonusWorkSchedule();
|
this.prodBonusWork = new ProdBonusWorkSchedule();
|
||||||
if (this.isNewLayout) {//Add Setup line
|
if (this.isNewLayout) {//Add Setup line
|
||||||
|
|
||||||
if (this.selectedBonusType === undefined || this.selectedBonusType === null) {
|
if (this.selectedBonusType === undefined || this.selectedBonusType === null) {
|
||||||
return this.notificationService.showWarning('Please select Bonus Type');
|
return this.notificationService.showWarning('Please select Bonus Type');
|
||||||
}
|
}
|
||||||
this.saveProductionBonusSetup();
|
this.saveProductionBonusSetup();
|
||||||
// console.log(this.productionBonusSetup);
|
// console.log(this.productionBonusSetup);
|
||||||
debugger;
|
debugger;
|
||||||
if (this.productionBonusSetup.designNo === '' || this.productionBonusSetup.programName === '' || this.productionBonusSetup.fromDate === undefined ||
|
if (this.productionBonusSetup.designNo === '' || this.productionBonusSetup.programName === '' || this.productionBonusSetup.fromDate === undefined ||
|
||||||
this.productionBonusSetup.toDate === undefined || this.productionBonusSetup.productionBonusType === null) {
|
this.productionBonusSetup.toDate === undefined || this.productionBonusSetup.productionBonusType === null) {
|
||||||
this.notificationService.showWarning('Please fill up the information of production bonus setup');
|
this.notificationService.showWarning('Please fill up the information of production bonus setup');
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
|
|
||||||
this.prodBonusLine.prodBonusSupervisors = [];
|
this.prodBonusLine.prodBonusSupervisors = [];
|
||||||
this.prodBonusLine.prodBonusWorkSchedules = [];
|
this.prodBonusLine.prodBonusWorkSchedules = [];
|
||||||
|
|
||||||
// console.log(this.prodBonusLine);
|
|
||||||
|
|
||||||
// for (let j = 0; j < this.productionBonusSetup.productionBonusLines.length; j++) {
|
|
||||||
// for (let i = 0; i < this.productionBonusSetup.productionBonusLines[i].prodBonusSupervisors.length; i++)
|
|
||||||
// this.prodBonusLine.prodBonusSupervisors = this.productionBonusSetup.productionBonusLines[i].prodBonusSupervisors;
|
|
||||||
// }
|
|
||||||
}
|
|
||||||
else { //Edit Setup line
|
|
||||||
// console.log(this.productionBonusSetup);
|
|
||||||
debugger;
|
|
||||||
this.prodBonusLine.prodBonusSupervisors = [];
|
|
||||||
this.prodBonusLine.prodBonusWorkSchedules = [];
|
|
||||||
|
|
||||||
}
|
|
||||||
this.opened = true;
|
|
||||||
// create schedule
|
|
||||||
this.loadingPanelService.ShowLoadingPanel = true;
|
|
||||||
debugger;
|
|
||||||
if (this.prodBonusLine.id !== 0) {
|
|
||||||
|
|
||||||
}
|
|
||||||
|
|
||||||
|
// console.log(this.prodBonusLine);
|
||||||
|
|
||||||
|
// for (let j = 0; j < this.productionBonusSetup.productionBonusLines.length; j++) {
|
||||||
|
// for (let i = 0; i < this.productionBonusSetup.productionBonusLines[i].prodBonusSupervisors.length; i++)
|
||||||
|
// this.prodBonusLine.prodBonusSupervisors = this.productionBonusSetup.productionBonusLines[i].prodBonusSupervisors;
|
||||||
|
// }
|
||||||
|
}
|
||||||
|
else { //Edit Setup line
|
||||||
|
// console.log(this.productionBonusSetup);
|
||||||
|
debugger;
|
||||||
|
this.prodBonusLine.prodBonusSupervisors = [];
|
||||||
|
this.prodBonusLine.prodBonusWorkSchedules = [];
|
||||||
|
|
||||||
|
}
|
||||||
|
this.opened = true;
|
||||||
|
// create schedule
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = true;
|
||||||
|
debugger;
|
||||||
|
if (this.prodBonusLine.id !== 0) {
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
GetScheduleTime(dataItem: any) {
|
|
||||||
console.log('line');
|
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
GetScheduleTime(dataItem: any) {
|
||||||
|
console.log('line');
|
||||||
|
console.log(this.prodBonusLine.prodBonusWorkSchedules);
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = true;
|
||||||
|
this.bonusService.GetschedulewithTime(this.prodBonusLine.prodBonusWorkSchedules[0].prodBonusLineID).subscribe(
|
||||||
|
(resp) => {
|
||||||
|
this.scheduleTime = resp;
|
||||||
|
},
|
||||||
|
(err: any) => {
|
||||||
|
this.notificationService.showError(err.error);
|
||||||
|
this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
|
},
|
||||||
|
() => {
|
||||||
|
console.log(this.scheduleTime);
|
||||||
|
if (this.prodBonusLine.prodBonusWorkSchedules != undefined) {
|
||||||
|
var pdrs = this.prodBonusLine.prodBonusWorkSchedules;
|
||||||
|
pdrs.forEach(x => {
|
||||||
|
var item = this.scheduleTime.find(y => y.startDateTime == x.startDateTime);
|
||||||
|
if (item != undefined) {
|
||||||
|
x.inTime = new Date(item.inTime);
|
||||||
|
x.outTime = new Date(item.outTime);
|
||||||
|
x.totalCount = item.scheduleCount;
|
||||||
|
}
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
console.log(this.prodBonusLine.prodBonusWorkSchedules);
|
console.log(this.prodBonusLine.prodBonusWorkSchedules);
|
||||||
this.loadingPanelService.ShowLoadingPanel = true;
|
this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
this.bonusService.GetschedulewithTime(this.prodBonusLine.prodBonusWorkSchedules[0].prodBonusLineID).subscribe(
|
}
|
||||||
(resp) => {
|
);
|
||||||
this.scheduleTime = resp;
|
}
|
||||||
},
|
|
||||||
(err: any) => {
|
|
||||||
this.notificationService.showError(err.error);
|
|
||||||
this.loadingPanelService.ShowLoadingPanel = false;
|
|
||||||
},
|
|
||||||
() => {
|
|
||||||
console.log(this.scheduleTime);
|
|
||||||
if (this.prodBonusLine.prodBonusWorkSchedules != undefined) {
|
|
||||||
var pdrs = this.prodBonusLine.prodBonusWorkSchedules;
|
|
||||||
pdrs.forEach(x => {
|
|
||||||
var item = this.scheduleTime.find(y => y.startDateTime == x.startDateTime);
|
|
||||||
if (item != undefined) {
|
|
||||||
x.inTime = new Date( item.inTime);
|
|
||||||
x.outTime = new Date( item.outTime);
|
|
||||||
x.totalCount = item.scheduleCount;
|
|
||||||
}
|
|
||||||
}
|
|
||||||
);
|
|
||||||
}
|
|
||||||
console.log(this.prodBonusLine.prodBonusWorkSchedules);
|
|
||||||
this.loadingPanelService.ShowLoadingPanel = false;
|
|
||||||
}
|
|
||||||
);
|
|
||||||
}
|
|
||||||
|
|
||||||
onCellClickEdit(dataItem: ProdBonusLine) {
|
onCellClickEdit(dataItem: ProdBonusLine) {
|
||||||
|
|
||||||
|
@ -397,26 +443,26 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
this.opened = true;
|
this.opened = true;
|
||||||
}
|
}
|
||||||
|
|
||||||
newLine() {
|
newLine() {
|
||||||
if ((this._departmentPicker.selectedID === undefined || this._departmentPicker.selectedID === 0) &&
|
if ((this._departmentPicker.selectedID === undefined || this._departmentPicker.selectedID === 0) &&
|
||||||
(this.prodBonusLine.lineName === '' || this.prodBonusLine.lineName === undefined)) {
|
(this.prodBonusLine.lineName === '' || this.prodBonusLine.lineName === undefined)) {
|
||||||
this.notificationService.showWarning('Please Select a Line');
|
this.notificationService.showWarning('Please Select a Line');
|
||||||
this.close();
|
this.close();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (this._employee === undefined || this._employee.id === 0) {
|
if (this._employee === undefined || this._employee.id === 0) {
|
||||||
this.notificationService.showWarning('Please Select Supervisor');
|
this.notificationService.showWarning('Please Select Supervisor');
|
||||||
this.close();
|
this.close();
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
// if (this.scheduledHours === undefined || this.scheduledHours === 0) {
|
// if (this.scheduledHours === undefined || this.scheduledHours === 0) {
|
||||||
// this.notificationService.showWarning('Please Select Scheduled Hours');
|
// this.notificationService.showWarning('Please Select Scheduled Hours');
|
||||||
// return;
|
// return;
|
||||||
// }
|
// }
|
||||||
// if (this.bonusPercent === undefined || this.bonusPercent === 0) {
|
// if (this.bonusPercent === undefined || this.bonusPercent === 0) {
|
||||||
// this.notificationService.showWarning('Please Select Bonus Percentage');
|
// this.notificationService.showWarning('Please Select Bonus Percentage');
|
||||||
// return;
|
// return;
|
||||||
// }
|
// }
|
||||||
|
|
||||||
|
|
||||||
debugger;
|
debugger;
|
||||||
|
@ -430,9 +476,9 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
}
|
}
|
||||||
// this.isNewLine = true;
|
// this.isNewLine = true;
|
||||||
|
|
||||||
var newlineSupervisor: ProdBonusSupervisor = new ProdBonusSupervisor();
|
var newlineSupervisor: ProdBonusSupervisor = new ProdBonusSupervisor();
|
||||||
var newlineParameter: ProdBonusParameter = new ProdBonusParameter();
|
var newlineParameter: ProdBonusParameter = new ProdBonusParameter();
|
||||||
// var newLayoutWork: ProdBonusWorkSchedule = new ProdBonusWorkSchedule();
|
// var newLayoutWork: ProdBonusWorkSchedule = new ProdBonusWorkSchedule();
|
||||||
|
|
||||||
const index = this.prodBonusLine.prodBonusSupervisors.findIndex(sv => sv.employeeID == this._employee.id);
|
const index = this.prodBonusLine.prodBonusSupervisors.findIndex(sv => sv.employeeID == this._employee.id);
|
||||||
if (index !== -1) {
|
if (index !== -1) {
|
||||||
|
@ -445,10 +491,10 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
newlineSupervisor.bonusPercent = this.bonusPercent;
|
newlineSupervisor.bonusPercent = this.bonusPercent;
|
||||||
newlineSupervisor.prodBonusSetupID = this.productionBonusSetup.id;
|
newlineSupervisor.prodBonusSetupID = this.productionBonusSetup.id;
|
||||||
|
|
||||||
if (this.isNewLine) {
|
if (this.isNewLine) {
|
||||||
newlineParameter.itemID = this._departmentPicker.selectedID;
|
newlineParameter.itemID = this._departmentPicker.selectedID;
|
||||||
newlineParameter.itemType = 0;
|
newlineParameter.itemType = 0;
|
||||||
newlineParameter.prodBonusSetupID = this.productionBonusSetup.id;
|
newlineParameter.prodBonusSetupID = this.productionBonusSetup.id;
|
||||||
|
|
||||||
// var department;
|
// var department;
|
||||||
this.basicService.getDepartmentByID(this._departmentPicker.selectedID).subscribe(
|
this.basicService.getDepartmentByID(this._departmentPicker.selectedID).subscribe(
|
||||||
|
@ -508,13 +554,13 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
// this.prodBonusLine.prodBonusParameters.push(newlineParameter);
|
// this.prodBonusLine.prodBonusParameters.push(newlineParameter);
|
||||||
|
|
||||||
|
|
||||||
// console.log(this.prodBonusLine);
|
// console.log(this.prodBonusLine);
|
||||||
this.clearProdbonusLine();
|
this.clearProdbonusLine();
|
||||||
// this.notificationService.showSuccess('Supervisor added to the line');
|
// this.notificationService.showSuccess('Supervisor added to the line');
|
||||||
}
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
saveProductionBonusSetup(): void {
|
saveProductionBonusSetup(): void {
|
||||||
this.productionBonusSetup.salaryMonth = this.selectedSalaryDate;
|
this.productionBonusSetup.salaryMonth = this.selectedSalaryDate;
|
||||||
if (this.isNewLayout)
|
if (this.isNewLayout)
|
||||||
|
@ -593,9 +639,16 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
}
|
}
|
||||||
onClickRemoveSupervisors(data: any) {
|
onClickRemoveSupervisors(data: any) {
|
||||||
debugger;
|
debugger;
|
||||||
const index = this.prodBonusLine.prodBonusSupervisors.findIndex(item => item.id === data.id);
|
if (data.id == 0) {
|
||||||
if (index !== -1) {
|
const index = this.prodBonusLine.prodBonusSupervisors.findIndex(item => item.employeeID === data.employeeID);
|
||||||
this.prodBonusLine.prodBonusSupervisors.splice(index, 1);
|
if (index !== -1) {
|
||||||
|
this.prodBonusLine.prodBonusSupervisors.splice(index, 1);
|
||||||
|
}
|
||||||
|
} else {
|
||||||
|
const index = this.prodBonusLine.prodBonusSupervisors.findIndex(item => item.id === data.id);
|
||||||
|
if (index !== -1) {
|
||||||
|
this.prodBonusLine.prodBonusSupervisors.splice(index, 1);
|
||||||
|
}
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
clearFields() {
|
clearFields() {
|
||||||
|
@ -620,7 +673,7 @@ export class ProductionBonusSetupComponent implements OnInit {
|
||||||
createWorkSchedule(data: any) {
|
createWorkSchedule(data: any) {
|
||||||
debugger;
|
debugger;
|
||||||
var newlineParameter: ProdBonusParameter = new ProdBonusParameter();
|
var newlineParameter: ProdBonusParameter = new ProdBonusParameter();
|
||||||
if (this.isNewLine){
|
if (this.isNewLine) {
|
||||||
newlineParameter.itemID = this._departmentPicker.selectedID;
|
newlineParameter.itemID = this._departmentPicker.selectedID;
|
||||||
newlineParameter.itemType = 0;
|
newlineParameter.itemType = 0;
|
||||||
newlineParameter.prodBonusSetupID = this.productionBonusSetup.id;
|
newlineParameter.prodBonusSetupID = this.productionBonusSetup.id;
|
||||||
|
|
|
@ -30,8 +30,8 @@
|
||||||
<label>Employee Id </label>
|
<label>Employee Id </label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-8 form-control-lg ">
|
<div class="p-col-12 p-md-6 p-lg-8 form-control-lg ">
|
||||||
<input formControlName="employeeId" [readonly]="!newEmployee"
|
<input formControlName="employeeId"[readonly]="true"
|
||||||
[(ngModel)]="employee.employeeNo" type="text" style="width:100%" pInputText required>
|
[(ngModel)]="employee.employeeNo" type="text" style="width:100%" pInputText><!-- [readonly]="!newEmployee"-->
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-4" style="margin:auto">
|
<div class="p-col-12 p-md-6 p-lg-4" style="margin:auto">
|
||||||
<label for="txtempName">Name </label>
|
<label for="txtempName">Name </label>
|
||||||
|
@ -73,10 +73,26 @@
|
||||||
style="width:100%"></kendo-datepicker>
|
style="width:100%"></kendo-datepicker>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="p-col-12 p-md-6 p-lg-4" style="margin:auto">
|
||||||
|
<label for="txtfatherName">Father's Name</label>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-12 p-md-6 p-lg-8 form-control-lg">
|
||||||
|
<input id="txtfatherName" formControlName="fatherName" [(ngModel)]="employee.fatherName" type="text"
|
||||||
|
style="width:100%" pInputText>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="p-col-12 p-md-6 p-lg-4" style="margin:auto">
|
||||||
|
<label for="txttinNo">TIN</label>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-12 p-md-6 p-lg-8 form-control-lg">
|
||||||
|
<input id="txttinNo" formControlName="tinNo" [(ngModel)]="employee.tinNo" type="text"
|
||||||
|
style="width:100%" pInputText>
|
||||||
|
</div>
|
||||||
|
|
||||||
<div class="p-col-12 p-md-6 p-lg-4" style="height: 43px;">
|
<div class="p-col-12 p-md-6 p-lg-4" style="height: 43px;">
|
||||||
<label for="chkIsOTEligible">Eligible for OT</label>
|
<label for="chkIsOTEligible">Eligible for OT</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-8 form-control-lg">
|
<div class="p-col-12 p-md-6 p-lg-2 form-control-lg">
|
||||||
<input type="checkbox" formControlName="isOTEligible" [(ngModel)]="employee.isEligibleOT"
|
<input type="checkbox" formControlName="isOTEligible" [(ngModel)]="employee.isEligibleOT"
|
||||||
id="chkIsOTEligible" kendoCheckBox />
|
id="chkIsOTEligible" kendoCheckBox />
|
||||||
|
|
||||||
|
@ -85,7 +101,7 @@
|
||||||
<label for="chkIsFixedLocation">Fixed Location /
|
<label for="chkIsFixedLocation">Fixed Location /
|
||||||
Nearby</label>
|
Nearby</label>
|
||||||
</div>
|
</div>
|
||||||
<div class="p-col-12 p-md-6 p-lg-8 form-control-lg">
|
<div class="p-col-12 p-md-6 p-lg-2 form-control-lg">
|
||||||
<input type="checkbox" formControlName="IsFixedLocation"
|
<input type="checkbox" formControlName="IsFixedLocation"
|
||||||
[(ngModel)]="employee.isFixedLocation" id="chkIsFixedLocation" kendoCheckBox />
|
[(ngModel)]="employee.isFixedLocation" id="chkIsFixedLocation" kendoCheckBox />
|
||||||
</div>
|
</div>
|
||||||
|
@ -188,6 +204,15 @@
|
||||||
[(ngModel)]="employee.joiningDate" [format]="'dd-MMM-yyyy'"
|
[(ngModel)]="employee.joiningDate" [format]="'dd-MMM-yyyy'"
|
||||||
style="width:100%"></kendo-datepicker>
|
style="width:100%"></kendo-datepicker>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
<div class="p-col-12 p-md-6 p-lg-4" style="margin:auto">
|
||||||
|
<label for="dtpEndofContract">End of Contract</label>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-12 p-md-6 p-lg-8 form-control-lg">
|
||||||
|
<kendo-datepicker id="dtpEndofContract" formControlName="endOfContractDate"
|
||||||
|
[(ngModel)]="employee.endOfContractDate" [format]="'dd-MMM-yyyy'"
|
||||||
|
style="width:100%"></kendo-datepicker>
|
||||||
|
</div>
|
||||||
</div>
|
</div>
|
||||||
</div>
|
</div>
|
||||||
|
|
||||||
|
|
|
@ -137,19 +137,19 @@ export class EmployeePayrollProfileComponent implements OnInit {
|
||||||
|
|
||||||
this.lastSalaryProcessDate();
|
this.lastSalaryProcessDate();
|
||||||
|
|
||||||
this.loadingPanelService.ShowLoadingPanel = true;
|
// this.loadingPanelService.ShowLoadingPanel = true;
|
||||||
this.employeeService.generateEmployeeNo().subscribe(
|
// this.employeeService.generateEmployeeNo().subscribe(
|
||||||
(resp) => {
|
// (resp) => {
|
||||||
this.employee.employeeNo = resp as string;
|
// this.employee.employeeNo = resp as string;
|
||||||
},
|
// },
|
||||||
(err) => {
|
// (err) => {
|
||||||
this.notificationService.showError(err);
|
// this.notificationService.showError(err);
|
||||||
this.loadingPanelService.ShowLoadingPanel = false;
|
// this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
},
|
// },
|
||||||
() => {
|
// () => {
|
||||||
this.loadingPanelService.ShowLoadingPanel = false;
|
// this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
}
|
// }
|
||||||
);
|
// );
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
this.employee.employeeNo = undefined;
|
this.employee.employeeNo = undefined;
|
||||||
|
@ -229,7 +229,8 @@ export class EmployeePayrollProfileComponent implements OnInit {
|
||||||
createForm() {
|
createForm() {
|
||||||
this.employeeForm = new FormBuilder().group({
|
this.employeeForm = new FormBuilder().group({
|
||||||
isNew: ['', Validators.required],
|
isNew: ['', Validators.required],
|
||||||
employeeId: ['', Validators.required],
|
// employeeId: ['', Validators.required],
|
||||||
|
employeeId: [''],
|
||||||
name: ['', Validators.required],
|
name: ['', Validators.required],
|
||||||
mobileNo: [''],
|
mobileNo: [''],
|
||||||
emailAddress: [''],
|
emailAddress: [''],
|
||||||
|
@ -250,6 +251,9 @@ export class EmployeePayrollProfileComponent implements OnInit {
|
||||||
isShownInTaxSheet: [''],
|
isShownInTaxSheet: [''],
|
||||||
isConfirmed: [''],
|
isConfirmed: [''],
|
||||||
foreignExpatriate: [''],
|
foreignExpatriate: [''],
|
||||||
|
fatherName: [''],
|
||||||
|
tinNo: [''],
|
||||||
|
endOfContractDate: [''],
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
|
|
||||||
|
@ -273,7 +277,7 @@ export class EmployeePayrollProfileComponent implements OnInit {
|
||||||
this.employee.joiningDate = new Date(this.employee.joiningDate);
|
this.employee.joiningDate = new Date(this.employee.joiningDate);
|
||||||
},
|
},
|
||||||
(err: any) => {
|
(err: any) => {
|
||||||
|
this.notificationService.showError(err.error);
|
||||||
},
|
},
|
||||||
() => {
|
() => {
|
||||||
debugger;
|
debugger;
|
||||||
|
@ -295,7 +299,8 @@ export class EmployeePayrollProfileComponent implements OnInit {
|
||||||
|
|
||||||
},
|
},
|
||||||
(err: any) => {
|
(err: any) => {
|
||||||
console.log(err);
|
// console.log(err);
|
||||||
|
this.notificationService.showError(err.error);
|
||||||
},
|
},
|
||||||
() => {
|
() => {
|
||||||
this.empLineManager = new SearchEmployee();
|
this.empLineManager = new SearchEmployee();
|
||||||
|
@ -329,6 +334,32 @@ export class EmployeePayrollProfileComponent implements OnInit {
|
||||||
}
|
}
|
||||||
|
|
||||||
}
|
}
|
||||||
|
// public saveGeneratedEmployee() {
|
||||||
|
|
||||||
|
// debugger;
|
||||||
|
// if (this.newEmployee === true) {
|
||||||
|
// this.loadingPanelService.ShowLoadingPanel = true;
|
||||||
|
// this.employeeService.generateEmployeeNo().subscribe(
|
||||||
|
// (resp) => {
|
||||||
|
// this.employee.employeeNo = resp as string;
|
||||||
|
// },
|
||||||
|
// (err) => {
|
||||||
|
// this.notificationService.showError(err);
|
||||||
|
// this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
|
// },
|
||||||
|
// () => {
|
||||||
|
// this.loadingPanelService.ShowLoadingPanel = false;
|
||||||
|
// setTimeout(() => {
|
||||||
|
// this.saveEmployee();
|
||||||
|
// }, 1000);
|
||||||
|
// }
|
||||||
|
// );
|
||||||
|
|
||||||
|
// }
|
||||||
|
// else {
|
||||||
|
// this.saveEmployee();
|
||||||
|
// }
|
||||||
|
// }
|
||||||
|
|
||||||
saveEmployee() {
|
saveEmployee() {
|
||||||
|
|
||||||
|
|
|
@ -260,7 +260,8 @@ export class EmployeePickerComponent implements OnInit {
|
||||||
];
|
];
|
||||||
public loadData(): void {
|
public loadData(): void {
|
||||||
this.gridView = {
|
this.gridView = {
|
||||||
data: orderBy(this.data.slice(this.skip, this.skip + this.pageSize), this.sort),
|
// data: orderBy(this.data.slice(this.skip, this.skip + this.pageSize), this.sort),
|
||||||
|
data: this.data.slice(this.skip, this.skip + this.pageSize),
|
||||||
total: this.data.length,
|
total: this.data.length,
|
||||||
};
|
};
|
||||||
this.selectedItems = [];
|
this.selectedItems = [];
|
||||||
|
@ -454,7 +455,8 @@ export class EmployeePickerComponent implements OnInit {
|
||||||
name = value;
|
name = value;
|
||||||
}
|
}
|
||||||
this.loadingEmployee = true;
|
this.loadingEmployee = true;
|
||||||
this.empSrvc.getEmpCodeName(code, name)
|
// this.empSrvc.getEmpCodeName(code, name)
|
||||||
|
this.empSrvc.getEmpCodeNameForEmployeePickerInput(code, name)
|
||||||
.subscribe(
|
.subscribe(
|
||||||
(resp: any) => {
|
(resp: any) => {
|
||||||
this.searchEmployees = resp;
|
this.searchEmployees = resp;
|
||||||
|
@ -602,10 +604,18 @@ export class EmployeePickerComponent implements OnInit {
|
||||||
}
|
}
|
||||||
|
|
||||||
if (this.checkLive === true) {
|
if (this.checkLive === true) {
|
||||||
|
//Previous Code For Only Live Employee
|
||||||
srcManager.Parameter.AddParam(EnumSearchParameter.Status, EnumSearchObjDataType.Number, 1, EnumSQLOperator.EqualTo);
|
srcManager.Parameter.AddParam(EnumSearchParameter.Status, EnumSearchObjDataType.Number, 1, EnumSQLOperator.EqualTo);
|
||||||
|
|
||||||
|
//New Code For Live And Waiting For Join
|
||||||
|
// srcManager.Parameter.AddParam(EnumSearchParameter.Status, EnumSearchObjDataType.Number, '1,6', EnumSQLOperator.In);
|
||||||
}
|
}
|
||||||
if (this.checkLiveNo === true) {
|
if (this.checkLiveNo === true) {
|
||||||
srcManager.Parameter.AddParam(EnumSearchParameter.Status, EnumSearchObjDataType.Number, 2, EnumSQLOperator.EqualTo);
|
//Previous Code For Only Not Live
|
||||||
|
// srcManager.Parameter.AddParam(EnumSearchParameter.Status, EnumSearchObjDataType.Number, 2, EnumSQLOperator.EqualTo);
|
||||||
|
|
||||||
|
//New Code For Live And Waiting For Join
|
||||||
|
srcManager.Parameter.AddParam(EnumSearchParameter.Status, EnumSearchObjDataType.Number, '2,6', EnumSQLOperator.In);
|
||||||
}
|
}
|
||||||
if (this.checkIA === true)
|
if (this.checkIA === true)
|
||||||
srcManager.Parameter.AddParam(EnumSearchParameter.Status, EnumSearchObjDataType.Number, EnumEmployeeStatus.IA, EnumSQLOperator.EqualTo);
|
srcManager.Parameter.AddParam(EnumSearchParameter.Status, EnumSearchObjDataType.Number, EnumEmployeeStatus.IA, EnumSQLOperator.EqualTo);
|
||||||
|
|
|
@ -0,0 +1,66 @@
|
||||||
|
<app-loading-panel> </app-loading-panel>
|
||||||
|
<div class="card" style="padding:10px;">
|
||||||
|
<div class="p-grid" style="justify-content: center">
|
||||||
|
<div class="p-col-12">
|
||||||
|
<fieldset style="border-radius: 5px;">
|
||||||
|
<div class="p-grid" style="margin-top: auto; margin-bottom: auto;">
|
||||||
|
<div class="p-col-4">
|
||||||
|
<app-employee-picker
|
||||||
|
[setSelectedEmp]="selectedEmployee"
|
||||||
|
(ItemSelected)="GetSelectedEmployee($event)"></app-employee-picker>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-1">
|
||||||
|
<label>Authorized Person</label>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-3">
|
||||||
|
<kendo-dropdownlist [(ngModel)]="authorizedPerson" [data]="authorizedPersons" [textField]="'name'"
|
||||||
|
[valueField]="'id'" [defaultItem]="{ name: 'Select Authorized Person..', id: null }"
|
||||||
|
style="width:100%;">
|
||||||
|
</kendo-dropdownlist>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-1">
|
||||||
|
<label>Report</label>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-3">
|
||||||
|
<kendo-dropdownlist [(ngModel)]="selectedreportType" [data]="reportTypes" [textField]="'text'"
|
||||||
|
[valueField]="'value'" [defaultItem]="{ text: 'Select Report Type..', value: null }"
|
||||||
|
style="width:100%;">
|
||||||
|
</kendo-dropdownlist>
|
||||||
|
</div>
|
||||||
|
<!-- <div class="p-col-3" align="middle">
|
||||||
|
<label>Salary Allocation Date</label>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-3">
|
||||||
|
<kendo-datepicker [(ngModel)]="salaryAllocationDate" [format]="salaryAllocationDateFormat"
|
||||||
|
[bottomView]="bottomView" [topView]="topview" style="width:100%"></kendo-datepicker>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-3" align="middle" *ngIf="showLocation">
|
||||||
|
<label>Location</label>
|
||||||
|
</div>
|
||||||
|
<div class="p-col-3" *ngIf="showLocation">
|
||||||
|
<kendo-dropdownlist [(ngModel)]="selectedLocation" [data]="locations"
|
||||||
|
[defaultItem]="{ name: 'Select Location..', id: 0 }" [textField]="'name'" [valueField]="'id'"
|
||||||
|
(valueChange)="locationChange($event)"
|
||||||
|
style="width:100%;">
|
||||||
|
</kendo-dropdownlist>
|
||||||
|
</div> -->
|
||||||
|
</div>
|
||||||
|
<div class="p-col-12" align="right">
|
||||||
|
<button kendoButton icon="file-pdf" [primary]="true" (click)="preview('PDF')">Preview</button>
|
||||||
|
<button kendoButton icon="file-excel" [primary]="true" style="margin-left:5px;"
|
||||||
|
(click)="preview('EXCEL')">Export</button>
|
||||||
|
</div>
|
||||||
|
</fieldset>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
<div class="card" *ngIf="showPopUp" class="blur-background">
|
||||||
|
<kendo-window [height]="600" title="{{PDFTitle}}" *ngIf="showPopUp" (close)="closeForm()"
|
||||||
|
[style]="{'min-width': '70%','max-width': '100%', 'max-height': '100%'}">
|
||||||
|
<app-loading-panel> </app-loading-panel>
|
||||||
|
<div class='embed-responsive'>
|
||||||
|
<iframe class="pdf-viewer" id="pdf-viewer-report" type='application/pdf' [zoom]="zoomLevel"></iframe>
|
||||||
|
</div>
|
||||||
|
</kendo-window>
|
||||||
|
</div>
|
|
@ -0,0 +1,194 @@
|
||||||
|
import { Component, OnInit } from '@angular/core';
|
||||||
|
|
||||||
|
import { DynamicPicker, EnumDynamicpickerType } from '../../picker/dynamic-picker/Dynamic-Picker';
|
||||||
|
import {
|
||||||
|
EnumBloodGroup,
|
||||||
|
EnumExtension,
|
||||||
|
EnumGender,
|
||||||
|
EnumMaritalStatus,
|
||||||
|
EnumSearchFrom,
|
||||||
|
EnumSearchObjDataType,
|
||||||
|
EnumSearchParameter,
|
||||||
|
EnumSQLOperator,
|
||||||
|
EnumStatus
|
||||||
|
} from '../../_models/enums';
|
||||||
|
import { SearchEmployee, SearchManager } from '../../_models/Employee/searchEmployee';
|
||||||
|
import { EmployeeServices } from '../../_services/employee/employee.service';
|
||||||
|
import { EmployeeBasicInfo } from '../../_models/report/employee-basic-info';
|
||||||
|
import { Router } from '@angular/router';
|
||||||
|
import { EmployeeDetailInfo } from '../../_models/report/employeeDetailInfo';
|
||||||
|
import { loadingPanelService } from '../../hrm-loding panel/loding.panel.service';
|
||||||
|
import { ColumnDefinition, Columns, ReportViewerListColumn } from '../report-viewer/repor-viewer-object';
|
||||||
|
import { AttendanceServices } from '../../_services/attendance/attendance.service';
|
||||||
|
import { DailyAttnByStatusReport } from '../../_models/Attendance/dailyAttnByStatusReport';
|
||||||
|
import { HRMNotificationService } from '../../app.notification.service';
|
||||||
|
import { DataStateChangeEvent, GridDataResult, PageChangeEvent, SelectableSettings, SelectableMode } from '@progress/kendo-angular-grid';
|
||||||
|
import { ExcelExportData } from '@progress/kendo-angular-excel-export';
|
||||||
|
import { DataResult, GroupDescriptor, process, State } from '@progress/kendo-data-query';
|
||||||
|
import { ReportServices } from '../../_services/reports/report.service';
|
||||||
|
import { DomSanitizer } from '@angular/platform-browser';
|
||||||
|
import { BasicService } from '../../_services/Basic/basic.service';
|
||||||
|
import { LoanService } from 'src/app/_services/payroll/loan.service';
|
||||||
|
import { ApiService } from '../../app.api.service';
|
||||||
|
import { TaxParameter } from '../../_models/Payroll/Tax/taxParameter';
|
||||||
|
import { TaxService } from '../../_services/payroll/tax.service';
|
||||||
|
import { LeaveService } from '../../_services/leave/leave.service';
|
||||||
|
import { PayrollType } from '../../_models/Authentication/payrollType';
|
||||||
|
import { User } from '../../_models/Authentication/user';
|
||||||
|
import { AuthService } from '../../_services/auth/auth.service';
|
||||||
|
import { saveAs } from 'file-saver';
|
||||||
|
import { SalaryService } from '../../_services/payroll/salary.service';
|
||||||
|
import { LoanIssue } from 'src/app/_models/Payroll/Loan/loanIssue';
|
||||||
|
import { Bank } from 'src/app/_models/Basic/bank';
|
||||||
|
import { formatDate } from '@progress/kendo-angular-intl';
|
||||||
|
import { encodeBase64 } from '@progress/kendo-file-saver';
|
||||||
|
import { AuthorizedPerson } from 'src/app/adhoc-feature/authorized-persons/authorizedPerson';
|
||||||
|
import { Employee } from 'src/app/_models/Employee/employee';
|
||||||
|
import { HrEmployee } from 'src/app/_models/HREmployee/hrEmployee';
|
||||||
|
|
||||||
|
@Component({
|
||||||
|
selector: 'app-employee-profile-reports',
|
||||||
|
templateUrl: './employee-profile-reports.component.html',
|
||||||
|
styleUrls: ['./employee-profile-reports.component.scss']
|
||||||
|
})
|
||||||
|
export class EmployeeProfileReportsComponent implements OnInit {
|
||||||
|
|
||||||
|
public showPopUp: boolean = false;
|
||||||
|
public src: any;
|
||||||
|
public PDFTitle = '';
|
||||||
|
|
||||||
|
public selectedreportType: EnumProfileReportType;
|
||||||
|
public reportTypes = Object.keys(EnumProfileReportType)
|
||||||
|
.filter(key => !isNaN(Number(EnumProfileReportType[key])))
|
||||||
|
.map(key => ({
|
||||||
|
text: key.replace(/_/g, ' '),
|
||||||
|
value: EnumProfileReportType[key]
|
||||||
|
}));
|
||||||
|
public authorizedPersons: AuthorizedPerson[] = [];
|
||||||
|
public authorizedPerson: AuthorizedPerson;
|
||||||
|
|
||||||
|
public selectedEmployee: SearchEmployee;
|
||||||
|
public employee: HrEmployee;
|
||||||
|
|
||||||
|
constructor(public employeeService: EmployeeServices,
|
||||||
|
public attendanceService: AttendanceServices,
|
||||||
|
public reportService: ReportServices,
|
||||||
|
private sanitizer: DomSanitizer,
|
||||||
|
public basicService: BasicService,
|
||||||
|
public loanService: LoanService,
|
||||||
|
public taxService: TaxService,
|
||||||
|
public salaryService: SalaryService,
|
||||||
|
public leaveYearService: LeaveService,
|
||||||
|
public router: Router, public loadingPanel: loadingPanelService,
|
||||||
|
public notificationService: HRMNotificationService,
|
||||||
|
public apiService: ApiService, public authService: AuthService) {
|
||||||
|
|
||||||
|
}
|
||||||
|
|
||||||
|
ngOnInit(): void {
|
||||||
|
this.loadAuthorizedPerson();
|
||||||
|
}
|
||||||
|
|
||||||
|
closeForm(): void {
|
||||||
|
this.showPopUp = false;
|
||||||
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
|
}
|
||||||
|
|
||||||
|
preview(reportType: string) {
|
||||||
|
debugger;
|
||||||
|
const data = {
|
||||||
|
reportID: this.selectedreportType['value'],
|
||||||
|
personID: this.authorizedPerson.id,
|
||||||
|
employeeID: this.selectedEmployee.employeeID,
|
||||||
|
reportType: reportType
|
||||||
|
};
|
||||||
|
|
||||||
|
this.loadingPanel.ShowLoadingPanel = true;
|
||||||
|
if (reportType === 'PDF')
|
||||||
|
this.showPopUp = true;
|
||||||
|
this.reportService.getProfileReportData(data).subscribe(
|
||||||
|
(resp: any) => {
|
||||||
|
if (reportType === 'PDF') {
|
||||||
|
|
||||||
|
this.src = URL.createObjectURL(this.b64toBlob(resp, 'application/pdf', 1024));
|
||||||
|
var element = <HTMLIFrameElement>(document.getElementById("pdf-viewer-report"));
|
||||||
|
element.src = this.src;
|
||||||
|
} else if (reportType === 'EXCEL') {
|
||||||
|
this.downloadFile(resp);
|
||||||
|
}
|
||||||
|
},
|
||||||
|
(err) => {
|
||||||
|
this.closeForm();
|
||||||
|
console.log(err);
|
||||||
|
this.notificationService.showError(err.error);
|
||||||
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
|
},
|
||||||
|
() => {
|
||||||
|
|
||||||
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
|
// this.loadGrid();
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
downloadFile(blobContent) {
|
||||||
|
let blob = new Blob([this.b64toBlob(blobContent, 'application/data:application/vnd.ms-excel', 1024)], {});
|
||||||
|
saveAs(blob, this.PDFTitle + '.xls');
|
||||||
|
}
|
||||||
|
b64toBlob(b64Data, contentType, sliceSize) {
|
||||||
|
const byteCharacters = atob(b64Data);
|
||||||
|
const byteArrays = [];
|
||||||
|
|
||||||
|
for (let offset = 0; offset < byteCharacters.length; offset += sliceSize) {
|
||||||
|
const slice = byteCharacters.slice(offset, offset + sliceSize);
|
||||||
|
|
||||||
|
const byteNumbers = new Array(slice.length);
|
||||||
|
for (let i = 0; i < slice.length; i++) {
|
||||||
|
byteNumbers[i] = slice.charCodeAt(i);
|
||||||
|
}
|
||||||
|
|
||||||
|
const byteArray = new Uint8Array(byteNumbers);
|
||||||
|
byteArrays.push(byteArray);
|
||||||
|
}
|
||||||
|
|
||||||
|
const blob = new Blob(byteArrays, { type: contentType });
|
||||||
|
return blob;
|
||||||
|
}
|
||||||
|
|
||||||
|
public loadAuthorizedPerson() {
|
||||||
|
this.employeeService.getAuthorizedPerson().subscribe(
|
||||||
|
(resp) => {
|
||||||
|
this.authorizedPersons = resp as AuthorizedPerson[];
|
||||||
|
},
|
||||||
|
(err: any) => {
|
||||||
|
this.notificationService.showError(err.error);
|
||||||
|
this.loadingPanel.ShowLoadingPanel = false;
|
||||||
|
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
|
public GetSelectedEmployee(childData: any) {
|
||||||
|
if (childData === undefined) {
|
||||||
|
this.employee = new HrEmployee();
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
this.selectedEmployee = childData;
|
||||||
|
// this.employeeService.getHREmployeeID(this.selectedEmployee.employeeID).subscribe(
|
||||||
|
// (resp: any) => {
|
||||||
|
// this.employee = resp;
|
||||||
|
// },
|
||||||
|
// (err: any) => {
|
||||||
|
// this.notificationService.showError(err.error);
|
||||||
|
// }
|
||||||
|
// );
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
export enum EnumProfileReportType {
|
||||||
|
Print_CV = 1,
|
||||||
|
// Employee_Service_Book = 2,
|
||||||
|
Appointment_Letter_Worker = 3,
|
||||||
|
Appointment_Letter_Staff = 4,
|
||||||
|
Appointment_Letter_Officer = 5
|
||||||
|
}
|
|
@ -30,6 +30,7 @@ import { PfLedgerComponent } from './pf-ledger/pf-ledger.component';
|
||||||
import { CcWiseBonusSummaryComponent } from './cc-wise-bonus-summary/cc-wise-bonus-summary.component';
|
import { CcWiseBonusSummaryComponent } from './cc-wise-bonus-summary/cc-wise-bonus-summary.component';
|
||||||
import { CcwiseSalarySummaryComponent } from './ccwise-salary-summary/ccwise-salary-summary.component';
|
import { CcwiseSalarySummaryComponent } from './ccwise-salary-summary/ccwise-salary-summary.component';
|
||||||
import { CcwiseNewPfMemberWithAmountComponent } from './ccwise-new-pf-member-with-amount/ccwise-new-pf-member-with-amount.component';
|
import { CcwiseNewPfMemberWithAmountComponent } from './ccwise-new-pf-member-with-amount/ccwise-new-pf-member-with-amount.component';
|
||||||
|
import { EmployeeProfileReportsComponent } from './employee-profile-reports/employee-profile-reports.component';
|
||||||
|
|
||||||
|
|
||||||
const routes: Routes = [
|
const routes: Routes = [
|
||||||
|
@ -160,6 +161,7 @@ const routes: Routes = [
|
||||||
{ path: 'report-viewer/721', component: ReportViewerComponent, canActivate: [AuthGuard] },
|
{ path: 'report-viewer/721', component: ReportViewerComponent, canActivate: [AuthGuard] },
|
||||||
{ path: 'report-viewer/722', component: ReportViewerComponent, canActivate: [AuthGuard] },
|
{ path: 'report-viewer/722', component: ReportViewerComponent, canActivate: [AuthGuard] },
|
||||||
{ path: 'report-viewer/723', component: ReportViewerComponent, canActivate: [AuthGuard] },
|
{ path: 'report-viewer/723', component: ReportViewerComponent, canActivate: [AuthGuard] },
|
||||||
|
{ path: 'report-viewer/profile-reports', component: EmployeeProfileReportsComponent, canActivate: [AuthGuard] },
|
||||||
|
|
||||||
];
|
];
|
||||||
|
|
||||||
|
|
|
@ -48,6 +48,7 @@ import { PfLedgerComponent } from './pf-ledger/pf-ledger.component';
|
||||||
import { CcWiseBonusSummaryComponent } from './cc-wise-bonus-summary/cc-wise-bonus-summary.component';
|
import { CcWiseBonusSummaryComponent } from './cc-wise-bonus-summary/cc-wise-bonus-summary.component';
|
||||||
import { CcwiseSalarySummaryComponent } from './ccwise-salary-summary/ccwise-salary-summary.component';
|
import { CcwiseSalarySummaryComponent } from './ccwise-salary-summary/ccwise-salary-summary.component';
|
||||||
import { CcwiseNewPfMemberWithAmountComponent } from './ccwise-new-pf-member-with-amount/ccwise-new-pf-member-with-amount.component';
|
import { CcwiseNewPfMemberWithAmountComponent } from './ccwise-new-pf-member-with-amount/ccwise-new-pf-member-with-amount.component';
|
||||||
|
import { EmployeeProfileReportsComponent } from './employee-profile-reports/employee-profile-reports.component';
|
||||||
|
|
||||||
@NgModule({
|
@NgModule({
|
||||||
declarations: [
|
declarations: [
|
||||||
|
@ -74,7 +75,8 @@ import { CcwiseNewPfMemberWithAmountComponent } from './ccwise-new-pf-member-wit
|
||||||
PfLedgerComponent,
|
PfLedgerComponent,
|
||||||
CcWiseBonusSummaryComponent,
|
CcWiseBonusSummaryComponent,
|
||||||
CcwiseSalarySummaryComponent,
|
CcwiseSalarySummaryComponent,
|
||||||
CcwiseNewPfMemberWithAmountComponent
|
CcwiseNewPfMemberWithAmountComponent,
|
||||||
|
EmployeeProfileReportsComponent
|
||||||
],
|
],
|
||||||
imports: [
|
imports: [
|
||||||
CommonModule,
|
CommonModule,
|
||||||
|
|
BIN
HRM.UI/ClientApp/src/assets/EMPPHOTO/391_BP0007_1.jpg
Normal file
After Width: | Height: | Size: 2.0 MiB |
BIN
HRM.UI/ClientApp/src/assets/EMPPHOTO/713_BP1199_1.jpg
Normal file
After Width: | Height: | Size: 99 KiB |
BIN
HRM.UI/ClientApp/src/assets/EMPPHOTO/713_S3898_1.jpg
Normal file
After Width: | Height: | Size: 21 KiB |
BIN
HRM.UI/ClientApp/src/assets/EMPPHOTO/Image-3.jpg
Normal file
After Width: | Height: | Size: 161 KiB |
BIN
HRM.UI/ClientApp/src/assets/EMPPHOTO/Signature-3.jpg
Normal file
After Width: | Height: | Size: 11 KiB |
|
@ -89,7 +89,11 @@ namespace HRM.UI.Controllers
|
||||||
|
|
||||||
param = new object[2];
|
param = new object[2];
|
||||||
param[i] = EnumStatus.Active;
|
param[i] = EnumStatus.Active;
|
||||||
param[i + 1] = (int)CurrentUser.GetCurrentUser(HttpContext.User).PayrollTypeID;
|
|
||||||
|
if(cty.PayrollTypeID == null)
|
||||||
|
param[i + 1] = (int)CurrentUser.GetCurrentUser(HttpContext.User).PayrollTypeID;
|
||||||
|
else
|
||||||
|
param[i + 1] = (int)cty.PayrollTypeID;
|
||||||
|
|
||||||
paramtypes = new Type[2];
|
paramtypes = new Type[2];
|
||||||
paramtypes[i] = typeof(EnumStatus);
|
paramtypes[i] = typeof(EnumStatus);
|
||||||
|
|
|
@ -17,6 +17,7 @@ using Microsoft.Extensions.Options;
|
||||||
using static Azure.Core.HttpHeader;
|
using static Azure.Core.HttpHeader;
|
||||||
using iTextSharp.text;
|
using iTextSharp.text;
|
||||||
using static iTextSharp.text.pdf.AcroFields;
|
using static iTextSharp.text.pdf.AcroFields;
|
||||||
|
using Org.BouncyCastle.Utilities;
|
||||||
|
|
||||||
namespace HRM.UI.Controllers
|
namespace HRM.UI.Controllers
|
||||||
{
|
{
|
||||||
|
@ -132,8 +133,11 @@ namespace HRM.UI.Controllers
|
||||||
omanager.checkDataPermission = currentUser.hasDataPermission;
|
omanager.checkDataPermission = currentUser.hasDataPermission;
|
||||||
omanager.userid = currentUser.UserID;
|
omanager.userid = currentUser.UserID;
|
||||||
|
|
||||||
|
List<SearchEmployee> unOrderedList = _serachManager.Find(omanager);
|
||||||
|
olist = unOrderedList
|
||||||
|
.OrderBy(num => num.EmployeeNo.Length) // Order by length (smallest to largest)
|
||||||
|
.ThenBy(num => Convert.ToInt32(num.EmployeeNo)).ToList();
|
||||||
|
|
||||||
olist = _serachManager.Find(omanager);
|
|
||||||
//omanager.checkDataPermission = false;
|
//omanager.checkDataPermission = false;
|
||||||
#region data permission
|
#region data permission
|
||||||
//List<DataPermission> datapermissions = new DataPermissionService().Get(currentUser.UserID,
|
//List<DataPermission> datapermissions = new DataPermissionService().Get(currentUser.UserID,
|
||||||
|
@ -239,7 +243,7 @@ namespace HRM.UI.Controllers
|
||||||
[Route("saveEmployee")]
|
[Route("saveEmployee")]
|
||||||
public ActionResult SaveEmployee(Employee item)
|
public ActionResult SaveEmployee(Employee item)
|
||||||
{
|
{
|
||||||
int ans;
|
Employee ans;
|
||||||
|
|
||||||
CurrentUser currentUser = CurrentUser.GetCurrentUser(HttpContext.User);
|
CurrentUser currentUser = CurrentUser.GetCurrentUser(HttpContext.User);
|
||||||
if (item.IsNew == true)
|
if (item.IsNew == true)
|
||||||
|
@ -256,7 +260,8 @@ namespace HRM.UI.Controllers
|
||||||
|
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
ans = _EmployeeService.Save(item);
|
//ans = _EmployeeService.Save(item);
|
||||||
|
ans = _EmployeeService.SaveEmployee(item);
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
@ -545,7 +550,7 @@ namespace HRM.UI.Controllers
|
||||||
return StatusCode(StatusCodes.Status500InternalServerError, ex.Message);
|
return StatusCode(StatusCodes.Status500InternalServerError, ex.Message);
|
||||||
}
|
}
|
||||||
|
|
||||||
return Ok(item.ID);
|
return Ok(item);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
@ -733,7 +738,20 @@ namespace HRM.UI.Controllers
|
||||||
List<SearchEmployee> olist = new List<SearchEmployee>();
|
List<SearchEmployee> olist = new List<SearchEmployee>();
|
||||||
try
|
try
|
||||||
{
|
{
|
||||||
olist = _serachManager.FindEmpCodeName((int) currentUser.PayrollTypeID, code, name);
|
//olist = _serachManager.FindEmpCodeName((int) currentUser.PayrollTypeID, code, name);
|
||||||
|
if(code != "")
|
||||||
|
{
|
||||||
|
List<SearchEmployee> unorderedList = _serachManager.FindEmpCodeName((int)currentUser.PayrollTypeID, code, name);
|
||||||
|
|
||||||
|
olist = unorderedList
|
||||||
|
.OrderBy(item => item.EmployeeNo != code) // False (0) for priority value, True (1) for others
|
||||||
|
.ThenBy(item => item.EmployeeNo).ToList();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
olist = _serachManager.FindEmpCodeName((int)currentUser.PayrollTypeID, code, name);
|
||||||
|
}
|
||||||
|
|
||||||
//List<Grade> grades = new GradeService().Get(EnumStatus.Regardless, (int)currentUser.PayrollTypeID);
|
//List<Grade> grades = new GradeService().Get(EnumStatus.Regardless, (int)currentUser.PayrollTypeID);
|
||||||
//List<Designation> designations = new DesignationService().Get(EnumStatus.Regardless, (int)currentUser.PayrollTypeID);
|
//List<Designation> designations = new DesignationService().Get(EnumStatus.Regardless, (int)currentUser.PayrollTypeID);
|
||||||
//List<Department> departments = new DepartmentService().Get(EnumStatus.Regardless, (int)currentUser.PayrollTypeID);
|
//List<Department> departments = new DepartmentService().Get(EnumStatus.Regardless, (int)currentUser.PayrollTypeID);
|
||||||
|
@ -746,7 +764,55 @@ namespace HRM.UI.Controllers
|
||||||
// if (designation != null) x.designationName = designation.Name;
|
// if (designation != null) x.designationName = designation.Name;
|
||||||
// var department = departments.FirstOrDefault(d => d.ID == x.DepartmentID);
|
// var department = departments.FirstOrDefault(d => d.ID == x.DepartmentID);
|
||||||
// if (department != null) x.departmentName = department.Name;
|
// if (department != null) x.departmentName = department.Name;
|
||||||
//});
|
//}); // Secondary ordering (alphabetical)
|
||||||
|
|
||||||
|
}
|
||||||
|
catch (Exception ex)
|
||||||
|
{
|
||||||
|
return StatusCode(StatusCodes.Status500InternalServerError, ex.Message);
|
||||||
|
}
|
||||||
|
|
||||||
|
return Ok(olist);
|
||||||
|
}
|
||||||
|
|
||||||
|
[HttpGet("getEmpCodeNameForEmployeePickerInput/{code}/{name}")]
|
||||||
|
public ActionResult getEmpCodeNameForEmployeePicker(string code, string name)
|
||||||
|
{
|
||||||
|
code = GlobalFunctions.GetApiDefaultData(code);
|
||||||
|
name = GlobalFunctions.GetApiDefaultData(name);
|
||||||
|
|
||||||
|
CurrentUser currentUser = CurrentUser.GetCurrentUser(HttpContext.User);
|
||||||
|
List<SearchEmployee> olist = new List<SearchEmployee>();
|
||||||
|
try
|
||||||
|
{
|
||||||
|
//olist = _serachManager.FindEmpCodeName((int) currentUser.PayrollTypeID, code, name);
|
||||||
|
if(code != "")
|
||||||
|
{
|
||||||
|
List<SearchEmployee> unorderedList = _serachManager.FindEmpCodeNameForEmployeePicker((int)currentUser.UserID, (int)currentUser.PayrollTypeID, code, name);
|
||||||
|
|
||||||
|
olist = unorderedList
|
||||||
|
.OrderBy(item => item.EmployeeNo != code) // False (0) for priority value, True (1) for others
|
||||||
|
.ThenBy(item => item.EmployeeNo).ToList();
|
||||||
|
}
|
||||||
|
else
|
||||||
|
{
|
||||||
|
olist = _serachManager.FindEmpCodeNameForEmployeePicker((int)currentUser.UserID, (int)currentUser.PayrollTypeID, code, name);
|
||||||
|
}
|
||||||
|
|
||||||
|
//List<Grade> grades = new GradeService().Get(EnumStatus.Regardless, (int)currentUser.PayrollTypeID);
|
||||||
|
//List<Designation> designations = new DesignationService().Get(EnumStatus.Regardless, (int)currentUser.PayrollTypeID);
|
||||||
|
//List<Department> departments = new DepartmentService().Get(EnumStatus.Regardless, (int)currentUser.PayrollTypeID);
|
||||||
|
//olist.ForEach(x=>
|
||||||
|
//{
|
||||||
|
// var grd = grades.FirstOrDefault(d => d.ID == x.GradeID);
|
||||||
|
// if(grd != null) x.gradeName = grd.Name;
|
||||||
|
|
||||||
|
// var designation = designations.FirstOrDefault(d => d.ID == x.designationID);
|
||||||
|
// if (designation != null) x.designationName = designation.Name;
|
||||||
|
// var department = departments.FirstOrDefault(d => d.ID == x.DepartmentID);
|
||||||
|
// if (department != null) x.departmentName = department.Name;
|
||||||
|
//}); // Secondary ordering (alphabetical)
|
||||||
|
|
||||||
}
|
}
|
||||||
catch (Exception ex)
|
catch (Exception ex)
|
||||||
{
|
{
|
||||||
|
@ -1500,11 +1566,11 @@ namespace HRM.UI.Controllers
|
||||||
//this._hrEmployeeService.uplaodFile(item);
|
//this._hrEmployeeService.uplaodFile(item);
|
||||||
base64String = Convert.ToBase64String(textAsBytes);
|
base64String = Convert.ToBase64String(textAsBytes);
|
||||||
}
|
}
|
||||||
if (directoryUpload)
|
if (directoryUpload || item.filetype== enumEmpFileUploadType.photo || item.filetype == enumEmpFileUploadType.signature)
|
||||||
{
|
{
|
||||||
PhotoPath photoPath = new PhotoPathService().Get().FirstOrDefault();
|
PhotoPath photoPath = new PhotoPathService().Get().FirstOrDefault();
|
||||||
string employeeNo = (new EmployeeService().Get(item.employeeID)).EmployeeNo;
|
string employeeNo = (new EmployeeService().Get(item.employeeID)).EmployeeNo;
|
||||||
string TargetFolder = photoPath.EmployeePhoto;
|
string TargetFolder = @"Documents\EMPPHOTO\";
|
||||||
if (photoPath != null)
|
if (photoPath != null)
|
||||||
{
|
{
|
||||||
string newFileName = "";
|
string newFileName = "";
|
||||||
|
@ -1649,6 +1715,47 @@ namespace HRM.UI.Controllers
|
||||||
return StatusCode(StatusCodes.Status500InternalServerError, ex.Message);
|
return StatusCode(StatusCodes.Status500InternalServerError, ex.Message);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
[HttpGet("GetEmpImageSignFile/{empid}/{referenceid}/{filetype}")]
|
||||||
|
public ActionResult GetEmpImageSignFile(int empid, int referenceid, enumEmpFileUploadType filetype)
|
||||||
|
{
|
||||||
|
empFileupload item = new empFileupload();
|
||||||
|
string employeeNo = (new EmployeeService().Get(empid)).EmployeeNo;
|
||||||
|
string TargetFolder = @"Documents\EMPPHOTO\";
|
||||||
|
|
||||||
|
string newFileName = "";
|
||||||
|
switch (filetype)
|
||||||
|
{
|
||||||
|
case enumEmpFileUploadType.photo:
|
||||||
|
newFileName = string.Format("Image-{0}.jpg", employeeNo);
|
||||||
|
break;
|
||||||
|
case enumEmpFileUploadType.signature:
|
||||||
|
newFileName = string.Format("Signature-{0}.jpg", employeeNo);
|
||||||
|
break;
|
||||||
|
//case enumEmpFileUploadType.NomineePicture:
|
||||||
|
// newFileName = string.Format("Image-{0}.jpg", employeeNo);
|
||||||
|
// break;
|
||||||
|
//case enumEmpFileUploadType.NomineeSignature:
|
||||||
|
// newFileName = string.Format("Image-{0}.jpg", employeeNo);
|
||||||
|
// break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
|
||||||
|
}
|
||||||
|
string imagePath = TargetFolder+ newFileName;
|
||||||
|
|
||||||
|
if (System.IO.File.Exists(imagePath))
|
||||||
|
{
|
||||||
|
byte[] textAsBytes = System.IO.File.ReadAllBytes(imagePath);
|
||||||
|
string base64String = "";
|
||||||
|
if (item != null)
|
||||||
|
{
|
||||||
|
base64String = Convert.ToBase64String(textAsBytes);
|
||||||
|
}
|
||||||
|
|
||||||
|
return Ok(base64String);
|
||||||
|
}
|
||||||
|
else return Ok("");
|
||||||
|
}
|
||||||
|
|
||||||
[HttpGet("GetuploadEmpFile/{empid}/{referenceid}/{filetype}")]
|
[HttpGet("GetuploadEmpFile/{empid}/{referenceid}/{filetype}")]
|
||||||
public ActionResult GetuploadEmpFile(int empid, int referenceid, enumEmpFileUploadType filetype)
|
public ActionResult GetuploadEmpFile(int empid, int referenceid, enumEmpFileUploadType filetype)
|
||||||
|
|
|
@ -476,7 +476,7 @@ namespace HRM.UI.Controllers.Payroll
|
||||||
foreach (ProdBonusSupervisor prodSupervisor in prodLine.ProdBonusSupervisors)
|
foreach (ProdBonusSupervisor prodSupervisor in prodLine.ProdBonusSupervisors)
|
||||||
{
|
{
|
||||||
oEmp = new EmployeeService().Get(prodSupervisor.EmployeeID);
|
oEmp = new EmployeeService().Get(prodSupervisor.EmployeeID);
|
||||||
if (oEmp.DepartmentID != null)
|
if (oEmp!=null && oEmp.DepartmentID != null)
|
||||||
{
|
{
|
||||||
|
|
||||||
var dev = detps.FirstOrDefault(x => x.ID == oEmp.DepartmentID);
|
var dev = detps.FirstOrDefault(x => x.ID == oEmp.DepartmentID);
|
||||||
|
@ -503,9 +503,11 @@ namespace HRM.UI.Controllers.Payroll
|
||||||
|
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
prodSupervisor.EmpName = oEmp.Name;
|
if (oEmp != null)
|
||||||
prodSupervisor.EmployeeNo = oEmp.EmployeeNo;
|
{
|
||||||
|
prodSupervisor.EmpName = oEmp.Name;
|
||||||
|
prodSupervisor.EmployeeNo = oEmp.EmployeeNo;
|
||||||
|
}
|
||||||
}
|
}
|
||||||
prodLine.ProdBonusParameters = _prodBonusParameterService.GetByLineID(prodLine.ID);
|
prodLine.ProdBonusParameters = _prodBonusParameterService.GetByLineID(prodLine.ID);
|
||||||
Department oDept = new Department();
|
Department oDept = new Department();
|
||||||
|
@ -517,7 +519,7 @@ namespace HRM.UI.Controllers.Payroll
|
||||||
}
|
}
|
||||||
prodLine.ProdBonusWorkSchedules = _prodBonusWorkScheduleService.GetByLineID(prodLine.ID);
|
prodLine.ProdBonusWorkSchedules = _prodBonusWorkScheduleService.GetByLineID(prodLine.ID);
|
||||||
}
|
}
|
||||||
item.ProdBonusWorkSchedules = _prodBonusWorkScheduleService.GetWithSetupID(ID);
|
// item.ProdBonusWorkSchedules = _prodBonusWorkScheduleService.GetWithSetupID(ID);
|
||||||
}
|
}
|
||||||
catch (Exception e)
|
catch (Exception e)
|
||||||
{
|
{
|
||||||
|
@ -666,7 +668,9 @@ namespace HRM.UI.Controllers.Payroll
|
||||||
ProdBonusLine _oProdBonusLine = (ProdBonusLine)item["prodLine"].ToObject<ProdBonusLine>();
|
ProdBonusLine _oProdBonusLine = (ProdBonusLine)item["prodLine"].ToObject<ProdBonusLine>();
|
||||||
|
|
||||||
CurrentUser currentUser = CurrentUser.GetCurrentUser(HttpContext.User);
|
CurrentUser currentUser = CurrentUser.GetCurrentUser(HttpContext.User);
|
||||||
List<Employee> _oEmployees = new EmployeeService().Get(EnumEmployeeStatus.Live, (int)currentUser.PayrollTypeID);
|
//List<Employee> _oEmployees = new EmployeeService().Get(EnumEmployeeStatus.Live, (int)currentUser.PayrollTypeID);
|
||||||
|
|
||||||
|
DataTable EmployeeDT = new EmployeeService().GetEmployeeNameAndNo((int)currentUser.PayrollTypeID);
|
||||||
List<Employee> _oFinalEmployees = new List<Employee>();
|
List<Employee> _oFinalEmployees = new List<Employee>();
|
||||||
List<ProdBonusParameter> _oProdBonusParameters = new List<ProdBonusParameter>();
|
List<ProdBonusParameter> _oProdBonusParameters = new List<ProdBonusParameter>();
|
||||||
List<ProdBonusSupervisor> _oProdBonusSupervisors = new List<ProdBonusSupervisor>();
|
List<ProdBonusSupervisor> _oProdBonusSupervisors = new List<ProdBonusSupervisor>();
|
||||||
|
@ -684,7 +688,13 @@ namespace HRM.UI.Controllers.Payroll
|
||||||
{
|
{
|
||||||
foreach (var pda in _oProdBonusAttns)
|
foreach (var pda in _oProdBonusAttns)
|
||||||
{
|
{
|
||||||
Employee emp = _oEmployees.Find(o => o.ID == pda.EmployeeID);
|
//Employee emp = _oEmployees.Find(o => o.ID == pda.EmployeeID);
|
||||||
|
|
||||||
|
DataRow[] foundRows = EmployeeDT.Select($"id = {pda.EmployeeID}");
|
||||||
|
Employee emp = new Employee();
|
||||||
|
emp.ID = Convert.ToInt32(foundRows[0]["id"]);
|
||||||
|
emp.EmployeeNo = Convert.ToString(foundRows[0]["EmployeeNo"]);
|
||||||
|
emp.Name = Convert.ToString(foundRows[0]["Name"]);
|
||||||
|
|
||||||
if (emp != null) _oFinalEmployees.Add(emp);
|
if (emp != null) _oFinalEmployees.Add(emp);
|
||||||
}
|
}
|
||||||
|
|
|
@ -956,6 +956,27 @@ namespace HRM.UI.Controllers.Payroll
|
||||||
return Ok();
|
return Ok();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
[HttpGet]
|
||||||
|
[Route("IsSalaryprocessedMonthly/{salarymonth}")]
|
||||||
|
public ActionResult IsSalaryprocessedMonthly(string salarymonth)
|
||||||
|
{
|
||||||
|
bool isSalaryprocessed = false;
|
||||||
|
DateTime month=Convert.ToDateTime(salarymonth);
|
||||||
|
|
||||||
|
CurrentUser currentUser = CurrentUser.GetCurrentUser(HttpContext.User);
|
||||||
|
try
|
||||||
|
{
|
||||||
|
|
||||||
|
isSalaryprocessed= _salaryProcessService.IsSalaryprocessed(month, (int)currentUser.PayrollTypeID);
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
||||||
|
}
|
||||||
|
|
||||||
|
return Ok(isSalaryprocessed);
|
||||||
|
}
|
||||||
|
|
||||||
[HttpPost]
|
[HttpPost]
|
||||||
[Route("salaryProcessApprove")]
|
[Route("salaryProcessApprove")]
|
||||||
public ActionResult SalaryProcessApprove(SalaryProcess process)
|
public ActionResult SalaryProcessApprove(SalaryProcess process)
|
||||||
|
|
|
@ -1695,6 +1695,54 @@ namespace HRM.UI.Controllers.Report
|
||||||
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
return Ok(bytes);
|
||||||
|
}
|
||||||
|
[HttpPost("getProfileReportData")]
|
||||||
|
public ActionResult getProfileReportData(dynamic data)
|
||||||
|
{
|
||||||
|
CurrentUser currentUser = CurrentUser.GetCurrentUser(HttpContext.User);
|
||||||
|
var items = Newtonsoft.Json.JsonConvert.DeserializeObject(Convert.ToString(data));
|
||||||
|
EnumProfileReportType reportid = (EnumProfileReportType)items["reportID"].ToObject<int>();
|
||||||
|
int personID = 0;
|
||||||
|
int employeeID = 0;
|
||||||
|
|
||||||
|
if (items["personID"] != null)
|
||||||
|
personID = (int)items["personID"].ToObject<int>();
|
||||||
|
if (items["employeeID"] != null)
|
||||||
|
employeeID = (int)items["employeeID"].ToObject<int>();
|
||||||
|
|
||||||
|
string reportType = (string)items["reportType"].ToObject<string>();
|
||||||
|
|
||||||
|
int payrollTypeId = currentUser.PayrollTypeID.GetValueOrDefault();
|
||||||
|
byte[] bytes = null;
|
||||||
|
|
||||||
|
try
|
||||||
|
{
|
||||||
|
|
||||||
|
switch (reportid)
|
||||||
|
{
|
||||||
|
case EnumProfileReportType.Print_CV:
|
||||||
|
bytes = new rptEmployee().GetEmployeeCV(employeeID, payrollTypeId, reportType);
|
||||||
|
break;
|
||||||
|
case EnumProfileReportType.Employee_Service_Book:
|
||||||
|
break;
|
||||||
|
case EnumProfileReportType.Appointment_Letter_Officer:
|
||||||
|
bytes = new rptEmployee().GetAsstOfficeAndAbove(employeeID, payrollTypeId, reportType);
|
||||||
|
break;
|
||||||
|
case EnumProfileReportType.Appointment_Letter_Worker:
|
||||||
|
break;
|
||||||
|
case EnumProfileReportType.Appointment_Letter_Staff:
|
||||||
|
break;
|
||||||
|
default:
|
||||||
|
break;
|
||||||
|
|
||||||
|
}
|
||||||
|
}
|
||||||
|
catch (Exception e)
|
||||||
|
{
|
||||||
|
return StatusCode(StatusCodes.Status500InternalServerError, e.Message);
|
||||||
|
}
|
||||||
|
|
||||||
return Ok(bytes);
|
return Ok(bytes);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
BIN
HRM.UI/Documents/EMPPHOTO/Image-100.jpg
Normal file
After Width: | Height: | Size: 2.3 MiB |
BIN
HRM.UI/Documents/EMPPHOTO/Image-3.jpg
Normal file
After Width: | Height: | Size: 161 KiB |
BIN
HRM.UI/Documents/EMPPHOTO/Signature-100.jpg
Normal file
After Width: | Height: | Size: 2.3 MiB |
BIN
HRM.UI/Documents/EMPPHOTO/Signature-3.jpg
Normal file
After Width: | Height: | Size: 11 KiB |
BIN
HRM.UI/EMPPHOTO/Image-3.jpg
Normal file
After Width: | Height: | Size: 161 KiB |
BIN
HRM.UI/EMPPHOTO/Signature-3.jpg
Normal file
After Width: | Height: | Size: 11 KiB |
|
@ -4,53 +4,55 @@
|
||||||
Changes to this file may cause incorrect behavior and will be lost if
|
Changes to this file may cause incorrect behavior and will be lost if
|
||||||
the code is regenerated.
|
the code is regenerated.
|
||||||
</autogenerated>-->
|
</autogenerated>-->
|
||||||
<DiagramLayout xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" ex:showrelationlabel="False" ViewPortX="-11" ViewPortY="-10" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
|
<DiagramLayout xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" ex:showrelationlabel="False" ViewPortX="51" ViewPortY="362" xmlns:ex="urn:schemas-microsoft-com:xml-msdatasource-layout-extended" xmlns="urn:schemas-microsoft-com:xml-msdatasource-layout">
|
||||||
<Shapes>
|
<Shapes>
|
||||||
<Shape ID="DesignTable:ComapnyInformation" ZOrder="28" X="14" Y="12" Height="105" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="91" SplitterPosition="101" />
|
<Shape ID="DesignTable:ComapnyInformation" ZOrder="30" X="14" Y="12" Height="105" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="91" SplitterPosition="101" />
|
||||||
<Shape ID="DesignTable:DepartmentWiseManpower" ZOrder="45" X="260" Y="7" Height="105" Width="226" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" />
|
<Shape ID="DesignTable:DepartmentWiseManpower" ZOrder="47" X="260" Y="7" Height="105" Width="226" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="101" SplitterPosition="101" />
|
||||||
<Shape ID="DesignTable:BankAdvice" ZOrder="29" X="582" Y="51" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
<Shape ID="DesignTable:BankAdvice" ZOrder="31" X="582" Y="51" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:BankAdviceLetter" ZOrder="44" X="580" Y="14" Height="181" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="177" />
|
<Shape ID="DesignTable:BankAdviceLetter" ZOrder="46" X="580" Y="14" Height="181" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="177" />
|
||||||
<Shape ID="DesignTable:BankAdviceParameters" ZOrder="43" X="582" Y="84" Height="257" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
<Shape ID="DesignTable:BankAdviceParameters" ZOrder="45" X="582" Y="84" Height="257" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:DtAgeRange" ZOrder="42" X="261" Y="40" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
|
<Shape ID="DesignTable:DtAgeRange" ZOrder="44" X="261" Y="40" Height="86" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
|
||||||
<Shape ID="DesignTable:dtQualificationWiseManpower" ZOrder="41" X="261" Y="72" Height="86" Width="243" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
|
<Shape ID="DesignTable:dtQualificationWiseManpower" ZOrder="43" X="261" Y="72" Height="86" Width="243" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="82" />
|
||||||
<Shape ID="DesignTable:EmployeeMasterData" ZOrder="5" X="906" Y="1" Height="28" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmployeeMasterData" ZOrder="7" X="906" Y="1" Height="28" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DTProvidentFund" ZOrder="40" X="261" Y="104" Height="143" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" />
|
<Shape ID="DesignTable:DTProvidentFund" ZOrder="42" X="261" Y="104" Height="143" Width="168" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" />
|
||||||
<Shape ID="DesignTable:SalarySheet" ZOrder="23" X="1255" Y="6" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:SalarySheet" ZOrder="25" X="1255" Y="6" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:SalarySummary" ZOrder="24" X="1255" Y="40" Height="28" Width="156" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="24" />
|
<Shape ID="DesignTable:SalarySummary" ZOrder="26" X="1255" Y="40" Height="28" Width="156" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="82" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtCashAdvice" ZOrder="38" X="263" Y="138" Height="200" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" />
|
<Shape ID="DesignTable:dtCashAdvice" ZOrder="40" X="263" Y="138" Height="200" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" />
|
||||||
<Shape ID="DesignTable:StuffListWithoutSalary" ZOrder="22" X="1256" Y="75" Height="28" Width="198" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:StuffListWithoutSalary" ZOrder="24" X="1256" Y="75" Height="28" Width="198" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DTMonthlyPF" ZOrder="34" X="262" Y="170" Height="200" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" />
|
<Shape ID="DesignTable:DTMonthlyPF" ZOrder="36" X="262" Y="170" Height="200" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="196" />
|
||||||
<Shape ID="DesignTable:DTOPI" ZOrder="39" X="262" Y="202" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" />
|
<Shape ID="DesignTable:DTOPI" ZOrder="41" X="262" Y="202" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="139" />
|
||||||
<Shape ID="DesignTable:SalaryComparison" ZOrder="25" X="1257" Y="109" Height="28" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:SalaryComparison" ZOrder="27" X="1257" Y="109" Height="28" Width="171" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:ExperienceCertificate" ZOrder="4" X="907" Y="41" Height="28" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
<Shape ID="DesignTable:ExperienceCertificate" ZOrder="6" X="907" Y="41" Height="28" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:BonusBankAdvice" ZOrder="30" X="581" Y="117" Height="219" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="215" />
|
<Shape ID="DesignTable:BonusBankAdvice" ZOrder="32" X="581" Y="117" Height="219" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="215" />
|
||||||
<Shape ID="DesignTable:ManagersPTT" ZOrder="27" X="22" Y="195" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
<Shape ID="DesignTable:ManagersPTT" ZOrder="29" X="22" Y="195" Height="257" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:DeptWiseCompany" ZOrder="37" X="262" Y="236" Height="257" Width="177" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
<Shape ID="DesignTable:DeptWiseCompany" ZOrder="39" X="262" Y="236" Height="257" Width="177" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:SalaryCertificate" ZOrder="21" X="1258" Y="141" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
|
<Shape ID="DesignTable:SalaryCertificate" ZOrder="23" X="1258" Y="141" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:LetterOfAccountIntro" ZOrder="20" X="1258" Y="173" Height="28" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:LetterOfAccountIntro" ZOrder="22" X="1258" Y="173" Height="28" Width="190" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:DTFSS" ZOrder="35" X="263" Y="269" Height="257" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
<Shape ID="DesignTable:DTFSS" ZOrder="37" X="263" Y="269" Height="257" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:DTFSSItems" ZOrder="36" X="265" Y="301" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="139" />
|
<Shape ID="DesignTable:DTFSSItems" ZOrder="38" X="265" Y="301" Height="143" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="139" />
|
||||||
<Shape ID="DesignTable:PFException" ZOrder="3" X="912" Y="92" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:PFException" ZOrder="5" X="912" Y="92" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:NewPF" ZOrder="6" X="919" Y="193" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:NewPF" ZOrder="8" X="919" Y="193" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:MonthlySalaryRevision" ZOrder="26" X="22" Y="230" Height="162" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="158" />
|
<Shape ID="DesignTable:MonthlySalaryRevision" ZOrder="28" X="22" Y="230" Height="162" Width="199" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="158" />
|
||||||
<Shape ID="DesignTable:EmployeePersonalInfo" ZOrder="2" X="591" Y="198" Height="28" Width="200" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmployeePersonalInfo" ZOrder="3" X="12" Y="475" Height="28" Width="200" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EmployeeQualification" ZOrder="7" X="113" Y="369" Height="28" Width="197" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:EmployeeQualification" ZOrder="9" X="14" Y="508" Height="28" Width="197" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EmpGrandFatherInfo" ZOrder="8" X="427" Y="471" Height="257" Width="187" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
<Shape ID="DesignTable:EmpGrandFatherInfo" ZOrder="10" X="427" Y="471" Height="257" Width="187" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:AllTaxInfo" ZOrder="33" X="740" Y="538" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
<Shape ID="DesignTable:AllTaxInfo" ZOrder="35" X="740" Y="538" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:CostCenterInfo" ZOrder="32" X="-1" Y="0" Height="86" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="82" />
|
<Shape ID="DesignTable:CostCenterInfo" ZOrder="34" X="-1" Y="0" Height="86" Width="153" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="86" SplitterPosition="82" />
|
||||||
<Shape ID="DesignTable:MoneyReceipt" ZOrder="31" X="494" Y="273" Height="257" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
<Shape ID="DesignTable:MoneyReceipt" ZOrder="33" X="494" Y="273" Height="257" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="253" />
|
||||||
<Shape ID="DesignTable:BankAdviceNmgt" ZOrder="19" X="1259" Y="216" Height="28" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:BankAdviceNmgt" ZOrder="21" X="1259" Y="216" Height="28" Width="167" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtGeneral" ZOrder="14" X="1262" Y="250" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtGeneral" ZOrder="16" X="1262" Y="250" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="235" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtContacts" ZOrder="18" X="1242" Y="281" Height="28" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtContacts" ZOrder="20" X="1242" Y="281" Height="28" Width="188" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtSpouse" ZOrder="15" X="1266" Y="311" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtSpouse" ZOrder="17" X="1266" Y="311" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="120" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtChildren" ZOrder="17" X="1267" Y="345" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtChildren" ZOrder="19" X="1267" Y="345" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="139" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtEmpExperience" ZOrder="16" X="1259" Y="378" Height="28" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtEmpExperience" ZOrder="18" X="1259" Y="378" Height="28" Width="166" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtEmpTraining" ZOrder="13" X="1270" Y="411" Height="28" Width="152" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtEmpTraining" ZOrder="15" X="1270" Y="411" Height="28" Width="152" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="253" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtEmpAcademic" ZOrder="12" X="1268" Y="445" Height="28" Width="160" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtEmpAcademic" ZOrder="14" X="1268" Y="445" Height="28" Width="160" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="215" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtEmpReference" ZOrder="11" X="1265" Y="480" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtEmpReference" ZOrder="13" X="1265" Y="480" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="177" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtEmpPublication" ZOrder="9" X="1262" Y="517" Height="28" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtEmpPublication" ZOrder="11" X="1262" Y="517" Height="28" Width="169" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:dtNominee" ZOrder="10" X="1280" Y="547" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
|
<Shape ID="DesignTable:dtNominee" ZOrder="12" X="1280" Y="547" Height="28" Width="161" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="234" SplitterPosition="24" />
|
||||||
<Shape ID="DesignTable:EducationalInfo" ZOrder="1" X="894" Y="425" Height="162" Width="157" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="158" />
|
<Shape ID="DesignTable:EducationalInfo" ZOrder="4" X="894" Y="425" Height="162" Width="157" AdapterExpanded="true" DataTableExpanded="true" OldAdapterHeight="0" OldDataTableHeight="0" SplitterPosition="158" />
|
||||||
|
<Shape ID="DesignTable:PastOwnerAndJobInfo" ZOrder="2" X="836" Y="248" Height="28" Width="197" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="158" SplitterPosition="24" />
|
||||||
|
<Shape ID="DesignTable:LeaveRecord" ZOrder="1" X="1063" Y="425" Height="28" Width="150" AdapterExpanded="true" DataTableExpanded="false" OldAdapterHeight="0" OldDataTableHeight="196" SplitterPosition="24" />
|
||||||
</Shapes>
|
</Shapes>
|
||||||
<Connectors />
|
<Connectors />
|
||||||
</DiagramLayout>
|
</DiagramLayout>
|