oracle 滞纳金的计算
admin
2023-05-13 20:22:05
0

create or replace function GET_ZNJ(
JFJZRQ in date,
YJE in number,
ZNJBL in number,
ZT in varchar2,
SJJFRQ in date,
MIAN_ZNJ in varchar2,
ZNJ_JMCS in number
) return NUMBER is
V_ZNJ NUMBER(14,2);
V_DATE date;
V_DAYS number;
begin
  V_ZNJ := 0;


  IF ZT <= '4' THEN
     V_DATE := SYSDATE;
  END IF;
  IF ZT >= '5' THEN
     V_DATE := SJJFRQ;
  END IF;

  V_DAYS := trunc(V_DATE) - trunc(JFJZRQ);
  IF MIAN_ZNJ = '1' THEN --不予减免1
  BEGIN
     V_ZNJ := CASE WHEN V_DAYS <= 0 THEN 0
                ELSE NVL(ROUND(V_DAYS * YJE * ZNJBL,2),0)
            END;
  END;
  ELSIF MIAN_ZNJ = '0' THEN --全部减免0
  BEGIN
     V_ZNJ := 0;
  END;
  ELSIF MIAN_ZNJ = '2' THEN  --日期减免2
  BEGIN
     V_ZNJ := CASE WHEN V_DAYS - ZNJ_JMCS <= 0 THEN 0
                ELSE NVL(ROUND((V_DAYS - ZNJ_JMCS) * YJE * ZNJBL,2),0)
            END;
  END;
  ELSIF MIAN_ZNJ = '3' THEN --比例减免3
  BEGIN
     V_ZNJ := CASE WHEN V_DAYS <= 0 THEN 0
                ELSE NVL(ROUND(ROUND(V_DAYS *  YJE * ZNJBL,2) * (1 - ZNJ_JMCS),2),0)
            END;
  END;
  ELSIF MIAN_ZNJ = '4' THEN --定额减免4
  BEGIN
     V_ZNJ := CASE WHEN V_DAYS <= 0 THEN 0
                ELSE NVL(ROUND(V_DAYS * YJE * ZNJBL,2),0) - ZNJ_JMCS
            END;
     IF V_ZNJ < 0 THEN
        V_ZNJ := 0;
     END IF;
  END;
  ELSE   --不予减免
  BEGIN
     V_ZNJ := CASE WHEN V_DAYS <= 0 THEN 0
                ELSE NVL(ROUND(V_DAYS * YJE * ZNJBL,2),0)
              END;
  END;
  END IF;
  -- 滞纳金大于应缴金额时,滞纳金=应缴金额
  IF V_ZNJ > YJE THEN
     V_ZNJ := YJE;
  END IF;
  return V_ZNJ;
end GET_ZNJ;

相关内容

热门资讯

央视拿下世界杯版权 104场比... 央视拿下世界杯版权  【央视拿下世界杯版权】2026年5月15日,这个注定被载入中国体育版权史的日子...
中美是否在农业方面达成协议?外... 澎湃新闻记者 杨文钦 朱郑勇5月15日,外交部发言人郭嘉昆主持例行记者会。《纽约时报》记者提问,请问...
成都引众北斗授时服务器:解决电... 毫秒级误差,就可能让电网保护误动、5G基站干扰、金融交易错序。 在电力、通信、金融等关键基础设施中,...
京鲁牵手,共创“1+1&gt;... “2026年央视春晚,用手灵活盘核桃的机器人,是我们公司的产品。目前,我们的机器人能在复杂环境中完成...
全国投资人,“抢夺”深圳大厂高... 白手起家的新故事。 来源:每日人物 文:谢韫力 编辑:张轻松 过去一年,北京、上海的投资人开始频繁出...
乐山一商场推行“宠物友好”,曝... 近日,四川乐山网友反映,当地世豪广场高调打造“宠物友好”商圈、投放相关宣传,却放任狗不拴绳以及狗上桌...
创新药试验数据有了“护身符”!... 今天(5月15日),新修订的《药品管理法实施条例》正式施行。这是条例实施二十多年来,首次全面修订。国...
河南证监局原党委委员、副局长楚... 日前,经中央纪委国家监委批准,中央纪委国家监委驻中国证券监督管理委员会纪检监察组与河南省漯河市监委对...
黄河科技学院召开2026年就业... 5月14日,黄河科技学院召开2026年就业工作推进暨升学工作表彰会,总结2026届毕业生阶段性就业与...
2026河南省文化旅游发展大会... 【大河财立方记者司高妍张克瑶文图】5月15日,河南省政府新闻办举行2026河南省文化旅游发展大会新闻...