Skip to content

Instantly share code, notes, and snippets.

View Jojoooo1's full-sized avatar

Jonathan Jojoooo1

  • Currently open to work
  • Sao paulo
View GitHub Profile
@Jojoooo1
Jojoooo1 / chaincode-1.js
Last active January 31, 2019 10:46
chaincode-1.js
import shim from 'fabric-shim';
import util from 'util';
export default class Chaincode {
// 1. Mandatory Init function
async Init(stub) {
const ret = stub.getFunctionAndParameters();
console.info(ret);
console.info('=========== Instantiated Codigo Rastreamento Chaincode ===========');
return shim.success();
@Jojoooo1
Jojoooo1 / package.json
Created January 28, 2019 19:18
package-1.json
{
"name": "codigo-rastreamento",
"version": "1.0.0",
"description": "Codigo Rastreamento chaincode implemented in node.js",
"engines": {
"node": ">=8.4.0",
"npm": ">=5.3.0"
},
"scripts": {
"clean": "rm -rf build && mkdir build",
@Jojoooo1
Jojoooo1 / chaincode-2.js
Last active January 30, 2019 13:14
chaincode-2.js
// [..]
// 2. Mandatory Invoke function
async Invoke(stub) {
console.info('########################################');
console.info(`Transaction ID: ${stub.getTxID()}`);
console.info(util.format('Args: %j', stub.getArgs()));
const ret = stub.getFunctionAndParameters();
console.info(ret);
@Jojoooo1
Jojoooo1 / chaincode-3.js
Last active February 4, 2019 11:58
chaincode-3.js
// [..]
// Function for retrieving state value
async getDataById(stub, args) {
// Assigns id to data
const data = args[0];
// Verifies id is not empty
if (!data) {
throw new Error('Por favor especifique um id');
}
@Jojoooo1
Jojoooo1 / .babelrc
Created January 29, 2019 12:36
.babelrc
{
"presets": [
"es2015"
],
"plugins": ["transform-object-rest-spread"]
}
@Jojoooo1
Jojoooo1 / chaincode-4.js
Last active January 29, 2019 15:36
chaincode-4.js
import shim from 'fabric-shim';
import util from 'util';
import * as Codigo from './controllers/codigo';
export default class Chaincode {
// [...]
// Function for creating batch of tracking code
async solicitarCodigo(stub, args) {
@Jojoooo1
Jojoooo1 / code-1.js
Last active February 4, 2019 12:00
code-1.js
import uuidv4 from 'uuid/v4';
// import { performance } from 'perf_hooks';
import { generateCodigo } from '../utils';
export const solicitarCodigo = async (stub, args) => {
// const t0 = performance.now();
let data;
const codigoPutStatePromises = [];
@Jojoooo1
Jojoooo1 / chaincode-5.js
Created January 29, 2019 16:46
chaincode-5.js
// [...]
async usarCodigo(stub, args) {
try {
await Codigo.usarCodigo(stub, args);
} catch (err) {
throw new Error(err.message ? err.message : 'Por favor tente novamente mais tarde');
}
}
@Jojoooo1
Jojoooo1 / code-2.js
Last active February 4, 2019 12:01
code-2.js
import uuidv4 from 'uuid/v4';
// import { performance } from 'perf_hooks';
import { generateCodigo } from '../utils';
import { usarCodigoSchema } from '../models/codigo';
// { descend into nested schema, return on first error, remove unspecified keys from objects }
const validationOptions = { recursive: true, abortEarly: true, stripUnknown: true };
// [...]
@Jojoooo1
Jojoooo1 / code-models.js
Last active January 31, 2019 14:52
codes-models.js
const yup = require('yup');
/* eslint-disable import/prefer-default-export */
export const usarCodigoSchema = yup.object().shape({
id: yup.string().required('Por favor especifique um id'),
transportador: yup.string().required('Por favor especifique um transportador'),
rota: yup.string().required('Por favor especifique uma rota'),
servico: yup.string().required('Por favor especifique um servico'),
servico_codigo: yup.string().required('Por favor especifique um servico_codigo'),
usado: yup