This commit is contained in:
JORGE LUIS CAUDILLO ESPARZA
2020-07-29 06:43:12 -07:00
parent fcc738ef05
commit e615e6395a
14 changed files with 443 additions and 97 deletions

View File

@@ -138,6 +138,14 @@
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" />
</asp:TemplateField>
<asp:TemplateField HeaderStyle-Width="80px">
<HeaderTemplate>¿CALCULAR SDI?</HeaderTemplate>
<ItemTemplate>
<asp:CheckBox ID="ChkCalcularSDI" runat="server" />
</ItemTemplate>
<ItemStyle HorizontalAlign="Left" />
</asp:TemplateField>
</Columns>
<RowStyle CssClass="Texto" />
<HeaderStyle CssClass="Titulos" />
@@ -190,6 +198,10 @@
</div>
</div>
<div class="portlet-body rowpadding ">
<div class="row">
<div class="col-sm-6">Calcular Salario Diario Integrado</div>
<div class="col-sm-6"> <asp:CheckBox ID="ChkCalcularSDIXLS" Text=" " CssClass="chksino" runat="server" /></div>
</div>
<asp:TextBox ID="TxtArchivoNomina" CssClass="ADSdropzone hidden" runat="server"></asp:TextBox>
</div>
</div>

View File

@@ -204,7 +204,9 @@ Partial Class RH_ActualizacionMasiva
' ObjPersonal.RollBack()
' Exit For
'End If
If ObjPersonal.UpdateSalarios(Row.DataKey("CvePersonal").ToEntero(), DateTime.Now.ToString("yyyy/MM/dd"), UsuarioActual.CveEmpresa, Row.FCTextBox("TxtSalarioDiario").Text.ToDecimal(), Row.FCTextBox("TxtSDI").Text.ToDecimal(), Row.FCTextBox("TxtSalarioCotizado").Text.ToDecimal(), Row.FCTextBox("TxtSalarioDiario").Text.ToDecimal()) Then
If ObjPersonal.UpdateSalarios(Row.DataKey("CvePersonal").ToEntero(), DateTime.Now.ToString("yyyy/MM/dd"), UsuarioActual.CveEmpresa, Row.FCTextBox("TxtSalarioDiario").Text.ToDecimal(),
Row.FCTextBox("TxtSDI").Text.ToDecimal(), Row.FCTextBox("TxtSalarioCotizado").Text.ToDecimal(), Row.FCTextBox("TxtSalarioDiario").Text.ToDecimal(),
Row.FCCheckBox("ChkCalcularSDI").Checked) Then
Else
OcurrioError = True
@@ -356,7 +358,8 @@ Partial Class RH_ActualizacionMasiva
If Not IsNothing(drow) Then
Dim CvePersonal As Integer = drow("CvePersonal").ToString().ToEntero()
If ObjPersonal.UpdateSalarios(CvePersonal, DateTime.Now.ToString("yyyy/MM/dd"), UsuarioActual.CveEmpresa, Row("SDD").ToString().ToDecimal(), Row("SDI").ToString().ToDecimal(), Row("SD IMSS").ToString().ToDecimal(), Row("SDD").ToString().ToDecimal()) Then
If ObjPersonal.UpdateSalarios(CvePersonal, DateTime.Now.ToString("yyyy/MM/dd"), UsuarioActual.CveEmpresa, Row("SDD").ToString().ToDecimal(), Row("SDI").ToString().ToDecimal(),
Row("SD IMSS").ToString().ToDecimal(), Row("SDD").ToString().ToDecimal(), ChkCalcularSDIXLS.Checked) Then
contador = contador + 1
Else
OcurrioError = True

View File

