All files / middlewares dailyLoadValidations.js

100% Statements 9/9
100% Branches 10/10
100% Functions 1/1
100% Lines 9/9

Press n or j to go to the next uncovered block, b, p or k for the previous block.

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42            4x 4x   4x 1x           3x 1x           2x         2x 1x                        
import validator from 'validator';
import APIError from '../helpers/error';
import I18n from '../helpers/i18n';
import DailyLoadsInformation from '../source/dailyLoads/information';
 
async function validPosition(req) {
  const position = req.body.position || req.query.position;
  const branchCode = req.body.branch || req.query.branch;
 
  if (!position) {
    throw new APIError(
      'NOT_EXIST_POSITION',
      I18n.t('BEE3968' /* A posição deve ser informada. */)
    );
  }
 
  if (!branchCode) {
    throw new APIError(
      'NOT_EXIST_BRANCH',
      I18n.t('BEE3014' /* A filial deve ser informada */)
    );
  }
 
  const existDailyLoad = await DailyLoadsInformation.getDailyLoad({
    position,
    branchCode,
  });
 
  if (existDailyLoad) {
    throw new APIError(
      'EXIST_DAILY_SHIPMENT',
      I18n.t(
        'BEE3969' /* O Carregamento Diário já existe com a posição e filial informadas. */
      )
    );
  }
}
 
export default {
  validPosition,
};