Commit 394261e6 authored by ken.q.you's avatar ken.q.you

fix conflict---Ken

parents 217c2cf3 320b1972
...@@ -43,6 +43,11 @@ public class DataPreviewController extends BaseController { ...@@ -43,6 +43,11 @@ public class DataPreviewController extends BaseController {
logger.debug(String.format("利润表PRC人工导入查询 Condition:%s", JSON.toJSONString(param))); logger.debug(String.format("利润表PRC人工导入查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getPLprcManualDataForDisplay(param); return dataPreviewSerivceImpl.getPLprcManualDataForDisplay(param);
} }
@PostMapping("getPLStatementDataForDisplay")
public PageInfo<ProfitLossStatementDto> getPLStatementDataForDisplay(@RequestBody ProfitLossStatementParam param) {
logger.debug(String.format("利润表查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getPLStatementDataForDisplay(param);
}
@PostMapping("getJEDataForDisplay") @PostMapping("getJEDataForDisplay")
public PageInfo<JournalEntryDto> getJEDataForDisplay(@RequestBody JournalEntryParam param) { public PageInfo<JournalEntryDto> getJEDataForDisplay(@RequestBody JournalEntryParam param) {
...@@ -73,6 +78,11 @@ public class DataPreviewController extends BaseController { ...@@ -73,6 +78,11 @@ public class DataPreviewController extends BaseController {
logger.debug(String.format("资产负债表PRC人工导入查询 Condition:%s", JSON.toJSONString(param))); logger.debug(String.format("资产负债表PRC人工导入查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getBSprcManualDataForDisplay(param); return dataPreviewSerivceImpl.getBSprcManualDataForDisplay(param);
} }
@PostMapping("getBalanceSheetDataForDisplay")
public PageInfo<BalanceSheetDto> getBalanceSheetDataForDisplay(@RequestBody BalanceSheetParam param) {
logger.debug(String.format("资产负债表查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getBalanceSheetDataForDisplay(param);
}
@PostMapping("getIRDataForDisplay") @PostMapping("getIRDataForDisplay")
public PageInfo<InvoiceRecordDto> getIRDataForDisplay(@RequestBody InvoiceRecordParam param) { public PageInfo<InvoiceRecordDto> getIRDataForDisplay(@RequestBody InvoiceRecordParam param) {
...@@ -107,7 +117,7 @@ public class DataPreviewController extends BaseController { ...@@ -107,7 +117,7 @@ public class DataPreviewController extends BaseController {
@RequestMapping(value = "exportCFData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) @RequestMapping(value = "exportCFData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadCFQueryData(@RequestBody CashFlowParam param, HttpServletResponse response) { public void downloadCFQueryData(@RequestBody CashFlowParam param, HttpServletResponse response) {
logger.debug("enter downloadCFQueryData"); logger.debug("enter downloadCFQueryData");
String fileName="testFile"; String fileName = "testFile";
dataPreviewSerivceImpl.exportCashFlowList(response, param, fileName); dataPreviewSerivceImpl.exportCashFlowList(response, param, fileName);
} }
...@@ -146,7 +156,7 @@ public class DataPreviewController extends BaseController { ...@@ -146,7 +156,7 @@ public class DataPreviewController extends BaseController {
response.setStatus(SC_OK); response.setStatus(SC_OK);
} }
} catch (IOException e) { } catch (IOException e) {
logger.error(String.format("下载科目余额表-生成文件异常:%s",e.getMessage())); logger.error(String.format("下载科目余额表-生成文件异常:%s", e.getMessage()));
} }
} }
...@@ -170,7 +180,7 @@ public class DataPreviewController extends BaseController { ...@@ -170,7 +180,7 @@ public class DataPreviewController extends BaseController {
response.setStatus(SC_OK); response.setStatus(SC_OK);
} }
} catch (IOException e) { } catch (IOException e) {
logger.error(String.format("下载科目余额表-生成文件异常:%s",e.getMessage())); logger.error(String.format("下载科目余额表-生成文件异常:%s", e.getMessage()));
} }
} }
...@@ -194,7 +204,31 @@ public class DataPreviewController extends BaseController { ...@@ -194,7 +204,31 @@ public class DataPreviewController extends BaseController {
response.setStatus(SC_OK); response.setStatus(SC_OK);
} }
} catch (IOException e) { } catch (IOException e) {
logger.error(String.format("下载科目余额表-生成文件异常:%s",e.getMessage())); logger.error(String.format("下载科目余额表-生成文件异常:%s", e.getMessage()));
}
}
@RequestMapping(value = "exportBalanceSheetData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadBalanceSheetQueryData(@RequestBody BalanceSheetParam paras, HttpServletResponse response) {
response.setContentType("application/vnd.ms-excel;charset=utf-8");
response.addHeader("Access-Control-Expose-Headers", "Content-Type,Content-Disposition,x-file-name");
String fileName = paras.getPeriodStart() + "-" + paras.getPeriodEnd();
response.setCharacterEncoding("UTF-8");
OutputStream os = null;
try {
response.addHeader("Content-Disposition", "attachment;filename="
+ UUID.randomUUID() + ".xls");
response.addHeader("x-file-name", fileName);
os = response.getOutputStream();
int count = dataPreviewSerivceImpl.getBalanceSheetDownloadFilePath(paras, os);
if (count == 0) {
response.setStatus(SC_NO_CONTENT);
} else {
response.setStatus(SC_OK);
}
} catch (IOException e) {
logger.error(String.format("下载科目余额表-生成文件异常:%s", e.getMessage()));
} }
} }
...@@ -218,7 +252,31 @@ public class DataPreviewController extends BaseController { ...@@ -218,7 +252,31 @@ public class DataPreviewController extends BaseController {
response.setStatus(SC_OK); response.setStatus(SC_OK);
} }
} catch (IOException e) { } catch (IOException e) {
logger.error(String.format("下载科目余额表-生成文件异常:%s",e.getMessage())); logger.error(String.format("下载科目余额表-生成文件异常:%s", e.getMessage()));
}
}
@RequestMapping(value = "exportPLStatementData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadPLStatementQueryData(@RequestBody ProfitLossStatementParam paras, HttpServletResponse response) {
response.setContentType("application/vnd.ms-excel;charset=utf-8");
response.addHeader("Access-Control-Expose-Headers", "Content-Type,Content-Disposition,x-file-name");
String fileName = paras.getPeriodStart() + "-" + paras.getPeriodEnd();
response.setCharacterEncoding("UTF-8");
OutputStream os = null;
try {
response.addHeader("Content-Disposition", "attachment;filename="
+ UUID.randomUUID() + ".xls");
response.addHeader("x-file-name", fileName);
os = response.getOutputStream();
int count = dataPreviewSerivceImpl.getPLStatementDownloadFilePath(paras, os);
if (count == 0) {
response.setStatus(SC_NO_CONTENT);
} else {
response.setStatus(SC_OK);
}
} catch (IOException e) {
logger.error(String.format("下载科目余额表-生成文件异常:%s", e.getMessage()));
} }
} }
...@@ -232,35 +290,35 @@ public class DataPreviewController extends BaseController { ...@@ -232,35 +290,35 @@ public class DataPreviewController extends BaseController {
@RequestMapping(value = "exportIRData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) @RequestMapping(value = "exportIRData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadIRQueryData(@RequestBody InvoiceRecordParam param, HttpServletResponse response) { public void downloadIRQueryData(@RequestBody InvoiceRecordParam param, HttpServletResponse response) {
logger.debug("enter downloadIRQueryData"); logger.debug("enter downloadIRQueryData");
String fileName="testFile"; String fileName = "testFile";
dataPreviewSerivceImpl.exportInvoiceRecordList(response, param, fileName); dataPreviewSerivceImpl.exportInvoiceRecordList(response, param, fileName);
} }
@RequestMapping(value = "exportCILData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) @RequestMapping(value = "exportCILData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadCILQueryData(@RequestBody CertifiedInvoicesListParam param, HttpServletResponse response) { public void downloadCILQueryData(@RequestBody CertifiedInvoicesListParam param, HttpServletResponse response) {
logger.debug("enter downloadCILQueryData"); logger.debug("enter downloadCILQueryData");
String fileName="testFile"; String fileName = "testFile";
dataPreviewSerivceImpl.exportCILList(response, param, fileName); dataPreviewSerivceImpl.exportCILList(response, param, fileName);
} }
@RequestMapping(value = "exportRLITData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) @RequestMapping(value = "exportRLITData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadRLITQueryData(@RequestBody RedLetterInfoTableParam param, HttpServletResponse response) { public void downloadRLITQueryData(@RequestBody RedLetterInfoTableParam param, HttpServletResponse response) {
logger.debug("enter downloadRLITQueryData"); logger.debug("enter downloadRLITQueryData");
String fileName="testFile"; String fileName = "testFile";
dataPreviewSerivceImpl.exportRLITList(response, param, fileName); dataPreviewSerivceImpl.exportRLITList(response, param, fileName);
} }
@RequestMapping(value = "exportCPRData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) @RequestMapping(value = "exportCPRData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadCPRQueryData(@RequestBody CoupaPurchasingReportParam param, HttpServletResponse response) { public void downloadCPRQueryData(@RequestBody CoupaPurchasingReportParam param, HttpServletResponse response) {
logger.debug("enter downloadCPRQueryData"); logger.debug("enter downloadCPRQueryData");
String fileName="testFile"; String fileName = "testFile";
dataPreviewSerivceImpl.exportCPRList(response, param, fileName); dataPreviewSerivceImpl.exportCPRList(response, param, fileName);
} }
@RequestMapping(value = "exportIDData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE) @RequestMapping(value = "exportIDData/get", method = RequestMethod.POST, produces = MediaType.APPLICATION_JSON_UTF8_VALUE)
public void downloadIDQueryData(@RequestBody InvoiceDataParam param, HttpServletResponse response) { public void downloadIDQueryData(@RequestBody InvoiceDataParam param, HttpServletResponse response) {
logger.debug("enter downloadIDQueryData"); logger.debug("enter downloadIDQueryData");
String fileName="testFile"; String fileName = "testFile";
dataPreviewSerivceImpl.exportIDList(response, param, fileName); dataPreviewSerivceImpl.exportIDList(response, param, fileName);
} }
......
...@@ -48,6 +48,9 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -48,6 +48,9 @@ public class DataPreviewSerivceImpl extends BaseService {
@Resource @Resource
private ProfitLossStatementPrcManualMapper profitLossStatementPrcManualMapper; private ProfitLossStatementPrcManualMapper profitLossStatementPrcManualMapper;
@Resource
private ProfitLossStatementMapper profitLossStatementMapper;
@Resource @Resource
private JournalEntryMapper journalEntryMapper; private JournalEntryMapper journalEntryMapper;
...@@ -58,6 +61,9 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -58,6 +61,9 @@ public class DataPreviewSerivceImpl extends BaseService {
@Resource @Resource
private BalanceSheetPrcManualMapper balanceSheetPrcManualMapper; private BalanceSheetPrcManualMapper balanceSheetPrcManualMapper;
@Resource
private BalanceSheetMapper balanceSheetMapper;
@Resource @Resource
private CashFlowMapper cashFlowMapper; private CashFlowMapper cashFlowMapper;
...@@ -99,7 +105,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -99,7 +105,7 @@ public class DataPreviewSerivceImpl extends BaseService {
trialBalanceDtos.add(trialBalanceDto); trialBalanceDtos.add(trialBalanceDto);
}); });
PageInfo<TrialBalanceDto> pageInfo =new PageInfo<>(trialBalanceDtos); PageInfo<TrialBalanceDto> pageInfo = new PageInfo<>(trialBalanceDtos);
pageInfo.setTotal(page.getTotal()); pageInfo.setTotal(page.getTotal());
pageInfo.setPageNum(param.getPageInfo().getPageIndex()); pageInfo.setPageNum(param.getPageInfo().getPageIndex());
...@@ -120,7 +126,28 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -120,7 +126,28 @@ public class DataPreviewSerivceImpl extends BaseService {
profitLossDtos.add(profitLossDto); profitLossDtos.add(profitLossDto);
}); });
PageInfo<ProfitLossStatementDto> pageInfo =new PageInfo<>(profitLossDtos); PageInfo<ProfitLossStatementDto> pageInfo = new PageInfo<>(profitLossDtos);
pageInfo.setTotal(page.getTotal());
pageInfo.setPageNum(param.getPageInfo().getPageIndex());
return pageInfo;
}
public PageInfo<ProfitLossStatementDto> getPLStatementDataForDisplay(ProfitLossStatementParam param) {
ProfitLossStatementCondition condition = beanUtil.copyProperties(param, new ProfitLossStatementCondition());
Page page = PageHelper.startPage(condition.getPageInfo().getPageIndex(), condition.getPageInfo().getPageSize());
List<ProfitLossStatement> profitLossStatements = profitLossStatementMapper.selectByCondition(condition);
List<ProfitLossStatementDto> profitLossDtos = Lists.newArrayList();
profitLossStatements.forEach(pl -> {
ProfitLossStatementDto profitLossDto = new ProfitLossStatementDto();
beanUtil.copyProperties(pl, profitLossDto);
profitLossDtos.add(profitLossDto);
});
PageInfo<ProfitLossStatementDto> pageInfo = new PageInfo<>(profitLossDtos);
pageInfo.setTotal(page.getTotal()); pageInfo.setTotal(page.getTotal());
pageInfo.setPageNum(param.getPageInfo().getPageIndex()); pageInfo.setPageNum(param.getPageInfo().getPageIndex());
...@@ -162,7 +189,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -162,7 +189,7 @@ public class DataPreviewSerivceImpl extends BaseService {
beanUtil.copyProperties(cf, cashFlowDto); beanUtil.copyProperties(cf, cashFlowDto);
cashFlowDtos.add(cashFlowDto); cashFlowDtos.add(cashFlowDto);
}); });
PageInfo<CashFlowDto> pageInfo=new PageInfo<>(cashFlowDtos); PageInfo<CashFlowDto> pageInfo = new PageInfo<>(cashFlowDtos);
pageInfo.setTotal(total); pageInfo.setTotal(total);
pageInfo.setPageNum(param.getPageInfo().getPageIndex()); pageInfo.setPageNum(param.getPageInfo().getPageIndex());
return pageInfo; return pageInfo;
...@@ -204,8 +231,8 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -204,8 +231,8 @@ public class DataPreviewSerivceImpl extends BaseService {
beanUtil.copyProperties(cf, cashFlowDto); beanUtil.copyProperties(cf, cashFlowDto);
cashFlowDtos.add(cashFlowDto); cashFlowDtos.add(cashFlowDto);
}); });
CashFlowHeader cashFlowHeader=new CashFlowHeader(); CashFlowHeader cashFlowHeader = new CashFlowHeader();
if(cashFlowDtos.size()>0){ if (cashFlowDtos.size() > 0) {
Organization org = organizationMapper.selectByPrimaryKey(param.getOrgId()); Organization org = organizationMapper.selectByPrimaryKey(param.getOrgId());
cashFlowHeader.setCompanyNameCn(org.getName()); cashFlowHeader.setCompanyNameCn(org.getName());
cashFlowHeader.setPeriodStart(param.getPeriodStart()); cashFlowHeader.setPeriodStart(param.getPeriodStart());
...@@ -330,7 +357,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -330,7 +357,7 @@ public class DataPreviewSerivceImpl extends BaseService {
journalEntryDtos.add(journalEntryDto); journalEntryDtos.add(journalEntryDto);
}); });
PageInfo<JournalEntryDto> pageInfo =new PageInfo<>(journalEntryDtos); PageInfo<JournalEntryDto> pageInfo = new PageInfo<>(journalEntryDtos);
pageInfo.setTotal(page.getTotal()); pageInfo.setTotal(page.getTotal());
pageInfo.setPageNum(param.getPageInfo().getPageIndex()); pageInfo.setPageNum(param.getPageInfo().getPageIndex());
...@@ -351,7 +378,28 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -351,7 +378,28 @@ public class DataPreviewSerivceImpl extends BaseService {
balanceSheetDtos.add(balanceSheetDto); balanceSheetDtos.add(balanceSheetDto);
}); });
PageInfo<BalanceSheetDto> pageInfo =new PageInfo<>(balanceSheetDtos); PageInfo<BalanceSheetDto> pageInfo = new PageInfo<>(balanceSheetDtos);
pageInfo.setTotal(page.getTotal());
pageInfo.setPageNum(param.getPageInfo().getPageIndex());
return pageInfo;
}
public PageInfo<BalanceSheetDto> getBalanceSheetDataForDisplay(BalanceSheetParam param) {
BalanceSheetCondition condition = beanUtil.copyProperties(param, new BalanceSheetCondition());
Page page = PageHelper.startPage(condition.getPageInfo().getPageIndex(), condition.getPageInfo().getPageSize());
List<BalanceSheet> bsPrcList = balanceSheetMapper.selectByCondition(condition);
List<BalanceSheetDto> balanceSheetDtos = Lists.newArrayList();
bsPrcList.forEach(bs -> {
BalanceSheetDto balanceSheetDto = new BalanceSheetDto();
beanUtil.copyProperties(bs, balanceSheetDto);
balanceSheetDtos.add(balanceSheetDto);
});
PageInfo<BalanceSheetDto> pageInfo = new PageInfo<>(balanceSheetDtos);
pageInfo.setTotal(page.getTotal()); pageInfo.setTotal(page.getTotal());
pageInfo.setPageNum(param.getPageInfo().getPageIndex()); pageInfo.setPageNum(param.getPageInfo().getPageIndex());
...@@ -394,7 +442,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -394,7 +442,7 @@ public class DataPreviewSerivceImpl extends BaseService {
invoiceRecordDtos.add(balanceSheetDto); invoiceRecordDtos.add(balanceSheetDto);
}); });
PageInfo<InvoiceRecordDto> pageInfo =new PageInfo<>(invoiceRecordDtos); PageInfo<InvoiceRecordDto> pageInfo = new PageInfo<>(invoiceRecordDtos);
pageInfo.setTotal(page.getTotal()); pageInfo.setTotal(page.getTotal());
pageInfo.setPageNum(param.getPageInfo().getPageIndex()); pageInfo.setPageNum(param.getPageInfo().getPageIndex());
...@@ -415,7 +463,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -415,7 +463,7 @@ public class DataPreviewSerivceImpl extends BaseService {
redLetterInfoDtos.add(redLetterInfoDto); redLetterInfoDtos.add(redLetterInfoDto);
}); });
PageInfo<RedLetterInfoTableDto> pageInfo =new PageInfo<>(redLetterInfoDtos); PageInfo<RedLetterInfoTableDto> pageInfo = new PageInfo<>(redLetterInfoDtos);
pageInfo.setTotal(page.getTotal()); pageInfo.setTotal(page.getTotal());
pageInfo.setPageNum(param.getPageInfo().getPageIndex()); pageInfo.setPageNum(param.getPageInfo().getPageIndex());
...@@ -437,7 +485,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -437,7 +485,7 @@ public class DataPreviewSerivceImpl extends BaseService {
coupaPurchasingReportDtos.add(coupaPurchasingReportDto); coupaPurchasingReportDtos.add(coupaPurchasingReportDto);
}); });
PageInfo<CoupaPurchasingReportDto> pageInfo =new PageInfo<>(coupaPurchasingReportDtos); PageInfo<CoupaPurchasingReportDto> pageInfo = new PageInfo<>(coupaPurchasingReportDtos);
pageInfo.setTotal(page.getTotal()); pageInfo.setTotal(page.getTotal());
pageInfo.setPageNum(param.getPageInfo().getPageIndex()); pageInfo.setPageNum(param.getPageInfo().getPageIndex());
...@@ -457,7 +505,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -457,7 +505,7 @@ public class DataPreviewSerivceImpl extends BaseService {
CertifiedInvoicesListDto CertifiedInvoicesListDto = beanUtil.copyProperties(cil, new CertifiedInvoicesListDto()); CertifiedInvoicesListDto CertifiedInvoicesListDto = beanUtil.copyProperties(cil, new CertifiedInvoicesListDto());
certifiedInvoicesListDtos.add(CertifiedInvoicesListDto); certifiedInvoicesListDtos.add(CertifiedInvoicesListDto);
}); });
PageInfo<CertifiedInvoicesListDto> pageInfo =new PageInfo<>(certifiedInvoicesListDtos); PageInfo<CertifiedInvoicesListDto> pageInfo = new PageInfo<>(certifiedInvoicesListDtos);
pageInfo.setTotal(page.getTotal()); pageInfo.setTotal(page.getTotal());
pageInfo.setPageNum(param.getPageInfo().getPageIndex()); pageInfo.setPageNum(param.getPageInfo().getPageIndex());
return pageInfo; return pageInfo;
...@@ -468,8 +516,9 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -468,8 +516,9 @@ public class DataPreviewSerivceImpl extends BaseService {
* 导入时纵向存的,因为需求是行数一般不会增加,列数可能增加。查询时90度旋转 * 导入时纵向存的,因为需求是行数一般不会增加,列数可能增加。查询时90度旋转
* 后续增加列 1、添加CountTypeConstant(按列递增) 2、增加setIDValue case 3、js添加column * 后续增加列 1、添加CountTypeConstant(按列递增) 2、增加setIDValue case 3、js添加column
* [param] * [param]
* @author Gary J Li *
* @return * @return
* @author Gary J Li
*/ */
public PageInfo<InvoiceDataDto> getIDDataForDisplay(InvoiceDataParam param) { public PageInfo<InvoiceDataDto> getIDDataForDisplay(InvoiceDataParam param) {
InvoiceDataCondition condition = beanUtil.copyProperties(param, new InvoiceDataCondition()); InvoiceDataCondition condition = beanUtil.copyProperties(param, new InvoiceDataCondition());
...@@ -477,7 +526,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -477,7 +526,7 @@ public class DataPreviewSerivceImpl extends BaseService {
List<InvoiceData> invoiceDatas = invoiceDataMapper.selectByCondition(condition); List<InvoiceData> invoiceDatas = invoiceDataMapper.selectByCondition(condition);
List<InvoiceDataDto> invoiceDataDtos = generalIDDtoList(); List<InvoiceDataDto> invoiceDataDtos = generalIDDtoList();
generalIDDtoList(invoiceDatas, invoiceDataDtos); generalIDDtoList(invoiceDatas, invoiceDataDtos);
PageInfo<InvoiceDataDto> pageInfo =new PageInfo<>(invoiceDataDtos); PageInfo<InvoiceDataDto> pageInfo = new PageInfo<>(invoiceDataDtos);
pageInfo.setTotal(invoiceDataDtos.size()); pageInfo.setTotal(invoiceDataDtos.size());
pageInfo.setPageNum(param.getPageInfo().getPageIndex()); pageInfo.setPageNum(param.getPageInfo().getPageIndex());
return pageInfo; return pageInfo;
...@@ -526,7 +575,26 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -526,7 +575,26 @@ public class DataPreviewSerivceImpl extends BaseService {
} }
} }
public int getPLStatementDownloadFilePath(ProfitLossStatementParam param, OutputStream os) {
try {
ProfitLossStatementCondition condition = new ProfitLossStatementCondition();
beanUtil.copyProperties(param, condition);
List<ProfitLossStatement> profitLossStatements = profitLossStatementMapper.selectByCondition(condition);
Map<String, String> header = generalPLHeader();
List<ProfitLossStatementExportDto> cellList = new ArrayList<>();
profitLossStatements.forEach(pl -> {
ProfitLossStatementExportDto d = new ProfitLossStatementExportDto();
d = beanUtil.copyProperties(pl, d);
cellList.add(d);
});
ExcelUtil.exportExcel(header, cellList, os);
return cellList.size();
} catch (Exception e) {
logger.error("利润表导出转换Excel异常: %s", e.getMessage());
return 0;
}
}
public int getJEDownloadFilePath(JournalEntryParam param, OutputStream os) { public int getJEDownloadFilePath(JournalEntryParam param, OutputStream os) {
try { try {
...@@ -569,6 +637,26 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -569,6 +637,26 @@ public class DataPreviewSerivceImpl extends BaseService {
} }
} }
public int getBalanceSheetDownloadFilePath(BalanceSheetParam param, OutputStream os) {
try {
BalanceSheetCondition condition = new BalanceSheetCondition();
beanUtil.copyProperties(param, condition);
List<BalanceSheet> balanceSheets = balanceSheetMapper.selectByCondition(condition);
Map<String, String> header = generalBSHeader();
List<BalanceSheetExportDto> cellList = new ArrayList<>();
balanceSheets.forEach(bs -> {
BalanceSheetExportDto d = new BalanceSheetExportDto();
d = beanUtil.copyProperties(bs, d);
cellList.add(d);
});
ExcelUtil.exportExcel(header, cellList, os);
return cellList.size();
} catch (Exception e) {
logger.error("资产负债表导出转换Excel异常: %s", e.getMessage());
return 0;
}
}
public HttpServletResponse exportInvoiceRecordList(HttpServletResponse response, InvoiceRecordParam param, String fileName) { public HttpServletResponse exportInvoiceRecordList(HttpServletResponse response, InvoiceRecordParam param, String fileName) {
//String excelTemplatePathInClassPath = "/vat_excel_template/cash_flow"+(isEn?"":"_cn") + ".xlsx"; //String excelTemplatePathInClassPath = "/vat_excel_template/cash_flow"+(isEn?"":"_cn") + ".xlsx";
String excelTemplatePathInClassPath = ExportTemplatePathConstant.INVOICES_RECORD; String excelTemplatePathInClassPath = ExportTemplatePathConstant.INVOICES_RECORD;
...@@ -583,7 +671,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -583,7 +671,7 @@ public class DataPreviewSerivceImpl extends BaseService {
try { try {
return responseMessageBuilder.getDownloadTmpResponseMessage(response, outputStream, fileName); return responseMessageBuilder.getDownloadTmpResponseMessage(response, outputStream, fileName);
} catch (Exception e) { } catch (Exception e) {
logger.error(String.format("导出发票记录异常:%s",e.getMessage())); logger.error(String.format("导出发票记录异常:%s", e.getMessage()));
} }
return null; return null;
} }
...@@ -593,7 +681,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -593,7 +681,7 @@ public class DataPreviewSerivceImpl extends BaseService {
String excelTemplatePathInClassPath = ExportTemplatePathConstant.CERTIFIED_INVOICES_LIST; String excelTemplatePathInClassPath = ExportTemplatePathConstant.CERTIFIED_INVOICES_LIST;
CertifiedInvoicesListCondition condition = beanUtil.copyProperties(param, new CertifiedInvoicesListCondition()); CertifiedInvoicesListCondition condition = beanUtil.copyProperties(param, new CertifiedInvoicesListCondition());
List<CertifiedInvoicesList> datas = certifiedInvoicesListMapper.selectByCondition(condition); List<CertifiedInvoicesList> datas = certifiedInvoicesListMapper.selectByCondition(condition);
if(datas.size()<1){ if (datas.size() < 1) {
throw new ServiceException(ErrorMessage.ExportFailed); throw new ServiceException(ErrorMessage.ExportFailed);
} }
CertifiedInvoicesListHeader header = new CertifiedInvoicesListHeader(); CertifiedInvoicesListHeader header = new CertifiedInvoicesListHeader();
...@@ -606,11 +694,11 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -606,11 +694,11 @@ public class DataPreviewSerivceImpl extends BaseService {
CertifiedInvoicesListDto dto = beanUtil.copyProperties(cil, new CertifiedInvoicesListDto()); CertifiedInvoicesListDto dto = beanUtil.copyProperties(cil, new CertifiedInvoicesListDto());
dtoList.add(dto); dtoList.add(dto);
}); });
OutputStream outputStream = commonDocumentHelper.toXlsxFileUsingJxls(header,dtoList, excelTemplatePathInClassPath); OutputStream outputStream = commonDocumentHelper.toXlsxFileUsingJxls(header, dtoList, excelTemplatePathInClassPath);
try { try {
return responseMessageBuilder.getDownloadTmpResponseMessage(response, outputStream, fileName); return responseMessageBuilder.getDownloadTmpResponseMessage(response, outputStream, fileName);
} catch (Exception e) { } catch (Exception e) {
logger.error(String.format("导出已认证发票清单异常:%s",e.getMessage())); logger.error(String.format("导出已认证发票清单异常:%s", e.getMessage()));
} }
return null; return null;
} }
...@@ -620,7 +708,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -620,7 +708,7 @@ public class DataPreviewSerivceImpl extends BaseService {
String excelTemplatePathInClassPath = ExportTemplatePathConstant.COUPA_PURCHASING_REPORT; String excelTemplatePathInClassPath = ExportTemplatePathConstant.COUPA_PURCHASING_REPORT;
CoupaPurchasingReportCondition condition = beanUtil.copyProperties(param, new CoupaPurchasingReportCondition()); CoupaPurchasingReportCondition condition = beanUtil.copyProperties(param, new CoupaPurchasingReportCondition());
List<CoupaPurchasingReport> datas = coupaPurchasingReportMapper.selectByCondition(condition); List<CoupaPurchasingReport> datas = coupaPurchasingReportMapper.selectByCondition(condition);
if(datas.size()<1){ if (datas.size() < 1) {
throw new ServiceException(ErrorMessage.ExportFailed); throw new ServiceException(ErrorMessage.ExportFailed);
} }
List<CoupaPurchasingReportDto> dtos = Lists.newArrayList(); List<CoupaPurchasingReportDto> dtos = Lists.newArrayList();
...@@ -632,7 +720,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -632,7 +720,7 @@ public class DataPreviewSerivceImpl extends BaseService {
try { try {
return responseMessageBuilder.getDownloadTmpResponseMessage(response, outputStream, fileName); return responseMessageBuilder.getDownloadTmpResponseMessage(response, outputStream, fileName);
} catch (Exception e) { } catch (Exception e) {
logger.error(String.format("导出Coupa发票报告异常:%s",e.getMessage())); logger.error(String.format("导出Coupa发票报告异常:%s", e.getMessage()));
} }
return null; return null;
} }
...@@ -642,7 +730,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -642,7 +730,7 @@ public class DataPreviewSerivceImpl extends BaseService {
String excelTemplatePathInClassPath = ExportTemplatePathConstant.RED_LETTER_INFO_TAB; String excelTemplatePathInClassPath = ExportTemplatePathConstant.RED_LETTER_INFO_TAB;
RedLetterInfoTableCondition condition = beanUtil.copyProperties(param, new RedLetterInfoTableCondition()); RedLetterInfoTableCondition condition = beanUtil.copyProperties(param, new RedLetterInfoTableCondition());
List<RedLetterInfoTable> datas = redLetterInfoTableMapper.selectByCondition(condition); List<RedLetterInfoTable> datas = redLetterInfoTableMapper.selectByCondition(condition);
if(datas.size()<1){ if (datas.size() < 1) {
throw new ServiceException(ErrorMessage.ExportFailed); throw new ServiceException(ErrorMessage.ExportFailed);
} }
List<RedLetterInfoTableDto> dtos = Lists.newArrayList(); List<RedLetterInfoTableDto> dtos = Lists.newArrayList();
...@@ -654,7 +742,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -654,7 +742,7 @@ public class DataPreviewSerivceImpl extends BaseService {
try { try {
return responseMessageBuilder.getDownloadTmpResponseMessage(response, outputStream, fileName); return responseMessageBuilder.getDownloadTmpResponseMessage(response, outputStream, fileName);
} catch (Exception e) { } catch (Exception e) {
logger.error(String.format("导出红字信息表异常:%s",e.getMessage())); logger.error(String.format("导出红字信息表异常:%s", e.getMessage()));
} }
return null; return null;
} }
...@@ -664,7 +752,7 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -664,7 +752,7 @@ public class DataPreviewSerivceImpl extends BaseService {
String excelTemplatePathInClassPath = ExportTemplatePathConstant.INVOICE_DATA; String excelTemplatePathInClassPath = ExportTemplatePathConstant.INVOICE_DATA;
InvoiceDataCondition condition = beanUtil.copyProperties(param, new InvoiceDataCondition()); InvoiceDataCondition condition = beanUtil.copyProperties(param, new InvoiceDataCondition());
List<InvoiceData> datas = invoiceDataMapper.selectByCondition(condition); List<InvoiceData> datas = invoiceDataMapper.selectByCondition(condition);
if(datas.size()<1){ if (datas.size() < 1) {
throw new ServiceException(ErrorMessage.ExportFailed); throw new ServiceException(ErrorMessage.ExportFailed);
} }
List<InvoiceDataDto> dtos = generalIDDtoList(); List<InvoiceDataDto> dtos = generalIDDtoList();
...@@ -673,221 +761,219 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -673,221 +761,219 @@ public class DataPreviewSerivceImpl extends BaseService {
try { try {
return responseMessageBuilder.getDownloadTmpResponseMessage(response, outputStream, fileName); return responseMessageBuilder.getDownloadTmpResponseMessage(response, outputStream, fileName);
} catch (Exception e) { } catch (Exception e) {
logger.error(String.format("导出发票资料异常:%s",e.getMessage())); logger.error(String.format("导出发票资料异常:%s", e.getMessage()));
} }
return null; return null;
} }
private Map<String, String> generalTBHeader() { private Map<String, String> generalTBHeader() {
Map<String, String> header = new LinkedHashMap<>(); Map<String, String> header = new LinkedHashMap<>();
header.put("Date","数据日期"); header.put("Date", "数据日期");
header.put("Source","来源"); header.put("Source", "来源");
header.put("Period","期间"); header.put("Period", "期间");
header.put("LedgerId","账套ID"); header.put("LedgerId", "账套ID");
header.put("LedgerName","账套名称"); header.put("LedgerName", "账套名称");
header.put("CurrencyCode","账套币种"); header.put("CurrencyCode", "账套币种");
header.put("Status","关账标识"); header.put("Status", "关账标识");
header.put("Category","主体性质"); header.put("Category", "主体性质");
header.put("AccountCategory","科目性质"); header.put("AccountCategory", "科目性质");
header.put("AcctCode1","一级科目代码"); header.put("AcctCode1", "一级科目代码");
header.put("AcctName1","一级科目说明"); header.put("AcctName1", "一级科目说明");
header.put("AcctName2","二级科目说明"); header.put("AcctName2", "二级科目说明");
header.put("AcctName3","三级科目说明"); header.put("AcctName3", "三级科目说明");
header.put("Segment1","主体代码"); header.put("Segment1", "主体代码");
header.put("Segment2","成本中心代码"); header.put("Segment2", "成本中心代码");
header.put("Segment3","科目代码"); header.put("Segment3", "科目代码");
header.put("Segment4","辅助科目代码"); header.put("Segment4", "辅助科目代码");
header.put("Segment5","利润中心代码"); header.put("Segment5", "利润中心代码");
header.put("Segment6","产品代码"); header.put("Segment6", "产品代码");
header.put("Segment7","项目代码"); header.put("Segment7", "项目代码");
header.put("Segment8","公司间代码"); header.put("Segment8", "公司间代码");
header.put("Segment9","备用1代码"); header.put("Segment9", "备用1代码");
header.put("Segment10","备用2代码"); header.put("Segment10", "备用2代码");
header.put("Segment1Name","主体说明"); header.put("Segment1Name", "主体说明");
header.put("Segment2Name","成本中心说明"); header.put("Segment2Name", "成本中心说明");
header.put("Segment3Name","科目说明"); header.put("Segment3Name", "科目说明");
header.put("Segment4Name","辅助科目说明"); header.put("Segment4Name", "辅助科目说明");
header.put("Segment5Name","利润中心说明"); header.put("Segment5Name", "利润中心说明");
header.put("Segment6Name","产品说明"); header.put("Segment6Name", "产品说明");
header.put("Segment7Name","项目说明"); header.put("Segment7Name", "项目说明");
header.put("Segment8Name","公司间说明"); header.put("Segment8Name", "公司间说明");
header.put("Segment9Name","备用1说明"); header.put("Segment9Name", "备用1说明");
header.put("Segment10Name","备用2说明"); header.put("Segment10Name", "备用2说明");
header.put("BegBal","原币本期期初余额"); header.put("BegBal", "原币本期期初余额");
header.put("PeriodDr","原币本期借方发生额"); header.put("PeriodDr", "原币本期借方发生额");
header.put("PeriodCr","原币本期贷方发生额"); header.put("PeriodCr", "原币本期贷方发生额");
header.put("EndBal","原币本期期末余额"); header.put("EndBal", "原币本期期末余额");
header.put("QtdDr","原币本季借方发生额"); header.put("QtdDr", "原币本季借方发生额");
header.put("QtdCr","原币本季贷方发生额"); header.put("QtdCr", "原币本季贷方发生额");
header.put("YtdDr","原币本年借方发生额"); header.put("YtdDr", "原币本年借方发生额");
header.put("YtdCr","原币本年贷方发生额"); header.put("YtdCr", "原币本年贷方发生额");
header.put("BegBalBeq","本位币本期期初余额"); header.put("BegBalBeq", "本位币本期期初余额");
header.put("PeriodDrBeq","本位币本期借方发生额"); header.put("PeriodDrBeq", "本位币本期借方发生额");
header.put("PeriodCrBeq","本位币本期贷方发生额"); header.put("PeriodCrBeq", "本位币本期贷方发生额");
header.put("EndBalBeq","本位币本期期末余额"); header.put("EndBalBeq", "本位币本期期末余额");
header.put("QtdDrBeq","本位币本季借方发生额"); header.put("QtdDrBeq", "本位币本季借方发生额");
header.put("QtdCrBeq","本位币本季贷方发生额"); header.put("QtdCrBeq", "本位币本季贷方发生额");
header.put("YtdDrBeq","本位币本年借方发生额"); header.put("YtdDrBeq", "本位币本年借方发生额");
header.put("YtdCrBeq","本位币本年贷方发生额"); header.put("YtdCrBeq", "本位币本年贷方发生额");
return header; return header;
} }
private Map<String, String> generalBSHeader() { private Map<String, String> generalBSHeader() {
Map<String, String> header = new LinkedHashMap<>(); Map<String, String> header = new LinkedHashMap<>();
header.put("Date","数据日期"); header.put("Date", "数据日期");
header.put("Source","来源"); header.put("Source", "来源");
header.put("Period","期间"); header.put("Period", "期间");
header.put("Status","关账标识"); header.put("Status", "关账标识");
header.put("LedgerId","账套ID"); header.put("LedgerId", "账套ID");
header.put("LedgerName","账套名称"); header.put("LedgerName", "账套名称");
header.put("LedgerCurrencyCode","账套币种"); header.put("LedgerCurrencyCode", "账套币种");
header.put("EntityCode","机构编码"); header.put("EntityCode", "机构编码");
header.put("EntityName","机构名称"); header.put("EntityName", "机构名称");
header.put("Category","主体性质"); header.put("Category", "主体性质");
header.put("Frequency","频度"); header.put("Frequency", "频度");
header.put("ItemName","项目名称"); header.put("ItemName", "项目名称");
header.put("EndBal","期末余额"); header.put("EndBal", "期末余额");
header.put("BegBal","年初余额"); header.put("BegBal", "年初余额");
header.put("PrcFlag","是否为国外"); header.put("PrcFlag", "是否为国外");
return header; return header;
} }
private Map<String, String> generalPLHeader() { private Map<String, String> generalPLHeader() {
Map<String, String> header = new LinkedHashMap<>(); Map<String, String> header = new LinkedHashMap<>();
header.put("Date","数据日期"); header.put("Date", "数据日期");
header.put("Source","来源"); header.put("Source", "来源");
header.put("Period","期间"); header.put("Period", "期间");
header.put("Status","关账标识"); header.put("Status", "关账标识");
header.put("LedgerId","账套ID"); header.put("LedgerId", "账套ID");
header.put("LedgerName","账套名称"); header.put("LedgerName", "账套名称");
header.put("LedgerCurrencyCode","账套币种"); header.put("LedgerCurrencyCode", "账套币种");
header.put("EntityCode","机构编码"); header.put("EntityCode", "机构编码");
header.put("EntityName","机构名称"); header.put("EntityName", "机构名称");
header.put("Category","主体性质"); header.put("Category", "主体性质");
header.put("Frequency","频度"); header.put("Frequency", "频度");
header.put("ItemName","项目名称"); header.put("ItemName", "项目名称");
header.put("PeriodAmt","本期发生额"); header.put("PeriodAmt", "本期发生额");
header.put("YtdAmt","本年累计"); header.put("YtdAmt", "本年累计");
header.put("PrcFlag","是否为国外"); header.put("PrcFlag", "是否为国外");
return header; return header;
} }
private Map<String, String> generalJEHeader() { private Map<String, String> generalJEHeader() {
Map<String, String> header = new LinkedHashMap<>(); Map<String, String> header = new LinkedHashMap<>();
header.put("Date","数据日期"); header.put("Date", "数据日期");
header.put("Source","来源"); header.put("Source", "来源");
header.put("LedgerId","账套ID"); header.put("LedgerId", "账套ID");
header.put("LedgerName","账套名称"); header.put("LedgerName", "账套名称");
header.put("CurrencyCode","账套币种"); header.put("CurrencyCode", "账套币种");
header.put("Status","关账标识"); header.put("Status", "关账标识");
header.put("HeaderId","日记账头ID"); header.put("HeaderId", "日记账头ID");
header.put("LineNum","日记账行号"); header.put("LineNum", "日记账行号");
header.put("ApprovalStatus","审批状态"); header.put("ApprovalStatus", "审批状态");
header.put("PostedStatus","过账"); header.put("PostedStatus", "过账");
header.put("Period","会计期间"); header.put("Period", "会计期间");
header.put("AccountingDate","凭证日期"); header.put("AccountingDate", "凭证日期");
header.put("JournalSource","日记账来源"); header.put("JournalSource", "日记账来源");
header.put("Category","日记账类别"); header.put("Category", "日记账类别");
header.put("Name","日记账名称"); header.put("Name", "日记账名称");
header.put("VoucherNum","凭证编号"); header.put("VoucherNum", "凭证编号");
header.put("Description","摘要"); header.put("Description", "摘要");
header.put("Segment1","主体代码"); header.put("Segment1", "主体代码");
header.put("Segment2","成本中心"); header.put("Segment2", "成本中心");
header.put("Segment3","科目代码"); header.put("Segment3", "科目代码");
header.put("Segment4","辅助科目"); header.put("Segment4", "辅助科目");
header.put("Segment5","利润中心"); header.put("Segment5", "利润中心");
header.put("Segment6","产品"); header.put("Segment6", "产品");
header.put("Segment7","项目"); header.put("Segment7", "项目");
header.put("Segment8","公司间"); header.put("Segment8", "公司间");
header.put("Segment9","备用1"); header.put("Segment9", "备用1");
header.put("Segment10","备用2"); header.put("Segment10", "备用2");
header.put("Segment1Name","主体说明"); header.put("Segment1Name", "主体说明");
header.put("Segment2Name","成本中心说明"); header.put("Segment2Name", "成本中心说明");
header.put("Segment3Name","科目说明"); header.put("Segment3Name", "科目说明");
header.put("Segment4Name","辅助科目说明"); header.put("Segment4Name", "辅助科目说明");
header.put("Segment5Name","利润中心说明"); header.put("Segment5Name", "利润中心说明");
header.put("Segment6Name","产品说明"); header.put("Segment6Name", "产品说明");
header.put("Segment7Name","项目说明"); header.put("Segment7Name", "项目说明");
header.put("Segment8Name","公司间说明"); header.put("Segment8Name", "公司间说明");
header.put("Segment9Name","备用1说明"); header.put("Segment9Name", "备用1说明");
header.put("Segment10Name","备用2说明"); header.put("Segment10Name", "备用2说明");
header.put("JournalCurrencyCode","币种"); header.put("JournalCurrencyCode", "币种");
header.put("SobCurrencyCode","本位币币种"); header.put("SobCurrencyCode", "本位币币种");
header.put("AccountedDr","借方金额"); header.put("AccountedDr", "借方金额");
header.put("AccountedCr","贷方金额"); header.put("AccountedCr", "贷方金额");
header.put("EnteredDr","本位币借方金额"); header.put("EnteredDr", "本位币借方金额");
header.put("EnteredCr","本位币贷方金额"); header.put("EnteredCr", "本位币贷方金额");
header.put("CfItem","现金流量表项"); header.put("CfItem", "现金流量表项");
header.put("Attribute1","城市"); header.put("Attribute1", "城市");
header.put("Attribute2","交易日期"); header.put("Attribute2", "交易日期");
header.put("Attribute3","对方银行账号"); header.put("Attribute3", "对方银行账号");
header.put("Attribute4","银行流水号"); header.put("Attribute4", "银行流水号");
header.put("Attribute5","供应商编号"); header.put("Attribute5", "供应商编号");
header.put("Attribute6","交易单号"); header.put("Attribute6", "交易单号");
header.put("Attribute7","供应商名称"); header.put("Attribute7", "供应商名称");
header.put("Attribute8","接收编码"); header.put("Attribute8", "接收编码");
header.put("Attribute9","制单人"); header.put("Attribute9", "制单人");
header.put("Attribute10","审核人"); header.put("Attribute10", "审核人");
header.put("Attribute11","成本中心部门描述1"); header.put("Attribute11", "成本中心部门描述1");
header.put("Attribute12","成本中心部门描述2"); header.put("Attribute12", "成本中心部门描述2");
header.put("Attribute13","成本中心部门描述3"); header.put("Attribute13", "成本中心部门描述3");
header.put("Attribute14","成本中心部门描述4"); header.put("Attribute14", "成本中心部门描述4");
header.put("Attribute15","成本中心部门描述5"); header.put("Attribute15", "成本中心部门描述5");
header.put("Attribute16","成本中心部门描述6"); header.put("Attribute16", "成本中心部门描述6");
header.put("CreatedBy","创建人"); header.put("CreatedBy", "创建人");
header.put("CreatedDate","创建日期"); header.put("CreatedDate", "创建日期");
header.put("LateUpdatedBy","最后更新人"); header.put("LateUpdatedBy", "最后更新人");
header.put("LateUpdatedDate","最后更新日期"); header.put("LateUpdatedDate", "最后更新日期");
header.put("tmsPeriod","税务系统期间"); header.put("tmsPeriod", "税务系统期间");
return header; return header;
} }
private void generalIDDtoList(List<InvoiceData> invoiceDatas, List<InvoiceDataDto> invoiceDataDtos) { private void generalIDDtoList(List<InvoiceData> invoiceDatas, List<InvoiceDataDto> invoiceDataDtos) {
if(invoiceDatas.size()>0){ if (invoiceDatas.size() > 0) {
invoiceDatas.forEach(id -> { invoiceDatas.forEach(id -> {
setIDValue(invoiceDataDtos,"专票正数发票份数",id.getCountType(),id.getSpecialInvoiceAmount1()); setIDValue(invoiceDataDtos, "专票正数发票份数", id.getCountType(), id.getSpecialInvoiceAmount1());
setIDValue(invoiceDataDtos,"专票负数发票份数",id.getCountType(),id.getSpecialInvoiceAmount2()); setIDValue(invoiceDataDtos, "专票负数发票份数", id.getCountType(), id.getSpecialInvoiceAmount2());
setIDValue(invoiceDataDtos,"专票正数废票份数",id.getCountType(),id.getSpecialInvoiceAmount3()); setIDValue(invoiceDataDtos, "专票正数废票份数", id.getCountType(), id.getSpecialInvoiceAmount3());
setIDValue(invoiceDataDtos,"专票负数废票份数",id.getCountType(),id.getSpecialInvoiceAmount4()); setIDValue(invoiceDataDtos, "专票负数废票份数", id.getCountType(), id.getSpecialInvoiceAmount4());
setIDValue(invoiceDataDtos,"专票销项正废金额",id.getCountType(),id.getSpecialInvoiceSalesAmount1()); setIDValue(invoiceDataDtos, "专票销项正废金额", id.getCountType(), id.getSpecialInvoiceSalesAmount1());
setIDValue(invoiceDataDtos,"专票销项正数金额",id.getCountType(),id.getSpecialInvoiceSalesAmount2()); setIDValue(invoiceDataDtos, "专票销项正数金额", id.getCountType(), id.getSpecialInvoiceSalesAmount2());
setIDValue(invoiceDataDtos,"专票销项负废金额",id.getCountType(),id.getSpecialInvoiceSalesAmount3()); setIDValue(invoiceDataDtos, "专票销项负废金额", id.getCountType(), id.getSpecialInvoiceSalesAmount3());
setIDValue(invoiceDataDtos,"专票销项负数金额",id.getCountType(),id.getSpecialInvoiceSalesAmount4()); setIDValue(invoiceDataDtos, "专票销项负数金额", id.getCountType(), id.getSpecialInvoiceSalesAmount4());
setIDValue(invoiceDataDtos,"专票实际销项金额",id.getCountType(),id.getSpecialInvoiceSalesAmount5()); setIDValue(invoiceDataDtos, "专票实际销项金额", id.getCountType(), id.getSpecialInvoiceSalesAmount5());
setIDValue(invoiceDataDtos,"专票销项正废税额",id.getCountType(),id.getSpecialInvoiceTaxAmount1()); setIDValue(invoiceDataDtos, "专票销项正废税额", id.getCountType(), id.getSpecialInvoiceTaxAmount1());
setIDValue(invoiceDataDtos,"专票销项正数税额",id.getCountType(),id.getSpecialInvoiceTaxAmount2()); setIDValue(invoiceDataDtos, "专票销项正数税额", id.getCountType(), id.getSpecialInvoiceTaxAmount2());
setIDValue(invoiceDataDtos,"专票销项负废税额",id.getCountType(),id.getSpecialInvoiceTaxAmount3()); setIDValue(invoiceDataDtos, "专票销项负废税额", id.getCountType(), id.getSpecialInvoiceTaxAmount3());
setIDValue(invoiceDataDtos,"专票销项负数税额",id.getCountType(),id.getSpecialInvoiceTaxAmount4()); setIDValue(invoiceDataDtos, "专票销项负数税额", id.getCountType(), id.getSpecialInvoiceTaxAmount4());
setIDValue(invoiceDataDtos,"专票实际销项税额",id.getCountType(),id.getSpecialInvoiceTaxAmount5()); setIDValue(invoiceDataDtos, "专票实际销项税额", id.getCountType(), id.getSpecialInvoiceTaxAmount5());
setIDValue(invoiceDataDtos,"普票正数发票份数",id.getCountType(),id.getInvoiceAmount1()); setIDValue(invoiceDataDtos, "普票正数发票份数", id.getCountType(), id.getInvoiceAmount1());
setIDValue(invoiceDataDtos,"普票负数发票份数",id.getCountType(),id.getInvoiceAmount2()); setIDValue(invoiceDataDtos, "普票负数发票份数", id.getCountType(), id.getInvoiceAmount2());
setIDValue(invoiceDataDtos,"普票正数废票份数",id.getCountType(),id.getInvoiceAmount3()); setIDValue(invoiceDataDtos, "普票正数废票份数", id.getCountType(), id.getInvoiceAmount3());
setIDValue(invoiceDataDtos,"普票负数废票份数",id.getCountType(),id.getInvoiceAmount4()); setIDValue(invoiceDataDtos, "普票负数废票份数", id.getCountType(), id.getInvoiceAmount4());
setIDValue(invoiceDataDtos,"普票销项正废金额",id.getCountType(),id.getInvoiceSalesAmount1()); setIDValue(invoiceDataDtos, "普票销项正废金额", id.getCountType(), id.getInvoiceSalesAmount1());
setIDValue(invoiceDataDtos,"普票销项正数金额",id.getCountType(),id.getInvoiceSalesAmount2()); setIDValue(invoiceDataDtos, "普票销项正数金额", id.getCountType(), id.getInvoiceSalesAmount2());
setIDValue(invoiceDataDtos,"普票销项负废金额",id.getCountType(),id.getInvoiceSalesAmount3()); setIDValue(invoiceDataDtos, "普票销项负废金额", id.getCountType(), id.getInvoiceSalesAmount3());
setIDValue(invoiceDataDtos,"普票销项负数金额",id.getCountType(),id.getInvoiceSalesAmount4()); setIDValue(invoiceDataDtos, "普票销项负数金额", id.getCountType(), id.getInvoiceSalesAmount4());
setIDValue(invoiceDataDtos,"普票实际销项金额",id.getCountType(),id.getInvoiceSalesAmount5()); setIDValue(invoiceDataDtos, "普票实际销项金额", id.getCountType(), id.getInvoiceSalesAmount5());
setIDValue(invoiceDataDtos,"普票销项正废税额",id.getCountType(),id.getInvoiceTaxAmount1()); setIDValue(invoiceDataDtos, "普票销项正废税额", id.getCountType(), id.getInvoiceTaxAmount1());
setIDValue(invoiceDataDtos,"普票销项正数税额",id.getCountType(),id.getInvoiceTaxAmount2()); setIDValue(invoiceDataDtos, "普票销项正数税额", id.getCountType(), id.getInvoiceTaxAmount2());
setIDValue(invoiceDataDtos,"普票销项负废税额",id.getCountType(),id.getInvoiceTaxAmount3()); setIDValue(invoiceDataDtos, "普票销项负废税额", id.getCountType(), id.getInvoiceTaxAmount3());
setIDValue(invoiceDataDtos,"普票销项负数税额",id.getCountType(),id.getInvoiceTaxAmount4()); setIDValue(invoiceDataDtos, "普票销项负数税额", id.getCountType(), id.getInvoiceTaxAmount4());
setIDValue(invoiceDataDtos,"普票实际销项税额",id.getCountType(),id.getInvoiceTaxAmount5()); setIDValue(invoiceDataDtos, "普票实际销项税额", id.getCountType(), id.getInvoiceTaxAmount5());
}); });
} }
} }
...@@ -931,35 +1017,35 @@ public class DataPreviewSerivceImpl extends BaseService { ...@@ -931,35 +1017,35 @@ public class DataPreviewSerivceImpl extends BaseService {
} }
private void setIDValue(List<InvoiceDataDto> idDtos, String column, Integer row, Object value) { private void setIDValue(List<InvoiceDataDto> idDtos, String column, Integer row, Object value) {
for(InvoiceDataDto idto : idDtos){ for (InvoiceDataDto idto : idDtos) {
if(idto.getProjectName().equals(column)){ if (idto.getProjectName().equals(column)) {
switch (row) { switch (row) {
case CountTypeConstant.TOTAL: case CountTypeConstant.TOTAL:
idto.setTotalAmount(new BigDecimal (value.toString())); idto.setTotalAmount(new BigDecimal(value.toString()));
break; break;
case CountTypeConstant.SIXTEEN_PERCENT: case CountTypeConstant.SIXTEEN_PERCENT:
idto.setAmount1(new BigDecimal (value.toString())); idto.setAmount1(new BigDecimal(value.toString()));
break; break;
case CountTypeConstant.TEN_PERCENT: case CountTypeConstant.TEN_PERCENT:
idto.setAmount2(new BigDecimal (value.toString())); idto.setAmount2(new BigDecimal(value.toString()));
break; break;
case CountTypeConstant.SIX_PERCENT: case CountTypeConstant.SIX_PERCENT:
idto.setAmount3(new BigDecimal (value.toString())); idto.setAmount3(new BigDecimal(value.toString()));
break; break;
case CountTypeConstant.THREE_PERCENT: case CountTypeConstant.THREE_PERCENT:
idto.setAmount4(new BigDecimal (value.toString())); idto.setAmount4(new BigDecimal(value.toString()));
break; break;
case CountTypeConstant.SEVENTEEN_PERCENT: case CountTypeConstant.SEVENTEEN_PERCENT:
idto.setAmount5(new BigDecimal (value.toString())); idto.setAmount5(new BigDecimal(value.toString()));
break; break;
case CountTypeConstant.ELEVEN_PERCENT: case CountTypeConstant.ELEVEN_PERCENT:
idto.setAmount6(new BigDecimal (value.toString())); idto.setAmount6(new BigDecimal(value.toString()));
break; break;
case CountTypeConstant.FIVE_PERCENT: case CountTypeConstant.FIVE_PERCENT:
idto.setAmount7(new BigDecimal (value.toString())); idto.setAmount7(new BigDecimal(value.toString()));
break; break;
case CountTypeConstant.OTHER: case CountTypeConstant.OTHER:
idto.setOtherAmount(new BigDecimal (value.toString())); idto.setOtherAmount(new BigDecimal(value.toString()));
break; break;
default: default:
break; break;
......
...@@ -612,22 +612,22 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g ...@@ -612,22 +612,22 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g
sticky: true sticky: true
}); });
$stateProvider.state({ // $stateProvider.state({
name: 'vat.previewData.balanceSheet', // name: 'vat.previewData.balanceSheet',
url: '/balanceSheet', // url: '/balanceSheet',
views: { // views: {
'@vat.previewData': { // '@vat.previewData': {
controller: ['$scope', '$stateParams', 'appTranslation', // controller: ['$scope', '$stateParams', 'appTranslation',
function ($scope, $stateParams, appTranslation) { // function ($scope, $stateParams, appTranslation) {
appTranslation.load([appTranslation.vat]); // appTranslation.load([appTranslation.vat]);
}], // }],
template: '<vat-preview-balance-sheet></vat-preview-balance-sheet>', // template: '<vat-preview-balance-sheet></vat-preview-balance-sheet>',
} // }
}, // },
resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat), // resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat),
deepStateRedirect: true, // deepStateRedirect: true,
sticky: true // sticky: true
}); // });
$stateProvider.state({ $stateProvider.state({
name: 'vat.previewData.accountVoucher', name: 'vat.previewData.accountVoucher',
...@@ -767,6 +767,40 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g ...@@ -767,6 +767,40 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g
sticky: true sticky: true
}); });
$stateProvider.state({
name: 'vat.previewData.vatPreviewProfitTable',
url: '/vatPreviewProfitTable',
views: {
'@vat.previewData': {
controller: ['$scope', '$stateParams', 'appTranslation',
function ($scope, $stateParams, appTranslation) {
appTranslation.load([appTranslation.vat]);
}],
template: '<vat-preview-profit-table></vat-preview-profit-table>'
}
},
resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat),
deepStateRedirect: true,
sticky: true
});
$stateProvider.state({
name: 'vat.previewData.vatPreviewTheBalanceSheet',
url: '/vatPreviewTheBalanceSheet',
views: {
'@vat.previewData': {
controller: ['$scope', '$stateParams', 'appTranslation',
function ($scope, $stateParams, appTranslation) {
appTranslation.load([appTranslation.vat]);
}],
template: '<vat-preview-the-balance-sheet></vat-preview-the-balance-sheet>'
}
},
resolve: scriptDependencyProvider.createDependenciesMap(scriptDependencyProvider.vat),
deepStateRedirect: true,
sticky: true
});
$stateProvider.state({ $stateProvider.state({
name: 'vat.previewData.coupaPurchasingReport', name: 'vat.previewData.coupaPurchasingReport',
url: '/coupaPurchasingReport', url: '/coupaPurchasingReport',
......
...@@ -1994,5 +1994,7 @@ ...@@ -1994,5 +1994,7 @@
"InputAllMandatoryInfo": "Please Input All The Mandatory Information", "InputAllMandatoryInfo": "Please Input All The Mandatory Information",
"NameShouldUniqueWarn": "Name Should Be Unique", "NameShouldUniqueWarn": "Name Should Be Unique",
"ProfitTable": "Profit Table",
"~MustBeEndOneApp": "I Must be the End One, please!" "~MustBeEndOneApp": "I Must be the End One, please!"
} }
\ No newline at end of file
...@@ -2306,6 +2306,7 @@ ...@@ -2306,6 +2306,7 @@
"InputAllMandatoryInfo": "请输入所有必填信息", "InputAllMandatoryInfo": "请输入所有必填信息",
"NameShouldUniqueWarn": "收入类型名称应当唯一", "NameShouldUniqueWarn": "收入类型名称应当唯一",
"ProfitTable": "利润表",
"~MustBeEndOneApp": "我必须是最后一个!" "~MustBeEndOneApp": "我必须是最后一个!"
} }
\ No newline at end of file
...@@ -475,9 +475,6 @@ constant.vatPermission = { ...@@ -475,9 +475,6 @@ constant.vatPermission = {
adjustmentTab: { adjustmentTab: {
queryCode: '02.002.011' queryCode: '02.002.011'
}, },
balanceSheet: {
queryCode: '02.002.012'
},
profitLoss: { profitLoss: {
queryCode: '02.002.013' queryCode: '02.002.013'
}, },
...@@ -507,7 +504,11 @@ constant.vatPermission = { ...@@ -507,7 +504,11 @@ constant.vatPermission = {
}, },
offBalanceSheetPrcManual: { offBalanceSheetPrcManual: {
queryCode: '02.002.022' queryCode: '02.002.022'
},
profitTable: {
queryCode: '02.002.023'
} }
}, },
dataManage: { dataManage: {
dataManageCode: '02.003', dataManageCode: '02.003',
......
...@@ -213,6 +213,9 @@ ...@@ -213,6 +213,9 @@
getPLDataForDisplay: function (queryParams) { getPLDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getPLDataForDisplay', queryParams, apiConfig.createVat()); return $http.post('/dataPreview/getPLDataForDisplay', queryParams, apiConfig.createVat());
}, },
getPLStatementDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getPLStatementDataForDisplay', queryParams, apiConfig.createVat());
},
initExportPLData: function (queryParams) { initExportPLData: function (queryParams) {
return $http.post('/dataPreview/exportPLData/get', queryParams, apiConfig.create({ responseType: 'arraybuffer' })); return $http.post('/dataPreview/exportPLData/get', queryParams, apiConfig.create({ responseType: 'arraybuffer' }));
}, },
...@@ -229,6 +232,9 @@ ...@@ -229,6 +232,9 @@
FileSaver.saveAs(data,fileName + '_'+queryParm.periodStart+'_'+vatSessionService.project.name+'.xlsx'); FileSaver.saveAs(data,fileName + '_'+queryParm.periodStart+'_'+vatSessionService.project.name+'.xlsx');
}); });
}, },
initExportPLStatementData: function (queryParams) {
return $http.post('/dataPreview/exportPLStatementData/get', queryParams, apiConfig.create({ responseType: 'arraybuffer' }));
},
getJEDataForDisplay: function (queryParams) { getJEDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getJEDataForDisplay', queryParams, apiConfig.createVat()); return $http.post('/dataPreview/getJEDataForDisplay', queryParams, apiConfig.createVat());
}, },
...@@ -238,6 +244,9 @@ ...@@ -238,6 +244,9 @@
getBSDataForDisplay: function (queryParams) { getBSDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getBSDataForDisplay', queryParams, apiConfig.createVat()); return $http.post('/dataPreview/getBSDataForDisplay', queryParams, apiConfig.createVat());
}, },
getBalanceSheetDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getBalanceSheetDataForDisplay', queryParams, apiConfig.createVat());
},
initExportBSData: function (queryParams) { initExportBSData: function (queryParams) {
return $http.post('/dataPreview/exportBSData/get', queryParams, apiConfig.create({ responseType: 'arraybuffer' })); return $http.post('/dataPreview/exportBSData/get', queryParams, apiConfig.create({ responseType: 'arraybuffer' }));
}, },
...@@ -254,6 +263,9 @@ ...@@ -254,6 +263,9 @@
FileSaver.saveAs(data,fileName + '_'+queryParm.periodStart+'_'+vatSessionService.project.name+'.xlsx'); FileSaver.saveAs(data,fileName + '_'+queryParm.periodStart+'_'+vatSessionService.project.name+'.xlsx');
}); });
}, },
initExportBalanceSheetData: function (queryParams) {
return $http.post('/dataPreview/exportBalanceSheetData/get', queryParams, apiConfig.create({ responseType: 'arraybuffer' }));
},
getIRDataForDisplay: function (queryParams) { getIRDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getIRDataForDisplay', queryParams, apiConfig.createVat()); return $http.post('/dataPreview/getIRDataForDisplay', queryParams, apiConfig.createVat());
}, },
......
...@@ -881,6 +881,9 @@ ...@@ -881,6 +881,9 @@
constant.vatPermission.dataPreview.redLetterInformationTable.queryCode, constant.vatPermission.dataPreview.redLetterInformationTable.queryCode,
constant.vatPermission.dataPreview.coupaPurchasingReport.queryCode, constant.vatPermission.dataPreview.coupaPurchasingReport.queryCode,
constant.vatPermission.dataPreview.invoiceData.queryCode, constant.vatPermission.dataPreview.invoiceData.queryCode,
constant.vatPermission.dataPreview.profitTable.queryCode,
constant.vatPermission.dataPreview.balanceSheet.queryCode,
constant.vatPermission.dataManage.caculateDataCode, constant.vatPermission.dataManage.caculateDataCode,
constant.vatPermission.dataManage.revenueDetailCode, constant.vatPermission.dataManage.revenueDetailCode,
...@@ -926,6 +929,10 @@ ...@@ -926,6 +929,10 @@
$state.go('vat.previewData.coupaPurchasingReport'); $state.go('vat.previewData.coupaPurchasingReport');
} else if (data[constant.vatPermission.dataPreview.invoiceData.queryCode]) { } else if (data[constant.vatPermission.dataPreview.invoiceData.queryCode]) {
$state.go('vat.previewData.invoiceData'); $state.go('vat.previewData.invoiceData');
} else if (data[constant.vatPermission.dataPreview.profitTable.queryCode]) {
$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.dataManage.caculateDataCode]) {
$state.go('vat.reductionData.caculateData'); $state.go('vat.reductionData.caculateData');
} else if (data[constant.vatPermission.dataManage.revenueDetailCode]) { } else if (data[constant.vatPermission.dataManage.revenueDetailCode]) {
...@@ -973,36 +980,7 @@ ...@@ -973,36 +980,7 @@
// $state.go('vat.reductionData.goodsMapping'); // $state.go('vat.reductionData.goodsMapping');
// } // }
//TODO 删除的部分
// if (data[constant.vatPermission.dataPreview.balanceSheet.queryCode]) {
// $state.go('vat.previewData.balanceSheet');
// }
// 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');
// }
// else if (data[constant.vatPermission.dataManage.caculateDataCode]) {
// $state.go('vat.reductionData.caculateData');
// } else if (data[constant.vatPermission.dataManage.revenueDetailCode]) {
// $state.go('vat.reductionData.revenueDetail');
// } else if (data[constant.vatPermission.dataManage.billDetailCode]) {
// $state.go('vat.reductionData.billDetail');
// } /*else if (data[constant.vatPermission.dataManage.unbilledInvoiceCode]) {
// $state.go('vat.reductionData.unbilledInvoice');
// }*/ else if (data[constant.vatPermission.reportView.bsplCode] || data[constant.vatPermission.reportView.taxReturnCode]) {
// $state.go('vat.generateReport');
// } else if (data[constant.vatPermission.dataAnalysis.modelAnalysisCode]) {
// $state.go('vat.analyzeLayout.analyzeReport');
// } else if (data[constant.vatPermission.dataAnalysis.dashboard.dashboardCode]) {
// $state.go('analyzeOrganizeDashboard');
// }
//else if (data[constant.vatPermission.dataAnalysis.vatTaxDifferenceCode]) {
// $state.go('vat.analyzeLayout.vatTaxDifference');
//}
} }
}); });
} }
......
 vatModule.controller('VatImportLayoutController', ['$scope', '$log', '$translate', '$location', 'loginContext', 'enums', 'vatSessionService', 'vatCommonService',
vatModule.controller('VatImportLayoutController', ['$scope', '$log', '$translate', '$location', 'loginContext', 'enums', 'vatSessionService', 'vatCommonService', function ($scope, $log, $translate, $location, loginContext, enums, vatSessionService, vatCommonService) {
function ($scope, $log, $translate, $location, loginContext, enums, vatSessionService, vatCommonService) { 'use strict';
'use strict'; $log.debug('VatImportLayoutController.ctor()...');
$log.debug('VatImportLayoutController.ctor()...');
if ($location.$$url.startWith('/cit/')) { if ($location.$$url.startWith('/cit/')) {
return false; return false;
} }
//获取未对应企业科目数量 //获取未对应企业科目数量
$scope.$on('notMappedCount', function (e, d) { $scope.$on('notMappedCount', function (e, d) {
$scope.notMappedCount = d; $scope.notMappedCount = d;
}); });
$log.debug("$location && $location.absUrl(): " + $location && $location.absUrl()); $log.debug("$location && $location.absUrl(): " + $location && $location.absUrl());
//using .replace(';', '<br/>') to text-wrap at exact position as designed in menu //using .replace(';', '<br/>') to text-wrap at exact position as designed in menu
...@@ -71,6 +70,15 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe ...@@ -71,6 +70,15 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
{ {
name: 'invoiceData', permission: constant.vatPermission.dataPreview.invoiceData.queryCode, name: 'invoiceData', permission: constant.vatPermission.dataPreview.invoiceData.queryCode,
text: $translate.instant('invoiceData'), icon: 'fa fa-file-text-o', show: true text: $translate.instant('invoiceData'), icon: 'fa fa-file-text-o', show: true
},
//TODO 增加TAB
{
name: 'vatPreviewProfitTable', permission: constant.vatPermission.dataPreview.profitTable.queryCode,
text: $translate.instant('ProfitTable'), icon: 'fa fa-file-text-o', show: true
},
{
name: 'vatPreviewTheBalanceSheet', permission: constant.vatPermission.dataPreview.balanceSheet.queryCode,
text: $translate.instant('offBalanceSheet'), icon: 'fa fa-file-text-o', show: true
}, },
{ {
name: 'quarterlyOwnersEquityChangeTab', permission: constant.vatPermission.dataPreview.quarterlyOwnersEquityChangeTable.queryCode, name: 'quarterlyOwnersEquityChangeTab', permission: constant.vatPermission.dataPreview.quarterlyOwnersEquityChangeTable.queryCode,
...@@ -80,37 +88,40 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe ...@@ -80,37 +88,40 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
name: 'balanceSheet', permission: constant.vatPermission.dataPreview.balanceSheet.queryCode, name: 'balanceSheet', permission: constant.vatPermission.dataPreview.balanceSheet.queryCode,
text: $translate.instant('balanceSheet'), icon: 'fa fa-bank', show: false text: $translate.instant('balanceSheet'), icon: 'fa fa-bank', show: false
}, },
// { // {
// name: 'accountVoucher', permission: constant.vatPermission.dataPreview.accountVoucher.queryCode, // name: 'accountVoucher', permission: constant.vatPermission.dataPreview.accountVoucher.queryCode,
// text: $translate.instant('accountVoucher'), icon: 'fa fa-columns', show: true // text: $translate.instant('accountVoucher'), icon: 'fa fa-columns', show: true
// }, // },
{ {
name: 'inputInvoice', permission: constant.vatPermission.dataPreview.inputInvoice.queryCode, name: 'inputInvoice', permission: constant.vatPermission.dataPreview.inputInvoice.queryCode,
text: $translate.instant('inputInvoice'), icon: 'fa fa-file-text-o', show: false text: $translate.instant('inputInvoice'), icon: 'fa fa-file-text-o', show: false
}, },
{ {
name: 'outputInvoice', permission: constant.vatPermission.dataPreview.outputInvoice.queryCode, name: 'outputInvoice', permission: constant.vatPermission.dataPreview.outputInvoice.queryCode,
text: $translate.instant('outputInvoice'), icon: 'fa fa-file-text-o', show: false text: $translate.instant('outputInvoice'), icon: 'fa fa-file-text-o', show: false
}, },
{ {
name: 'outputoffInvoice', permission: constant.vatPermission.dataPreview.outputInvoice.queryCode, name: 'outputoffInvoice', permission: constant.vatPermission.dataPreview.outputInvoice.queryCode,
text: $translate.instant('offlineBilling'), icon: 'fa fa-file-text-o', show: false text: $translate.instant('offlineBilling'), icon: 'fa fa-file-text-o', show: false
}, },
{ {
name: 'directMethodCashFlowStatement', permission: constant.vatPermission.dataPreview.directMethodCashFlowStatement.queryCode, name: 'directMethodCashFlowStatement',
text: $translate.instant('directMethodCashFlowStatement'), icon: 'fa fa-file-text-o', show: false permission: constant.vatPermission.dataPreview.directMethodCashFlowStatement.queryCode,
} text: $translate.instant('directMethodCashFlowStatement'),
icon: 'fa fa-file-text-o',
show: false
}
// , // ,
// { // {
// name: 'customInvoice', permission: constant.vatPermission.dataPreview.customInvoice.queryCode, // name: 'customInvoice', permission: constant.vatPermission.dataPreview.customInvoice.queryCode,
// text: $translate.instant('customInvoice'), icon: 'fa fa-bookmark', show: true // text: $translate.instant('customInvoice'), icon: 'fa fa-bookmark', show: true
// } // }
]; ];
} } else if ($location && $location.absUrl().indexOf('reductionData') > -1) {
else if ($location && $location.absUrl().indexOf('reductionData') > -1) { $scope.nodeDicKey = constant.DictionaryDictKey.DataProcess;
$scope.nodeDicKey = constant.DictionaryDictKey.DataProcess; $scope.linkShort = enums.linkShort.ReductionData;
$scope.linkShort = enums.linkShort.ReductionData; $scope.menus = [
$scope.menus = [
{ {
name: 'caculateData', permission: constant.vatPermission.dataManage.caculateDataCode, name: 'caculateData', permission: constant.vatPermission.dataManage.caculateDataCode,
text: $translate.instant('caculateData'), icon: 'fa fa-random', show: true text: $translate.instant('caculateData'), icon: 'fa fa-random', show: true
...@@ -123,27 +134,26 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe ...@@ -123,27 +134,26 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
name: 'billDetail', permission: constant.vatPermission.dataManage.billDetailCode, name: 'billDetail', permission: constant.vatPermission.dataManage.billDetailCode,
text: $translate.instant('BillDetail'), icon: 'fa fa-random', show: true text: $translate.instant('BillDetail'), icon: 'fa fa-random', show: true
} }
/*{ /*{
name: 'accountMapping', permission: constant.vatPermission.dataManage.accountMappingCode, name: 'accountMapping', permission: constant.vatPermission.dataManage.accountMappingCode,
text: $translate.instant('accountMapping'), icon: 'fa fa-map', show: true text: $translate.instant('accountMapping'), icon: 'fa fa-map', show: true
}, },
{ {
name: 'goodsMapping', permission: constant.vatPermission.dataManage.goodsMappingCode, name: 'goodsMapping', permission: constant.vatPermission.dataManage.goodsMappingCode,
text: $translate.instant('goodsMapping'), icon: 'fa fa-map-signs', show: true text: $translate.instant('goodsMapping'), icon: 'fa fa-map-signs', show: true
}, },
{ {
name: 'unbilledInvoice', permission: constant.vatPermission.dataManage.unbilledInvoiceCode, name: 'unbilledInvoice', permission: constant.vatPermission.dataManage.unbilledInvoiceCode,
text: $translate.instant('unbilledInvoice'), icon: 'fa fa-shield', show: true text: $translate.instant('unbilledInvoice'), icon: 'fa fa-shield', show: true
},*/ ]; },*/];
} } else {
else { $scope.nodeDicKey = constant.DictionaryDictKey.DataImport;
$scope.nodeDicKey = constant.DictionaryDictKey.DataImport; $scope.linkShort = enums.linkShort.ImportData;
$scope.linkShort = enums.linkShort.ImportData; $scope.menus = [
$scope.menus = [ {
{ name: 'balanceSheet', permission: constant.vatPermission.dataImport.balanceSheet.queryCode,
name: 'balanceSheet', permission: constant.vatPermission.dataImport.balanceSheet.queryCode, text: $translate.instant('balanceSheet'), icon: 'fa fa-bank', show: true
text: $translate.instant('balanceSheet'), icon: 'fa fa-bank', show: true },
},
// { // {
// name: 'journalEntry', permission: constant.vatPermission.dataImport.journalEntry.queryCode, // name: 'journalEntry', permission: constant.vatPermission.dataImport.journalEntry.queryCode,
// text: $translate.instant('journalEntry'), icon: 'fa fa-align-left', show: true // text: $translate.instant('journalEntry'), icon: 'fa fa-align-left', show: true
...@@ -153,14 +163,14 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe ...@@ -153,14 +163,14 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
// text: $translate.instant('erpData'), icon: 'fa fa-list-ul', show: true // text: $translate.instant('erpData'), icon: 'fa fa-list-ul', show: true
// }, // },
{ {
name: 'inputInvoice', permission: constant.vatPermission.dataImport.inputInvoice.queryCode, name: 'inputInvoice', permission: constant.vatPermission.dataImport.inputInvoice.queryCode,
text: $translate.instant('inputInvoice'), icon: 'fa fa-file-text-o', show: true text: $translate.instant('inputInvoice'), icon: 'fa fa-file-text-o', show: true
}, },
{ {
name: 'outputInvoice', permission: constant.vatPermission.dataImport.outputInvoice.queryCode, name: 'outputInvoice', permission: constant.vatPermission.dataImport.outputInvoice.queryCode,
text: $translate.instant('outputInvoice'), icon: 'fa fa-file-text-o', show: true text: $translate.instant('outputInvoice'), icon: 'fa fa-file-text-o', show: true
}, },
// , // ,
// { // {
// name: 'customInvoice', permission: constant.vatPermission.dataImport.customInvoice.queryCode, // name: 'customInvoice', permission: constant.vatPermission.dataImport.customInvoice.queryCode,
...@@ -178,14 +188,13 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe ...@@ -178,14 +188,13 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
// name: 'auditAdjust', permission: constant.vatPermission.dataImport.auditAdjust.queryCode, // name: 'auditAdjust', permission: constant.vatPermission.dataImport.auditAdjust.queryCode,
// text: $translate.instant('auditAdjust'), icon: 'fa fa-adjust', show: true // text: $translate.instant('auditAdjust'), icon: 'fa fa-adjust', show: true
// } // }
]; ];
} }
(function initialize() { (function initialize() {
vatCommonService.isLayoutMenuShow(vatSessionService.project.id, vatSessionService.month vatCommonService.isLayoutMenuShow(vatSessionService.project.id, vatSessionService.month
, $scope.nodeDicKey, $scope.linkShort, $scope.menus); , $scope.nodeDicKey, $scope.linkShort, $scope.menus);
})(); })();
}]); }]);
\ No newline at end of file \ No newline at end of file
<div class="popover">
<div class="arrow"></div>
<div class="popover-content">
<div>
<table class="table table-responsive">
<tr>
<td>
<span translate="BillingContent"></span>
<input class="form-control input-width-small" id="certificationDateStart" ng-model="queryParams.certificationDateStart" />&nbsp;-&nbsp;
<input class="form-control input-width-small" id="certificationDateEnd" ng-model="queryParams.certificationDateEnd" />
</td>
</tr>
<tr>
<td>
<span translate="ApplicationSector"></span>
<input class="form-control input-width-middle" type="text" id="invoiceCode" ng-model="queryParams.invoiceCode" />
</td>
</tr>
<tr>
<td>
<span translate="ApplicationSector"></span>
<input class="form-control input-width-middle" type="text" id="invoiceNumber" ng-model="queryParams.invoiceNumber" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceCode"></span>
<input class="form-control input-width-middle" type="text" id="sellerTaxNumber" ng-model="queryParams.sellerTaxNumber" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceNumber"></span>
<input class="form-control input-width-small" type="text" id="amountStart" ng-model="queryParams.amountStart" onkeyup="PWC.inputNumberFormat(this);" />&nbsp;-&nbsp;
<input class="form-control input-width-small" type="text" id="amountEnd" ng-model="queryParams.amountEnd" onkeyup="PWC.inputNumberFormat(this);" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceFPLXQuery"></span>
<div class="ui-select-has-border input-width-middle">
<ui-select ng-model="InvoiceType.selected" search-enabled="false" style="text-align:left;" class="input-width-middle">
<ui-select-match>{{$select.selected.name}}</ui-select-match>
<ui-select-choices repeat="item in invoiceTypeList | propsFilter: {name: $select.search}">
<div title="{{item.name}}" ng-bind-html="item.name"></div>
</ui-select-choices>
</ui-select>
</div>
</td>
</tr>
<tr>
<td>
<span translate="InvoiceRZJGQuery"></span>
<div class="ui-select-has-border input-width-middle">
<ui-select ng-model="CertificationStatus.selected" search-enabled="false" style="text-align: left; " class="input-width-middle">
<ui-select-match>{{$select.selected.name}}</ui-select-match>
<ui-select-choices repeat="item in cetificationResultList | propsFilter: {name: $select.search}">
<div title="{{item.name}}" ng-bind-html="item.name"></div>
</ui-select-choices>
</ui-select>
</div>
</td>
</tr>
</table>
</div>
<div class="row">
<div style="float:right;margin-right:10px;">
<button class="btn btn-default btn-primary" ng-click="doDataFilter('')">
<span class="fa fa-chevron-down" aria-hidden="true"> </span> <span translate="Confirm"></span>
</button>
<button class="btn btn-default margin-right10" ng-click="doDataFilterReset()">
<span class="fa fa-times" aria-hidden="true"> </span> <span translate="Reset"></span>
</button>
</div>
</div>
</div>
</div>
vatModule.controller('VatPreviewProfitTableController', ['$rootScope','$scope', '$log','$filter', '$translate', '$timeout', 'SweetAlert', '$q', 'uiGridConstants', '$interval', 'vatPreviewService', 'browserService', 'vatSessionService', 'region', 'enums', 'vatExportService',
function ($rootScope,$scope, $log,$filter, $translate, $timeout, SweetAlert, $q, uiGridConstants, $interval, vatPreviewService, browserService, vatSessionService, region, enums, vatExportService) {
'use strict';
$scope.startDate = new Date(vatSessionService.project.year, 0, 1);
$scope.endDate = new Date(vatSessionService.project.year, 11, 31);
$scope.dateFormat = $translate.instant('dateFormat4YearMonthDay');
$scope.startMonth = vatSessionService.month;
$scope.endMonth = vatSessionService.month;
$scope.totalMoneyAmount = 0;
$scope.totalTaxAmount = 0;
$scope.pageSize = constant.vatPagesize;
var minDate = [1, vatSessionService.project.year];
// var minDate = moment().startOf('month').subtract(0, 'months');
var maxDate = [12, vatSessionService.project.year];
var setDate = [
[vatSessionService.month, vatSessionService.project.year],
[vatSessionService.month, vatSessionService.project.year]];
//发票类型
var invoiceTypeEnum = {
VATInvoice: $translate.instant('VATInvoice'),
FreightTransport: $translate.instant('FreightTransport'),
MotorVehicle: $translate.instant('MotorVehicle'),
AgriculturalProduct: $translate.instant('AgriculturalProduct')
};
$scope.monthList = [$translate.instant('Month01'),
$translate.instant('Month02'),
$translate.instant('Month03'),
$translate.instant('Month04'),
$translate.instant('Month05'),
$translate.instant('Month06'),
$translate.instant('Month07'),
$translate.instant('Month08'),
$translate.instant('Month09'),
$translate.instant('Month10'),
$translate.instant('Month11'),
$translate.instant('Month12')
];
//认证结果
$scope.cetificationResultList = [
{ id: 999, name: $translate.instant('AllTheItems') },
{ id: 1, name: $translate.instant('CertificationPass') },
{ id: 2, name: $translate.instant('CertificationNotPass') }
];
//发票类型
$scope.invoiceTypeList = [
{ id: 999, name: $translate.instant('AllTheItems') },
{ id: enums.invoiceType.VATInvoice, name: $translate.instant('VATInvoice') },
{ id: enums.invoiceType.FreightTransport, name: $translate.instant('FreightTransport') },
{ id: enums.invoiceType.MotorVehicle, name: $translate.instant('MotorVehicle') },
{ id: enums.invoiceType.AgriculturalProduct, name: $translate.instant('AgriculturalProduct') }
];
$scope.InvoiceType = {};
$scope.CertificationStatus = {};
//初始化期间
var initPeriods = function () {
var curMonth = new Date().getMonth() + 1;
$scope.queryParams = {
pageInfo: {},
periodStart: '',
periodEnd: ''
};
};
//从数据库中load数据
var loadProfitLossDataFromDB = function (pageIndex) {
initProfitLossPagination();
$scope.curProfitLossPage = pageIndex;
//初始化查询信息
$scope.queryParams.pageInfo = {
totalCount: $scope.queryProfitLossResult.pageInfo.totalCount,
pageIndex: pageIndex,
pageSize: $scope.queryProfitLossResult.pageInfo.pageSize,
totalPage: 0
};
$scope.queryParams.orgId = vatSessionService.project.organizationID;
$scope.getDataFromDatabase($scope.queryParams);
};
$scope.getDataFromDatabase = function (queryParams){
vatPreviewService.getPLStatementDataForDisplay(queryParams).success(function (data) {
if (data) {
// minDate = data.
var index = 1;
data.list.forEach(function (v) {
v.index = index++;
});
$scope.gridOptions.data = data.list;
$scope.queryProfitLossResult.pageInfo = data;
computeProfitLossPage();
$scope.ledgerName = data.list[0].ledgerName;
$scope.currencyCode = data.list[0].ledgerCurrencyCode;
$scope.status = data.list[0].status;
$scope.importDate = $filter('date')(data.list[0].date, "yyyy-MM-dd hh:mm:ss");
}
});
};
//点击任意一页加载数据事件
var loadIncomeInvoiceDataByPage = function (pageIndex) {
loadProfitLossDataFromDB(pageIndex);
};
//计算页数,创建分页栏
var computeProfitLossPage = function () {
if ($scope.queryProfitLossResult.pageInfo && $scope.queryProfitLossResult.pageInfo.total > 0) {
var totalPage = parseInt($scope.queryProfitLossResult.pageInfo.total / $scope.pageSize);
totalPage = $scope.queryProfitLossResult.pageInfo.totalCount % $scope.pageSize == 0 ? totalPage : totalPage + 1;
//计算本页记录数
if ($scope.queryProfitLossResult.pageInfo.pageNum === totalPage) {
$scope.curPageItemCount = $scope.queryProfitLossResult.pageInfo.total % $scope.pageSize;
}
else {
$scope.curPageItemCount = $scope.pageSize;
}
$scope.queryProfitLossResult.pageInfo.totalPage = totalPage;
var createPage = $("#totalInvoicePage").createPage({
pageCount: totalPage,
current: $scope.curProfitLossPage,
backFn: function (p) {
//单击回调方法,p是当前页码
loadIncomeInvoiceDataByPage(p);
}
});
$('#totalInvoicePage').css('display', 'inline-block');
} else {
//如果查询结果为0,则直接设置本页记录数为0
$scope.curPageItemCount = 0;
var createPage = $("#totalInvoicePage").createPage({
pageCount: 0,
current: $scope.curProfitLossPage,
backFn: function (p) {
//单击回调方法,p是当前页码
loadIncomeInvoiceDataByPage(p);
}
});
$('#totalInvoicePage').css('display', 'inline-block');
}
};
//初始化分页信息
var initProfitLossPagination = function () {
$scope.queryProfitLossResult = {
list: [],
pageInfo: {
totalCount: -1,
pageIndex: 1,
pageSize: constant.pagesize,
totalPage: 0,
}
}
$scope.curProfitLossPage = 1;
};
//将选择了的查询条件显示在grid上方
var doDataFilter = function (removeData) {
if ($scope.queryParams.periodStart > $scope.queryParams.periodEnd) {
$scope.queryParams.periodEnd = $scope.queryParams.periodStart;
}
//设置需要去掉的查询条件的值为空
if (!PWC.isNullOrEmpty(removeData)) {
var removeItem = removeData.split("|");
removeItem.forEach(function (v) {
$scope.queryParams[v] = null;
//如果去掉了发票代码的查询条件,则将查询条件设置为'',因为是字符串,设置为null会导致查询结果错误
if ($scope.queryParams.invoiceCode === null) {
$scope.queryParams.invoiceCode = '';
}
//如果去掉了发票号码的查询条件,则将查询条件设置为'',因为是字符串,设置为null会导致查询结果错误
if ($scope.queryParams.invoiceNumber === null) {
$scope.queryParams.invoiceNumber = '';
}
//如果去掉了供货方税号的查询条件,则将查询条件设置为'',因为是字符串,设置为null会导致查询结果错误
if ($scope.queryParams.sellerTaxNumber === null) {
$scope.queryParams.sellerTaxNumber = '';
}
if ($scope.queryParams.invoiceType === null) {
$scope.InvoiceType.selected = undefined;
}
if ($scope.queryParams.certificationStatus === null) {
$scope.CertificationStatus.selected = undefined;
}
});
}
//设置发票类型和认证结果
if ($scope.InvoiceType.selected !== undefined)
$scope.queryParams.invoiceType = $scope.InvoiceType.selected.id;
else
$scope.queryParams.invoiceType = null;
if ($scope.CertificationStatus.selected !== undefined)
$scope.queryParams.certificationStatus = $scope.CertificationStatus.selected.id;
else
$scope.queryParams.certificationStatus = null;
// 将查询条件加入到grid上方
var crits = $scope.queryParams;
//定义查询条件数组用于存放已选的查询条件
$scope.criteriaList = [];
var crit = [];
//认证日期
if (!PWC.isNullOrEmpty(crits.certificationDateStart) && !PWC.isNullOrEmpty(crits.certificationDateEnd)) {
if (new Date(crits.certificationDateStart.replace(/[\.-]/g, '/')) > new Date(crits.certificationDateEnd.replace(/[\.-]/g, '/'))) {
$scope.criteriaList = [];
SweetAlert.warning($translate.instant('InvoiceDateQueryError'));
return;
}
crit = new Object;
crit.name = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateStart + "-" + crits.certificationDateEnd;;
crit.fullName = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateStart + "-" + crits.certificationDateEnd;
crit.valueFrom = crits.certificationDateStart;
crit.valueTo = crits.certificationDateEnd;
crit.propertyName = "certificationDateStart|certificationDateEnd";
$scope.criteriaList.push(crit);
} else if (!PWC.isNullOrEmpty(crits.certificationDateStart) && PWC.isNullOrEmpty(crits.invoiceDateEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateStart + $translate.instant('After');
crit.fullName = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateStart + $translate.instant('After');
crit.valueFrom = crits.certificationDateStart;
crit.valueTo = crits.certificationDateEnd;
crit.propertyName = "certificationDateStart|certificationDateEnd";
$scope.criteriaList.push(crit);
}
else if (PWC.isNullOrEmpty(crits.certificationDateStart) && !PWC.isNullOrEmpty(crits.certificationDateEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateEnd + $translate.instant('Before');
crit.fullName = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateEnd + $translate.instant('Before');
crit.valueFrom = crits.certificationDateStart;
crit.valueTo = crits.certificationDateEnd;
crit.propertyName = "certificationDateStart|certificationDateEnd";
$scope.criteriaList.push(crit);
}
//发票代码
if (!PWC.isNullOrEmpty(crits.invoiceCode)) {
crit = new Object;
crit.name = $translate.instant('InvoiceFPDMQuery') + PWC.limitString(crits.invoiceCode, 10);
crit.fullName = $translate.instant('InvoiceFPDMQuery') + crits.invoiceCode;
crit.valueFrom = crits.invoiceCode;
crit.propertyName = "invoiceCode";
$scope.criteriaList.push(crit);
}
//发票号码
if (!PWC.isNullOrEmpty(crits.invoiceNumber)) {
crit = new Object;
crit.name = $translate.instant('InvoiceFPHMQuery') + PWC.limitString(crits.invoiceNumber, 10);
crit.fullName = $translate.instant('InvoiceFPHMQuery') + crits.invoiceNumber;
crit.valueFrom = crits.invoiceNumber;
crit.propertyName = "invoiceNumber";
$scope.criteriaList.push(crit);
}
//销方识别号
if (!PWC.isNullOrEmpty(crits.sellerTaxNumber)) {
crit = new Object;
crit.name = $translate.instant('InvoiceGHFSHQuery') + PWC.limitString(crits.sellerTaxNumber, 10);
crit.fullName = $translate.instant('InvoiceGHFSHQuery') + crits.sellerTaxNumber;
crit.valueFrom = crits.sellerTaxNumber;
crit.propertyName = "sellerTaxNumber";
$scope.criteriaList.push(crit);
}
//金额
if (!PWC.isNullOrEmpty(crits.amountStart) && !PWC.isNullOrEmpty(crits.amountEnd)) {
if (Number(crits.amountStart) > Number(crits.amountEnd)) {
SweetAlert.warning($translate.instant('AmountQueryError'));
return;
}
crit = new Object;
crit.name = $translate.instant('InvoiceJEQuery') + PWC.limitString(crits.amountStart, 5) + ' - ' + PWC.limitString(crits.amountEnd, 5);
crit.fullName = $translate.instant('InvoiceJEQuery') + crits.amountStart + ' - ' + crits.amountEnd;
crit.valueFrom = crits.amountStart;
crit.valueTo = crits.amountEnd;
crit.propertyName = "amountStart|amountEnd";
$scope.criteriaList.push(crit);
}
else if (!PWC.isNullOrEmpty(crits.amountStart) && PWC.isNullOrEmpty(crits.amountEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceJEQuery') + PWC.limitString(crits.amountStart, 5) + $translate.instant('MoreThan');
crit.fullName = $translate.instant('InvoiceJEQuery') + crits.amountStart + $translate.instant('MoreThan');
crit.valueFrom = crits.amountStart;
crit.valueTo = crits.amountEnd;
crit.propertyName = "amountStart|amountEnd";
$scope.criteriaList.push(crit);
}
else if (PWC.isNullOrEmpty(crits.amountStart) && !PWC.isNullOrEmpty(crits.amountEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceJEQuery') + PWC.limitString(crits.amountEnd, 5) + $translate.instant('LessThan');
crit.fullName = $translate.instant('InvoiceJEQuery') + crits.amountEnd + $translate.instant('LessThan');
crit.valueFrom = crits.amountStart;
crit.valueTo = crits.amountEnd;
crit.propertyName = "amountStart|amountEnd";
$scope.criteriaList.push(crit);
}
//税额
if (!PWC.isNullOrEmpty(crits.taxAmountStart) && !PWC.isNullOrEmpty(crits.taxAmountEnd)) {
if (Number(crits.taxAmountStart) > Number(crits.taxAmountEnd)) {
SweetAlert.warning($translate.instant('TaxAmountQueryError'));
return;
}
crit = new Object;
crit.name = $translate.instant('InvoiceSEQuery') + PWC.limitString(crits.taxAmountStart, 5) + ' - ' + PWC.limitString(crits.taxAmountEnd, 5);
crit.fullName = $translate.instant('InvoiceSEQuery') + crits.taxAmountStart + ' - ' + crits.taxAmountEnd;
crit.valueFrom = crits.taxAmountStart;
crit.valueTo = crits.taxAmountEnd;
crit.propertyName = "taxAmountStart|taxAmountEnd";
$scope.criteriaList.push(crit);
}
else if (!PWC.isNullOrEmpty(crits.taxAmountStart) && PWC.isNullOrEmpty(crits.taxAmountEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceSEQuery') + PWC.limitString(crits.taxAmountStart, 5) + $translate.instant('MoreThan');
crit.fullName = $translate.instant('InvoiceSEQuery') + crits.taxAmountStart + $translate.instant('MoreThan');
crit.valueFrom = crits.taxAmountStart;
crit.valueTo = crits.taxAmountEnd;
crit.propertyName = "taxAmountStart|taxAmountEnd";
$scope.criteriaList.push(crit);
}
else if (PWC.isNullOrEmpty(crits.taxAmountStart) && !PWC.isNullOrEmpty(crits.taxAmountEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceSEQuery') + PWC.limitString(crits.taxAmountEnd, 5) + $translate.instant('LessThan');
crit.fullName = $translate.instant('InvoiceSEQuery') + crits.taxAmountEnd + $translate.instant('LessThan');
crit.valueFrom = crits.taxAmountStart;
crit.valueTo = crits.taxAmountEnd;
crit.propertyName = "taxAmountStart|taxAmountEnd";
$scope.criteriaList.push(crit);
}
//发票类型
if (!PWC.isNullOrEmpty(crits.invoiceType)) {
crit = new Object;
crit.valueFrom = _.find($scope.invoiceTypeList, function (v) {
return v.id === crits.invoiceType;
}).name;
crit.name = $translate.instant('InvoiceFPLXQuery') + crit.valueFrom;
crit.fullName = $translate.instant('InvoiceFPLXQuery') + crit.valueFrom;
crit.propertyName = "invoiceType";
$scope.criteriaList.push(crit);
}
//认证结果
if (!PWC.isNullOrEmpty(crits.certificationStatus)) {
crit = new Object;
crit.valueFrom = _.find($scope.cetificationResultList, function (v) {
return v.id === crits.certificationStatus;
}).name;
crit.name = $translate.instant('InvoiceRZJGQuery') + crit.valueFrom;
crit.fullName = $translate.instant('InvoiceRZJGQuery') + crit.valueFrom;
crit.propertyName = "certificationStatus";
$scope.criteriaList.push(crit);
}
// add to Criteria List for display on top of the grid:
//********************************************************************************
var criteria = JSON.stringify($scope.queryParams);
if (browserService.isIE() || browserService.isEdge())
criteria = encodeURIComponent(criteria);
loadProfitLossDataFromDB(1);
if ($scope.criteriaList.length > 6) {
$scope.criteriaListFirstRow = $scope.criteriaList.slice(0, 6);
$scope.criteriaListSecondRow = $scope.criteriaList.slice(6, $scope.criteriaList.length);
}
else {
$scope.criteriaListFirstRow = $scope.criteriaList.slice(0, $scope.criteriaList.length);
}
$('.filter-button').popover("hide");
};
//去掉所有的查询条件,重新load数据
var doDataFilterReset = function () {
$scope.queryParams = {
pageInfo: {},
periodStart: '',
periodEnd: '',
certificationDateStart: null,
certificationDateEnd: null,
invoiceCode: '',
invoiceNumber: '',
sellerTaxNumber: '',
amountStart: null,
amountEnd: null,
invoiceType: null,
taxAmountStart: null,
taxAmountEnd: null,
certificationStatus: null
};
$scope.criteriaList = [];
$scope.queryParams.periodStart = $scope.startMonth;
$scope.queryParams.periodEnd = $scope.endMonth;
loadProfitLossDataFromDB(1);
$('.filter-button').popover("hide");
};
var prepareSummary = function () {
// do something before show popover
};
//在popover打开时执行事件
var showPopover = function () {
$timeout(function () {
initDatePickers();
}, 500);
};
//初始化时间控件
var initDatePickers = function () {
//认证开始时间
var ele1 = $("#certificationDateStart");
ele1.datepicker({
startDate: $scope.startDate,
endDate: $scope.endDate,
language: region,
autoclose: true,//选中之后自动隐藏日期选择框
clearBtn: true,//清除按钮
todayBtn: false,//今日按钮
format: $scope.dateFormat//日期格式,详见 http://bootstrap-datepicker.readthedocs.org/en/release/options.html#format
});
ele1.datepicker("setDate", $scope.queryParams.certificationDateStart);
//认证结束时间
var ele2 = $("#certificationDateEnd");
ele2.datepicker({
startDate: $scope.startDate,
endDate: $scope.endDate,
language: region,
autoclose: true,//选中之后自动隐藏日期选择框
clearBtn: true,//清除按钮
todayBtn: false,//今日按钮
format: $scope.dateFormat//日期格式,详见 http://bootstrap-datepicker.readthedocs.org/en/release/options.html#format
})
ele2.datepicker("setDate", $scope.queryParams.certificationDateEnd);
//初始化已选择的发票类型和认证结果
$scope.InvoiceType.selected = _.find($scope.invoiceTypeList, function (v) {
return v.id == $scope.queryParams.invoiceType;
})
$scope.CertificationStatus.selected = _.find($scope.cetificationResultList, function (v) {
return v.id == $scope.queryParams.certificationStatus;
})
};
//发票类型转换
$scope.typeToString = function (strType) {
var type = invoiceTypeEnum.VATInvoice;
switch (strType) {
case 1:
type = invoiceTypeEnum.VATInvoice;
break;
case 2:
type = invoiceTypeEnum.FreightTransport;
break;
case 3:
type = invoiceTypeEnum.MotorVehicle;
break;
case 4:
type = invoiceTypeEnum.AgriculturalProduct;
break;
default:
type = "";
}
return type;
};
//导出进项发票数据
var downloadPL = function () {
vatPreviewService.initExportPLStatementData($scope.queryParams).success(function (data, status, headers) {
if(status===204){
SweetAlert.warning("没有数据可以下载");
return;
}
vatExportService.exportToExcel(data, status, headers, '利润表信息');
}).error(function () {
SweetAlert.error($translate.instant('PleaseContactAdministrator'));
});
};
(function initialize() {
$log.debug('VatPreviewInputInvoiceController.ctor()...');
$('#input-invoice-period-picker').focus(function () {
$('.filter-button').popover("hide");
});
//初始化month-picker
$('#input-invoice-period-picker').rangePicker({
minDate: minDate,
maxDate: maxDate,
setDate: setDate,
months: $scope.monthList,//['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
ConfirmBtnText: $translate.instant('Confirm'),
CancelBtnText: $translate.instant('ButtonCancel')
})
.on('datePicker.done', function (e, result) {
//开始月份
var startMonth = result[0][1] * 100 + result[0][0];
//结束月份
var endMonth = result[1][1] * 100 + result[1][0];
$scope.startMonth = startMonth;
$scope.endMonth = endMonth;
$scope.queryParams.periodStart = startMonth;
$scope.queryParams.periodEnd = endMonth;
loadProfitLossDataFromDB(1);
});
$scope.gridOptions = {
rowHeight: constant.UIGrid.rowHeight,
selectionRowHeaderWidth: constant.UIGrid.rowHeight,
// expandableRowTemplate: '<div ui-grid="row.entity.subGridOptions" style="height:150px;"></div>',
virtualizationThreshold: 50,//默认加载50条数据,避免在数据展示时,只显示前面4条
enableSorting: false,
enableColumnMenus: false,
columnDefs: [
{
name: $translate.instant('ProjectName'),
cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.itemName}}<span></div>'
},
{
name: $translate.instant('CurrentPeriodAmount'),
headerCellClass:'rightHeader',
cellTemplate: '<div class="ui-grid-cell-contents" style="text-align: right"><span>{{row.entity.periodAmt | number:2}}<span></div>'
},
{
name: $translate.instant('ThisYearAccumulatedAmount'),
headerCellClass:'rightHeader',
cellTemplate: '<div class="ui-grid-cell-contents" style="text-align: right"><span>{{row.entity.ytdAmt | number:2}}</span></div>'
}
]
};
$scope.doDataFilter = doDataFilter;
$scope.doDataFilterReset = doDataFilterReset;
$scope.prepareSummary = prepareSummary;
$scope.showPopover = showPopover;
$scope.downloadPL = downloadPL;
initPeriods();
initProfitLossPagination();
//初始化查询条件-期间范围
$scope.queryParams.periodStart = vatSessionService.year * 100 + vatSessionService.month;
$scope.queryParams.periodEnd = vatSessionService.year * 100 + vatSessionService.month;
$scope.queryParams.orgId = vatSessionService.project.organizationID;
if($rootScope.currentLanguage === 'en-us'){
$('.periodInput')[0].style.left = "250px";
}else{
$('.periodInput')[0].style.left = "120px";
}
loadProfitLossDataFromDB(1);
})();
}
]);
<div class="vat-preview-profit-table" 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="ProfitLossTitle" 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: 130px;" id="input-invoice-period-picker" />
<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('vatPreviewProfitTable', ['$log', 'browserService', '$translate', 'region', '$timeout',
function ($log, browserService, $translate, region, $timeout) {
$log.debug('vatPreviewProfitTable.ctor()...');
return {
restrict: 'E',
templateUrl: '/app/vat/preview/vat-preview-profit-table/vat-preview-profit-table.html' + '?_=' + Math.random(),
scope: {},
controller: 'VatPreviewProfitTableController',
link: function ($scope, element) {
}
}
}
]);
\ No newline at end of file
@import "~/app-resources/less/theme.less";
.vat-preview-profit-table {
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="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>
vatModule.controller('VatPreviewTheBalanceSheetController', ['$rootScope','$scope', '$log','$filter', '$translate', '$timeout', 'SweetAlert', '$q', 'uiGridConstants', '$interval', 'vatPreviewService', 'browserService', 'vatSessionService', 'region', 'enums', 'vatExportService',
function ($rootScope,$scope, $log,$filter, $translate, $timeout, SweetAlert, $q, uiGridConstants, $interval, vatPreviewService, browserService, vatSessionService, region, enums, vatExportService) {
'use strict';
$scope.startDate = new Date(vatSessionService.project.year, 0, 1);
$scope.endDate = new Date(vatSessionService.project.year, 11, 31);
$scope.dateFormat = $translate.instant('dateFormat4YearMonthDay');
$scope.startMonth = vatSessionService.month;
$scope.endMonth = vatSessionService.month;
$scope.totalMoneyAmount = 0;
$scope.totalTaxAmount = 0;
$scope.pageSize = constant.vatPagesize;
var minDate = [1, vatSessionService.project.year];
// var minDate = moment().startOf('month').subtract(0, 'months');
var maxDate = [12, vatSessionService.project.year];
var setDate = [
[vatSessionService.month, vatSessionService.project.year],
[vatSessionService.month, vatSessionService.project.year]];
//发票类型
var invoiceTypeEnum = {
VATInvoice: $translate.instant('VATInvoice'),
FreightTransport: $translate.instant('FreightTransport'),
MotorVehicle: $translate.instant('MotorVehicle'),
AgriculturalProduct: $translate.instant('AgriculturalProduct')
};
$scope.monthList = [$translate.instant('Month01'),
$translate.instant('Month02'),
$translate.instant('Month03'),
$translate.instant('Month04'),
$translate.instant('Month05'),
$translate.instant('Month06'),
$translate.instant('Month07'),
$translate.instant('Month08'),
$translate.instant('Month09'),
$translate.instant('Month10'),
$translate.instant('Month11'),
$translate.instant('Month12')
];
//认证结果
$scope.cetificationResultList = [
{ id: 999, name: $translate.instant('AllTheItems') },
{ id: 1, name: $translate.instant('CertificationPass') },
{ id: 2, name: $translate.instant('CertificationNotPass') }
];
//发票类型
$scope.invoiceTypeList = [
{ id: 999, name: $translate.instant('AllTheItems') },
{ id: enums.invoiceType.VATInvoice, name: $translate.instant('VATInvoice') },
{ id: enums.invoiceType.FreightTransport, name: $translate.instant('FreightTransport') },
{ id: enums.invoiceType.MotorVehicle, name: $translate.instant('MotorVehicle') },
{ id: enums.invoiceType.AgriculturalProduct, name: $translate.instant('AgriculturalProduct') }
];
$scope.InvoiceType = {};
$scope.CertificationStatus = {};
//初始化期间
var initPeriods = function () {
var curMonth = new Date().getMonth() + 1;
$scope.queryParams = {
pageInfo: {},
periodStart: '',
periodEnd: '',
orgId: ''
};
};
//从数据库中load数据
var loadBalanceSheetDataFromDB = function (pageIndex) {
initBalanceSheetPagination();
$scope.curBalanceSheetPage = pageIndex;
//初始化查询信息
$scope.queryParams.pageInfo = {
totalCount: $scope.queryBalanceSheetResult.pageInfo.totalCount,
pageIndex: pageIndex,
pageSize: $scope.queryBalanceSheetResult.pageInfo.pageSize,
totalPage: 0
};
$scope.queryParams.orgId = vatSessionService.project.organizationID;
$scope.getDataFromDatabase($scope.queryParams);
};
$scope.getDataFromDatabase = function (queryParams){
vatPreviewService.getBalanceSheetDataForDisplay(queryParams).success(function (data) {
if (data) {
// minDate = data.
var index = 1;
data.list.forEach(function (v) {
v.index = index++;
});
$scope.gridOptions.data = data.list;
$scope.queryBalanceSheetResult.pageInfo = data;
computeBalanceSheetPage();
$scope.ledgerName = data.list[0].ledgerName;
$scope.currencyCode = data.list[0].ledgerCurrencyCode;
$scope.status = data.list[0].status;
$scope.importDate = $filter('date')(data.list[0].date, "yyyy-MM-dd hh:mm:ss");
}
});
};
//点击任意一页加载数据事件
var loadIncomeInvoiceDataByPage = function (pageIndex) {
loadBalanceSheetDataFromDB(pageIndex);
};
//计算页数,创建分页栏
var computeBalanceSheetPage = function () {
if ($scope.queryBalanceSheetResult.pageInfo && $scope.queryBalanceSheetResult.pageInfo.total > 0) {
var totalPage = parseInt($scope.queryBalanceSheetResult.pageInfo.total / $scope.pageSize);
totalPage = $scope.queryBalanceSheetResult.pageInfo.totalCount % $scope.pageSize == 0 ? totalPage : totalPage + 1;
//计算本页记录数
if ($scope.queryBalanceSheetResult.pageInfo.pageNum === totalPage) {
$scope.curPageItemCount = $scope.queryBalanceSheetResult.pageInfo.total % $scope.pageSize;
}
else {
$scope.curPageItemCount = $scope.pageSize;
}
$scope.queryBalanceSheetResult.pageInfo.totalPage = totalPage;
var createPage = $("#totalInvoicePage").createPage({
pageCount: totalPage,
current: $scope.curBalanceSheetPage,
backFn: function (p) {
//单击回调方法,p是当前页码
loadIncomeInvoiceDataByPage(p);
}
});
$('#totalInvoicePage').css('display', 'inline-block');
} else {
//如果查询结果为0,则直接设置本页记录数为0
$scope.curPageItemCount = 0;
var createPage = $("#totalInvoicePage").createPage({
pageCount: 0,
current: $scope.curBalanceSheetPage,
backFn: function (p) {
//单击回调方法,p是当前页码
loadIncomeInvoiceDataByPage(p);
}
});
$('#totalInvoicePage').css('display', 'inline-block');
}
};
//初始化分页信息
var initBalanceSheetPagination = function () {
$scope.queryBalanceSheetResult = {
list: [],
pageInfo: {
totalCount: -1,
pageIndex: 1,
pageSize: constant.pagesize,
totalPage: 0,
}
}
$scope.curBalanceSheetPage = 1;
};
//将选择了的查询条件显示在grid上方
var doDataFilter = function (removeData) {
if ($scope.queryParams.periodStart > $scope.queryParams.periodEnd) {
$scope.queryParams.periodEnd = $scope.queryParams.periodStart;
}
//设置需要去掉的查询条件的值为空
if (!PWC.isNullOrEmpty(removeData)) {
var removeItem = removeData.split("|");
removeItem.forEach(function (v) {
$scope.queryParams[v] = null;
//如果去掉了发票代码的查询条件,则将查询条件设置为'',因为是字符串,设置为null会导致查询结果错误
if ($scope.queryParams.invoiceCode === null) {
$scope.queryParams.invoiceCode = '';
}
//如果去掉了发票号码的查询条件,则将查询条件设置为'',因为是字符串,设置为null会导致查询结果错误
if ($scope.queryParams.invoiceNumber === null) {
$scope.queryParams.invoiceNumber = '';
}
//如果去掉了供货方税号的查询条件,则将查询条件设置为'',因为是字符串,设置为null会导致查询结果错误
if ($scope.queryParams.sellerTaxNumber === null) {
$scope.queryParams.sellerTaxNumber = '';
}
if ($scope.queryParams.invoiceType === null) {
$scope.InvoiceType.selected = undefined;
}
if ($scope.queryParams.certificationStatus === null) {
$scope.CertificationStatus.selected = undefined;
}
});
}
//设置发票类型和认证结果
if ($scope.InvoiceType.selected !== undefined)
$scope.queryParams.invoiceType = $scope.InvoiceType.selected.id;
else
$scope.queryParams.invoiceType = null;
if ($scope.CertificationStatus.selected !== undefined)
$scope.queryParams.certificationStatus = $scope.CertificationStatus.selected.id;
else
$scope.queryParams.certificationStatus = null;
// 将查询条件加入到grid上方
var crits = $scope.queryParams;
//定义查询条件数组用于存放已选的查询条件
$scope.criteriaList = [];
var crit = [];
//认证日期
if (!PWC.isNullOrEmpty(crits.certificationDateStart) && !PWC.isNullOrEmpty(crits.certificationDateEnd)) {
if (new Date(crits.certificationDateStart.replace(/[\.-]/g, '/')) > new Date(crits.certificationDateEnd.replace(/[\.-]/g, '/'))) {
$scope.criteriaList = [];
SweetAlert.warning($translate.instant('InvoiceDateQueryError'));
return;
}
crit = new Object;
crit.name = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateStart + "-" + crits.certificationDateEnd;;
crit.fullName = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateStart + "-" + crits.certificationDateEnd;
crit.valueFrom = crits.certificationDateStart;
crit.valueTo = crits.certificationDateEnd;
crit.propertyName = "certificationDateStart|certificationDateEnd";
$scope.criteriaList.push(crit);
} else if (!PWC.isNullOrEmpty(crits.certificationDateStart) && PWC.isNullOrEmpty(crits.invoiceDateEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateStart + $translate.instant('After');
crit.fullName = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateStart + $translate.instant('After');
crit.valueFrom = crits.certificationDateStart;
crit.valueTo = crits.certificationDateEnd;
crit.propertyName = "certificationDateStart|certificationDateEnd";
$scope.criteriaList.push(crit);
}
else if (PWC.isNullOrEmpty(crits.certificationDateStart) && !PWC.isNullOrEmpty(crits.certificationDateEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateEnd + $translate.instant('Before');
crit.fullName = $translate.instant('InvoiceRZRQQuery') + crits.certificationDateEnd + $translate.instant('Before');
crit.valueFrom = crits.certificationDateStart;
crit.valueTo = crits.certificationDateEnd;
crit.propertyName = "certificationDateStart|certificationDateEnd";
$scope.criteriaList.push(crit);
}
//发票代码
if (!PWC.isNullOrEmpty(crits.invoiceCode)) {
crit = new Object;
crit.name = $translate.instant('InvoiceFPDMQuery') + PWC.limitString(crits.invoiceCode, 10);
crit.fullName = $translate.instant('InvoiceFPDMQuery') + crits.invoiceCode;
crit.valueFrom = crits.invoiceCode;
crit.propertyName = "invoiceCode";
$scope.criteriaList.push(crit);
}
//发票号码
if (!PWC.isNullOrEmpty(crits.invoiceNumber)) {
crit = new Object;
crit.name = $translate.instant('InvoiceFPHMQuery') + PWC.limitString(crits.invoiceNumber, 10);
crit.fullName = $translate.instant('InvoiceFPHMQuery') + crits.invoiceNumber;
crit.valueFrom = crits.invoiceNumber;
crit.propertyName = "invoiceNumber";
$scope.criteriaList.push(crit);
}
//销方识别号
if (!PWC.isNullOrEmpty(crits.sellerTaxNumber)) {
crit = new Object;
crit.name = $translate.instant('InvoiceGHFSHQuery') + PWC.limitString(crits.sellerTaxNumber, 10);
crit.fullName = $translate.instant('InvoiceGHFSHQuery') + crits.sellerTaxNumber;
crit.valueFrom = crits.sellerTaxNumber;
crit.propertyName = "sellerTaxNumber";
$scope.criteriaList.push(crit);
}
//金额
if (!PWC.isNullOrEmpty(crits.amountStart) && !PWC.isNullOrEmpty(crits.amountEnd)) {
if (Number(crits.amountStart) > Number(crits.amountEnd)) {
SweetAlert.warning($translate.instant('AmountQueryError'));
return;
}
crit = new Object;
crit.name = $translate.instant('InvoiceJEQuery') + PWC.limitString(crits.amountStart, 5) + ' - ' + PWC.limitString(crits.amountEnd, 5);
crit.fullName = $translate.instant('InvoiceJEQuery') + crits.amountStart + ' - ' + crits.amountEnd;
crit.valueFrom = crits.amountStart;
crit.valueTo = crits.amountEnd;
crit.propertyName = "amountStart|amountEnd";
$scope.criteriaList.push(crit);
}
else if (!PWC.isNullOrEmpty(crits.amountStart) && PWC.isNullOrEmpty(crits.amountEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceJEQuery') + PWC.limitString(crits.amountStart, 5) + $translate.instant('MoreThan');
crit.fullName = $translate.instant('InvoiceJEQuery') + crits.amountStart + $translate.instant('MoreThan');
crit.valueFrom = crits.amountStart;
crit.valueTo = crits.amountEnd;
crit.propertyName = "amountStart|amountEnd";
$scope.criteriaList.push(crit);
}
else if (PWC.isNullOrEmpty(crits.amountStart) && !PWC.isNullOrEmpty(crits.amountEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceJEQuery') + PWC.limitString(crits.amountEnd, 5) + $translate.instant('LessThan');
crit.fullName = $translate.instant('InvoiceJEQuery') + crits.amountEnd + $translate.instant('LessThan');
crit.valueFrom = crits.amountStart;
crit.valueTo = crits.amountEnd;
crit.propertyName = "amountStart|amountEnd";
$scope.criteriaList.push(crit);
}
//税额
if (!PWC.isNullOrEmpty(crits.taxAmountStart) && !PWC.isNullOrEmpty(crits.taxAmountEnd)) {
if (Number(crits.taxAmountStart) > Number(crits.taxAmountEnd)) {
SweetAlert.warning($translate.instant('TaxAmountQueryError'));
return;
}
crit = new Object;
crit.name = $translate.instant('InvoiceSEQuery') + PWC.limitString(crits.taxAmountStart, 5) + ' - ' + PWC.limitString(crits.taxAmountEnd, 5);
crit.fullName = $translate.instant('InvoiceSEQuery') + crits.taxAmountStart + ' - ' + crits.taxAmountEnd;
crit.valueFrom = crits.taxAmountStart;
crit.valueTo = crits.taxAmountEnd;
crit.propertyName = "taxAmountStart|taxAmountEnd";
$scope.criteriaList.push(crit);
}
else if (!PWC.isNullOrEmpty(crits.taxAmountStart) && PWC.isNullOrEmpty(crits.taxAmountEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceSEQuery') + PWC.limitString(crits.taxAmountStart, 5) + $translate.instant('MoreThan');
crit.fullName = $translate.instant('InvoiceSEQuery') + crits.taxAmountStart + $translate.instant('MoreThan');
crit.valueFrom = crits.taxAmountStart;
crit.valueTo = crits.taxAmountEnd;
crit.propertyName = "taxAmountStart|taxAmountEnd";
$scope.criteriaList.push(crit);
}
else if (PWC.isNullOrEmpty(crits.taxAmountStart) && !PWC.isNullOrEmpty(crits.taxAmountEnd)) {
crit = new Object;
crit.name = $translate.instant('InvoiceSEQuery') + PWC.limitString(crits.taxAmountEnd, 5) + $translate.instant('LessThan');
crit.fullName = $translate.instant('InvoiceSEQuery') + crits.taxAmountEnd + $translate.instant('LessThan');
crit.valueFrom = crits.taxAmountStart;
crit.valueTo = crits.taxAmountEnd;
crit.propertyName = "taxAmountStart|taxAmountEnd";
$scope.criteriaList.push(crit);
}
//发票类型
if (!PWC.isNullOrEmpty(crits.invoiceType)) {
crit = new Object;
crit.valueFrom = _.find($scope.invoiceTypeList, function (v) {
return v.id === crits.invoiceType;
}).name;
crit.name = $translate.instant('InvoiceFPLXQuery') + crit.valueFrom;
crit.fullName = $translate.instant('InvoiceFPLXQuery') + crit.valueFrom;
crit.propertyName = "invoiceType";
$scope.criteriaList.push(crit);
}
//认证结果
if (!PWC.isNullOrEmpty(crits.certificationStatus)) {
crit = new Object;
crit.valueFrom = _.find($scope.cetificationResultList, function (v) {
return v.id === crits.certificationStatus;
}).name;
crit.name = $translate.instant('InvoiceRZJGQuery') + crit.valueFrom;
crit.fullName = $translate.instant('InvoiceRZJGQuery') + crit.valueFrom;
crit.propertyName = "certificationStatus";
$scope.criteriaList.push(crit);
}
// add to Criteria List for display on top of the grid:
//********************************************************************************
var criteria = JSON.stringify($scope.queryParams);
if (browserService.isIE() || browserService.isEdge())
criteria = encodeURIComponent(criteria);
// countTotal();
loadBalanceSheetDataFromDB(1);
if ($scope.criteriaList.length > 6) {
$scope.criteriaListFirstRow = $scope.criteriaList.slice(0, 6);
$scope.criteriaListSecondRow = $scope.criteriaList.slice(6, $scope.criteriaList.length);
}
else {
$scope.criteriaListFirstRow = $scope.criteriaList.slice(0, $scope.criteriaList.length);
}
$('.filter-button').popover("hide");
};
//去掉所有的查询条件,重新load数据
var doDataFilterReset = function () {
$scope.queryParams = {
pageInfo: {},
periodStart: '',
periodEnd: '',
certificationDateStart: null,
certificationDateEnd: null,
invoiceCode: '',
invoiceNumber: '',
sellerTaxNumber: '',
amountStart: null,
amountEnd: null,
invoiceType: null,
taxAmountStart: null,
taxAmountEnd: null,
certificationStatus: null
};
$scope.criteriaList = [];
$scope.queryParams.periodStart = $scope.startMonth;
$scope.queryParams.periodEnd = $scope.endMonth;
loadBalanceSheetDataFromDB(1);
$('.filter-button').popover("hide");
};
var prepareSummary = function () {
// do something before show popover
};
//在popover打开时执行事件
var showPopover = function () {
$timeout(function () {
initDatePickers();
}, 500);
};
//初始化时间控件
var initDatePickers = function () {
//认证开始时间
var ele1 = $("#certificationDateStart");
ele1.datepicker({
startDate: $scope.startDate,
endDate: $scope.endDate,
language: region,
autoclose: true,//选中之后自动隐藏日期选择框
clearBtn: true,//清除按钮
todayBtn: false,//今日按钮
format: $scope.dateFormat//日期格式,详见 http://bootstrap-datepicker.readthedocs.org/en/release/options.html#format
});
ele1.datepicker("setDate", $scope.queryParams.certificationDateStart);
//认证结束时间
var ele2 = $("#certificationDateEnd");
ele2.datepicker({
startDate: $scope.startDate,
endDate: $scope.endDate,
language: region,
autoclose: true,//选中之后自动隐藏日期选择框
clearBtn: true,//清除按钮
todayBtn: false,//今日按钮
format: $scope.dateFormat//日期格式,详见 http://bootstrap-datepicker.readthedocs.org/en/release/options.html#format
})
ele2.datepicker("setDate", $scope.queryParams.certificationDateEnd);
//初始化已选择的发票类型和认证结果
$scope.InvoiceType.selected = _.find($scope.invoiceTypeList, function (v) {
return v.id == $scope.queryParams.invoiceType;
})
$scope.CertificationStatus.selected = _.find($scope.cetificationResultList, function (v) {
return v.id == $scope.queryParams.certificationStatus;
})
};
//导出进项发票数据
var downloadBS = function () {
vatPreviewService.initExportBalanceSheetData($scope.queryParams).success(function (data, status, headers) {
if(status===204){
SweetAlert.warning("没有数据可以下载");
return;
}
vatExportService.exportToExcel(data, status, headers, '资产负债表信息');
}).error(function () {
SweetAlert.error($translate.instant('PleaseContactAdministrator'));
});
};
(function initialize() {
$log.debug('VatPreviewInputInvoiceController.ctor()...');
$('#input-invoice-period-picker').focus(function () {
$('.filter-button').popover("hide");
});
//初始化month-picker
$('#input-invoice-period-picker').rangePicker({
minDate: minDate,
maxDate: maxDate,
setDate: setDate,
months: $scope.monthList,//['1月', '2月', '3月', '4月', '5月', '6月', '7月', '8月', '9月', '10月', '11月', '12月'],
ConfirmBtnText: $translate.instant('Confirm'),
CancelBtnText: $translate.instant('ButtonCancel')
})
.on('datePicker.done', function (e, result) {
//开始月份
var startMonth = result[0][1] * 100 + result[0][0];
//结束月份
var endMonth = result[1][1] * 100 + result[1][0];
$scope.startMonth = startMonth;
$scope.endMonth = endMonth;
$scope.queryParams.periodStart = startMonth;
$scope.queryParams.periodEnd = endMonth;
loadBalanceSheetDataFromDB(1);
});
$scope.gridOptions = {
rowHeight: constant.UIGrid.rowHeight,
selectionRowHeaderWidth: constant.UIGrid.rowHeight,
// expandableRowTemplate: '<div ui-grid="row.entity.subGridOptions" style="height:150px;"></div>',
virtualizationThreshold: 50,//默认加载50条数据,避免在数据展示时,只显示前面4条
enableSorting: false,
enableColumnMenus: false,
enableHorizontalScrollbar : 1,
columnDefs: [
{
name: $translate.instant('ProjectName'),
cellTemplate: '<div class="ui-grid-cell-contents"><span>{{row.entity.itemName}}<span></div>'
},
{
name: $translate.instant('EndingBalance'),
headerCellClass:'rightHeader',
cellTemplate: '<div class="ui-grid-cell-contents" style="text-align: right"><span>{{row.entity.endBal | number:2}}<span></div>'
},
{
name: $translate.instant('InitialBalance'),
headerCellClass:'rightHeader',
cellTemplate: '<div class="ui-grid-cell-contents" style="text-align: right"><span>{{row.entity.begBal | number:2}}</span></div>'
}
]
};
$scope.doDataFilter = doDataFilter;
$scope.doDataFilterReset = doDataFilterReset;
$scope.prepareSummary = prepareSummary;
$scope.showPopover = showPopover;
$scope.downloadBS = downloadBS;
initPeriods();
initBalanceSheetPagination();
//初始化查询条件-期间范围
$scope.queryParams.periodStart = vatSessionService.year * 100 + vatSessionService.month;
$scope.queryParams.periodEnd = vatSessionService.year * 100 + vatSessionService.month;
$scope.queryParams.orgId = vatSessionService.project.organizationID;
if($rootScope.currentLanguage === 'en-us'){
$('.periodInput')[0].style.left = "260px";
}else{
$('.periodInput')[0].style.left = "150px";
}
loadBalanceSheetDataFromDB(1);
})();
}
]);
<div class="vat-preview-the-balance-sheet" 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="OffBalanceSheetTitle" 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="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('vatPreviewTheBalanceSheet', ['$log', 'browserService', '$translate', 'region', '$timeout',
function ($log, browserService, $translate, region, $timeout) {
$log.debug('vatPreviewTheBalanceSheet.ctor()...');
return {
restrict: 'E',
templateUrl: '/app/vat/preview/vat-preview-the-balance-sheet/vat-preview-the-balance-sheet.html' + '?_=' + Math.random(),
scope: {},
controller: 'VatPreviewTheBalanceSheetController',
link: function ($scope, element) {
}
}
}
]);
\ No newline at end of file
@import "~/app-resources/less/theme.less";
.vat-preview-the-balance-sheet {
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;
}
}
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