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 {
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)
public void downloadCFQueryData(@RequestBody CashFlowParam param, HttpServletResponse response) {
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;
import com.github.pagehelper.PageInfo;
import com.google.common.collect.Lists;
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.dto.vatdto.*;
import pwc.taxtech.atms.dto.vatdto.dd.*;
......@@ -20,6 +22,7 @@ import pwc.taxtech.atms.vat.entity.*;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream;
import java.math.BigDecimal;
import java.util.*;
/**
......@@ -57,6 +60,9 @@ public class DataPreviewSerivceImpl extends BaseService {
@Resource
private CertifiedInvoicesListMapper certifiedInvoicesListMapper;
@Resource
private InvoiceDataMapper invoiceDataMapper;
@Resource
private OrganizationMapper organizationMapper;
......@@ -287,6 +293,57 @@ public class DataPreviewSerivceImpl extends BaseService {
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) {
try {
TrialBalanceCondition condition = new TrialBalanceCondition();
......@@ -549,4 +606,83 @@ public class DataPreviewSerivceImpl extends BaseService {
header.put("LateUpdatedDate","最后更新日期");
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;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
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.InvoiceDataExample;
......@@ -107,4 +108,6 @@ public interface InvoiceDataMapper extends MyVatMapper {
int updateByPrimaryKey(InvoiceData record);
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"?>
<!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">
<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 into invoice_data
(<include refid="Base_Column_List"/>)
......
......@@ -746,6 +746,23 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g
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({
name: 'vat.previewData.adjustmentTab',
url: '/adjustmentTab',
......
......@@ -1824,8 +1824,47 @@
"cashFlow":"Cash Flow",
"CashFlowDDTitle":"Cash Flow",
"InvoiceData": "Invoice Data",
"invoiceData": "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",
"EnterpriseAccountSetCurrency": "Enterprise Account Set Currency",
......
......@@ -2068,8 +2068,48 @@
"TMSPeriod": "税务系统期间",
"InvoiceData": "发票资料",
"invoiceData": "发票资料",
"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": "账套名称",
"EnterpriseAccountSetCurrency": "账套币种",
......
......@@ -486,6 +486,9 @@ constant.vatPermission = {
},
cashFlow: {
queryCode: '02.002.019'
},
invoiceData: {
queryCode: '02.002.020'
}
},
dataManage: {
......
......@@ -227,6 +227,9 @@
},
getCILDataForDisplay: function (queryParams) {
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 @@
$scope.isFirst = true;
$scope.haveVatPermission = false;
$scope.haveCitPermission = false;
$scope.orgTreeUpdate = false;
$scope.currentSelectedMonth = vatSessionService.month;
......@@ -1173,6 +1174,8 @@
getOrgData: function () {
debugger;
var data = vatSessionService.orgTree;
if (!data) {
......@@ -1728,7 +1731,10 @@
if($.isEmptyObject(vatSessionService.orgTree)){
orgService.getOrgListLevel().success(function (data) {
if(data&&$.isEmptyObject(vatSessionService.orgTree)){
vatSessionService.orgTree=data;
$scope.orgTreeUpdate = true;
}
});
}
......@@ -1757,13 +1763,17 @@
}
});
$scope.$watch('productFileName', function (newValue, oldValue) {
if (newValue && newValue !== oldValue) {
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
{
name: 'coupaPurchasingReport', permission: constant.vatPermission.dataPreview.coupaPurchasingReport.queryCode,
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,
......
......@@ -326,7 +326,7 @@
initCoupaPurchasingReportPagination();
//初始化查询条件-期间范围
if($rootScope.currentLanguageDesc = $rootScope.currentLanguage === 'en-us'){
$('.periodInput')[0].style.left = "280px";
$('.periodInput')[0].style.left = "330px";
}else{
$('.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>
<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