private static Personal_qr PersonalQRAdd(IDbTransaction trans, Personal o) { Personal_qr oPQr = new Personal_qr() { Id_personal = o.Id, Idf = o.PQr.Idf }; try { Personal_qrMng oPQrMng = new Personal_qrMng(); oPQrMng.O_Personal_qr = oPQr; oPQrMng.add(trans); Personal_qr_pivoteMng oPQRPivMng = new Personal_qr_pivoteMng(); Personal_qr_pivote oPQRPiv = new Personal_qr_pivote() { Idf = o.PQr.Idf }; oPQRPivMng.O_Personal_qr_pivote = oPQRPiv; oPQRPivMng.dltByIdf(trans); } catch { throw; } return(oPQr); }
protected void BindByDataRow(DataRow dr, Personal_qr o) { try { int.TryParse(dr["id"].ToString(), out entero); o.Id = entero; entero = 0; o.Idf = dr["idf"].ToString(); if (dr["id_personal"] != DBNull.Value) { int.TryParse(dr["id_personal"].ToString(), out entero); o.Id_personal = entero; entero = 0; } if (dr["fecha_alta"] != DBNull.Value) { DateTime.TryParse(dr["fecha_alta"].ToString(), out fecha); o.Fecha_alta = fecha; fecha = default(DateTime); } } catch { throw; } }
public static void PersonalUdt(Personal o, int id_usuario) { IDbTransaction trans = null; try { Personal oAnt = PersonalCtrl.PersonalGet(o.Id); //Comienza la transanccion trans = GenericDataAccess.BeginTransaction(); PersonalMng oMng = new PersonalMng(); oMng.O_Personal = o; oMng.udt(trans); Personal_qrMng oPQRMng = new Personal_qrMng(); Personal_qr oPQR = new Personal_qr() { Id_personal = o.Id }; oPQRMng.O_Personal_qr = oPQR; oPQRMng.dltByIdPersonal(trans); o.PQr = PersonalQRAdd(trans, o); if (string.Compare(oAnt.PQr.Idf, o.PQr.Idf) != 0) { PersonalUdtFiles(oAnt, o); } //else // PersonalAddFiles(o.lstArchivos, o, trans); if (o.lstArchivos.Count > 0) { Personal_archivosMng oPAMng = new Personal_archivosMng(); Personal_archivos oPA = new Personal_archivos() { Id_personal = o.Id }; oPAMng.O_Personal_archivos = oPA; oPAMng.dltByIdPersonal(trans); PersonalAddFiles(o.lstArchivos, o, trans); } GenericDataAccess.CommitTransaction(trans); } catch { if (trans != null) { GenericDataAccess.RollbackTransaction(trans); } throw; } }
public static Personal_qr PersonalQRGetByIdPersona(int id_persona) { Personal_qr oPQr = new Personal_qr() { Id_personal = id_persona }; try { Personal_qrMng oPQrMng = new Personal_qrMng(); oPQrMng.O_Personal_qr = oPQr; oPQrMng.selByIdPersonal(); } catch { throw; } return(oPQr); }
public override void fillLst() { try { this.comm = GenericDataAccess.CreateCommandSP("sp_Personal_qr"); addParameters(0); this.dt = GenericDataAccess.ExecuteSelectCommand(comm); this._lst = new List <Personal_qr>(); foreach (DataRow dr in dt.Rows) { Personal_qr o = new Personal_qr(); BindByDataRow(dr, o); this._lst.Add(o); } } catch { throw; } }
public static Personal PersonalUltimoRegistroPorBodega(int id_bodega) { Personal oP = new Personal(); try { Personal_registro oPR = new Personal_registro() { Id_bodega = id_bodega }; Personal_registroMng oPRMng = new Personal_registroMng() { O_Personal_registro = oPR }; oPRMng.selUltPorBodega(); Personal_qr oPQr = new Personal_qr() { Id_personal = oPR.Id_personal }; Personal_qrMng oPQrMng = new Personal_qrMng() { O_Personal_qr = oPQr }; oPQrMng.selByIdPersonal(); oP.PQr = oPQr; oP.Id = oPQr.Id_personal; PersonalMng oPMng = new PersonalMng() { O_Personal = oP }; oPMng.selById(); oP.PerReg = oPR; } catch { throw; } return(oP); }
public Personal_qrMng() { this._oPersonal_qr = new Personal_qr(); this._lst = new List <Personal_qr>(); }
public static Personal_qr PersonalRegistro(Personal_qr o) { bool cumpleReglas = false; IDbTransaction trans = null; try { Personal_qrMng oPQrMng = new Personal_qrMng() { O_Personal_qr = o }; oPQrMng.selByIdf(); Personal_registro oPreg = new Personal_registro() { Id_personal = o.Id_personal, Id_bodega = o.Id_bodega }; Personal_registroMng oMng = new Personal_registroMng() { O_Personal_registro = oPreg }; oMng.selByIdPersona(); Personal oPer = new Personal() { Id = o.Id_personal }; PersonalMng oPerMng = new PersonalMng() { O_Personal = oPer }; oPerMng.selById(); o.PPersonal = oPer; Personal_regla_rol oPerRegRol = new Personal_regla_rol() { Id_personal_rol = oPer.Id_personal_rol }; Personal_regla_rolMng oPerRegRolMng = new Personal_regla_rolMng() { O_Personal_regla_rol = oPerRegRol }; oPerRegRolMng.selByIdPersonalRol(); foreach (Personal_regla_rol itemPRR in oPerRegRolMng.Lst) { Personal_regla oPRegla = new Personal_regla() { Id = itemPRR.Id_personal_regla }; Personal_reglaMng oPregMng = new Personal_reglaMng() { O_Personal_regla = oPRegla }; oPregMng.selById(); TimeSpan ts = DateTime.Now - oPreg.Fecha_hora; int valor = Convert.ToInt32(oPRegla.Valor); if (ts.TotalMinutes > valor) { cumpleReglas = true; } else { o.Mensaje = oPRegla.Mensaje.Replace("{{valor}}", Math.Round(Math.Abs(ts.TotalMinutes - valor), 0).ToString()); } } if (!oPer.IsActive) { o.Mensaje = "El personal está dado de baja y no puede acceder a la sede, favor de verificar con el área de Recursos Humanos"; } else if (oPer.Boletinado) { o.Mensaje = "El personal está boletinado y no puede acceder a ninguna sede, favor de verificar con el área de Recursos Humanos"; } else if (cumpleReglas) { switch (o.Id_registro_tipo) { case 1: //Registro de eventos ordinarios oMng.add(); o.PPerReg = oPreg; o.Mensaje = "Registro Exitoso"; break; case 2: //Registro Extraordinario con motivo trans = GenericDataAccess.BeginTransaction(); oMng.add(trans); Personal_registro_extMng oExtMng = new Personal_registro_extMng(); Personal_registro_ext oExt = new Personal_registro_ext() { Id_personal_registro = oPreg.Id, Motivo = o.Motivo }; oExtMng.O_Personal_registro_ext = oExt; oExtMng.add(trans); GenericDataAccess.CommitTransaction(trans); o.PPerReg = oPreg; o.Mensaje = "Registro Exitoso"; break; case 3: //Registro de horas extras, validar que tenga sus cuatro registros ordinarios previos if (oMng.getRecordsByIdPersona() < 4) { o.Mensaje = "El personal no puede cubrir un horario extra por que no cuenta con sus 4 registros"; } else { oMng.add(); o.PPerReg = oPreg; o.Mensaje = "Registro Exitoso"; } break; default: break; } } } catch { if (trans != null) { GenericDataAccess.RollbackTransaction(trans); } throw; } return(o); }