Apontamento de Plantio - MBMC_ATRC
Visão Geral do Programa
...
Ação: | Descrição: |
Figura (1) Toque no botão | Navega para a tela de cabeçalho (Figura 2) para iniciar a criação de um novo apontamento de plantio |
Figura (1) Toque no botão | Caso uma linha da lista esteja selecionada, exclui a mesma |
Figura (1) Toque no botão | Caso uma linha da lista esteja selecionada, abre a tela de cabeçalho (Figura 2) do apontamento selecionado para edição |
Figura (1) Toque no botão | Caso uma linha da lista esteja selecionada, abre a tela de detalhes de insumo (Figura 3) do apontamento selecionado para edição |
Figura (1) Toque no botão | Caso uma linha da lista esteja selecionada, abre a tela de detalhes de semente (Figura 4) do apontamento selecionado para edição |
Figura (1) Toque no botão | Retorna para a tela inicial da aplicação |
Figura (2) Toque no botão | Abre o diálogo de seleção de data |
Figura (2) Toque no botão ao lado de Ordem de Serviço | Abre a lista de ordens de serviço sincronizadas/abertas no dispositivo |
Figura (2) Toque no botão ao lado de N° Tratamento | Abre a lista de tratamentos de semente sincronizados/abertos no dispositivo |
Figura (2) Toque no botão ao lado de Variedade | Abre a lista de variedades sincronizadas |
Figura (2) Toque no botão ao lado de Sistema de Cultivo | Abre a lista de sistemas de cultivo sincronizados |
Figura (2) Toque no botão ao lado de Sistema de Plantio | Abre a lista de sistemas de plantio sincronizados |
Figura (2) Toque no botão ao lado de Equipamento | Abre a lista de equipamentos sincronizados |
Figura (2) Toque no botão ao lado de Talhão | Abre a lista de talhões para o período de produção configurado nos parâmetros |
Figura (2) Toque no botão ao lado de Espaçamento | Abre a lista de espaçamentos sincronizados |
Figura (2) Toque no botão Image Added ao lado de Classe de Semente | Lupa habilitado através do parâmetro: Grupo de Configuração: 10 (Apontamento de Tratamento de Sementes/Mudas). Parâmetro: Habilita campos Classe de Semente e Nota Fiscal no apontamento de Tratamento Semente/Muda e Plantio. Abre a lista de classes de sementes sincronizadas |
Figura (2) Toque no botão | Caso as informações inseridas pelo usuário sejam válidas, salva o apontamento e navega para a tela de detalhes de insumos (Figura 3) |
Figura (2) Toque no botão | Cancela a inserção/alteração do cabeçalho |
Figura (2) Toque no botão | Retorna para a tela de início |
Figura (3) Toque no botão ao lado de Insumo | Abre a lista de insumos sincronizados |
Figura (3) Toque no botão ao lado de Depósito | Abre a lista de depósitos sincronizados |
Figura (3) Toque no botão | Habilita a inserção de um novo detalhe de insumos |
Figura (3) Toque no botão | Caso uma linha da lista esteja selecionada, exclui a mesma |
Figura (3) Toque no botão | Caso as informações inseridas pelo usuário sejam válidas, salva o detalhe |
Figura (3) Toque no botão | Cancela a inserção/alteração do detalhe |
Figura (3) Toque no botão | Navega para a tela de detalhes de sementes |
Figura (3) Toque no botão | Retorna para a tela de início |
Figura (4) Toque no botão ao lado de Semente | Abre a lista de sementes sincronizadas |
Figura (4) Toque no botão ao lado de Depósito | Abre a lista de depósitos sincronizados |
Figura (4) Toque no botão | Habilita a inserção de um novo detalhe de sementes |
Figura (4) Toque no botão | Caso uma linha da lista esteja selecionada, exclui a mesma |
Figura (4) Toque no botão | Caso as informações inseridas pelo usuário sejam válidas, salva o detalhe |
Figura (4) Toque no botão | Cancela a inserção/alteração do detalhe |
Figura (4) Toque no botão | Retorna para a tela de início |
...
Campo: | Descrição |
Figura (2) Campo Data | - Campo recuperado automaticamente
- Editável
- Obrigatório
- Data do apontamento
|
Figura (2) Campo Ordem de Serviço | - Campo editável
- Não obrigatório
- Ordem de serviço a que se deseja apontar
|
Figura (2) Campo N° Tratamento | - Campo editável
- Não obrigatório
- Tratamento de semente a que se deseja apontar
|
Figura (2) Campo Variedade | - Campo editável
- Obrigatório
- Variedade utilizada para o apontamento
|
Figura (2) Campo Sistema de Cultivo | - Campo editável
- Não obrigatório
- Sistema de cultivo utilizado
|
Figura (2) Campo Sistema de Plantio | - Campo editável
- Não obrigatório
- Sistema de plantio utilizado
|
Figura (2) Campo Equipamento | - Campo editável
- Não obrigatório
- Equipamento utilizado no plantio
|
Figura (2) Campo Talhão | - Campo editável
- Obrigatório
- Talhão onde foi realizado o plantio
|
Figura (2) Campo Área Talhão (ha) | - Campo recuperado automaticamente
- Não editável
- Obrigatório
- Área do talhão informado
|
Figura (2) Campo Área Plantada[ha] | - Campo editável
- Obrigatório
- Área plantada dentre a área do talhão informado
|
Figura (2) Campo Espaçamento | - Campo editável
- Obrigatório
- Espaçamento entre plantas
|
Figura (2) Campo N° Linhas | - Campo editável
- Não obrigatório
- N° de linhas plantadas
|
Figura (2) Campo Densidade/m | - Campo editável
- Não obrigatório
- Densidade de plantas por metro
|
Figura (2) Campo Classe de Semente | Campo habilitado através do parâmetro: Grupo de Configuração: 10 (Apontamento de Tratamento de Sementes/Mudas). Parâmetro: Habilita campos Classe de Semente e Nota Fiscal no apontamento de Tratamento Semente/Muda e Plantio. - Campo recuperado automaticamente quando informado no Tratamento de Semente
- Editável
- Classe de Semente
|
Figura (3) Campo Data Abertura | - Campo recuperado automaticamente
- Não editável
- Data de abertura do apontamento
|
Figura (3) Campo Ordem de Serviço | - Campo recuperado automaticamente
- Não editável
- Ordem de serviço informada no cabeçalho
|
Figura (3) Campo N° Tratamento | - Campo recuperado automaticamente
- Não editável
- Tratamento de sementes informado no cabeçalho
|
Figura (3) Campo Insumo | - Campo editável
- Obrigatório
- Insumo utilizado no plantio
|
Figura (3) Campo Depósito | - Campo editável
- Obrigatório
- Depósito do insumo informado
|
Figura (3) Campo N° Lote | - Campo editável
- N° do lote do insumo informado
|
Figura (3) Campo Dose Prog./ha | - Campo editável
- Obrigatório
- Dose programada do insumo informado por hectare
|
Figura (3) Campo Qtde Aplicada | - Campo editável
- Obrigatório
- Quantidade aplicada do insumo informado por hectare
|
Figura (4) Campo Data Abertura | - Campo recuperado automaticamente
- Não editável
- Data de abertura do apontamento
|
Figura (4) Campo Ordem Serviço | - Campo recuperado automaticamente
- Não editável
- Ordem de serviço informada no cabeçalho
|
Figura (4) Campo N° Tratamento | - Campo recuperado automaticamente
- Não editável
- Tratamento de sementes informado no cabeçalho
|
Figura (4) Campo Semente | - Campo editável
- Obrigatório
- Semente utilizada no plantio
|
Figura (4) Campo Depósito | - Campo editável
- Obrigatório
- Depósito da semente informada
|
Figura (4) Campo N° Lote | - Campo editável
- N° do lote da semente informada
- Caso o parâmetro controle por lote esteja como S e o insumo utilize controle por lote, o lote é obrigatório.
|
Figura (4) Campo Dose Prog./ha | - Campo editável
- Obrigatório
- Dose programada da semente informada por hectare
|
Figura (4) Campo Qtde Consumida | - Campo editável
- Obrigatório
- Quantidade consumida da semente informada
|
Conteúdos Relacionados:
Links dos principais conceitos e processos.
(function () {
'use strict';
angular
.module('totvsGridAptoDivHeaderDirective')
.directive('totvsGridAptodivHeader', Directive);
function Directive() {
var directiveController =
['$rootScope',
'$scope',
'$document',
'AvaliacaoLocalProducaoService',
'FiltrosService', 'DialogProvider',
'cfpLoadingBar',
'$translate',
'DatabaseService',
'NotificationService',
'StringService',
'SendMessage',
'$state',
function (
$rootScope,
$scope,
$document,
AvaliacaoLocalProducaoService,
FiltrosService,
DialogProvider,
cfpLoadingBar,
$translate,
DatabaseService,
NotificationService,
StringService,
SendMessage,
$state) {
$scope.swipeClick = true;
$scope.controller = null;
$scope.rowSelect = null;
$scope.filtro = null;
//Elementos para onde será compartilhado
$scope.selected = [];
//$scope.config.gridConfig = [];
//Elemento origem a ser compartilhado
$scope.shareOrign = null;
//Lista de itens(detalhes do shareOrign) a serem compartilhados (esta lista terá os selecionados e também não selecionados)
var listItensSelToShare = [];
$scope.exibir = false;
$scope.mostrarS = false;
$document.on('click', function () {
$scope.hideHeader();
});
$scope.hideHeader = function () {
$("#myNavbar").collapse('hide');
};
$scope.expandir = function (p) {
$(".desc").hide("slow");
$(".swip").hide("slow");
if ($("." + p).is(":hidden")) {
$scope.mostrarS = true;
$("." + p).show("slow");
} else {
$scope.mostrarS = false;
$("." + p).hide("slow");
}
}
$scope.configSwipeAction = function (conf, valorAtributoObjLista, itemCofig) {
if (conf.configAcao == null || conf.configAcao == undefined) {
if (itemCofig == 'icon')
return conf.icon;
else if (itemCofig == 'text')
return conf.text;
}
else {
var configAcao = new jinqJs()
.from(conf.configAcao)
.where(function (row, index) {
return (row.key == valorAtributoObjLista);
})
.select();
if (configAcao.length > 0) {
if (itemCofig == 'icon')
return configAcao[0].icon;
else if (itemCofig == 'text')
return configAcao[0].text;
}
else {
if (itemCofig == 'icon')
return conf.icon;
else if (itemCofig == 'text')
return conf.text;
}
}
}
$scope.configStatusLinha = function(configStatusLinha, valorAtributoObjLista)
{
if(configStatusLinha == null || configStatusLinha == undefined)
{
return "far fa-square color-disabled";
}
else {
var configStatus = new jinqJs()
.from(configStatusLinha[0].config)
.where(function (row, index) {
return (row.key == valorAtributoObjLista);
})
.select();
if(configStatus.length > 0)
return configStatus[0].icon +" "+ (configStatus[0].color != undefined ? configStatus[0].color :'color-disabled');
else
return "far fa-square color-disabled";
}
}
$scope.shareCancel = function () {
$scope.swipeClick = true;
$scope.controller.footer = true;
$scope.rowSelect.show("slow");
//$("."+d._id).show("slow");
$scope.shareOrign = null;
listItensSelToShare = [];
$scope.selected = []; // talhões de destino da cópia
}
$scope.alterarContadorRodape = function (_configRodape) {
var _obj = new jinqJs() //Defining the order and columns to return
.from(_configRodape)
.where(function (row, index) {
return (row.hasBadge == true);
})
.select();
var obj = _obj[0];
var query = obj.query;
DatabaseService.execute(query)
.then(function (res) {
obj.count = res[0].count;
});
}
$scope.shareExecute = function (_rodapeConfig) {
console.log("rodape:" + _rodapeConfig);
$translate(['l-TituloCopiaAvaliacao', 'l-DesejaCopiarAvaliacao', 'l-SelecioneTalhaoAvaliacao', 'l-SelecioneAvaliacoes'])
.then(function (translations) {
cfpLoadingBar.start();
var listaAvCopiaFinal = [];
listItensSelToShare.forEach(function (av) {
if (av.isChecked)
listaAvCopiaFinal.push(av);
});
if (listaAvCopiaFinal.length > 0) {
//Verifica se foi selecionado ao menos um local de produção
if ($scope.selected.length > 0) {
DialogProvider.confirmacao(translations['l-TituloCopiaAvaliacao'], translations['l-DesejaCopiarAvaliacao']).
then(function (sim) {
DialogProvider.progressbarIndeterminate();
AvaliacaoLocalProducaoService.getParametros();
AvaliacaoLocalProducaoService.copiarAvaliacoes($scope.shareOrign, $scope.selected, listaAvCopiaFinal)
.then(function (res) {
if (res) {
$scope.shareCancel();
}
$scope.alterarContadorRodape(_rodapeConfig);
cfpLoadingBar.complete();
SendMessage.close();
});
},
function (nao) {
//shareCancel();
cfpLoadingBar.complete();
});
}
else {
DialogProvider.dialogo(translations['l-TituloCopiaAvaliacao'], translations['l-SelecioneTalhaoAvaliacao']);
cfpLoadingBar.complete();
}
}
else {
cfpLoadingBar.complete();
DialogProvider.dialogo(translations['l-TituloCopiaAvaliacao'], translations['l-SelecioneAvaliacoes'])
.then(function () {
$scope.listaSelecionarAvaliacoes($scope.controller, false, true);
});
}
});
}
$scope.toggle = function (item, list) {
var idx = list.indexOf(item);
if (idx > -1) {
list.splice(idx, 1);
} else {
list.push(item);
}
};
$scope.exists = function (item, list) {
//console.log("exists");
return list.indexOf(item) > -1;
};
$scope.shareAction = function (p, _controller, d) {
if (p) {
cfpLoadingBar.start();
AvaliacaoLocalProducaoService.recuperaAvalicoesByUp3(d /* d é o Local de origem */)
.then(function (listAvCop) {
cfpLoadingBar.complete();
if (listAvCop.length > 0) {
$scope.swipeClick = false;
$scope.rowSelect = $("." + d._id);
$("." + d._id).hide("slow");
// ao passar algo para o shareOrign a div que mostra o objeto de origem fica visível,
// por isso shareOrign só pode ser setado dentro deste if
$scope.shareOrign = d;
_controller.footer = false;
$scope.usaSetor = _controller.usaSetor;
listItensSelToShare = listAvCop;
$scope.listaSelecionarAvaliacoes(_controller, true, false);
}
else {
NotificationService.show('l-NenhumaAvaliacaoDisponivelCopia', NotificationService.types.INFO);
}
});
}
$scope.controller = _controller;
console.log("share:" + p);
}
$scope.listItensShare = function () {
$scope.listaSelecionarAvaliacoes($scope.controller, false, false);
}
$scope.listaSelecionarAvaliacoes = function (_controller, _montaCheck, _chamaCopia) {
FiltrosService.SelecionarAvaliacoes($scope.shareOrign, _controller, listItensSelToShare, _montaCheck)
.then(function (listAvaliacoesCopia) {
listItensSelToShare = listAvaliacoesCopia;
if (_chamaCopia)
$scope.shareExecute();
});
}
$scope.clickElement = function (event, item, list) {
var myApp = new Framework7({
cache: false,
fastClicks: true,
swipeOut: false
});
var current = event.currentTarget;
if ($scope.swipeClick) {
if (!$(current).hasClass('swipeout-opened')) {
myApp.swipeoutOpen($(current), 'right');
//$scope.rowSelect = $(current);
} else {
myApp.swipeoutClose($(current));
}
} else {
//Selecionar ao clicar quando elemento tiver o Checkbox
//$scope.toggle(item, list);
}
}
/*var myApp = new Framework7({
cache: false,
fastClicks: true,
swipeOut: false
});
$(document).on("click", ".swipe-click", function () {
if ($scope.swipeClick) {
if (!$(this).hasClass('swipeout-opened')) {
myApp.swipeoutOpen($(this), 'right');
$scope.rowSelect = $(this);
} else {
myApp.swipeoutClose($(this));
}
}
});*/
$scope.myFilter = function (item) {
//console.log($scope.config);
if (undefined != $scope.config.gridConfig[0] && null != $scope.config.gridConfig[0]) {
for (var i = 0; i < $scope.config.gridConfig[0].length; i++) {
if (item[$scope.config.gridConfig[0][i].column] != null) {
if (item[$scope.config.gridConfig[0][i].column].toString().indexOf($scope.filtro) >= 0 ||
StringService.isEmptyOrNull($scope.filtro)) {
return item;
}
}
}
return "";
}
return item;
}
}];
return {
templateUrl: 'directives/totvs-grid-aptodiv-header/totvs-grid-aptodiv-header-template.html',
restrict: 'EA',
scope: {
data: '=',
config: '='
},
link: link,
controller: directiveController
}
}
function link(scope, element, attrs, controller) { }
Figura (4) Campo Nota Fiscal | Campo habilitado através do parâmetro: Grupo de Configuração: 10 (Apontamento de Tratamento de Sementes/Mudas). Parâmetro: Habilita campos Classe de Semente e Nota Fiscal no apontamento de Tratamento Semente/Muda e Plantio. - Campo editável
- Não obrigatório
- Nota Fiscal da Semente
- Recuperado automaticamente do Tratamento de Semente quando informado
|
Conteúdos Relacionados:
Links dos principais conceitos e processos.
...