Commit e8bfb201 authored by eddie.woo's avatar eddie.woo

modify

parent 47b2d550
......@@ -4,6 +4,7 @@ import com.google.common.collect.Lists;
import org.apache.commons.collections.CollectionUtils;
import org.apache.commons.lang3.math.NumberUtils;
import org.apache.poi.ss.formula.OperationEvaluationContext;
import org.apache.poi.ss.formula.eval.NumberEval;
import org.apache.poi.ss.formula.eval.StringEval;
import org.apache.poi.ss.formula.eval.ValueEval;
import org.apache.poi.ss.formula.functions.FreeRefFunction;
......@@ -15,6 +16,7 @@ import pwc.taxtech.atms.constant.enums.FormulaDataSourceType;
import pwc.taxtech.atms.dto.vatdto.ReportCellDataSourceDto;
import pwc.taxtech.atms.entity.Organization;
import pwc.taxtech.atms.entity.Project;
import pwc.taxtech.atms.invoice.HlOutputArSjhcMapper;
import pwc.taxtech.atms.invoice.HlOutputInterfaceLineMapper;
import pwc.taxtech.atms.invoice.HlOutputOrderKpsqmxbMapper;
import pwc.taxtech.atms.invoice.HlOutputOrderKpsqzbMapper;
......@@ -25,30 +27,41 @@ import java.util.List;
import java.util.stream.Collectors;
public class WPSR extends FunctionBase implements FreeRefFunction {
private static final ValueEval ZERO_EVAL = new StringEval("0");
private HlOutputInterfaceLineMapper interfaceLineMapper;
private HlOutputOrderKpsqmxbMapper kpsqmxbMapper;
private HlOutputOrderKpsqzbMapper zbMapper;
private HlOutputArSjhcMapper arSjhcMapper;
/**
* 无票收入
* 参数:
* type: 1 未开票收入 2 跨月开票
* rate: 税率 eg: 10 16
* valType: 1 不含税金额 2 税额
* <p>
* ps: 无税 = 含税/(1+税率)
*/
public WPSR(FormulaContext formulaContext) {
super(formulaContext);
this.interfaceLineMapper = SpringContextUtil.getBean(HlOutputInterfaceLineMapper.class);
this.kpsqmxbMapper = SpringContextUtil.getBean(HlOutputOrderKpsqmxbMapper.class);
this.zbMapper = SpringContextUtil.getBean(HlOutputOrderKpsqzbMapper.class);
this.arSjhcMapper = SpringContextUtil.getBean(HlOutputArSjhcMapper.class);
}
@Override
public ValueEval evaluate(ValueEval[] args, OperationEvaluationContext ec) {
if (args.length != 2) {
return ZERO_EVAL;
if (args.length != 3) {
return NumberEval.ZERO;
}
Integer type = getIntParam(args[0], ec);
Integer rate = getIntParam(args[1], ec);
Integer valType = getIntParam(args[2], ec);
String rateStr = String.valueOf(rate.doubleValue() / 100);
if (null == type || null == rate) {
return ZERO_EVAL;
return NumberEval.ZERO;
}
ValueEval result = ZERO_EVAL;
ValueEval result = NumberEval.ZERO;
String formulaExpression = "WPSR(" + type + "," + rate + ")";
try {
int period = formulaContext.getPeriod();
......@@ -59,40 +72,43 @@ public class WPSR extends FunctionBase implements FreeRefFunction {
String periodEnd = DateUtils.getPeriodEndFormat(project.getYear(), period);
if (1 == type) {
//未开票收入
HlOutputInterfaceLineExample lineExample = new HlOutputInterfaceLineExample();
lineExample.createCriteria().andSjfyrqBetween(periodStart, periodEnd).andSfkpNotEqualTo("1")
.andEbsSrbjEqualTo("1").andYwstidEqualTo(organization.getCode()); //排除 状态1:已开票,即未开票和预开票
List<HlOutputInterfaceLine> lineList = interfaceLineMapper.selectByExample(lineExample);
// 机构 时间范围下已确认收入的订单
HlOutputArSjhcExample arSjhcExample = new HlOutputArSjhcExample();
arSjhcExample.createCriteria().andHcrqBetween(periodStart, periodEnd).andStidEqualTo(organization.getCode());
List<String> groupIdList = arSjhcMapper.selectByExample(arSjhcExample).stream().map(HlOutputArSjhc::getGroupid)
.collect(Collectors.toList());
BigDecimal tmp = BigDecimal.ZERO;
if (!CollectionUtils.isEmpty(lineList)) {
tmp = tmp.add(getSum(lineList, rateStr));
//未开票收入 全部以16%计算
if (rate == 16) {
HlOutputInterfaceLineExample lineExample = new HlOutputInterfaceLineExample();
lineExample.createCriteria().andGroupidIn(groupIdList).andSfkpNotEqualTo("1").andContextNotEqualTo("ETMS")
.andEbsSrbjEqualTo("1").andYwstidEqualTo(organization.getCode()); //排除 状态1:已开票,即未开票和预开票
List<HlOutputInterfaceLine> lineList = interfaceLineMapper.selectByExample(lineExample);
if (!CollectionUtils.isEmpty(lineList)) {
tmp = tmp.add(getSumLine(lineList, NumberUtils.createDouble(rateStr), valType));
}
}
//无订单业务
HlOutputInterfaceLineExample lineExampleWdd = new HlOutputInterfaceLineExample();
lineExampleWdd.createCriteria().andSjfyrqBetween(periodStart, periodEnd).andContextEqualTo("ETMS")
lineExampleWdd.createCriteria().andGroupidIn(groupIdList).andContextEqualTo("ETMS")
.andEbsSrbjEqualTo("1").andYwstidEqualTo(organization.getCode()).andTaxrateEqualTo(rateStr);
HlOutputInterfaceLineExample.Criteria criteria2 = lineExampleWdd.createCriteria().andSjfyrqBetween(periodStart, periodEnd)
HlOutputInterfaceLineExample.Criteria criteria2 = lineExampleWdd.createCriteria().andGroupidIn(groupIdList)
.andContextEqualTo("ETMS").andEbsSrbjEqualTo("1").andYwstidEqualTo(organization.getCode())
.andTaxrateEqualTo(rateStr.substring(1));// 兼容税率为.16 这种数据
lineExampleWdd.or(criteria2);
List<HlOutputInterfaceLine> lineListWdd = interfaceLineMapper.selectByExample(lineExampleWdd);
if (!CollectionUtils.isEmpty(lineListWdd)) {
List<String> idList = lineListWdd.stream().map(HlOutputInterfaceLine::getUuid).collect(Collectors.toList());
HlOutputOrderKpsqmxbExample mxbExample = new HlOutputOrderKpsqmxbExample();
mxbExample.createCriteria().andIdIn(idList);
tmp = tmp.add(kpsqmxbMapper.selectByExample(mxbExample).stream().map(o -> NumberUtils.createBigDecimal(o.getHjje())).
reduce(BigDecimal.ZERO, BigDecimal::add));
tmp = tmp.add(getSumLine(lineListWdd, NumberUtils.createDouble(rateStr), valType));
}
result = new StringEval(tmp.toPlainString());
result = new NumberEval(tmp.doubleValue());
} else if (2 == type) {
//跨月开票
HlOutputInterfaceLineExample lineExample = new HlOutputInterfaceLineExample();
lineExample.createCriteria().andSjfyrqNotBetween(periodStart, periodEnd).andKprqBetween(periodStart, periodEnd)
lineExample.createCriteria().andKprqBetween(periodStart, periodEnd).andSjfyrqNotBetween(periodStart, periodEnd)
.andSfkpEqualTo("1").andEbsSrbjEqualTo("1").andYwstidEqualTo(organization.getCode());
List<HlOutputInterfaceLine> lineList = interfaceLineMapper.selectByExample(lineExample);
if (!CollectionUtils.isEmpty(lineList)) {
result = new StringEval(getSum(lineList, rateStr).toPlainString());
result = new NumberEval(getSum(lineList, rateStr, valType).doubleValue());
}
}
} catch (Exception e) {
......@@ -100,7 +116,7 @@ public class WPSR extends FunctionBase implements FreeRefFunction {
}
//todo data source 显示优化
try {
BigDecimal val = NumberUtils.createBigDecimal(((StringEval) result).getStringValue());
BigDecimal val = NumberUtils.createBigDecimal(((NumberEval) result).getStringValue());
ReportCellDataSourceDto dto = new ReportCellDataSourceDto();
dto.setAmount(val);
dto.setName(DataSourceName.ReportDataSource);
......@@ -122,14 +138,45 @@ public class WPSR extends FunctionBase implements FreeRefFunction {
return result;
}
/**
* 未开票收入 接口行数据计算
*
* @param lineList List<HlOutputInterfaceLine>
* @param rate eg:0.16
* @param valType 1 不含税金额 2 税额
* @return BigDecimal
* <p>
* ps: 无税 = 含税/(1+税率)
*/
private BigDecimal getSumLine(List<HlOutputInterfaceLine> lineList, Double rate, Integer valType) {
if (CollectionUtils.isEmpty(lineList) || (1 != valType && 2 != valType)) {
return BigDecimal.ZERO;
}
if (1 == valType) {
return lineList.stream().map(o -> NumberUtils.createBigDecimal(o.getSrje())
.divide(new BigDecimal(((Double) (rate + 1)).toString()), 2, BigDecimal.ROUND_HALF_UP))
.reduce(BigDecimal.ZERO, BigDecimal::add);
} else {
return lineList.stream().map(o -> {
BigDecimal total = NumberUtils.createBigDecimal(o.getSrje());
BigDecimal amount = total.divide(new BigDecimal(((Double) (rate + 1)).toString()), 2, BigDecimal.ROUND_HALF_UP);
return total.subtract(amount);
}).reduce(BigDecimal.ZERO, BigDecimal::add);
}
}
/**
* 接口行数据 -> 发票明细 求不含税金额总和
*
* @param lineList List<HlOutputInterfaceLine>
* @param rateStr eg:0.16
* @param valType 1 不含税金额 2 税额
* @return BigDecimal
*/
private BigDecimal getSum(List<HlOutputInterfaceLine> lineList, String rateStr) {
private BigDecimal getSum(List<HlOutputInterfaceLine> lineList, String rateStr, Integer valType) {
if (1 != valType && 2 != valType) {
return BigDecimal.ZERO;
}
List<String> idList = lineList.stream().map(HlOutputInterfaceLine::getUuid).collect(Collectors.toList());
HlOutputOrderKpsqmxbExample mxbExample = new HlOutputOrderKpsqmxbExample();
mxbExample.createCriteria().andIdIn(idList);
......@@ -145,7 +192,12 @@ public class WPSR extends FunctionBase implements FreeRefFunction {
.map(OutputInvoice::getFPQQLSH).collect(Collectors.toList());
OutputInvoiceDetailExample detailExample = new OutputInvoiceDetailExample();
detailExample.createCriteria().andFPQQLSHIn(lshList).andSLVEqualTo(rateStr);
return SpringContextUtil.outputInvoiceDetailMapper.selectByExample(detailExample).stream()
.map(o -> NumberUtils.createBigDecimal(o.getJE())).reduce(BigDecimal.ZERO, BigDecimal::add);
if (1 == valType) {
return SpringContextUtil.outputInvoiceDetailMapper.selectByExample(detailExample).stream()
.map(o -> NumberUtils.createBigDecimal(o.getJE())).reduce(BigDecimal.ZERO, BigDecimal::add);
} else {
return SpringContextUtil.outputInvoiceDetailMapper.selectByExample(detailExample).stream()
.map(o -> NumberUtils.createBigDecimal(o.getSE())).reduce(BigDecimal.ZERO, BigDecimal::add);
}
}
}
......@@ -239,16 +239,20 @@
<!--<property name="ignoreQualifiersAtRuntime" value="true"/>-->
<!--<columnOverride column="ID" javaType="java.lang.Long" />-->
<!--</table>-->
<table tableName="OUTPUT_INTERFACE_LINE" schema="pwc_invoice" domainObjectName="HlOutputInterfaceLine">
<property name="useActualColumnNames" value="false"/>
<property name="ignoreQualifiersAtRuntime" value="true"/>
<columnOverride column="ID" javaType="java.lang.Long" />
</table>
<table tableName="OUTPUT_ORDER_KPSQMXB" schema="pwc_invoice" domainObjectName="HlOutputOrderKpsqmxb">
<property name="useActualColumnNames" value="false"/>
<property name="ignoreQualifiersAtRuntime" value="true"/>
</table>
<table tableName="OUTPUT_ORDER_KPSQZB" schema="pwc_invoice" domainObjectName="HlOutputOrderKpsqzb">
<!--<table tableName="OUTPUT_INTERFACE_LINE" schema="pwc_invoice" domainObjectName="HlOutputInterfaceLine">-->
<!--<property name="useActualColumnNames" value="false"/>-->
<!--<property name="ignoreQualifiersAtRuntime" value="true"/>-->
<!--<columnOverride column="ID" javaType="java.lang.Long" />-->
<!--</table>-->
<!--<table tableName="OUTPUT_ORDER_KPSQMXB" schema="pwc_invoice" domainObjectName="HlOutputOrderKpsqmxb">-->
<!--<property name="useActualColumnNames" value="false"/>-->
<!--<property name="ignoreQualifiersAtRuntime" value="true"/>-->
<!--</table>-->
<!--<table tableName="OUTPUT_ORDER_KPSQZB" schema="pwc_invoice" domainObjectName="HlOutputOrderKpsqzb">-->
<!--<property name="useActualColumnNames" value="false"/>-->
<!--<property name="ignoreQualifiersAtRuntime" value="true"/>-->
<!--</table>-->
<table tableName="OUTPUT_AR_SJHC" schema="pwc_invoice" domainObjectName="HlOutputArSjhc">
<property name="useActualColumnNames" value="false"/>
<property name="ignoreQualifiersAtRuntime" value="true"/>
</table>
......
package pwc.taxtech.atms.invoice;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import pwc.taxtech.atms.MyVatMapper;
import pwc.taxtech.atms.vat.entity.HlOutputArSjhc;
import pwc.taxtech.atms.vat.entity.HlOutputArSjhcExample;
@Mapper
public interface HlOutputArSjhcMapper extends MyVatMapper {
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
long countByExample(HlOutputArSjhcExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
int deleteByExample(HlOutputArSjhcExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
int deleteByPrimaryKey(String groupid);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
int insert(HlOutputArSjhc record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
int insertSelective(HlOutputArSjhc record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
List<HlOutputArSjhc> selectByExample(HlOutputArSjhcExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
HlOutputArSjhc selectByPrimaryKey(String groupid);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
int updateByExampleSelective(@Param("record") HlOutputArSjhc record, @Param("example") HlOutputArSjhcExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
int updateByExample(@Param("record") HlOutputArSjhc record, @Param("example") HlOutputArSjhcExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
int updateByPrimaryKeySelective(HlOutputArSjhc record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
int updateByPrimaryKey(HlOutputArSjhc record);
}
\ No newline at end of file
package pwc.taxtech.atms.vat.entity;
import java.io.Serializable;
/**
*
* This class was generated by MyBatis Generator.
* This class corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated do_not_delete_during_merge
*/
public class HlOutputArSjhc implements Serializable {
/**
* Database Column Remarks:
* groupid 关联AR发票表
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column PWC_INVOICE.OUTPUT_AR_SJHC.GROUPID
*
* @mbg.generated
*/
private String groupid;
/**
* Database Column Remarks:
* 客户名称
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column PWC_INVOICE.OUTPUT_AR_SJHC.KHMC
*
* @mbg.generated
*/
private String khmc;
/**
* Database Column Remarks:
* 合同编号
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column PWC_INVOICE.OUTPUT_AR_SJHC.HTBH
*
* @mbg.generated
*/
private String htbh;
/**
* Database Column Remarks:
* 回传日期
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column PWC_INVOICE.OUTPUT_AR_SJHC.HCRQ
*
* @mbg.generated
*/
private String hcrq;
/**
* Database Column Remarks:
* 实体id
*
* This field was generated by MyBatis Generator.
* This field corresponds to the database column PWC_INVOICE.OUTPUT_AR_SJHC.STID
*
* @mbg.generated
*/
private String stid;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
private static final long serialVersionUID = 1L;
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column PWC_INVOICE.OUTPUT_AR_SJHC.GROUPID
*
* @return the value of PWC_INVOICE.OUTPUT_AR_SJHC.GROUPID
*
* @mbg.generated
*/
public String getGroupid() {
return groupid;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column PWC_INVOICE.OUTPUT_AR_SJHC.GROUPID
*
* @param groupid the value for PWC_INVOICE.OUTPUT_AR_SJHC.GROUPID
*
* @mbg.generated
*/
public void setGroupid(String groupid) {
this.groupid = groupid == null ? null : groupid.trim();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column PWC_INVOICE.OUTPUT_AR_SJHC.KHMC
*
* @return the value of PWC_INVOICE.OUTPUT_AR_SJHC.KHMC
*
* @mbg.generated
*/
public String getKhmc() {
return khmc;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column PWC_INVOICE.OUTPUT_AR_SJHC.KHMC
*
* @param khmc the value for PWC_INVOICE.OUTPUT_AR_SJHC.KHMC
*
* @mbg.generated
*/
public void setKhmc(String khmc) {
this.khmc = khmc == null ? null : khmc.trim();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column PWC_INVOICE.OUTPUT_AR_SJHC.HTBH
*
* @return the value of PWC_INVOICE.OUTPUT_AR_SJHC.HTBH
*
* @mbg.generated
*/
public String getHtbh() {
return htbh;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column PWC_INVOICE.OUTPUT_AR_SJHC.HTBH
*
* @param htbh the value for PWC_INVOICE.OUTPUT_AR_SJHC.HTBH
*
* @mbg.generated
*/
public void setHtbh(String htbh) {
this.htbh = htbh == null ? null : htbh.trim();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column PWC_INVOICE.OUTPUT_AR_SJHC.HCRQ
*
* @return the value of PWC_INVOICE.OUTPUT_AR_SJHC.HCRQ
*
* @mbg.generated
*/
public String getHcrq() {
return hcrq;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column PWC_INVOICE.OUTPUT_AR_SJHC.HCRQ
*
* @param hcrq the value for PWC_INVOICE.OUTPUT_AR_SJHC.HCRQ
*
* @mbg.generated
*/
public void setHcrq(String hcrq) {
this.hcrq = hcrq == null ? null : hcrq.trim();
}
/**
* This method was generated by MyBatis Generator.
* This method returns the value of the database column PWC_INVOICE.OUTPUT_AR_SJHC.STID
*
* @return the value of PWC_INVOICE.OUTPUT_AR_SJHC.STID
*
* @mbg.generated
*/
public String getStid() {
return stid;
}
/**
* This method was generated by MyBatis Generator.
* This method sets the value of the database column PWC_INVOICE.OUTPUT_AR_SJHC.STID
*
* @param stid the value for PWC_INVOICE.OUTPUT_AR_SJHC.STID
*
* @mbg.generated
*/
public void setStid(String stid) {
this.stid = stid == null ? null : stid.trim();
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
@Override
public String toString() {
StringBuilder sb = new StringBuilder();
sb.append(getClass().getSimpleName());
sb.append(" [");
sb.append("Hash = ").append(hashCode());
sb.append(", groupid=").append(groupid);
sb.append(", khmc=").append(khmc);
sb.append(", htbh=").append(htbh);
sb.append(", hcrq=").append(hcrq);
sb.append(", stid=").append(stid);
sb.append("]");
return sb.toString();
}
}
\ No newline at end of file
package pwc.taxtech.atms.vat.entity;
import java.util.ArrayList;
import java.util.List;
public class HlOutputArSjhcExample {
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
protected String orderByClause;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
protected boolean distinct;
/**
* This field was generated by MyBatis Generator.
* This field corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
protected List<Criteria> oredCriteria;
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public HlOutputArSjhcExample() {
oredCriteria = new ArrayList<Criteria>();
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public void setOrderByClause(String orderByClause) {
this.orderByClause = orderByClause;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public String getOrderByClause() {
return orderByClause;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public void setDistinct(boolean distinct) {
this.distinct = distinct;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public boolean isDistinct() {
return distinct;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public List<Criteria> getOredCriteria() {
return oredCriteria;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public void or(Criteria criteria) {
oredCriteria.add(criteria);
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public Criteria or() {
Criteria criteria = createCriteriaInternal();
oredCriteria.add(criteria);
return criteria;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public Criteria createCriteria() {
Criteria criteria = createCriteriaInternal();
if (oredCriteria.size() == 0) {
oredCriteria.add(criteria);
}
return criteria;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
protected Criteria createCriteriaInternal() {
Criteria criteria = new Criteria();
return criteria;
}
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public void clear() {
oredCriteria.clear();
orderByClause = null;
distinct = false;
}
/**
* This class was generated by MyBatis Generator.
* This class corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
protected abstract static class GeneratedCriteria {
protected List<Criterion> criteria;
protected GeneratedCriteria() {
super();
criteria = new ArrayList<Criterion>();
}
public boolean isValid() {
return criteria.size() > 0;
}
public List<Criterion> getAllCriteria() {
return criteria;
}
public List<Criterion> getCriteria() {
return criteria;
}
protected void addCriterion(String condition) {
if (condition == null) {
throw new RuntimeException("Value for condition cannot be null");
}
criteria.add(new Criterion(condition));
}
protected void addCriterion(String condition, Object value, String property) {
if (value == null) {
throw new RuntimeException("Value for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value));
}
protected void addCriterion(String condition, Object value1, Object value2, String property) {
if (value1 == null || value2 == null) {
throw new RuntimeException("Between values for " + property + " cannot be null");
}
criteria.add(new Criterion(condition, value1, value2));
}
public Criteria andGroupidIsNull() {
addCriterion("GROUPID is null");
return (Criteria) this;
}
public Criteria andGroupidIsNotNull() {
addCriterion("GROUPID is not null");
return (Criteria) this;
}
public Criteria andGroupidEqualTo(String value) {
addCriterion("GROUPID =", value, "groupid");
return (Criteria) this;
}
public Criteria andGroupidNotEqualTo(String value) {
addCriterion("GROUPID <>", value, "groupid");
return (Criteria) this;
}
public Criteria andGroupidGreaterThan(String value) {
addCriterion("GROUPID >", value, "groupid");
return (Criteria) this;
}
public Criteria andGroupidGreaterThanOrEqualTo(String value) {
addCriterion("GROUPID >=", value, "groupid");
return (Criteria) this;
}
public Criteria andGroupidLessThan(String value) {
addCriterion("GROUPID <", value, "groupid");
return (Criteria) this;
}
public Criteria andGroupidLessThanOrEqualTo(String value) {
addCriterion("GROUPID <=", value, "groupid");
return (Criteria) this;
}
public Criteria andGroupidLike(String value) {
addCriterion("GROUPID like", value, "groupid");
return (Criteria) this;
}
public Criteria andGroupidNotLike(String value) {
addCriterion("GROUPID not like", value, "groupid");
return (Criteria) this;
}
public Criteria andGroupidIn(List<String> values) {
addCriterion("GROUPID in", values, "groupid");
return (Criteria) this;
}
public Criteria andGroupidNotIn(List<String> values) {
addCriterion("GROUPID not in", values, "groupid");
return (Criteria) this;
}
public Criteria andGroupidBetween(String value1, String value2) {
addCriterion("GROUPID between", value1, value2, "groupid");
return (Criteria) this;
}
public Criteria andGroupidNotBetween(String value1, String value2) {
addCriterion("GROUPID not between", value1, value2, "groupid");
return (Criteria) this;
}
public Criteria andKhmcIsNull() {
addCriterion("KHMC is null");
return (Criteria) this;
}
public Criteria andKhmcIsNotNull() {
addCriterion("KHMC is not null");
return (Criteria) this;
}
public Criteria andKhmcEqualTo(String value) {
addCriterion("KHMC =", value, "khmc");
return (Criteria) this;
}
public Criteria andKhmcNotEqualTo(String value) {
addCriterion("KHMC <>", value, "khmc");
return (Criteria) this;
}
public Criteria andKhmcGreaterThan(String value) {
addCriterion("KHMC >", value, "khmc");
return (Criteria) this;
}
public Criteria andKhmcGreaterThanOrEqualTo(String value) {
addCriterion("KHMC >=", value, "khmc");
return (Criteria) this;
}
public Criteria andKhmcLessThan(String value) {
addCriterion("KHMC <", value, "khmc");
return (Criteria) this;
}
public Criteria andKhmcLessThanOrEqualTo(String value) {
addCriterion("KHMC <=", value, "khmc");
return (Criteria) this;
}
public Criteria andKhmcLike(String value) {
addCriterion("KHMC like", value, "khmc");
return (Criteria) this;
}
public Criteria andKhmcNotLike(String value) {
addCriterion("KHMC not like", value, "khmc");
return (Criteria) this;
}
public Criteria andKhmcIn(List<String> values) {
addCriterion("KHMC in", values, "khmc");
return (Criteria) this;
}
public Criteria andKhmcNotIn(List<String> values) {
addCriterion("KHMC not in", values, "khmc");
return (Criteria) this;
}
public Criteria andKhmcBetween(String value1, String value2) {
addCriterion("KHMC between", value1, value2, "khmc");
return (Criteria) this;
}
public Criteria andKhmcNotBetween(String value1, String value2) {
addCriterion("KHMC not between", value1, value2, "khmc");
return (Criteria) this;
}
public Criteria andHtbhIsNull() {
addCriterion("HTBH is null");
return (Criteria) this;
}
public Criteria andHtbhIsNotNull() {
addCriterion("HTBH is not null");
return (Criteria) this;
}
public Criteria andHtbhEqualTo(String value) {
addCriterion("HTBH =", value, "htbh");
return (Criteria) this;
}
public Criteria andHtbhNotEqualTo(String value) {
addCriterion("HTBH <>", value, "htbh");
return (Criteria) this;
}
public Criteria andHtbhGreaterThan(String value) {
addCriterion("HTBH >", value, "htbh");
return (Criteria) this;
}
public Criteria andHtbhGreaterThanOrEqualTo(String value) {
addCriterion("HTBH >=", value, "htbh");
return (Criteria) this;
}
public Criteria andHtbhLessThan(String value) {
addCriterion("HTBH <", value, "htbh");
return (Criteria) this;
}
public Criteria andHtbhLessThanOrEqualTo(String value) {
addCriterion("HTBH <=", value, "htbh");
return (Criteria) this;
}
public Criteria andHtbhLike(String value) {
addCriterion("HTBH like", value, "htbh");
return (Criteria) this;
}
public Criteria andHtbhNotLike(String value) {
addCriterion("HTBH not like", value, "htbh");
return (Criteria) this;
}
public Criteria andHtbhIn(List<String> values) {
addCriterion("HTBH in", values, "htbh");
return (Criteria) this;
}
public Criteria andHtbhNotIn(List<String> values) {
addCriterion("HTBH not in", values, "htbh");
return (Criteria) this;
}
public Criteria andHtbhBetween(String value1, String value2) {
addCriterion("HTBH between", value1, value2, "htbh");
return (Criteria) this;
}
public Criteria andHtbhNotBetween(String value1, String value2) {
addCriterion("HTBH not between", value1, value2, "htbh");
return (Criteria) this;
}
public Criteria andHcrqIsNull() {
addCriterion("HCRQ is null");
return (Criteria) this;
}
public Criteria andHcrqIsNotNull() {
addCriterion("HCRQ is not null");
return (Criteria) this;
}
public Criteria andHcrqEqualTo(String value) {
addCriterion("HCRQ =", value, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqNotEqualTo(String value) {
addCriterion("HCRQ <>", value, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqGreaterThan(String value) {
addCriterion("HCRQ >", value, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqGreaterThanOrEqualTo(String value) {
addCriterion("HCRQ >=", value, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqLessThan(String value) {
addCriterion("HCRQ <", value, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqLessThanOrEqualTo(String value) {
addCriterion("HCRQ <=", value, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqLike(String value) {
addCriterion("HCRQ like", value, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqNotLike(String value) {
addCriterion("HCRQ not like", value, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqIn(List<String> values) {
addCriterion("HCRQ in", values, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqNotIn(List<String> values) {
addCriterion("HCRQ not in", values, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqBetween(String value1, String value2) {
addCriterion("HCRQ between", value1, value2, "hcrq");
return (Criteria) this;
}
public Criteria andHcrqNotBetween(String value1, String value2) {
addCriterion("HCRQ not between", value1, value2, "hcrq");
return (Criteria) this;
}
public Criteria andStidIsNull() {
addCriterion("STID is null");
return (Criteria) this;
}
public Criteria andStidIsNotNull() {
addCriterion("STID is not null");
return (Criteria) this;
}
public Criteria andStidEqualTo(String value) {
addCriterion("STID =", value, "stid");
return (Criteria) this;
}
public Criteria andStidNotEqualTo(String value) {
addCriterion("STID <>", value, "stid");
return (Criteria) this;
}
public Criteria andStidGreaterThan(String value) {
addCriterion("STID >", value, "stid");
return (Criteria) this;
}
public Criteria andStidGreaterThanOrEqualTo(String value) {
addCriterion("STID >=", value, "stid");
return (Criteria) this;
}
public Criteria andStidLessThan(String value) {
addCriterion("STID <", value, "stid");
return (Criteria) this;
}
public Criteria andStidLessThanOrEqualTo(String value) {
addCriterion("STID <=", value, "stid");
return (Criteria) this;
}
public Criteria andStidLike(String value) {
addCriterion("STID like", value, "stid");
return (Criteria) this;
}
public Criteria andStidNotLike(String value) {
addCriterion("STID not like", value, "stid");
return (Criteria) this;
}
public Criteria andStidIn(List<String> values) {
addCriterion("STID in", values, "stid");
return (Criteria) this;
}
public Criteria andStidNotIn(List<String> values) {
addCriterion("STID not in", values, "stid");
return (Criteria) this;
}
public Criteria andStidBetween(String value1, String value2) {
addCriterion("STID between", value1, value2, "stid");
return (Criteria) this;
}
public Criteria andStidNotBetween(String value1, String value2) {
addCriterion("STID not between", value1, value2, "stid");
return (Criteria) this;
}
}
/**
* This class was generated by MyBatis Generator.
* This class corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated do_not_delete_during_merge
*/
public static class Criteria extends GeneratedCriteria {
protected Criteria() {
super();
}
}
/**
* This class was generated by MyBatis Generator.
* This class corresponds to the database table PWC_INVOICE.OUTPUT_AR_SJHC
*
* @mbg.generated
*/
public static class Criterion {
private String condition;
private Object value;
private Object secondValue;
private boolean noValue;
private boolean singleValue;
private boolean betweenValue;
private boolean listValue;
private String typeHandler;
public String getCondition() {
return condition;
}
public Object getValue() {
return value;
}
public Object getSecondValue() {
return secondValue;
}
public boolean isNoValue() {
return noValue;
}
public boolean isSingleValue() {
return singleValue;
}
public boolean isBetweenValue() {
return betweenValue;
}
public boolean isListValue() {
return listValue;
}
public String getTypeHandler() {
return typeHandler;
}
protected Criterion(String condition) {
super();
this.condition = condition;
this.typeHandler = null;
this.noValue = true;
}
protected Criterion(String condition, Object value, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.typeHandler = typeHandler;
if (value instanceof List<?>) {
this.listValue = true;
} else {
this.singleValue = true;
}
}
protected Criterion(String condition, Object value) {
this(condition, value, null);
}
protected Criterion(String condition, Object value, Object secondValue, String typeHandler) {
super();
this.condition = condition;
this.value = value;
this.secondValue = secondValue;
this.typeHandler = typeHandler;
this.betweenValue = true;
}
protected Criterion(String condition, Object value, Object secondValue) {
this(condition, value, secondValue, null);
}
}
}
\ No newline at end of file
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="pwc.taxtech.atms.invoice.HlOutputArSjhcMapper">
<resultMap id="BaseResultMap" type="pwc.taxtech.atms.vat.entity.HlOutputArSjhc">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
<id column="GROUPID" jdbcType="VARCHAR" property="groupid" />
<result column="KHMC" jdbcType="VARCHAR" property="khmc" />
<result column="HTBH" jdbcType="VARCHAR" property="htbh" />
<result column="HCRQ" jdbcType="VARCHAR" property="hcrq" />
<result column="STID" jdbcType="VARCHAR" property="stid" />
</resultMap>
<sql id="Example_Where_Clause">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
<where>
<foreach collection="oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Update_By_Example_Where_Clause">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
<where>
<foreach collection="example.oredCriteria" item="criteria" separator="or">
<if test="criteria.valid">
<trim prefix="(" prefixOverrides="and" suffix=")">
<foreach collection="criteria.criteria" item="criterion">
<choose>
<when test="criterion.noValue">
and ${criterion.condition}
</when>
<when test="criterion.singleValue">
and ${criterion.condition} #{criterion.value}
</when>
<when test="criterion.betweenValue">
and ${criterion.condition} #{criterion.value} and #{criterion.secondValue}
</when>
<when test="criterion.listValue">
and ${criterion.condition}
<foreach close=")" collection="criterion.value" item="listItem" open="(" separator=",">
#{listItem}
</foreach>
</when>
</choose>
</foreach>
</trim>
</if>
</foreach>
</where>
</sql>
<sql id="Base_Column_List">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
GROUPID, KHMC, HTBH, HCRQ, STID
</sql>
<select id="selectByExample" parameterType="pwc.taxtech.atms.vat.entity.HlOutputArSjhcExample" resultMap="BaseResultMap">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
select
<if test="distinct">
distinct
</if>
<include refid="Base_Column_List" />
from OUTPUT_AR_SJHC
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
<if test="orderByClause != null">
order by ${orderByClause}
</if>
</select>
<select id="selectByPrimaryKey" parameterType="java.lang.String" resultMap="BaseResultMap">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
select
<include refid="Base_Column_List" />
from OUTPUT_AR_SJHC
where GROUPID = #{groupid,jdbcType=VARCHAR}
</select>
<delete id="deleteByPrimaryKey" parameterType="java.lang.String">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
delete from OUTPUT_AR_SJHC
where GROUPID = #{groupid,jdbcType=VARCHAR}
</delete>
<delete id="deleteByExample" parameterType="pwc.taxtech.atms.vat.entity.HlOutputArSjhcExample">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
delete from OUTPUT_AR_SJHC
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</delete>
<insert id="insert" parameterType="pwc.taxtech.atms.vat.entity.HlOutputArSjhc">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
insert into OUTPUT_AR_SJHC (GROUPID, KHMC, HTBH,
HCRQ, STID)
values (#{groupid,jdbcType=VARCHAR}, #{khmc,jdbcType=VARCHAR}, #{htbh,jdbcType=VARCHAR},
#{hcrq,jdbcType=VARCHAR}, #{stid,jdbcType=VARCHAR})
</insert>
<insert id="insertSelective" parameterType="pwc.taxtech.atms.vat.entity.HlOutputArSjhc">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
insert into OUTPUT_AR_SJHC
<trim prefix="(" suffix=")" suffixOverrides=",">
<if test="groupid != null">
GROUPID,
</if>
<if test="khmc != null">
KHMC,
</if>
<if test="htbh != null">
HTBH,
</if>
<if test="hcrq != null">
HCRQ,
</if>
<if test="stid != null">
STID,
</if>
</trim>
<trim prefix="values (" suffix=")" suffixOverrides=",">
<if test="groupid != null">
#{groupid,jdbcType=VARCHAR},
</if>
<if test="khmc != null">
#{khmc,jdbcType=VARCHAR},
</if>
<if test="htbh != null">
#{htbh,jdbcType=VARCHAR},
</if>
<if test="hcrq != null">
#{hcrq,jdbcType=VARCHAR},
</if>
<if test="stid != null">
#{stid,jdbcType=VARCHAR},
</if>
</trim>
</insert>
<select id="countByExample" parameterType="pwc.taxtech.atms.vat.entity.HlOutputArSjhcExample" resultType="java.lang.Long">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
select count(*) from OUTPUT_AR_SJHC
<if test="_parameter != null">
<include refid="Example_Where_Clause" />
</if>
</select>
<update id="updateByExampleSelective" parameterType="map">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
update OUTPUT_AR_SJHC
<set>
<if test="record.groupid != null">
GROUPID = #{record.groupid,jdbcType=VARCHAR},
</if>
<if test="record.khmc != null">
KHMC = #{record.khmc,jdbcType=VARCHAR},
</if>
<if test="record.htbh != null">
HTBH = #{record.htbh,jdbcType=VARCHAR},
</if>
<if test="record.hcrq != null">
HCRQ = #{record.hcrq,jdbcType=VARCHAR},
</if>
<if test="record.stid != null">
STID = #{record.stid,jdbcType=VARCHAR},
</if>
</set>
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByExample" parameterType="map">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
update OUTPUT_AR_SJHC
set GROUPID = #{record.groupid,jdbcType=VARCHAR},
KHMC = #{record.khmc,jdbcType=VARCHAR},
HTBH = #{record.htbh,jdbcType=VARCHAR},
HCRQ = #{record.hcrq,jdbcType=VARCHAR},
STID = #{record.stid,jdbcType=VARCHAR}
<if test="_parameter != null">
<include refid="Update_By_Example_Where_Clause" />
</if>
</update>
<update id="updateByPrimaryKeySelective" parameterType="pwc.taxtech.atms.vat.entity.HlOutputArSjhc">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
update OUTPUT_AR_SJHC
<set>
<if test="khmc != null">
KHMC = #{khmc,jdbcType=VARCHAR},
</if>
<if test="htbh != null">
HTBH = #{htbh,jdbcType=VARCHAR},
</if>
<if test="hcrq != null">
HCRQ = #{hcrq,jdbcType=VARCHAR},
</if>
<if test="stid != null">
STID = #{stid,jdbcType=VARCHAR},
</if>
</set>
where GROUPID = #{groupid,jdbcType=VARCHAR}
</update>
<update id="updateByPrimaryKey" parameterType="pwc.taxtech.atms.vat.entity.HlOutputArSjhc">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
update OUTPUT_AR_SJHC
set KHMC = #{khmc,jdbcType=VARCHAR},
HTBH = #{htbh,jdbcType=VARCHAR},
HCRQ = #{hcrq,jdbcType=VARCHAR},
STID = #{stid,jdbcType=VARCHAR}
where GROUPID = #{groupid,jdbcType=VARCHAR}
</update>
</mapper>
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment