20180118日记总结

1、java中String类型与Integer类型判断不为空

(1)String类型:

null != handlerDateBegin && !"".equals(handlerDateBegin),使用equals;

或者使用StringUtils.isNoEmpty();用来判断非空;

(2)Integer类型:

null != handlerDateBegin &&  ""!=(handlerDateBegin),数字类型使用“!=”来判断;

2、营改增问题:含税balancce=不含税balance+保费VAT;

当不含税balance、保费VAT可以进行单个结算时,如何操作,当包含境外且境外需要代扣代缴增值税,即保费VAT不参与计算:

(1)premiumFlag: 0 1,premiumVATFlag: 0 1

当某项结算时标识为1,否则为0

1)可以通过sql中sum函数求和方式进行操作,首先遍历全部计算时,和为多少,然后在数据库中查询合计值,当合计值与全部结算是否相同,是则认为完全结算,重置一个状态,然后在下次查询时过滤掉重置后状态数据,否则继续查询出来。

查询出来数据可能从未结算也可能部分结算,对于部分结算需要展示出已结算项不能勾选。即需要实时查库返回可结付标识premiumSettleFlag、premiumVATSettleFlag,进行判断

2)通过sql关联查询方式过滤

 select fsb.premiumFlag,fsb.premiumVATFlag,fsb.* from fj_settle_bill fsb,fj_settle s
where
 fsb.premiumFlag='1' 
 and fsb.accModel='O'
 and fsb.paymentId in(select paymentId from fj_settle_bill fsb2,fj_settle fs2 

where fsb2.premiumVATFlag='1'
and fsb2.settleNo = fs2.settleNo
and fs2.validFlag='0'
and fsb2.accBillNo='D2017RA01001115500'
and fsb2.serialNo='1'
 )
 and s.validFlag='0'
 and fsb.settleNo = s.settleNo
and fsb.accBillNo='D2017RA01001115500'
and fsb.serialNo='1'; 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值