/*
  PROJECTNAME:kanrikyokaiSite
  FILENAME:hoken.js
  Created by PETARNA on 05/08/26.
  Copyright (c) 2005 PETARNA. All rights reserved.
*/

/*
 給与計算
*******************
*/
function salaryCalculation(){
  var number= document.calculation.numberOfPeople.value;
  number= parseInt(number);
  if(number > 10 && number < 2000){
	var result= (number-10)*500+15000;
	document.getElementById("calculationResult").setAttribute("value",result);
  }
  else if(number > 0 && number <= 10){
	document.getElementById("calculationResult").setAttribute("value","15000");
  }
  else{
	document.getElementById("calculationResult").setAttribute("value","範囲外の入力です");
  }
  
}

/*
労働保険
*****************
*/
var bunruiSet= new Array();
bunruiSet["林業"]= new Array();
bunruiSet["林業"]["林業"]= 60/1000;

bunruiSet["漁業"]= new Array();
bunruiSet["漁業"]["海面漁業(定置網漁業又は海面魚類養殖業を除く)"]=41/1000;
bunruiSet["漁業"]["定置網漁業又は海面魚類養殖業"]=40/1000;

bunruiSet["鉱業"]= new Array();
bunruiSet["鉱業"]["金属工業,非金属鉱業(石灰石鉱業又はドロマイト鉱業を除く),石炭鉱業"]=87/1000;
bunruiSet["鉱業"]["石灰石鉱業,ドロマイト鉱業"]=46/1000;
bunruiSet["鉱業"]["原油又は天然ガス鉱業"]=6.5/1000;
bunruiSet["鉱業"]["採石業"]=70/1000;
bunruiSet["鉱業"]["その他の鉱業"]=28/1000;

bunruiSet["建設事業"]= new Array();
bunruiSet["建設事業"]["水力発電施設,ずい道等新設事業"]=118/1000;
bunruiSet["建設事業"]["道路新設事業"]=21/1000;
bunruiSet["建設事業"]["舗装工事業"]=14/1000;
bunruiSet["建設事業"]["鉄道又は軌道新設事業"]=23/1000;
bunruiSet["建設事業"]["建築事業(既設建築物設備工事業を除く)"]=15/1000;
bunruiSet["建設事業"]["既設建築物設備工事業"]=14/1000;
bunruiSet["建設事業"]["機械装置の組立て又は据付けの事業"]=14/1000;
bunruiSet["建設事業"]["その他の建設事業"]=21/1000;

bunruiSet["製造業"]= new Array();
bunruiSet["製造業"]["食料品製造業(たばこ等製造業除く)"]=7.5/1000;
bunruiSet["製造業"]["たばこ等製造業"]=6.5/1000;
bunruiSet["製造業"]["繊維工業又は繊維製品製造業"]=5.5/1000;
bunruiSet["製造業"]["木材又は木製品製造業"]=18/1000;
bunruiSet["製造業"]["パルプ又は紙製造業"]=7.5/1000;
bunruiSet["製造業"]["印刷又は製本業"]=5/1000;
bunruiSet["製造業"]["化学工業"]=6.5/1000;
bunruiSet["製造業"]["ガラス又はセメント製造業"]=7.5/1000;
bunruiSet["製造業"]["コンクリート製造業"]=14/1000;
bunruiSet["製造業"]["陶磁器製品製造業"]=17/1000;
bunruiSet["製造業"]["その他の窯業又は土石製品製造業"]=26/1000;
bunruiSet["製造業"]["金属精錬業(非鉄金属精錬業を除く)"]=7.5/1000;
bunruiSet["製造業"]["非鉄金属精錬業"]=7.5/1000;
bunruiSet["製造業"]["金属材料品製造業(鋳物業を除く)"]=8.5/1000;
bunruiSet["製造業"]["鋳物業"]=18/1000;
bunruiSet["製造業"]["金属製品製造業又は金属加工業(洋食器,刃物,手工具又は一般金物製造業及びめっき業を除く)"]=14/1000;
bunruiSet["製造業"]["洋食器,刃物,手工具又は一般金物製造業(めっき業を除く)"]=9/1000;
bunruiSet["製造業"]["めっき業"]=8.5/1000;
bunruiSet["製造業"]["機械器具製造業(電気機械器具製造業,輸送用機械器具製造業,船舶製造又は修理業及び計量機,光学機械,時計等製造業を除く)"]=7/1000;
bunruiSet["製造業"]["電気機械器具製造業"]=4.5/1000;
bunruiSet["製造業"]["輸送用機械器具製造業(船舶製造又は修理業を除く)"]=6/1000;
bunruiSet["製造業"]["船舶製造又は修理業"]=22/1000;
bunruiSet["製造業"]["計量器,光学機械,時計等製造業(電気機械器具製造業を除く)"]=4.5/1000;
bunruiSet["製造業"]["貴金属製品,装身具,皮革製品等製造業"]=5.5/1000;
bunruiSet["製造業"]["その他の製造業"]=8/1000;

