var mapper = mapperFactory.createMapperMult(["PrcFilialAlcadaCompras"]);

var inserirOuAlterar = function(filial){
	let inseridos = mapper.selectList('PrcFilialAlcadaCompras.listarPrcFilialAlcadaCompras'  ,{'cdEmp':filial.get('cdEmp'), 'cdFilial':filial.get('cdFilial'), 'tipoPedido':filial.get('tipoPedido')});
	if(inseridos.size()>0)
		mapper.update('PrcFilialAlcadaCompras.alterarPrcFilialAlcadaCompras',{'cdEmp':filial.get('cdEmp'), 'cdFilial':filial.get('cdFilial'), 'tipoPedido':filial.get('tipoPedido'), 'vlrSugestaoCompra':filial.get('vlrSugestaoCompra')});
	else
		mapper.insert('PrcFilialAlcadaCompras.incluirPrcFilialAlcadaCompras', filial);
};

try{
		
		if(message.get('filiais') == null)
			throw {code: 599, message: "Dados passados ao servidor inválido!"};
	
		if(message.get('filiais').size() > 0){
			for(let i = 0; i<message.get('filiais').size(); i++){
				
				let filial = message.get('filiais').get(i);
				filial.put('cdUsu', message.get('cdUsu'));
				filial.put('tipoPedido', message.get('tipoPedido'));
				
				if(filial.get('novoVlr') > 0){
					filial.put('vlrSugestaoCompra', filial.get('novoVlr'));
					inserirOuAlterar(filial);
				}else{
					mapper.update('PrcFilialAlcadaCompras.excluirPrcFilialAlcadaCompras', filial)
				}
			}
			mapper.commit();
		}
	}catch(err){
		
		mapper.rollback();
		if(err.code){
		    throw JSON.stringify(err);
		}else{
				throw err;
		}
	}


