protected void Delete_Click(object sender, EventArgs e) { ArrayList list = new ArrayList(); foreach (RepeaterItem i in Repeater.Items) { CheckBox cb = (CheckBox)i.FindControl("ItemSelect"); if (cb.Checked) { EEmpRosterTableGroup o = new EEmpRosterTableGroup(); WebFormUtils.GetKeys(sdb, o, cb); list.Add(o); } } if (list.Count > 0) { WebUtils.StartFunction(Session, FUNCTION_CODE, CurID); foreach (BaseObject o in list) { if (sdb.select(dbConn, o)) { sdb.delete(dbConn, o); } } WebUtils.EndFunction(dbConn); } loadData(info, sdb, Repeater); }
protected void Delete_Click(object sender, EventArgs e) { EEmpRosterTableGroup c = new EEmpRosterTableGroup(); c.EmpRosterTableGroupID = CurID; EEmpRosterTableGroup.db.select(dbConn, c); WebUtils.StartFunction(Session, FUNCTION_CODE, c.EmpID); db.delete(dbConn, c); WebUtils.EndFunction(dbConn); HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "EmpTab_RosterTableGroup_View.aspx?EmpID=" + EmpID.Value); }
protected bool loadObject() { obj = new EEmpRosterTableGroup(); bool isNew = WebFormWorkers.loadKeys(db, obj, DecryptedRequest); DBFilter filter = new DBFilter(); filter.add(new Match("EmpID", CurEmpID)); filter.add(WebUtils.AddRankFilter(Session, "EmpID", true)); if (EEmpPersonalInfo.db.count(dbConn, filter) == 0) { if (CurEmpID <= 0) { return(false); } else { HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "~/AccessDeny.aspx"); } } if (!db.select(dbConn, obj)) { if (CurID <= 0) { return(false); } else { HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "~/AccessDeny.aspx"); } } if (obj.EmpID != CurEmpID) { if (CurID <= 0) { return(false); } else { HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "~/AccessDeny.aspx"); } } Hashtable values = new Hashtable(); db.populate(obj, values); binding.toControl(values); return(true); }
private Dictionary <int, List <DateTime> > LoadEmployeeList(DateTime periodFromDate, DateTime periodToDate) { Dictionary <int, List <DateTime> > staffRosterDateList = new Dictionary <int, List <DateTime> >(); if (selectedRosterTableGroupID > 0) { EEmpRosterTableGroup empRosterInfo = GetSingleEmployeeRosterInfo(dbConn, AppUtils.ServerDateTime().Date, CurID, selectedRosterTableGroupID); if (empRosterInfo.EmpRosterTableGroupIsSupervisor) { ArrayList staffEmpRosterInfoList = GetStaffEmpRosterInfoList(dbConn, periodFromDate, periodToDate, empRosterInfo.RosterTableGroupID); foreach (EEmpRosterTableGroup staffEmpRosterInfo in staffEmpRosterInfoList) { DateTime staffRangeFr = periodFromDate; DateTime staffRangeTo = periodToDate; if (!staffEmpRosterInfo.EmpRosterTableGroupEffFr.Ticks.Equals(0) && staffEmpRosterInfo.EmpRosterTableGroupEffFr > staffRangeFr) { staffRangeFr = staffEmpRosterInfo.EmpRosterTableGroupEffFr; } if (!staffEmpRosterInfo.EmpRosterTableGroupEffTo.Ticks.Equals(0) && staffEmpRosterInfo.EmpRosterTableGroupEffTo < staffRangeTo) { staffRangeTo = staffEmpRosterInfo.EmpRosterTableGroupEffTo; } List <DateTime> availableDateList; if (staffRosterDateList.ContainsKey(staffEmpRosterInfo.EmpID)) { availableDateList = staffRosterDateList[staffEmpRosterInfo.EmpID]; } else { availableDateList = new List <DateTime>(); staffRosterDateList.Add(staffEmpRosterInfo.EmpID, availableDateList); } for (DateTime staffAvailableDate = staffRangeFr; staffAvailableDate <= staffRangeTo; staffAvailableDate = staffAvailableDate.AddDays(1)) { if (!availableDateList.Contains(staffAvailableDate)) { availableDateList.Add(staffAvailableDate); } } } } } return(staffRosterDateList); }
public void ImportToDatabase(int UploadEmpID) { DBFilter sessionFilter = new DBFilter(); sessionFilter.add(new Match("SessionID", m_SessionID)); if (UploadEmpID > 0) { sessionFilter.add(new Match("UploadEmpID", UploadEmpID)); } ArrayList uploadEmpRosterTableGroupList = tempDB.select(dbConn, sessionFilter); foreach (EUploadEmpRosterTableGroup obj in uploadEmpRosterTableGroupList) { EEmpRosterTableGroup EmpRosterTableGroup = new EEmpRosterTableGroup(); if (obj.ImportActionStatus != ImportDBObject.ImportActionEnum.INSERT) { EmpRosterTableGroup.EmpRosterTableGroupID = obj.EmpRosterTableGroupID; uploadDB.select(dbConn, EmpRosterTableGroup); } obj.ExportToObject(EmpRosterTableGroup); if (obj.ImportActionStatus == ImportDBObject.ImportActionEnum.INSERT) { EmpRosterTableGroup.EmpID = ParseTemp.GetEmpIDFromUploadEmpID(dbConn, obj.UploadEmpID); //DBFilter emplastPosFilter = new DBFilter(); //EEmpRosterTableGroup lastObj = (EEmpRosterTableGroup)AppUtils.GetLastObj(dbConn, uploadDB, "EmpRosterTableGroupEffFr", EmpRosterTableGroup.EmpID, new Match("EmpRosterTableGroupEffFr", "<", EmpRosterTableGroup.EmpRosterTableGroupEffFr)); //if (lastObj != null) // if (lastObj.EmpRosterTableGroupEffTo.Ticks == 0) // { // lastObj.EmpRosterTableGroupEffTo = EmpRosterTableGroup.EmpRosterTableGroupEffFr.AddDays(-1); // uploadDB.update(dbConn, lastObj); // } uploadDB.insert(dbConn, EmpRosterTableGroup); } else if (obj.ImportActionStatus == ImportDBObject.ImportActionEnum.UPDATE) { uploadDB.update(dbConn, EmpRosterTableGroup); } tempDB.delete(dbConn, obj); } }
private bool isSupervisor(int EmpID) { DBFilter dbFilter = new DBFilter(); dbFilter.add(new Match("EmpID", EmpID)); dbFilter.add(new Match("NOT empRosterTableGroupIsSupervisor", 0)); ArrayList empRosterTableGroupList = EEmpRosterTableGroup.db.select(dbConn, dbFilter); if (empRosterTableGroupList.Count > 0) { EEmpRosterTableGroup empRosterTableGroup = (EEmpRosterTableGroup)empRosterTableGroupList[0]; if (empRosterTableGroup.EmpRosterTableGroupIsSupervisor) { return(true); } else { return(false); } } return(false); }
public DataTable UploadToTempDatabase(DataTable rawDataTable, int UserID) { if (rawDataTable == null) { return(GetImportDataFromTempDatabase(null)); } int rowCount = 1; foreach (DataRow row in rawDataTable.Rows) { rowCount++; EUploadEmpRosterTableGroup uploadEmpRosterTableGroup = new EUploadEmpRosterTableGroup(); EEmpRosterTableGroup lastEmpRosterTableGroup = null; ArrayList uploadHierarchyList = new ArrayList(); string EmpNo = row[FIELD_EMP_NO].ToString().Trim(); uploadEmpRosterTableGroup.EmpID = Parse.GetEmpID(dbConn, EmpNo, UserID); if (uploadEmpRosterTableGroup.EmpID < 0) { errors.addError(ImportErrorMessage.ERROR_ACCESS_DENIED_EMP_NO, new string[] { EmpNo, rowCount.ToString() }); } try { uploadEmpRosterTableGroup.EmpRosterTableGroupEffFr = Parse.toDateTimeObject(row[FIELD_FROM]); } catch { errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_FROM + "=" + row[FIELD_FROM].ToString(), EmpNo, rowCount.ToString() }); } try { uploadEmpRosterTableGroup.EmpRosterTableGroupEffTo = Parse.toDateTimeObject(row[FIELD_TO]); } catch { errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_TO + "=" + row[FIELD_TO].ToString(), EmpNo, rowCount.ToString() }); } uploadEmpRosterTableGroup.RosterTableGroupID = Parse.GetRosterTableGroupID(dbConn, row[FIELD_ROSTERTABLEGROUP].ToString()); uploadEmpRosterTableGroup.EmpRosterTableGroupIsSupervisor = row[FIELD_ROSTERTABLEGROUP_IS_SUPERVISOR].ToString().Equals("Yes", StringComparison.CurrentCultureIgnoreCase) || row[FIELD_ROSTERTABLEGROUP_IS_SUPERVISOR].ToString().Equals("Y", StringComparison.CurrentCultureIgnoreCase); if (uploadEmpRosterTableGroup.RosterTableGroupID == 0) { errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_ROSTERTABLEGROUP + "=" + row[FIELD_ROSTERTABLEGROUP].ToString(), EmpNo, rowCount.ToString() }); } uploadEmpRosterTableGroup.SessionID = m_SessionID; uploadEmpRosterTableGroup.TransactionDate = UploadDateTime; if (uploadEmpRosterTableGroup.EmpID != 0 && errors.List.Count <= 0) { //if (rawDataTable.Columns.Contains(FIELD_INTERNAL_ID)) //{ // try // { // if (!row.IsNull(FIELD_INTERNAL_ID)) // { // int tmpID = FromHexDecWithCheckDigit((string)row[FIELD_INTERNAL_ID]); // EEmpRosterTableGroup tmpObj = new EEmpRosterTableGroup(); // tmpObj.EmpRosterTableGroupID = tmpID; // if (EEmpRosterTableGroup.db.select(dbConn, tmpObj)) // uploadEmpRosterTableGroup.EmpRosterTableGroupID = tmpID; // else // { // errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_INTERNAL_ID + "=" + row[FIELD_INTERNAL_ID].ToString(), EmpNo, rowCount.ToString() }); // continue; // } // } // } // catch (Exception ex) // { // errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_INTERNAL_ID + "=" + row[FIELD_INTERNAL_ID].ToString(), EmpNo, rowCount.ToString() }); // continue; // } //} if (rawDataTable.Columns.Contains(FIELD_SYNC_ID)) { if (!row.IsNull(FIELD_SYNC_ID)) { string strSynID = row[FIELD_SYNC_ID].ToString(); uploadEmpRosterTableGroup.SynID = strSynID; if (!string.IsNullOrEmpty(strSynID)) { DBFilter synIDFilter = new DBFilter(); synIDFilter.add(new Match("SynID", strSynID)); ArrayList objSameSynIDList = EEmpRosterTableGroup.db.select(dbConn, synIDFilter); if (objSameSynIDList.Count > 0) { uploadEmpRosterTableGroup.EmpRosterTableGroupID = ((EEmpRosterTableGroup)objSameSynIDList[0]).EmpRosterTableGroupID; } } } } if (uploadEmpRosterTableGroup.EmpRosterTableGroupID == 0) { // allow multiple group on same date // do NOT allow same group id appear on same date AND lastEmpRosterTableGroupAndTerms = new AND(); lastEmpRosterTableGroupAndTerms.add(new Match("EmpRosterTableGroupEffFr", "<=", uploadEmpRosterTableGroup.EmpRosterTableGroupEffFr)); lastEmpRosterTableGroupAndTerms.add(new Match("RosterTableGroupID", uploadEmpRosterTableGroup.RosterTableGroupID)); lastEmpRosterTableGroup = (EEmpRosterTableGroup)AppUtils.GetLastObj(dbConn, uploadDB, "EmpRosterTableGroupEffFr", uploadEmpRosterTableGroup.EmpID, lastEmpRosterTableGroupAndTerms); if (lastEmpRosterTableGroup != null) { if (uploadEmpRosterTableGroup.RosterTableGroupID == lastEmpRosterTableGroup.RosterTableGroupID && uploadEmpRosterTableGroup.EmpRosterTableGroupIsSupervisor == lastEmpRosterTableGroup.EmpRosterTableGroupIsSupervisor && uploadEmpRosterTableGroup.EmpRosterTableGroupEffTo == lastEmpRosterTableGroup.EmpRosterTableGroupEffTo) { continue; } else { // add postion terms with new ID if (lastEmpRosterTableGroup.EmpRosterTableGroupEffFr.Equals(uploadEmpRosterTableGroup.EmpRosterTableGroupEffFr) && uploadEmpRosterTableGroup.RosterTableGroupID == lastEmpRosterTableGroup.RosterTableGroupID && uploadEmpRosterTableGroup.EmpRosterTableGroupIsSupervisor == lastEmpRosterTableGroup.EmpRosterTableGroupIsSupervisor) { uploadEmpRosterTableGroup.EmpRosterTableGroupID = lastEmpRosterTableGroup.EmpRosterTableGroupID; //if (uploadEmpRosterTableGroup.EmpRosterTableGroupEffTo.Ticks == 0 && lastEmpRosterTableGroup.EmpRosterTableGroupEffTo.Ticks != 0) //{ // EEmpRosterTableGroup afterEmpRosterTableGroup = (EEmpRosterTableGroup)AppUtils.GetLastObj(dbConn, uploadDB, "EmpRosterTableGroupEffFr", uploadEmpRosterTableGroup.EmpID, new Match("EmpRosterTableGroupEffFr", ">", lastEmpRosterTableGroup.EmpRosterTableGroupEffTo)); // if (afterEmpRosterTableGroup != null) // uploadEmpRosterTableGroup.EmpRosterTableGroupEffTo = afterEmpRosterTableGroup.EmpRosterTableGroupEffFr.AddDays(-1); //} } //else //{ // AND lastObjAndTerms = new AND(); // lastObjAndTerms.add(new Match("EmpRosterTableGroupEffFr", ">", uploadEmpRosterTableGroup.EmpRosterTableGroupEffFr)); // if (!uploadEmpRosterTableGroup.EmpRosterTableGroupEffTo.Ticks.Equals(0)) // lastObjAndTerms.add(new Match("EmpRosterTableGroupEffFr", "<=", uploadEmpRosterTableGroup.EmpRosterTableGroupEffTo)); // lastObjAndTerms.add(new Match("RosterTableGroupID", uploadEmpRosterTableGroup.RosterTableGroupID)); // EEmpRosterTableGroup lastObj = (EEmpRosterTableGroup)AppUtils.GetLastObj(dbConn, uploadDB, "EmpRosterTableGroupEffFr", uploadEmpRosterTableGroup.EmpID, lastObjAndTerms); // if (lastObj != null) // if (!lastObj.EmpRosterTableGroupEffTo.Ticks.Equals(0)) // { // errors.addError(ImportErrorMessage.ERROR_DATE_FROM_OVERLAP, new string[] { uploadEmpRosterTableGroup.EmpRosterTableGroupEffFr.ToString("yyyy-MM-dd"), rowCount.ToString() }); // continue; // } //} } } } } if (uploadEmpRosterTableGroup.EmpRosterTableGroupID <= 0) { uploadEmpRosterTableGroup.ImportActionStatus = ImportDBObject.ImportActionEnum.INSERT; } else { uploadEmpRosterTableGroup.ImportActionStatus = ImportDBObject.ImportActionEnum.UPDATE; } uploadEmpRosterTableGroup.UploadEmpID = ParseTemp.GetUploadEmpID(dbConn, EmpNo, m_SessionID); if (uploadEmpRosterTableGroup.UploadEmpID == 0) { if (uploadEmpRosterTableGroup.EmpID == 0) { errors.addError(ImportErrorMessage.ERROR_INVALID_EMP_NO, new string[] { EmpNo, rowCount.ToString() }); } else { uploadEmpRosterTableGroup.UploadEmpID = ImportEmpPersonalInfoProcess.CreateDummyUploadEmployeeInfo(dbConn, uploadEmpRosterTableGroup.EmpID, m_SessionID, UploadDateTime); } } Hashtable values = new Hashtable(); tempDB.populate(uploadEmpRosterTableGroup, values); PageErrors pageErrors = new PageErrors(EUploadEmpPersonalInfo.db); tempDB.validate(pageErrors, values); if (pageErrors.errors.Count == 0) { tempDB.insert(dbConn, uploadEmpRosterTableGroup); } else { pageErrors.addError(rawDataTable.TableName); throw new HRImportException(pageErrors.getPrompt() + "(line " + rowCount.ToString() + ")"); //if (EmpID == 0) // errors.addError(ImportErrorMessage.ERROR_INVALID_EMP_NO, new string[] { EmpNo, rowCount.ToString() }); //else if (PayCodeID == 0) // errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_PAYMENT_CODE + "=" + PaymentCode, EmpNo, rowCount.ToString() }); //else if (PayCodeID == 0) // errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_PAYMENT_CODE + "=" + PaymentCode, EmpNo, rowCount.ToString() }); //else if (EffDate.Ticks == 0) // errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_EFFECTIVE_DATE + "=" + EffDateString, EmpNo, rowCount.ToString() }); //else if (double.TryParse(amountString, out amount)) // errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_AMOUNT + "=" + amountString, EmpNo, rowCount.ToString() }); } } if (errors.List.Count > 0) { ClearTempTable(); throw (new HRImportException(rawDataTable.TableName + "\r\n" + errors.Message())); } return(GetImportDataFromTempDatabase(null)); }
protected void Save_Click(object sender, EventArgs e) { EEmpRosterTableGroup c = new EEmpRosterTableGroup(); Hashtable values = new Hashtable(); binding.toValues(values); PageErrors errors = PageErrors.getErrors(db, Page.Master); errors.clear(); db.validate(errors, values); if (!errors.isEmpty()) { return; } db.parse(values, c); if (c.EmpRosterTableGroupEffTo.Ticks > 0 && c.EmpRosterTableGroupEffTo < c.EmpRosterTableGroupEffFr) { errors.addError("EmpRosterTableGroupEffTo", HROne.Translation.PageErrorMessage.ERROR_DATE_TO_TOO_EARLY); return; } //AND andTerms = new AND(); //andTerms.add(new Match("EmpRosterTableGroupID", "<>", c.EmpRosterTableGroupID)); //andTerms.add(new Match("EmpRosterTableGroupEffFr", "<=", c.EmpRosterTableGroupEffFr)); //EEmpRosterTableGroup lastObj = (EEmpRosterTableGroup)AppUtils.GetLastObj(dbConn, db, "EmpRosterTableGroupEffFr", c.EmpID, andTerms); //if (lastObj != null && (c.EmpRosterTableGroupEffFr <= lastObj.EmpRosterTableGroupEffTo || c.EmpRosterTableGroupEffFr == lastObj.EmpRosterTableGroupEffFr)) //{ // errors.addError("EmpRosterTableGroupEffFr", HROne.Translation.PageErrorMessage.ERROR_DATE_FROM_OVERLAP); // return; //} WebUtils.StartFunction(Session, FUNCTION_CODE, c.EmpID); if (CurID < 0) { // Utils.MarkCreate(Session, c); db.insert(dbConn, c); CurID = c.EmpRosterTableGroupID; // url = Utils.BuildURL(-1, CurID); } else { // Utils.Mark(Session, c); db.update(dbConn, c); } //if (lastObj != null) //{ // if (lastObj.EmpRosterTableGroupEffTo < lastObj.EmpRosterTableGroupEffFr) // { // lastObj.EmpRosterTableGroupEffTo = c.EmpRosterTableGroupEffFr.AddDays(-1); // db.update(dbConn, lastObj); // } //} WebUtils.EndFunction(dbConn); HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "Emp_RosterTableGroup_View.aspx?EmpRosterTableGroupID=" + CurID + "&EmpID=" + c.EmpID); }