@@ -8,21 +8,24 @@
.node {
width: 150px;
background-color: whitesmoke;
font-weight:normal;
font-weight: normal;
}
#chart_div{
overflow:auto;
}
</style>
<script type="text/javascript" src="https://www.gstatic.com/charts/loader.js"></script>
<script type="text/javascript">
google.charts.load('current', { packages: ["orgchart"] });
google.charts.setOnLoadCallback(drawChart);
//google.charts.load('current', { packages: ["orgchart"] });
//google.charts.setOnLoadCallback(drawb);
function drawChart() {//esta funcion se ejecuta cada vez que se el boton "Consultar" es seleccionado y se ejecuta el metodo "GenerarOrg" en el VB
var data = new google.visualization.DataTable();
data.addColumn('string', 'Name');
data.addColumn('string', 'Manager');
data.addColumn('string', 'ToolTip');
$.ajax({
type: "POST",
url: "Organigrama.aspx/FetchData",
@@ -30,16 +33,17 @@
contentType: "application/json",
dataType: "json",
success: function (r) {
debugger;
var options = {
allowHtml: true,
size: "large",
nodeClass: "node"
};
r.d = JSON.parse(r.d);
if (r.d.length > 0) {
var formatedData = [];
for (var i = 0; i < r.d.length; i++) {
let arregloAux = [JSON.parse(r.d[i][0]),i!=0?r.d[i][1]:"", r.d[i][2]]//por cada registro convertimos en JSON los titulos y subtitulos(llegan en String) y damos formato al header
let arregloAux = [JSON.parse(r.d[i][0]), i != 0 ? r.d[i][1] : "", r.d[i][2]]//por cada registro convertimos en JSON los titulos y subtitulos(llegan en String) y damos formato al header
formatedData.push(arregloAux);
}
data.addRows(formatedData);
@@ -110,10 +114,10 @@
</asp:DropDownList>
<i></i>
</div>
<div class="col-md-1 truncate" style="text-align: right!important; width: 200px; margin-left:110px">Nivel de cadena de mando: </div>
<div class="col-md-1 truncate" style="text-align: right!important; width: 200px; margin-left: 110px">Nivel de cadena de mando: </div>
<div class="col-md-1">
<asp:TextBox runat="server" ID="txtNivel" Style="width:35px"></asp:TextBox>
<asp:TextBox runat="server" ID="txtNivel" Style="width: 35px"></asp:TextBox>
</div>
</div>
@@ -123,6 +127,7 @@
<div class="portlet-body magindate" <%= IIf(chkexpand.Checked = True, "", "style=""display:none;""")%>>
</div>
</div>
<asp:Label ID="LblJson" CssClass="LblJson hidden" runat="server" Text="[]"></asp:Label>
</ContentTemplate>
</asp:UpdatePanel>
@@ -130,8 +135,45 @@
<div id="chart_div"></div>
</asp:Content>
<asp:Content ID="Content8" ContentPlaceHolderID="JS" runat="Server">
<script>
function drawb() {
let r = {};
var options = {
allowHtml: true,
size: "large",
nodeClass: "node"
};
var data = new google.visualization.DataTable();
data.addColumn('string', 'Name');
data.addColumn('string', 'Manager');
data.addColumn('string', 'ToolTip');
r.d = JSON.parse($('.LblJson').text());
if (r.d.length > 0) {
var formatedData = [];
for (var i = 0; i < r.d.length; i++) {
let arregloAux = [JSON.parse(r.d[i][0]), i != 0 ? r.d[i][1] : "", r.d[i][2]]//por cada registro convertimos en JSON los titulos y subtitulos(llegan en String) y damos formato al header
formatedData.push(arregloAux);
}
data.addRows(formatedData);
var chart = new google.visualization.OrgChart(document.getElementById('chart_div'));
for (let i = 0; i < data.getNumberOfRows(); i++) {
data.setRowProperty(i, 'style', "font-weight:normal");
}
chart.draw(data, options);
} else {
let contenedor = document.getElementById('chart_div');
contenedor.innerHTML = '';
console.log('vacio')
}
}
function ADSBegin() {
google.charts.load('current', { packages: ["orgchart"] });
google.charts.setOnLoadCallback(drawb);
}
</script>
</asp:Content>

View File

@@ -86,14 +86,8 @@ Partial Class RH_Organigrama
CveEmpresaFiltro = UsuarioActual.CveEmpresa
NivelOrg = If(rgx.IsMatch(txtNivel.Text), txtNivel.Text.ToEntero, NivelOrg)
txtNivel.Text = ""
DdlSupervisorOrganigrama.SelectedIndex = 0
ScriptManager.RegisterClientScriptBlock(Me, [GetType], "mykey", "drawChart()", True) 'ejecutamos la funcion de js para que haga la consulta de los registros
End Sub
'DdlSupervisorOrganigrama.SelectedIndex = 0
#End Region
<WebMethod()>
Public Shared Function FetchData() As List(Of Object)
Dim ObjRH As New ClsRH
Dim DtTemporal As New DataTable
Dim chartData As New List(Of Object)()
@@ -110,8 +104,33 @@ Partial Class RH_Organigrama
chartData.Add(New Object() {headerEmpleado, If(nombreEmpleado = nombreSuperior, "", nombreSuperior), puesto})
Next
End If
Dim str As String = (New Script.Serialization.JavaScriptSerializer()).Serialize(chartData)
LblJson.Text = str
'ScriptManager.RegisterClientScriptBlock(Me, [GetType], "mykey", "drawChart()", True) 'ejecutamos la funcion de js para que haga la consulta de los registros
End Sub
Return chartData
#End Region
<WebMethod()>
Public Shared Function FetchData() As String
Dim ObjRH As New ClsRH
Dim DtTemporal As New DataTable
Dim chartData As New List(Of Object)()
If ObjRH.GetOrganigrama(CveEmpresaFiltro, CveCabecera, NivelOrg) Then
DtTemporal = ObjRH.DtResultados.Copy
For Each renglon As DataRow In DtTemporal.Rows
Dim nombreEmpleado As String = renglon("nombreEmpleado").ToString
Dim nombreSuperior As String = renglon("nombreSuperior").ToString
Dim puesto As String = renglon("puesto").ToString
Dim headerEmpleado As String = String.Format("{{{2}v{2}:{2}{0}{2},{2}f{2}:{2}{0}<div style='color:#32A1CF;font-size:10px;font-style:italic'>{1}</div>{2}}}", nombreEmpleado, puesto, ControlChars.Quote) 'este es el JSON que da formato a los subtitulos se hace en String y la funcion lo hace JSON
chartData.Add(New Object() {headerEmpleado, If(nombreEmpleado = nombreSuperior, "", nombreSuperior), puesto})
Next
End If
Dim str As String = (New Script.Serialization.JavaScriptSerializer()).Serialize(chartData)
Return str
End Function
End Class

View File

@@ -715,7 +715,7 @@
<asp:DropDownList ID="DdlSupervisor" runat="server" AppendDataBoundItems="True" DataTextField="Nombre" DataValueField="CveUsuario" CssClass="form-control input-sm select2me" ValidationGroup="GrpGuardar" Width="100%">
<asp:ListItem Selected="True" Text="Sin Supervisor Asignado" Value="-1"></asp:ListItem>
</asp:DropDownList>
<label for="<%= DdlSupervisor.ClientID.ToString()%>">Supervisor RH: </label>
<asp:Label AssociatedControlID="DdlSupervisor" runat="server" Text="Supervisor RH:"></asp:Label>
<i></i>
</div>
<div runat="server" id="DivSuperiorInmediato" class="form-group form-md-line-input input-iconright">
@@ -723,7 +723,7 @@
<asp:ListItem Selected="True" Text="Sin Asignar" Value="-1"></asp:ListItem>
<asp:ListItem Text="Cabecera" Value="0"></asp:ListItem>
</asp:DropDownList>
<label for="<%= DdlSupervisor.ClientID.ToString()%>">Superior Inmediato: </label>
<asp:Label AssociatedControlID="DdlSupervisorOrganigrama" runat="server" Text="Superior Inmediato:"></asp:Label>
<i></i>
</div>
</div>