예제 #1
0
        private void saveFacility(int idPoint, string circuito, string status, string usuario, Olt oltNew, Facility facility = null)
        {
            FacilityHistoricDal facilityHistoricDal = new FacilityHistoricDal();
            FacilityDal         facilityDal         = new FacilityDal();

            Olt oltOld = new Olt();

            oltOld = facilityDal.getOLTAttributsByIdSubPorta(oltNew.idSubPorta);

            operationsCmAPI.atualizaPontoCompoment(idPoint, circuito.Trim(), status);
            operationsCmAPI.atualizaAtributosPortaOLT(oltNew);

            Cto ctoOld = new Cto();

            ctoOld = facilityDal.getCtoDetaisPort(idPoint);

            if (facility == null)
            {
                facility = new Facility();
            }

            facility.usuario    = usuario;
            facility.cto        = ctoOld.nome;
            facility.cnl        = ctoOld.cnl;
            facility.localidade = ctoOld.localidade;
            facility.porta_cto  = ctoOld.ponto;
            facility.ip_olt     = oltNew.ipOlt;
            facility.shelf      = ctoOld.shelf_slot_porta.Split('/').First();
            facility.slot       = ctoOld.shelf_slot_porta.Split('/')[1];
            facility.porta      = ctoOld.shelf_slot_porta.Split('/').Last();

            facility.circuito_novo         = oltNew.circuito.TrimStart();
            facility.status_novo           = oltNew.status;
            facility.cliente_novo          = oltNew.cliente;
            facility.produto_novo          = oltNew.produto;
            facility.banda_mb_novo         = oltNew.banda_mb;
            facility.banda_uplink_novo     = oltNew.banda_uplink;
            facility.ont_id_novo           = oltNew.ont_id;
            facility.serial_novo           = oltNew.serial;
            facility.vlan_inner_novo       = oltNew.vlan_inner;
            facility.vlan_novo             = oltNew.vlan_outer;
            facility.validade_reserva_novo = oltNew.validade_reserva;

            facility.circuito_antigo         = oltOld.circuito;
            facility.status_antigo           = oltOld.status;
            facility.cliente_antigo          = oltOld.cliente;
            facility.produto_antigo          = oltOld.produto;
            facility.banda_mb_antigo         = oltOld.banda_mb;
            facility.banda_uplink_antigo     = oltOld.banda_uplink;
            facility.ont_id_antigo           = oltOld.ont_id;
            facility.serial_antigo           = oltOld.serial;
            facility.vlan_inner_antigo       = oltOld.vlan_inner;
            facility.vlan_antigo             = oltOld.vlan_outer;
            facility.validade_reserva_antigo = oltOld.validade_reserva;
            facilityHistoricDal.save(facility);
        }
예제 #2
0
        public void redesignateFacility(string usuario, int idOltActual, int idOltNew, int pointIdActual, int subPortaIdActual, int pointIdNew, int subPortaIdNew, string circuito, string status)
        {
            try
            {
                FacilityDal facilityDal = new FacilityDal();
                Olt         olt         = new Olt();
                olt            = facilityDal.getOLTAttributsByIdSubPorta(subPortaIdActual, idOltNew);
                olt.idSubPorta = subPortaIdNew;
                olt.acao       = "REDESIGNAR";
                olt.copyVlan   = (idOltActual.Equals(idOltNew) ? true : false);
                operationsCmAPI.atualizaPontoCompoment(pointIdNew, circuito, status);
                operationsCmAPI.atualizaAtributosPortaOLT(olt);

                if (olt.copyVlan == false)
                {
                    FacilityHistoricDal facilityHistoricDal = new FacilityHistoricDal();
                    Facility            facility            = new Facility();
                    Cto cto = new Cto();
                    cto = facilityDal.getCtoDetaisPort(pointIdNew);

                    facility.usuario    = usuario;
                    facility.cto        = cto.nome;
                    facility.cnl        = cto.cnl;
                    facility.localidade = cto.localidade;
                    facility.porta_cto  = cto.ponto;
                    facility.ip_olt     = olt.ipOlt;
                    facility.shelf      = cto.shelf_slot_porta.Split('/').First();
                    facility.slot       = cto.shelf_slot_porta.Split('/')[1];
                    facility.porta      = cto.shelf_slot_porta.Split('/').Last();

                    facility.circuito_novo     = olt.circuito;
                    facility.status_novo       = olt.status;
                    facility.cliente_novo      = olt.cliente;
                    facility.produto_novo      = olt.produto;
                    facility.banda_mb_novo     = olt.banda_mb;
                    facility.banda_uplink_novo = olt.banda_uplink;
                    facility.ont_id_novo       = olt.ont_id;
                    facility.serial_novo       = olt.serial;
                    string vlan_outer_inner = facilityDal.getVlanByIdSubPorta(subPortaIdNew);
                    facility.vlan_inner_novo       = vlan_outer_inner.Split(':').Last();
                    facility.vlan_novo             = vlan_outer_inner.Split(':').First();
                    facility.validade_reserva_novo = olt.validade_reserva;

                    facility.circuito_antigo         = olt.circuito;
                    facility.status_antigo           = olt.status;
                    facility.cliente_antigo          = olt.cliente;
                    facility.produto_antigo          = olt.produto;
                    facility.banda_mb_antigo         = olt.banda_mb;
                    facility.banda_uplink_antigo     = olt.banda_uplink;
                    facility.ont_id_antigo           = olt.ont_id;
                    facility.serial_antigo           = olt.serial;
                    facility.vlan_inner_antigo       = olt.vlan_inner;
                    facility.vlan_antigo             = olt.vlan_outer;
                    facility.validade_reserva_antigo = olt.validade_reserva;
                    facilityHistoricDal.save(facility);
                }

                operationsCmAPI.atualizaPontoCompoment(pointIdActual, string.Empty, "VAGO");
                olt.idSubPorta = subPortaIdActual;
                operationsCmAPI.atualizaAtributosPortaOLT(clearOlt(olt));
            }
            catch (Exception ex)
            {
                throw new Exception(ex.Message);
            }
        }