Skip to content
Projects
Groups
Snippets
Help
This project
Loading...
Sign in / Register
Toggle navigation
P
patzn-cloud-service-hmhj
Overview
Overview
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
wangweidong
patzn-cloud-service-hmhj
Commits
3cff24f2
Commit
3cff24f2
authored
Jul 28, 2021
by
lijingjing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
添加数据录入\报告编制根据检测人过滤;
添加报告模板修改接口;
parent
1acdeb63
Hide whitespace changes
Inline
Side-by-side
Showing
13 changed files
with
112 additions
and
43 deletions
+112
-43
EntrustController.java
...cloud/service/lims/hmhj/controller/EntrustController.java
+5
-1
EntrustReportTemplateConfigController.java
...mhj/controller/EntrustReportTemplateConfigController.java
+8
-8
EntrustReportTemplateController.java
...lims/hmhj/controller/EntrustReportTemplateController.java
+18
-19
EntrustReportTemplateConfigMapper.java
...e/lims/hmhj/mapper/EntrustReportTemplateConfigMapper.java
+2
-0
EntrustReportTemplateMapper.java
...service/lims/hmhj/mapper/EntrustReportTemplateMapper.java
+3
-1
IEntrustReportTemplateConfigService.java
...ims/hmhj/service/IEntrustReportTemplateConfigService.java
+3
-0
IEntrustReportTemplateService.java
...vice/lims/hmhj/service/IEntrustReportTemplateService.java
+3
-0
EntrustReportTemplateConfigServiceImpl.java
.../service/impl/EntrustReportTemplateConfigServiceImpl.java
+10
-0
EntrustReportTemplateServiceImpl.java
...s/hmhj/service/impl/EntrustReportTemplateServiceImpl.java
+9
-0
EntrustServiceImpl.java
...ud/service/lims/hmhj/service/impl/EntrustServiceImpl.java
+1
-14
EntrustMapper.xml
src/main/resources/mapper/hmhj/EntrustMapper.xml
+15
-0
EntrustReportTemplateConfigMapper.xml
...sources/mapper/hmhj/EntrustReportTemplateConfigMapper.xml
+15
-0
EntrustReportTemplateMapper.xml
...ain/resources/mapper/hmhj/EntrustReportTemplateMapper.xml
+20
-0
No files found.
src/main/java/com/patzn/cloud/service/lims/hmhj/controller/EntrustController.java
View file @
3cff24f2
...
...
@@ -227,6 +227,8 @@ public class EntrustController extends ServiceController {
public
RestResult
<
Page
<
EntrustVO
>>
getPageMakeHis
(
EntrustVO
entrust
)
{
entrust
.
setNotSampleStatus
(
EntrustSampleStatusEnum
.
DRAFT
);
entrust
.
setGroupNameList
(
userInfoService
.
getCurGroupNameList
());
// 涉及到检测人的数据
entrust
.
setTesterId
(
getAccount
().
getUserId
());
return
success
(
entrustService
.
pageEntrustByNotSample
(
getPage
(),
entrust
));
}
...
...
@@ -487,7 +489,7 @@ public class EntrustController extends ServiceController {
public
RestResult
<
Page
<
EntrustVO
>>
getPageTaskTestData
(
EntrustVO
entrust
)
{
entrust
.
setItemStatus
(
EntrustSampleItemStatusEnum
.
TEST
);
// 过滤当前人为检测人的委托数据 - 节点数据不为空,且为检测时,只查询当前人信息
if
(
StringUtils
.
isNotBlank
(
entrust
.
getSource
())
&&
EntrustFlowEnum
.
TEST
.
getName
().
equalsIgnoreCase
(
entrust
.
getSource
()))
{
if
(
EntrustFlowEnum
.
TEST
.
getName
().
equalsIgnoreCase
(
entrust
.
getSource
()))
{
entrust
.
setTesterId
(
getAccount
().
getUserId
());
}
// 获取当前用户分组
...
...
@@ -610,6 +612,7 @@ public class EntrustController extends ServiceController {
entrust
.
setSampleStatus
(
EntrustSampleStatusEnum
.
REPORT_MAKE
);
entrust
.
setFlowStatus
(
EntrustFlowEnum
.
REPORT_MAKE
.
getName
());
entrust
.
setGroupNameList
(
userInfoService
.
getCurGroupNameList
());
entrust
.
setTesterId
(
getAccount
().
getUserId
());
return
success
(
entrustService
.
pageEntrustBySample
(
getPage
(),
entrust
));
}
...
...
@@ -624,6 +627,7 @@ public class EntrustController extends ServiceController {
@PostMapping
(
"/page_entrust_report_make_his"
)
public
RestResult
<
Page
<
EntrustVO
>>
getPageReportMakeHis
(
EntrustVO
entrust
)
{
entrust
.
setReportNotStatus
(
EntrustReportStatusEnum
.
MAKING
);
entrust
.
setTesterId
(
getAccount
().
getUserId
());
return
success
(
entrustService
.
pageEntrustByReportNotHis
(
getPage
(),
entrust
));
}
...
...
src/main/java/com/patzn/cloud/service/lims/hmhj/controller/EntrustReportTemplateConfigController.java
View file @
3cff24f2
...
...
@@ -2,14 +2,7 @@ package com.patzn.cloud.service.lims.hmhj.controller;
import
com.patzn.cloud.service.hmhj.entity.EntrustReportTemplateConfig
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.DeleteMapping
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PutMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
com.baomidou.mybatisplus.plugins.Page
;
import
com.patzn.cloud.commons.api.RestConstants
;
...
...
@@ -22,6 +15,7 @@ import io.swagger.annotations.ApiImplicitParam;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
java.util.Date
;
import
java.util.List
;
/**
...
...
@@ -67,6 +61,12 @@ public class EntrustReportTemplateConfigController extends ServiceController {
return
success
(
entrustReportTemplateConfigService
.
updateById
(
entrustReportTemplateConfig
));
}
@ApiOperation
(
"根据 id 修改信息"
)
@PostMapping
(
"/update"
)
public
RestResult
<
Boolean
>
update
(
@RequestBody
EntrustReportTemplateConfig
entrustReportTemplateConfig
)
{
return
success
(
entrustReportTemplateConfigService
.
updateConfigById
(
entrustReportTemplateConfig
,
getAccount
()));
}
@ApiOperation
(
"添加"
)
@PostMapping
(
"/"
)
public
RestResult
<
Boolean
>
add
(
EntrustReportTemplateConfig
entrustReportTemplateConfig
)
{
...
...
src/main/java/com/patzn/cloud/service/lims/hmhj/controller/EntrustReportTemplateController.java
View file @
3cff24f2
...
...
@@ -2,14 +2,7 @@ package com.patzn.cloud.service.lims.hmhj.controller;
import
com.patzn.cloud.service.hmhj.entity.EntrustReportTemplate
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.DeleteMapping
;
import
org.springframework.web.bind.annotation.GetMapping
;
import
org.springframework.web.bind.annotation.PathVariable
;
import
org.springframework.web.bind.annotation.PostMapping
;
import
org.springframework.web.bind.annotation.PutMapping
;
import
org.springframework.web.bind.annotation.RequestMapping
;
import
org.springframework.web.bind.annotation.RequestParam
;
import
org.springframework.web.bind.annotation.RestController
;
import
org.springframework.web.bind.annotation.*
;
import
com.baomidou.mybatisplus.plugins.Page
;
import
com.patzn.cloud.commons.api.RestConstants
;
...
...
@@ -45,9 +38,9 @@ public class EntrustReportTemplateController extends ServiceController {
@ApiImplicitParam
(
name
=
RestConstants
.
PAGE_ROWS
,
value
=
"每页条数"
,
required
=
true
,
paramType
=
"query"
,
dataTypeClass
=
Integer
.
class
),
})
@PostMapping
(
"/page"
)
public
RestResult
<
Page
<
EntrustReportTemplate
>>
getPage
(
EntrustReportTemplate
entrustReportTemplate
)
{
public
RestResult
<
Page
<
EntrustReportTemplate
>>
getPage
(
EntrustReportTemplate
entrustReportTemplate
)
{
return
success
(
entrustReportTemplateService
.
page
(
getPage
(),
entrustReportTemplate
));
}
}
@ApiOperation
(
"查询 id 信息"
)
@ApiImplicitParams
({
...
...
@@ -63,30 +56,36 @@ public class EntrustReportTemplateController extends ServiceController {
@ApiImplicitParam
(
name
=
"id"
,
value
=
"主键"
,
required
=
true
,
paramType
=
"path"
,
dataTypeClass
=
Long
.
class
),
})
@PutMapping
(
"/{id}"
)
public
RestResult
<
Boolean
>
edit
(
@PathVariable
(
"id"
)
Long
id
,
EntrustReportTemplate
entrustReportTemplate
)
{
public
RestResult
<
Boolean
>
edit
(
@PathVariable
(
"id"
)
Long
id
,
EntrustReportTemplate
entrustReportTemplate
)
{
entrustReportTemplate
.
setId
(
id
);
return
success
(
entrustReportTemplateService
.
updateById
(
entrustReportTemplate
));
}
}
@ApiOperation
(
"根据 id 修改信息"
)
@PostMapping
(
"/update"
)
public
RestResult
<
Boolean
>
update
(
@RequestBody
EntrustReportTemplate
entrustReportTemplate
)
{
return
success
(
entrustReportTemplateService
.
updateTemplateById
(
entrustReportTemplate
,
getAccount
()));
}
@ApiOperation
(
"添加"
)
@PostMapping
(
"/"
)
public
RestResult
<
Boolean
>
add
(
EntrustReportTemplate
entrustReportTemplate
)
{
public
RestResult
<
Boolean
>
add
(
EntrustReportTemplate
entrustReportTemplate
)
{
return
success
(
entrustReportTemplateService
.
save
(
entrustReportTemplate
));
}
}
@ApiOperation
(
"根据 ids 删除"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
"ids"
,
value
=
"主键列表"
,
required
=
true
,
paramType
=
"query"
,
allowMultiple
=
true
,
dataTypeClass
=
Long
.
class
),
})
@DeleteMapping
(
"/"
)
public
RestResult
<
Boolean
>
delete
(
@RequestParam
(
"ids"
)
List
<
Long
>
ids
)
{
@DeleteMapping
(
"/"
)
public
RestResult
<
Boolean
>
delete
(
@RequestParam
(
"ids"
)
List
<
Long
>
ids
)
{
return
success
(
entrustReportTemplateService
.
removeByIds
(
ids
));
}
}
@ApiOperation
(
value
=
"附件上传"
,
notes
=
"附件上传"
)
@PostMapping
(
"/upload_template/"
)
public
RestResult
<
Boolean
>
uploadTemplate
(
@RequestParam
(
"name"
)
String
name
,
@RequestParam
(
"classType"
)
String
classType
,
@RequestParam
(
"remark"
)
String
remark
,
MultipartFile
file
)
{
return
success
(
entrustReportTemplateService
.
uploadTemplate
(
file
,
name
,
classType
,
remark
));
public
RestResult
<
Boolean
>
uploadTemplate
(
@RequestParam
(
"name"
)
String
name
,
@RequestParam
(
"classType"
)
String
classType
,
@RequestParam
(
"remark"
)
String
remark
,
MultipartFile
file
)
{
return
success
(
entrustReportTemplateService
.
uploadTemplate
(
file
,
name
,
classType
,
remark
));
}
}
src/main/java/com/patzn/cloud/service/lims/hmhj/mapper/EntrustReportTemplateConfigMapper.java
View file @
3cff24f2
...
...
@@ -2,6 +2,7 @@ package com.patzn.cloud.service.lims.hmhj.mapper;
import
com.patzn.cloud.commons.mapper.BatchMapper
;
import
com.patzn.cloud.service.hmhj.entity.EntrustReportTemplateConfig
;
import
org.apache.ibatis.annotations.Param
;
/**
* <p>
...
...
@@ -13,4 +14,5 @@ import com.patzn.cloud.service.hmhj.entity.EntrustReportTemplateConfig;
*/
public
interface
EntrustReportTemplateConfigMapper
extends
BatchMapper
<
EntrustReportTemplateConfig
>
{
boolean
updateConfigById
(
@Param
(
"vo"
)
EntrustReportTemplateConfig
entrustReportTemplateConfig
);
}
src/main/java/com/patzn/cloud/service/lims/hmhj/mapper/EntrustReportTemplateMapper.java
View file @
3cff24f2
...
...
@@ -2,10 +2,11 @@ package com.patzn.cloud.service.lims.hmhj.mapper;
import
com.patzn.cloud.service.hmhj.entity.EntrustReportTemplate
;
import
com.patzn.cloud.commons.mapper.BatchMapper
;
import
org.apache.ibatis.annotations.Param
;
/**
* <p>
*
Mapper 接口
* Mapper 接口
* </p>
*
* @author wwd
...
...
@@ -13,4 +14,5 @@ import com.patzn.cloud.commons.mapper.BatchMapper;
*/
public
interface
EntrustReportTemplateMapper
extends
BatchMapper
<
EntrustReportTemplate
>
{
boolean
updateTemplateById
(
@Param
(
"vo"
)
EntrustReportTemplate
entrustReportTemplate
);
}
src/main/java/com/patzn/cloud/service/lims/hmhj/service/IEntrustReportTemplateConfigService.java
View file @
3cff24f2
package
com
.
patzn
.
cloud
.
service
.
lims
.
hmhj
.
service
;
import
com.baomidou.mybatisplus.plugins.Page
;
import
com.patzn.cloud.commons.controller.Account
;
import
com.patzn.cloud.commons.service.IBaseService
;
import
com.patzn.cloud.service.hmhj.entity.EntrustReportTemplateConfig
;
...
...
@@ -17,4 +18,6 @@ public interface IEntrustReportTemplateConfigService extends IBaseService<Entrus
Page
<
EntrustReportTemplateConfig
>
page
(
Page
<
EntrustReportTemplateConfig
>
page
,
EntrustReportTemplateConfig
entrustReportTemplateConfig
);
boolean
removeByIds
(
List
<
Long
>
ids
);
boolean
updateConfigById
(
EntrustReportTemplateConfig
entrustReportTemplateConfig
,
Account
account
);
}
src/main/java/com/patzn/cloud/service/lims/hmhj/service/IEntrustReportTemplateService.java
View file @
3cff24f2
package
com
.
patzn
.
cloud
.
service
.
lims
.
hmhj
.
service
;
import
com.baomidou.mybatisplus.plugins.Page
;
import
com.patzn.cloud.commons.controller.Account
;
import
com.patzn.cloud.commons.service.IBaseService
;
import
com.patzn.cloud.service.hmhj.entity.EntrustReportTemplate
;
import
org.springframework.web.multipart.MultipartFile
;
...
...
@@ -20,4 +21,6 @@ public interface IEntrustReportTemplateService extends IBaseService<EntrustRepor
boolean
removeByIds
(
List
<
Long
>
ids
);
boolean
uploadTemplate
(
MultipartFile
file
,
String
name
,
String
classType
,
String
remark
);
boolean
updateTemplateById
(
EntrustReportTemplate
entrustReportTemplate
,
Account
account
);
}
src/main/java/com/patzn/cloud/service/lims/hmhj/service/impl/EntrustReportTemplateConfigServiceImpl.java
View file @
3cff24f2
package
com
.
patzn
.
cloud
.
service
.
lims
.
hmhj
.
service
.
impl
;
import
com.patzn.cloud.commons.api.RestAssert
;
import
com.patzn.cloud.commons.controller.Account
;
import
com.patzn.cloud.service.hmhj.entity.EntrustReportTemplateConfig
;
import
com.patzn.cloud.service.lims.hmhj.mapper.EntrustReportTemplateConfigMapper
;
import
com.patzn.cloud.service.lims.hmhj.service.IEntrustReportTemplateConfigService
;
...
...
@@ -9,6 +11,7 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper;
import
com.baomidou.mybatisplus.mapper.Wrapper
;
import
com.baomidou.mybatisplus.plugins.Page
;
import
java.util.Date
;
import
java.util.List
;
/**
...
...
@@ -31,4 +34,11 @@ public class EntrustReportTemplateConfigServiceImpl extends BaseServiceImpl<Entr
public
boolean
removeByIds
(
List
<
Long
>
ids
)
{
return
baseMapper
.
deleteBatchIds
(
ids
)
>
0
;
}
@Override
public
boolean
updateConfigById
(
EntrustReportTemplateConfig
entrustReportTemplateConfig
,
Account
account
)
{
RestAssert
.
fail
(
null
==
entrustReportTemplateConfig
.
getId
(),
"配置项编号为空"
);
entrustReportTemplateConfig
.
setLtime
(
new
Date
()).
setLid
(
account
.
getUserId
());
return
baseMapper
.
updateConfigById
(
entrustReportTemplateConfig
);
}
}
src/main/java/com/patzn/cloud/service/lims/hmhj/service/impl/EntrustReportTemplateServiceImpl.java
View file @
3cff24f2
package
com
.
patzn
.
cloud
.
service
.
lims
.
hmhj
.
service
.
impl
;
import
com.patzn.cloud.commons.api.RestAssert
;
import
com.patzn.cloud.commons.controller.Account
;
import
com.patzn.cloud.oss.starter.OssClient
;
import
com.patzn.cloud.oss.starter.OssFileResult
;
import
com.patzn.cloud.service.hmhj.entity.EntrustReportTemplate
;
...
...
@@ -15,6 +16,7 @@ import com.baomidou.mybatisplus.mapper.Wrapper;
import
com.baomidou.mybatisplus.plugins.Page
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.util.Date
;
import
java.util.List
;
/**
...
...
@@ -66,4 +68,11 @@ public class EntrustReportTemplateServiceImpl extends BaseServiceImpl<EntrustRep
attachment
.
setVersionId
(
result
.
getVersionId
());
return
super
.
save
(
attachment
);
}
@Override
public
boolean
updateTemplateById
(
EntrustReportTemplate
entrustReportTemplate
,
Account
account
)
{
RestAssert
.
fail
(
null
==
entrustReportTemplate
.
getId
(),
"报告模板ID为空"
);
entrustReportTemplate
.
setLid
(
account
.
getUserId
()).
setLtime
(
new
Date
());
return
baseMapper
.
updateTemplateById
(
entrustReportTemplate
);
}
}
src/main/java/com/patzn/cloud/service/lims/hmhj/service/impl/EntrustServiceImpl.java
View file @
3cff24f2
...
...
@@ -267,6 +267,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
}
}
}
// 验证样品非空字段
private
void
judgeSampleFields
(
EntrustSample
sample
)
{
RestAssert
.
fail
(
StringUtils
.
isBlank
(
sample
.
getCode
()),
"样品编号不能为空"
);
...
...
@@ -702,23 +703,9 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
@Override
public
Page
<
EntrustVO
>
pageEntrustByReportNotHis
(
Page
<
EntrustVO
>
page
,
EntrustVO
entrust
)
{
RestAssert
.
fail
(
null
==
entrust
.
getReportNotStatus
(),
"报告状态不能为空"
);
List
<
EntrustReport
>
reportList
=
entrustReportService
.
list
(
Condition
.
create
().
ne
(
"status"
,
entrust
.
getReportNotStatus
()));
if
(
CollectionUtils
.
isEmpty
(
reportList
))
{
return
page
;
}
List
<
Long
>
ids
=
reportList
.
stream
().
map
(
s
->
{
return
s
.
getEntrustId
();
}).
collect
(
Collectors
.
toList
());
if
(
CollectionUtils
.
isEmpty
(
ids
))
{
return
page
;
}
entrust
.
setIdsList
(
ids
);
return
page
.
setRecords
(
baseMapper
.
selectVOList
(
page
,
entrust
));
}
@Override
public
Page
<
EntrustVO
>
pageEntrustByReportHis
(
Page
<
EntrustVO
>
page
,
EntrustVO
entrust
)
{
//
...
...
src/main/resources/mapper/hmhj/EntrustMapper.xml
View file @
3cff24f2
...
...
@@ -108,12 +108,27 @@
where s.deleted = 0 and i.deleted = 0 and s.entrust_id = e.id and i.status = #{vo.itemStatus}
)
</if>
<if
test=
"null!=vo.testerId"
>
and exists (
select 1 from entrust_sample_item i join entrust_sample s on i.entrust_sample_id = s.id
where s.deleted = 0 and i.deleted = 0 and s.entrust_id = e.id and i.tester_id = #{vo.testerId}
)
</if>
<if
test=
"null != vo.reportStatus"
>
AND exists (
select 1 from entrust_report r where r.deleted = 0 and r.entrust_id = e.id
and r.status = #{vo.reportStatus}
)
</if>
<if
test=
"null != vo.reportNotStatus"
>
AND exists (
select 1 from entrust_report r where r.deleted = 0 and r.entrust_id = e.id
and r.status != #{vo.reportNotStatus}
)
</if>
<if
test=
"null != vo.reportStatusList"
>
AND exists (
...
...
src/main/resources/mapper/hmhj/EntrustReportTemplateConfigMapper.xml
View file @
3cff24f2
...
...
@@ -2,4 +2,19 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.patzn.cloud.service.lims.hmhj.mapper.EntrustReportTemplateConfigMapper"
>
<update
id=
"updateConfigById"
>
update entrust_report_template_config
set
attribute_name = #{vo.attributeName}
,data_attribute = #{vo.dataAttribute}
,column_place = #{vo.columnPlace}
,template_id = #{vo.templateId}
,lid = #{vo.lid}
,ltime = #{vo.ltime}
,merge_begin = #{vo.mergeBegin}
,merge_end = #{vo.mergeEnd}
,merge_row_num = #{vo.mergeRowNum}
,sheet_num = #{vo.sheetNum}
where id = #{vo.id}
</update>
</mapper>
src/main/resources/mapper/hmhj/EntrustReportTemplateMapper.xml
View file @
3cff24f2
...
...
@@ -2,4 +2,24 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper
namespace=
"com.patzn.cloud.service.lims.hmhj.mapper.EntrustReportTemplateMapper"
>
<update
id=
"updateTemplateById"
>
update entrust_report_template
set
lid = #{vo.lid}
,ltime = #{vo.ltime}
,version = #{vo.version}
,uri = #{vo.uri}
,remark = #{vo.remark}
,bucket_name = #{vo.bucketName}
,object_key = #{vo.objectKey}
,version_id = #{vo.versionId}
,name = #{vo.name}
,uname = #{vo.uname}
,sample_begin_row = #{vo.sampleBeginRow}
,sample_merger_num = #{vo.sampleMergerNum}
,template_sample_num = #{vo.templateSampleNum}
,class_type = #{vo.classType}
,more_sheet = #{vo.moreSheet}
where id = #{vo.id}
</update>
</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