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

key in & trail balance

parent 003e71d2
......@@ -98,4 +98,11 @@ public final class Constant {
public static final String FillFormStr = "填表日期: %s年%s月%s日";
public static final String TaxPayer = "纳税人名称: %s";
}
/**
* 报表替换关键字
*/
public static class ReplaceKeyword {
public static final String KEY_IN = "${KeyIn}"; //手工数据源
}
}
\ No newline at end of file
......@@ -15,6 +15,7 @@ import pwc.taxtech.atms.common.CommonUtils;
import pwc.taxtech.atms.common.POIUtil;
import pwc.taxtech.atms.common.message.ErrorMessage;
import pwc.taxtech.atms.common.message.TemplateMessage;
import pwc.taxtech.atms.constant.Constant;
import pwc.taxtech.atms.constant.enums.CellDataSourceType;
import pwc.taxtech.atms.constant.enums.TemplateGroupType;
import pwc.taxtech.atms.dao.CellTemplateConfigDao;
......@@ -264,7 +265,11 @@ public class TemplateGroupServiceImpl extends AbstractService {
}
cellTemplate.setIsReadOnly(cell.getCellStyle().getLocked());
cellTemplateList.add(cellTemplate);
//todo: 这里没有Config数据只有在上传模板以后,在界面里面可以配置公式
//todo: 这里没有Config数据只有在上传模板以后,在界面里面可以配置公式
if (!cell.getCellStyle().getLocked() && hasKeyIn(cell)) {
cell.setCellValue(StringUtils.EMPTY);
addManualConfig(cellTemplate, template, cell, now, cellTemplateConfigList);
}
if(!cell.getCellStyle().getLocked() && StringUtils.isNotBlank(POIUtil.getCellFormulaString(cell))) {
CellTemplateConfig config = new CellTemplateConfig();
config.setId(distributedIdService.nextId());
......@@ -277,18 +282,8 @@ public class TemplateGroupServiceImpl extends AbstractService {
config.setUpdateTime(now);
config.setUpdateBy(authUserHelper.getCurrentUserId());
cellTemplateConfigList.add(config);
if(allowManual){
CellTemplateConfig configManual = new CellTemplateConfig();
configManual.setId(distributedIdService.nextId());
configManual.setCellTemplateId(cellTemplate.getId());
configManual.setReportTemplateId(template.getId());
configManual.setDataSourceType(CellDataSourceType.KeyIn.getCode());//todo 枚举
configManual.setFormula(POIUtil.getCellFormulaString(cell));
// config.setFormula(cell.getCellFormula());
// configManual.setFormulaDataSource("报表数据"); //todo KV相关
configManual.setUpdateTime(now);
configManual.setUpdateBy(authUserHelper.getCurrentUserId());
cellTemplateConfigList.add(configManual);
if (allowManual) {
addManualConfig(cellTemplate, template, cell, now, cellTemplateConfigList);
}
PeriodDataSource pds = new PeriodDataSource();
......@@ -390,7 +385,11 @@ public class TemplateGroupServiceImpl extends AbstractService {
}
cellTemplate.setIsReadOnly(cell.getCellStyle().getLocked() ? true : false);
cellTemplateList.add(cellTemplate);
//todo: 这里没有Config数据只有在上传模板以后,在界面里面可以配置公式
//todo: 这里没有Config数据只有在上传模板以后,在界面里面可以配置公式
if (!cell.getCellStyle().getLocked() && hasKeyIn(cell)) {
cell.setCellValue(StringUtils.EMPTY);
addManualConfig(cellTemplate, template, cell, now, cellTemplateConfigList);
}
if(!cell.getCellStyle().getLocked() && StringUtils.isNotBlank(POIUtil.getCellFormulaString(cell))) {
CellTemplateConfig config = new CellTemplateConfig();
config.setId(distributedIdService.nextId());
......@@ -403,18 +402,9 @@ public class TemplateGroupServiceImpl extends AbstractService {
config.setUpdateTime(now);
config.setUpdateBy(authUserHelper.getCurrentUserId());
cellTemplateConfigList.add(config);
if(allowManual){
CellTemplateConfig configManual = new CellTemplateConfig();
configManual.setId(distributedIdService.nextId());
configManual.setCellTemplateId(cellTemplate.getId());
configManual.setReportTemplateId(template.getId());
configManual.setDataSourceType(CellDataSourceType.KeyIn.getCode());//todo 枚举
configManual.setFormula(POIUtil.getCellFormulaString(cell));
// config.setFormula(cell.getCellFormula());
// configManual.setFormulaDataSource("报表数据"); //todo KV相关
configManual.setUpdateTime(now);
configManual.setUpdateBy(authUserHelper.getCurrentUserId());
cellTemplateConfigList.add(configManual);
//noinspection Duplicates
if (allowManual) {
addManualConfig(cellTemplate, template, cell, now, cellTemplateConfigList);
}
PeriodDataSource pds = new PeriodDataSource();
pds.setAmount(BigDecimal.ZERO);
......@@ -519,4 +509,37 @@ public class TemplateGroupServiceImpl extends AbstractService {
return cellTemplateConfigMapper.selectByExample(example);
}
/**
* 替换占位符
* @param cell cell
* @return Boolean
*/
private Boolean hasKeyIn(Cell cell) {
if (null == cell) {
return false;
}
String v = cell.getStringCellValue();
if (StringUtils.isBlank(v)) {
return false;
}
return StringUtils.equals(v, Constant.ReplaceKeyword.KEY_IN);
}
/**
* 添加手工数据源
*/
private void addManualConfig(CellTemplate cellTemplate, Template template, Cell cell, Date now, List<CellTemplateConfig> list) {
CellTemplateConfig configManual = new CellTemplateConfig();
configManual.setId(distributedIdService.nextId());
configManual.setCellTemplateId(cellTemplate.getId());
configManual.setReportTemplateId(template.getId());
configManual.setDataSourceType(CellDataSourceType.KeyIn.getCode());
configManual.setFormula(POIUtil.getCellFormulaString(cell));
// config.setFormula(cell.getCellFormula());
// configManual.setFormulaDataSource("报表数据"); //todo KV相关
configManual.setUpdateTime(now);
configManual.setUpdateBy(authUserHelper.getCurrentUserId());
list.add(configManual);
}
}
......@@ -50,16 +50,16 @@
</div>
</div>
<!--铃铛通知-->
<div class="nav-element-right" ng-click="callIframe()">
<a title="{{'messages'|translate}}" href="/#/notification">
<i class="fa fa-bell nav-icon-color" style="position:relative;">
<i class="fa fa-circle" ng-if="hasUnreadMsg" style="display:inline-block;position:absolute;color:#e0301e;top:-8px;left:6px; ">
<span style="display:inline-block;position:absolute;font-size:12px;color:white;top:3px;left:4px;">{{msgNum}}</span>
<!--<span style="display:inline-block;position:absolute;font-size:12px;color:white;top:3px;left:4px;">8</span>-->
</i>
</i>
</a>
</div>
<!--<div class="nav-element-right" ng-click="callIframe()">-->
<!--<a title="{{'messages'|translate}}" href="/#/notification">-->
<!--<i class="fa fa-bell nav-icon-color" style="position:relative;">-->
<!--<i class="fa fa-circle" ng-if="hasUnreadMsg" style="display:inline-block;position:absolute;color:#e0301e;top:-8px;left:6px; ">-->
<!--<span style="display:inline-block;position:absolute;font-size:12px;color:white;top:3px;left:4px;">{{msgNum}}</span>-->
<!--&lt;!&ndash;<span style="display:inline-block;position:absolute;font-size:12px;color:white;top:3px;left:4px;">8</span>&ndash;&gt;-->
<!--</i>-->
<!--</i>-->
<!--</a>-->
<!--</div>-->
<!--齿轮 进入管理入口-->
<div class="nav-element-right">
<a title="{{'settings'|translate}}" href="/admin" target="_blank">
......
......@@ -879,7 +879,7 @@
// constant.vatPermission.dataImport.invoiceMapping.queryCode,
// constant.vatPermission.dataImport.auditAdjust.queryCode,
// constant.vatPermission.dataPreview.balanceSheet.queryCode,
constant.vatPermission.dataPreview.balanceSheet.queryCode,
// constant.vatPermission.dataPreview.accountVoucher.queryCode,
// constant.vatPermission.dataPreview.customInvoice.queryCode,
constant.vatPermission.dataPreview.outputInvoice.queryCode,
......@@ -919,12 +919,13 @@
// } else if (data[constant.vatPermission.dataImport.invoiceMapping.queryCode]) {./
// $state.go('vat.importData.invoiceMapping');
// } else
// if (data[constant.vatPermission.dataPreview.balanceSheet.queryCode]) {
// $state.go('vat.previewData.balanceSheet');
// } else if (data[constant.vatPermission.dataPreview.accountVoucher.queryCode]) {
if (data[constant.vatPermission.dataPreview.balanceSheet.queryCode]) {
$state.go('vat.previewData.balanceSheet');
}
// else if (data[constant.vatPermission.dataPreview.accountVoucher.queryCode]) {
// $state.go('vat.previewData.accountVoucher');
// } else
if (data[constant.vatPermission.dataPreview.inputInvoice.queryCode]) {
else if (data[constant.vatPermission.dataPreview.inputInvoice.queryCode]) {
$state.go('vat.previewData.inputInvoice');
} else if (data[constant.vatPermission.dataPreview.outputInvoice.queryCode]) {
$state.go('vat.previewData.outputInvoice');
......
......@@ -20,28 +20,28 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
$scope.nodeDicKey = constant.DictionaryDictKey.DataImport;
$scope.linkShort = enums.linkShort.PreviewData;
$scope.menus = [
// {
// name: 'balanceSheet', permission: constant.vatPermission.dataPreview.balanceSheet.queryCode,
// text: $translate.instant('balanceSheet'), icon: 'fa fa-bank', show: true
// },
{
name: 'balanceSheet', permission: constant.vatPermission.dataPreview.balanceSheet.queryCode,
text: $translate.instant('balanceSheet'), icon: 'fa fa-bank', show: true
},
// {
// name: 'accountVoucher', permission: constant.vatPermission.dataPreview.accountVoucher.queryCode,
// text: $translate.instant('accountVoucher'), icon: 'fa fa-columns', show: true
// },
{
name: 'outputInvoice', permission: constant.vatPermission.dataPreview.outputInvoice.queryCode,
text: $translate.instant('outputInvoice'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'inputInvoice', permission: constant.vatPermission.dataPreview.inputInvoice.queryCode,
text: $translate.instant('inputInvoice'), icon: 'fa fa-file-text-o', show: true
}
{
name: 'inputInvoice', permission: constant.vatPermission.dataPreview.inputInvoice.queryCode,
text: $translate.instant('inputInvoice'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'outputInvoice', permission: constant.vatPermission.dataPreview.outputInvoice.queryCode,
text: $translate.instant('outputInvoice'), icon: 'fa fa-file-text-o', show: true
},
// ,
// {
// name: 'customInvoice', permission: constant.vatPermission.dataPreview.customInvoice.queryCode,
// text: $translate.instant('customInvoice'), icon: 'fa fa-bookmark', show: true
// }
];
];
}
else if ($location && $location.absUrl().indexOf('reductionData') > -1) {
$scope.nodeDicKey = constant.DictionaryDictKey.DataProcess;
......@@ -68,10 +68,10 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
$scope.nodeDicKey = constant.DictionaryDictKey.DataImport;
$scope.linkShort = enums.linkShort.ImportData;
$scope.menus = [
// {
// name: 'balanceSheet', permission: constant.vatPermission.dataImport.balanceSheet.queryCode,
// text: $translate.instant('balanceSheet'), icon: 'fa fa-bank', show: true
// },
{
name: 'balanceSheet', permission: constant.vatPermission.dataImport.balanceSheet.queryCode,
text: $translate.instant('balanceSheet'), icon: 'fa fa-bank', show: true
},
// {
// name: 'journalEntry', permission: constant.vatPermission.dataImport.journalEntry.queryCode,
// text: $translate.instant('journalEntry'), icon: 'fa fa-align-left', show: true
......@@ -80,14 +80,15 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
// name: 'erpData', permission: constant.vatPermission.dataImport.erpImport.queryCode,
// text: $translate.instant('erpData'), icon: 'fa fa-list-ul', show: true
// },
{
name: 'inputInvoice', permission: constant.vatPermission.dataImport.inputInvoice.queryCode,
text: $translate.instant('inputInvoice'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'outputInvoice', permission: constant.vatPermission.dataImport.outputInvoice.queryCode,
text: $translate.instant('outputInvoice'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'inputInvoice', permission: constant.vatPermission.dataImport.inputInvoice.queryCode,
text: $translate.instant('inputInvoice'), icon: 'fa fa-file-text-o', show: true
}
// ,
// {
// name: 'customInvoice', permission: constant.vatPermission.dataImport.customInvoice.queryCode,
......@@ -105,7 +106,7 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
// name: 'auditAdjust', permission: constant.vatPermission.dataImport.auditAdjust.queryCode,
// text: $translate.instant('auditAdjust'), icon: 'fa fa-adjust', show: true
// }
];
];
}
......
......@@ -124,7 +124,7 @@ function ($scope, $rootScope, $q, $log, $timeout, $state, $translate, projectSer
// constant.vatPermission.dataImport.invoiceMapping.queryCode,
// constant.vatPermission.dataImport.auditAdjust.queryCode,
// constant.vatPermission.dataPreview.balanceSheet.queryCode,
constant.vatPermission.dataPreview.balanceSheet.queryCode,
// constant.vatPermission.dataPreview.accountVoucher.queryCode,
// constant.vatPermission.dataPreview.customInvoice.queryCode,
constant.vatPermission.dataPreview.outputInvoice.queryCode,
......@@ -246,28 +246,27 @@ function ($scope, $rootScope, $q, $log, $timeout, $state, $translate, projectSer
// });
//}
// if (data[constant.vatPermission.dataPreview.balanceSheet.queryCode]) {
// $scope.menus.push({
// name: 'previewData', state: 'previewData', num: 2,
// permission: constant.vatPermission.dataPreview.dataPreviewCode, url: '#/vat/previewData'
// });
// subMenus.push({
// name: 'previewData.balanceSheet', state: 'previewData.balanceSheet', num: 2,
// permission: constant.vatPermission.dataPreview.balanceSheet.queryCode, url: '#/vat/previewData/balanceSheet'
// });
// }
// else if (data[constant.vatPermission.dataPreview.accountVoucher.queryCode]) {
// $scope.menus.push({
// name: 'previewData', state: 'previewData', num: 2,
// permission: constant.vatPermission.dataPreview.dataPreviewCode, url: '#/vat/previewData'
// });
// subMenus.push({
// name: 'previewData.accountVoucher', state: 'previewData.accountVoucher', num: 2,
// permission: constant.vatPermission.dataPreview.accountVoucher.queryCode, url: '#/vat/previewData/accountVoucher'
// });
// }
// else
if (data[constant.vatPermission.dataPreview.inputInvoice.queryCode]) {
if (data[constant.vatPermission.dataPreview.balanceSheet.queryCode]) {
$scope.menus.push({
name: 'previewData', state: 'previewData', num: 2,
permission: constant.vatPermission.dataPreview.dataPreviewCode, url: '#/vat/previewData'
});
subMenus.push({
name: 'previewData.balanceSheet', state: 'previewData.balanceSheet', num: 2,
permission: constant.vatPermission.dataPreview.balanceSheet.queryCode, url: '#/vat/previewData/balanceSheet'
});
}
// else if (data[constant.vatPermission.dataPreview.accountVoucher.queryCode]) {
// $scope.menus.push({
// name: 'previewData', state: 'previewData', num: 2,
// permission: constant.vatPermission.dataPreview.dataPreviewCode, url: '#/vat/previewData'
// });
// subMenus.push({
// name: 'previewData.accountVoucher', state: 'previewData.accountVoucher', num: 2,
// permission: constant.vatPermission.dataPreview.accountVoucher.queryCode, url: '#/vat/previewData/accountVoucher'
// });
// }
else if (data[constant.vatPermission.dataPreview.inputInvoice.queryCode]) {
$scope.menus.push({
name: 'previewData', state: 'previewData', num: 2,
permission: constant.vatPermission.dataPreview.dataPreviewCode, url: '#/vat/previewData'
......
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