bunruiSet["運輸業"]= new Array();
bunruiSet["運輸業"]["交通運輸事業"]=5.5/1000;
bunruiSet["運輸業"]["貨物取扱事業(港湾貨物取扱事業及び港湾荷役業を除く)"]=13/1000;
bunruiSet["運輸業"]["港湾貨物取扱事業(港湾荷役業を除く)"]=13/1000;
bunruiSet["運輸業"]["港湾荷役業"]=23/1000;
  
bunruiSet["電気,ガス,水道又は熱供給の事業"]= new Array();
bunruiSet["電気,ガス,水道又は熱供給の事業"]["電気,ガス, 水道又は熱供給の事業"]=4.5/1000;

bunruiSet["その他の事業"]= new Array();
bunruiSet["その他の事業"]["農業又は海面漁業以外の漁業"]=12/1000;
bunruiSet["その他の事業"]["清掃,火葬又はと蓄の事業"]=13/1000;
bunruiSet["その他の事業"]["ビルメンテナンス業"]=6.5/1000;
bunruiSet["その他の事業"]["倉庫業,警備業,消毒又は害虫駆除の事業又はゴルフ場の事業"]=7/1000;
bunruiSet["その他の事業"]["通信業、放送業、新聞業又は出版業"]=4.5/1000;
bunruiSet["その他の事業"]["卸売業・小売業、飲食店又は宿泊業"]=5/1000;
bunruiSet["その他の事業"]["金融業、保険業又は不動産業"]=4.5/1000;
bunruiSet["その他の事業"]["その場の各種事業"]=4.5/1000;

/*
 事業分類選択にて事業種類セレクタを表示
 **************************************
*/
function rousaiBunruiView(obj){
  var s= document.getElementById("s");
  var f=document.forms[0];
  var setOption='<select name="syurui" id="syurui">';
  //alert(obj.value);
  for( var val in bunruiSet[f.bunrui.value]){
	setOption+= "<option value='"+val+"'>"+val+"</option>\n";
  }
  setOption+="</select>";
  s.innerHTML= setOption;
}

function koyouhokenkeisan(){
  var f=document.forms[0];

  if(f.bunrui.value=="事業の分類を選択してください" || f.syurui== null ){
	alert("事業の分類を選択してください");
	f.bunrui.focus();
	return;
  }
  
  var partChingin=0;
  var hiChingin=0;
  
  for( var val=0; val<14; val++){
	partChingin+= parseInt(f.part[val].value);
  }
  
  for( var val=0; val<14; val++){
	hiChingin+= parseInt(f.hi[val].value);
  }
  
  var totalRousai= partChingin+hiChingin;
  var rousaiHokenRyo= totalRousai*bunruiSet[f.bunrui.value][f.syurui.value];
  
  if(f.kubun[0].checked){
	var total= hiChingin*(15/1000);
	var ji= hiChingin*(9/1000);
	var hi= hiChingin*(6/1000);
  }
  else if(f.kubun[1].checked){
	var total= hiChingin*(17/1000);
	var ji= hiChingin*(10/1000);
	var hi= hiChingin*(7/1000);
  }
  else{
	var total= hiChingin*(18/1000);
	var ji= hiChingin*(11/1000);
	var hi= hiChingin*(7/1000);
  }

  alert("A パート・アルバイトの総支給額：" + partChingin + "円\n"+
		"B 被保険者の総支給額：" + hiChingin + "円\n"+
		"A+B 合計金額：" + totalRousai + "円\n"+
		"労災保険料率：" + bunruiSet[f.bunrui.value][f.syurui.value] + "\n"+
		"労災保険料：" + Math.ceil(rousaiHokenRyo) + "円\n\n"+
		"雇用保険料：" + Math.ceil(total) + "円\n"+
		"事業主負担：" + Math.ceil(ji) + "円\n"+
		"被保険者負担：" + Math.ceil(hi) + "円\n");
  
}

