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) { EEmpAVCPlan o = new EEmpAVCPlan(); 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) { EEmpAVCPlan c = new EEmpAVCPlan(); c.EmpAVCID = CurID; EEmpAVCPlan.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_Pension_View.aspx?EmpID=" + EmpID.Value); }
protected bool loadObject() { obj = new EEmpAVCPlan(); 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); }
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 uploadEmpAVCList = tempDB.select(dbConn, sessionFilter); foreach (EUploadEmpAVCPlan obj in uploadEmpAVCList) { EEmpAVCPlan empAVCPlan = new EEmpAVCPlan(); if (obj.ImportActionStatus != ImportDBObject.ImportActionEnum.INSERT) { empAVCPlan.EmpAVCID = obj.EmpAVCID; uploadDB.select(dbConn, empAVCPlan); } obj.ExportToObject(empAVCPlan); if (obj.ImportActionStatus == ImportDBObject.ImportActionEnum.INSERT) { empAVCPlan.EmpID = ParseTemp.GetEmpIDFromUploadEmpID(dbConn, obj.UploadEmpID); DBFilter emplastPosFilter = new DBFilter(); EEmpAVCPlan lastObj = (EEmpAVCPlan)AppUtils.GetLastObj(dbConn, uploadDB, "EmpAVCEffFr", empAVCPlan.EmpID, new Match("EmpAVCEffFr", "<", empAVCPlan.EmpAVCEffFr)); if (lastObj != null) if (lastObj.EmpAVCEffTo.Ticks == 0) { lastObj.EmpAVCEffTo = empAVCPlan.EmpAVCEffFr.AddDays(-1); uploadDB.update(dbConn, lastObj); } uploadDB.insert(dbConn, empAVCPlan); } else if (obj.ImportActionStatus == ImportDBObject.ImportActionEnum.UPDATE) { uploadDB.update(dbConn, empAVCPlan); } tempDB.delete(dbConn, obj); } }
protected void Save_Click(object sender, EventArgs e) { EEmpAVCPlan c = new EEmpAVCPlan(); 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.EmpAVCEffTo.Ticks > 0 && c.EmpAVCEffTo < c.EmpAVCEffFr) { errors.addError("EmpAVCEffTo", HROne.Translation.PageErrorMessage.ERROR_DATE_TO_TOO_EARLY); return; } if (c.EmpAVCEffFr < new DateTime(2000, 12, 1)) { errors.addError("EmpAVCEffFr", HROne.Translation.PageErrorMessage.ERROR_MPF_DATE_TO_TOO_EARLY); return; } AND andTerms = new AND(); andTerms.add(new Match("EmpAVCID", "<>", c.EmpAVCID)); andTerms.add(new Match("EmpAVCEffFr", "<=", c.EmpAVCEffFr)); EEmpAVCPlan lastObj = (EEmpAVCPlan)AppUtils.GetLastObj(dbConn, db, "EmpAVCEffFr", c.EmpID, andTerms); if (lastObj != null && (c.EmpAVCEffFr <= lastObj.EmpAVCEffTo || c.EmpAVCEffFr == lastObj.EmpAVCEffFr)) { errors.addError("EmpAVCEffFr", 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.EmpAVCID; // url = Utils.BuildURL(-1, CurID); } else { // Utils.Mark(Session, c); db.update(dbConn, c); } if (lastObj != null) { if (lastObj.EmpAVCEffTo < lastObj.EmpAVCEffFr) { lastObj.EmpAVCEffTo = c.EmpAVCEffFr.AddDays(-1); db.update(dbConn, lastObj); } } WebUtils.EndFunction(dbConn); HROne.Common.WebUtility.RedirectURLwithEncryptedQueryString(Response, Session, "Emp_AVCPlan_View.aspx?EmpAVCID=" + CurID + "&EmpID=" + c.EmpID); }
public DataTable UploadToTempDatabase(DataTable rawDataTable, int UserID) { if (rawDataTable == null) return GetImportDataFromTempDatabase(null); int rowCount = 1; foreach (DataRow row in rawDataTable.Rows) { rowCount++; EUploadEmpAVCPlan uploadEmpAVC = new EUploadEmpAVCPlan(); EEmpAVCPlan lastEmpAVC = null; ArrayList uploadHierarchyList = new ArrayList(); string EmpNo = row[FIELD_EMP_NO].ToString().Trim(); uploadEmpAVC.EmpID = Parse.GetEmpID(dbConn, EmpNo, UserID); if (uploadEmpAVC.EmpID < 0) errors.addError(ImportErrorMessage.ERROR_ACCESS_DENIED_EMP_NO, new string[] { EmpNo, rowCount.ToString() }); try { uploadEmpAVC.EmpAVCEffFr = 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 { uploadEmpAVC.EmpAVCEffTo = Parse.toDateTimeObject(row[FIELD_TO]); } catch { errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_TO + "=" + row[FIELD_TO].ToString(), EmpNo, rowCount.ToString() }); } uploadEmpAVC.AVCPlanID = Parse.GetAVCPlanID(dbConn, row[FIELD_AVCPLAN].ToString(), false, UserID); if (uploadEmpAVC.AVCPlanID == 0) errors.addError(ImportErrorMessage.ERROR_INVALID_FIELD_VALUE, new string[] { FIELD_AVCPLAN + "=" + row[FIELD_AVCPLAN].ToString(), EmpNo, rowCount.ToString() }); uploadEmpAVC.SessionID = m_SessionID; uploadEmpAVC.TransactionDate = UploadDateTime; if (uploadEmpAVC.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]); // EEmpAVCPlan tmpObj = new EEmpAVCPlan(); // tmpObj.EmpAVCID = tmpID; // if (EEmpAVCPlan.db.select(dbConn, tmpObj)) // uploadEmpAVC.EmpAVCID = 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(); uploadEmpAVC.SynID = strSynID; if (!string.IsNullOrEmpty(strSynID)) { DBFilter synIDFilter = new DBFilter(); synIDFilter.add(new Match("SynID", strSynID)); ArrayList objSameSynIDList = EEmpAVCPlan.db.select(dbConn, synIDFilter); if (objSameSynIDList.Count > 0) uploadEmpAVC.EmpAVCID = ((EEmpAVCPlan)objSameSynIDList[0]).EmpAVCID; } } } if (uploadEmpAVC.EmpAVCID == 0) { lastEmpAVC = (EEmpAVCPlan)AppUtils.GetLastObj(dbConn, uploadDB, "EmpAVCEffFr", uploadEmpAVC.EmpID, new Match("EmpAVCEffFr", "<=", uploadEmpAVC.EmpAVCEffFr)); if (lastEmpAVC != null) { if (uploadEmpAVC.AVCPlanID == lastEmpAVC.AVCPlanID && uploadEmpAVC.EmpAVCEffTo == lastEmpAVC.EmpAVCEffTo) { continue; } else { // add postion terms with new ID if (lastEmpAVC.EmpAVCEffFr.Equals(uploadEmpAVC.EmpAVCEffFr)) { uploadEmpAVC.EmpAVCID = lastEmpAVC.EmpAVCID; if (uploadEmpAVC.EmpAVCEffTo.Ticks == 0 && lastEmpAVC.EmpAVCEffTo.Ticks != 0) { EEmpAVCPlan afterEmpAVC = (EEmpAVCPlan)AppUtils.GetLastObj(dbConn, uploadDB, "EmpAVCEffFr", uploadEmpAVC.EmpID, new Match("EmpAVCEffFr", ">", lastEmpAVC.EmpAVCEffTo)); if (afterEmpAVC != null) uploadEmpAVC.EmpAVCEffTo = afterEmpAVC.EmpAVCEffFr.AddDays(-1); } } else { AND lastObjAndTerms = new AND(); lastObjAndTerms.add(new Match("EmpAVCEffFr", ">", uploadEmpAVC.EmpAVCEffFr)); if (!uploadEmpAVC.EmpAVCEffTo.Ticks.Equals(0)) lastObjAndTerms.add(new Match("EmpAVCEffFr", "<=", uploadEmpAVC.EmpAVCEffTo)); EEmpAVCPlan lastObj = (EEmpAVCPlan)AppUtils.GetLastObj(dbConn, uploadDB, "EmpAVCEffFr", uploadEmpAVC.EmpID, lastObjAndTerms); if (lastObj != null) if (!lastObj.EmpAVCEffTo.Ticks.Equals(0)) { errors.addError(ImportErrorMessage.ERROR_DATE_FROM_OVERLAP, new string[] { uploadEmpAVC.EmpAVCEffFr.ToString("yyyy-MM-dd"), rowCount.ToString() }); continue; } } } } } } if (uploadEmpAVC.EmpAVCID <= 0) uploadEmpAVC.ImportActionStatus = ImportDBObject.ImportActionEnum.INSERT; else uploadEmpAVC.ImportActionStatus = ImportDBObject.ImportActionEnum.UPDATE; uploadEmpAVC.UploadEmpID = ParseTemp.GetUploadEmpID(dbConn, EmpNo, m_SessionID); if (uploadEmpAVC.UploadEmpID == 0) if (uploadEmpAVC.EmpID == 0) errors.addError(ImportErrorMessage.ERROR_INVALID_EMP_NO, new string[] { EmpNo, rowCount.ToString() }); else uploadEmpAVC.UploadEmpID = ImportEmpPersonalInfoProcess.CreateDummyUploadEmployeeInfo(dbConn, uploadEmpAVC.EmpID, m_SessionID, UploadDateTime); Hashtable values = new Hashtable(); tempDB.populate(uploadEmpAVC, values); PageErrors pageErrors = new PageErrors(EUploadEmpPersonalInfo.db); tempDB.validate(pageErrors, values); if (pageErrors.errors.Count == 0) { tempDB.insert(dbConn, uploadEmpAVC); } 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 bool loadObject() { obj = new EEmpAVCPlan(); 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); BOCIAVCPanel.Visible = false; DBFilter empMPFPlanFilter = new DBFilter(); empMPFPlanFilter.add(new Match("EmpID", CurEmpID)); empMPFPlanFilter.add("EmpMPFEffFr", false); if (!obj.EmpAVCEffFr.Ticks.Equals(0)) { empMPFPlanFilter.add(new Match("EmpMPFEffFr", "<=", obj.EmpAVCEffFr)); } ArrayList empMPFPlanList = EEmpMPFPlan.db.select(dbConn, empMPFPlanFilter); EMPFPlan mpfPlan = new EMPFPlan(); if (empMPFPlanList.Count > 0) { EEmpMPFPlan empMPFPlan = (EEmpMPFPlan)empMPFPlanList[0]; mpfPlan.MPFPlanID = empMPFPlan.MPFPlanID; } else { mpfPlan.MPFPlanID = obj.DefaultMPFPlanID; } if (EMPFPlan.db.select(dbConn, mpfPlan)) { EMPFScheme mpfScheme = new EMPFScheme(); mpfScheme.MPFSchemeID = mpfPlan.MPFSchemeID; if (EMPFScheme.db.select(dbConn, mpfScheme)) { if (mpfScheme.MPFSchemeTrusteeCode.Equals("BOCI")) { BOCIAVCPanel.Visible = true; } else { BOCIAVCPanel.Visible = false; } } } return(true); }