ECのウェブ担当者のメモ

ECサイトを運営管理している、WEB担当プログラマのメモ

スポンサーリンク

gitでマージ済みのブランチを全て削除する

リモートブランチの削除

git branch -r --merged master | grep -v -e master -e develop -e staging | sed -e 's% *origin/%%' | xargs -I% git push --delete origin %

ローカルブランチの削除

git branch --merged master | grep -vE '^\*|master$|staging$|develop$' | xargs -I % git branch -d %

削除済みのリモートブランチを削除

git pull --prune

関連

独習Git

独習Git

javascriptで配列から空白とかnullとかfalseを取り除く

f:id:jun9632:20191008114007p:plain

javascriptで配列から空白とかを取り除く方法です

下記のような 配列があった場合

let list = ['1', null, 2, false, "3", 0, '']

下記のように filter すると

list.filter(v => v)

結果は

["1", 2, "3"]

となります。

関連記事

marketing-web.hatenablog.com

marketing-web.hatenablog.com

Rubyの消費税計算の話

f:id:jun9632:20190830150844p:plain

最初、金額に消費税かけて切り上げすればOKでしょと思って

(price * tax).ceil

をしたところ

(400 * 1.1).ceil

の結果は、

441

となります。

くそ、、、

こんな親切な数字なのになんで 440 にならない、、、

くそ、、、

で実際

400 * 1.1

すると

440.00000000000006

になります。

僕には何に必要になるかわからない小数点以下の大量の 0 と 挙句の果てには 6 まで付いてきます。

その 6 を切り上げちゃってるので、結果 (400 * 1.1).ceil

441

になります。

計算方法

結果 僕が行き着いた計算方法がこちら

((price * tax).round(2)).ceil

基本的に、%なので 小数点第2位までを考えるため 小数点第3位を一応 四捨五入して、残った少数点第2位までを切り上げです。

(基本少小数点第3位は0になると思っています )

400円の 10% は

 400 * 1.1 = 440.00 => 440

401円 の8%は

 401 * 1.08 = 433.08 => 434 

になります。

まとめ

切り上げ

((price * tax).round(2)).ceil

四捨五入

((price * tax).round(2)).round

切り捨て

(price * tax).floor

関連記事

marketing-web.hatenablog.com

marketing-web.hatenablog.com

RubyMineで間違ったファイルタイプを割り当ててしまった時の変更方法

RubyMine で aaaaaa.rb というファイルだけど、RubyではなくText を間違って割り当ててしまった時の設定の修正方法です。

Preference  > Editor > File Types 

を表示

Text を選択すると、Registed Patternsに aaaaaa.rb があるはずなので これを削除するとaaaaaa.rbが Ruby ファイルとして認識してくれるようになります。

f:id:jun9632:20190619101254p:plain

地味なのに、すごいハマってしまいました。

関連記事

たのしいRuby 第6版 (Informatics&IDEA)

たのしいRuby 第6版 (Informatics&IDEA)

BtoC向け 後払いサイト比較

NP後払い

ネットプロテクションズの後払いサービスNP後払い

www.netprotections.com

プラン 手数料率 月額固定費(税抜) 請求書発行・郵便料金 月間取引額の目安
Aプラン 5.0% 0円 1取引ごとに190円 -
Bプラン 4.4% 5,000円 901,000円以上
Cプラン 3.6% 20,000円 2,026,000円以上
Dプラン 2.9% 48,000円 4,321,000円以上

ミライバライ

ライフカードの後払いサービス「ミライバライ」

www.lifecard.co.jp

プラン 手数料率 月額固定費(税抜) 請求書発行・郵便料金 月間取引額の目安
Aプラン 4.8% 0円 1取引ごとに164円 -
Bプラン 4.3% 5,000円 1,000,000円以上
Cプラン 3.5% 20,000円 1,875,000円以上
Dプラン 2.8% 48,000円 4,000,000円以上

注文情報登録API、審査状況確認API、キャンセルAPI、出荷情報APIを利用するするには、初期費用20万円 月額 2万円 の料金が別途必要 注文情報登録APIのみの利用は無料。

@払い

スコア後払い決済サービス

www.scoring.jp

プラン 手数料率 月額固定費(税抜) 請求書発行・郵便料金 月間取引額の目安
Aプラン 4.7% 0円 1取引ごとに コンビニ:153円 コンビニ+郵便局:185円 -
Bプラン 4.2% 4,700円 1,000,000円以上
Cプラン 3.4% 19,000円 1,800,000円以上
Dプラン 2.7% 45,700円 3,800,000円以上

APIの利用は無料で、リアルタイム与信も可能

クロネコ代金後払いサービス

ヤマト運輸系の代金後払いサービス

www.yamato-credit-finance.co.jp

プラン 手数料率 月額固定費(税抜) 請求書発行・郵便料金 月間取引額の目安
Aプラン 5.0% 0円 1取引ごとに コンビニ:160円 コンビニ+郵便局:190円 -
Bプラン 4.4% 5,000円 901,000円以上
Cプラン 3.6% 20,000円 2,026,000円以上
Dプラン 2.9% 48,000円 4,321,000円以上

後払い.com

株式会社キャッチボールの後払い決済サービス

www.ato-barai.com

プラン 手数料率 月額固定費(税抜) 請求書発行・郵便料金 月間取引額の目安
Aプラン 4.8% 0円 1取引ごとに169円 -
Bプラン 4.2% 4,5000円 810,000円以上
Cプラン 3.5% 18,000円 2,090,000円以上
Dプラン 2.8% 45,000円 4,170,000円以上

