GetModel(); $db->where("PM_PROPNO", $pmid); $barr = $db->getOne("tb_prop_mas", "*"); $db->where("pm_prmstid", $barr["PM_PRMSTID"]); $arr = $db->get("tb_prop_det", 99999, "*"); $db->where("type_id", $barr["COD_USAGE1"]); $config = $db->getOne("tax_values", "*"); $config_rv_values = $db->get("RV_BASED_TAX_VALUES", 99999999, "*"); $malmat_kar = 0; $vrush_kar = 0; $vishy_shikshan_kar = 0; $val = 1; if ($barr["COD_USAGE1"] == 10) { $val = 1; } $svach_kar = $config["svach_kar"] * $val; $agnishamak_kar = 0; $shikshan_kar = 0; $rojgar = 0; $col = "non_resi_shik"; if ($barr["COD_USAGE1"] == 13) { $col = "resi_shiks"; } $PROP_TYPE = $config["tax_type"]; $total_rv = 0; $RV_RESI = 0; $RV_NONRESI = 0; foreach ($arr as $a) { $col = "non_resi_shik"; if ($a["COD_USAGE1"] == 13) { $col = "resi_shiks"; $RV_RESI += $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); } if ($col == "non_resi_shik") { $RV_NONRESI += $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); } $rv = $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); $total_rv += $rv; //MILKAT MAR $malmat_kar += ROUND($rv * $config["malmat_kar"], 0); $vrush_kar += ROUND($rv * $config["vrush_kar"], 0); $vishy_shikshan_kar += ROUND( $rv * $config["malmat_kar"] * $config["vishy_shiksan_kar"], 0 ); $agnishamak_kar += ROUND( $rv * $config["malmat_kar"] * $config["agnishamak_kar"], 0 ); $trv = $a["PD_ALV"]; foreach ($config_rv_values as $c) { if ($c["rv_from"] <= $trv && $c["rv_to"] >= $trv) { $shikshan_kar += ROUND($rv * $c[$col], 0); if ($col != "resi_shiks") { $rojgar += ROUND($rv * $c["rojgar_non_resi"], 0); } break; } } } $rtn["total_tax1"] = round( $malmat_kar + $vrush_kar + $vishy_shikshan_kar + $svach_kar + $agnishamak_kar + $shikshan_kar + $rojgar, 2 ); $rtn["pmid"] = round($pmid, 2); $rtn["ptax_1"] = round($malmat_kar); $rtn["ptax_10"] = round($vrush_kar); $rtn["ptax_2"] = round($vishy_shikshan_kar); $rtn["ptax_17"] = round($svach_kar); $rtn["ptax_19"] = round($agnishamak_kar); $rtn["ptax_4"] = round($shikshan_kar); $rtn["ptax_5"] = round($rojgar); $rtn_prop = "निवासी"; if ($PROP_TYPE == "NON_RESIDENT") { $rtn_prop = "बिगर निवासी"; } if ($PROP_TYPE == "MIXED") { $rtn_prop = "मिश्र"; } $rtn["RTN_PROP_TYPE"] = $rtn_prop; $rtn["PROP_TYPE"] = $PROP_TYPE; $rtn["RV_r"] = round($RV_RESI, 2); $rtn["RV_nr"] = round($RV_NONRESI, 2); $INTREST = 0; $malmat_kar = 0; $vishy_shikshan_kar = 0; $vishy_pani_kar = 0; $rojgar = 0; $building = 0; $vrush_kar = 0; $agnishamak_kar = 0; $general_water = 0; $month_3 = 0; $svach_kar = 0; $db->orderby("BM_YEAR", "ASC"); $db->where("PM_PRMSTID", $barr["PM_PRMSTID"]); $BM_IDNO = $db->get("TB_BILL_MAS", 99999999, "*"); $TB_TAXRT_MAS = $db->get("TB_TAXRT_MAS", 99999999, "*"); $tax_data = []; $total_interest = 0; $total_prev_tax = 0; foreach ($BM_IDNO as $BM_IDNOk) { $year = $BM_IDNOk["BM_YEAR"]; // ECHO $BM_IDNOk['BM_IDNO'];ECHO "
"; // ECHO $BM_IDNOk['BM_BILLDT'];ECHO "
"; $db->where("BD_CLEAR", "N"); $db->where("BM_IDNO", $BM_IDNOk["BM_IDNO"]); $arr = $db->get("tb_BILL_DETAIL", 9999999, "*"); foreach ($arr as $a) { if ($a["TM_TAXID"] != 15) { $total_prev_tax += $a["BD_BAL_TAXAMT"]; if ($a["BD_BAL_TAXAMT"] > 0) { $found = false; $tmp_tax = ($a["BD_BAL_TAXAMT"] / 2) * 3 * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * 3 * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * ((date("Y") - $year - 1) * 12) * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * (date("m") - 3) * 0.02; $total_interest += $tmp_tax; foreach ($tax_data as $ins => $td) { if ($a["TM_TAXID"] == $td["TM_TAXID"]) { $tax_data[$ins]["val"] = round($a["BD_BAL_TAXAMT"], 2) + $td["val"]; $found = true; } } if (!$found) { $tax_data[] = [ "TM_TAXID" => $a["TM_TAXID"], "val" => round($a["BD_BAL_TAXAMT"], 2), ]; } } } } } function GET_PROP_DEMAND($pmid) { $db = $this->GetModel(); $db->where("PM_PROPNO", $pmid); $barr = $db->getOne("tb_prop_mas", "*"); $db->where("pm_prmstid", $barr["PM_PRMSTID"]); $arr = $db->get("tb_prop_det", 99999, "*"); $db->where("type_id", $barr["COD_USAGE1"]); $config = $db->getOne("tax_values", "*"); $config_rv_values = $db->get("RV_BASED_TAX_VALUES", 99999999, "*"); $malmat_kar = 0; $vrush_kar = 0; $vishy_shikshan_kar = 0; $val = 1; if ($barr["COD_USAGE1"] == 10) { $val = 1; } $svach_kar = $config["svach_kar"] * $val; $agnishamak_kar = 0; $shikshan_kar = 0; $rojgar = 0; $col = "non_resi_shik"; if ($barr["COD_USAGE1"] == 13) { $col = "resi_shiks"; } $PROP_TYPE = $config["tax_type"]; $total_rv = 0; $RV_RESI = 0; $RV_NONRESI = 0; foreach ($arr as $a) { $col = "non_resi_shik"; if ($a["COD_USAGE1"] == 13) { $col = "resi_shiks"; $RV_RESI += $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); } if ($col == "non_resi_shik") { $RV_NONRESI += $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); } $rv = $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); $total_rv += $rv; //MILKAT MAR $malmat_kar += ROUND($rv * $config["malmat_kar"], 0); $vrush_kar += ROUND($rv * $config["vrush_kar"], 0); $vishy_shikshan_kar += ROUND( $rv * $config["malmat_kar"] * $config["vishy_shiksan_kar"], 0 ); $agnishamak_kar += ROUND( $rv * $config["malmat_kar"] * $config["agnishamak_kar"], 0 ); $trv = $a["PD_ALV"]; foreach ($config_rv_values as $c) { if ($c["rv_from"] <= $trv && $c["rv_to"] >= $trv) { $shikshan_kar += ROUND($rv * $c[$col], 0); if ($col != "resi_shiks") { $rojgar += ROUND($rv * $c["rojgar_non_resi"], 0); } break; } } } $rtn["total_tax1"] = round( $malmat_kar + $vrush_kar + $vishy_shikshan_kar + $svach_kar + $agnishamak_kar + $shikshan_kar + $rojgar, 2 ); $rtn["pmid"] = round($pmid, 2); $rtn["ptax_1"] = round($malmat_kar); $rtn["ptax_10"] = round($vrush_kar); $rtn["ptax_2"] = round($vishy_shikshan_kar); $rtn["ptax_17"] = round($svach_kar); $rtn["ptax_19"] = round($agnishamak_kar); $rtn["ptax_4"] = round($shikshan_kar); $rtn["ptax_5"] = round($rojgar); $rtn_prop = "निवासी"; if ($PROP_TYPE == "NON_RESIDENT") { $rtn_prop = "बिगर निवासी"; } if ($PROP_TYPE == "MIXED") { $rtn_prop = "मिश्र"; } $rtn["RTN_PROP_TYPE"] = $rtn_prop; $rtn["PROP_TYPE"] = $PROP_TYPE; $rtn["RV_r"] = round($RV_RESI, 2); $rtn["RV_nr"] = round($RV_NONRESI, 2); $INTREST = 0; $malmat_kar = 0; $vishy_shikshan_kar = 0; $vishy_pani_kar = 0; $rojgar = 0; $building = 0; $vrush_kar = 0; $agnishamak_kar = 0; $general_water = 0; $month_3 = 0; $svach_kar = 0; $db->orderby("BM_YEAR", "ASC"); $db->where("PM_PRMSTID", $barr["PM_PRMSTID"]); $BM_IDNO = $db->get("TB_BILL_MAS", 99999999, "*"); $TB_TAXRT_MAS = $db->get("TB_TAXRT_MAS", 99999999, "*"); $tax_data = []; $total_interest = 0; $total_prev_tax = 0; foreach ($BM_IDNO as $BM_IDNOk) { $year = $BM_IDNOk["BM_YEAR"]; // ECHO $BM_IDNOk['BM_IDNO'];ECHO "
"; // ECHO $BM_IDNOk['BM_BILLDT'];ECHO "
"; $db->where("BD_CLEAR", "N"); $db->where("BM_IDNO", $BM_IDNOk["BM_IDNO"]); $arr = $db->get("tb_BILL_DETAIL", 9999999, "*"); foreach ($arr as $a) { if ($a["TM_TAXID"] != 15) { $total_prev_tax += $a["BD_BAL_TAXAMT"]; if ($a["BD_BAL_TAXAMT"] > 0) { $found = false; $tmp_tax = ($a["BD_BAL_TAXAMT"] / 2) * 3 * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * 3 * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * ((date("Y") - $year - 1) * 12) * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * (date("m") - 3) * 0.02; $total_interest += $tmp_tax; foreach ($tax_data as $ins => $td) { if ($a["TM_TAXID"] == $td["TM_TAXID"]) { $tax_data[$ins]["val"] = round($a["BD_BAL_TAXAMT"], 2) + $td["val"]; $found = true; } } if (!$found) { $tax_data[] = [ "TM_TAXID" => $a["TM_TAXID"], "val" => round($a["BD_BAL_TAXAMT"], 2), ]; } } } } } } $tax_data[] = ["TM_TAXID" => "15", "val" => round($total_interest, 2)]; $rtn["taxdet"] = $TB_TAXRT_MAS; $rtn["yr"] = date("Y") + 0; $rtn["pretax"] = $tax_data; $rtn["totalint"] = round($total_interest, 2); $rtn["totalprevtax"] = round($total_prev_tax, 2); $rtn["property"] = $barr; render_json($rtn); } function GET_PROP_DEMAND($pmid) { error_reporting(0); $db = $this->GetModel(); $db->where("PM_PROPNO", $pmid); $barr = $db->getOne("tb_prop_mas", "*"); $db->where("pm_prmstid", $barr["PM_PRMSTID"]); $arr = $db->get("tb_prop_det", 99999, "*"); $db->where("property", $pmid); $UPYOG_CATEGORIES = $db->get("UPYOG_CATEGORIES", 99999, "*") ; $us = $db->get("Upyog_Shulk", 99999, "*") ; $Expemtion_Info = $db->get("Expemtion_Info", 99999, "*"); $Expemtion_data = $db->get("Expemtion_DATA", 99999, "*"); $configration = $db->get("tax_configuration", 99999, "*"); $RV_VAL = $db->get("RV_BASED_TAX_VALUES", 99999, "*"); $TAXRT_MAS = $db->get("TB_TAXRT_MAS", 99999, "*"); $db->where("type_id", $barr["COD_USAGE1"]); $config = $db->getOne("tax_values", "*"); $config_rv_values = $db->get("RV_BASED_TAX_VALUES", 99999999, "*"); $malmat_kar = 0; $vrush_kar = 0; $vishy_shikshan_kar = 0; $PUT=[]; $val = 1; if ($barr["COD_USAGE1"] == 10) { $val = 1; } $svach_kar = $config["svach_kar"] * $val; $agnishamak_kar = 0; $shikshan_kar = 0; $rojgar = 0; $col = "non_resi_shik"; if ($barr["COD_USAGE1"] == 13) { $col = "resi_shiks"; } $PROP_TYPE = $config["tax_type"]; $total_rv = 0; $RV_RESI = 0; $RV_NONRESI = 0; $TOTAL_TAX=0; foreach ($arr as $a) { $col = "non_resi_shik"; if ($a["COD_USAGE1"] == 13) { $col = "resi_shiks"; $RV_RESI += $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); } if ($col == "non_resi_shik") { $RV_NONRESI += $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); } $rv = $a["PD_ALV"] - $a["PD_ALV"] * 0.1; $lv = $a["PD_ALV"] ; $total_rv += $rv; // //MILKAT MAR // $malmat_kar += ROUND($rv * $config["malmat_kar"], 0); // $vrush_kar += ROUND($rv * $config["vrush_kar"], 0); // $vishy_shikshan_kar += ROUND( // $rv * $config["malmat_kar"] * $config["vishy_shiksan_kar"], // 0 // ); // $agnishamak_kar += ROUND( // $rv * $config["malmat_kar"] * $config["agnishamak_kar"], // 0 // ); // $trv = $a["PD_ALV"]; // foreach ($config_rv_values as $c) { // if ($c["rv_from"] <= $trv && $c["rv_to"] >= $trv) { // $shikshan_kar += ROUND($rv * $c[$col], 0); // if ($col != "resi_shiks") { // $rojgar += ROUND($rv * $c["rojgar_non_resi"], 0); // } // break; // } // } // } // $rtn["total_tax1"] = round( // $malmat_kar + // $vrush_kar + // $vishy_shikshan_kar + // $svach_kar + // $agnishamak_kar + // $shikshan_kar + // $rojgar, // 2 // ); $intprop="RESIDENTIAL"; $rtn_prop = "निवासी"; if ($PROP_TYPE == "NON_RESIDENT") { $rtn_prop = "बिगर निवासी"; $intprop="NON_RESIDENTIAL"; } if ($PROP_TYPE == "MIXED") { $intprop="MIXED"; $rtn_prop = "मिश्र"; } $tmpptx=0; foreach ($TAXRT_MAS as $tax ) { $tax_id=$tax['TM_TAXID']; //CHECK FOR EXPTION. $continue=false; foreach($Expemtion_Info as $ei){ if(str_replace(" ","",$ei['exemption_tax_id'])==$tax_id){ $continue=true; foreach($Expemtion_data as $ed){ if(str_replace(" ","",$ed['exemption_property_no'])==$pmid){ $continue=true; continue; } } } } if($continue){ continue; }else{ $found=false; $conf=[]; foreach($configration as $c){ if($c['taxid']==$tax_id && $c['property_type']==$intprop){ $found=true; $conf=$c; } } if($found){ // echo $tax_id; if($conf['property_type']==$intprop){ $tax_type=$conf['tax_type']; $calculation_on=$conf['calculation_on']; if($tax_type=="PLAIN"){ if(!isset($PUT['ptax_'.$tax_id])){ $val=0; if(isset($rtn['ptax_'.$tax_id])){ $val=$rtn['ptax_'.$tax_id]; } $rtn['ptax_'.$tax_id]=$conf['prct']+$val; $TOTAL_TAX+=$conf['prct']; } $PUT['ptax_'.$tax_id]='dne'; } if($tax_type=="RV_PRCT"){ $tmp=$rv; if($calculation_on=="LV"){ $tmp=$lv; } if($tax_id==1){ $tmpptx=$tmp*$conf['prct']; } if($calculation_on=="PTAX"){ $tmp=$tmpptx; } $rtn['ptax_'.$tax_id]=round($val+($tmp*$conf['prct'])); $TOTAL_TAX+=round($tmp*$conf['prct']); } if($tax_type=="RV_VALUE_VARIABLE_BASED"){ $tmp=$rv; $tmpcmp=$rv; if($calculation_on=="LV"){ $tmp=$lv; } if($calculation_on=="PTAX"){ $tmp=$tmpptx; } if($conf['search_on']=="LV"){ $tmpcmp=$lv; } $mul=0; foreach($RV_VAL as $rva){ if($rva['tax_config_id']==$conf['id']){ if( $tmpcmp>=$rva['rv_from'] && $tmpcmp<=$rva['rv_to'] ){ $mul=$rva['prct']; } } } $val=0; if(isset($rtn['ptax_'.$tax_id])){ $val=$rtn['ptax_'.$tax_id]; } $rtn['ptax_'.$tax_id]=round($val+($tmp*$mul),2); $TOTAL_TAX+=round($rv*$mul,2); } } } } } } // if(isset($us['rate'])){ // print_r($UPYOG_CATEGORIES); foreach($UPYOG_CATEGORIES as $uc){ foreach($us as $uss){ if($uss['id']==$uc['category']){ $TOTAL_TAX+=$uss['rate']; $tmp=0; if(isset($rtn["ptax_22"])){ $tmp=$rtn["ptax_22"]; } $rtn["ptax_22"] = round($tmp+($uss['rate']*12), 2); } } // } } $rtn["total_tax1"] = round($TOTAL_TAX, 2); $rtn["pmid"] = round($pmid, 2); // $rtn["ptax_1"] = round($malmat_kar); // $rtn["ptax_10"] = round($vrush_kar); // $rtn["ptax_2"] = round($vishy_shikshan_kar); // $rtn["ptax_17"] = round($svach_kar); // $rtn["ptax_19"] = round($agnishamak_kar); // $rtn["ptax_4"] = round($shikshan_kar); // $rtn["ptax_5"] = round($rojgar); $rtn["RTN_PROP_TYPE"] = $rtn_prop; $rtn["PROP_TYPE"] = $PROP_TYPE; $rtn["RV_r"] = round($RV_RESI, 2); $rtn["RV_nr"] = round($RV_NONRESI, 2); $INTREST = 0; $malmat_kar = 0; $vishy_shikshan_kar = 0; $vishy_pani_kar = 0; $rojgar = 0; $building = 0; $vrush_kar = 0; $agnishamak_kar = 0; $general_water = 0; $month_3 = 0; $svach_kar = 0; $db->orderby("BM_YEAR", "ASC"); $db->where("PM_PRMSTID", $barr["PM_PRMSTID"]); $BM_IDNO = $db->get("TB_BILL_MAS", 99999999, "*"); $TB_TAXRT_MAS = $db->get("TB_TAXRT_MAS", 99999999, "*"); $tax_data = []; $total_interest = 0; $total_prev_tax = 0; foreach ($BM_IDNO as $BM_IDNOk) { $year = $BM_IDNOk["BM_YEAR"]; // ECHO $BM_IDNOk['BM_IDNO'];ECHO "
"; // ECHO $BM_IDNOk['BM_BILLDT'];ECHO "
"; $db->where("(BD_CLEAR='N' OR BD_BAL_TAXAMT<0)"); $db->where("BM_IDNO", $BM_IDNOk["BM_IDNO"]); $arr = $db->get("tb_BILL_DETAIL", 9999999, "*"); foreach ($arr as $a) { if ($a["TM_TAXID"] != 15) { // if($a['BD_ARREASAMT']<0){ // $a["BD_BAL_TAXAMT"]=$a['BD_ARREASAMT']; // } $total_prev_tax += $a["BD_BAL_TAXAMT"]; if ($a["BD_BAL_TAXAMT"] > 0 || true) { $found = false; // if($a["BD_BAL_TAXAMT"] > 0) $tmp_tax = ($a["BD_BAL_TAXAMT"] / 2) * 3 * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * 3 * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * ((date("Y") - $year - 1) * 12) * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * (date("m") - 3) * 0.02; $total_interest += $tmp_tax; foreach ($tax_data as $ins => $td) { if ($a["TM_TAXID"] == $td["TM_TAXID"]) { $tax_data[$ins]["val"] = round($a["BD_BAL_TAXAMT"], 2) + $td["val"]; $found = true; } } if (!$found) { $tax_data[] = [ "TM_TAXID" => $a["TM_TAXID"], "val" => round($a["BD_BAL_TAXAMT"], 2), ]; } } } } } function GET_PROP_DEMAND($pmid) { $db = $this->GetModel(); $db->where("PM_PROPNO", $pmid); $barr = $db->getOne("tb_prop_mas", "*"); $db->where("pm_prmstid", $barr["PM_PRMSTID"]); $arr = $db->get("tb_prop_det", 99999, "*"); $db->where("type_id", $barr["COD_USAGE1"]); $config = $db->getOne("tax_values", "*"); $config_rv_values = $db->get("RV_BASED_TAX_VALUES", 99999999, "*"); $malmat_kar = 0; $vrush_kar = 0; $vishy_shikshan_kar = 0; $val = 1; if ($barr["COD_USAGE1"] == 10) { $val = 1; } $svach_kar = $config["svach_kar"] * $val; $agnishamak_kar = 0; $shikshan_kar = 0; $rojgar = 0; $col = "non_resi_shik"; if ($barr["COD_USAGE1"] == 13) { $col = "resi_shiks"; } $PROP_TYPE = $config["tax_type"]; $total_rv = 0; $RV_RESI = 0; $RV_NONRESI = 0; foreach ($arr as $a) { $col = "non_resi_shik"; if ($a["COD_USAGE1"] == 13) { $col = "resi_shiks"; $RV_RESI += $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); } if ($col == "non_resi_shik") { $RV_NONRESI += $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); } $rv = $a["PD_ALV"] - ($a["PD_ALV"] * 0.1); $total_rv += $rv; //MILKAT MAR $malmat_kar += ROUND($rv * $config["malmat_kar"], 0); $vrush_kar += ROUND($rv * $config["vrush_kar"], 0); $vishy_shikshan_kar += ROUND( $rv * $config["malmat_kar"] * $config["vishy_shiksan_kar"], 0 ); $agnishamak_kar += ROUND( $rv * $config["malmat_kar"] * $config["agnishamak_kar"], 0 ); $trv = $a["PD_ALV"]; foreach ($config_rv_values as $c) { if ($c["rv_from"] <= $trv && $c["rv_to"] >= $trv) { $shikshan_kar += ROUND($rv * $c[$col], 0); if ($col != "resi_shiks") { $rojgar += ROUND($rv * $c["rojgar_non_resi"], 0); } break; } } } $rtn["total_tax1"] = round( $malmat_kar + $vrush_kar + $vishy_shikshan_kar + $svach_kar + $agnishamak_kar + $shikshan_kar + $rojgar, 2 ); $rtn["pmid"] = round($pmid, 2); $rtn["ptax_1"] = round($malmat_kar); $rtn["ptax_10"] = round($vrush_kar); $rtn["ptax_2"] = round($vishy_shikshan_kar); $rtn["ptax_17"] = round($svach_kar); $rtn["ptax_19"] = round($agnishamak_kar); $rtn["ptax_4"] = round($shikshan_kar); $rtn["ptax_5"] = round($rojgar); $rtn_prop = "निवासी"; if ($PROP_TYPE == "NON_RESIDENT") { $rtn_prop = "बिगर निवासी"; } if ($PROP_TYPE == "MIXED") { $rtn_prop = "मिश्र"; } $rtn["RTN_PROP_TYPE"] = $rtn_prop; $rtn["PROP_TYPE"] = $PROP_TYPE; $rtn["RV_r"] = round($RV_RESI, 2); $rtn["RV_nr"] = round($RV_NONRESI, 2); $INTREST = 0; $malmat_kar = 0; $vishy_shikshan_kar = 0; $vishy_pani_kar = 0; $rojgar = 0; $building = 0; $vrush_kar = 0; $agnishamak_kar = 0; $general_water = 0; $month_3 = 0; $svach_kar = 0; $db->orderby("BM_YEAR", "ASC"); $db->where("PM_PRMSTID", $barr["PM_PRMSTID"]); $BM_IDNO = $db->get("TB_BILL_MAS", 99999999, "*"); $TB_TAXRT_MAS = $db->get("TB_TAXRT_MAS", 99999999, "*"); $tax_data = []; $total_interest = 0; $total_prev_tax = 0; foreach ($BM_IDNO as $BM_IDNOk) { $year = $BM_IDNOk["BM_YEAR"]; // ECHO $BM_IDNOk['BM_IDNO'];ECHO "
"; // ECHO $BM_IDNOk['BM_BILLDT'];ECHO "
"; $db->where("BD_CLEAR", "N"); $db->where("BM_IDNO", $BM_IDNOk["BM_IDNO"]); $arr = $db->get("tb_BILL_DETAIL", 9999999, "*"); foreach ($arr as $a) { if ($a["TM_TAXID"] != 15) { $total_prev_tax += $a["BD_BAL_TAXAMT"]; if ($a["BD_BAL_TAXAMT"] > 0) { $found = false; $tmp_tax = ($a["BD_BAL_TAXAMT"] / 2) * 3 * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * 3 * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * ((date("Y") - $year - 1) * 12) * 0.02; $tmp_tax += $a["BD_BAL_TAXAMT"] * (date("m") - 3) * 0.02; $total_interest += $tmp_tax; foreach ($tax_data as $ins => $td) { if ($a["TM_TAXID"] == $td["TM_TAXID"]) { $tax_data[$ins]["val"] = round($a["BD_BAL_TAXAMT"], 2) + $td["val"]; $found = true; } } if (!$found) { $tax_data[] = [ "TM_TAXID" => $a["TM_TAXID"], "val" => round($a["BD_BAL_TAXAMT"], 2), ]; } } } } } } $tax_data[] = ["TM_TAXID" => "15", "val" => round($total_interest, 2)]; $rtn["taxdet"] = $TB_TAXRT_MAS; $rtn["yr"] = date("Y") + 0; $rtn["pretax"] = $tax_data; $rtn["totalint"] = round($total_interest, 2); $rtn["totalprevtax"] = round($total_prev_tax, 2); $rtn["property"] = $barr; render_json($rtn); } function generate_demand($ay) { $db = $this->getModel(); ini_set("max_execution_time", "0"); // for infinite time of execution $barrr = $db->get("tb_prop_mas", 999999999, "COD_USAGE1,PM_PRMSTID"); foreach ($barrr as $barr) { $db->where("pm_prmstid", $barr["PM_PRMSTID"]); $arr = $db->get("tb_prop_det", 99999, "*"); $db->where("type_id", $barr["COD_USAGE1"]); $config = $db->getOne("tax_values", "*"); $config_rv_values = $db->get("RV_BASED_TAX_VALUES", 99999999, "*"); $malmat_kar = 0; $vrush_kar = 0; $vishy_shikshan_kar = 0; $val = 1; if ($barr["COD_USAGE1"] == 10) { $val = 1; } $svach_kar = $config["svach_kar"] * $val; $agnishamak_kar = 0; $shikshan_kar = 0; $rojgar = 0; $col = "non_resi_shik"; if ($barr["COD_USAGE1"] == 13) { $col = "resi_shiks"; } $PROP_TYPE = $config["tax_type"]; $total_rv = 0; foreach ($arr as $a) { $col = "non_resi_shik"; if ($a["COD_USAGE1"] == 13) { $col = "resi_shiks"; } $rv = $a["PD_RV"]; $total_rv += $rv; //MILKAT MAR $malmat_kar += ROUND($rv * $config["malmat_kar"], 0); $vrush_kar += ROUND($rv * $config["vrush_kar"], 0); $vishy_shikshan_kar += ROUND( $rv * $config["malmat_kar"] * $config["vishy_shiksan_kar"], 0 ); $agnishamak_kar += ROUND( $rv * $config["malmat_kar"] * $config["agnishamak_kar"], 0 ); foreach ($config_rv_values as $c) { if ($c["rv_from"] <= $rv && $c["rv_to"] >= $rv) { $shikshan_kar += ROUND($rv * $c[$col], 0); if ($col != "resi_shiks") { $rojgar += ROUND($rv * $c["rojgar_non_resi"], 0); } break; } } } $rtn = []; $rtn["malmat_kar"] = round($malmat_kar, 2); $rtn["vrush_kar"] = round($vrush_kar, 2); $rtn["vishy_shikshan_kar"] = round($vishy_shikshan_kar, 2); $rtn["svach_kar"] = round($svach_kar, 2); $rtn["agnishamak_kar"] = round($agnishamak_kar, 2); $rtn["shikshan_kar"] = round($shikshan_kar, 2); $rtn["rojgar"] = round($rojgar, 2); $rtn["PROP_TYPE"] = $PROP_TYPE; echo $db->insert("TB_DEMAND_GENERATION", [ "property_id" => $barr["PM_PRMSTID"], "malmat_kar" => $rtn["malmat_kar"], "vrush_kar" => $rtn["vrush_kar"], "vishy_shikshan_kar" => $rtn["vishy_shikshan_kar"], "svach_kar" => $rtn["svach_kar"], "agnishamak_kar" => $rtn["agnishamak_kar"], "shikshan_kar" => $rtn["shikshan_kar"], "rojgar" => $rtn["rojgar"], "PROP_TYPE" => $rtn["PROP_TYPE"], "total_tax" => 0, "fin_year" => $ay, ]); exit(); } } }