$itemGroup = 100; } // Abre a conexao com o banco de dados $dataConnector = new DataConnector('both'); $dataConnector->OpenConnection(); if ($dataConnector->mysqlConnection == null || $dataConnector->sqlserverConnection == null) { echo 'Não foi possível se connectar ao bando de dados!'; exit; } $nivelAutorizacao = GetAuthorizationLevel($dataConnector->mysqlConnection, $functionalities["gerenciamentoEquipmtPecas"]); if ($nivelAutorizacao <= 1) { DisplayNotAuthorizedWarning(); exit; } // Cria os objetos de mapeamento objeto-relacional $inventoryItemDAO = new InventoryItemDAO($dataConnector->sqlserverConnection); $inventoryItemDAO->showErrors = 1; $counterDAO = new CounterDAO($dataConnector->mysqlConnection); $counterDAO->showErrors = 1; // Traz os grupos existentes no cadastro de items $itemGroupArray = $inventoryItemDAO::GetItemGroups($dataConnector->sqlserverConnection); // Traz os contadores cadastrados no sistema $counterArray = $counterDAO->RetrieveRecordArray("id > 0 LIMIT 0, 3"); // exibe apenas os 3 primeiros $itemCode = ""; $inventoryItem = new InventoryItemDTO(); if (isset($_REQUEST["itemCode"]) && $_REQUEST["itemCode"] != "") { $itemCode = urldecode($_REQUEST["itemCode"]); $inventoryItem = $inventoryItemDAO->RetrieveRecord($itemCode); } function BuildSerializedContent($content)
$itemGroup = 100; } // Abre a conexao com o banco de dados $dataConnector = new DataConnector('both'); $dataConnector->OpenConnection(); if ($dataConnector->mysqlConnection == null || $dataConnector->sqlserverConnection == null) { echo 'Não foi possível se connectar ao bando de dados!'; exit; } $nivelAutorizacao = GetAuthorizationLevel($dataConnector->mysqlConnection, $functionalities["gerenciamentoEquipmtPecas"]); if ($nivelAutorizacao <= 1) { DisplayNotAuthorizedWarning(); exit; } // Cria o objeto de mapeamento objeto-relacional $inventoryItemDAO = new InventoryItemDAO($dataConnector->sqlserverConnection); $inventoryItemDAO->showErrors = 1; // Traz a lista de items de inventário $filter = "ItmsGrpCod=" . $itemGroup; $inventoryItemArray = $inventoryItemDAO->RetrieveRecordArray($filter); ?> <h1>Administração - Inventário</h1> <h1><?php echo str_pad('_', 64, '_', STR_PAD_LEFT); ?> </h1> <br/> <script type="text/javascript" > var pageLoad = true;
include_once "../DataTransferObjects/InventoryItemDTO.php"; $sortedBy = $_GET['sortedBy']; $defaultItemCode = $_GET['defaultItemCode']; // Abre a conexao com o banco de dados $dataConnector = new DataConnector('sqlServer'); $dataConnector->OpenConnection(); if ($dataConnector->sqlserverConnection == null) { echo 'Não foi possível se connectar ao bando de dados!'; exit; } // Busca os items cadastrados $orderBy = "ORDER BY ItemName"; if ($sortedBy == 2) { $orderBy = "ORDER BY ItemCode"; } $inventoryItemDAO = new InventoryItemDAO($dataConnector->sqlserverConnection); $inventoryItemDAO->showErrors = 1; $inventoryItemArray = $inventoryItemDAO->RetrieveRecordArray("ItemName IS NOT NULL " . $orderBy); foreach ($inventoryItemArray as $item) { $attributes = ""; if ($item->itemCode == $defaultItemCode) { $attributes = "selected='selected'"; } $option = "<option " . $attributes . " value=" . $item->itemCode . " alt=" . $item->avgPrice . " >" . $item->itemName . " ( Código: " . $item->itemCode . " )" . "</option>"; if ($sortedBy == 2) { $option = "<option " . $attributes . " value=" . $item->itemCode . " alt=" . $item->avgPrice . " >" . $item->itemCode . " ( " . $item->itemName . " )" . "</option>"; } echo $option; } // Fecha a conexão com o banco de dados $dataConnector->CloseConnection();
include_once "../DataTransferObjects/ReadingDTO.php"; $supplyRequestId = $_GET['supplyRequestId']; $cutoffDate = $_GET['cutoffDate']; // Abre a conexao com o banco de dados $dataConnector = new DataConnector('both'); $dataConnector->OpenConnection(); if ($dataConnector->mysqlConnection == null || $dataConnector->sqlserverConnection == null) { echo 'Não foi possível se connectar ao bando de dados!'; exit; } // Cria os objetos de mapeamento objeto relacional $supplyRequestDAO = new SupplyRequestDAO($dataConnector->mysqlConnection); $supplyRequestDAO->showErrors = 1; $requestItemDAO = new RequestItemDAO($dataConnector->mysqlConnection); $requestItemDAO->showErrors = 1; $inventoryItemDAO = new InventoryItemDAO($dataConnector->sqlserverConnection); $inventoryItemDAO->showErrors = 1; $readingDAO = new ReadingDAO($dataConnector->mysqlConnection); $readingDAO->showErrors = 1; // Busca os dados da solicitação de consumível $equipmentCode = 0; $itemEnumeration = ''; $supplyRequest = $supplyRequestDAO->RetrieveRecord($supplyRequestId); if ($supplyRequest != null) { $equipmentCode = $supplyRequest->codigoCartaoEquipamento; $reqItemArray = $requestItemDAO->RetrieveRecordArray("pedidoConsumivel_id=" . $supplyRequest->id); foreach ($reqItemArray as $reqItem) { if (!empty($itemEnumeration)) { $itemEnumeration .= ', '; } $itemEnumeration .= "'" . $reqItem->codigoItem . "'";
// Busca os itens da solicitação $firstCondition = 'pedidoConsumivel_id IS NULL'; if ($supplyRequestId != 0) { $firstCondition = 'pedidoConsumivel_id=' . $supplyRequestId; } $secondCondition = 'pedidoPecaReposicao_id IS NULL'; if ($partRequestId != 0) { $secondCondition = 'pedidoPecaReposicao_id=' . $partRequestId; } $filter = $firstCondition . ' AND ' . $secondCondition; $requestItemArray = $requestItemDAO->RetrieveRecordArray($filter); if (sizeof($requestItemArray) == 0) { echo '<tr><td colspan="5" align="center" >Nenhum registro encontrado!</td></tr>'; } foreach ($requestItemArray as $requestItem) { $stockQuantity = InventoryItemDAO::GetStockQuantity($dataConnector->sqlserverConnection, $requestItem->codigoItem); $stockQuantity = number_format($stockQuantity, 0); ?> <tr rel="<?php echo $requestItem->codigoItem; ?> " rev="<?php echo $requestItem->quantidade; ?> " > <td title="Quantidade em estoque: <?php echo $stockQuantity; ?> " > <?php echo $requestItem->codigoItem;
function BuildRows($valuesOnly) { global $dataConnector; global $itemArray; global $calculoFaturamento; global $totalContadores; // Cria os objetos de mapeamento objeto-relacional $subContractDAO = new SubContractDAO($dataConnector->mysqlConnection); $subContractDAO->showErrors = 1; $businessPartnerDAO = new BusinessPartnerDAO($dataConnector->sqlserverConnection); $businessPartnerDAO->showErrors = 1; $equipmentDAO = new EquipmentDAO($dataConnector->sqlserverConnection); $equipmentDAO->showErrors = 1; $inventoryItemDAO = new InventoryItemDAO($dataConnector->sqlserverConnection); $inventoryItemDAO->showErrors = 1; // Para cada equipamento monta os dados de faturamento foreach ($itemArray as $contractItem) { $equipmentId = $contractItem->codigoCartaoEquipamento; $subContract = $subContractDAO->RetrieveRecord($contractItem->codigoSubContrato); $contractType = $subContract->codigoTipoContrato; $contractDTO = $calculoFaturamento->GetContract($dataConnector->mysqlConnection, $subContract->id); $divisor = $calculoFaturamento->GetDivisor($dataConnector->mysqlConnection, $contractDTO, $subContract); // divisor para calculo da média (no caso de contrato global) // Caso o status do contrato seja finalizado ou cancelado não fatura, passa para o proximo equipamento if ($contractDTO->status == 3 || $contractDTO->status == 4) { continue; } $equipmentDTO = $equipmentDAO->RetrieveRecord($equipmentId); $inventoryItem = $inventoryItemDAO->RetrieveRecord($equipmentDTO->itemCode); $contractTypeInfo = $calculoFaturamento->GetTipoContratoAsText($contractType); $equipmentInfo = GetEquipmentInfo($equipmentDTO, $contractTypeInfo); echo '<tr bgcolor="LIGHTGRAY" ><td colspan="11" >' . $equipmentInfo . '</td></tr>'; $counterIdArray = array_keys($calculoFaturamento->GetContadores()); foreach ($counterIdArray as $counterId) { $billingSummary = $totalContadores[$counterId]; $formaCobranca = $calculoFaturamento->GetFormaCobranca($subContract->id, $counterId); $consumo = $calculoFaturamento->GetConsumo($equipmentId, $counterId); $consumoGlobal = 0; $excedenteGlobal = 0; if ($contractDTO->global) { $consumoGlobal = $calculoFaturamento->GetConsumoGlobal($dataConnector->mysqlConnection, $contractDTO->id, $counterId); $franquiaGlobal = $calculoFaturamento->GetFranquiaGlobal($dataConnector->mysqlConnection, $counterId); $excedenteGlobal = $consumoGlobal > $franquiaGlobal ? $consumoGlobal - $franquiaGlobal : 0; if ($franquiaGlobal == 0) { $excedenteGlobal = 0; } } $modalidadeMedicao = 0; $fixo = 0.0; $variavelDefault = 0.0; $franquia = 0; $individualPorCapacidade = 0; if ($formaCobranca != null) { $modalidadeMedicao = $formaCobranca->modalidadeMedicao; $fixo = $formaCobranca->fixo / $divisor; $variavelDefault = $formaCobranca->variavel; $franquia = $formaCobranca->franquia / $divisor; $individualPorCapacidade = $formaCobranca->individual; if ($individualPorCapacidade) { $franquia = $equipmentDTO->capacity; } } if ($modalidadeMedicao == 1) { // Sem leituras $rowData = '<td>' . $calculoFaturamento->GetContadorAsText($counterId) . '</td><td>Sem leitura</td><td>Sem leitura</td><td>Sem leitura</td><td>0</td><td>0</td><td>0</td><td>0</td><td>' . formatBrCurrency($fixo, 2) . '</td><td>0</td><td>' . formatBrCurrency($fixo, 2) . '</td>'; if ($valuesOnly) { $rowData = '<td>' . $equipmentId . '</td><td>' . $contractTypeInfo . '</td><td>' . $counterId . '</td><td>Sem leitura</td><td>Sem leitura</td><td>Sem leitura</td><td>0</td><td>0</td><td>0</td><td>0</td><td>0</td><td>' . $fixo . '</td><td>0</td><td>' . $fixo . '</td>'; } echo '<tr bgcolor="WHITE" >' . $rowData . '</tr>'; $billingSummary->valorFixo += $fixo; $billingSummary->excedente += 0; $billingSummary->valorTotal += $fixo; } if ($consumo != null && $modalidadeMedicao != 1) { $dataLeitura = $consumo->dataLeitura; $medicaoInicial = $consumo->medicaoInicial; $medicaoFinal = $consumo->medicaoFinal; $consumoMedido = $consumo->total; $ajuste = $consumo->ajusteTotal; $excedente = $consumoMedido > $franquia ? $consumoMedido - $franquia : 0; if ($contractDTO->global && !$individualPorCapacidade) { $excedente = $excedenteGlobal / sizeof($itemArray); } if ($franquia == 0) { $excedente = 0; } $tarifaExcedente = $calculoFaturamento->GetCustoVariavel($subContract->id, $counterId, $consumoMedido, $variavelDefault); if ($contractDTO->global && !$individualPorCapacidade) { $tarifaExcedente = $calculoFaturamento->GetCustoVariavel($subContract->id, $counterId, $consumoGlobal, $variavelDefault); } $valorFixo = $fixo; $valorVariavel = $franquia != 0 ? $excedente * $tarifaExcedente : $consumoMedido * $tarifaExcedente; $valorTotal = $valorFixo + $valorVariavel; $rowData = '<td>' . $calculoFaturamento->GetContadorAsText($counterId) . '</td><td>' . date("d/m/Y", $dataLeitura) . '</td><td>' . $medicaoFinal . '</td><td>' . $medicaoInicial . '</td><td>' . $consumoMedido . '<br/>(Acrésc/Desc = ' . $ajuste . ')' . '</td><td>' . formatDecimal($franquia, 2) . '</td><td>' . round($excedente) . '</td><td>' . formatDecimal($tarifaExcedente, null) . '</td><td>' . formatBrCurrency($valorFixo, 2) . '</td><td>' . formatBrCurrency($valorVariavel, 2) . '</td><td>' . formatBrCurrency($valorTotal, 2) . '</td>'; if ($valuesOnly) { $rowData = '<td>' . $equipmentId . '</td><td>' . $contractTypeInfo . '</td><td>' . $counterId . '</td><td>' . date("Y-m-d", $dataLeitura) . '</td><td>' . $medicaoFinal . '</td><td>' . $medicaoInicial . '</td><td>' . $consumoMedido . '</td><td>' . $ajuste . '</td><td>' . $franquia . '</td><td>' . $excedente . '</td><td>' . $tarifaExcedente . '</td><td>' . $valorFixo . '</td><td>' . $valorVariavel . '</td><td>' . $valorTotal . '</td>'; } echo '<tr bgcolor="WHITE" >' . $rowData . '</tr>'; $billingSummary->consumo += $consumoMedido; $billingSummary->franquia += $franquia; $billingSummary->excedente += $excedente; $billingSummary->valorFixo += $valorFixo; $billingSummary->valorVariavel += $valorVariavel; $billingSummary->valorTotal += $valorTotal; } } // foreach de tipos de contador } // foreach de itens de faturamento (equipamentos) }
function BuildReportTable($startColumn, $startRow) { global $root; global $dataConnector; global $objPhpExcel; global $billingItemArray; $businessPartnerDAO = new BusinessPartnerDAO($dataConnector->sqlserverConnection); $businessPartnerDAO->showErrors = 1; $industryDAO = new IndustryDAO($dataConnector->sqlserverConnection); $industryDAO->showErrors = 1; $equipmentDAO = new EquipmentDAO($dataConnector->sqlserverConnection); $equipmentDAO->showErrors = 1; $equipmentModelDAO = new EquipmentModelDAO($dataConnector->mysqlConnection); $equipmentModelDAO->showErrors = 1; $manufacturerDAO = new ManufacturerDAO($dataConnector->sqlserverConnection); $manufacturerDAO->showErrors = 1; $contractDAO = new ContractDAO($dataConnector->mysqlConnection); $contractDAO->showErrors = 1; $inventoryItemDAO = new InventoryItemDAO($dataConnector->sqlserverConnection); $inventoryItemDAO->showErrors = 1; $counterDAO = new CounterDAO($dataConnector->mysqlConnection); $counterDAO->showErrors = 1; $salesPersonDAO = new SalesPersonDAO($dataConnector->sqlserverConnection); $salesPersonDAO->showErrors = 1; // Busca os segmentos/ramos de atividade cadastrados no sistema $industryArray = array(0 => ""); $tempArray = $industryDAO->RetrieveRecordArray(); foreach ($tempArray as $industry) { $industryArray[$industry->id] = $industry->name; } // Busca os fabricantes cadastrados no sistema $manufacturerArray = array(0 => ""); $tempArray = $manufacturerDAO->RetrieveRecordArray(); foreach ($tempArray as $manufacturer) { $manufacturerArray[$manufacturer->FirmCode] = $manufacturer->FirmName; } // Busca os modelos de equipamento cadastrados no sistema $modelArray = array(0 => ""); $equipmentModelArray = $equipmentModelDAO->RetrieveRecordArray(); foreach ($equipmentModelArray as $modelDTO) { $modelArray[$modelDTO->id] = $modelDTO->modelo; } // Cria um array para as estatísticas dos equipamentos (por modelo) $statsArray = array(); $equipmentModelArray = $equipmentModelDAO->RetrieveRecordArray("id > 0 ORDER BY fabricante, modelo"); foreach ($equipmentModelArray as $modelDTO) { $statsArray[$modelDTO->id] = new EquipmentModelStats($modelDTO->id, $modelDTO->modelo, $modelDTO->fabricante); } // Cria um array para as receitas de cada equipamento $equipRevenueArray = array(); // Cria um array para as receitas provenientes de cada cliente $customerRevenueArray = array(); $associativeList = array(0 => ""); foreach ($equipmentModelArray as $model) { $associativeList[$model->id] = $manufacturerArray[$model->fabricante]; } // Busca os contadores cadastrados no sistema $retrievedArray = $counterDAO->RetrieveRecordArray(); $counterArray = array(); foreach ($retrievedArray as $counter) { $counterArray[$counter->id] = $counter->nome; } // Busca os vendedores cadastrados no sistema $retrievedArray = $salesPersonDAO->RetrieveRecordArray(); $salesPersonArray = array(); foreach ($retrievedArray as $salesPersonDTO) { $salesPersonArray[$salesPersonDTO->slpCode] = $salesPersonDTO->slpName; } // Define o titulo da tabela $currentRow = $startRow; $activeSheet = $objPhpExcel->getActiveSheet(); $activeSheet->setCellValue($startColumn . $startRow, 'SÍNTESE POR EQUIPAMENTO'); $styleArray = array('font' => array('bold' => true, 'size' => 16)); $activeSheet->getStyle($startColumn . $startRow . ':' . $startColumn . $startRow)->applyFromArray($styleArray); // Cria o cabeçalho da tabela $colNum = ord($startColumn) - 65; // startColumn é uma letra no intervalo A-Z $headers = array('Cliente', 'Segmento', 'Modelo', 'Fabricante', 'Série Fabricante', 'Nosso Núm. Série', 'Obs. Item', 'Data Instalação', 'Inicio Atendimento', 'Fim Atendimento', 'Parcela Atual', 'Vendedor', 'Medidor', 'Data Leitura', 'Medição Final', 'Medição Inicial', 'Ajuste Medição(Acrésc/Desc)', 'Consumo', 'Franquia', 'Excedente (Págs.)', 'Tarifa sobre exced.', 'Valor Fixo (R$)', 'Valor Variável (R$)', 'Acrésc/Desc (R$)', 'Valor Total (R$)', 'Custo Aquisição', 'Vida Útil', 'Custo Pág. do Equip.', 'Custo Pág. Peças/Mat.', 'Custo Pág. Total', 'Custo/Receita', 'Despesas'); $offset = 0; foreach ($headers as $header) { $activeSheet->getColumnDimension(GetNameFromNumber($colNum + $offset))->setWidth(30); $offset++; } $currentRow++; InsereLinhaPlanilha($currentRow, $startColumn, $headers, PHPExcel_Style_Color::COLOR_YELLOW, 30, PHPExcel_Style_Alignment::HORIZONTAL_CENTER); // Gera as linhas da tabela $totalFixo = 0; $totalVariavel = 0; $totalAcrescDesc = 0; $grandTotal = 0; foreach ($billingItemArray as $billingItem) { $equipment = $equipmentDAO->RetrieveRecord($billingItem->codigoCartaoEquipamento); $businessPartner = $businessPartnerDAO->RetrieveRecord($equipment->customer); $contractCoveragePeriod = ContractDAO::GetContractCoveragePeriod($dataConnector->mysqlConnection, $billingItem->contrato_id); $installationDate = empty($equipment->installationDate) ? '' : $equipment->installationDate->format('d/m/Y'); $inicioAtendimento = isset($contractCoveragePeriod) ? $contractCoveragePeriod["inicioAtendimento"] : ''; $fimAtendimento = isset($contractCoveragePeriod) ? $contractCoveragePeriod["fimAtendimento"] : ''; $parcelaAtual = isset($contractCoveragePeriod) ? $contractCoveragePeriod["parcelaAtual"] : ''; $receitaTotal = $billingItem->total + $billingItem->acrescimoDesconto; $inventoryItem = $inventoryItemDAO->RetrieveRecord($equipment->itemCode); $obsItem = $inventoryItem->userText; $custoAquisicao = $inventoryItem->avgPrice; $custoPagPecas = $inventoryItem->expenses; $vidaUtil = $inventoryItem->durability; if (empty($vidaUtil)) { $custoPagEquip = 0; $custoTotal = 0; $custoSobreReceita = 0; } else { $custoPagEquip = $custoAquisicao / $vidaUtil * 1.4; $custoTotal = ($custoPagEquip + $custoPagPecas) * $billingItem->consumo; $custoSobreReceita = 0; if ($receitaTotal != 0) { $custoSobreReceita = $custoTotal / $receitaTotal; } } // Busca os dados do vendedor $salesPersonCode = $equipment->salesPerson; if (empty($salesPersonCode)) { $salesPersonCode = -1; } $salesPersonName = $salesPersonArray[$salesPersonCode]; // Busca os dados do segmento/ramo de atividade $industryCode = $businessPartner->industry; if (empty($industryCode)) { $industryCode = 0; } $industryName = $industryArray[$industryCode]; // Busca o modelo e fabricante do equipamento $modelName = ""; if (array_key_exists($equipment->model, $modelArray)) { $modelName = $modelArray[$equipment->model]; } $manufacturerName = ""; if (array_key_exists($equipment->model, $modelArray)) { $manufacturerName = $associativeList[$equipment->model]; } if (!array_key_exists($equipment->manufacturerSN, $equipRevenueArray)) { $equipRevenueArray[$equipment->manufacturerSN] = new EquipmentRevenue($equipment->manufacturerSN, $equipment->model, $modelName, $manufacturerName, 0); } $equipRevenue = $equipRevenueArray[$equipment->manufacturerSN]; $equipRevenue->revenue += $receitaTotal; if (!array_key_exists($equipment->customer, $customerRevenueArray)) { $customerRevenueArray[$equipment->customer] = new CustomerRevenue($equipment->customer, 0); } $customerRevenue = $customerRevenueArray[$equipment->customer]; $customerRevenue->revenue += $receitaTotal; $row = array(); $row[0] = $businessPartner->cardName . ' (' . $businessPartner->cardCode . ')'; $row[1] = $industryName; $row[2] = $modelName; $row[3] = $manufacturerName; $row[4] = $equipment->manufacturerSN; $row[5] = $equipment->internalSN; $row[6] = $obsItem; $row[7] = $installationDate; $row[8] = $inicioAtendimento; $row[9] = $fimAtendimento; $row[10] = $parcelaAtual; $row[11] = $salesPersonName; $row[12] = $counterArray[$billingItem->counterId]; // Recupera o nome do medidor/contador $row[13] = $billingItem->dataLeitura; $row[14] = $billingItem->medicaoFinal; $row[15] = $billingItem->medicaoInicial; $row[16] = $billingItem->ajuste; $row[17] = $billingItem->consumo; $row[18] = $billingItem->franquia; $row[19] = $billingItem->excedente; $row[20] = formatDecimal($billingItem->tarifaSobreExcedente, null); $row[21] = formatBrCurrency($billingItem->fixo, 2); $row[22] = formatBrCurrency($billingItem->variavel, 2); $row[23] = formatBrCurrency($billingItem->acrescimoDesconto, 2); $row[24] = formatBrCurrency($receitaTotal, 2); $row[25] = formatBrCurrency($custoAquisicao, 2); $row[26] = $vidaUtil; $row[27] = formatDecimal($custoPagEquip, 6); $row[28] = formatDecimal($custoPagPecas, 6); $row[29] = formatBrCurrency($custoTotal, 2); $row[30] = formatDecimal($custoSobreReceita, 6); $row[31] = 'http://datadb/contratos/AjaxCalls/GetEquipmentExpenses.php?equipmentCode=' . $equipment->insID . '&billingId=' . $billingItem->codigoFaturamento . '&showDetails=true'; $currentRow++; InsereLinhaPlanilha($currentRow, $startColumn, $row); $totalFixo += $billingItem->fixo; // Soma os valores fixos dos equipamentos $totalVariavel += $billingItem->variavel; // Soma os valores variáveis dos equipamentos $totalAcrescDesc += $billingItem->acrescimoDesconto; // Soma os acrescimos descontos dos equipamentos $grandTotal += $receitaTotal; // Soma a receita total dos equipamentos ( fixo mais variável ) } $currentRow++; $summary = array('Quant. Clientes: ' . sizeof($customerRevenueArray), '', '', '', 'Quant. Equipamentos: ' . sizeof($equipRevenueArray), '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', '', 'Total Fixo: ' . number_format($totalFixo, 2, ',', '.'), 'Total Variável: ' . number_format($totalVariavel, 2, ',', '.'), 'Total Acrésc/Desc: ' . number_format($totalAcrescDesc, 2, ',', '.'), 'Total Receita: ' . number_format($grandTotal, 2, ',', '.'), '', '', '', '', '', '', ''); InsereLinhaPlanilha($currentRow, $startColumn, $summary, '80BB80FF', 32, PHPExcel_Style_Alignment::HORIZONTAL_CENTER); foreach ($equipRevenueArray as $equipRevenue) { if (array_key_exists($equipRevenue->modelId, $statsArray)) { $modelStats = $statsArray[$equipRevenue->modelId]; $modelStats->revenue += $equipRevenue->revenue; $modelStats->equipmentCount += 1; } } $currentRow += 3; // pula 3 linhas $startColumn = 'G'; // fixa o quadro resumo na setima coluna da planilha // Define o titulo do quadro resumo $activeSheet = $objPhpExcel->getActiveSheet(); $activeSheet->setCellValue($startColumn . $currentRow, 'QUADRO RESUMO'); $styleArray = array('font' => array('bold' => true, 'size' => 16)); $activeSheet->getStyle($startColumn . $currentRow . ':' . $startColumn . $currentRow)->applyFromArray($styleArray); // Cria o cabeçalho do quadro resumo $colNum = ord($startColumn); $headers = array('Modelo', 'Fabricante', 'Quantidade', 'Receita'); $offset = 0; foreach ($headers as $header) { $activeSheet->getColumnDimension(chr($colNum + $offset))->setWidth(25); $offset++; } $currentRow++; InsereLinhaPlanilha($currentRow, $startColumn, $headers, PHPExcel_Style_Color::COLOR_YELLOW, 30, PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $valorPrevio = ""; $equipCount = 0; $somaReceita = 0; foreach ($statsArray as $equipmentModelStats) { if ($equipmentModelStats->equipmentCount > 0) { $manufacturerName = $manufacturerArray[$equipmentModelStats->fabricante]; $valorAtual = $manufacturerName; if ($valorPrevio != $valorAtual) { if (!empty($valorPrevio)) { $subTotal = array('', '', $equipCount, number_format($somaReceita, 2, ',', '.')); $currentRow++; InsereLinhaPlanilha($currentRow, $startColumn, $subTotal, '80AAFFFF', 20, PHPExcel_Style_Alignment::HORIZONTAL_CENTER); $equipCount = 0; $somaReceita = 0; } $valorPrevio = $valorAtual; } $currentRow++; $row = array(); $row[0] = $equipmentModelStats->model; $row[1] = $manufacturerName; $row[2] = $equipmentModelStats->equipmentCount; $row[3] = number_format($equipmentModelStats->revenue, 2, ',', '.'); InsereLinhaPlanilha($currentRow, $startColumn, $row); $equipCount = $equipCount + $equipmentModelStats->equipmentCount; $somaReceita = $somaReceita + $equipmentModelStats->revenue; } } $subTotal = array('', '', $equipCount, number_format($somaReceita, 2, ',', '.')); $currentRow++; InsereLinhaPlanilha($currentRow, $startColumn, $subTotal, '80AAFFFF', 20, PHPExcel_Style_Alignment::HORIZONTAL_CENTER); }
<?php $itemCode = $_GET['itemCode']; include_once "../defines.php"; include_once "../ClassLibrary/DataConnector.php"; include_once "../DataAccessObjects/InventoryItemDAO.php"; include_once "../DataTransferObjects/InventoryItemDTO.php"; // Abre a conexao com o banco de dados $dataConnector = new DataConnector('sqlServer'); $dataConnector->OpenConnection(); if ($dataConnector->sqlserverConnection == null) { echo 'Não foi possível se connectar ao bando de dados!'; exit; } // Busca a quantidade de itens em estoque $stockQuantity = InventoryItemDAO::GetStockQuantity($dataConnector->sqlserverConnection, $itemCode); $stockQuantity = number_format($stockQuantity, 0, '', ''); // Retorna o valor encontrado echo $stockQuantity; // Fecha a conexão com o banco de dados $dataConnector->CloseConnection();
include_once "../../DataAccessObjects/InventoryItemDAO.php"; include_once "../../DataTransferObjects/InventoryItemDTO.php"; if (!isset($_REQUEST["acao"])) { echo "Erro no processamento da requisição."; exit; } $acao = $_REQUEST["acao"]; // Abre a conexao com o banco de dados $dataConnector = new DataConnector('both'); $dataConnector->OpenConnection(); if ($dataConnector->mysqlConnection == null || $dataConnector->sqlserverConnection == null) { echo 'Não foi possível se connectar ao bando de dados!'; exit; } // Cria o objeto de mapeamento objeto-relacional $inventoryItemDAO = new InventoryItemDAO($dataConnector->sqlserverConnection); $inventoryItemDAO->showErrors = 1; $counterDAO = new CounterDAO($dataConnector->mysqlConnection); $counterDAO->showErrors = 1; // Traz os contadores cadastrados no sistema $counterArray = $counterDAO->RetrieveRecordArray(); if ($acao == "store") { if (isset($_REQUEST["itemCode"]) && $_REQUEST["itemCode"] != "") { $itemCode = $_REQUEST["itemCode"]; $inventoryItem = $inventoryItemDAO->RetrieveRecord($itemCode); } $inventoryItem->expenses = $_REQUEST["expenses"]; $inventoryItem->durability = $_REQUEST["durability"]; $inventoryItem->useInstructions = $_REQUEST["useInstructions"]; $xml = '<DurabilityAgents>'; foreach ($counterArray as $counter) {
if (sizeof($previousCallArray) == 1) { $previousCall = $previousCallArray[0]; } $callEnumeration = ""; foreach ($serviceCallArray as $call) { if (!empty($callEnumeration)) { $callEnumeration = $callEnumeration . ", "; } $callEnumeration = $callEnumeration . $call->id; } if (empty($callEnumeration)) { $callEnumeration = "0"; } $partReplacementDAO = new PartReplacementDAO($dataConnector->mysqlConnection); $partReplacementDAO->showErrors = 1; $inventoryItemDAO = new InventoryItemDAO($dataConnector->sqlserverConnection); $inventoryItemDAO->showErrors = 1; $partReplacementArray = $partReplacementDAO->RetrieveRecordArray("codigoChamado IN (" . $callEnumeration . ") AND codigoInsumo IS NULL ORDER BY dataAbertura DESC LIMIT 0, 6"); foreach ($partReplacementArray as $partReplacement) { $inventoryItem = $inventoryItemDAO->RetrieveRecord($partReplacement->codigoItem); $xml = simplexml_load_string($inventoryItem->serializedData); $counterTotal = 0; $readingArray = $readingDAO->RetrieveRecordArray("chamadoServico_id=" . $previousCall->id); foreach ($readingArray as $reading) { foreach ($xml as $element) { if ($reading->codigoContador == $element["id"]) { $counterTotal += $reading->contagem; } } } $counterTotalBefore = 0;