Commit 217c2cf3 authored by ken.q.you's avatar ken.q.you

add vat 调整表,利润表prc人工,资产负债prc人工---Ken

parent bce53a58
......@@ -13,4 +13,7 @@ public final class ExportTemplatePathConstant {
public static final String RED_LETTER_INFO_TAB = "/vat_excel_template/red_letter_info_tab.xlsx";
public static final String COUPA_PURCHASING_REPORT = "/vat_excel_template/coupa_purchasing_report.xlsx";
public static final String INVOICE_DATA = "/vat_excel_template/invoice_data.xlsx";
public static final String ADJUSTMENT_TABLE = "/vat_excel_template/adjustment_table.xlsx";
public static final String PROFIT_LOSS_STATEMENT_PRC_MANUAL_REPORT = "/vat_excel_template/profit_loss_statement_prc_manual.xlsx";
public static final String BALANCE_SHEET_PRC_MANUAL="/vat_excel_template/balance_sheet_prc_manual.xlsx";
}
......@@ -6,9 +6,10 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import pwc.taxtech.atms.dto.vatdto.*;
import pwc.taxtech.atms.dto.vatdto.dd.*;
import pwc.taxtech.atms.dto.vatdto.dd.TrialBalanceDto;
import pwc.taxtech.atms.dto.vatdto.dd.*;
import pwc.taxtech.atms.service.impl.DataPreviewSerivceImpl;
import pwc.taxtech.atms.vat.entity.ProfitLossStatementPrc;
import javax.servlet.http.HttpServletResponse;
import java.io.IOException;
......@@ -37,12 +38,24 @@ public class DataPreviewController extends BaseController {
return dataPreviewSerivceImpl.getPLDataForDisplay(param);
}
@PostMapping("getPLprcManualDataForDisplay")
public PageInfo<ProfitLossStatementPrc> getPLprcManualDataForDisplay(@RequestBody ProfitLossStatementParam param) {
logger.debug(String.format("利润表PRC人工导入查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getPLprcManualDataForDisplay(param);
}
@PostMapping("getJEDataForDisplay")
public PageInfo<JournalEntryDto> getJEDataForDisplay(@RequestBody JournalEntryParam param) {
logger.debug(String.format("日记账查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getJEDataForDisplay(param);
}
@PostMapping("getADTBDataForDisplay")
public PageInfo<AdjustmentTableDto> getADTBDataForDisplay(@RequestBody AdjustmentTableParam param) {
logger.debug(String.format("调整表查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getAdjustmentTbDataForDisplay(param);
}
@PostMapping("getCFDataForDisplay")
public PageInfo<CashFlowDto> getCFDataForDisplay(@RequestBody CashFlowParam param) {
logger.debug(String.format("现金流量表查询 Condition:%s", JSON.toJSONString(param)));
......@@ -55,6 +68,12 @@ public class DataPreviewController extends BaseController {
return dataPreviewSerivceImpl.getBSDataForDisplay(param);
}
@PostMapping("getBSprcManualDataForDisplay")
public PageInfo<BalanceSheetDto> getBSprcManualDataForDisplay(@RequestBody BalanceSheetParam param) {
logger.debug(String.format("资产负债表PRC人工导入查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getBSprcManualDataForDisplay(param);
}
@PostMapping("getIRDataForDisplay")
public PageInfo<InvoiceRecordDto> getIRDataForDisplay(@RequestBody InvoiceRecordParam param) {
logger.debug(String.format("发票记录表查询 Condition:%s", JSON.toJSONString(param)));
......@@ -92,6 +111,21 @@ public class DataPreviewController extends BaseController {
dataPreviewSerivceImpl.exportCashFlowList(response, param, fileName);
}
@RequestMapping(value = "exportADTBData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadADTBQueryData(@RequestBody AdjustmentTableParam param, HttpServletResponse response) {
logger.debug("enter downloadADTBQueryData");
String fileName="testFile";
dataPreviewSerivceImpl.exportAdjustmentTableList(response, param, fileName);
}
//资产负债prc人工导入导出
@RequestMapping(value = "exportBSprcManualData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadBSprcManualQueryData(@RequestBody BalanceSheetParam param, HttpServletResponse response) {
logger.debug("enter downloadADTBQueryData");
String fileName="testFile";
dataPreviewSerivceImpl.exportBalanceSheetPrcManualList(response, param, fileName);
}
@RequestMapping(value = "exportTBData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadTBQueryData(@RequestBody TrialBalanceParam paras, HttpServletResponse response) {
response.setContentType("application/vnd.ms-excel;charset=utf-8");
......@@ -188,6 +222,13 @@ public class DataPreviewController extends BaseController {
}
}
@RequestMapping(value = "exportPLprcManualData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadPLprcManualQueryData(@RequestBody ProfitLossStatementParam param, HttpServletResponse response) {
logger.debug("enter downloadPLprcManualQueryData");
String fileName="testFile";
dataPreviewSerivceImpl.exportProfitLossPrcManualList(response, param, fileName);
}
@RequestMapping(value = "exportIRData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadIRQueryData(@RequestBody InvoiceRecordParam param, HttpServletResponse response) {
logger.debug("enter downloadIRQueryData");
......
package pwc.taxtech.atms.dto.vatdto;
import pwc.taxtech.atms.dpo.PagingDto;
public class AdjustmentTableParam {
private PagingDto pageInfo;
private String orgId;
private Integer periodStart;
private String segment3;
private String segment3Name;
private String segment5;
private String segment5Name;
private String segment6;
private String segment6Name;
public Integer getPeriodStart() {
return periodStart;
}
public void setPeriodStart(Integer periodStart) {
this.periodStart = periodStart;
}
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;
}
public String getSegment3() {
return segment3;
}
public void setSegment3(String segment3) {
this.segment3 = segment3;
}
public String getSegment3Name() {
return segment3Name;
}
public void setSegment3Name(String segment3Name) {
this.segment3Name = segment3Name;
}
public String getSegment5() {
return segment5;
}
public void setSegment5(String segment5) {
this.segment5 = segment5;
}
public String getSegment5Name() {
return segment5Name;
}
public void setSegment5Name(String segment5Name) {
this.segment5Name = segment5Name;
}
public String getSegment6() {
return segment6;
}
public void setSegment6(String segment6) {
this.segment6 = segment6;
}
public String getSegment6Name() {
return segment6Name;
}
public void setSegment6Name(String segment6Name) {
this.segment6Name = segment6Name;
}
}
package pwc.taxtech.atms.dto.vatdto.excelheader;
public class ProfitLossHeader {
private String companyNameCn;
private String companyNameEn;
private String entityCode;
private Integer periodStart;
private Integer periodEnd;
private String ledgerName;
private String ledgerCurrencyCode;
private String status;
public String getEntityCode() {
return entityCode;
}
public void setEntityCode(String entityCode) {
this.entityCode = entityCode;
}
public String getCompanyNameCn() {
return companyNameCn;
}
public void setCompanyNameCn(String companyNameCn) {
this.companyNameCn = companyNameCn;
}
public String getCompanyNameEn() {
return companyNameEn;
}
public void setCompanyNameEn(String companyNameEn) {
this.companyNameEn = companyNameEn;
}
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 getLedgerName() {
return ledgerName;
}
public void setLedgerName(String ledgerName) {
this.ledgerName = ledgerName;
}
public String getLedgerCurrencyCode() {
return ledgerCurrencyCode;
}
public void setLedgerCurrencyCode(String ledgerCurrencyCode) {
this.ledgerCurrencyCode = ledgerCurrencyCode;
}
public String getStatus() {
return status;
}
public void setStatus(String status) {
this.status = status;
}
}
package pwc.taxtech.atms.vat.dao;
import java.util.List;
import java.util.Map;
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.AdjustmentTableCondition;
import pwc.taxtech.atms.vat.entity.AdjustmentTable;
import pwc.taxtech.atms.vat.entity.AdjustmentTableExample;
import java.util.List;
import java.util.Map;
@Mapper
public interface AdjustmentTableMapper extends MyVatMapper {
/**
......@@ -112,4 +113,6 @@ public interface AdjustmentTableMapper extends MyVatMapper {
List<AdjustmentTable> selectBeforeAdjustData(Map<String,Object> map1);
List<AdjustmentTable> selectByCondition(@Param("adCondition") AdjustmentTableCondition adjustmentTableCondition);
}
\ No newline at end of file
package pwc.taxtech.atms.vat.dao;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
......@@ -10,6 +9,8 @@ import pwc.taxtech.atms.vat.entity.BalanceSheet;
import pwc.taxtech.atms.vat.entity.BalanceSheetPrc;
import pwc.taxtech.atms.vat.entity.BalanceSheetPrcExample;
import java.util.List;
@Mapper
public interface BalanceSheetPrcManualMapper extends MyVatMapper {
/**
......@@ -110,5 +111,7 @@ public interface BalanceSheetPrcManualMapper extends MyVatMapper {
List<BalanceSheet> selectByCondition(@Param("bsCondition") BalanceSheetCondition condition);
List<BalanceSheetPrc> selectByCondition1(@Param("bsCondition") BalanceSheetCondition condition);
int insertBatch(List<BalanceSheet> bls);
}
\ No newline at end of file
package pwc.taxtech.atms.vat.dao;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
......@@ -10,6 +9,8 @@ import pwc.taxtech.atms.vat.entity.ProfitLossStatement;
import pwc.taxtech.atms.vat.entity.ProfitLossStatementPrc;
import pwc.taxtech.atms.vat.entity.ProfitLossStatementPrcExample;
import java.util.List;
@Mapper
public interface ProfitLossStatementPrcManualMapper extends MyVatMapper {
/**
......@@ -110,5 +111,8 @@ public interface ProfitLossStatementPrcManualMapper extends MyVatMapper {
List<ProfitLossStatement> selectByCondition(@Param("plCondition") ProfitLossStatementCondition condition);
//无时间区间条件查询
List<ProfitLossStatementPrc> selectByCondition1(@Param("plCondition") ProfitLossStatementCondition condition);
int insertBatch(List<ProfitLossStatement> pls);
}
\ No newline at end of file
package pwc.taxtech.atms.vat.dpo;
import pwc.taxtech.atms.dpo.PagingDto;
public class AdjustmentTableCondition {
private PagingDto pageInfo;
private String orgId;
private Integer periodStart;
private String segment3;
private String segment3Name;
private String segment5;
private String segment5Name;
private String segment6;
private String segment6Name;
public Integer getPeriodStart() {
return periodStart;
}
public void setPeriodStart(Integer periodStart) {
this.periodStart = periodStart;
}
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;
}
public String getSegment3() {
return segment3;
}
public void setSegment3(String segment3) {
this.segment3 = segment3;
}
public String getSegment3Name() {
return segment3Name;
}
public void setSegment3Name(String segment3Name) {
this.segment3Name = segment3Name;
}
public String getSegment5() {
return segment5;
}
public void setSegment5(String segment5) {
this.segment5 = segment5;
}
public String getSegment5Name() {
return segment5Name;
}
public void setSegment5Name(String segment5Name) {
this.segment5Name = segment5Name;
}
public String getSegment6() {
return segment6;
}
public void setSegment6(String segment6) {
this.segment6 = segment6;
}
public String getSegment6Name() {
return segment6Name;
}
public void setSegment6Name(String segment6Name) {
this.segment6Name = segment6Name;
}
}
......@@ -714,4 +714,13 @@ WHERE
</select>
<select id="selectByCondition" parameterType="pwc.taxtech.atms.vat.dpo.AdjustmentTableCondition" resultMap="BaseResultMap">
SELECT
ad.*
FROM
adjustment_table ad
WHERE
<include refid="QueryCondition"/>
</select>
</mapper>
\ 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.vat.dao.AdjustmentTableMapper">
<sql id="QueryCondition">
1 = 1
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(adCondition.orgId)">
AND organization_id= #{adCondition.orgId,jdbcType=VARCHAR}
</if>
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(adCondition.segment3)">
AND segment3= #{adCondition.segment3,jdbcType=VARCHAR}
</if>
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(adCondition.segment3Name)">
AND segment3_name= #{adCondition.segment3Name,jdbcType=VARCHAR}
</if>
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(adCondition.segment5)">
AND segment5= #{adCondition.segment5,jdbcType=VARCHAR}
</if>
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(adCondition.segment5Name)">
AND segment5_name= #{adCondition.segment5Name,jdbcType=VARCHAR}
</if>
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(adCondition.segment6)">
AND segment6= #{adCondition.segment6,jdbcType=VARCHAR}
</if>
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(adCondition.segment6Name)">
AND segment6_name= #{adCondition.segment6Name,jdbcType=VARCHAR}
</if>
<if test="adCondition.periodStart!=null">
AND tms_period = #{adCondition.periodStart,jdbcType=INTEGER}
</if>
order by update_time desc
</sql>
<insert id="insertBatch" parameterType="java.util.List">
insert into adjustment_table
......
......@@ -24,6 +24,25 @@
<include refid="QueryCondition"/>
</select>
<sql id="QueryCondition1">
1 = 1
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(bsCondition.orgId)">
AND organization_id= #{bsCondition.orgId,jdbcType=VARCHAR}
</if>
<if test="bsCondition.periodStart!=null">
AND tms_period = #{bsCondition.periodStart,jdbcType=INTEGER}
</if>
</sql>
<select id="selectByCondition1" parameterType="pwc.taxtech.atms.vat.dpo.BalanceSheetCondition" resultMap="BaseResultMap">
SELECT
bs.*
FROM
balance_sheet_prc_manual bs
WHERE
<include refid="QueryCondition1"/>
</select>
<insert id="insertBatch" parameterType="java.util.List">
insert into balance_sheet_prc_manual
(<include refid="Base_Column_List"/>)
......
......@@ -24,6 +24,25 @@
<include refid="QueryCondition"/>
</select>
<sql id="QueryCondition1">
1 = 1
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(plCondition.orgId)">
AND organization_id= #{plCondition.orgId,jdbcType=VARCHAR}
</if>
<if test="plCondition.periodStart!=null">
AND tms_period = #{plCondition.periodStart,jdbcType=INTEGER}
</if>
</sql>
<select id="selectByCondition1" parameterType="pwc.taxtech.atms.vat.dpo.ProfitLossStatementCondition" resultMap="BaseResultMap">
SELECT
pl.*
FROM
profit_loss_statement_prc_manual pl
WHERE
<include refid="QueryCondition1"/>
</select>
<insert id="insertBatch" parameterType="java.util.List">
insert into profit_loss_statement_prc_manual
(<include refid="Base_Column_List"/>)
......
......@@ -818,6 +818,23 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g
sticky: true
});
$stateProvider.state({
name: 'vat.previewData.profitLossPrcManual',
url: '/profitLossPrcManual',
views: {
'@vat.previewData': {
controller: ['$scope', '$stateParams', 'appTranslation',
function ($scope, $stateParams, appTranslation) {
appTranslation.load([appTranslation.vat]);
}],
template: '<vat-preview-profit-loss-prc-manual></vat-preview-profit-loss-prc-manual>'
}
},
resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat),
deepStateRedirect: true,
sticky: true
});
$stateProvider.state({
name: 'vat.previewData.profitLoss',
url: '/profitLoss',
......@@ -902,6 +919,23 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g
sticky: true
});
$stateProvider.state({
name: 'vat.previewData.offBalanceSheetPrcManual',
url: '/offBalanceSheetPrcManual',
views: {
'@vat.previewData': {
controller: ['$scope', '$stateParams', 'appTranslation',
function ($scope, $stateParams, appTranslation) {
appTranslation.load([appTranslation.vat]);
}],
template: '<vat-preview-off-balance-sheet-prc-manual></vat-preview-off-balance-sheet>'
}
},
resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat),
deepStateRedirect: true,
sticky: true
});
$stateProvider.state({
name: 'vat.previewData.offBalanceSheet',
url: '/offBalanceSheet',
......
......@@ -1510,8 +1510,11 @@
"Alternate1Description": "Alternate 1 Description",
"Alternate2Description": "Alternate 2 Description",
"YYYY-MM": "YYYY-MM",
"CurrentPeriodDebitBal":"Current Period DebitBal",
"CurrentPeriodCreditBal":"Current Period CreditBal",
"profitLoss": "Profit Statement",
"profitLossPRC": "Profit Statement PRC",
"profitLossPRCManual": "Profit Statement PRC Manual",
"ProfitLossTitle": "Profit Statement",
"CurrentPeriodAmount": "Current Period Amount",
"ThisYearAccumulatedAmount": "This Year Accumulated Amount",
......@@ -1519,6 +1522,7 @@
"directMethodCashFlowStatement": "Direct Method Cash Flow Statement",
"offBalanceSheet": "Balance Sheet",
"offBalanceSheetPRC": "Balance Sheet PRC",
"offBalanceSheetPRCManual": "Balance Sheet PRC Manual",
"OffBalanceSheetTitle": "Balance sheet",
"InitialBalance": "Beginning Balance",
"journal": "Journal Entry",
......
......@@ -1995,9 +1995,13 @@
"Alternate1Description": "备用1说明",
"Alternate2Description": "备用2说明",
"YYYY-MM": "YYYY-MM",
"CurrentPeriodDebitBal":"本期借方发生额",
"CurrentPeriodCreditBal":"本期贷方发生额",
"profitLoss": "利润表",
"profitLossPRC": "利润表PRC",
"profitLossPRCManual": "利润表PRC人工导入",
"ProfitLossTitle": "利润表",
"CurrentPeriodAmount": "本期发生额",
"ThisYearAccumulatedAmount": "本年累计",
......@@ -2010,6 +2014,7 @@
"offBalanceSheet" : "资产负债表",
"offBalanceSheetPRC": "资产负债表PRC",
"offBalanceSheetPRCManual": "资产负债表PRC人工导入",
"OffBalanceSheetTitle" : "资产负债表",
"InitialBalance" : "年初余额",
......
......@@ -501,6 +501,12 @@ constant.vatPermission = {
},
invoiceData: {
queryCode: '02.002.020'
},
profitLossPrcManual: {
queryCode: '02.002.021'
},
offBalanceSheetPrcManual: {
queryCode: '02.002.022'
}
},
dataManage: {
......
......@@ -198,12 +198,37 @@
FileSaver.saveAs(data,fileName + '_'+queryParm.periodStart+'-'+queryParm.periodEnd+'_'+vatSessionService.project.name+'.xlsx');
});
},
getADTBDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getADTBDataForDisplay', queryParams, apiConfig.createVat());
},
//服务器导出
initExportATData: function (queryParm, fileName) {
var thisConfig = apiConfig.create();
thisConfig.responseType = "arraybuffer";
return $http.post('/dataPreview/exportADTBData/get', queryParm, thisConfig).then(function (response) {
var data = new Blob([response.data], {type: response.headers('Content-Type')});
FileSaver.saveAs(data,fileName + '_'+queryParm.periodStart+'_'+vatSessionService.project.name+'.xlsx');
});
},
getPLDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getPLDataForDisplay', queryParams, apiConfig.createVat());
},
initExportPLData: function (queryParams) {
return $http.post('/dataPreview/exportPLData/get', queryParams, apiConfig.create({ responseType: 'arraybuffer' }));
},
//利润表prc人工导入
getPLprcManualDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getPLprcManualDataForDisplay', queryParams, apiConfig.createVat());
},
//服务器导出 利润表prc人工
initExportPLprcManualData: function (queryParm, fileName) {
var thisConfig = apiConfig.create();
thisConfig.responseType = "arraybuffer";
return $http.post('/dataPreview/exportPLprcManualData/get', queryParm, thisConfig).then(function (response) {
var data = new Blob([response.data], {type: response.headers('Content-Type')});
FileSaver.saveAs(data,fileName + '_'+queryParm.periodStart+'_'+vatSessionService.project.name+'.xlsx');
});
},
getJEDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getJEDataForDisplay', queryParams, apiConfig.createVat());
},
......@@ -216,6 +241,19 @@
initExportBSData: function (queryParams) {
return $http.post('/dataPreview/exportBSData/get', queryParams, apiConfig.create({ responseType: 'arraybuffer' }));
},
//资产负债表prc人工导入
getBSprcManualDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getBSprcManualDataForDisplay', queryParams, apiConfig.createVat());
},
//服务器导出 资产负债表prc人工
initExportBSprcManualData: function (queryParm, fileName) {
var thisConfig = apiConfig.create();
thisConfig.responseType = "arraybuffer";
return $http.post('/dataPreview/exportBSprcManualData/get', queryParm, thisConfig).then(function (response) {
var data = new Blob([response.data], {type: response.headers('Content-Type')});
FileSaver.saveAs(data,fileName + '_'+queryParm.periodStart+'_'+vatSessionService.project.name+'.xlsx');
});
},
getIRDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getIRDataForDisplay', queryParams, apiConfig.createVat());
},
......
......@@ -36,9 +36,21 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
name: 'journal', permission: constant.vatPermission.dataPreview.journal.queryCode,
text: $translate.instant('journal'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'adjustmentTab', permission: constant.vatPermission.dataPreview.adjustmentTab.queryCode,
text: $translate.instant('adjustmentTable'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'cashFlow', permission: constant.vatPermission.dataPreview.cashFlow.queryCode,
text: $translate.instant('cashFlow'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'profitLossPrcManual', permission: constant.vatPermission.dataPreview.profitLossPrcManual.queryCode,
text: $translate.instant('profitLossPRCManual'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'offBalanceSheetPrcManual', permission: constant.vatPermission.dataPreview.offBalanceSheetPrcManual.queryCode,
text: $translate.instant('offBalanceSheetPRCManual'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'invoiceRecord', permission: constant.vatPermission.dataPreview.invoiceRecord.queryCode,
......@@ -59,10 +71,6 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
{
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,
text: $translate.instant('adjustmentTable'), icon: 'fa fa-file-text-o', show: false
},
{
name: 'quarterlyOwnersEquityChangeTab', permission: constant.vatPermission.dataPreview.quarterlyOwnersEquityChangeTable.queryCode,
......
......@@ -5,60 +5,38 @@
<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" />
<span translate="TBAccountCode"></span>
<input class="form-control input-width-middle" type="text" id="segment3" ng-model="queryParams.segment3" />
</td>
</tr>
<tr>
<td>
<span translate="ApplicationSector"></span>
<input class="form-control input-width-middle" type="text" id="invoiceCode" ng-model="queryParams.invoiceCode" />
<span translate="AccountName"></span>
<input class="form-control input-width-middle" type="text" id="segment3Name" ng-model="queryParams.segment3Name" />
</td>
</tr>
<tr>
<td>
<span translate="ApplicationSector"></span>
<input class="form-control input-width-middle" type="text" id="invoiceNumber" ng-model="queryParams.invoiceNumber" />
<span translate="ProfitCenterCode"></span>
<input class="form-control input-width-middle" type="text" id="segment2" ng-model="queryParams.segment2" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceCode"></span>
<input class="form-control input-width-middle" type="text" id="sellerTaxNumber" ng-model="queryParams.sellerTaxNumber" />
<span translate="ProfitCenterName"></span>
<input class="form-control input-width-middle" type="text" id="segment2Name" ng-model="queryParams.segment2Name" />
</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);" />
<span translate="ProductCode"></span>
<input class="form-control input-width-middle" type="text" id="segment6" ng-model="queryParams.segment6" />
</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>
<span translate="TBProductName"></span>
<input class="form-control input-width-middle" type="text" id="segment6Name" ng-model="queryParams.segment6Name" />
</td>
</tr>
</table>
......
......@@ -5,18 +5,17 @@
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-vat-invoice-record/vat-preview-vat-invoice-record-search.html">
data-templateurl="/app/vat/preview/vat-preview-adjustment-tab/vat-preview-adjustment-tab-search.html">
<i class="fa fa-filter" aria-hidden="true"></i>
</button>
<span translate="AdjustmentTableTitle" class="text-bold"></span> &nbsp;&nbsp;|&nbsp;&nbsp;<span class="text-bold" translate="InvoiceQJ"></span>
<input type="text" class="form-control input-width-middle" style="position: relative; top: -30px; left: 230px;" 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">
<span class="text-bold">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;</span>&nbsp;
金额<span class="numAmount">{{totalMoneyAmount}}</span>&nbsp;&nbsp;&nbsp;
税额<span class="numAmount">{{totalTaxAmount}}</span>
<input type="text" id="periodDatepicker" class="datepicker imp-subheader form-control periodInput"
readonly="readonly" ng-model="UploadPeriodTime" style="position:relative;top:-30px;left:150px;width: 120px;"/>
<div style="position: relative; top: -56px; left: 72%;width: 380px;">
{{'ImportTime' | translate}} : <span style=" width: 150px;display: inline-block; ">{{importDate| date:'yyyy-MM-dd hh:mm:ss'}}</span>&nbsp;&nbsp;
<!-- <span translate="ImportTime" style="position: relative; top: -61px; left: 75%;"></span><span style="position: relative; top: -61px; left: 75%;">: {{importDate| date:'yyyy-MM-dd hh:mm:ss'}}</span> -->
<span ng-click="downloadAdjustmentTable()" style="margin-left: 45px; "><i class="fa fa-file-excel-o" aria-hidden="true"></i>{{'ExportBtn' | translate}}</span>
</div>
</div>
<div id="filterCriteriaDiv" style="max-width:98%;margin-bottom:2px;" ng-show="criteriaList.length>0">
......@@ -38,11 +37,11 @@
</div>
<div id="mainAreaDiv" class="main-area">
<div class="inputInvoiceGrid" ui-grid-expandable ui-grid="gridOptions">
<div class="inputInvoiceGrid" ui-grid="gridOptions">
<div class="watermark" ng-show="!gridOptions.data.length"><span translate="NoDataAvailable"></span></div>
</div>
<div class="pagination-container">
<span>本页{{curPageItemCount}}条记录,共{{queryIncomeInvoiceItemResult.pageInfo.total}}条记录</span>
<span>本页{{curPageItemCount}}条记录,共{{queryTrialBalanceResult.pageInfo.total}}条记录</span>
<div id="totalInvoicePage" class="common-pagination" style="display:none;">
</div>
</div>
......
......@@ -123,7 +123,9 @@
}
}
.rightHeader{
text-align: right;
}
.popover {
min-width: 370px;
......
<div class="popover">
<div class="arrow"></div>
<div class="popover-content">
<div>
<table class="table table-responsive">
<tr>
<td>
<span translate="InvoiceRZRQQuery"></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="InvoiceFPDMQuery"></span>
<input class="form-control input-width-middle" type="text" id="invoiceCode" ng-model="queryParams.invoiceCode" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceFPHMQuery"></span>
<input class="form-control input-width-middle" type="text" id="invoiceNumber" ng-model="queryParams.invoiceNumber" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceGHFSHQuery"></span>
<input class="form-control input-width-middle" type="text" id="sellerTaxNumber" ng-model="queryParams.sellerTaxNumber" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceJEQuery"></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="InvoiceSEQuery"></span>
<input class="form-control input-width-small" type="text" id="taxAmountStart" ng-model="queryParams.taxAmountStart" onkeyup="PWC.inputNumberFormat(this);" />&nbsp;-&nbsp;
<input class="form-control input-width-small" type="text" id="taxAmountEnd" ng-model="queryParams.taxAmountEnd" 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-off-balance-sheet-prc-manual" id="mainPreviewDiv">
<div class="top-area-wrapper" style="margin-top: 30px">
<!--<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-off-balance-sheet/vat-preview-off-balance-sheet-search.html">
<i class="fa fa-filter" aria-hidden="true"></i>
</button>-->
<span translate="offBalanceSheetPRCManual" class="text-bold"></span> &nbsp;&nbsp;|&nbsp;&nbsp;<span class="text-bold" translate="InvoiceQJ"></span>
<input type="text" id="periodDatepicker" class="datepicker imp-subheader form-control periodInput"
readonly="readonly" ng-model="UploadPeriodTime" style="position:relative;top:-30px;left:230px;width: 120px;"/>
<span ng-click="downloadBS()" 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="gridOptions">
<div class="watermark" ng-show="!gridOptions.data.length"><span translate="NoDataAvailable"></span></div>
</div>
<div class="pagination-container">
<span>本页{{curPageItemCount}}条记录,共{{queryBalanceSheetResult.pageInfo.total}}条记录</span>
<div id="totalInvoicePage" class="common-pagination" style="display:none;">
</div>
</div>
</div>
</div>
vatModule.directive('vatPreviewOffBalanceSheetPrcManual', ['$log', 'browserService', '$translate', 'region', '$timeout',
function ($log, browserService, $translate, region, $timeout) {
$log.debug('vatPreviewOffBalanceSheetPrcManual.ctor()...');
return {
restrict: 'E',
templateUrl: '/app/vat/preview/vat-preview-off-balance-sheet-prc-manual/vat-preview-off-balance-sheet-prc-manual.html' + '?_=' + Math.random(),
scope: {},
controller: 'VatPreviewOffBalanceSheetPrcManualController',
link: function ($scope, element) {
}
}
}
]);
\ No newline at end of file
@import "~/app-resources/less/theme.less";
.vat-preview-off-balance-sheet-prc-manual {
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: 45px;
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;
}
}
.rightHeader{
text-align: right;
}
.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;
}
}
<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-profit-loss-prc-manual" id="mainPreviewDiv">
<div class="top-area-wrapper" style="margin-top: 30px">
<!--<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-profit-loss/vat-preview-profit-loss-search.html">
<i class="fa fa-filter" aria-hidden="true"></i>
</button>-->
<span translate="profitLossPRCManual" class="text-bold"></span> &nbsp;&nbsp;|&nbsp;&nbsp;<span class="text-bold" translate="InvoiceQJ"></span>
<input type="text" id="periodDatepicker" class="datepicker imp-subheader form-control periodInput"
readonly="readonly" ng-model="UploadPeriodTime" style="position:relative;top:-30px;left:200px;width: 120px;"/>
<span ng-click="downloadPL()" 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="gridOptions">
<div class="watermark" ng-show="!gridOptions.data.length"><span translate="NoDataAvailable"></span></div>
</div>
<div class="pagination-container">
<span>本页{{curPageItemCount}}条记录,共{{queryProfitLossResult.pageInfo.total}}条记录</span>
<div id="totalInvoicePage" class="common-pagination" style="display:none;">
</div>
</div>
</div>
</div>
vatModule.directive('vatPreviewProfitLossPrcManual', ['$log', 'browserService', '$translate', 'region', '$timeout',
function ($log, browserService, $translate, region, $timeout) {
$log.debug('vatPreviewProfitLossPrcManual.ctor()...');
return {
restrict: 'E',
templateUrl: '/app/vat/preview/vat-preview-profit-loss-prc-manual/vat-preview-profit-loss-prc-manual.html' + '?_=' + Math.random(),
scope: {},
controller: 'VatPreviewProfitLossPrcManualController',
link: function ($scope, element) {
}
}
}
]);
\ 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