/*
社会保険
**************
*/
function getHyoujyun(kingaku){
  if(kingaku > 1210000 ){
	return 1210000;
  }
  if(kingaku < 58000 ){
	return 58000;
  }
  else if( kingaku < 63000) return 58000;

	if(63000<= kingaku && kingaku < 73000) return 68000;
	if(73000<= kingaku && kingaku < 83000) return 78000;
	if(83000<= kingaku && kingaku < 93000) return 88000;
	if(93000<= kingaku && kingaku < 101000) return 98000;
	if(101000<= kingaku && kingaku < 107000) return 104000;
	if(107000<= kingaku && kingaku < 114000) return 110000;
	if(114000<= kingaku && kingaku < 122000) return 118000;
	if(122000<= kingaku && kingaku < 130000) return 126000;
	if(130000<= kingaku && kingaku < 138000) return 134000;
	if(138000<= kingaku && kingaku < 146000) return 142000;
	if(146000<= kingaku && kingaku < 155000) return 150000;
	if(155000<= kingaku && kingaku < 165000) return 160000;
	if(165000<= kingaku && kingaku < 175000) return 170000;
	if(175000<= kingaku && kingaku < 185000) return 180000;
	if(185000<= kingaku && kingaku < 195000) return 190000;
	if(195000<= kingaku && kingaku < 210000) return 200000;

	if(210000<= kingaku && kingaku < 230000) return 220000;
	if(230000<= kingaku && kingaku < 250000) return 240000;
	if(250000<= kingaku && kingaku < 270000) return 260000;
	if(270000<= kingaku && kingaku < 290000) return 280000;
	if(290000<= kingaku && kingaku < 310000) return 300000;

	if(310000<= kingaku && kingaku < 330000) return 320000;
	if(330000<= kingaku && kingaku < 350000) return 340000;
	if(350000<= kingaku && kingaku < 370000) return 360000;
	if(370000<= kingaku && kingaku < 395000) return 380000;
	if(395000<= kingaku && kingaku < 425000) return 410000;

	if(425000<= kingaku && kingaku < 455000) return 440000;
	if(455000<= kingaku && kingaku < 485000) return 470000;
	if(485000<= kingaku && kingaku < 515000) return 500000;

	if(515000<= kingaku && kingaku < 545000) return 530000;
	if(545000<= kingaku && kingaku < 575000) return 560000;
	if(575000<= kingaku && kingaku < 605000) return 590000;

	if(605000<= kingaku && kingaku < 635000) return 620000;
	if(635000<= kingaku && kingaku < 665000) return 650000;
	if(665000<= kingaku && kingaku < 695000) return 680000;

	if(695000<= kingaku && kingaku < 730000) return 710000;
	if(730000<= kingaku && kingaku < 770000) return 750000;
	if(770000<= kingaku && kingaku < 810000) return 790000;

	if(810000<= kingaku && kingaku < 855000) return 830000;
	if(855000<= kingaku && kingaku < 905000) return 880000;

	if(905000<= kingaku && kingaku < 955000) return 930000;
	if(955000<= kingaku && kingaku < 1005000) return 980000;
	if(1005000<= kingaku && kingaku < 1055000) return 1030000;
	if(1055000<= kingaku && kingaku < 1155000) return 1090000;
	if(1155000<= kingaku && kingaku < 1175000) return 1150000;
	if(1175000<= kingaku ) return 1210000;

}
/*
function getHyoujyun(kingaku){
  if(kingaku.length > 6 ){
	return 980000;
  }
  if(kingaku.length < 6 ){
	return 98000;
  }
  else if( kingaku < 101000) return 98000;
  
  if(kingaku.match(/^[1|2]/)){
	if(101000<= kingaku && kingaku < 107000) return 104000;
	if(107000<= kingaku && kingaku < 114000) return 110000;
	if(114000<= kingaku && kingaku < 122000) return 118000;
	if(122000<= kingaku && kingaku < 130000) return 126000;
	if(130000<= kingaku && kingaku < 138000) return 134000;
	if(138000<= kingaku && kingaku < 146000) return 142000;
	if(146000<= kingaku && kingaku < 155000) return 150000;
	if(155000<= kingaku && kingaku < 165000) return 160000;
	if(165000<= kingaku && kingaku < 175000) return 170000;
	if(175000<= kingaku && kingaku < 185000) return 180000;
	if(185000<= kingaku && kingaku < 195000) return 190000;
	if(195000<= kingaku && kingaku < 210000) return 200000;
  }
  if(kingaku.match(/^[2|3]/)){
	if(210000<= kingaku && kingaku < 230000) return 220000;
	if(230000<= kingaku && kingaku < 250000) return 240000;
	if(250000<= kingaku && kingaku < 270000) return 260000;
	if(270000<= kingaku && kingaku < 290000) return 280000;
	if(290000<= kingaku && kingaku < 310000) return 300000;
  }
  if(kingaku.match(/^[3|4]/)){
	if(310000<= kingaku && kingaku < 330000) return 320000;
	if(330000<= kingaku && kingaku < 350000) return 340000;
	if(350000<= kingaku && kingaku < 370000) return 360000;
	if(370000<= kingaku && kingaku < 395000) return 380000;
	if(395000<= kingaku && kingaku < 425000) return 410000;
  }
  if(kingaku.match(/^[4|5]/)){
	if(425000<= kingaku && kingaku < 455000) return 440000;
	if(455000<= kingaku && kingaku < 485000) return 470000;
	if(485000<= kingaku && kingaku < 515000) return 500000;
  }
  if(kingaku.match(/^[5|6]/)){
	if(515000<= kingaku && kingaku < 545000) return 530000;
	if(545000<= kingaku && kingaku < 575000) return 560000;
	if(575000<= kingaku && kingaku < 605000) return 590000;
  }
  if(kingaku.match(/^[6|7]/)){
	if(605000<= kingaku && kingaku < 635000) return 620000;
	if(635000<= kingaku && kingaku < 665000) return 650000;
	if(665000<= kingaku && kingaku < 695000) return 680000;
  }
  if(kingaku.match(/^[7|8]/)){
	if(695000<= kingaku && kingaku < 730000) return 710000;
	if(730000<= kingaku && kingaku < 770000) return 750000;
	if(770000<= kingaku && kingaku < 810000) return 790000;
  }
  if(kingaku.match(/^[8|9]/)){
	if(810000<= kingaku && kingaku < 855000) return 830000;
	if(855000<= kingaku && kingaku < 905000) return 880000;
  }
  if(kingaku.match(/^9/)){
	if(905000<= kingaku && kingaku < 955000) return 930000;
	if(955000<= kingaku ) return 980000;
  }
}
*/
function syakaiKojinView(listNo){
  var f=document.syakai;
  if(f.getugaku[listNo].value == 0 || f.toshi[listNo].value == 0){
	var getugaku=0;
	var kenKaisya=0;
	var kenHonnin=0;
	var kaigoKaisya=0;
	var kaigoHonnin=0;
	var koseiKaisya=0;
	var koseiHonnin=0;
	var jidou=0;
  }
  else{
	var getugaku= getHyoujyun(f.getugaku[listNo].value);
	var kenKaisya= getugaku*(41/1000);
	var kenHonnin= getugaku*(41/1000);
	
	/*
	※1
	18年3月〜
	介護保険第２号被保険者(40才以上65才未満)の介護負担分
	介護保険第２号被保険者(40才以上65才未満)の健康保険料率9.43%-介護保険第２号被保険者でないものの健康保険料率8.2%=
	1.23%(実質の介護保険負担分)12.3/1000
	*/
	if(40 <= f.toshi[listNo].value && f.toshi[listNo].value < 65){
	  var kaigoKaisya= getugaku*(6.15/1000);
	  var kaigoHonnin= getugaku*(6.15/1000);
	}
	else{
	  var kaigoKaisya= 0;
	  var kaigoHonnin= 0;
	}
	if(620000 < getugaku){
	  getugaku= 620000;
	}
	//平成17年9月分からの厚生年金保険
	var koseiKaisya= getugaku*(73.21/1000);
	var koseiHonnin= getugaku*(73.21/1000);
	var jidou= getugaku*(0.9/1000);
	
	if(69 < f.toshi[listNo].value){
	  koseiKaisya= 0;
	  koseiHonnin= 0;
	}
  }
  
  alert("標準報酬月額：" + getugaku + "円\n"+
		"健康保険(会社負担41/1000)：" + Math.ceil(kenKaisya) + "円\n"+
		"健康保険(本人負担41/1000)：" + Math.ceil(kenHonnin) + "円\n"+
		"介護保険(会社負担6.15/1000)：" + Math.ceil(kaigoKaisya) + "円\n"+
		"介護保険(本人負担6.15/1000)：" + Math.ceil(kaigoHonnin) + "円\n"+
		"厚生年金(会社負担73.21/1000)：" + Math.ceil(koseiKaisya) + "円\n"+
		"厚生年金(本人負担73.21/1000)：" + Math.ceil(koseiHonnin) + "円\n"+
		"児童手当拠出金(会社負担0.9/1000)：" + Math.ceil(jidou) + "円\n");		
}

