1.1.2 • Published 5 months ago

react-native-ift-core-module v1.1.2

Weekly downloads
30
License
MIT
Repository
github
Last release
5 months ago

react-native-ift-core-module

변경이력

2023-12-22 안드로이드 29/30버전에서 인증서 목록을 읽고 / 저장하는 루틴 수정. (1.0.7)

Getting started

$ npm install react-native-ift-core-module --save

Mostly automatic installation

$ react-native link react-native-ift-core-module

ios prebuild

$ cd ios && pod install

Usage

import IftCoreModule from 'react-native-ift-core-module';

// App.js
// TODO: What to do with the module?
import React, { Component } from 'react';
import { Button, StyleSheet, View } from 'react-native';
import iftCoreEngine from 'react-native-ift-core-module';

var uuid = "";
function numberWithCommas(x) {
  return x.toString().replace(/\B(?=(\d{4})+(?!\d))/g, "-");
}

export default class HelloWorldApp extends Component {

  _onPressButton1 = async () => {
    try {
      iftCoreEngine.startEngine('{"appCd": "plugin_demo", "orgCd": "hometax", "svcCd": "Z0001", "bizNo": "1231231212"}', function(outJson) {
        console.log(outJson);
      });
    } catch (e) {
      console.error(e);
    }
  };

  _onPressButton2 = async () => {
    var request = new XMLHttpRequest();
    request.onreadystatechange = (e) => {
      if (request.readyState !== 4) {
        return;
      }
      if (request.status === 200) {
        var JsonData = JSON.parse(request.responseText)
        console.log('success', request.responseText);
        uuid = JsonData.uid;
        alert(numberWithCommas(uuid) + " 문자를 http://www.infotech3.co.kr/nx 에 입력해 주세요.");
      } else {
        console.warn('error');
      }
    };
    request.open('GET', 'http://www.infotech3.co.kr/nx/src/nxCrtC.jsp?op=getUid');
    request.send();
  };

  _onPressButton3 = async () => {
    var request = new XMLHttpRequest();
    request.onreadystatechange = (e) => {
      if (request.readyState !== 4) {
        return;
      }
      if (request.status === 200) {
        console.log('copyCert', uuid + ":" + request.responseText);
        iftCoreEngine.copyCert(request.responseText,uuid, function(outJson) {
          console.log(outJson);
        });
      } else {
        console.warn('error');
      }
    };
    request.open('GET', 'http://www.infotech3.co.kr/nx/src/nxCrtC.jsp?op=getCrt&uid='+ uuid);
    request.send();
  };

  _onPressButton4 = async () => {
    iftCoreEngine.certList('', function(outJson) {
      console.log(outJson);
    });
  };

  render() {
    return (
      <View style={styles.container}>
        <View style={styles.buttonContainer}>
          <Button
            onPress={this._onPressButton1}
            title="휴폐업조회"
          />
        </View>
        <View style={styles.buttonContainer}>
          <Button
            backgroundColor="red"
            color="red"
            onPress={this._onPressButton2}
            title="인증서이동 보안문자 생성"
          />
        </View>
        <View style={styles.buttonContainer}>
          <Button
            onPress={this._onPressButton3}
            title="인증서이동 실행"
          />
        </View>     
        <View style={styles.buttonContainer}>
          <Button
            onPress={this._onPressButton4}
            title="인증서목록"
          />
        </View>                
      </View>
    );
  }
}

const styles = StyleSheet.create({
  container: {
   flex: 1,
   justifyContent: 'center',
  },
  buttonContainer: {
    margin: 20
  },
  alternativeLayoutButtonContainer: {
    margin: 20,
    flexDirection: 'row',
    justifyContent: 'space-between'
  }
});
1.1.1

5 months ago

1.1.2

5 months ago

1.1.0

3 years ago

1.0.9

3 years ago

1.0.8

3 years ago

1.0.7

3 years ago

1.0.6

3 years ago

1.0.5

3 years ago

1.0.4

3 years ago

1.0.3

3 years ago

1.0.2

3 years ago

1.0.1

3 years ago