Skip to content
Projects
Groups
Snippets
Help
Loading...
Sign in / Register
Toggle navigation
T
traffic-front
Project
Project
Details
Activity
Cycle Analytics
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Charts
Issues
0
Issues
0
List
Board
Labels
Milestones
Merge Requests
0
Merge Requests
0
CI / CD
CI / CD
Pipelines
Jobs
Schedules
Charts
Packages
Packages
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
wangxiaoming
traffic-front
Commits
ce3ea281
Commit
ce3ea281
authored
Feb 26, 2019
by
chase
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
收入明细功能代码
parent
0ed8adc2
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
18 changed files
with
1046 additions
and
4 deletions
+1046
-4
RevenueDetailController.java
.../pwc/taxtech/atms/controller/RevenueDetailController.java
+27
-0
RevenueDetailParam.java
...wc/taxtech/atms/dto/revenueDetail/RevenueDetailParam.java
+140
-0
RevenueDetailResult.java
...c/taxtech/atms/dto/revenueDetail/RevenueDetailResult.java
+130
-0
RevenueDetailService.java
...a/pwc/taxtech/atms/service/impl/RevenueDetailService.java
+37
-0
RevenueDetailDto.java
.../src/main/java/pwc/taxtech/atms/dpo/RevenueDetailDto.java
+130
-0
TrialBalanceFinalMapper.java
...ava/pwc/taxtech/atms/vat/dao/TrialBalanceFinalMapper.java
+18
-1
TrialBalanceFinalExtendsMapper.xml
...h/atms/vat/dao/extends/TrialBalanceFinalExtendsMapper.xml
+79
-0
module-part1.js
atms-web/src/main/webapp/Scripts/module-part1.js
+16
-0
vat.json
atms-web/src/main/webapp/app-resources/i18n/zh-CN/vat.json
+27
-0
constant.js
atms-web/src/main/webapp/app/common/utils/constant.js
+2
-1
vat-revenue-config.ctrl.js
.../dataImport/vat-revenue-config/vat-revenue-config.ctrl.js
+1
-1
app-overview.ctrl.js
...in/webapp/app/framework/app-overview/app-overview.ctrl.js
+3
-1
vat-import-layout.ctrl.js
...pp/vat/import/vat-import-layout/vat-import-layout.ctrl.js
+4
-0
vat-revenue-detail.ctrl.js
...t/reduction/vat-revenue-detail/vat-revenue-detail.ctrl.js
+0
-0
vat-revenue-detail.html
.../vat/reduction/vat-revenue-detail/vat-revenue-detail.html
+110
-0
vat-revenue-detail.js
...pp/vat/reduction/vat-revenue-detail/vat-revenue-detail.js
+14
-0
vat-revenue-detail.less
.../vat/reduction/vat-revenue-detail/vat-revenue-detail.less
+303
-0
vat-layout.ctrl.js
...web/src/main/webapp/app/vat/vat-layout/vat-layout.ctrl.js
+5
-0
No files found.
atms-api/src/main/java/pwc/taxtech/atms/controller/RevenueDetailController.java
0 → 100644
View file @
ce3ea281
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
pwc.taxtech.atms.dto.input.CamelPagingResultDto
;
import
pwc.taxtech.atms.dto.revenueDetail.RevenueDetailParam
;
import
pwc.taxtech.atms.dto.revenueDetail.RevenueDetailResult
;
import
pwc.taxtech.atms.service.impl.RevenueDetailService
;
import
javax.annotation.Resource
;
@RestController
@RequestMapping
(
value
=
"api/v1/revenueDetail"
)
public
class
RevenueDetailController
extends
BaseController
{
@Resource
private
RevenueDetailService
revenueDetailService
;
@PostMapping
(
"queryPage"
)
public
CamelPagingResultDto
<
RevenueDetailResult
>
queryPage
(
@RequestBody
RevenueDetailParam
param
)
{
return
new
CamelPagingResultDto
<>(
revenueDetailService
.
queryPage
(
param
));
}
}
atms-api/src/main/java/pwc/taxtech/atms/dto/revenueDetail/RevenueDetailParam.java
0 → 100644
View file @
ce3ea281
package
pwc
.
taxtech
.
atms
.
dto
.
revenueDetail
;
import
pwc.taxtech.atms.dto.input.CamelPagingDto
;
import
java.io.Serializable
;
public
class
RevenueDetailParam
implements
Serializable
{
private
static
final
long
serialVersionUID
=
6544829900689477447L
;
private
CamelPagingDto
pageInfo
;
private
String
accountCode
;
private
String
accountName
;
private
String
type
;
private
String
profitCenterCode
;
private
String
profitCenterName
;
private
Integer
taxOn
;
private
String
productCode
;
private
String
productName
;
private
Integer
category
;
private
String
projectId
;
private
Integer
period
;
private
String
queryDate
;
public
String
getQueryDate
()
{
return
queryDate
;
}
public
void
setQueryDate
(
String
queryDate
)
{
this
.
queryDate
=
queryDate
;
}
public
String
getAccountCode
()
{
return
accountCode
;
}
public
void
setAccountCode
(
String
accountCode
)
{
this
.
accountCode
=
accountCode
;
}
public
String
getAccountName
()
{
return
accountName
;
}
public
void
setAccountName
(
String
accountName
)
{
this
.
accountName
=
accountName
;
}
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
public
String
getProfitCenterCode
()
{
return
profitCenterCode
;
}
public
void
setProfitCenterCode
(
String
profitCenterCode
)
{
this
.
profitCenterCode
=
profitCenterCode
;
}
public
String
getProfitCenterName
()
{
return
profitCenterName
;
}
public
void
setProfitCenterName
(
String
profitCenterName
)
{
this
.
profitCenterName
=
profitCenterName
;
}
public
Integer
getTaxOn
()
{
return
taxOn
;
}
public
void
setTaxOn
(
Integer
taxOn
)
{
this
.
taxOn
=
taxOn
;
}
public
String
getProductCode
()
{
return
productCode
;
}
public
void
setProductCode
(
String
productCode
)
{
this
.
productCode
=
productCode
;
}
public
String
getProductName
()
{
return
productName
;
}
public
void
setProductName
(
String
productName
)
{
this
.
productName
=
productName
;
}
public
Integer
getCategory
()
{
return
category
;
}
public
void
setCategory
(
Integer
category
)
{
this
.
category
=
category
;
}
public
String
getProjectId
()
{
return
projectId
;
}
public
void
setProjectId
(
String
projectId
)
{
this
.
projectId
=
projectId
;
}
public
Integer
getPeriod
()
{
return
period
;
}
public
void
setPeriod
(
Integer
period
)
{
this
.
period
=
period
;
}
public
CamelPagingDto
getPageInfo
()
{
return
this
.
pageInfo
;
}
public
void
setPageInfo
(
CamelPagingDto
pageInfo
)
{
this
.
pageInfo
=
pageInfo
;
}
}
atms-api/src/main/java/pwc/taxtech/atms/dto/revenueDetail/RevenueDetailResult.java
0 → 100644
View file @
ce3ea281
package
pwc
.
taxtech
.
atms
.
dto
.
revenueDetail
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
public
class
RevenueDetailResult
implements
Serializable
{
private
static
final
long
serialVersionUID
=
8385521700489579616L
;
private
String
subject
;
private
String
account
;
private
String
profitCenter
;
private
String
product
;
private
String
subjectExplain
;
private
String
accountExplain
;
private
String
profitCenterExplain
;
private
String
productExplain
;
private
BigDecimal
amount
;
private
String
type
;
private
String
category
;
private
String
taxOn
;
public
String
getSubject
()
{
return
subject
;
}
public
void
setSubject
(
String
subject
)
{
this
.
subject
=
subject
;
}
public
String
getAccount
()
{
return
account
;
}
public
void
setAccount
(
String
account
)
{
this
.
account
=
account
;
}
public
String
getProfitCenter
()
{
return
profitCenter
;
}
public
void
setProfitCenter
(
String
profitCenter
)
{
this
.
profitCenter
=
profitCenter
;
}
public
String
getProduct
()
{
return
product
;
}
public
void
setProduct
(
String
product
)
{
this
.
product
=
product
;
}
public
String
getSubjectExplain
()
{
return
subjectExplain
;
}
public
void
setSubjectExplain
(
String
subjectExplain
)
{
this
.
subjectExplain
=
subjectExplain
;
}
public
String
getAccountExplain
()
{
return
accountExplain
;
}
public
void
setAccountExplain
(
String
accountExplain
)
{
this
.
accountExplain
=
accountExplain
;
}
public
String
getProfitCenterExplain
()
{
return
profitCenterExplain
;
}
public
void
setProfitCenterExplain
(
String
profitCenterExplain
)
{
this
.
profitCenterExplain
=
profitCenterExplain
;
}
public
String
getProductExplain
()
{
return
productExplain
;
}
public
void
setProductExplain
(
String
productExplain
)
{
this
.
productExplain
=
productExplain
;
}
public
BigDecimal
getAmount
()
{
return
amount
;
}
public
void
setAmount
(
BigDecimal
amount
)
{
this
.
amount
=
amount
;
}
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
public
String
getCategory
()
{
return
category
;
}
public
void
setCategory
(
String
category
)
{
this
.
category
=
category
;
}
public
String
getTaxOn
()
{
return
taxOn
;
}
public
void
setTaxOn
(
String
taxOn
)
{
this
.
taxOn
=
taxOn
;
}
}
atms-api/src/main/java/pwc/taxtech/atms/service/impl/RevenueDetailService.java
0 → 100644
View file @
ce3ea281
package
pwc
.
taxtech
.
atms
.
service
.
impl
;
import
com.github.pagehelper.Page
;
import
com.github.pagehelper.PageHelper
;
import
com.github.pagehelper.PageInfo
;
import
org.springframework.stereotype.Service
;
import
pwc.taxtech.atms.dpo.RevenueDetailDto
;
import
pwc.taxtech.atms.dto.revenueDetail.RevenueDetailParam
;
import
pwc.taxtech.atms.dto.revenueDetail.RevenueDetailResult
;
import
pwc.taxtech.atms.vat.dao.TrialBalanceFinalMapper
;
import
javax.annotation.Resource
;
import
java.util.List
;
import
java.util.stream.Collectors
;
@Service
public
class
RevenueDetailService
extends
BaseService
{
@Resource
private
TrialBalanceFinalMapper
trialBalanceFinalMapper
;
/**
* @param param
* @return
*/
public
PageInfo
<
RevenueDetailResult
>
queryPage
(
RevenueDetailParam
param
)
{
Page
page
=
PageHelper
.
startPage
(
param
.
getPageInfo
().
getPageIndex
(),
param
.
getPageInfo
().
getPageSize
());
List
<
RevenueDetailDto
>
dataList
=
trialBalanceFinalMapper
.
queryBalanceWithRevenueConfig
(
param
.
getAccountCode
(),
param
.
getAccountName
(),
param
.
getType
(),
param
.
getProfitCenterCode
(),
param
.
getProfitCenterName
(),
param
.
getTaxOn
(),
param
.
getProductCode
(),
param
.
getProductName
(),
param
.
getCategory
(),
param
.
getProjectId
(),
param
.
getPeriod
(),
param
.
getQueryDate
());
PageInfo
<
RevenueDetailResult
>
pageInfo
=
new
PageInfo
<>(
dataList
.
stream
()
.
map
(
o
->
beanUtil
.
copyProperties
(
o
,
new
RevenueDetailResult
())).
collect
(
Collectors
.
toList
()));
pageInfo
.
setTotal
(
page
.
getTotal
());
return
pageInfo
;
}
}
atms-dao/src/main/java/pwc/taxtech/atms/dpo/RevenueDetailDto.java
0 → 100644
View file @
ce3ea281
package
pwc
.
taxtech
.
atms
.
dpo
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
public
class
RevenueDetailDto
implements
Serializable
{
private
static
final
long
serialVersionUID
=
3774022182707357862L
;
private
String
subject
;
private
String
account
;
private
String
profitCenter
;
private
String
product
;
private
String
subjectExplain
;
private
String
accountExplain
;
private
String
profitCenterExplain
;
private
String
productExplain
;
private
BigDecimal
amount
;
private
String
type
;
private
String
category
;
private
String
taxOn
;
public
String
getSubject
()
{
return
subject
;
}
public
void
setSubject
(
String
subject
)
{
this
.
subject
=
subject
;
}
public
String
getAccount
()
{
return
account
;
}
public
void
setAccount
(
String
account
)
{
this
.
account
=
account
;
}
public
String
getProfitCenter
()
{
return
profitCenter
;
}
public
void
setProfitCenter
(
String
profitCenter
)
{
this
.
profitCenter
=
profitCenter
;
}
public
String
getProduct
()
{
return
product
;
}
public
void
setProduct
(
String
product
)
{
this
.
product
=
product
;
}
public
String
getSubjectExplain
()
{
return
subjectExplain
;
}
public
void
setSubjectExplain
(
String
subjectExplain
)
{
this
.
subjectExplain
=
subjectExplain
;
}
public
String
getAccountExplain
()
{
return
accountExplain
;
}
public
void
setAccountExplain
(
String
accountExplain
)
{
this
.
accountExplain
=
accountExplain
;
}
public
String
getProfitCenterExplain
()
{
return
profitCenterExplain
;
}
public
void
setProfitCenterExplain
(
String
profitCenterExplain
)
{
this
.
profitCenterExplain
=
profitCenterExplain
;
}
public
String
getProductExplain
()
{
return
productExplain
;
}
public
void
setProductExplain
(
String
productExplain
)
{
this
.
productExplain
=
productExplain
;
}
public
BigDecimal
getAmount
()
{
return
amount
;
}
public
void
setAmount
(
BigDecimal
amount
)
{
this
.
amount
=
amount
;
}
public
String
getType
()
{
return
type
;
}
public
void
setType
(
String
type
)
{
this
.
type
=
type
;
}
public
String
getCategory
()
{
return
category
;
}
public
void
setCategory
(
String
category
)
{
this
.
category
=
category
;
}
public
String
getTaxOn
()
{
return
taxOn
;
}
public
void
setTaxOn
(
String
taxOn
)
{
this
.
taxOn
=
taxOn
;
}
}
atms-dao/src/main/java/pwc/taxtech/atms/vat/dao/TrialBalanceFinalMapper.java
View file @
ce3ea281
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.dpo.RevenueDetailDto
;
import
pwc.taxtech.atms.vat.entity.TrialBalanceFinal
;
import
pwc.taxtech.atms.vat.entity.TrialBalanceFinalExample
;
import
java.util.List
;
@Mapper
public
interface
TrialBalanceFinalMapper
extends
MyVatMapper
{
/**
...
...
@@ -105,4 +107,18 @@ public interface TrialBalanceFinalMapper extends MyVatMapper {
* @mbg.generated
*/
int
updateByPrimaryKey
(
TrialBalanceFinal
record
);
List
<
RevenueDetailDto
>
queryBalanceWithRevenueConfig
(
@Param
(
"accountCode"
)
String
accountCode
,
@Param
(
"accountName"
)
String
accountName
,
@Param
(
"type"
)
String
type
,
@Param
(
"profitCenterCode"
)
String
profitCenterCode
,
@Param
(
"profitCenterName"
)
String
profitCenterName
,
@Param
(
"taxOn"
)
Integer
taxOn
,
@Param
(
"productCode"
)
String
productCode
,
@Param
(
"productName"
)
String
productName
,
@Param
(
"category"
)
Integer
category
,
@Param
(
"projectId"
)
String
projectId
,
@Param
(
"period"
)
Integer
period
,
@Param
(
"queryDate"
)
String
queryDate
);
}
\ No newline at end of file
atms-dao/src/main/resources/pwc/taxtech/atms/vat/dao/extends/TrialBalanceFinalExtendsMapper.xml
0 → 100644
View file @
ce3ea281
<?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.TrialBalanceFinalMapper"
>
<select
id=
"queryBalanceWithRevenueConfig"
resultType=
"pwc.taxtech.atms.dpo.RevenueDetailDto"
>
select detail.*
from (
select tbf.segment1 as subject,
tbf.segment3 as account,
tbf.segment5 profitCenter,
tbf.segment6 product,
tbf.segment1_name subjectExplain,
tbf.segment3_name accountExplain,
tbf.segment5_name profitCenterExplain,
tbf.segment6_name productExplain,
tbf.period_dr amount,
rc.name type,
rc.revenue_type category,
rc.tax_type taxOn,
case
when tbf.segment3 like '4001%' and rc.id is null then 1
when tbf.segment3 like '4002%' and rc.id is null then 1
when tbf.segment3 like '4010%' and rc.id is null then 1
when tbf.segment3 like '8002%' and rc.id is null then 1
<![CDATA[WHEN rc.id IS NOT NULL and rc.start_date > #{queryDate} and rc.end_date < #{queryDate} then 1]]>
<![CDATA[WHEN rc.id IS NOT NULL and rc.start_date <= #{queryDate} and rc.end_date >= #{queryDate} THEN 2]]>
else 3 end as isEmpty
from trial_balance_final as tbf
left join
revenue_config as rc
on
rc.org_id = tbf.organization_id
and
rc.tb_segment3 = tbf.segment3
and
rc.tb_segment5 = tbf.segment5
and
rc.tb_segment6 = tbf.segment6
where
tbf.project_id = #{projectId}
and tbf.period = #{period}
<if
test=
"accountCode != null and accountCode != ''"
>
and tbf.segment3 like concat('%',#{accountCode},'%')
</if>
<if
test=
"accountName != null and accountName != ''"
>
and tbf.segment3_name like concat('%',#{accountName},'%')
</if>
<if
test=
"profitCenterCode != null and profitCenterCode != ''"
>
and tbf.segment5 like concat('%',#{profitCenterCode},'%')
</if>
<if
test=
"profitCenterName != null and profitCenterName != ''"
>
and tbf.segment5_name like concat('%',#{profitCenterName},'%')
</if>
<if
test=
"productCode != null and productCode != ''"
>
and tbf.segment6 like concat('%',#{productCode},'%')
</if>
<if
test=
"productName != null and productName != ''"
>
and tbf.segment6_name like concat('%',#{productName},'%')
</if>
<if
test=
"type != null"
>
and rc.name = #{type}
</if>
<if
test=
"category != null"
>
and rc.revenue_type = #{category}
</if>
<if
test=
"taxOn != null"
>
and rc.tax_rate = #{taxOn}
</if>
) as detail
where
<![CDATA[detail.isEmpty < 3]]>
order by detail.isEmpty
</select>
</mapper>
\ No newline at end of file
atms-web/src/main/webapp/Scripts/module-part1.js
View file @
ce3ea281
...
...
@@ -964,6 +964,22 @@ var vatModule = angular.module('app.vat', ['ui.grid', 'ui.grid.selection', 'ui.g
sticky
:
true
});
$stateProvider
.
state
({
name
:
'vat.reductionData.revenueDetail'
,
url
:
'/revenueDetail'
,
views
:
{
'@vat.reductionData'
:
{
controller
:
[
'$scope'
,
'$stateParams'
,
'appTranslation'
,
function
(
$scope
,
$stateParams
,
appTranslation
)
{
appTranslation
.
load
([
appTranslation
.
vat
]);
}],
template
:
'<vat-revenue-detail></vat-revenue-detail>'
,
}
},
resolve
:
scriptDependencyProvider
.
createDependenciesMap
(
scriptDependencyProvider
.
vat
),
deepStateRedirect
:
true
,
sticky
:
true
});
$stateProvider
.
state
({
name
:
'vat.reductionData.unbilledInvoice'
,
url
:
'/unbilledInvoice'
,
...
...
atms-web/src/main/webapp/app-resources/i18n/zh-CN/vat.json
View file @
ce3ea281
...
...
@@ -1745,6 +1745,7 @@
"c_vatType"
:
"增值税纳税类型"
,
"c_year"
:
"申报年"
,
"caculateData"
:
"数据处理"
,
"revenueDetail"
:
"收入明细"
,
"cancelled"
:
"已作废"
,
"caseNumberColon"
:
"事件号"
,
"chartData"
:
"数据"
,
...
...
@@ -2105,5 +2106,30 @@
"RevenueAddSuccess"
:
"添加成功"
,
"RevenueUpdateSuccess"
:
"更新成功"
,
"RevDetail"
:
"收入明细"
,
"RevSearchAccountCode"
:
"科目代码"
,
"RevSearchAccountName"
:
"科目名称"
,
"RevSearchProfitCenterCode"
:
"利润中心代码"
,
"RevSearchProfitCenterName"
:
"利润中心名称"
,
"RevSearchProductCode"
:
"产品代码"
,
"RevSearchProductName"
:
"产品名称"
,
"RevSearchType"
:
"收入类型"
,
"RevSearchCategory"
:
"收入类别"
,
"RevSearchTaxOn"
:
"计税方法"
,
"RevDetailSearch"
:
"查询"
,
"RevDetailReset"
:
"重置"
,
"RevDetailColSerialNo"
:
"序号"
,
"RevDetailColSubject"
:
"主体"
,
"RevDetailColAccount"
:
"科目"
,
"RevDetailColProfitCenter"
:
"利润中心"
,
"RevDetailProduct"
:
"产品"
,
"RevDetailColSubjectExp"
:
"主体说明"
,
"RevDetailColAccountExp"
:
"科目说明"
,
"RevDetailColProfitCenterExp"
:
"利润中心说明"
,
"RevDetailProductExp"
:
"产品说明"
,
"RevDetailAmount"
:
"发生额"
,
"RevDetailType"
:
"收入类型"
,
"RevDetailCategory"
:
"收入类别"
,
"RevDetailTaxOn"
:
"计税方法"
,
"~MustBeEndOneApp"
:
"我必须是最后一个!"
}
\ No newline at end of file
atms-web/src/main/webapp/app/common/utils/constant.js
View file @
ce3ea281
...
...
@@ -500,8 +500,9 @@ constant.vatPermission = {
saveCode
:
'02.003.002.002'
},
revenueDetailCode
:
'02.003.004'
,
caculateDataCode
:
'02.003.003'
,
unbilledInvoiceCode
:
'02.003.004'
,
},
reportView
:
{
...
...
atms-web/src/main/webapp/app/dataImport/vat-revenue-config/vat-revenue-config.ctrl.js
View file @
ce3ea281
ci
tModule
.
controller
(
'VatRevenueConfigController'
,
[
'$scope'
,
'$log'
,
'$translate'
,
'$timeout'
,
'SweetAlert'
,
'$q'
,
va
tModule
.
controller
(
'VatRevenueConfigController'
,
[
'$scope'
,
'$log'
,
'$translate'
,
'$timeout'
,
'SweetAlert'
,
'$q'
,
'$interval'
,
'dxDataGridService'
,
'$http'
,
'apiConfig'
,
function
(
$scope
,
$log
,
$translate
,
$timeout
,
SweetAlert
,
$q
,
$interval
,
dxDataGridService
,
$http
,
apiConfig
)
{
'use strict'
;
...
...
atms-web/src/main/webapp/app/framework/app-overview/app-overview.ctrl.js
View file @
ce3ea281
...
...
@@ -946,7 +946,9 @@
// }
else
if
(
data
[
constant
.
vatPermission
.
dataManage
.
caculateDataCode
])
{
$state
.
go
(
'vat.reductionData.caculateData'
);
}
/*else if (data[constant.vatPermission.dataManage.unbilledInvoiceCode]) {
}
else
if
(
data
[
constant
.
vatPermission
.
dataManage
.
revenueDetailCode
]){
$state
.
go
(
'vat.reductionData.revenueDetail'
);
}
/*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'
);
...
...
atms-web/src/main/webapp/app/vat/import/vat-import-layout/vat-import-layout.ctrl.js
View file @
ce3ea281
...
...
@@ -103,6 +103,10 @@ function ($scope, $log, $translate, $location, loginContext, enums, vatSessionSe
name
:
'caculateData'
,
permission
:
constant
.
vatPermission
.
dataManage
.
caculateDataCode
,
text
:
$translate
.
instant
(
'caculateData'
),
icon
:
'fa fa-random'
,
show
:
true
},
{
name
:
'revenueDetail'
,
permission
:
constant
.
vatPermission
.
dataManage
.
revenueDetailCode
,
text
:
$translate
.
instant
(
'revenueDetail'
),
icon
:
'fa fa-random'
,
show
:
true
},
/*{
name: 'accountMapping', permission: constant.vatPermission.dataManage.accountMappingCode,
text: $translate.instant('accountMapping'), icon: 'fa fa-map', show: true
...
...
atms-web/src/main/webapp/app/vat/reduction/vat-revenue-detail/vat-revenue-detail.ctrl.js
0 → 100644
View file @
ce3ea281
This diff is collapsed.
Click to expand it.
atms-web/src/main/webapp/app/vat/reduction/vat-revenue-detail/vat-revenue-detail.html
0 → 100644
View file @
ce3ea281
<div
class=
"vat-revenue-detail"
>
<div
class=
"header-title"
>
<div
style=
"display:inline-block"
><span
class=
"title-name"
>
{{'RevDetail' | translate }}
</span></div>
</div>
<div
class=
"content-container"
>
<div
class=
"header"
>
<div
class=
"search-panel"
>
<table
class=
"table borderless table-bottom"
>
<tr>
<td><span
class=
"lbl-name"
>
{{'RevSearchAccountCode' | translate }}:
</span></td>
<td>
<input
class=
"form-control"
name=
"name"
ng-model=
"searchParam.accountCode"
maxlength=
"20"
>
</td>
<td><span
class=
"lbl-name"
>
{{'RevSearchAccountName' | translate }}:
</span>
:
</td>
<td>
<input
class=
"form-control"
name=
"name"
ng-model=
"searchParam.accountName"
maxlength=
"20"
>
</td>
<td><span
class=
"lbl-name"
>
{{'RevSearchType' | translate }}:
</span></td>
<td>
<div
dx-select-box=
"searchOptions.typeOptions"
></div>
</td>
<td
ng-show=
"!hasShowMoreSearchBox"
>
<button
type=
"button"
class=
"btn btn-primary invoice-btn"
ng-click=
"searchboxService.search()"
>
查询
</button>
</td>
<td
ng-show=
"!hasShowMoreSearchBox"
>
<button
type=
"button"
class=
"btn btn-primary invoice-btn"
ng-click=
"searchboxService.resetBox()"
>
重置
</button>
</td>
<td
ng-show=
"!hasShowMoreSearchBox"
>
<span
class=
"lbl-name"
>
<a
href=
"javacript:void(0)"
ng-click=
"searchboxService.showOrHideSearchBox()"
><span><i
class=
"fa fa-chevron-down"
aria-hidden=
"true"
></i><span
style=
"margin-left:3px;"
>
更多查询
</span></span></a>
</span>
</td>
</tr>
<tr
ng-show=
"hasShowMoreSearchBox"
>
</td>
<td><span
class=
"lbl-name"
>
{{'RevSearchProfitCenterCode' | translate }}:
</span></td>
<td>
<input
class=
"form-control"
name=
"name"
ng-model=
"searchParam.profitCenterCode"
maxlength=
"20"
>
</td>
<td><span
class=
"lbl-name"
>
{{'RevSearchProfitCenterName' | translate }}:
</span></td>
<td>
<input
class=
"form-control"
name=
"name"
ng-model=
"searchParam.centerName"
maxlength=
"20"
>
</td>
<td><span
class=
"lbl-name"
>
{{'RevSearchTaxOn' | translate }}:
</span></td>
<td>
<div
dx-select-box=
"searchOptions.taxOnOptions"
></div>
</td>
</tr>
<tr
ng-show=
"hasShowMoreSearchBox"
>
<td><span
class=
"lbl-name"
>
{{'RevSearchProductCode' | translate }}:
</span></td>
<td>
<input
class=
"form-control"
name=
"name"
ng-model=
"searchParam.productCode"
maxlength=
"20"
>
</td>
<td><span
class=
"lbl-name"
>
{{'RevSearchProductName' | translate }}:
</span></td>
<td>
<input
class=
"form-control"
name=
"name"
ng-model=
"searchParam.productName"
maxlength=
"20"
>
</td>
<td><span
class=
"lbl-name"
>
{{'RevSearchCategory' | translate }}:
</span></td>
<td>
<div
dx-select-box=
"searchOptions.categoryOptions"
></div>
</td>
<td>
<button
type=
"button"
class=
"btn btn-primary invoice-btn"
ng-click=
"searchboxService.search()"
>
查询
</button>
</td>
<td>
<button
type=
"button"
class=
"btn btn-primary invoice-btn"
ng-click=
"searchboxService.resetBox()"
>
重置
</button>
</td>
<td>
<a
href=
"javascript:void(0);"
ng-click=
"searchboxService.showOrHideSearchBox()"
>
<span><i
class=
"fa fa-chevron-up"
aria-hidden=
"true"
></i><span
style=
"margin-left:3px;"
>
收起
</span></span></a>
</td>
</tr>
</table>
</div>
</div>
<div
class=
"body"
>
<div
class=
"grid-container"
>
<div
id=
"invoiceGridContainer"
dx-data-grid=
"revenueGridOptions"
>
<div
data-options=
"dxTemplate:{ name:'editCellTemplate' }"
>
</div>
</div>
</div>
<div
class=
"page-footer"
>
<ack-pagination
page-options=
"pagingOptions"
refresh-table=
"refreshConfigGrid()"
></ack-pagination>
</div>
</div>
</div>
</div>
atms-web/src/main/webapp/app/vat/reduction/vat-revenue-detail/vat-revenue-detail.js
0 → 100644
View file @
ce3ea281
vatModule
.
directive
(
'vatRevenueDetail'
,
[
'$log'
,
'browserService'
,
'$translate'
,
'region'
,
'$timeout'
,
function
(
$log
,
browserService
,
$translate
,
region
,
$timeout
)
{
$log
.
debug
(
'vatRevenueDetail.ctor()...'
);
return
{
restrict
:
'E'
,
templateUrl
:
'/app/vat/reduction/vat-revenue-detail/vat-revenue-detail.html'
+
'?_='
+
Math
.
random
(),
scope
:
{},
controller
:
'vatRevenueDetailController'
}
}
]);
\ No newline at end of file
atms-web/src/main/webapp/app/vat/reduction/vat-revenue-detail/vat-revenue-detail.less
0 → 100644
View file @
ce3ea281
@border-color: #d4d4d4;
@margin-left: 60px;
@container-width: 970px;
@control-width: 120px;
//sharing
.header {
padding: 15px;
img {
margin-top: 3px;
}
.search-panel {
border: 1px solid #CDCDCD;
border-radius: 5px;
padding: 5px;
.row {
margin: 10px 0;
.filter-item {
display: inline-block;
vertical-align: middle;
height: 32px;
}
.fileter-label {
text-align: right;
height: 32px;
padding-top: 5px;
}
.col-xs-1, .col-sm-1, .col-md-1, .col-lg-1, .col-xs-2, .col-sm-2, .col-md-2, .col-lg-2, .col-xs-3, .col-sm-3, .col-md-3, .col-lg-3, .col-xs-4, .col-sm-4, .col-md-4, .col-lg-4, .col-xs-5, .col-sm-5, .col-md-5, .col-lg-5, .col-xs-6, .col-sm-6, .col-md-6, .col-lg-6, .col-xs-7, .col-sm-7, .col-md-7, .col-lg-7, .col-xs-8, .col-sm-8, .col-md-8, .col-lg-8, .col-xs-9, .col-sm-9, .col-md-9, .col-lg-9, .col-xs-10, .col-sm-10, .col-md-10, .col-lg-10, .col-xs-11, .col-sm-11, .col-md-11, .col-lg-11, .col-xs-12, .col-sm-12, .col-md-12, .col-lg-12 {
padding-left: 0;
}
.invoice-btn {
min-width: 90px;
height: 34px;
}
}
.table-bottom {
margin-bottom: 0px !important;
.lbl-name {
word-break: keep-all;
}
td {
vertical-align: middle;
}
}
}
}
.table-bottom {
margin-bottom: 0px !important;
.lbl-name {
word-break: keep-all;
}
td {
vertical-align: middle;
}
}
.red-color {
color: #d04a02;
/*vertical-align: middle;*/
}
.dx-widget {
font-size: 13px;
}
//share
.header-title {
padding: 10px;
.sub-title {
font-family: "Microsoft YaHei";
font-weight: 400;
font-size: 12px;
color: rgb(153, 153, 153);
}
.title-name {
font-family: "Microsoft YaHei Bold", "Microsoft YaHei Regular", "Microsoft YaHei";
font-weight: 700;
font-style: normal;
}
}
.inline-block {
display: inline-block;
.left-side {
display: inline-block;
}
.right-side {
float: right;
display: inline-block;
}
}
.invoice-btn {
min-width: 80px;
height: 28px;
margin-right: 10px;
font-weight: normal;
font-size: 13px;
font-family: 'Microsoft YaHei';
}
.invoice-card {
width: 120px;
height: 130px;
border: 1px dashed @border-color;
border: 1px dashed rgba(0, 0, 0, 0.2);
border-radius: 5px;
background-color: #fff; /*#fbfbfb;*/
text-align: center;
cursor: pointer;
float: left;
margin: 10px;
position: relative;
&:hover {
background-color: #fff !important;
box-shadow: #a06748 1px 1px;
}
//卡片顶部的绝对定位
.dx-checkbox-container {
position: absolute;
left: 59px;
top: -8px;
}
}
.span-btn {
color: #6699CC;
padding: 0px 4px;
cursor: pointer;
font-size: 12px;
}
.borderless td, .borderless th {
border: none !important;
vertical-align: middle !important;
}
.page-footer {
display: inline-block;
float: right;
/*padding-right: 20px;*/
}
.invoice-table-dialog {
.modal-dialog {
min-width: 650px;
.modal-title {
color: red;
}
}
}
.invoiceNumber-link {
cursor: pointer;
/*color:#6699cc;*/
}
.vat-revenue-detail {
height: 100% !important;
padding-top: 0px !important;
position: relative;
font-size: 13px;
.dx-datagrid-group-closed:before {
/* font-family: "ui-grid"; */
font-style: normal;
font-weight: normal;
speak: none;
display: inline-block;
text-decoration: inherit;
width: 1em;
margin-right: .2em;
text-align: center;
font-variant: normal;
text-transform: none;
line-height: 1em;
margin-left: .2em;
content: inherit!important;
}
.header-title {
padding: 10px;
.title-name {
font-family: "Microsoft YaHei Bold", "Microsoft YaHei Regular", "Microsoft YaHei";
font-weight: 700;
font-style: normal;
}
}
.custom-control {
width: @control-width !important;
height: 25px;
line-height: 25px;
}
.btn-search {
width: @control-width !important;
}
.content-container {
height: calc(~'100% - 40px');
position: relative;
.body {
.buttom-row {
padding: 15px;
display: inline-block;
width: 100%;
.left-side {
display: inline-block;
/*padding-left:5px;*/
.select-title {
margin-left: 20px;
}
.select-number {
padding: 0 1px;
color: red;
}
}
.right-side {
float: right;
display: inline-block;
/*padding-right:5px;*/
.btn {
margin-left: 20px;
}
}
}
.grid-container {
padding: 0px 15px;
/*height: 350px;*/
/*height:100%;*/
#invoiceGridContainer {
max-height: 100%;
}
.dx-datagrid-rowsview .dx-row > .dx-master-detail-cell {
padding: 0px !important;
}
.dx-datagrid-nowrap.dx-datagrid-headers .dx-header-row > td > .dx-datagrid-text-content {
white-space: normal !important;
}
.internal-grid-container {
padding: 10px 10px 10px 0;
& > div:first-child {
padding: 0 0 5px 10px;
font-size: 13px;
/*font-weight: bold;*/
}
}
}
}
}
.importVerifyInvoiceModal {
.modal-dialog {
height: 200px;
width: 610px;
}
.modal-footer {
text-align: left;
}
}
}
atms-web/src/main/webapp/app/vat/vat-layout/vat-layout.ctrl.js
View file @
ce3ea281
...
...
@@ -142,6 +142,7 @@ function ($scope, $rootScope, $q, $log, $timeout, $state, $translate, projectSer
constant
.
vatPermission
.
dataPreview
.
inputInvoice
.
queryCode
,
constant
.
vatPermission
.
dataManage
.
caculateDataCode
,
constant
.
vatPermission
.
dataManage
.
revenueDetailCode
,
// constant.vatPermission.dataManage.accountMappingCode,
// constant.vatPermission.dataManage.goodsMappingCode,
// constant.vatPermission.dataManage.unbilledInvoiceCode,
...
...
@@ -331,6 +332,10 @@ function ($scope, $rootScope, $q, $log, $timeout, $state, $translate, projectSer
name
:
'reductionData.caculateData'
,
state
:
'reductionData.caculateData'
,
num
:
3
,
permission
:
constant
.
vatPermission
.
dataManage
.
caculateDataCode
,
url
:
'#/vat/reductionData/caculateData'
});
subMenus
.
push
({
name
:
'reductionData.revenueDetail'
,
state
:
'reductionData.revenueDetail'
,
num
:
3
,
permission
:
constant
.
vatPermission
.
dataManage
.
revenueDetailCode
,
url
:
'#/vat/reductionData/revenueDetail'
});
}
else
if
(
data
[
constant
.
vatPermission
.
dataManage
.
accountMappingCode
])
{
$scope
.
menus
.
push
({
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment