Commit 4015f866 authored by ken.q.you's avatar ken.q.you

update vat view table---Ken

parents 0bf7a63f c21352d4
......@@ -67,6 +67,12 @@ public class DataPreviewController extends BaseController {
return dataPreviewSerivceImpl.getCFDataForDisplay(param);
}
@PostMapping("getCFManualDataForDisplay")
public PageInfo<CashFlowDto> getCFManualDataForDisplay(@RequestBody CashFlowParam param) {
logger.debug(String.format("现金流量表查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getCFManualDataForDisplay(param);
}
@PostMapping("getBSDataForDisplay")
public PageInfo<BalanceSheetDto> getBSDataForDisplay(@RequestBody BalanceSheetParam param) {
logger.debug(String.format("资产负债表PRC查询 Condition:%s", JSON.toJSONString(param)));
......
......@@ -48,7 +48,7 @@ public class DataPreviewSerivceImpl extends BaseService {
@Resource
private ProfitLossStatementPrcManualMapper profitLossStatementPrcManualMapper;
@Resource
private ProfitLossStatementMapper profitLossStatementMapper;
......@@ -67,6 +67,9 @@ public class DataPreviewSerivceImpl extends BaseService {
@Resource
private CashFlowMapper cashFlowMapper;
@Resource
private CashFlowManualMapper cashFlowManualMapper;
@Resource
private InvoiceRecordMapper invoiceRecordMapper;
......@@ -195,6 +198,26 @@ public class DataPreviewSerivceImpl extends BaseService {
return pageInfo;
}
public PageInfo<CashFlowDto> getCFManualDataForDisplay(CashFlowParam param) {
CashFlowCondition condition = new CashFlowCondition();
beanUtil.copyProperties(param, condition);
//Integer totalCount=cashFlowMapper.selectCountByCondition(condition);
List<CashFlowDto> cashFlowDtos = Lists.newArrayList();
Page page = PageHelper.startPage(param.getPageInfo().getPageIndex(), param.getPageInfo().getPageSize());
List<CashFlow> cashFlows = cashFlowManualMapper.selectByCondition(condition);
//使用page的getTotal()
Long total = page.getTotal();
cashFlows.forEach(cf -> {
CashFlowDto cashFlowDto = new CashFlowDto();
beanUtil.copyProperties(cf, cashFlowDto);
cashFlowDtos.add(cashFlowDto);
});
PageInfo<CashFlowDto> pageInfo = new PageInfo<>(cashFlowDtos);
pageInfo.setTotal(total);
pageInfo.setPageNum(param.getPageInfo().getPageIndex());
return pageInfo;
}
public PageInfo<AdjustmentTableDto> getAdjustmentTbDataForDisplay(AdjustmentTableParam param) {
AdjustmentTableCondition condition = beanUtil.copyProperties(param, new AdjustmentTableCondition());
......
......@@ -5,7 +5,7 @@
<sql id="QueryCondition">
1 = 1
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(cfCondition.orgId)">
AND entity_code= #{cfCondition.orgId,jdbcType=VARCHAR}
AND organization_id= #{cfCondition.orgId,jdbcType=VARCHAR}
</if>
<if test="cfCondition.periodStart!=null">
AND tms_period &gt;= #{cfCondition.periodStart,jdbcType=INTEGER}
......
......@@ -952,7 +952,22 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g
deepStateRedirect: true,
sticky: true
});
$stateProvider.state({
name: 'vat.previewData.cashFlowManual',
url: '/cashFlowManual',
views: {
'@vat.previewData': {
controller: ['$scope', '$stateParams', 'appTranslation',
function ($scope, $stateParams, appTranslation) {
appTranslation.load([appTranslation.vat]);
}],
template: '<vat-preview-cash-flow-manual></vat-preview-cash-flow-manual>'
}
},
resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat),
deepStateRedirect: true,
sticky: true
});
$stateProvider.state({
name: 'vat.previewData.offBalanceSheetPrcManual',
url: '/offBalanceSheetPrcManual',
......
......@@ -1830,6 +1830,7 @@
"ImportType": "Import Type",
"cashFlow": "Cash Flow",
"CashFlowDDTitle": "Cash Flow",
"CashFlowManual": "Cash Flow Manual",
"invoiceData": "Invoice Data",
"InvoiceDataTitle": "Invoice Data",
"IDTotalAmount": "Total",
......
......@@ -1853,6 +1853,7 @@
"TrialBalanceDDTitle": "科目余额表",
"cashFlow":"现金流量表",
"CashFlowDDTitle":"现金流量表",
"CashFlowManual": "现金流量表人工导入",
"TBAccountCode": "科目编号",
......
......@@ -189,6 +189,9 @@
getCFDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getCFDataForDisplay', queryParams, apiConfig.createVat());
},
getCFManualDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getCFManualDataForDisplay', queryParams, apiConfig.createVat());
},
//服务器导出
initExportCFData: function (queryParm, fileName) {
var thisConfig = apiConfig.create();
......
......@@ -883,6 +883,7 @@
constant.vatPermission.dataPreview.invoiceData.queryCode,
constant.vatPermission.dataPreview.profitTable.queryCode,
constant.vatPermission.dataPreview.balanceSheet.queryCode,
constant.vatPermission.dataPreview.cashFlowManual.queryCode,
constant.vatPermission.dataManage.caculateDataCode,
......@@ -933,7 +934,9 @@
$state.go('vat.previewData.vatPreviewProfitTable');
} else if (data[constant.vatPermission.dataPreview.balanceSheet.queryCode]) {
$state.go('vat.previewData.vatPreviewTheBalanceSheet');
} else if (data[constant.vatPermission.dataManage.caculateDataCode]) {
} else if (data[constant.vatPermission.dataPreview.cashFlowManual.queryCode]) {
$state.go('vat.previewData.cashFlowManual');
}else if (data[constant.vatPermission.dataManage.caculateDataCode]) {
$state.go('vat.reductionData.caculateData');
} else if (data[constant.vatPermission.dataManage.revenueDetailCode]) {
$state.go('vat.reductionData.revenueDetail');
......
<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-cash-flow-manual" id="mainPreviewDiv">
<div class="top-area-wrapper" style="margin-top: 10px">
<span translate="CashFlowDDTitle" 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; width: 120px; left: 130px;" id="input-invoice-period-picker"/>
<span ng-click="downloadCashFlow()" style="position: relative; top: -13px; left: 95%;"><i
class="fa fa-file-excel-o" aria-hidden="true"></i>{{'ExportBtn' | translate}}</span>
</div>
<div style="margin-bottom: 10px;margin-left: 20px;margin-top: 10px;">
{{'EnterpriseAccountSetName' | translate }}:<span class="numAmount">{{ledgerNameFirst}}</span>&nbsp;&nbsp;&nbsp;
{{'ImportTime' | translate }}:<span class="numAmount">{{importDate| date:'yyyy-MM-dd hh:mm:ss'}}</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}}条记录,共{{queryIncomeInvoiceItemResult.pageInfo.total}}条记录</span>
<div id="totalInvoicePage" class="common-pagination" style="display:none;">
</div>
</div>
</div>
</div>
vatModule.directive('vatPreviewCashFlowManual', ['$log', 'browserService', '$translate', 'region', '$timeout',
function ($log, browserService, $translate, region, $timeout) {
$log.debug('vatPreviewCashFlowManual.ctor()...');
return {
restrict: 'E',
templateUrl: '/app/vat/preview/vat-preview-cash-flow-manual/vat-preview-cash-flow-manual.html' + '?_=' + Math.random(),
scope: {},
controller: 'VatPreviewCashFlowManualController',
link: function ($scope, element) {
}
}
}
]);
\ No newline at end of file
@import "~/app-resources/less/theme.less";
.vat-preview-cash-flow-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: 30px;
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;
}
}
......@@ -256,7 +256,7 @@
(function initialize() {
$log.debug('VatPreviewInputInvoiceController.ctor()...');
initPeriods();
initDatePicker1();
showPopover();
$scope.gridOptions = {
rowHeight: constant.UIGrid.rowHeight,
selectionRowHeaderWidth: constant.UIGrid.rowHeight,
......
......@@ -147,7 +147,8 @@
constant.vatPermission.dataPreview.redLetterInformationTable.queryCode,
constant.vatPermission.dataPreview.coupaPurchasingReport.queryCode,
constant.vatPermission.dataPreview.invoiceData.queryCode,
constant.vatPermission.dataPreview.profitTable.queryCode,
constant.vatPermission.dataPreview.cashFlowManual.queryCode,
// constant.vatPermission.dataManage.accountMappingCode,
// constant.vatPermission.dataManage.goodsMappingCode,
......@@ -444,8 +445,39 @@
permission: constant.vatPermission.dataPreview.invoiceData.queryCode,
url: '#/vat/previewData/invoiceData'
});
}
} else if (data[constant.vatPermission.dataPreview.profitTable.queryCode]) {
$scope.menus.push({
name: 'previewData',
state: 'previewData',
num: 2,
permission: constant.vatPermission.dataPreview.dataPreviewCode,
url: '#/vat/importData'
});
subMenus.push({
name: 'previewData.vatPreviewProfitTable',
state: 'previewData.vatPreviewProfitTable',
num: 2,
permission: constant.vatPermission.dataPreview.invoiceData.queryCode,
url: '#/vat/previewData/invoiceData'
});
} else if (data[constant.vatPermission.dataPreview.cashFlowManual.queryCode]) {
$scope.menus.push({
name: 'previewData',
state: 'previewData',
num: 2,
permission: constant.vatPermission.dataPreview.dataPreviewCode,
url: '#/vat/importData'
});
subMenus.push({
name: 'previewData.cashFlowManual',
state: 'previewData.cashFlowManual',
num: 2,
permission: constant.vatPermission.dataPreview.cashFlowManual.queryCode,
url: '#/vat/previewData/cashFlowManual'
});
}
// TODO 待删除1
// TODO Delete
......
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