Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Contribute to GitLab
Sign in / Register
Toggle navigation
D
dsk-operate-sys-cscec
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
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Charts
Create a new issue
Jobs
Commits
Issue Boards
Open sidebar
fulixin
dsk-operate-sys-cscec
Commits
8c872332
Commit
8c872332
authored
Feb 08, 2024
by
chenyuefang
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
成本汇总相关
parent
9e231a13
Changes
14
Show whitespace changes
Inline
Side-by-side
Showing
14 changed files
with
589 additions
and
9 deletions
+589
-9
application.yml
dsk-admin/src/main/resources/application.yml
+2
-4
CbSummaryController.java
...in/java/com/dsk/cscec/controller/CbSummaryController.java
+50
-2
CbSummaryActual.java
...i/src/main/java/com/dsk/cscec/domain/CbSummaryActual.java
+3
-2
CbSummaryActualBo.java
.../main/java/com/dsk/cscec/domain/bo/CbSummaryActualBo.java
+41
-0
CbSummaryActualListBo.java
...n/java/com/dsk/cscec/domain/bo/CbSummaryActualListBo.java
+27
-0
CbSummaryBo.java
...pi/src/main/java/com/dsk/cscec/domain/bo/CbSummaryBo.java
+43
-0
CbSummaryActualListVo.java
...n/java/com/dsk/cscec/domain/vo/CbSummaryActualListVo.java
+83
-0
CbSummaryProjectImportVo.java
...ava/com/dsk/cscec/domain/vo/CbSummaryProjectImportVo.java
+63
-0
CbSummaryActualMapper.java
...main/java/com/dsk/cscec/mapper/CbSummaryActualMapper.java
+10
-0
CbSummaryMapper.java
...i/src/main/java/com/dsk/cscec/mapper/CbSummaryMapper.java
+23
-0
CbSummaryService.java
...src/main/java/com/dsk/cscec/service/CbSummaryService.java
+41
-0
CbSummaryServiceImpl.java
...java/com/dsk/cscec/service/impl/CbSummaryServiceImpl.java
+155
-1
CbSummaryActualMapper.xml
...src/main/resources/mapper/cscec/CbSummaryActualMapper.xml
+10
-0
CbSummaryMapper.xml
...z-api/src/main/resources/mapper/cscec/CbSummaryMapper.xml
+38
-0
No files found.
dsk-admin/src/main/resources/application.yml
View file @
8c872332
...
...
@@ -186,16 +186,14 @@ tenant:
-
d_customer_tax_certificate
-
f_supplier_limited
-
f_ads_bsi_kpi_proj_two
-
cb_
account_
summary
-
cb_
account_
summary_actual
-
cb_summary
-
cb_summary_actual
-
cb_cost_measure
-
cb_cost_measure_actual
-
cb_direct_expense
-
cb_project_expense_summary
-
cb_project_file
-
cb_project_record
-
cb_project_summary
-
cb_project_summary_actual
-
cb_quantity_summary
-
cb_quantity_summary_actual
-
cb_scene_expense_children
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/controller/CbSummaryController.java
View file @
8c872332
...
...
@@ -2,11 +2,17 @@ package com.dsk.cscec.controller;
import
com.dsk.common.core.controller.BaseController
;
import
com.dsk.common.core.domain.R
;
import
com.dsk.cscec.domain.bo.CbSummaryActualBo
;
import
com.dsk.cscec.domain.bo.CbSummaryActualListBo
;
import
com.dsk.cscec.domain.bo.CbSummaryBo
;
import
com.dsk.cscec.service.CbSummaryService
;
import
org.springframework.
web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.
RestController
;
import
org.springframework.
validation.annotation.Validated
;
import
org.springframework.web.bind.annotation.
*
;
import
javax.annotation.Resource
;
import
java.util.List
;
import
java.util.Map
;
/**
* 成本汇总(CbSummary)表控制层
...
...
@@ -24,4 +30,46 @@ public class CbSummaryController extends BaseController {
private
CbSummaryService
cbSummaryService
;
/**
* 成本汇总左侧列表
*
* @param bo
* @return
*/
@GetMapping
(
"/cbNameList"
)
public
R
<
List
<
Map
<
String
,
Object
>>>
getCbNameList
(
CbSummaryBo
bo
)
{
return
R
.
ok
(
cbSummaryService
.
getCbNameList
(
bo
));
}
//成本汇总数据列表
@GetMapping
(
"/list"
)
public
R
getList
(
CbSummaryActualListBo
bo
)
{
return
R
.
ok
(
cbSummaryService
.
getActualList
(
bo
));
}
/**
* 已添加成本月份
*
* @param bo
* @return
*/
@GetMapping
(
"/expenseDateList"
)
public
R
<
List
<
String
>>
getExpenseDateList
(
@Validated
CbSummaryBo
bo
)
{
return
R
.
ok
(
cbSummaryService
.
getExpenseDateList
(
bo
));
}
/**
* 编辑成本
*
* @param boList
* @return
*/
@PutMapping
(
"/editActual"
)
public
R
editActual
(
@RequestBody
List
<
CbSummaryActualBo
>
boList
)
{
return
cbSummaryService
.
insertOrUpdateActual
(
boList
)
==
true
?
R
.
ok
()
:
R
.
fail
();
}
//锁定成本-至少有一条实际数据?
//导出excel-缺模板
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/domain/CbSummaryActual.java
View file @
8c872332
...
...
@@ -4,6 +4,7 @@ import com.baomidou.mybatisplus.annotation.TableId;
import
lombok.Data
;
import
java.io.Serializable
;
import
java.math.BigDecimal
;
import
java.util.Date
;
/**
...
...
@@ -27,11 +28,11 @@ public class CbSummaryActual implements Serializable {
/**
* 本月费用(含税)
*/
private
Double
taxInclusiveExpense
;
private
BigDecimal
taxInclusiveExpense
;
/**
* 本月费用(不含税)
*/
private
Double
taxExclusiveExpense
;
private
BigDecimal
taxExclusiveExpense
;
/**
* 费用日期
*/
...
...
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/domain/bo/CbSummaryActualBo.java
0 → 100644
View file @
8c872332
package
com
.
dsk
.
cscec
.
domain
.
bo
;
import
com.dsk.common.core.domain.BaseEntity
;
import
lombok.Data
;
import
javax.validation.constraints.NotEmpty
;
import
javax.validation.constraints.NotNull
;
import
java.math.BigDecimal
;
/**
* 成本汇总-每月费用Bo
*
* @author cyf
* @since 2024-02-06
*/
@Data
public
class
CbSummaryActualBo
extends
BaseEntity
{
/**
* 主键id
*/
private
Long
id
;
/**
* 成本汇总id
*/
@NotNull
(
message
=
"成本汇总id不能为空"
)
private
Long
cbSummaryId
;
/**
* 本月费用(含税)
*/
private
BigDecimal
taxInclusiveExpense
;
/**
* 本月费用(不含税)
*/
private
BigDecimal
taxExclusiveExpense
;
/**
* 费用日期
*/
@NotEmpty
(
message
=
"费用日期不能为空"
)
private
String
expenseDate
;
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/domain/bo/CbSummaryActualListBo.java
0 → 100644
View file @
8c872332
package
com
.
dsk
.
cscec
.
domain
.
bo
;
import
com.dsk.common.core.domain.BaseEntity
;
import
lombok.Data
;
/**
* 成本汇总-列表查询Bo
*
* @author cyf
* @since 2024-02-06
*/
@Data
public
class
CbSummaryActualListBo
extends
BaseEntity
{
/**
* 主键id
*/
private
Long
id
;
/**
* 成本类型(1项目汇总,2成本科目汇总)
*/
private
Integer
cbType
;
/**
* 费用日期
*/
private
String
expenseDate
;
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/domain/bo/CbSummaryBo.java
0 → 100644
View file @
8c872332
package
com
.
dsk
.
cscec
.
domain
.
bo
;
import
com.dsk.common.core.domain.BaseEntity
;
import
lombok.Data
;
/**
* 成本汇总Bo
*
* @author cyf
* @since 2024-02-06
*/
@Data
public
class
CbSummaryBo
extends
BaseEntity
{
/**
* 主键id
*/
private
Long
id
;
/**
* 父级id
*/
private
Long
parentId
;
/**
* 层级
*/
private
Integer
level
;
/**
* 项目id
*/
private
Long
projectId
;
/**
* 成本阶段( 0:标前成本、1:标后成本、2:转固成本)
*/
private
Integer
cbStage
;
/**
* 项目成本文件id
*/
private
Long
cbProjectFileId
;
/**
* 成本类型(1项目汇总,2成本科目汇总)
*/
private
Integer
cbType
;
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/domain/vo/CbSummaryActualListVo.java
0 → 100644
View file @
8c872332
package
com
.
dsk
.
cscec
.
domain
.
vo
;
import
com.dsk.common.core.domain.BaseEntity
;
import
lombok.Data
;
import
java.math.BigDecimal
;
import
java.util.List
;
/**
* 成本汇总Bo
*
* @author cyf
* @since 2024-02-06
*/
@Data
public
class
CbSummaryActualListVo
extends
BaseEntity
{
/**
* 主键id
*/
private
Long
id
;
/**
* 项目id
*/
private
Long
projectId
;
/**
* 成本阶段( 0:标前成本、1:标后成本、2:转固成本)
*/
private
Integer
cbStage
;
/**
* 序号
*/
private
String
number
;
/**
* 名称/成本科目
*/
private
String
cbName
;
/**
* 不含税成本合价
*/
private
String
taxExclusiveTotal
;
/**
* 成本税金合价
*/
private
String
cbTaxesTotal
;
/**
* 含税成本合价
*/
private
String
taxInclusiveTotal
;
/**
* 成本占比
*/
private
String
cbProportion
;
/**
* 含税成本平米指标
*/
private
String
taxInclusivePmTarget
;
/**
* 备注
*/
private
String
remark
;
/**
* 费用id
*/
private
Long
actualId
;
/**
* 本月费用(含税)
*/
private
BigDecimal
taxInclusiveExpense
;
/**
* 本月费用(不含税)
*/
private
BigDecimal
taxExclusiveExpense
;
/**
* 费用日期
*/
private
String
expenseDate
;
/**
* 是否锁定(0否,1是)
*/
private
Integer
lockStatus
;
private
List
<
CbSummaryActualListVo
>
children
;
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/domain/vo/CbSummaryProjectImportVo.java
0 → 100644
View file @
8c872332
package
com
.
dsk
.
cscec
.
domain
.
vo
;
import
com.alibaba.excel.annotation.ExcelProperty
;
import
com.baomidou.mybatisplus.annotation.TableId
;
import
lombok.Data
;
import
lombok.NoArgsConstructor
;
import
java.io.Serializable
;
import
java.util.Date
;
/**
* 成本汇总(CbSummary)-项目汇总导入Vo
*
* @author cyf
* @since 2024-02-06
*/
@Data
@NoArgsConstructor
public
class
CbSummaryProjectImportVo
implements
Serializable
{
private
static
final
long
serialVersionUID
=
-
20126964599875841L
;
/**
* 序号
*/
@ExcelProperty
(
value
=
"序号"
)
private
String
number
;
/**
* 名称
*/
@ExcelProperty
(
value
=
"名称"
)
private
String
cbName
;
/**
* 不含税成本合价
*/
@ExcelProperty
(
value
=
"不含税成本合价"
)
private
String
taxExclusiveTotal
;
/**
* 成本税金合价
*/
@ExcelProperty
(
value
=
"成本税金合价"
)
private
String
cbTaxesTotal
;
/**
* 含税成本合价
*/
@ExcelProperty
(
value
=
"含税成本合价"
)
private
String
taxInclusiveTotal
;
/**
* 成本占比
*/
@ExcelProperty
(
value
=
"成本占比"
)
private
String
cbProportion
;
/**
* 含税成本平米指标
*/
@ExcelProperty
(
value
=
"含税成本平米指标"
)
private
String
taxInclusivePmTarget
;
/**
* 备注
*/
@ExcelProperty
(
value
=
"备注"
)
private
String
remark
;
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/mapper/CbSummaryActualMapper.java
View file @
8c872332
...
...
@@ -2,6 +2,9 @@ package com.dsk.cscec.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.dsk.cscec.domain.CbSummaryActual
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
/**
* 成本汇总-每月费用(CbSummaryActual)表数据库访问层
...
...
@@ -10,5 +13,12 @@ import com.dsk.cscec.domain.CbSummaryActual;
* @since 2024-02-06
*/
public
interface
CbSummaryActualMapper
extends
BaseMapper
<
CbSummaryActual
>
{
/**
* 批量新增或按主键更新数据(MyBatis原生foreach方法)
*
* @param entities List<CbSummaryActual> 实例对象列表
* @return 影响行数
*/
int
insertOrUpdateBatch
(
@Param
(
"entities"
)
List
<
CbSummaryActual
>
entities
);
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/mapper/CbSummaryMapper.java
View file @
8c872332
...
...
@@ -2,6 +2,12 @@ package com.dsk.cscec.mapper;
import
com.baomidou.mybatisplus.core.mapper.BaseMapper
;
import
com.dsk.cscec.domain.CbSummary
;
import
com.dsk.cscec.domain.bo.CbSummaryBo
;
import
com.dsk.cscec.domain.vo.CbSummaryActualListVo
;
import
org.apache.ibatis.annotations.Param
;
import
java.util.List
;
import
java.util.Map
;
/**
* 成本汇总(CbSummary)表数据库访问层
...
...
@@ -11,4 +17,21 @@ import com.dsk.cscec.domain.CbSummary;
*/
public
interface
CbSummaryMapper
extends
BaseMapper
<
CbSummary
>
{
List
<
CbSummaryActualListVo
>
getByParentId
(
@Param
(
"parentId"
)
Long
parentId
,
@Param
(
"expenseDate"
)
String
expenseDate
);
/**
* 获取已添加成本月份
*
* @param bo
* @return
*/
List
<
String
>
getExpenseDateList
(
@Param
(
"bo"
)
CbSummaryBo
bo
);
/**
* 根据level获取名称/成本科目
*
* @param bo
* @return
*/
List
<
Map
<
String
,
Object
>>
selectByLevel
(
@Param
(
"bo"
)
CbSummaryBo
bo
);
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/service/CbSummaryService.java
View file @
8c872332
...
...
@@ -2,6 +2,13 @@ package com.dsk.cscec.service;
import
com.baomidou.mybatisplus.extension.service.IService
;
import
com.dsk.cscec.domain.CbSummary
;
import
com.dsk.cscec.domain.bo.CbSummaryActualBo
;
import
com.dsk.cscec.domain.bo.CbSummaryActualListBo
;
import
com.dsk.cscec.domain.bo.CbSummaryBo
;
import
com.dsk.cscec.domain.vo.CbSummaryActualListVo
;
import
java.util.List
;
import
java.util.Map
;
/**
...
...
@@ -12,4 +19,38 @@ import com.dsk.cscec.domain.CbSummary;
*/
public
interface
CbSummaryService
extends
IService
<
CbSummary
>
{
//项目汇总导入 todo
void
importCbProject
(
Long
projectId
,
Integer
cbStage
);
/**
* 获取一级名称/成本科目列表
*
* @param bo
* @return
*/
List
<
Map
<
String
,
Object
>>
getCbNameList
(
CbSummaryBo
bo
);
/**
* 根据父级id获取子级数据
*
* @param bo
* @return
*/
List
<
CbSummaryActualListVo
>
getActualList
(
CbSummaryActualListBo
bo
);
/**
* 获取已添加成本月份
*
* @param bo
* @return
*/
List
<
String
>
getExpenseDateList
(
CbSummaryBo
bo
);
/**
* 新增/更新每月费用
*
* @param boList
* @return
*/
boolean
insertOrUpdateActual
(
List
<
CbSummaryActualBo
>
boList
);
}
dsk-module/dsk-biz-api/src/main/java/com/dsk/cscec/service/impl/CbSummaryServiceImpl.java
View file @
8c872332
package
com
.
dsk
.
cscec
.
service
.
impl
;
import
cn.hutool.core.bean.BeanUtil
;
import
cn.hutool.core.collection.CollectionUtil
;
import
cn.hutool.core.date.DatePattern
;
import
cn.hutool.core.util.ObjectUtil
;
import
com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper
;
import
com.baomidou.mybatisplus.extension.service.impl.ServiceImpl
;
import
com.dsk.cscec.mapper.CbSummaryMapper
;
import
com.dsk.common.exception.ServiceException
;
import
com.dsk.cscec.constant.CbProjectConstants
;
import
com.dsk.cscec.domain.CbProjectFile
;
import
com.dsk.cscec.domain.CbSummary
;
import
com.dsk.cscec.domain.CbSummaryActual
;
import
com.dsk.cscec.domain.bo.CbSummaryActualBo
;
import
com.dsk.cscec.domain.bo.CbSummaryActualListBo
;
import
com.dsk.cscec.domain.bo.CbSummaryBo
;
import
com.dsk.cscec.domain.vo.CbSummaryActualListVo
;
import
com.dsk.cscec.mapper.CbProjectFileMapper
;
import
com.dsk.cscec.mapper.CbSummaryActualMapper
;
import
com.dsk.cscec.mapper.CbSummaryMapper
;
import
com.dsk.cscec.service.CbSummaryService
;
import
jodd.util.StringUtil
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.stereotype.Service
;
import
org.springframework.transaction.annotation.Transactional
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.util.*
;
/**
* 成本汇总(CbSummary)表服务实现类
...
...
@@ -14,5 +35,138 @@ import org.springframework.stereotype.Service;
*/
@Service
public
class
CbSummaryServiceImpl
extends
ServiceImpl
<
CbSummaryMapper
,
CbSummary
>
implements
CbSummaryService
{
@Autowired
private
CbProjectFileMapper
cbProjectFileMapper
;
@Autowired
private
CbSummaryActualMapper
cbSummaryActualMapper
;
@Override
public
void
importCbProject
(
Long
projectId
,
Integer
cbStage
)
{
//获取文件信息
List
<
CbProjectFile
>
cbProjectFiles
=
cbProjectFileMapper
.
selectList
(
new
LambdaQueryWrapper
<
CbProjectFile
>()
.
eq
(
CbProjectFile:
:
getProjectId
,
projectId
)
.
eq
(
CbProjectFile:
:
getCbStage
,
cbStage
)
.
eq
(
CbProjectFile:
:
getCbType
,
CbProjectConstants
.
CB_TYPE_SUMMARY
)
);
//解析数据
cbProjectFiles
.
forEach
(
cbProjectFile
->
{
MultipartFile
file
=
null
;
//todo
if
(
cbProjectFile
.
getFileName
().
contains
(
"项目"
))
{
}
else
if
(
cbProjectFile
.
getFileName
().
contains
(
"项目"
))
{
}
else
{
//修改文件状态
cbProjectFile
.
setFileParseStatus
(
CbProjectConstants
.
PROJECT_FILE_STATUS_PARSE_FAIL
);
cbProjectFile
.
setFailRemark
(
"文件名错误!"
);
cbProjectFileMapper
.
updateById
(
cbProjectFile
);
}
});
}
@Override
public
List
<
Map
<
String
,
Object
>>
getCbNameList
(
CbSummaryBo
bo
)
{
List
<
Map
<
String
,
Object
>>
resultList
=
new
ArrayList
<>();
//项目汇总
if
(
1
==
bo
.
getCbType
())
{
//获取一级数据
bo
.
setLevel
(
1
);
List
<
Map
<
String
,
Object
>>
cbNames
=
baseMapper
.
selectByLevel
(
bo
);
if
(
CollectionUtil
.
isEmpty
(
cbNames
))
{
return
null
;
}
Map
<
String
,
Object
>
xmhz
=
new
HashMap
<>();
xmhz
.
put
(
"id"
,
0
l
);
xmhz
.
put
(
"cbName"
,
"成本汇总"
);
resultList
.
add
(
xmhz
);
resultList
.
addAll
(
cbNames
);
}
//成本科目汇总
if
(
2
==
bo
.
getCbType
())
{
bo
.
setLevel
(
0
);
List
<
Map
<
String
,
Object
>>
cbNameTop
=
baseMapper
.
selectByLevel
(
bo
);
bo
.
setLevel
(
1
);
List
<
Map
<
String
,
Object
>>
cbNames
=
baseMapper
.
selectByLevel
(
bo
);
resultList
.
addAll
(
cbNameTop
);
//todo
resultList
.
addAll
(
cbNames
);
}
return
resultList
;
}
@Override
public
List
<
CbSummaryActualListVo
>
getActualList
(
CbSummaryActualListBo
bo
)
{
//项目汇总
if
(
1
==
bo
.
getCbType
())
{
return
getProjectSumList
(
bo
);
}
//成本科目汇总
if
(
2
==
bo
.
getCbType
())
{
//todo
}
return
null
;
}
/**
* 项目汇总列表
*
* @param bo
* @return
*/
private
List
<
CbSummaryActualListVo
>
getProjectSumList
(
CbSummaryActualListBo
bo
)
{
CbSummary
cbSummary
=
baseMapper
.
selectById
(
bo
.
getId
());
if
(
ObjectUtil
.
isEmpty
(
cbSummary
))
{
return
null
;
}
if
(
StringUtil
.
isBlank
(
bo
.
getExpenseDate
()))
{
//默认当前月
bo
.
setExpenseDate
(
DatePattern
.
SIMPLE_MONTH_FORMAT
.
format
(
new
Date
()));
}
List
<
CbSummaryActualListVo
>
childrenList
=
baseMapper
.
getByParentId
(
bo
.
getId
(),
bo
.
getExpenseDate
());
if
(
0
==
cbSummary
.
getLevel
())
{
return
childrenList
;
}
else
{
childrenList
.
forEach
(
children
->
{
CbSummaryActualListBo
childBo
=
new
CbSummaryActualListBo
();
childBo
.
setId
(
children
.
getId
());
childBo
.
setExpenseDate
(
bo
.
getExpenseDate
());
children
.
setChildren
(
getProjectSumList
(
childBo
));
});
return
childrenList
;
}
}
@Override
public
List
<
String
>
getExpenseDateList
(
CbSummaryBo
bo
)
{
return
baseMapper
.
getExpenseDateList
(
bo
);
}
@Override
@Transactional
(
rollbackFor
=
Exception
.
class
)
public
boolean
insertOrUpdateActual
(
List
<
CbSummaryActualBo
>
boList
)
{
if
(
CollectionUtil
.
isEmpty
(
boList
))
{
return
false
;
}
List
<
CbSummaryActual
>
actualList
=
BeanUtil
.
copyToList
(
boList
,
CbSummaryActual
.
class
);
CbSummaryActual
actualUpdate
=
actualList
.
get
(
0
);
CbSummaryActual
actual
=
cbSummaryActualMapper
.
selectOne
(
new
LambdaQueryWrapper
<
CbSummaryActual
>()
.
eq
(
CbSummaryActual:
:
getCbSummaryId
,
actualUpdate
.
getCbSummaryId
())
.
eq
(
CbSummaryActual:
:
getExpenseDate
,
actualUpdate
.
getExpenseDate
())
.
eq
(
CbSummaryActual:
:
getDelFlag
,
0
)
);
if
(
ObjectUtil
.
isNotNull
(
actual
)
&&
1
==
actual
.
getLockStatus
())
{
throw
new
ServiceException
(
"当前成本已锁定,不允许编辑!"
);
}
return
cbSummaryActualMapper
.
insertOrUpdateBatch
(
actualList
)
>
0
;
}
}
dsk-module/dsk-biz-api/src/main/resources/mapper/cscec/CbSummaryActualMapper.xml
View file @
8c872332
...
...
@@ -17,5 +17,15 @@
id, cb_summary_id, tax_inclusive_expense, tax_exclusive_expense, expense_date, lock_status, create_time, del_flag
</sql>
<insert
id=
"insertOrUpdateBatch"
keyProperty=
"id"
useGeneratedKeys=
"true"
>
insert into cb_summary_actual(cb_summary_id, tax_inclusive_expense, tax_exclusive_expense,expense_date)
values
<foreach
collection=
"entities"
item=
"entity"
separator=
","
>
(#{entity.cbSummaryId}, #{entity.taxInclusiveExpense}, #{entity.taxExclusiveExpense}, #{entity.expenseDate})
</foreach>
on duplicate key update
cb_summary_id = values(cb_summary_id) , tax_inclusive_expense = values(tax_inclusive_expense) ,
tax_exclusive_expense = values(tax_exclusive_expense) , expense_date = values(expense_date)
</insert>
</mapper>
dsk-module/dsk-biz-api/src/main/resources/mapper/cscec/CbSummaryMapper.xml
View file @
8c872332
...
...
@@ -28,5 +28,43 @@
cb_taxes_total, tax_inclusive_total, cb_proportion, tax_inclusive_pm_target, remark, create_time, del_flag,
cb_type
</sql>
<select
id=
"getByParentId"
resultType=
"com.dsk.cscec.domain.vo.CbSummaryActualListVo"
>
select csu.*,csa.id actualId,csa.tax_inclusive_expense,csa.tax_exclusive_expense,csa.expense_date,csa.lock_status
from cb_summary csu
left join cb_summary_actual csa on csu.id = csa.cb_summary_id and csa.expense_date = #{expenseDate} AND csa.del_flag = 0
<where>
csu.parent_id = #{parentId}
and csu.del_flag = 0
</where>
order by csu.sort
</select>
<select
id=
"getExpenseDateList"
resultType=
"string"
>
select csa.expense_date
from cb_summary_actual csa
left join cb_summary csu on csu.id = csa.cb_summary_id
where
csu.project_id = #{bo.projectId}
and csu.cb_stage = #{bo.cbStage}
and csu.cb_type = #{bo.cbType}
and csu.del_flag = 0
and csa.del_flag = 0
group by csa.expense_date
order by csa.expense_date asc
</select>
<select
id=
"selectByLevel"
resultType=
"map"
>
select csu.id,csu.cb_name as cbName
from cb_summary csu
where
csu.del_flag = 0
and csu.project_id = #{bo.projectId}
and csu.cb_stage = #{bo.cbStage}
and csu.cb_type = #{bo.cbType}
and csu.level = #{bo.level}
order by csu.sort
</select>
</mapper>
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