GMO後払い

GMOペイメントサービスが提供する後払い決済サービス

www.gmo-ps.com

プラン 手数料率 月額固定費(税抜) 請求書発行・郵便料金 月間取引額の目安
Aプラン 4.7% 0円 1取引ごとに コンビニ:150円 コンビニ+郵便局:180円 -
Bプラン 4.2% 4,500円 ,9000,000円以上
Cプラン 3.4% 18,000円 1,700,000円以上
Dプラン 2.7% 45,000円 3,900,000円以上

Font AwesomeをVue.jsにインストールして使う

f:id:jun9632:20180621154229p:plain

Vue.jsにFont Awesomeをインストールして使います。

インストール

下記のパッケージをインストールします。

$ npm i --save @fortawesome/fontawesome-svg-core
$ npm i --save @fortawesome/free-solid-svg-icons
$ npm i --save @fortawesome/vue-fontawesome

追加分のiconも利用したい場合は、こちらのパッケージもインストールしてください。

$ npm i --save @fortawesome/free-brands-svg-icons
$ npm i --save @fortawesome/free-regular-svg-icons

importの設定

src/main.js に下記のように編集します。 下記のケースではアイコンのspinnerだけを利用しています。

import Vue from 'vue'
import App from './App'

/* 追加ここから */
import { library } from '@fortawesome/fontawesome-svg-core'
import { faSpinner } from '@fortawesome/free-solid-svg-icons'
import { FontAwesomeIcon } from '@fortawesome/vue-fontawesome'
 
library.add(faSpinner)
 
Vue.component('font-awesome-icon', FontAwesomeIcon)
/* 追加ここまで */
 
Vue.config.productionTip = false
 
/* eslint-disable no-new */
new Vue({
  el: '#app',
  components: { App },
  template: '<App/>'
})

ほかのアイコンが必要な場合は、下記のように必要なアイコンをimportして、libraryに追加してください。

import { faSpinner, faArrowDown} from '@fortawesome/free-solid-svg-icons'
library.add(faSpinner, faArrowDown)

えいやぁで全部追加する場合は、下記のように書くこともできます。

import { fas } from '@fortawesome/free-solid-svg-icons'
library.add(fas)

.vueで利用する

実際 .vueファイルでアイコンを利用する場合は、下記のようになります。

<template>
  <fa-icon icon="spinner" class="fa-3x fa-pulse" />
</template>

参考サイト

fontawesome.com

github.com

www.npmjs.com

関連記事

marketing-web.hatenablog.com

marketing-web.hatenablog.com

基礎から学ぶ Vue.js

基礎から学ぶ Vue.js

Vue Nativeをインストールしてみたら想像以上に簡単だった!

f:id:jun9632:20180620110835p:plain

これまで、React Nativeが気になりながらも、学習コストを考えてVueを選択していたのですがVue Native が登場したんですね! 嬉しい状況です。

vue-native.io

早速、インストールから、最初の起動までを試してみました。

パッケージのインストール

vue-native-cli と create-react-native-app のパッケージをインストールします。

npm install -g vue-native-cli
npm install -g create-react-native-app

watchmanのインストール

watchmanがインストールされていないと npm start を実行した時にエラーが発生します

今回 blewでインストールします。

brew install watchman

プロジェクトの作成

プロジェクトを作成していきます。

今回プロジェクト名は 「test-vue-native」 として作成していますが、 適宜自由に変更してください。

vue-native init  test-vue-native

起動

cd test-vue-native
npm start

watchmanがインストールされていないと、下記のようなエラーが発生します。

See https://git.io/v5vcn for more information, either install watchman or run the following snippet:
  sudo sysctl -w kern.maxfiles=5242880
  sudo sysctl -w kern.maxfilesperproc=524288

npm ERR! code ELIFECYCLE
npm ERR! errno 1
npm ERR! test-vue-native@0.1.0 start: `react-native-scripts start`
npm ERR! Exit status 1
npm ERR!
npm ERR! Failed at the test-vue-native@0.1.0 start script.
npm ERR! This is probably not a problem with npm. There is likely additional logging output above.

起動が成功したら 下記のようにどのように起動するかが表示されるの表示したいものをクリック

 › Press a to open Android device or emulator, or i to open iOS emulator.
 › Press s to send the app URL to your phone number or email address
 › Press q to display QR code.
 › Press r to restart packager, or R to restart packager and clear cache.
 › Press d to toggle development mode. (current mode: development)

今回 i で iosのエミュレータで起動しました。

f:id:jun9632:20180620103559p:plain

そのほかの動作は

  • a で Androidのエミュレータ起動
  • i で iOS エミュレータ起動
  • s で 電話番号かメールにアプリのURLを送信
  • q でQRコードを表示
  • r (小文字)で 再起動
  • R (大文字)でキャッシュを削除してから再起動
  • d で developモードとproductionモードの切り替え

感想

ここまでは、想像以上に簡単でした。

ここから、VueとNativeのコンポーネントを組み合わせればできるのかなというイメージでいますが アプリ初心者ので、モロモロ問題は出てきそうなので色々と試してみたいと思います。

参考サイト

Vue Native

GitHub - GeekyAnts/vue-native-core: Vue Native is a framework to build cross platform native mobile apps using JavaScript

Expo

GitHub - react-community/create-react-native-app: Create a React Native app on any OS with no build config.

関連記事

marketing-web.hatenablog.com

marketing-web.hatenablog.com