2026-05-19 10:32:21 -03:00

1089 lines
38 KiB
HTML
Raw Blame History

This file contains ambiguous Unicode characters

This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

<!DOCTYPE html>
<html lang="pt-BR">
<head>
<meta charset="utf-8" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<title>Solicitação de compra</title>
<!-- CSS -->
<link rel="stylesheet" type="text/css" href="/style-guide/css/fluig-style-guide.min.css">
<link rel="stylesheet" type="text/css" href="compras_design_system.css">
<link rel="stylesheet" type="text/css" href="comprasV2.css">
<link rel="stylesheet" type="text/css" href="style.css">
<!-- JS -->
<script src="/resources/js/jquery/jquery.js"></script>
<script src="/resources/js/jquery/jquery-ui.min.js"></script>
<script src="/resources/js/mustache/mustache-min.js"></script>
<script src="/style-guide/js/fluig-style-guide.min.js"></script>
<script type="text/javascript" src="/webdesk/vcXMLRPC.js"></script>
<script type="text/javascript" src="compras_config.js"></script>
<script type="text/javascript" src="compras_digital.js"></script>
<script type="text/javascript" src="anexos.js"></script>
<style>
/* Ajuste de altura e alinhamento dos botões com inputs */
.input-group .form-control,
.input-group .btn {
height: 34px;
line-height: 1.42857143;
box-sizing: border-box;
}
.input-group .btn {
padding-top: 6px;
padding-bottom: 6px;
}
h6 { color: #AFB0B3 !important; font-weight: normal !important; }
h2 {
color: #04506b !important;
display: flex !important;
flex-direction: row !important;
align-items: center;
gap: .5rem;
}
h2:after {
content: "" !important;
flex: 1 1 auto !important;
border-bottom: 2px solid #04506b !important;
margin-left: .5rem !important;
}
.flaticon { color: #04506b !important; }
#rcorners {
height: 110px;
line-height: 110px;
color: #fff;
border-radius: 0 0 50px 50px;
background: linear-gradient(90deg, rgba(4,80,107,1) 0%, rgba(4,80,107,1) 50%, rgba(4,80,107,1) 100%);
text-align: center !important;
margin-bottom: 24px;
}
.change-weight { font-weight: 400 !important; }
.sc-status-panel {
margin-top: 15px;
padding: 10px;
border: 1px solid #d8e1e8;
border-radius: 12px;
background: #f7fafc;
box-shadow: 0 2px 10px rgba(12, 50, 74, 0.08);
}
.sc-primary-grid,
.sc-secondary-grid {
display: grid;
grid-template-columns: repeat(3, minmax(150px, 1fr));
gap: 8px;
}
.sc-primary-grid {
margin-bottom: 8px;
}
.sc-secondary-grid {
gap: 8px;
}
.sc-info {
background: #fff;
border-radius: 8px;
padding: 8px 10px;
min-height: 52px;
}
.sc-info--primary {
border-left: 3px solid #04506b;
box-shadow: inset 0 0 0 1px #d9e4ec;
}
.sc-info--secondary {
box-shadow: inset 0 0 0 1px #e3ebf2;
opacity: .96;
}
.sc-info--clickable {
cursor: pointer;
transition: box-shadow .2s ease, transform .2s ease;
}
.sc-info--clickable:hover {
transform: translateY(-1px);
box-shadow: inset 0 0 0 1px #c8d9e7, 0 4px 12px rgba(8, 47, 72, 0.1);
}
.sc-label {
font-size: 10px;
color: #4d6073;
letter-spacing: .04em;
text-transform: uppercase;
margin-bottom: 3px;
}
.sc-value {
font-size: 13px;
font-weight: 600;
color: #24313f;
word-break: break-word;
}
.sc-info--primary .sc-value {
font-size: 13px;
line-height: 1.25;
color: #102a43;
font-weight: 700;
letter-spacing: .01em;
}
.sc-info--secondary .sc-value {
font-size: 13px;
line-height: 1.25;
color: #173750;
font-weight: 700;
}
.sc-hint {
display: block;
margin-top: 4px;
font-size: 10px;
color: #5f7386;
letter-spacing: .02em;
}
.sc-value.badge {
display: inline-flex;
align-items: center;
min-height: 24px;
padding: 4px 10px;
border-radius: 999px;
font-size: 11px;
font-weight: 700;
line-height: 1;
}
/* Oculta todas as seções de atividade por padrão.
O script.js revela apenas a(s) correta(s) via .show().
Isso evita que todas apareçam antes do $(document).ready executar. */
/* Atividades futuras são ocultadas via JS — não via CSS global */
/* Tabela de itens dentro do card */
.card-compras .table-compras { margin-bottom: 0; }
.card-compras { overflow-x: auto; }
/* ── Accordion de histórico de atividades ─────────────────── */
.activity-header {
display: flex;
align-items: center;
gap: 10px;
padding: 10px 14px;
margin-bottom: 4px;
background: #f0f7fb;
border: 1px solid #cde0ea;
border-radius: 8px;
cursor: pointer;
transition: background .15s;
user-select: none;
}
.activity-header:hover { background: #deeef7; }
.activity-header-check {
width: 20px; height: 20px;
border-radius: 50%;
background: #0e9f6e;
color: #fff;
font-size: 11px; font-weight: 700;
display: flex; align-items: center; justify-content: center;
flex-shrink: 0;
}
.activity-header-titulo {
font-size: 13px; font-weight: 700;
color: #04506b;
}
.activity-header-resumo {
font-size: 12px; color: #6b7280;
flex: 1; overflow: hidden;
white-space: nowrap; text-overflow: ellipsis;
}
.activity-header-caret {
font-size: 10px; color: #9ca3af;
transition: transform .2s;
flex-shrink: 0;
}
.activity.is-collapsed .activity-header-caret { transform: rotate(-90deg); }
.activity.is-collapsed .activity-body { display: none; }
.activity.accordion-pronto { margin-bottom: 6px; }
/* ──────────────────────────────────────────────────────────── */
/* Exibe apenas texto (sem fundo) nos cards de resumo do topo — intencional */
#statusSCProtheus_label,
#statusSC_label {
background: transparent !important;
border-radius: 0 !important;
min-height: 0 !important;
padding: 0 !important;
display: inline !important;
font-size: 13px !important;
font-weight: 700 !important;
line-height: 1.25 !important;
color: #1f3f56 !important;
}
.sc-timeline-wrap {
margin-top: 16px;
padding-top: 0;
border-top: 1px solid transparent;
transition: background-color .25s ease, max-height .25s ease, opacity .25s ease, padding-top .25s ease;
max-height: 0;
opacity: 0;
overflow: hidden;
pointer-events: none;
}
.sc-timeline-wrap.is-open {
padding-top: 14px;
border-top-color: #d7e2eb;
max-height: 3400px;
opacity: 1;
pointer-events: auto;
}
.sc-timeline-layout {
display: grid;
grid-template-columns: minmax(0, 1.3fr) minmax(0, 1fr);
gap: 12px;
align-items: start;
}
.sc-timeline-layout > div:last-child {
align-self: stretch;
}
.sc-timeline-panel {
padding: 12px;
border-radius: 10px;
background: #fff;
box-shadow: inset 0 0 0 1px #dfe8f0;
}
.sc-timeline-wrap.is-focus {
background: #f2f9ff;
border-radius: 8px;
}
.sc-timeline-title {
margin: 0 0 10px;
color: #12344d;
font-size: 13px;
font-weight: 700;
letter-spacing: .01em;
}
.sc-timeline {
list-style: none;
margin: 0;
padding: 0 0 0 18px;
position: relative;
}
.sc-timeline:before {
content: "";
position: absolute;
left: 5px;
top: 2px;
bottom: 2px;
width: 2px;
background: #c8d8e6;
}
.sc-timeline-item {
position: relative;
padding: 0 0 14px 16px;
}
.sc-timeline-item:last-child {
padding-bottom: 0;
}
.sc-timeline-item:before {
content: "";
position: absolute;
left: -18px;
top: 4px;
width: 10px;
height: 10px;
border-radius: 50%;
background: #92a9bf;
box-shadow: 0 0 0 2px #92a9bf;
border: 2px solid #fff;
}
.sc-timeline-item.done:before {
background: #1ab04a;
box-shadow: 0 0 0 2px #1ab04a;
}
.sc-timeline-item.pending:before {
background: #e6a229;
box-shadow: 0 0 0 2px #e6a229;
}
.sc-timeline-title-row {
display: flex;
align-items: baseline;
gap: 8px;
flex-wrap: wrap;
}
.sc-timeline-event {
color: #18354f;
font-size: 13px;
font-weight: 700;
}
.sc-timeline-time {
color: #6b7f92;
font-size: 12px;
font-weight: 500;
}
.sc-timeline-detail {
margin-top: 3px;
color: #3e556b;
font-size: 13px;
}
.sc-cotacao-track {
margin-top: 14px;
padding: 12px;
border-radius: 10px;
background: #fff;
box-shadow: inset 0 0 0 1px #dfe8f0;
}
.sc-cotacao-head {
display: flex;
align-items: center;
justify-content: space-between;
gap: 10px;
margin-bottom: 8px;
}
.sc-cotacao-list {
margin: 0;
padding: 0;
list-style: none;
}
.sc-cotacao-kpis {
display: grid;
grid-template-columns: repeat(3, minmax(120px, 1fr));
gap: 8px;
margin-bottom: 10px;
}
.sc-cotacao-kpi {
background: #f6f9fc;
border: 1px solid #e2eaf2;
border-radius: 8px;
padding: 8px 10px;
}
.sc-cotacao-kpi-label {
display: block;
font-size: 10px;
color: #65798c;
letter-spacing: .04em;
text-transform: uppercase;
margin-bottom: 3px;
}
.sc-cotacao-kpi-value {
font-size: 13px;
font-weight: 700;
color: #102a43;
}
.sc-cotacao-grid {
display: grid;
grid-template-columns: repeat(auto-fill, minmax(280px, 1fr));
gap: 10px;
}
.sc-cotacao-card {
border: 1px solid #dfe8f0;
border-left: 4px solid #8ea5b8;
border-radius: 10px;
padding: 10px 12px;
background: #fff;
}
.sc-cotacao-card--winner {
border-left-color: #18aa46;
box-shadow: 0 0 0 1px rgba(24, 170, 70, .15);
}
.sc-cotacao-card--homologado {
border-left-color: #20a7d8;
}
.sc-cotacao-card--novo {
border-left-color: #2e86ff;
}
.sc-cotacao-card--perdedor {
border-left-color: #e3a225;
}
.sc-cotacao-top {
display: flex;
align-items: flex-start;
justify-content: space-between;
gap: 8px;
}
.sc-cotacao-top > div {
min-width: 0;
flex: 1 1 auto;
padding-right: 4px;
}
.sc-cotacao-supplier {
color: #20384d;
font-size: 13px;
font-weight: 700;
line-height: 1.25;
overflow-wrap: anywhere;
word-break: break-word;
}
.sc-cotacao-code {
color: #62768a;
font-size: 12px;
margin-top: 2px;
overflow-wrap: anywhere;
word-break: break-word;
}
.sc-cotacao-top .badge {
align-self: start;
flex: 0 0 auto;
white-space: nowrap;
margin: 0 0 0 6px;
}
.sc-cotacao-meta {
display: grid;
grid-template-columns: 1fr 1fr;
gap: 8px;
margin-top: 8px;
}
.sc-cotacao-meta-box {
background: #f8fbfd;
border: 1px solid #e6edf3;
border-radius: 8px;
padding: 7px 8px;
}
.sc-cotacao-meta-label {
display: block;
font-size: 10px;
color: #6b7f92;
text-transform: uppercase;
letter-spacing: .04em;
margin-bottom: 2px;
}
.sc-cotacao-meta-value {
font-size: 14px;
font-weight: 700;
color: #1f384d;
}
.sc-cotacao-footer {
margin-top: 8px;
display: flex;
flex-wrap: wrap;
gap: 10px;
color: #4d6479;
font-size: 12px;
}
.sc-cotacao-empty {
border: 1px dashed #c6d5e2;
border-radius: 8px;
padding: 10px;
font-size: 13px;
color: #4f657a;
background: #f9fbfd;
}
.sc-pedido-track {
margin-top: 12px;
padding: 12px;
border-radius: 10px;
background: #fff;
box-shadow: inset 0 0 0 1px #dfe8f0;
}
.sc-timeline-layout .sc-pedido-track {
margin-top: 0;
}
.sc-pedido-resumo {
margin-top: 8px;
margin-bottom: 8px;
color: #26455d;
font-size: 13px;
line-height: 1.45;
}
.sc-pedido-assinaturas {
display: grid;
grid-template-columns: 1fr;
gap: 8px;
}
.sc-pedido-ass-card {
border: 1px solid #e3ebf2;
border-left: 4px solid #90a8bd;
border-radius: 8px;
padding: 8px 10px;
background: #fbfdff;
}
.sc-pedido-ass-card.aprovado {
border-left-color: #1aad4f;
}
.sc-pedido-ass-card.pendente {
border-left-color: #e2a223;
}
.sc-pedido-ass-card.bloqueado {
border-left-color: #d64f4f;
}
.sc-pedido-ass-header {
display: flex;
align-items: flex-start;
justify-content: space-between;
flex-wrap: wrap;
gap: 8px;
margin-bottom: 4px;
}
.sc-pedido-ass-title {
color: #1f3f56;
font-size: 13px;
font-weight: 700;
}
.sc-pedido-ass-meta {
display: flex;
flex-wrap: wrap;
gap: 10px;
color: #4b6176;
font-size: 12px;
line-height: 1.35;
}
@media (max-width: 992px) {
.sc-primary-grid,
.sc-secondary-grid {
grid-template-columns: repeat(2, minmax(180px, 1fr));
}
.sc-timeline-layout {
grid-template-columns: 1fr;
}
}
@media (max-width: 640px) {
.sc-primary-grid,
.sc-secondary-grid {
grid-template-columns: 1fr;
}
.sc-info--primary .sc-value {
font-size: 13px;
}
.sc-info--secondary .sc-value {
font-size: 13px;
}
.sc-cotacao-top {
flex-wrap: wrap;
}
.sc-cotacao-top .badge {
margin-left: 0;
}
}
</style>
</head>
<body>
<div class="fluig-style-guide" style="background-color:white;">
<h1 id="rcorners" style="margin:0;">Solicitação de compra</h1>
<form name="form" role="form">
<!-- Campos ocultos -->
<input type="hidden" id="WKNumProces" name="WKNumProces">
<input type="hidden" id="activity" name="activity">
<input type="hidden" id="formMode" name="formMode">
<input type="hidden" id="empresa" name="empresa">
<input type="hidden" id="requesterMail" name="requesterMail">
<input type="hidden" id="requesterId" name="requesterId">
<input type="hidden" id="currentUserName" name="currentUserName">
<input type="hidden" id="currentUsermail" name="currentUsermail">
<input type="hidden" id="currentUserId" name="currentUserId">
<input type="hidden" id="moreInfo" name="moreInfo">
<input type="hidden" id="gestor_cc" name="gestor_cc">
<input type="hidden" id="filialest" name="filialest">
<input type="hidden" id="filialdest" name="filialdest">
<input type="hidden" id="filialprotheus" name="filialprotheus">
<input type="hidden" id="codigocentroCusto" name="codigocentroCusto">
<input type="hidden" name="numeroSCProtheus" id="numeroSCProtheus">
<input type="hidden" name="statusSCProtheus" id="statusSCProtheus">
<input type="hidden" name="solicitanteSCProtheus" id="solicitanteSCProtheus">
<input type="hidden" name="emissaoSCProtheus" id="emissaoSCProtheus">
<input type="hidden" name="qtdItensSCProtheus" id="qtdItensSCProtheus">
<input type="hidden" name="dataCadastroSCProtheus" id="dataCadastroSCProtheus">
<input type="hidden" name="horaCadastroSCProtheus" id="horaCadastroSCProtheus">
<input type="hidden" name="cotacaoSCProtheus" id="cotacaoSCProtheus">
<input type="hidden" name="pedidoSCProtheus" id="pedidoSCProtheus">
<input type="hidden" name="contratoSCProtheus" id="contratoSCProtheus">
<input type="hidden" name="statusAtendimento" id="statusAtendimento">
<input type="hidden" name="valorTotalCotacao" id="valorTotalCotacao" value="0">
<div class="container activity-all">
<!-- ACTIVITY 0 / 1 - Dados da solicitação -->
<div class="activity activity-0 activity-1">
<div class="row">
<div class="col-md-12">
<h2><i class="flaticon flaticon-tests-central icon-md" aria-hidden="true"></i>Dados da solicitação</h2>
<h6>Dados referentes aos responsáveis pela abertura e pela solicitação do atual processo.</h6>
</div>
</div>
<!-- Linha 1 -->
<div class="row">
<div class="form-field">
<div class="form-input">
<div class="form-group col-md-2 col-xs-12">
<label>Tipo de Solicitação</label>
<select name="tipoSolicitacao" id="tipoSolicitacao" class="form-control" required>
<option value="">Selecione</option>
<option>Material</option>
<option>Serviço</option>
</select>
</div>
<div class="form-group col-md-3 col-xs-12">
<label>Usuário solicitante</label>
<input type="text" name="usuarioSolicitante" id="usuarioSolicitante" class="form-control"
placeholder="Inserir nome completo do solicitante. Ex: João da Silva"
data-protection="Usuário solicitante" data-protection-anonymizable data-protection-sensitive
data-protection-name data-protection-class-legitimate-interests="Dado coletado para o funcionamento do processo" />
</div>
<div class="form-group col-md-3 col-xs-12">
<label>E-mail do solicitante</label>
<input type="email" name="emailSolicitante" id="emailSolicitante" class="form-control"
placeholder="Inserir e-mail do solicitante. Ex: joaodasilva@mail.com"
data-protection="E-mail do solicitante" data-protection-anonymizable data-protection-sensitive
data-protection-mail data-protection-class-legitimate-interests="Dado coletado para o funcionamento do processo" />
</div>
<div class="form-group col-md-4 col-xs-12 divEstabelecimentoFilial alertaCampo">
<label for="zoom">Estabelecimento/Filial <span class="required text-danger"><strong>*</strong></span></label>
<input type="zoom" class="form-control" name="estabelecimento" id="estabelecimento" data-zoom="{
'displayKey':'LOJA',
'placeholder': 'Buscar nome do estabelecimento ou filial',
'datasetId':'dsFiliais',
'fields':[
{'field':'LOJA','label':'Filial','standard':'true','search':'true'},
{'field':'REGIONAL','label':'REGIONAL','standard':'true'},
{'field':'UF','label':'UF','standard':'true'},
{'field':'RESPONSAVEL_LOJA','label':'RESPONSAVEL_LOJA','visible':'false'},
{'field':'PDV','label':'PDV','visible':'false'},
{'field':'PROTHEUS','label':'PROTHEUS','visible':'false'},
{'field':'COLLEAGUE_ID','label':'COLLEAGUE_ID','visible':'false'},
{'field':'LOGIN_LOJA','label':'LOGIN_LOJA','visible':'false'}
]
}">
<p class="help-block" id="estabelecimentoFilial" style="display:none;position:absolute;font-size:12px;">
Preenchimento obrigatório
</p>
</div>
<div class="form-group col-md-3 col-xs-12 divCentroCusto alertaCampo">
<label>Gestor da loja <span class="required text-danger"><strong>*</strong></span></label>
<input type="text" class="form-control" name="centro_custo" id="centro_custo"
placeholder="Será preenchido automaticamente ao selecionar a filial" readonly>
<p class="help-block" id="centroCusto" style="display:none;position:absolute;font-size:12px;">
Preenchimento obrigatório
</p>
</div>
<div class="form-group col-md-2 col-xs-12">
<label>Urgência</label>
<select name="urgencia" id="urgencia" class="form-control">
<option value="">Selecione</option>
<option>Normal</option>
<option>Urgente</option>
<option>Emergencial</option>
</select>
</div>
</div>
</div>
</div>
<!-- Linha 3 -->
<div class="row">
<div class="form-field">
<div class="form-input">
<div class="form-group col-md-4 col-xs-12">
<label for="descProduto">Produto/serviço</label>
<div class="input-group">
<input type="hidden" name="produtoCod" id="produtoCod">
<input type="text" name="descProduto" id="descProduto" class="form-control" placeholder="Buscar..." readonly>
<div class="input-group-btn">
<button class="btn btn-info" type="button" id="btnBuscaProd">
<span class="fluigicon fluigicon-search"></span>
</button>
<button class="btn btn-danger" type="button" id="btnLimpaProd">
<span class="fluigicon fluigicon-trash"></span>
</button>
</div>
</div>
</div>
<div class="form-group col-md-2 col-xs-12">
<label>Quantidade </label>
<div class="input-group">
<span class="input-group-btn"><button type="button" class="btn btn-danger" id="qtdMenos"></button></span>
<input type="number" min="0" step="1" name="quantidade" id="quantidade" class="form-control text-center" value="0" required>
<span class="input-group-btn"><button type="button" class="btn btn-success" id="qtdMais">+</button></span>
</div>
</div>
</div>
</div>
</div>
<!-- Botão adicionar item (oculto) -->
<div class="row">
<div class="form-field">
<div class="form-input">
<div class="form-group col-md-8 col-xs-12 text-center">
<button type="button" id="btnAddItem" class="btn btn-primary" style="display:none;">
<span class="fluigicon fluigicon-add"></span> Adicionar Item
</button>
</div>
</div>
</div>
</div>
<!-- Painel Itens -->
<div class="card-compras">
<div class="card-compras-header">
<span class="card-compras-title"><i class="fluigicon fluigicon-shopping-cart" aria-hidden="true"></i> Itens da Solicitação</span>
</div>
<table id="tbItens" tablename="tbItens" class="table-compras" noaddbutton="true" nodeletebutton="true">
<thead>
<tr>
<th>#</th>
<th>Código</th>
<th>Descrição</th>
<th>Qtd</th>
<th>Data Limite</th>
<th>*</th>
</tr>
</thead>
<tbody>
<!-- Linha modelo -->
<tr class="tableRow" detail="true">
<td><span class="tableIndex"></span></td>
<td><input type="text" name="Codproduto" class="form-control" readonly></td>
<td><input type="text" name="produtoDesc" class="form-control" readonly></td>
<td><input type="number" name="qtd" class="form-control text-right" min="0" step="1"></td>
<td><input type="date" name="dataNec" class="form-control" placeholder="dd/mm/aa"></td>
<td class="text-center">
<div class="btn-group">
<button type="button" class="btn btn-link" onclick="fnWdkRemoveChild(this)">
<span class="fluigicon fluigicon-trash"></span>
</button>
<button type="button" class="btn btn-link" onclick="handleProductLink(this)" data-link="">
<span class="fluigicon fluigicon-link"></span>
</button>
</div>
<!-- campo hidden que o Fluig vai gravar -->
<input type="hidden" name="produtoLink" class="produto-link">
</td>
</tr>
</tbody>
</table>
</div>
<!-- Linha 5 - Anexo + Observações -->
<div class="row">
<div class="form-field">
<div class="form-input">
<div class="form-group col-md-3 col-xs-12">
<label>Adicionar Anexo?</label>
<div class="componentAnexo">
<div class="input-group input-group-sm">
<input type="hidden" class="descAnexo" name="fdComprovante" value="Anexo" />
<input type="text" id="fnComprovante" name="fnComprovante" class="form-control inputAnexo input-sm" placeholder="Selecione um arquivo" readonly />
<span class="input-group-btn">
<button type="button" class="btnUpFile btn btn-success btn-sm" data-acao="upload" onclick="anexo(event)" title="Selecionar">
<i class="fluigicon fluigicon-file-upload icon-sm"></i>
</button>
<button style="display:none;" type="button" class="btnViewerFile btn btn-info btn-sm" data-acao="viewer" onclick="anexo(event)" title="Visualizar" disabled>
<i class="fluigicon fluigicon-eye-open icon-sm"></i>
</button>
<button style="display:none;" type="button" class="btnDownloadFile btn btn-info btn-sm" data-acao="download" onclick="anexo(event)" title="Download" disabled>
<i class="fluigicon fluigicon-download icon-sm"></i>
</button>
</span>
</div>
</div>
</div>
<div class="form-group col-md-8 col-xs-12">
<label>Motivo da compra<span class="required text-danger"><strong>*</strong></span></label>
<textarea class="form-control" rows="3" id="observacoes" name="observacoes"
placeholder="Descreva aqui alguma informação adicional que julgar importante."></textarea>
</div>
</div>
</div>
</div>
</div><!-- /activity-0/1 -->
<!-- ACTIVITY 4 - Análise da necessidade -->
<div class="activity activity-121">
<div class="row">
<div class="col-md-12">
<h2><i class="flaticon flaticon-check-circle" aria-hidden="true"></i>Análise da Necessidade</h2>
<h6>Informações complementares sobre a análise da solicitação pelo gestor responsável</h6>
</div>
</div>
<div class="row">
<div class="form-field">
<div class="form-input">
<div class="form-group col-md-6 col-xs-12">
<label>Responsável por aprovar a solicitação</label>
<input type="text" name="user_validacao_gestor" id="user_validacao_gestor" class="form-control" readonly
data-protection="Responsável por lançamento de documentos" data-protection-anonymizable
data-protection-sensitive data-protection-name
data-protection-class-legitimate-interests="Dado coletado para o funcionamento do processo" />
</div>
<div class="form-group col-md-3 col-xs-12">
<label>Data</label>
<input type="text" name="data_validacao_gestor" id="data_validacao_gestor" class="form-control" readonly />
</div>
</div>
</div>
</div>
<div class="row">
<div class="form-field">
<div class="form-input">
<div class="form-group col-md-12 divJustiDecisaoGestor alertaCampo">
<label for="justi_decisao_gestor">Justificativa</label>
<textarea class="form-control" name="justi_decisao_gestor" id="justi_decisao_gestor"></textarea>
<p class="help-block" id="justiDecisaoGestor" style="display:none;">Preenchimento obrigatório</p>
</div>
</div>
</div>
</div>
</div><!-- /activity-121 -->
<!-- DADOS DO DOCUMENTO -->
<div class="activity activity-18 activity-121 activity-24">
<div class="row">
<div class="col-md-12">
<h2><i class="flaticon flaticon-totvs-forms icon-md" aria-hidden="true"></i>Dados da Solicitação</h2>
<h6>Dados referentes a solicitação.</h6>
</div>
</div>
<div class="sc-status-panel">
<div class="sc-primary-grid">
<div class="sc-info sc-info--primary sc-info--clickable" id="cardNumeroSC" title="Clique para ver a linha do tempo da SC">
<div class="sc-label">Número SC</div>
<div class="sc-value" id="numeroSCProtheus_label">-</div>
<span class="sc-hint" id="cardNumeroSCHint">Clique para ver a linha do tempo</span>
</div>
<div class="sc-info sc-info--primary">
<div class="sc-label">Cotação</div>
<div class="sc-value" id="cotacaoSC_label">-</div>
</div>
<div class="sc-info sc-info--primary">
<div class="sc-label" id="pedidoContratoTipo_label">Pedido</div>
<div class="sc-value" id="pedidoSC_label">-</div>
</div>
</div>
<div class="sc-secondary-grid">
<div class="sc-info sc-info--secondary">
<div class="sc-label">Status Cadastro</div>
<span class="sc-value badge-status badge-waiting" id="statusSCProtheus_label">-</span>
</div>
<div class="sc-info sc-info--secondary">
<div class="sc-label">Andamento</div>
<span class="sc-value badge-status badge-waiting" id="statusSC_label">-</span>
</div>
<div class="sc-info sc-info--secondary">
<div class="sc-label">Emissão</div>
<div class="sc-value" id="emissaoSCProtheus_label">-</div>
</div>
</div>
<div class="sc-timeline-wrap" id="scTimelineSection">
<div class="sc-timeline-layout">
<div class="sc-timeline-panel">
<h4 class="sc-timeline-title">Linha do tempo da SC</h4>
<ul class="sc-timeline" id="scTimeline"></ul>
</div>
<div style="display:flex; flex-direction:column; gap:12px; min-width:0;">
<div class="sc-cotacao-track" style="margin-top:0;">
<div class="sc-cotacao-head">
<h4 class="sc-timeline-title" style="margin:0;">Acompanhamento da cotação</h4>
<span class="badge-status badge-waiting" id="cotacaoResultado_label">Sem cotação</span>
</div>
<div class="sc-cotacao-kpis" id="cotacaoResultadoResumo">
<div class="sc-cotacao-kpi">
<span class="sc-cotacao-kpi-label">Cotações</span>
<span class="sc-cotacao-kpi-value">0</span>
</div>
<div class="sc-cotacao-kpi">
<span class="sc-cotacao-kpi-label">Com documento</span>
<span class="sc-cotacao-kpi-value">0</span>
</div>
<div class="sc-cotacao-kpi">
<span class="sc-cotacao-kpi-label">Menor total</span>
<span class="sc-cotacao-kpi-value">-</span>
</div>
</div>
<div class="sc-cotacao-grid" id="cotacaoResultadoLista">
<div class="sc-cotacao-empty">Aguardando vínculo da cotação na SC.</div>
</div>
</div>
<div class="sc-pedido-track" style="margin-top:0;">
<div class="sc-cotacao-head">
<h4 class="sc-timeline-title" style="margin:0;">Aprovação do pedido</h4>
<span class="badge-status badge-waiting" id="pedidoRastreio_label">Sem pedido</span>
</div>
<div class="sc-pedido-resumo" id="pedidoRastreioResumo">Sem pedido vinculado.</div>
<div class="sc-pedido-assinaturas" id="pedidoRastreioAssinaturas">
<div class="sc-cotacao-empty">Sem assinaturas para exibir.</div>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
<!-- Blocos de Consulta Cotacao e aprovacoes de cotacao (ate CEO) removidos da interface -->
<div class="activity activity-18">
<div>
<br />
<h2>
<i class="flaticon flaticon-check-circle" aria-hidden="true"></i>
&nbsp;Validação do pedido e entrega dos itens &nbsp;
</h2>
<br />
</div>
<div class="row">
<div class="form-field">
<div class="form-input">
<div class="form-group col-md-10 col-xs-6">
<label for="userValidacaoItens"> Solicitante </label>
<input type="text" name="userValidacaoItens" id="userValidacaoItens" class="form-control"
data-protection="Solicitante" data-protection-anonymizable data-protection-sensitive
data-protection-name
data-protection-class-legitimate-interests="Dado coletado para o funcionamento do processo"
readonly />
</div>
<div class="form-group col-md-2 col-xs-6">
<label for="dataValidacaoItens"> Data </label>
<input type="text" name="dataValidacaoItens" id="dataValidacaoItens" class="form-control" readonly />
</div>
</div>
</div>
</div>
<div class="row">
<div class="form-field">
<div class="form-input">
<div class="form-group col-md-12">
<label>Houve algum problema com a compra?</label>
<span class="text-danger"><strong>*</strong></span><br />
<div>
<label>
<input name="validacaoItens" id="validacaoItensEntregue" value="entregue" type="radio" />
<span class="change-weight">Não houve problema</span>
</label>
</div>
<div>
<label>
<input name="validacaoItens" id="validacaoItensNaoEntregue" value="naoEntregue" type="radio" />
<span class="change-weight">Pedido não entregue</span>
</label>
</div>
<div>
<label>
<input name="validacaoItens" id="validacaoItensIncorreto" value="incorreto" type="radio" />
<span class="change-weight">Entregue com inconsistência (qualidade, quantidade,
embalagem)</span>
</label>
</div>
</div>
</div>
</div>
</div>
<div class="row justificativaDecisaoItens">
<div class="form-field">
<div class="form-input">
<div class="form-group col-md-12">
<label for="justificativaDecisaoItens">Justificativa</label>
<span class="text-danger"><strong>*</strong></span>
<textarea class="form-control requiredInput"
placeholder="Insira a justificativa sobre a validação dos itens" name="justificativaDecisaoItens"
id="justificativaDecisaoItens"></textarea>
<p class="text-danger text-error">
Preenchimento obrigatório.
</p>
</div>
</div>
</div>
</div>
</div>
<div class="activity activity-24">
<div>
<br />
<h2>
<i class="flaticon flaticon-document-check" aria-hidden="true"></i>
&nbsp;Validar problema: considerações de compras &nbsp;
</h2>
<h6>Dados referentes às possíveis implicações desta compra.</h6>
<br />
</div>
<div class="row">
<div class="form-group col-md-12">
<label for="justificativaValidaProblema">Quais as suas considerações?</label>
<span class="text-danger"><strong>*</strong></span>
<textarea placeholder="Insira as considerções desta compra." class="form-control"
name="justificativaValidaProblema" id="justificativaValidaProblema"></textarea>
<p class="text-danger text-error">
Preenchimento obrigatório.
</p>
</div>
</div>
</div><!-- /activity-18 -->
<br><br>
<h6>Todos os campos com * são de preenchimento obrigatório.</h6>
</div><!-- /container -->
</form>
</div>
</body>
</html>