Reemplaza al addon .NET Framework (SolucionLibros). Genera Devoluciones de mercancías enlazadas a sus Entradas por compra a partir de un listado pegado desde Excel. - libs/shared (@dp/shared): modelos y lógica de dominio pura (FIFO, consolidación por proveedor, parseo del portapapeles), portada del addon. - apps/api (NestJS): cliente del Service Layer con cola por sesión, login con la sesión de SAP, metadatos (UDT/UDF/UDO) y botón Reconstruir, catálogos, planificaciones (pegar, procesar, reprocesar, marcar líneas, crear Devoluciones, cerrar), listado paginado con filtros y descarga de PDF de la Guía de despacho desde BES. Sirve también la web compilada, con HTTPS opcional. - apps/web (Angular): login, Configuración → Metadatos y Planificaciones (listado, nueva, detalle). - deploy/windows y scripts/publicar.mjs: despliegue como servicio de Windows con WinSW. Verificado contra el Service Layer de SQL Server. Sin probar aún: SAP HANA y la instalación del servicio en Windows (ver CLAUDE.md, sección "Sin verificar"). Co-Authored-By: Claude Sonnet 5.5 <noreply@anthropic.com>
26 lines
762 B
PowerShell
26 lines
762 B
PowerShell
<#
|
|
.SYNOPSIS
|
|
Detiene y elimina el servicio de Windows. No borra los archivos ni los logs.
|
|
#>
|
|
#Requires -RunAsAdministrator
|
|
[CmdletBinding()]
|
|
param([string]$NombreServicio = 'DevolucionProveedores')
|
|
|
|
$ErrorActionPreference = 'Stop'
|
|
$exe = Join-Path $PSScriptRoot 'servicio\devolucion-api.exe'
|
|
|
|
if (-not (Get-Service -Name $NombreServicio -ErrorAction SilentlyContinue)) {
|
|
Write-Host "El servicio '$NombreServicio' no existe."
|
|
exit 0
|
|
}
|
|
if (-not (Test-Path $exe)) {
|
|
Write-Host "No se encontró $exe; se intentará con sc.exe."
|
|
& sc.exe stop $NombreServicio | Out-Null
|
|
& sc.exe delete $NombreServicio
|
|
exit $LASTEXITCODE
|
|
}
|
|
|
|
& $exe stop
|
|
& $exe uninstall
|
|
Write-Host "Servicio '$NombreServicio' eliminado. Los archivos y los logs siguen en $PSScriptRoot."
|