function syakaiTotalView(){
  var f=document.syakai;
  var getugaku= 0;
  var kenKaisya= 0;
  var kenHonnin= 0;
  var kaigoKaisya= 0;
  var kaigoHonnin= 0;
  var koseiKaisya= 0;
  var koseiHonnin= 0;
  var jidou= 0;
  
  for( var i= 0; i< 16; i++){
	if(f.getugaku[i].value != 0 || f.toshi[i].value != 0){
	  getugaku= getHyoujyun(f.getugaku[i].value);
	  kenKaisya+= getugaku*(41/1000);
	  kenHonnin+= getugaku*(41/1000);
	  /*
	  ※1参照
	  介護保険料分
	  */
	  if(40 <= f.toshi[i].value && f.toshi[i].value < 65){
		kaigoKaisya+= getugaku*(6.15/1000);
		kaigoHonnin+= getugaku*(6.15/1000);
	  }
	  if(620000 < getugaku){
		getugaku= 620000;
	  }
	  //平成17年9月分からの厚生年金保険
	  koseiKaisya+= getugaku*(73.21/1000);
	  koseiHonnin+= getugaku*(73.21/1000);
	  jidou+= getugaku*(0.9/1000);
	}
  }
  
  var kaisyaGoukei= Math.ceil(kenKaisya)+Math.ceil(kaigoKaisya)+Math.ceil(koseiKaisya)+Math.ceil(jidou);
  
  alert("健康保険(会社負担41/1000)合計：" + Math.ceil(kenKaisya) + "円\n"+
		"健康保険(本人負担41/1000)合計：" + Math.ceil(kenHonnin) + "円\n"+
		"介護保険(会社負担6.15/1000)合計：" + Math.ceil(kaigoKaisya) + "円\n"+
		"介護保険(本人負担6.15/1000)合計：" + Math.ceil(kaigoHonnin) + "円\n"+
		"厚生年金(会社負担73.21/1000)合計：" + Math.ceil(koseiKaisya) + "円\n"+
		"厚生年金(本人負担73.21/1000)合計：" + Math.ceil(koseiHonnin) + "円\n"+
		"児童手当拠出金(会社負担0.9/1000)合計：" + Math.ceil(jidou) + "円\n\n"+
		"会社負担合計：" + kaisyaGoukei + "円\n");		
}