Commit 07fd9072 authored by zhkwei's avatar zhkwei

Merge remote-tracking branch 'origin/dev_mysql' into dev_mysql

parents 23766b40 e6509676
package pwc.taxtech.atms.controller;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import pwc.taxtech.atms.dpo.PagingDto;
import pwc.taxtech.atms.dto.ApiResultDto;
import pwc.taxtech.atms.dto.PagingResultDto;
......
......@@ -5,14 +5,9 @@ import com.github.pagehelper.PageInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.http.MediaType;
import org.springframework.web.bind.annotation.*;
import pwc.taxtech.atms.dto.vatdto.BalanceSheetParam;
import pwc.taxtech.atms.dto.vatdto.JournalEntryParam;
import pwc.taxtech.atms.dto.vatdto.ProfitLossStatementParam;
import pwc.taxtech.atms.dto.vatdto.dd.BalanceSheetDto;
import pwc.taxtech.atms.dto.vatdto.dd.JournalEntryDto;
import pwc.taxtech.atms.dto.vatdto.dd.ProfitLossStatementDto;
import pwc.taxtech.atms.dto.vatdto.*;
import pwc.taxtech.atms.dto.vatdto.dd.*;
import pwc.taxtech.atms.dto.vatdto.dd.TrialBalanceDto;
import pwc.taxtech.atms.dto.vatdto.TrialBalanceParam;
import pwc.taxtech.atms.service.impl.DataPreviewSerivceImpl;
import javax.servlet.http.HttpServletResponse;
......@@ -48,6 +43,12 @@ public class DataPreviewController extends BaseController {
return dataPreviewSerivceImpl.getJEDataForDisplay(param);
}
@PostMapping("getCFDataForDisplay")
public PageInfo<CashFlowDto> getCFDataForDisplay(@RequestBody CashFlowParam param) {
logger.debug(String.format("现金流量表查询 Condition:%s", JSON.toJSONString(param)));
return dataPreviewSerivceImpl.getCFDataForDisplay(param);
}
@PostMapping("getBSDataForDisplay")
public PageInfo<BalanceSheetDto> getBSDataForDisplay(@RequestBody BalanceSheetParam param) {
logger.debug(String.format("资产负债表查询 Condition:%s", JSON.toJSONString(param)));
......
package pwc.taxtech.atms.dto.vatdto;
import pwc.taxtech.atms.dpo.PagingDto;
public class CashFlowParam {
private PagingDto pageInfo;
private String orgId;
private Integer periodStart;
private Integer periodEnd;
public PagingDto getPageInfo() {
return pageInfo;
}
public void setPageInfo(PagingDto pageInfo) {
this.pageInfo = pageInfo;
}
public String getOrgId() {
return orgId;
}
public void setOrgId(String orgId) {
this.orgId = orgId;
}
public Integer getPeriodStart() {
return periodStart;
}
public void setPeriodStart(Integer periodStart) {
this.periodStart = periodStart;
}
public Integer getPeriodEnd() {
return periodEnd;
}
public void setPeriodEnd(Integer periodEnd) {
this.periodEnd = periodEnd;
}
}
......@@ -8,13 +8,8 @@ import pwc.taxtech.atms.dto.vatdto.*;
import pwc.taxtech.atms.dto.vatdto.dd.*;
import pwc.taxtech.atms.dto.vatdto.dd.TrialBalanceDto;
import pwc.taxtech.atms.thirdparty.ExcelUtil;
import pwc.taxtech.atms.vat.dao.BalanceSheetMapper;
import pwc.taxtech.atms.vat.dao.JournalEntryMapper;
import pwc.taxtech.atms.vat.dao.ProfitLossStatementMapper;
import pwc.taxtech.atms.vat.dao.TrialBalanceMapper;
import pwc.taxtech.atms.vat.dpo.BalanceSheetCondition;
import pwc.taxtech.atms.vat.dpo.JournalEntryCondition;
import pwc.taxtech.atms.vat.dpo.ProfitLossStatementCondition;
import pwc.taxtech.atms.vat.dao.*;
import pwc.taxtech.atms.vat.dpo.*;
import pwc.taxtech.atms.vat.dpo.TrialBalanceCondition;
import pwc.taxtech.atms.vat.entity.*;
......@@ -45,6 +40,9 @@ public class DataPreviewSerivceImpl extends BaseService {
@Resource
private BalanceSheetMapper balanceSheetMapper;
@Resource
private CashFlowMapper cashFlowMapper;
public PageInfo<TrialBalanceDto> getTBDataForDisplay(TrialBalanceParam param) {
......@@ -86,6 +84,20 @@ public class DataPreviewSerivceImpl extends BaseService {
return new PageInfo<>(profitLossDtos);
}
public PageInfo<CashFlowDto> getCFDataForDisplay(CashFlowParam param) {
CashFlowCondition condition = new CashFlowCondition();
beanUtil.copyProperties(param, condition);
PageHelper.startPage(param.getPageInfo().getPageIndex(), param.getPageInfo().getPageSize());
List<CashFlow> cashFlows = cashFlowMapper.selectByCondition(condition);
List<CashFlowDto> cashFlowDtos = Lists.newArrayList();
cashFlows.forEach(cf -> {
CashFlowDto cashFlowDto = new CashFlowDto();
beanUtil.copyProperties(cf, cashFlowDto);
cashFlowDtos.add(cashFlowDto);
});
return new PageInfo<>(cashFlowDtos);
}
public PageInfo<JournalEntryDto> getJEDataForDisplay(JournalEntryParam param) {
JournalEntryCondition condition = new JournalEntryCondition();
......
......@@ -35,6 +35,7 @@ import pwc.taxtech.atms.entity.ServiceTypeExample;
import pwc.taxtech.atms.entity.StandardAccountExample;
import pwc.taxtech.atms.entity.TemplateGroupExample;
import pwc.taxtech.atms.service.impl.DistributedIdService;
import pwc.taxtech.atms.vat.dao.CashFlowMapper;
import pwc.taxtech.atms.vat.dao.PeriodTemplateMapper;
@WebAppConfiguration
......@@ -153,6 +154,8 @@ public abstract class CommonIT {
protected TaxRuleSettingMapper taxRuleSettingMapper;
@Autowired
protected PeriodTemplateMapper periodTemplateMapper;
@Autowired
protected CashFlowMapper cashFlowMapper;
protected void execSqlFile(String sqlFilePath) {
......
package pwc.taxtech.atms.common;
import java.math.BigDecimal;
import java.util.Date;
import org.apache.commons.io.FileUtils;
import org.apache.commons.lang3.StringUtils;
......@@ -6,12 +8,14 @@ import org.apache.commons.lang3.math.NumberUtils;
import org.apache.poi.openxml4j.exceptions.InvalidFormatException;
import org.apache.poi.ss.usermodel.*;
import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired;
import pwc.taxtech.atms.CommonIT;
import pwc.taxtech.atms.entity.StandardAccount;
import pwc.taxtech.atms.invoice.InputInvoiceDetailMapper;
import pwc.taxtech.atms.invoice.InputInvoiceMapper;
import pwc.taxtech.atms.invoice.OutputInvoiceDetailMapper;
import pwc.taxtech.atms.invoice.OutputInvoiceMapper;
import pwc.taxtech.atms.service.impl.DistributedIdService;
import pwc.taxtech.atms.vat.entity.*;
import javax.annotation.Resource;
......@@ -30,6 +34,36 @@ public class DataInitTest extends CommonIT {
private OutputInvoiceMapper outputInvoiceMapper;
@Resource
private OutputInvoiceDetailMapper outputInvoiceDetailMapper;
@Resource
private DistributedIdService distributedIdService;
@Test
public void insertCashFlows() {
for(int i=0;i<100;i++){
CashFlow account = new CashFlow();
account.setId(distributedIdService.nextId());
account.setDate(new Date());
account.setSource("我来自哪"+i);
account.setPeriod(i);
account.setStatus("这都是啥"+i);
account.setLedgerId("账套ID"+i);
account.setLedgerName("账套名称"+i);
account.setLedgerCurrencyCode("账套币种"+i);
account.setEntityCode("机构编码"+i);
account.setEntityName("机构名称"+i);
account.setCategory("主体性质"+i);
account.setFrequency("频度"+i);
account.setItemName("项目中文名称"+i);
account.setItemName2("项目英文名称"+i);
account.setPeriodAmt(BigDecimal.valueOf(i));
account.setYtdAmt(BigDecimal.valueOf(i));
account.setCreateTime(new Date());
account.setUpdateTime(new Date());
account.setCreateBy("系统");
account.setUpdateBy("系统");
cashFlowMapper.insert(account);
}
}
@Test
public void tt() {
......
jdbc_url=jdbc:sqlserver://192.168.1.102:1434;DatabaseName=TaxAdmin8
jdbc_user=sa
jdbc_password=atmsunittestSQL
#jdbc_url=jdbc:sqlserver://192.168.1.102:1434;DatabaseName=TaxAdmin8
#jdbc_user=sa
#jdbc_password=atmsunittestSQL
jdbc_url=jdbc:mysql://10.158.230.16:3306/tax_admin_didi?useUnicode=true&amp;characterEncoding=utf-8&amp;zeroDateTimeBehavior=convertToNull&amp;allowMultiQueries=true&amp;useSSL=false
jdbc_user=root
jdbc_password=taxadmin2018
mail_jdbc_url=jdbc:sqlserver://192.168.1.102:1434;DatabaseName=MAILMaster
mail_jdbc_user=sa
......
package pwc.taxtech.atms.vat.dao;
import java.util.List;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
import pwc.taxtech.atms.MyVatMapper;
import pwc.taxtech.atms.vat.dpo.CashFlowCondition;
import pwc.taxtech.atms.vat.dpo.ProfitLossStatementCondition;
import pwc.taxtech.atms.vat.entity.CashFlow;
import pwc.taxtech.atms.vat.entity.CashFlowExample;
import pwc.taxtech.atms.vat.entity.ProfitLossStatement;
@Mapper
public interface CashFlowMapper extends MyVatMapper {
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
long countByExample(CashFlowExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
int deleteByExample(CashFlowExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
int deleteByPrimaryKey(Long id);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
int insert(CashFlow record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
int insertSelective(CashFlow record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
List<CashFlow> selectByExampleWithRowbounds(CashFlowExample example, RowBounds rowBounds);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
List<CashFlow> selectByExample(CashFlowExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
CashFlow selectByPrimaryKey(Long id);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
int updateByExampleSelective(@Param("record") CashFlow record, @Param("example") CashFlowExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
int updateByExample(@Param("record") CashFlow record, @Param("example") CashFlowExample example);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
int updateByPrimaryKeySelective(CashFlow record);
/**
* This method was generated by MyBatis Generator.
* This method corresponds to the database table cash_flow
*
* @mbg.generated
*/
int updateByPrimaryKey(CashFlow record);
List<CashFlow> selectByCondition(@Param("cfCondition") CashFlowCondition condition);
}
\ No newline at end of file
package pwc.taxtech.atms.vat.dpo;
import pwc.taxtech.atms.dpo.PagingDto;
public class CashFlowCondition {
private PagingDto pageInfo;
private String orgId;
private Integer periodStart;
private Integer periodEnd;
public PagingDto getPageInfo() {
return pageInfo;
}
public void setPageInfo(PagingDto pageInfo) {
this.pageInfo = pageInfo;
}
public String getOrgId() {
return orgId;
}
public void setOrgId(String orgId) {
this.orgId = orgId;
}
public Integer getPeriodStart() {
return periodStart;
}
public void setPeriodStart(Integer periodStart) {
this.periodStart = periodStart;
}
public Integer getPeriodEnd() {
return periodEnd;
}
public void setPeriodEnd(Integer periodEnd) {
this.periodEnd = periodEnd;
}
}
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="pwc.taxtech.atms.vat.dao.CashFlowMapper">
<sql id="QueryCondition">
1 = 1
<if test="@com.github.pagehelper.util.StringUtil@isNotEmpty(cfCondition.orgId)">
AND entity_code= #{cfCondition.orgId,jdbcType=INTEGER}
</if>
<if test="cfCondition.periodStart!=null">
AND period &gt;= #{cfCondition.periodStart,jdbcType=INTEGER}
</if>
<if test="cfCondition.periodEnd!=null">
AND period &lt;= #{cfCondition.periodEnd,jdbcType=INTEGER}
</if>
</sql>
<!--<sql id="Base_Column_List">-->
<!--&lt;!&ndash;-->
<!--WARNING - @mbg.generated-->
<!--This element is automatically generated by MyBatis Generator, do not modify.-->
<!--&ndash;&gt;-->
<!--id, `date`, `source`, period, `status`, ledger_id, ledger_name, ledger_currency_code,-->
<!--entity_code, entity_name, category, frequency, item_name, item_name2, period_amt,-->
<!--ytd_amt, create_time, update_time-->
<!--</sql>-->
<select id="selectByCondition" parameterType="pwc.taxtech.atms.vat.dpo.CashFlowCondition" resultMap="BaseResultMap">
<!--
WARNING - @mbg.generated
This element is automatically generated by MyBatis Generator, do not modify.
-->
select
<include refid="Base_Column_List" />
from cash_flow
where
<include refid="QueryCondition"/>
</select>
</mapper>
\ No newline at end of file
......@@ -215,6 +215,7 @@
"BankAccountCN": "银行账号",
"BankAndAccountColon": "Bank and account number:",
"BankName": "Bank Name",
"ITME":"ITME",
"BankNameColon": "Bank Name:",
"BasicDataCheck": "Basic Data Dalidation",
"BdChoseEvidenceTitle": "Please Choose Evidence Document:",
......
......@@ -2022,6 +2022,7 @@
"LocalCurrencyCreditAmount":"本位币贷方金额",
"CashFlowEntry":"现金流量表项",
"City":"城市",
"ITME":"ITME",
"TransactionDate":"交易日期",
"BankAccountNumber":"对方银行账号",
"BankSerialNumber":"银行流水号",
......
......@@ -186,6 +186,12 @@
initExportTBData: function (queryParams) {
return $http.post('/dataPreview/exportTBData/get', queryParams, apiConfig.create({ responseType: 'arraybuffer' }));
},
getCFDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getCFDataForDisplay', queryParams, apiConfig.createVat());
},
initExportCFData: function (queryParams) {
return $http.post('/dataPreview/exportCFData/get', queryParams, apiConfig.create({ responseType: 'arraybuffer' }));
},
getPLDataForDisplay: function (queryParams) {
return $http.post('/dataPreview/getPLDataForDisplay', queryParams, apiConfig.createVat());
},
......
<div class="popover">
<div class="arrow"></div>
<div class="popover-content">
<div>
<table class="table table-responsive">
<tr>
<td>
<span translate="InvoiceRZRQQuery"></span>
<input class="form-control input-width-small" id="certificationDateStart" ng-model="queryParams.certificationDateStart" />&nbsp;-&nbsp;
<input class="form-control input-width-small" id="certificationDateEnd" ng-model="queryParams.certificationDateEnd" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceFPDMQuery"></span>
<input class="form-control input-width-middle" type="text" id="invoiceCode" ng-model="queryParams.invoiceCode" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceFPHMQuery"></span>
<input class="form-control input-width-middle" type="text" id="invoiceNumber" ng-model="queryParams.invoiceNumber" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceGHFSHQuery"></span>
<input class="form-control input-width-middle" type="text" id="sellerTaxNumber" ng-model="queryParams.sellerTaxNumber" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceJEQuery"></span>
<input class="form-control input-width-small" type="text" id="amountStart" ng-model="queryParams.amountStart" onkeyup="PWC.inputNumberFormat(this);" />&nbsp;-&nbsp;
<input class="form-control input-width-small" type="text" id="amountEnd" ng-model="queryParams.amountEnd" onkeyup="PWC.inputNumberFormat(this);" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceSEQuery"></span>
<input class="form-control input-width-small" type="text" id="taxAmountStart" ng-model="queryParams.taxAmountStart" onkeyup="PWC.inputNumberFormat(this);" />&nbsp;-&nbsp;
<input class="form-control input-width-small" type="text" id="taxAmountEnd" ng-model="queryParams.taxAmountEnd" onkeyup="PWC.inputNumberFormat(this);" />
</td>
</tr>
<tr>
<td>
<span translate="InvoiceFPLXQuery"></span>
<div class="ui-select-has-border input-width-middle">
<ui-select ng-model="InvoiceType.selected" search-enabled="false" style="text-align:left;" class="input-width-middle">
<ui-select-match>{{$select.selected.name}}</ui-select-match>
<ui-select-choices repeat="item in invoiceTypeList | propsFilter: {name: $select.search}">
<div title="{{item.name}}" ng-bind-html="item.name"></div>
</ui-select-choices>
</ui-select>
</div>
</td>
</tr>
<tr>
<td>
<span translate="InvoiceRZJGQuery"></span>
<div class="ui-select-has-border input-width-middle">
<ui-select ng-model="CertificationStatus.selected" search-enabled="false" style="text-align: left; " class="input-width-middle">
<ui-select-match>{{$select.selected.name}}</ui-select-match>
<ui-select-choices repeat="item in cetificationResultList | propsFilter: {name: $select.search}">
<div title="{{item.name}}" ng-bind-html="item.name"></div>
</ui-select-choices>
</ui-select>
</div>
</td>
</tr>
</table>
</div>
<div class="row">
<div style="float:right;margin-right:10px;">
<button class="btn btn-default btn-primary" ng-click="doDataFilter('')">
<span class="fa fa-chevron-down" aria-hidden="true"> </span> <span translate="Confirm"></span>
</button>
<button class="btn btn-default margin-right10" ng-click="doDataFilterReset()">
<span class="fa fa-times" aria-hidden="true"> </span> <span translate="Reset"></span>
</button>
</div>
</div>
</div>
</div>
<div class="vat-preview-cash-flow" id="mainPreviewDiv">
<div class="top-area-wrapper" style="margin-top: 10px">
<span translate="CashFlowDDTitle" class="text-bold"></span> &nbsp;&nbsp;|&nbsp;&nbsp;<span class="text-bold" translate="InvoiceQJ"></span>
<input type="text" class="form-control input-width-middle" style="position: relative; top: -30px; left: 130px;" id="input-invoice-period-picker" />
<span ng-click="downloadInputInvoice()" style="position: relative; top: -13px; left: 95%;"><i class="fa fa-file-excel-o" aria-hidden="true"></i>{{'ExportBtn' | translate}}</span>
</div>
<div style="margin-bottom: 10px;margin-left: 20px;margin-top: 10px;">
账套名称:<span class="numAmount">{{ledgerNameFirst}}</span>&nbsp;&nbsp;&nbsp;
账套币种:<span class="numAmount">{{ledgerCurrencyCodeFirst}}</span>&nbsp;&nbsp;&nbsp;
是否关账:<span class="numAmount">{{ledgerStatusFirst}}</span>
</div>
<!-- <div id="filterCriteriaDiv" style="max-width:98%;margin-bottom:2px;" ng-show="criteriaList.length>0">
<span class="text-bold margin-left20" translate="FilterCriteriaTags"></span>:
<span class="tag label label-default" ng-repeat="criteria in criteriaListFirstRow">
<span title="{{criteria.fullName}}">
{{criteria.name}}
</span>
<a><i class="remove glyphicon glyphicon-remove-sign glyphicon-white" ng-click="doDataFilter(criteria.propertyName)"></i></a>
</span>
<span ng-if="criteriaList.length>6"><br /></span>
<span ng-if="criteriaList.length>6" style="margin-left: 81px; margin-top: 19px; display: inline-block;"></span>
<span ng-if="criteriaList.length>6" class="tag label label-default" ng-repeat="criteria in criteriaListSecondRow">
<span title="{{criteria.fullName}}">
{{criteria.name}}
</span>
<a><i class="remove glyphicon glyphicon-remove-sign glyphicon-white" ng-click="doDataFilter(criteria.propertyName)"></i></a>
</span>
</div> -->
<div id="mainAreaDiv" class="main-area">
<div class="inputInvoiceGrid" ui-grid-expandable ui-grid="gridOptions">
<div class="watermark" ng-show="!gridOptions.data.length"><span translate="NoDataAvailable"></span></div>
</div>
<div class="pagination-container">
<span>本页{{curPageItemCount}}条记录,共{{queryIncomeInvoiceItemResult.pageInfo.total}}条记录</span>
<div id="totalInvoicePage" class="common-pagination" style="display:none;">
</div>
</div>
</div>
</div>
vatModule.directive('vatPreviewCashFlow', ['$log', 'browserService', '$translate', 'region', '$timeout',
function ($log, browserService, $translate, region, $timeout) {
$log.debug('vatPreviewCashFlow.ctor()...');
return {
restrict: 'E',
templateUrl: '/app/vat/preview/vat-preview-cash-flow/vat-preview-cash-flow.html' + '?_=' + Math.random(),
scope: {},
controller: 'VatPreviewCashFlowController',
link: function ($scope, element) {
}
}
}
]);
\ No newline at end of file
@import "~/app-resources/less/theme.less";
.vat-preview-cash-flow {
background-color: white;
height: 100%;
.numAmount {
padding: 0 3px;
height: 21px;
margin-left: 5px;
/* font-family: 'Arial'; */
font-weight: 600;
border-radius: 2px;
font-style: normal;
outline: none;
border: none;
min-width: 20px;
background-color: #DDDDDD;
color: #AA0000;
}
.top-area-wrapper {
height: 30px;
width: 98%;
margin: 0 20px;
.filter-button {
width: 30px;
margin-top: 16px;
}
.operation-wrapper {
margin: 15px 25px 10px 10px;
span {
cursor: pointer;
}
}
}
.filter-popup-wrapper {
display: none;
}
.margin-left20 {
margin-left: 20px;
}
/*******************************************/
/*Filter Criteria tags:*/
.tag {
font-size: 12px;
padding: .3em .4em .4em;
margin: 0 .1em;
a {
color: #bbb;
cursor: pointer;
opacity: 0.6;
margin: 0 0 0 .3em;
&:hover {
opacity: 1.0;
}
.glyphicon-white {
color: #fff;
margin-bottom: 2px;
}
}
.remove {
vertical-align: bottom;
top: 0;
}
}
/*Filter Criteria tags:*/
/*******************************************/
.main-area {
height: 100%;
margin: 0 20px;
.watermark {
position: absolute;
top: 50%;
transform: translateY(-50%);
opacity: .25;
font-size: 3em;
width: 100%;
text-align: center;
z-index: 1000;
}
.inputInvoiceGrid {
width: 100%;
height: calc(~'100% - 158px');
.ui-grid-header-cell-wrapper .ui-grid-header-cell-row .ui-grid-cell-contents {
height: 40px;
i {
display: none;
}
}
}
}
.form-control {
&:focus {
border-color: transparent;
-webkit-box-shadow: none;
box-shadow: none;
border: 1px solid #ccc;
}
}
.input-width-middle {
width: 217px;
}
}
.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