All files / source/outboundRange create.js

100% Statements 10/10
100% Branches 2/2
100% Functions 2/2
100% Lines 10/10

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 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83              3x 3x                                               2x   1x 1x         3x   3x                                                         2x   1x 1x                
import moment from 'moment-timezone';
 
import APIError from '../../helpers/error';
import OutboundRangeDao from '../../database/dao/outboundRange';
import OutboundRangeProductDao from '../../database/dao/outboundRangeProduct';
 
async function createOutboundRange(outboundRange, opts = {}) {
  try {
    const newOutboundRange = await OutboundRangeDao.createOutboundRange(
      {
        outboundOrderId: outboundRange.outboundOrderId,
        rangeCode: outboundRange.rangeCode,
        outboundWaveId: outboundRange.outboundWaveId,
        priority: outboundRange.priority,
        branchCode: outboundRange.branchCode,
        pickedUser: outboundRange.pickedUser,
        pickedAt: outboundRange.pickedAt,
        checkedUser: outboundRange.checkedUser,
        checkedAt: outboundRange.checkedAt,
        consolidationUser: outboundRange.consolidationUser,
        consolidationAt: outboundRange.consolidationAt,
        status: outboundRange.status,
        note: outboundRange.note,
        sequence: outboundRange.sequence,
        createdUser: outboundRange.createdUser,
        createdAt: moment().format(),
        updatedUser: outboundRange.updatedUser,
        updatedAt: moment().format(),
      },
      opts
    );
 
    return newOutboundRange;
  } catch (error) {
    console.log(error);
    throw new APIError('', error);
  }
}
 
async function createOutboundRangeProduct(outboundRangeProduct, opts = {}) {
  try {
    const newOutboundRangeProduct =
      await OutboundRangeProductDao.createOutboundRangeProduct(
        {
          outboundOrderId: outboundRangeProduct.outboundOrderId,
          outboundOrderProductId: outboundRangeProduct.outboundOrderProductId,
          outboundRangeId: outboundRangeProduct.outboundRangeId,
          allocationId: outboundRangeProduct.allocationId,
          productCode: outboundRangeProduct.productCode,
          quantity: outboundRangeProduct.quantity,
          status: outboundRangeProduct.status,
          cuttingPlan: outboundRangeProduct.cuttingPlan,
          baptismLabel: outboundRangeProduct.baptismLabel,
          storageAddressPicked: outboundRangeProduct.storageAddressPicked,
          pickedQuantity: outboundRangeProduct.pickedQuantity,
          pickedAt: outboundRangeProduct.pickedAt,
          pickedUser: outboundRangeProduct.pickedUser,
          picked: outboundRangeProduct.picked,
          checkedQuantity: outboundRangeProduct.checkedQuantity,
          checkedAt: outboundRangeProduct.checkedAt,
          checkedUser: outboundRangeProduct.checkedUser,
          checked: outboundRangeProduct.checked,
          note: outboundRangeProduct.note,
          createdUser: outboundRangeProduct.createdUser,
          createdAt: moment().format(),
          updatedUser: outboundRangeProduct.updatedUser,
          updatedAt: moment().format(),
        },
        opts
      );
 
    return newOutboundRangeProduct;
  } catch (error) {
    console.log(error);
    throw new APIError('', error);
  }
}
 
export default {
  createOutboundRange,
  createOutboundRangeProduct,
};