Commit f668ad7e authored by gary's avatar gary

1、发票资料预览

2、fixbug
parent 0d4a1072
package pwc.taxtech.atms.constant.enums;
/**
* @Auther: Gary J Li
* @Date: 27/02/2019 20:47
* @Description:
*/
public final class CountTypeConstant {
public static final int TOTAL = 1;
public static final int SIXTEEN_PERCENT = 2;
public static final int TEN_PERCENT = 3;
public static final int SIX_PERCENT = 4;
public static final int THREE_PERCENT = 5;
public static final int SEVENTEEN_PERCENT = 6;
public static final int ELEVEN_PERCENT = 7;
public static final int FIVE_PERCENT = 8;
public static final int OTHER = 9;
}
package pwc.taxtech.atms.constant.enums;
/**
* @Auther: Gary J Li
* @Date: 27/02/2019 20:36
* @Description:
*/
public enum CountTypeEnum {
total(1,"合计"),
sixteenPercent(2,"16%"),
tenPercent(3,"10%"),
sixPercent(4,"6%"),
threePercent(5,"3%"),
seventeenPercent(6,"17%"),
elevenPercent(7,"11%"),
fivePercent(8,"5%"),
other(9,"其他");
private int code;
private String type;
CountTypeEnum(int code,String type){
this.code = code;
this.type = type;
}
public int getCode() {
return code;
}
public String getType() {
return type;
}
}
...@@ -79,6 +79,12 @@ public class DataPreviewController extends BaseController { ...@@ -79,6 +79,12 @@ public class DataPreviewController extends BaseController {
return dataPreviewSerivceImpl.getCILDataForDisplay(param); return dataPreviewSerivceImpl.getCILDataForDisplay(param);
} }
@PostMapping("getIDDataForDisplay")
public PageInfo<InvoiceDataDto> getIDDataForDisplay(@RequestBody InvoiceDataParam param) {
logger.debug(String.format("发票资料查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getIDDataForDisplay(param);
}
@RequestMapping(value = "exportCFData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) @RequestMapping(value = "exportCFData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadCFQueryData(@RequestBody CashFlowParam param, HttpServletResponse response) { public void downloadCFQueryData(@RequestBody CashFlowParam param, HttpServletResponse response) {
logger.debug("enter downloadCFQueryData"); logger.debug("enter downloadCFQueryData");
......
package pwc.taxtech.atms.dto.vatdto;
import pwc.taxtech.atms.dpo.PagingDto;
public class InvoiceDataParam {
private PagingDto pageInfo;
private String orgId;
private Integer periodStart;
private Integer periodEnd;
public Integer getPeriodStart() {
return periodStart;
}
public void setPeriodStart(Integer periodStart) {
this.periodStart = periodStart;
}
public Integer getPeriodEnd() {
return periodEnd;
}
public void setPeriodEnd(Integer periodEnd) {
this.periodEnd = periodEnd;
}
public String getOrgId() {
return this.orgId;
}
public void setOrgId(String orgId) {
this.orgId = orgId;
}
public PagingDto getPageInfo() {
return pageInfo;
}
public void setPageInfo(PagingDto pageInfo) {
this.pageInfo = pageInfo;
}
}
package pwc.taxtech.atms.dto.vatdto.dd;
import java.io.Serializable;
import java.math.BigDecimal;
/**
*
* This class was generated by MyBatis Generator.
* This class corresponds to the database table invoice_data
*
* @mbg.generated do_not_delete_during_merge
*/
public class InvoiceDataDto implements Serializable {
private String projectName;
private BigDecimal totalAmount;
private BigDecimal amount1;
private BigDecimal amount2;
private BigDecimal amount3;
private BigDecimal amount4;
private BigDecimal amount5;
private BigDecimal amount6;
private BigDecimal amount7;
private BigDecimal otherAmount;
public BigDecimal getTotalAmount() {
return totalAmount;
}
public void setTotalAmount(BigDecimal totalAmount) {
this.totalAmount = totalAmount;
}
public BigDecimal getAmount1() {
return amount1;
}
public void setAmount1(BigDecimal amount1) {
this.amount1 = amount1;
}
public BigDecimal getAmount2() {
return amount2;
}
public void setAmount2(BigDecimal amount2) {
this.amount2 = amount2;
}
public BigDecimal getAmount3() {
return amount3;
}
public void setAmount3(BigDecimal amount3) {
this.amount3 = amount3;
}
public BigDecimal getAmount4() {
return amount4;
}
public void setAmount4(BigDecimal amount4) {
this.amount4 = amount4;
}
public BigDecimal getAmount5() {
return amount5;
}
public void setAmount5(BigDecimal amount5) {
this.amount5 = amount5;
}
public BigDecimal getAmount6() {
return amount6;
}
public void setAmount6(BigDecimal amount6) {
this.amount6 = amount6;
}
public BigDecimal getAmount7() {
return amount7;
}
public void setAmount7(BigDecimal amount7) {
this.amount7 = amount7;
}
public BigDecimal getOtherAmount() {
return otherAmount;
}
public void setOtherAmount(BigDecimal otherAmount) {
this.otherAmount = otherAmount;
}
public String getProjectName() {
return projectName;
}
public void setProjectName(String projectName) {
this.projectName = projectName;
}
public InvoiceDataDto(){
}
public InvoiceDataDto(String projectName){
this.projectName = projectName;
}
}
\ No newline at end of file
...@@ -5,6 +5,8 @@ import com.github.pagehelper.PageHelper; ...@@ -5,6 +5,8 @@ import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo; import com.github.pagehelper.PageInfo;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import pwc.taxtech.atms.constant.enums.CountTypeConstant;
import pwc.taxtech.atms.constant.enums.CountTypeEnum;
import pwc.taxtech.atms.dao.OrganizationMapper; import pwc.taxtech.atms.dao.OrganizationMapper;
import pwc.taxtech.atms.dto.vatdto.*; import pwc.taxtech.atms.dto.vatdto.*;
import pwc.taxtech.atms.dto.vatdto.dd.*; import pwc.taxtech.atms.dto.vatdto.dd.*;
...@@ -20,6 +22,7 @@ import pwc.taxtech.atms.vat.entity.*; ...@@ -20,6 +22,7 @@ import pwc.taxtech.atms.vat.entity.*;
import javax.annotation.Resource; import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse; import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream; import java.io.OutputStream;
import java.math.BigDecimal;
import java.util.*; import java.util.*;
/** /**
...@@ -57,6 +60,9 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -57,6 +60,9 @@ public class DataPreviewSerivceImpl extends BaseService {
@Resource @Resource
private CertifiedInvoicesListMapper certifiedInvoicesListMapper; private CertifiedInvoicesListMapper certifiedInvoicesListMapper;
@Resource
private InvoiceDataMapper invoiceDataMapper;
@Resource @Resource
private OrganizationMapper organizationMapper; private OrganizationMapper organizationMapper;
...@@ -287,6 +293,57 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -287,6 +293,57 @@ public class DataPreviewSerivceImpl extends BaseService {
return pageInfo; return pageInfo;
} }
/**
* 28/02/2019 10:18
* 导入时纵向存的,因为需求是行数一般不会增加,列数可能增加。查询时90度旋转
* 后续增加列 1、添加CountTypeConstant(按列递增) 2、增加setIDValue case 3、js添加column
* [param]
* @author Gary J Li
* @return
*/
public PageInfo<InvoiceDataDto> getIDDataForDisplay(InvoiceDataParam param) {
InvoiceDataCondition condition = beanUtil.copyProperties(param, new InvoiceDataCondition());
Page page = PageHelper.startPage(condition.getPageInfo().getPageIndex(), condition.getPageInfo().getPageSize());
List<InvoiceData> invoiceDatas = invoiceDataMapper.selectByCondition(condition);
List<InvoiceDataDto> invoiceDataDtos = generalIDDtoList();
if(invoiceDatas.size()>0){
invoiceDatas.forEach(id -> {
setIDValue(invoiceDataDtos,"专票正数发票份数",id.getCountType(),id.getSpecialInvoiceAmount1());
setIDValue(invoiceDataDtos,"专票负数发票份数",id.getCountType(),id.getSpecialInvoiceAmount2());
setIDValue(invoiceDataDtos,"专票正数废票份数",id.getCountType(),id.getSpecialInvoiceAmount3());
setIDValue(invoiceDataDtos,"专票负数废票份数",id.getCountType(),id.getSpecialInvoiceAmount4());
setIDValue(invoiceDataDtos,"专票销项正废金额",id.getCountType(),id.getSpecialInvoiceSalesAmount1());
setIDValue(invoiceDataDtos,"专票销项正数金额",id.getCountType(),id.getSpecialInvoiceSalesAmount2());
setIDValue(invoiceDataDtos,"专票销项负废金额",id.getCountType(),id.getSpecialInvoiceSalesAmount3());
setIDValue(invoiceDataDtos,"专票销项负数金额",id.getCountType(),id.getSpecialInvoiceSalesAmount4());
setIDValue(invoiceDataDtos,"专票实际销项金额",id.getCountType(),id.getSpecialInvoiceSalesAmount5());
setIDValue(invoiceDataDtos,"专票销项正废税额",id.getCountType(),id.getSpecialInvoiceTaxAmount1());
setIDValue(invoiceDataDtos,"专票销项正数税额",id.getCountType(),id.getSpecialInvoiceTaxAmount2());
setIDValue(invoiceDataDtos,"专票销项负废税额",id.getCountType(),id.getSpecialInvoiceTaxAmount3());
setIDValue(invoiceDataDtos,"专票销项负数税额",id.getCountType(),id.getSpecialInvoiceTaxAmount4());
setIDValue(invoiceDataDtos,"专票实际销项税额",id.getCountType(),id.getSpecialInvoiceTaxAmount5());
setIDValue(invoiceDataDtos,"普票正数发票份数",id.getCountType(),id.getInvoiceAmount1());
setIDValue(invoiceDataDtos,"普票负数发票份数",id.getCountType(),id.getInvoiceAmount2());
setIDValue(invoiceDataDtos,"普票正数废票份数",id.getCountType(),id.getInvoiceAmount3());
setIDValue(invoiceDataDtos,"普票负数废票份数",id.getCountType(),id.getInvoiceAmount4());
setIDValue(invoiceDataDtos,"普票销项正废金额",id.getCountType(),id.getInvoiceSalesAmount1());
setIDValue(invoiceDataDtos,"普票销项正数金额",id.getCountType(),id.getInvoiceSalesAmount2());
setIDValue(invoiceDataDtos,"普票销项负废金额",id.getCountType(),id.getInvoiceSalesAmount3());
setIDValue(invoiceDataDtos,"普票销项负数金额",id.getCountType(),id.getInvoiceSalesAmount4());
setIDValue(invoiceDataDtos,"普票实际销项金额",id.getCountType(),id.getInvoiceSalesAmount5());
setIDValue(invoiceDataDtos,"普票销项正废税额",id.getCountType(),id.getInvoiceTaxAmount1());
setIDValue(invoiceDataDtos,"普票销项正数税额",id.getCountType(),id.getInvoiceTaxAmount2());
setIDValue(invoiceDataDtos,"普票销项负废税额",id.getCountType(),id.getInvoiceTaxAmount3());
setIDValue(invoiceDataDtos,"普票销项负数税额",id.getCountType(),id.getInvoiceTaxAmount4());
setIDValue(invoiceDataDtos,"普票实际销项税额",id.getCountType(),id.getInvoiceTaxAmount5());
});
}
PageInfo<InvoiceDataDto> pageInfo =new PageInfo<>(invoiceDataDtos);
pageInfo.setTotal(invoiceDataDtos.size());
pageInfo.setPageNum(param.getPageInfo().getPageIndex());
return pageInfo;
}
public int getTBDownloadFilePath(TrialBalanceParam param, OutputStream os) { public int getTBDownloadFilePath(TrialBalanceParam param, OutputStream os) {
try { try {
TrialBalanceCondition condition = new TrialBalanceCondition(); TrialBalanceCondition condition = new TrialBalanceCondition();
...@@ -549,4 +606,83 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -549,4 +606,83 @@ public class DataPreviewSerivceImpl extends BaseService {
header.put("LateUpdatedDate","最后更新日期"); header.put("LateUpdatedDate","最后更新日期");
return header; return header;
} }
private List<InvoiceDataDto> generalIDDtoList() {
List<InvoiceDataDto> invoiceDataDtos = Lists.newArrayList();
invoiceDataDtos.add(new InvoiceDataDto("专票正数发票份数"));
invoiceDataDtos.add(new InvoiceDataDto("专票负数发票份数"));
invoiceDataDtos.add(new InvoiceDataDto("专票正数废票份数"));
invoiceDataDtos.add(new InvoiceDataDto("专票负数废票份数"));
invoiceDataDtos.add(new InvoiceDataDto("专票销项正废金额"));
invoiceDataDtos.add(new InvoiceDataDto("专票销项正数金额"));
invoiceDataDtos.add(new InvoiceDataDto("专票销项负废金额"));
invoiceDataDtos.add(new InvoiceDataDto("专票销项负数金额"));
invoiceDataDtos.add(new InvoiceDataDto("专票实际销项金额"));
invoiceDataDtos.add(new InvoiceDataDto("专票销项正废税额"));
invoiceDataDtos.add(new InvoiceDataDto("专票销项正数税额"));
invoiceDataDtos.add(new InvoiceDataDto("专票销项负废税额"));
invoiceDataDtos.add(new InvoiceDataDto("专票销项负数税额"));
invoiceDataDtos.add(new InvoiceDataDto("专票实际销项税额"));
invoiceDataDtos.add(new InvoiceDataDto("普票正数发票份数"));
invoiceDataDtos.add(new InvoiceDataDto("普票负数发票份数"));
invoiceDataDtos.add(new InvoiceDataDto("普票正数废票份数"));
invoiceDataDtos.add(new InvoiceDataDto("普票负数废票份数"));
invoiceDataDtos.add(new InvoiceDataDto("普票销项正废金额"));
invoiceDataDtos.add(new InvoiceDataDto("普票销项正数金额"));
invoiceDataDtos.add(new InvoiceDataDto("普票销项负废金额"));
invoiceDataDtos.add(new InvoiceDataDto("普票销项负数金额"));
invoiceDataDtos.add(new InvoiceDataDto("普票实际销项金额"));
invoiceDataDtos.add(new InvoiceDataDto("普票销项正废税额"));
invoiceDataDtos.add(new InvoiceDataDto("普票销项正数税额"));
invoiceDataDtos.add(new InvoiceDataDto("普票销项负废税额"));
invoiceDataDtos.add(new InvoiceDataDto("普票销项负数税额"));
invoiceDataDtos.add(new InvoiceDataDto("普票实际销项税额"));
return invoiceDataDtos;
}
private void setIDValue(List<InvoiceDataDto> idDtos, String column, Integer row, Object value) {
for(InvoiceDataDto idto : idDtos){
if(idto.getProjectName().equals(column)){
switch (row) {
case CountTypeConstant.TOTAL:
idto.setTotalAmount(new BigDecimal (value.toString()));
break;
case CountTypeConstant.SIXTEEN_PERCENT:
idto.setAmount1(new BigDecimal (value.toString()));
break;
case CountTypeConstant.TEN_PERCENT:
idto.setAmount2(new BigDecimal (value.toString()));
break;
case CountTypeConstant.SIX_PERCENT:
idto.setAmount3(new BigDecimal (value.toString()));
break;
case CountTypeConstant.THREE_PERCENT:
idto.setAmount4(new BigDecimal (value.toString()));
break;
case CountTypeConstant.SEVENTEEN_PERCENT:
idto.setAmount5(new BigDecimal (value.toString()));
break;
case CountTypeConstant.ELEVEN_PERCENT:
idto.setAmount6(new BigDecimal (value.toString()));
break;
case CountTypeConstant.FIVE_PERCENT:
idto.setAmount7(new BigDecimal (value.toString()));
break;
case CountTypeConstant.OTHER:
idto.setOtherAmount(new BigDecimal (value.toString()));
break;
default:
break;
}
break;
}
}
}
} }
...@@ -5,6 +5,7 @@ import org.apache.ibatis.annotations.Mapper; ...@@ -5,6 +5,7 @@ import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param; import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds; import org.apache.ibatis.session.RowBounds;
import pwc.taxtech.atms.MyVatMapper; import pwc.taxtech.atms.MyVatMapper;
import pwc.taxtech.atms.vat.dpo.InvoiceDataCondition;
import pwc.taxtech.atms.vat.entity.InvoiceData; import pwc.taxtech.atms.vat.entity.InvoiceData;
import pwc.taxtech.atms.vat.entity.InvoiceDataExample; import pwc.taxtech.atms.vat.entity.InvoiceDataExample;
...@@ -107,4 +108,6 @@ public interface InvoiceDataMapper extends MyVatMapper { ...@@ -107,4 +108,6 @@ public interface InvoiceDataMapper extends MyVatMapper {
int updateByPrimaryKey(InvoiceData record); int updateByPrimaryKey(InvoiceData record);
int insertBatch(List<InvoiceData> iDatas); int insertBatch(List<InvoiceData> iDatas);
List<InvoiceData> selectByCondition(@Param("idCondition") InvoiceDataCondition condition);
} }
\ No newline at end of file
package pwc.taxtech.atms.vat.dpo;
import pwc.taxtech.atms.dpo.PagingDto;
public class InvoiceDataCondition {
private PagingDto pageInfo;
private String orgId;
private Integer periodStart;
private Integer periodEnd;
public Integer getPeriodStart() {
return periodStart;
}
public void setPeriodStart(Integer periodStart) {
this.periodStart = periodStart;
}
public Integer getPeriodEnd() {
return periodEnd;
}
public void setPeriodEnd(Integer periodEnd) {
this.periodEnd = periodEnd;
}
public String getOrgId() {
return this.orgId;
}
public void setOrgId(String orgId) {
this.orgId = orgId;
}
public PagingDto getPageInfo() {
return pageInfo;
}
public void setPageInfo(PagingDto pageInfo) {
this.pageInfo = pageInfo;
}
}
<?xml version="1.0" encoding="UTF-8"?> <?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"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="pwc.taxtech.atms.vat.dao.InvoiceDataMapper"> <mapper namespace="pwc.taxtech.atms.vat.dao.InvoiceDataMapper">
<sql id="QueryCondition">
1 = 1
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(idCondition.orgId)">
AND organization_id= #{idCondition.orgId,jdbcType=VARCHAR}
</if>
<if test="idCondition.periodStart!=null">
AND period &gt;= #{idCondition.periodStart,jdbcType=INTEGER}
</if>
<if test="idCondition.periodEnd!=null">
AND period &lt;= #{idCondition.periodEnd,jdbcType=INTEGER}
</if>
</sql>
<select id="selectByCondition" parameterType="pwc.taxtech.atms.vat.dpo.InvoiceDataCondition" resultMap="BaseResultMap">
SELECT
id.*
FROM
invoice_data id
WHERE
<include refid="QueryCondition"/>
</select>
<insert id="insertBatch" parameterType="java.util.List"> <insert id="insertBatch" parameterType="java.util.List">
insert into invoice_data insert into invoice_data
(<include refid="Base_Column_List"/>) (<include refid="Base_Column_List"/>)
......
...@@ -746,6 +746,23 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g ...@@ -746,6 +746,23 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g
sticky: true sticky: true
}); });
$stateProvider.state({
name: 'vat.previewData.invoiceData',
url: '/invoiceData',
views: {
'@vat.previewData': {
controller: ['$scope', '$stateParams', 'appTranslation',
function ($scope, $stateParams, appTranslation) {
appTranslation.load([appTranslation.vat]);
}],
template: '<vat-preview-invoice-data></vat-preview-invoice-data>'
}
},
resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat),
deepStateRedirect: true,
sticky: true
});
$stateProvider.state({ $stateProvider.state({
name: 'vat.previewData.adjustmentTab', name: 'vat.previewData.adjustmentTab',
url: '/adjustmentTab', url: '/adjustmentTab',
......
...@@ -1824,8 +1824,47 @@ ...@@ -1824,8 +1824,47 @@
"cashFlow":"Cash Flow", "cashFlow":"Cash Flow",
"CashFlowDDTitle":"Cash Flow", "CashFlowDDTitle":"Cash Flow",
"InvoiceData": "Invoice Data", "invoiceData": "Invoice Data",
"InvoiceDataTitle": "Invoice Data", "InvoiceDataTitle": "Invoice Data",
"IDTotalAmount": "Total",
"Amount1": "16%",
"Amount2": "10%",
"Amount3": "6%",
"Amount4": "3%",
"Amount5": "17%",
"Amount6": "11%",
"Amount7": "5%",
"OtherAmount": "Other",
"specialInvoiceAmount1":"专票正数发票份数",
"specialInvoiceAmount2":"专票负数发票份数",
"specialInvoiceAmount3":"专票正数废票份数",
"specialInvoiceAmount4":"专票负数废票份数",
"specialInvoiceSalesAmount1":"专票销项正废金额",
"specialInvoiceSalesAmount2":"专票销项正数金额",
"specialInvoiceSalesAmount3":"专票销项负废金额",
"specialInvoiceSalesAmount4":"专票销项负数金额",
"specialInvoiceSalesAmount5":"专票实际销项金额",
"specialInvoiceTaxAmount1":"专票销项正废税额",
"specialInvoiceTaxAmount2":"专票销项正数税额",
"specialInvoiceTaxAmount3":"专票销项负废税额",
"specialInvoiceTaxAmount4":"专票销项负数税额",
"specialInvoiceTaxAmount5":"专票实际销项税额",
"invoiceAmount1":"普票正数发票份数",
"invoiceAmount2":"普票负数发票份数",
"invoiceAmount3":"普票正数废票份数",
"invoiceAmount4":"普票负数废票份数",
"invoiceSalesAmount1":"普票销项正废金额",
"invoiceSalesAmount2":"普票销项正数金额",
"invoiceSalesAmount3":"普票销项负废金额",
"invoiceSalesAmount4":"普票销项负数金额",
"invoiceSalesAmount5":"普票实际销项金额",
"invoiceTaxAmount1":"普票销项正废税额",
"invoiceTaxAmount2":"普票销项正数税额",
"invoiceTaxAmount3":"普票销项负废税额",
"invoiceTaxAmount4":"普票销项负数税额",
"invoiceTaxAmount5":"普票实际销项税额",
"EnterpriseAccountSetName": "Enterprise Account Set Name", "EnterpriseAccountSetName": "Enterprise Account Set Name",
"EnterpriseAccountSetCurrency": "Enterprise Account Set Currency", "EnterpriseAccountSetCurrency": "Enterprise Account Set Currency",
......
...@@ -2068,8 +2068,48 @@ ...@@ -2068,8 +2068,48 @@
"TMSPeriod": "税务系统期间", "TMSPeriod": "税务系统期间",
"InvoiceData": "发票资料", "invoiceData": "发票资料",
"InvoiceDataTitle": "发票资料", "InvoiceDataTitle": "发票资料",
"IDTotalAmount": "合计",
"Amount1": "16%",
"Amount2": "10%",
"Amount3": "6%",
"Amount4": "3%",
"Amount5": "17%",
"Amount6": "11%",
"Amount7": "5%",
"OtherAmount": "其他",
"CountType":"计数类型",
"SpecialInvoiceAmount1":"专票正数发票份数",
"SpecialInvoiceAmount2":"专票负数发票份数",
"SpecialInvoiceAmount3":"专票正数废票份数",
"SpecialInvoiceAmount4":"专票负数废票份数",
"SpecialInvoiceSalesAmount1":"专票销项正废金额",
"SpecialInvoiceSalesAmount2":"专票销项正数金额",
"SpecialInvoiceSalesAmount3":"专票销项负废金额",
"SpecialInvoiceSalesAmount4":"专票销项负数金额",
"SpecialInvoiceSalesAmount5":"专票实际销项金额",
"SpecialInvoiceTaxAmount1":"专票销项正废税额",
"SpecialInvoiceTaxAmount2":"专票销项正数税额",
"SpecialInvoiceTaxAmount3":"专票销项负废税额",
"SpecialInvoiceTaxAmount4":"专票销项负数税额",
"SpecialInvoiceTaxAmount5":"专票实际销项税额",
"InvoiceAmount1":"普票正数发票份数",
"InvoiceAmount2":"普票负数发票份数",
"InvoiceAmount3":"普票正数废票份数",
"InvoiceAmount4":"普票负数废票份数",
"InvoiceSalesAmount1":"普票销项正废金额",
"InvoiceSalesAmount2":"普票销项正数金额",
"InvoiceSalesAmount3":"普票销项负废金额",
"InvoiceSalesAmount4":"普票销项负数金额",
"InvoiceSalesAmount5":"普票实际销项金额",
"InvoiceTaxAmount1":"普票销项正废税额",
"InvoiceTaxAmount2":"普票销项正数税额",
"InvoiceTaxAmount3":"普票销项负废税额",
"InvoiceTaxAmount4":"普票销项负数税额",
"InvoiceTaxAmount5":"普票实际销项税额",
"EnterpriseAccountSetName": "账套名称", "EnterpriseAccountSetName": "账套名称",
"EnterpriseAccountSetCurrency": "账套币种", "EnterpriseAccountSetCurrency": "账套币种",
......
...@@ -486,6 +486,9 @@ constant.vatPermission = { ...@@ -486,6 +486,9 @@ constant.vatPermission = {
}, },
cashFlow: { cashFlow: {
queryCode: '02.002.019' queryCode: '02.002.019'
},
invoiceData: {
queryCode: '02.002.020'
} }
}, },
dataManage: { dataManage: {
......
...@@ -227,6 +227,9 @@ ...@@ -227,6 +227,9 @@
}, },
getCILDataForDisplay: function (queryParams) { getCILDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getCILDataForDisplay', queryParams, apiConfig.createVat()); return $http.post('/dataPreview/getCILDataForDisplay', queryParams, apiConfig.createVat());
},
getIDDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getIDDataForDisplay', queryParams, apiConfig.createVat());
} }
}; };
}]); }]);
\ No newline at end of file
...@@ -46,6 +46,7 @@ ...@@ -46,6 +46,7 @@
$scope.isFirst = true; $scope.isFirst = true;
$scope.haveVatPermission = false; $scope.haveVatPermission = false;
$scope.haveCitPermission = false; $scope.haveCitPermission = false;
$scope.orgTreeUpdate = false;
$scope.currentSelectedMonth = vatSessionService.month; $scope.currentSelectedMonth = vatSessionService.month;
...@@ -1173,6 +1174,8 @@ ...@@ -1173,6 +1174,8 @@
getOrgData: function () { getOrgData: function () {
debugger;
var data = vatSessionService.orgTree; var data = vatSessionService.orgTree;
if (!data) { if (!data) {
...@@ -1728,7 +1731,10 @@ ...@@ -1728,7 +1731,10 @@
if($.isEmptyObject(vatSessionService.orgTree)){ if($.isEmptyObject(vatSessionService.orgTree)){
orgService.getOrgListLevel().success(function (data) { orgService.getOrgListLevel().success(function (data) {
if(data&&$.isEmptyObject(vatSessionService.orgTree)){
vatSessionService.orgTree=data; vatSessionService.orgTree=data;
$scope.orgTreeUpdate = true;
}
}); });
} }
...@@ -1757,13 +1763,17 @@ ...@@ -1757,13 +1763,17 @@
} }
}); });
$scope.$watch('productFileName', function (newValue, oldValue) { $scope.$watch('productFileName', function (newValue, oldValue) {
if (newValue && newValue !== oldValue) { if (newValue && newValue !== oldValue) {
doUploadProductFileName(newValue); doUploadProductFileName(newValue);
} }
}); });
$scope.$watch('orgTreeUpdate', function (newValue, oldValue) {
if(newValue===true){
orgDisplay.getOrgData();
}
});
})(); })();
} }
]); ]);
......
...@@ -75,6 +75,10 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe ...@@ -75,6 +75,10 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
{ {
name: 'coupaPurchasingReport', permission: constant.vatPermission.dataPreview.coupaPurchasingReport.queryCode, name: 'coupaPurchasingReport', permission: constant.vatPermission.dataPreview.coupaPurchasingReport.queryCode,
text: $translate.instant('coupaPurchasingReport'), icon: 'fa fa-file-text-o', show: true text: $translate.instant('coupaPurchasingReport'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'invoiceData', permission: constant.vatPermission.dataPreview.invoiceData.queryCode,
text: $translate.instant('invoiceData'), icon: 'fa fa-file-text-o', show: true
}, },
{ {
name: 'adjustmentTab', permission: constant.vatPermission.dataPreview.adjustmentTab.queryCode, name: 'adjustmentTab', permission: constant.vatPermission.dataPreview.adjustmentTab.queryCode,
......
...@@ -326,7 +326,7 @@ ...@@ -326,7 +326,7 @@
initCoupaPurchasingReportPagination(); initCoupaPurchasingReportPagination();
//初始化查询条件-期间范围 //初始化查询条件-期间范围
if($rootScope.currentLanguageDesc = $rootScope.currentLanguage === 'en-us'){ if($rootScope.currentLanguageDesc = $rootScope.currentLanguage === 'en-us'){
$('.periodInput')[0].style.left = "280px"; $('.periodInput')[0].style.left = "330px";
}else{ }else{
$('.periodInput')[0].style.left = "170px"; $('.periodInput')[0].style.left = "170px";
} }
......
<div class="popover">
<div class="arrow"></div>
<div class="popover-content">
<div>
<table class="table table-responsive">
<tr>
<td>
<span translate="BillingContent"></span>
<input class="form-control input-width-small" id="certificationDateStart" ng-model="queryParams.certificationDateStart" />&nbsp;-&nbsp;
<input class="form-control input-width-small" id="certificationDateEnd" ng-model="queryParams.certificationDateEnd" />
</td>
</tr>
<tr>
<td>
<span translate="ApplicationSector"></span>
<input class="form-control input-width-middle" type="text" id="invoiceCode" ng-model="queryParams.invoiceCode" />
</td>
</tr>
<tr>
<td>
<span translate="ApplicationSector"></span>
<input class="form-control input-width-middle" type="text" id="invoiceNumber" ng-model="queryParams.invoiceNumber" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceCode"></span>
<input class="form-control input-width-middle" type="text" id="sellerTaxNumber" ng-model="queryParams.sellerTaxNumber" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceNumber"></span>
<input class="form-control input-width-small" type="text" id="amountStart" ng-model="queryParams.amountStart" onkeyup="PWC.inputNumberFormat(this);" />&nbsp;-&nbsp;
<input class="form-control input-width-small" type="text" id="amountEnd" ng-model="queryParams.amountEnd" onkeyup="PWC.inputNumberFormat(this);" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceFPLXQuery"></span>
<div class="ui-select-has-border input-width-middle">
<ui-select ng-model="InvoiceType.selected" search-enabled="false" style="text-align:left;" class="input-width-middle">
<ui-select-match>{{$select.selected.name}}</ui-select-match>
<ui-select-choices repeat="item in invoiceTypeList | propsFilter: {name: $select.search}">
<div title="{{item.name}}" ng-bind-html="item.name"></div>
</ui-select-choices>
</ui-select>
</div>
</td>
</tr>
<tr>
<td>
<span translate="InvoiceRZJGQuery"></span>
<div class="ui-select-has-border input-width-middle">
<ui-select ng-model="CertificationStatus.selected" search-enabled="false" style="text-align: left; " class="input-width-middle">
<ui-select-match>{{$select.selected.name}}</ui-select-match>
<ui-select-choices repeat="item in cetificationResultList | propsFilter: {name: $select.search}">
<div title="{{item.name}}" ng-bind-html="item.name"></div>
</ui-select-choices>
</ui-select>
</div>
</td>
</tr>
</table>
</div>
<div class="row">
<div style="float:right;margin-right:10px;">
<button class="btn btn-default btn-primary" ng-click="doDataFilter('')">
<span class="fa fa-chevron-down" aria-hidden="true"> </span> <span translate="Confirm"></span>
</button>
<button class="btn btn-default margin-right10" ng-click="doDataFilterReset()">
<span class="fa fa-times" aria-hidden="true"> </span> <span translate="Reset"></span>
</button>
</div>
</div>
</div>
</div>
vatModule.controller('VatPreviewInvoiceDataController', ['$rootScope','$scope', '$log', '$translate', '$timeout', 'SweetAlert', '$q', 'uiGridConstants', '$interval', 'vatPreviewService', 'browserService', 'vatSessionService', 'region', 'enums', 'vatExportService',
function ($rootScope,$scope, $log, $translate, $timeout, SweetAlert, $q, uiGridConstants, $interval, vatPreviewService, browserService, vatSessionService, region, enums, vatExportService) {
'use strict';
$scope.startDate = new Date(vatSessionService.project.year, 0, 1);
$scope.endDate = new Date(vatSessionService.project.year, 11, 31);
$scope.dateFormat = $translate.instant('dateFormat4YearMonthDay');
$scope.startMonth = vatSessionService.month;
$scope.endMonth = vatSessionService.month;
$scope.totalMoneyAmount = 0;
$scope.totalTaxAmount = 0;
var minDate = [1, vatSessionService.project.year];
// var minDate = moment().startOf('month').subtract(0, 'months');
var maxDate = [12, vatSessionService.project.year];
var setDate = [
[vatSessionService.month, vatSessionService.project.year],
[vatSessionService.month, vatSessionService.project.year]];
$scope.monthList = [$translate.instant('Month01'),
$translate.instant('Month02'),
$translate.instant('Month03'),
$translate.instant('Month04'),
$translate.instant('Month05'),
$translate.instant('Month06'),
$translate.instant('Month07'),
$translate.instant('Month08'),
$translate.instant('Month09'),
$translate.instant('Month10'),
$translate.instant('Month11'),
$translate.instant('Month12')
];
//初始化期间
var initPeriods = function () {
var curMonth = new Date().getMonth() + 1;
$scope.queryParams = {
pageInfo: {},
periodStart: '',
periodEnd: '',
certificationDateStart: null,
certificationDateEnd: null,
invoiceCode: '',
invoiceNumber: '',
sellerTaxNumber: '',
amountStart: null,
amountEnd: null,
invoiceType: null,
taxAmountStart: null,
taxAmountEnd: null,
certificationStatus: null
};
};
/*var countTotal = function(){
$scope.queryParams.pageInfo = {
totalCount: -1,
pageIndex: 1,
pageSize: -1,
totalPage: 0,
};
vatPreviewService.queryInputInvoiceAllList($scope.queryParams).success(function (data) {
if (data) {
var totalMoneyAmount = 0;
var totalTaxAmount = 0;
_.each(data, function (x) {
totalMoneyAmount = totalMoneyAmount + parseFloat(x.hjje.replace(/,/g, ""));
totalTaxAmount = totalTaxAmount + parseFloat(x.hjse.replace(/,/g, ""));
})
$scope.totalMoneyAmount = totalMoneyAmount.toLocaleString();
$scope.totalTaxAmount = totalTaxAmount.toLocaleString();
}
});
};*/
//从数据库中load数据
var loadInvoiceDataItemDataFromDB = function (pageIndex) {
initInvoiceDataItemPagination();
$scope.curInvoiceDataItemPage = pageIndex;
//初始化查询信息
$scope.queryParams.pageInfo = {
totalCount: $scope.queryInvoiceDataResult.pageInfo.totalCount,
pageIndex: pageIndex,
pageSize: $scope.queryInvoiceDataResult.pageInfo.pageSize,
totalPage: 0
};
$scope.queryParams.orgId = vatSessionService.project.organizationID;
$scope.getDataFromDatabase($scope.queryParams);
};
$scope.getDataFromDatabase = function (queryParams){
vatPreviewService.getIDDataForDisplay(queryParams).success(function (data) {
if (data) {
// minDate = data.
var index = 1;
data.list.forEach(function (v) {
v.index = index++;
});
$scope.gridOptions.data = data.list;
$scope.queryInvoiceDataResult.pageInfo = data;
computeInvoiceDataItemPage();
/*$scope.ledgerName = data.list[0].ledgerName;
$scope.currencyCode = data.list[0].ledgerCurrencyCode;
$scope.status = data.list[0].status;
$scope.importDate = $filter('date')(data.list[0].date, "yyyy-MM-dd hh:mm:ss");*/
}
});
};
//点击任意一页加载数据事件
var loadInvoiceDataDataByPage = function (pageIndex) {
loadInvoiceDataItemDataFromDB(pageIndex);
};
//计算页数,创建分页栏
var computeInvoiceDataItemPage = function () {
if ($scope.queryInvoiceDataResult.pageInfo && $scope.queryInvoiceDataResult.pageInfo.total > 0) {
var totalPage = parseInt($scope.queryInvoiceDataResult.pageInfo.total / $scope.queryInvoiceDataResult.pageInfo.pageSize);
totalPage = $scope.queryInvoiceDataResult.pageInfo.totalCount % $scope.queryInvoiceDataResult.pageInfo.pageSize == 0 ? totalPage : totalPage + 1;
//计算本页记录数
if ($scope.queryInvoiceDataResult.pageInfo.pageNum === totalPage) {
$scope.curPageItemCount = $scope.queryInvoiceDataResult.pageInfo.total % $scope.queryInvoiceDataResult.pageInfo.pageSize;
}
else {
$scope.curPageItemCount = $scope.queryInvoiceDataResult.pageInfo.pageSize;
}
$scope.queryInvoiceDataResult.pageInfo.totalPage = totalPage;
var createPage = $("#totalInvoicePage").createPage({
pageCount: totalPage,
current: $scope.curInvoiceDataItemPage,
backFn: function (p) {
//单击回调方法,p是当前页码
loadInvoiceDataDataByPage(p);
}
});
$('#totalInvoicePage').css('display', 'inline-block');
} else {
//如果查询结果为0,则直接设置本页记录数为0
$scope.curPageItemCount = 0;
var createPage = $("#totalInvoicePage").createPage({
pageCount: 0,
current: $scope.curInvoiceDataItemPage,
backFn: function (p) {
//单击回调方法,p是当前页码
loadInvoiceDataDataByPage(p);
}
});
$('#totalInvoicePage').css('display', 'inline-block');
}
};
//初始化分页信息
var initInvoiceDataItemPagination = function () {
$scope.queryInvoiceDataResult = {
list: [],
pageInfo: {
totalCount: -1,
pageIndex: 1,
pageSize: constant.pagesize,
totalPage: 0
}
};
$scope.curInvoiceDataItemPage = 1;
};
//去掉所有的查询条件,重新load数据
var doDataFilterReset = function () {
$scope.queryParams = {
pageInfo: {},
periodStart: '',
periodEnd: '',
certificationDateStart: null,
certificationDateEnd: null,
invoiceCode: '',
invoiceNumber: '',
sellerTaxNumber: '',
amountStart: null,
amountEnd: null,
invoiceType: null,
taxAmountStart: null,
taxAmountEnd: null,
certificationStatus: null
};
$scope.criteriaList = [];
$scope.queryParams.periodStart = $scope.startMonth;
$scope.queryParams.periodEnd = $scope.endMonth;
// countTotal();
loadInvoiceDataItemDataFromDB(1);
$('.filter-button').popover("hide");
};
//在popover打开时执行事件
var showPopover = function () {
$timeout(function () {
initDatePickers();
}, 500);
};
//初始化时间控件
var initDatePickers = function () {
//认证开始时间
var ele1 = $("#certificationDateStart");
ele1.datepicker({
startDate: $scope.startDate,
endDate: $scope.endDate,
language: region,
autoclose: true,//选中之后自动隐藏日期选择框
clearBtn: true,//清除按钮
todayBtn: false,//今日按钮
format: $scope.dateFormat//日期格式,详见 http://bootstrap-datepicker.readthedocs.org/en/release/options.html#format
});
ele1.datepicker("setDate", $scope.queryParams.certificationDateStart);
//认证结束时间
var ele2 = $("#certificationDateEnd");
ele2.datepicker({
startDate: $scope.startDate,
endDate: $scope.endDate,
language: region,
autoclose: true,//选中之后自动隐藏日期选择框
clearBtn: true,//清除按钮
todayBtn: false,//今日按钮
format: $scope.dateFormat//日期格式,详见 http://bootstrap-datepicker.readthedocs.org/en/release/options.html#format
})
ele2.datepicker("setDate", $scope.queryParams.certificationDateEnd);
//初始化已选择的发票类型和认证结果
$scope.InvoiceType.selected = _.find($scope.invoiceTypeList, function (v) {
return v.id == $scope.queryParams.invoiceType;
})
$scope.CertificationStatus.selected = _.find($scope.cetificationResultList, function (v) {
return v.id == $scope.queryParams.certificationStatus;
})
};
(function initialize() {
$log.debug('VatPreviewInputInvoiceController.ctor()...');
$('#input-invoice-period-picker').focus(function () {
$('.filter-button').popover("hide");
});
//初始化month-picker
$('#input-invoice-period-picker').rangePicker({
minDate: minDate,
maxDate: maxDate,
setDate: setDate,
months: $scope.monthList,//['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
ConfirmBtnText: $translate.instant('Confirm'),
CancelBtnText: $translate.instant('ButtonCancel')
})
.on('datePicker.done', function (e, result) {
//开始月份
var startMonth = result[0][0];
//结束月份
var endMonth = result[1][0];
$scope.startMonth = startMonth;
$scope.endMonth = endMonth;
$scope.queryParams.periodStart = startMonth;
$scope.queryParams.periodEnd = endMonth;
$scope.queryParams.orgId = vatSessionService.project.organizationID;
// countTotal();
loadInvoiceDataItemDataFromDB(1);
});
var downloadID = function () {
vatPreviewService.initExportIDData($scope.queryParams).success(function (data, status, headers) {
if(status===204){
SweetAlert.warning("没有数据可以下载");
return;
}
vatExportService.exportToExcel(data, status, headers, '日记账信息.xls');
}).error(function () {
SweetAlert.error($translate.instant('PleaseContactAdministrator'));
});
};
$scope.gridOptions = {
rowHeight: constant.UIGrid.rowHeight,
selectionRowHeaderWidth: constant.UIGrid.rowHeight,
virtualizationThreshold: 50,//默认加载50条数据,避免在数据展示时,只显示前面4条
enableSorting: false,
enableColumnMenus: false,
columnDefs: [
{ name: $translate.instant('ProjectName'), cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.projectName}}<span></div>' },
// { name: $translate.instant('InvoiceQJ'), width: '8%', cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.periodID}}<span></div>' },
{ name: $translate.instant('IDTotalAmount'), cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.totalAmount }}<span></div>' },
{ name: $translate.instant('Amount1'), cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.amount1}}</span></div>' },
{ name: $translate.instant('Amount2'), cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.amount2}}</span></div>' },
{ name: $translate.instant('Amount3'), cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.amount3}}</span></div>' },
{ name: $translate.instant('Amount4'), cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.amount4}}</span></div>' },
{ name: $translate.instant('Amount5'), cellTemplate: '<div class="ui-grid-cell-contents "><span>{{row.entity.amount5}}</span></div>' },
{ name: $translate.instant('Amount6'), cellTemplate: '<div class="ui-grid-cell-contents "><span>{{row.entity.amount6}}</span></div>' },
{ name: $translate.instant('Amount7'), cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.amount7 }}</span></div>' },
{ name: $translate.instant('OtherAmount'), cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.otherAmount}}</span></div>' }
]
};
$scope.doDataFilterReset = doDataFilterReset;
$scope.showPopover = showPopover;
$scope.downloadID = downloadID;
initPeriods();
initInvoiceDataItemPagination();
//初始化查询条件-期间范围
$scope.queryParams.periodStart = vatSessionService.year * 100 + vatSessionService.month;
$scope.queryParams.periodEnd = vatSessionService.year * 100 + vatSessionService.month;
$scope.queryParams.orgId = vatSessionService.project.organizationID;
if($rootScope.currentLanguageDesc = $rootScope.currentLanguage === 'en-us'){
$('.periodInput')[0].style.left = "250px";
}else{
$('.periodInput')[0].style.left = "150px";
}
loadInvoiceDataItemDataFromDB(1);
})();
}
]);
<div class="vat-preview-invoice-data" id="mainPreviewDiv">
<div class="top-area-wrapper" style="margin-top: 10px">
<!--<button class="filter-button"
atms-popover ng-mouseenter="prepareSummary()" ng-click="showPopover()"
popover-container="body" popover-auto-hide="true" data-overwrite="true"
use-optimized-placement-algorithm="true"
data-placement="bottom"
data-templateurl="/app/vat/preview/vat-preview-invoice-record/vat-preview-invoice-record-search.html">
<i class="fa fa-filter" aria-hidden="true"></i>
</button>-->
<span translate="InvoiceDataTitle" class="text-bold"></span> &nbsp;&nbsp;|&nbsp;&nbsp;<span class="text-bold" translate="InvoiceQJ"></span>
<input type="text" class="form-control input-width-middle periodInput" style="position: relative; top: -30px; left: 180px;" id="input-invoice-period-picker" />
<span ng-click="downloadInputInvoice()" style="position: relative; top: -61px; left: 95%;"><i class="fa fa-file-excel-o" aria-hidden="true"></i>{{'ExportBtn' | translate}}</span>
</div>
<!--<div style="margin-bottom: 8px;margin-left: 30px">
{{'EnterpriseAccountSetName' | translate}}<span class="numAmount">{{ledgerName}}</span>&nbsp;&nbsp;&nbsp;
{{'EnterpriseAccountSetCurrency' | translate}}<span class="numAmount">{{currencyCode}}</span>&nbsp;&nbsp;&nbsp;
{{'IsCloseAccount' | translate}}<span class="numAmount">{{status}}</span>
{{'ImportTime' | translate}}<span class="numAmount">{{importDate| date:'yyyy-MM-dd hh:mm:ss'}}</span>
</div>-->
<div id="filterCriteriaDiv" style="max-width:98%;margin-bottom:2px;" ng-show="criteriaList.length>0">
<span class="text-bold margin-left20" translate="FilterCriteriaTags"></span>:
<span class="tag label label-default" ng-repeat="criteria in criteriaListFirstRow">
<span title="{{criteria.fullName}}">
{{criteria.name}}
</span>
<a><i class="remove glyphicon glyphicon-remove-sign glyphicon-white" ng-click="doDataFilter(criteria.propertyName)"></i></a>
</span>
<span ng-if="criteriaList.length>6"><br /></span>
<span ng-if="criteriaList.length>6" style="margin-left: 81px; margin-top: 19px; display: inline-block;"></span>
<span ng-if="criteriaList.length>6" class="tag label label-default" ng-repeat="criteria in criteriaListSecondRow">
<span title="{{criteria.fullName}}">
{{criteria.name}}
</span>
<a><i class="remove glyphicon glyphicon-remove-sign glyphicon-white" ng-click="doDataFilter(criteria.propertyName)"></i></a>
</span>
</div>
<div id="mainAreaDiv" class="main-area">
<div class="inputInvoiceGrid" ui-grid-expandable ui-grid="gridOptions">
<div class="watermark" ng-show="!gridOptions.data.length"><span translate="NoDataAvailable"></span></div>
</div>
<div class="pagination-container">
<span>本页{{curPageItemCount}}条记录,共{{queryInvoiceDataResult.pageInfo.total}}条记录</span>
<div id="totalInvoicePage" class="common-pagination" style="display:none;">
</div>
</div>
</div>
</div>
vatModule.directive('vatPreviewInvoiceData', ['$log', 'browserService', '$translate', 'region', '$timeout',
function ($log, browserService, $translate, region, $timeout) {
$log.debug('vatPreviewInvoiceData.ctor()...');
return {
restrict: 'E',
templateUrl: '/app/vat/preview/vat-preview-invoice-data/vat-preview-invoice-data.html' + '?_=' + Math.random(),
scope: {},
controller: 'VatPreviewInvoiceDataController',
link: function ($scope, element) {
}
}
}
]);
\ No newline at end of file
@import "~/app-resources/less/theme.less";
.vat-preview-invoice-data {
background-color: white;
height: 100%;
.numAmount {
padding: 0 3px;
height: 21px;
margin-left: 5px;
/* font-family: 'Arial'; */
font-weight: 600;
border-radius: 2px;
font-style: normal;
outline: none;
border: none;
min-width: 20px;
background-color: #DDDDDD;
color: #AA0000;
}
.top-area-wrapper {
height: 60px;
width: 98%;
margin: 0 20px;
.filter-button {
width: 30px;
margin-top: 16px;
}
.operation-wrapper {
margin: 15px 25px 10px 10px;
span {
cursor: pointer;
}
}
}
.filter-popup-wrapper {
display: none;
}
.margin-left20 {
margin-left: 20px;
}
/*******************************************/
/*Filter Criteria tags:*/
.tag {
font-size: 12px;
padding: .3em .4em .4em;
margin: 0 .1em;
a {
color: #bbb;
cursor: pointer;
opacity: 0.6;
margin: 0 0 0 .3em;
&:hover {
opacity: 1.0;
}
.glyphicon-white {
color: #fff;
margin-bottom: 2px;
}
}
.remove {
vertical-align: bottom;
top: 0;
}
}
/*Filter Criteria tags:*/
/*******************************************/
.main-area {
height: 100%;
margin: 0 20px;
.watermark {
position: absolute;
top: 50%;
transform: translateY(-50%);
opacity: .25;
font-size: 3em;
width: 100%;
text-align: center;
z-index: 1000;
}
.inputInvoiceGrid {
width: 100%;
height: calc(~'100% - 158px');
.ui-grid-header-cell-wrapper .ui-grid-header-cell-row .ui-grid-cell-contents {
height: 40px;
i {
display: none;
}
}
}
}
.form-control {
&:focus {
border-color: transparent;
-webkit-box-shadow: none;
box-shadow: none;
border: 1px solid #ccc;
}
}
.input-width-middle {
width: 217px;
}
}
.popover {
min-width: 370px;
left: 119px !important;
.arrow {
left: 5% !important;
}
}
.popover-content {
td {
text-align: right;
padding: 6px;
span {
float: left;
}
}
.form-control {
display: inline-block;
&:focus {
border-color: transparent;
-webkit-box-shadow: none;
box-shadow: none;
border: 1px solid #ccc;
}
}
.input-width-small {
width: 100px;
}
.input-width-middle {
width: 217px;
}
}
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