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
da556a98
Commit
da556a98
authored
Jan 18, 2022
by
lijingjing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
霍煤多委托项目原始记录生成;
parent
131e4003
Expand all
Hide whitespace changes
Inline
Side-by-side
Showing
16 changed files
with
311 additions
and
74 deletions
+311
-74
EntrustSampleItemController.java
...ice/lims/hmhj/controller/EntrustSampleItemController.java
+41
-0
OriginalTemplateController.java
...vice/lims/hmhj/controller/OriginalTemplateController.java
+7
-8
EntrustSampleItemMapper.java
...oud/service/lims/hmhj/mapper/EntrustSampleItemMapper.java
+6
-0
OriginalFactory.java
...tzn/cloud/service/lims/hmhj/original/OriginalFactory.java
+27
-16
OriginalUtil.java
.../patzn/cloud/service/lims/hmhj/original/OriginalUtil.java
+42
-29
SingleSheetMoreItemOperation.java
...vice/lims/hmhj/original/SingleSheetMoreItemOperation.java
+18
-1
SingleSheetMoreOperation.java
.../service/lims/hmhj/original/SingleSheetMoreOperation.java
+14
-2
IEntrustSampleItemService.java
.../service/lims/hmhj/service/IEntrustSampleItemService.java
+9
-4
IEntrustSampleService.java
...loud/service/lims/hmhj/service/IEntrustSampleService.java
+1
-0
IOriginalRecordService.java
...oud/service/lims/hmhj/service/IOriginalRecordService.java
+3
-0
EntrustSampleItemServiceImpl.java
.../lims/hmhj/service/impl/EntrustSampleItemServiceImpl.java
+0
-0
EntrustSampleServiceImpl.java
...vice/lims/hmhj/service/impl/EntrustSampleServiceImpl.java
+9
-0
EntrustServiceImpl.java
...ud/service/lims/hmhj/service/impl/EntrustServiceImpl.java
+4
-0
OriginalRecordServiceImpl.java
...ice/lims/hmhj/service/impl/OriginalRecordServiceImpl.java
+50
-10
EntrustSampleItemMapper.xml
src/main/resources/mapper/hmhj/EntrustSampleItemMapper.xml
+71
-4
20220118新增字段.sql
src/test/java/resources/db_sql/hmhj/v172/20220118新增字段.sql
+9
-0
No files found.
src/main/java/com/patzn/cloud/service/lims/hmhj/controller/EntrustSampleItemController.java
View file @
da556a98
...
...
@@ -13,6 +13,7 @@ import com.patzn.cloud.service.hmhj.entity.ItemDeviate;
import
com.patzn.cloud.service.hmhj.entity.OriginalRecord
;
import
com.patzn.cloud.service.hmhj.enums.EntrustSampleItemStatusEnum
;
import
com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO
;
import
com.patzn.cloud.service.hmhj.vo.ItemVO
;
import
com.patzn.cloud.service.hmhj.vo.TesterWorkloadStatsVO
;
import
com.patzn.cloud.service.lims.base.entity.LmsUserRelGroup
;
import
com.patzn.cloud.service.lims.base.vo.LmsUserRelGroupVO
;
...
...
@@ -604,6 +605,12 @@ public class EntrustSampleItemController extends ServiceController {
return
success
(
entrustSampleItemService
.
saveExcelOriginalRecord
(
ids
,
templateId
,
getAccount
(),
entrustCode
));
}
@ApiOperation
(
value
=
"填写原始记录 - 多委托检测项目"
,
notes
=
"填写原始记录 - 多委托检测项目"
)
@PostMapping
(
"/save_excel_original_records"
)
public
RestResult
<
OriginalRecord
>
saveExcelOriginalRecords
(
@RequestParam
(
"ids"
)
Long
[]
ids
,
@RequestParam
(
"templateId"
)
Long
templateId
)
{
return
success
(
entrustSampleItemService
.
saveExcelOriginalRecords
(
ids
,
templateId
,
getAccount
()));
}
@ApiOperation
(
"样品质量判定"
)
@PostMapping
(
"/sample_quality_judge"
)
...
...
@@ -673,4 +680,38 @@ public class EntrustSampleItemController extends ServiceController {
RestAssert
.
fail
(
null
==
itemVO
.
getEntrustId
(),
"委托ID为空"
);
return
success
(
entrustSampleItemService
.
getItemFillProgressQuery
(
getPage
(),
itemVO
));
}
@ApiOperation
(
value
=
"按项目录入左侧列表"
,
notes
=
"按项目录入左侧列表"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
RestConstants
.
PAGE_PAGE
,
value
=
"请求数据的页码"
,
required
=
true
,
paramType
=
"query"
,
dataType
=
"int"
),
@ApiImplicitParam
(
name
=
RestConstants
.
PAGE_ROWS
,
value
=
"每页条数"
,
required
=
true
,
paramType
=
"query"
,
dataType
=
"int"
),
@ApiImplicitParam
(
name
=
RestConstants
.
PAGE_SIDX
,
value
=
"排序字段"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
RestConstants
.
PAGE_SORD
,
value
=
"排序方式"
,
paramType
=
"query"
,
dataType
=
"String"
),
})
@PostMapping
(
"/page_input_item_left"
)
public
RestResult
<
Page
<
ItemVO
>>
pageInputItemLeft
(
ItemVO
vo
)
{
vo
.
setCompanyId
(
currentCompanyId
());
vo
.
setUid
(
currentUserId
());
return
success
(
entrustSampleItemService
.
pageInputItemLeft
(
getPage
(),
vo
));
}
@ApiOperation
(
value
=
"按项目录入右侧列表"
,
notes
=
"按项目录入右侧列表"
)
@ApiImplicitParams
({
@ApiImplicitParam
(
name
=
RestConstants
.
PAGE_PAGE
,
value
=
"请求数据的页码"
,
required
=
true
,
paramType
=
"query"
,
dataType
=
"int"
),
@ApiImplicitParam
(
name
=
RestConstants
.
PAGE_ROWS
,
value
=
"每页条数"
,
required
=
true
,
paramType
=
"query"
,
dataType
=
"int"
),
@ApiImplicitParam
(
name
=
RestConstants
.
PAGE_SIDX
,
value
=
"排序字段"
,
paramType
=
"query"
,
dataType
=
"String"
),
@ApiImplicitParam
(
name
=
RestConstants
.
PAGE_SORD
,
value
=
"排序方式"
,
paramType
=
"query"
,
dataType
=
"String"
),
})
@PostMapping
(
"/page_input_item_right"
)
public
RestResult
<
Page
<
ItemVO
>>
pageInputItemRight
(
ItemVO
dto
)
{
dto
.
setUid
(
currentUserId
());
dto
.
setCompanyId
(
currentCompanyId
());
return
success
(
entrustSampleItemService
.
pageInputItemRight
(
getPage
(),
dto
));
}
@ApiOperation
(
value
=
"数据录入查询是否项目可以填写原始记录"
,
notes
=
"数据录入查询是否项目可以填写原始记录"
)
@PostMapping
(
"/check_can_write_original"
)
public
RestResult
<
Boolean
>
checkCanWriteOriginal
(
@RequestParam
(
"ids"
)
Long
[]
ids
)
{
return
success
(
entrustSampleItemService
.
checkCanWriteOriginal
(
ids
));
}
}
src/main/java/com/patzn/cloud/service/lims/hmhj/controller/OriginalTemplateController.java
View file @
da556a98
...
...
@@ -2,22 +2,20 @@ package com.patzn.cloud.service.lims.hmhj.controller;
import
com.baomidou.kisso.annotation.Action
;
import
com.baomidou.kisso.annotation.Login
;
import
com.patzn.cloud.feign.lims.hmhj.client.OriginalTemplateClient
;
import
com.patzn.cloud.oss.starter.OssFileResult
;
import
com.patzn.cloud.service.hmhj.entity.OriginalTemplate
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
com.baomidou.mybatisplus.plugins.Page
;
import
com.patzn.cloud.commons.api.RestConstants
;
import
com.patzn.cloud.commons.api.RestResult
;
import
com.patzn.cloud.commons.controller.ServiceController
;
import
com.patzn.cloud.feign.lims.hmhj.client.OriginalTemplateClient
;
import
com.patzn.cloud.oss.starter.OssFileResult
;
import
com.patzn.cloud.service.hmhj.entity.OriginalTemplate
;
import
com.patzn.cloud.service.lims.hmhj.service.IOriginalTemplateService
;
import
io.swagger.annotations.Api
;
import
io.swagger.annotations.ApiImplicitParam
;
import
io.swagger.annotations.ApiImplicitParams
;
import
io.swagger.annotations.ApiOperation
;
import
org.springframework.beans.factory.annotation.Autowired
;
import
org.springframework.web.bind.annotation.*
;
import
org.springframework.web.multipart.MultipartFile
;
import
java.util.List
;
...
...
@@ -100,7 +98,8 @@ public class OriginalTemplateController extends ServiceController implements Ori
@Login
(
action
=
Action
.
Skip
)
@ApiOperation
(
value
=
"编辑原始记录"
,
notes
=
"编辑证书模板"
)
@PostMapping
({
"/edit_original_{someParam}"
})
public
RestResult
<
Boolean
>
editOriginal
(
@PathVariable
(
"someParam"
)
String
someParam
,
@RequestBody
OssFileResult
obsFileResult
)
{
public
RestResult
<
Boolean
>
editOriginal
(
@PathVariable
(
"someParam"
)
String
someParam
,
@RequestBody
OssFileResult
obsFileResult
)
{
return
success
(
originalTemplateService
.
editOriginal
(
someParam
,
obsFileResult
));
}
...
...
src/main/java/com/patzn/cloud/service/lims/hmhj/mapper/EntrustSampleItemMapper.java
View file @
da556a98
...
...
@@ -79,4 +79,10 @@ public interface EntrustSampleItemMapper extends BatchMapper<EntrustSampleItem>
boolean
updateSampleRetakeInfoByEntrustId
(
@Param
(
"entrustId"
)
Long
entrustId
);
List
<
EntrustSampleItemIndexVO
>
selectItemTestByEntrustId
(
@Param
(
"entrustId"
)
Long
entrustId
);
@SqlParser
(
filter
=
true
)
List
<
ItemVO
>
pageInputItemLeft
(
RowBounds
rowBounds
,
@Param
(
"vo"
)
ItemVO
vo
);
@SqlParser
(
filter
=
true
)
List
<
ItemVO
>
pageInputItemRight
(
RowBounds
rowBounds
,
@Param
(
"vo"
)
ItemVO
vo
);
}
src/main/java/com/patzn/cloud/service/lims/hmhj/original/OriginalFactory.java
View file @
da556a98
package
com
.
patzn
.
cloud
.
service
.
lims
.
hmhj
.
original
;
import
com.baomidou.mybatisplus.toolkit.CollectionUtils
;
import
com.patzn.cloud.service.hmhj.entity.Entrust
;
import
com.patzn.cloud.service.hmhj.entity.OriginalTemplate
;
import
com.patzn.cloud.service.hmhj.entity.OriginalTemplateConfig
;
...
...
@@ -8,10 +9,14 @@ import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import
java.util.List
;
/**
* @author Meazty
*/
public
class
OriginalFactory
{
private
OriginalTemplate
template
;
private
List
<
EntrustSampleItemVO
>
voList
;
private
Entrust
entrust
;
private
List
<
EntrustSampleItemVO
>
voList
;
private
Entrust
entrust
;
private
List
<
Entrust
>
entrustList
;
private
List
<
OriginalTemplateConfig
>
configList
;
private
XSSFWorkbook
xssfWorkbook
;
...
...
@@ -23,24 +28,30 @@ public class OriginalFactory {
this
.
xssfWorkbook
=
xssfWorkbook
;
}
public
Operation
getOperation
(){
if
(
null
==
template
.
getMoreSheet
()
||
0
==
template
.
getMoreSheet
()){
public
OriginalFactory
(
OriginalTemplate
template
,
List
<
EntrustSampleItemVO
>
voList
,
List
<
OriginalTemplateConfig
>
configList
,
List
<
Entrust
>
entrustList
,
XSSFWorkbook
xssfWorkbook
)
{
this
.
entrustList
=
entrustList
;
this
.
template
=
template
;
this
.
voList
=
voList
;
this
.
configList
=
configList
;
this
.
xssfWorkbook
=
xssfWorkbook
;
}
if
(
null
==
template
.
getSampleBeginRow
()||
null
==
template
.
getSampleMergerNum
()||
null
==
template
.
getTemplateSampleNum
()){
return
null
;
public
Operation
getOperation
()
{
if
(
null
==
template
.
getMoreSheet
()
||
0
==
template
.
getMoreSheet
())
{
if
(
null
==
template
.
getSampleBeginRow
()
||
null
==
template
.
getSampleMergerNum
()
||
null
==
template
.
getTemplateSampleNum
())
{
return
null
;
}
if
(
CollectionUtils
.
isNotEmpty
(
entrustList
))
{
return
new
SingleSheetMoreOperation
(
template
,
entrustList
,
voList
,
configList
,
xssfWorkbook
);
}
// if (voList.size()<template.getTemplateSampleNum()){
// return new SingleSheetLittleOperation(template,voList,entrust,configList,xssfWorkbook);
// }else{
return
new
SingleSheetMoreOperation
(
template
,
voList
,
entrust
,
configList
,
xssfWorkbook
);
// }
}
else
{
return
new
SingleSheetMoreOperation
(
template
,
voList
,
entrust
,
configList
,
xssfWorkbook
);
}
else
{
Integer
templateSampleNum
=
template
.
getTemplateSampleNum
();
if
(
null
==
templateSampleNum
||
1
==
templateSampleNum
)
{
return
new
MoreSheetOneOperation
(
template
,
voList
,
entrust
,
configList
,
xssfWorkbook
);
}
else
{
return
new
MoreSheetMoreOperation
(
template
,
voList
,
entrust
,
configList
,
xssfWorkbook
);
if
(
null
==
templateSampleNum
||
1
==
templateSampleNum
)
{
return
new
MoreSheetOneOperation
(
template
,
voList
,
entrust
,
configList
,
xssfWorkbook
);
}
else
{
return
new
MoreSheetMoreOperation
(
template
,
voList
,
entrust
,
configList
,
xssfWorkbook
);
}
}
}
...
...
src/main/java/com/patzn/cloud/service/lims/hmhj/original/OriginalUtil.java
View file @
da556a98
package
com
.
patzn
.
cloud
.
service
.
lims
.
hmhj
.
original
;
import
com.baomidou.mybatisplus.toolkit.CollectionUtils
;
import
com.patzn.cloud.service.hmhj.entity.Entrust
;
import
com.patzn.cloud.service.lims.common.StringHandleUtils
;
import
com.patzn.cloud.service.lims.hmhj.common.HSSFWorkbookUtil
;
import
org.apache.poi.xssf.usermodel.XSSFWorkbook
;
import
java.util.HashMap
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
public
final
class
OriginalUtil
{
public
final
static
String
initFormula
(
String
formula
,
Integer
i
)
{
formula
=
formula
.
replace
(
"#{sn}"
,(
i
+
1
)+
""
);
public
final
static
String
initFormula
(
String
formula
,
Integer
i
)
{
formula
=
formula
.
replace
(
"#{sn}"
,
(
i
+
1
)
+
""
);
if
(
formula
.
contains
(
"#{sneven1}"
)){
if
(
StringHandleUtils
.
isEven
(
i
)){
formula
=
formula
.
replace
(
"#{sneven1}"
,(
i
+
1
)+
""
);
}
else
{
formula
=
formula
.
replace
(
"#{sneven1}"
,
i
+
""
);
if
(
formula
.
contains
(
"#{sneven1}"
))
{
if
(
StringHandleUtils
.
isEven
(
i
))
{
formula
=
formula
.
replace
(
"#{sneven1}"
,
(
i
+
1
)
+
""
);
}
else
{
formula
=
formula
.
replace
(
"#{sneven1}"
,
i
+
""
);
}
}
if
(
formula
.
contains
(
"#{snodd1}"
)){
if
(!
StringHandleUtils
.
isEven
(
i
)){
formula
=
formula
.
replace
(
"#{snodd1}"
,(
i
+
1
)+
""
);
}
else
{
formula
=
formula
.
replace
(
"#{snodd1}"
,
i
+
""
);
if
(
formula
.
contains
(
"#{snodd1}"
))
{
if
(!
StringHandleUtils
.
isEven
(
i
))
{
formula
=
formula
.
replace
(
"#{snodd1}"
,
(
i
+
1
)
+
""
);
}
else
{
formula
=
formula
.
replace
(
"#{snodd1}"
,
i
+
""
);
}
}
if
(
formula
.
contains
(
"#{sn+1}"
)){
formula
=
formula
.
replace
(
"#{sn+1}"
,(
i
+
2
)+
""
);
if
(
formula
.
contains
(
"#{sn+1}"
))
{
formula
=
formula
.
replace
(
"#{sn+1}"
,
(
i
+
2
)
+
""
);
}
if
(
formula
.
contains
(
"#{sn+2}"
)){
formula
=
formula
.
replace
(
"#{sn+2}"
,(
i
+
3
)+
""
);
if
(
formula
.
contains
(
"#{sn+2}"
))
{
formula
=
formula
.
replace
(
"#{sn+2}"
,
(
i
+
3
)
+
""
);
}
if
(
formula
.
contains
(
"#{sn+3}"
)){
formula
=
formula
.
replace
(
"#{sn+3}"
,(
i
+
4
)+
""
);
if
(
formula
.
contains
(
"#{sn+3}"
))
{
formula
=
formula
.
replace
(
"#{sn+3}"
,
(
i
+
4
)
+
""
);
}
if
(
formula
.
contains
(
"#{sn+4}"
)){
formula
=
formula
.
replace
(
"#{sn+4}"
,(
i
+
5
)+
""
);
if
(
formula
.
contains
(
"#{sn+4}"
))
{
formula
=
formula
.
replace
(
"#{sn+4}"
,
(
i
+
5
)
+
""
);
}
if
(
formula
.
contains
(
"#{sn+5}"
)){
formula
=
formula
.
replace
(
"#{sn+5}"
,(
i
+
6
)+
""
);
if
(
formula
.
contains
(
"#{sn+5}"
))
{
formula
=
formula
.
replace
(
"#{sn+5}"
,
(
i
+
6
)
+
""
);
}
if
(
formula
.
contains
(
"#{sn+6}"
)){
formula
=
formula
.
replace
(
"#{sn+6}"
,(
i
+
7
)+
""
);
if
(
formula
.
contains
(
"#{sn+6}"
))
{
formula
=
formula
.
replace
(
"#{sn+6}"
,
(
i
+
7
)
+
""
);
}
if
(
formula
.
contains
(
"#{sn+7}"
)){
formula
=
formula
.
replace
(
"#{sn+7}"
,(
i
+
8
)+
""
);
if
(
formula
.
contains
(
"#{sn+7}"
))
{
formula
=
formula
.
replace
(
"#{sn+7}"
,
(
i
+
8
)
+
""
);
}
return
formula
;
}
public
final
static
void
doReplace
(
XSSFWorkbook
xssfWorkbook
,
Entrust
entrust
){
public
final
static
void
doReplace
(
XSSFWorkbook
xssfWorkbook
,
Entrust
entrust
)
{
Map
<
String
,
String
>
mapReplace
=
new
HashMap
<>();
mapReplace
.
put
(
"#{client}"
,
entrust
.
getClient
());
HSSFWorkbookUtil
.
replaceModel
(
mapReplace
,
xssfWorkbook
,
0
);
mapReplace
.
put
(
"#{client}"
,
entrust
.
getClient
());
HSSFWorkbookUtil
.
replaceModel
(
mapReplace
,
xssfWorkbook
,
0
);
}
public
final
static
void
doReplaceMulti
(
XSSFWorkbook
xssfWorkbook
,
List
<
Entrust
>
entrusts
)
{
String
client
=
""
;
if
(
CollectionUtils
.
isNotEmpty
(
entrusts
))
{
client
=
entrusts
.
stream
().
map
(
Entrust:
:
getClient
).
collect
(
Collectors
.
joining
(
","
));
}
Map
<
String
,
String
>
mapReplace
=
new
HashMap
<>();
mapReplace
.
put
(
"#{client}"
,
client
);
HSSFWorkbookUtil
.
replaceModel
(
mapReplace
,
xssfWorkbook
,
0
);
}
}
src/main/java/com/patzn/cloud/service/lims/hmhj/original/SingleSheetMoreItemOperation.java
View file @
da556a98
package
com
.
patzn
.
cloud
.
service
.
lims
.
hmhj
.
original
;
import
com.baomidou.mybatisplus.toolkit.CollectionUtils
;
import
com.patzn.cloud.service.hmhj.entity.Entrust
;
import
com.patzn.cloud.service.hmhj.entity.OriginalTemplate
;
import
com.patzn.cloud.service.hmhj.entity.OriginalTemplateConfig
;
...
...
@@ -21,6 +22,7 @@ public class SingleSheetMoreItemOperation implements Operation {
private
OriginalTemplate
template
;
private
List
<
EntrustSampleVO
>
voList
;
private
Entrust
entrust
;
private
List
<
Entrust
>
entrustList
;
private
List
<
OriginalTemplateConfig
>
configList
;
private
XSSFWorkbook
xssfWorkbook
;
private
String
collectionDatePrefix
=
"clc."
;
...
...
@@ -29,9 +31,18 @@ public class SingleSheetMoreItemOperation implements Operation {
private
Map
<
Integer
,
String
>
valueMap
;
public
SingleSheetMoreItemOperation
(
OriginalTemplate
template
,
List
<
EntrustSampleVO
>
voList
,
Entrust
entrust
,
List
<
OriginalTemplateConfig
>
configList
,
XSSFWorkbook
xssfWorkbook
)
{
initData
(
template
,
voList
,
entrust
,
null
,
configList
,
xssfWorkbook
);
}
public
SingleSheetMoreItemOperation
(
OriginalTemplate
template
,
List
<
Entrust
>
entrustList
,
List
<
EntrustSampleVO
>
voList
,
List
<
OriginalTemplateConfig
>
configList
,
XSSFWorkbook
xssfWorkbook
)
{
initData
(
template
,
voList
,
null
,
entrustList
,
configList
,
xssfWorkbook
);
}
private
void
initData
(
OriginalTemplate
template
,
List
<
EntrustSampleVO
>
voList
,
Entrust
entrust
,
List
<
Entrust
>
entrustList
,
List
<
OriginalTemplateConfig
>
configList
,
XSSFWorkbook
xssfWorkbook
)
{
this
.
template
=
template
;
this
.
voList
=
voList
;
this
.
entrust
=
entrust
;
this
.
entrustList
=
entrustList
;
this
.
configList
=
configList
;
this
.
xssfWorkbook
=
xssfWorkbook
;
dealCollectionData
(
voList
,
configList
);
...
...
@@ -73,7 +84,13 @@ public class SingleSheetMoreItemOperation implements Operation {
@Override
public
void
doMakeOriginal
()
{
OriginalUtil
.
doReplace
(
xssfWorkbook
,
entrust
);
if
(
CollectionUtils
.
isNotEmpty
(
entrustList
))
{
OriginalUtil
.
doReplaceMulti
(
xssfWorkbook
,
entrustList
);
}
else
{
OriginalUtil
.
doReplace
(
xssfWorkbook
,
entrust
);
}
XSSFSheet
sheetOne
=
xssfWorkbook
.
getSheetAt
(
0
);
sheetOne
.
setForceFormulaRecalculation
(
true
);
Integer
beginRow
=
template
.
getSampleBeginRow
();
...
...
src/main/java/com/patzn/cloud/service/lims/hmhj/original/SingleSheetMoreOperation.java
View file @
da556a98
...
...
@@ -18,6 +18,7 @@ public class SingleSheetMoreOperation implements Operation {
private
OriginalTemplate
template
;
private
List
<
EntrustSampleItemVO
>
voList
;
private
Entrust
entrust
;
private
List
<
Entrust
>
entrustList
;
private
List
<
OriginalTemplateConfig
>
configList
;
private
XSSFWorkbook
xssfWorkbook
;
private
String
collectionDataPrefix
=
"clc."
;
...
...
@@ -30,13 +31,24 @@ public class SingleSheetMoreOperation implements Operation {
this
.
configList
=
configList
;
this
.
xssfWorkbook
=
xssfWorkbook
;
this
.
formulaEvaluator
=
new
XSSFFormulaEvaluator
(
xssfWorkbook
);
}
public
SingleSheetMoreOperation
(
OriginalTemplate
template
,
List
<
Entrust
>
entrustList
,
List
<
EntrustSampleItemVO
>
voList
,
List
<
OriginalTemplateConfig
>
configList
,
XSSFWorkbook
xssfWorkbook
)
{
this
.
entrustList
=
entrustList
;
this
.
template
=
template
;
this
.
voList
=
voList
;
this
.
configList
=
configList
;
this
.
xssfWorkbook
=
xssfWorkbook
;
this
.
formulaEvaluator
=
new
XSSFFormulaEvaluator
(
xssfWorkbook
);
}
@Override
public
void
doMakeOriginal
()
{
OriginalUtil
.
doReplace
(
xssfWorkbook
,
entrust
);
if
(
CollectionUtils
.
isNotEmpty
(
entrustList
))
{
OriginalUtil
.
doReplaceMulti
(
xssfWorkbook
,
entrustList
);
}
else
{
OriginalUtil
.
doReplace
(
xssfWorkbook
,
entrust
);
}
XSSFSheet
sheetOne
=
xssfWorkbook
.
getSheetAt
(
0
);
sheetOne
.
setForceFormulaRecalculation
(
true
);
Integer
beginRow
=
template
.
getSampleBeginRow
();
...
...
src/main/java/com/patzn/cloud/service/lims/hmhj/service/IEntrustSampleItemService.java
View file @
da556a98
...
...
@@ -9,10 +9,7 @@ import com.patzn.cloud.service.hmhj.entity.EntrustSampleItem;
import
com.patzn.cloud.service.hmhj.entity.ItemDeviate
;
import
com.patzn.cloud.service.hmhj.entity.OriginalRecord
;
import
com.patzn.cloud.service.hmhj.enums.EntrustFlowEnum
;
import
com.patzn.cloud.service.hmhj.vo.EntrustSampleCalcResultVO
;
import
com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO
;
import
com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO
;
import
com.patzn.cloud.service.hmhj.vo.TesterWorkloadStatsVO
;
import
com.patzn.cloud.service.hmhj.vo.*
;
import
com.patzn.cloud.service.lims.base.entity.LmsUserRelGroup
;
import
com.patzn.cloud.service.lims.base.vo.LmsUserRelGroupVO
;
...
...
@@ -61,6 +58,8 @@ public interface IEntrustSampleItemService extends IBaseService<EntrustSampleIte
OriginalRecord
saveExcelOriginalRecord
(
Long
[]
ids
,
Long
templateId
,
Account
account
,
String
entrustCode
);
OriginalRecord
saveExcelOriginalRecords
(
Long
[]
ids
,
Long
templateId
,
Account
account
);
boolean
deviateApply
(
Long
[]
ids
,
ItemDeviate
deviate
,
Account
account
);
Page
<
EntrustSampleItemVO
>
pageItemDeviateCheck
(
Page
<
EntrustSampleItemVO
>
page
,
EntrustSampleItemVO
entrustSampleItem
);
...
...
@@ -124,4 +123,10 @@ public interface IEntrustSampleItemService extends IBaseService<EntrustSampleIte
List
<
EntrustSampleItemIndexVO
>
getItemTestByEntrustId
(
Long
entrustIds
);
EntrustSampleItem
getItemModelBySampleId
(
Long
sampleId
);
Page
<
ItemVO
>
pageInputItemLeft
(
Page
<
ItemVO
>
page
,
ItemVO
vo
);
Page
<
ItemVO
>
pageInputItemRight
(
Page
<
ItemVO
>
page
,
ItemVO
vo
);
Boolean
checkCanWriteOriginal
(
Long
[]
ids
);
}
src/main/java/com/patzn/cloud/service/lims/hmhj/service/IEntrustSampleService.java
View file @
da556a98
...
...
@@ -135,4 +135,5 @@ public interface IEntrustSampleService extends IBaseService<EntrustSample> {
void
exportSampleIndex
(
Long
entrustId
,
Account
account
,
HttpServletResponse
response
);
boolean
isRepeatSampleCode
(
EntrustSample
sample
);
}
src/main/java/com/patzn/cloud/service/lims/hmhj/service/IOriginalRecordService.java
View file @
da556a98
...
...
@@ -11,6 +11,7 @@ import com.patzn.cloud.service.hmhj.vo.OriginalRecordVO;
import
javax.servlet.http.HttpServletResponse
;
import
java.io.File
;
import
java.util.List
;
import
java.util.Map
;
/**
* 土工原始记录表 服务类
...
...
@@ -26,6 +27,8 @@ public interface IOriginalRecordService extends IBaseService<OriginalRecord> {
OriginalRecord
uploadExpGenerate
(
Long
[]
ids
,
OriginalTemplate
template
,
Entrust
entrust
,
Account
account
,
String
remark
,
File
file
);
OriginalRecord
uploadExpGenerate
(
Map
<
Long
,
List
<
Long
>>
entrustItemIdMap
,
OriginalTemplate
template
,
Account
account
,
String
remark
,
File
file
);
Page
<
OriginalRecordVO
>
pageVO
(
Page
<
OriginalRecordVO
>
page
,
OriginalRecordVO
originalRecord
);
void
download
(
Long
entrustId
,
Long
id
,
HttpServletResponse
response
);
...
...
src/main/java/com/patzn/cloud/service/lims/hmhj/service/impl/EntrustSampleItemServiceImpl.java
View file @
da556a98
This diff is collapsed.
Click to expand it.
src/main/java/com/patzn/cloud/service/lims/hmhj/service/impl/EntrustSampleServiceImpl.java
View file @
da556a98
...
...
@@ -2212,4 +2212,12 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
}
}
@Override
public
boolean
isRepeatSampleCode
(
EntrustSample
sample
){
if
(
StringUtils
.
isBlank
(
sample
.
getCode
())){
return
false
;
}
return
super
.
count
(
Condition
.
create
().
eq
(
"code"
,
sample
.
getCode
()))
>
0
;
}
}
\ No newline at end of file
src/main/java/com/patzn/cloud/service/lims/hmhj/service/impl/EntrustServiceImpl.java
View file @
da556a98
...
...
@@ -339,6 +339,10 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
sample
.
setThirdCode
(
thirdCode
);
}
}
if
(
StringUtils
.
isNotBlank
(
sample
.
getCode
())){
RestAssert
.
fail
(
entrustSampleService
.
isRepeatSampleCode
(
sample
),
String
.
format
(
"样品编号【%s】重复!"
));
}
}
private
String
getSampleThirdCode
(
EntrustSample
sample
)
{
...
...
src/main/java/com/patzn/cloud/service/lims/hmhj/service/impl/OriginalRecordServiceImpl.java
View file @
da556a98
...
...
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper;
import
com.baomidou.mybatisplus.mapper.Wrapper
;
import
com.baomidou.mybatisplus.plugins.Page
;
import
com.baomidou.mybatisplus.toolkit.CollectionUtils
;
import
com.baomidou.mybatisplus.toolkit.IdWorker
;
import
com.baomidou.mybatisplus.toolkit.MapUtils
;
import
com.patzn.cloud.commons.api.RestAssert
;
import
com.patzn.cloud.commons.controller.Account
;
...
...
@@ -30,6 +31,7 @@ import java.io.File;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.Map
;
import
java.util.stream.Collectors
;
/**
* 土工原始记录表 服务实现类
...
...
@@ -83,30 +85,68 @@ public class OriginalRecordServiceImpl extends BaseServiceImpl<OriginalRecordMap
RestAssert
.
fail
(
null
==
entrust
.
getId
(),
"试验委托单ID不能为空"
);
OriginalRecord
soilO
riginalRecord
=
new
OriginalRecord
();
soilO
riginalRecord
.
setEntrustId
(
entrust
.
getId
());
soilO
riginalRecord
.
setTemplateId
(
template
.
getId
());
soilO
riginalRecord
.
setTitle
(
template
.
getName
());
soilO
riginalRecord
.
setRemark
(
remark
);
soilO
riginalRecord
.
setUname
(
account
.
getUserName
());
OriginalRecord
o
riginalRecord
=
new
OriginalRecord
();
o
riginalRecord
.
setEntrustId
(
entrust
.
getId
());
o
riginalRecord
.
setTemplateId
(
template
.
getId
());
o
riginalRecord
.
setTitle
(
template
.
getName
());
o
riginalRecord
.
setRemark
(
remark
);
o
riginalRecord
.
setUname
(
account
.
getUserName
());
OssFileResult
obsFileResult
=
ossClient
.
upload
(
file
);
if
(
null
==
obsFileResult
)
{
return
null
;
}
soilO
riginalRecord
.
setObjectKey
(
obsFileResult
.
getObjectKey
());
if
(
save
(
soilO
riginalRecord
))
{
o
riginalRecord
.
setObjectKey
(
obsFileResult
.
getObjectKey
());
if
(
save
(
o
riginalRecord
))
{
List
<
ItemRelOriginalRecord
>
saveList
=
new
ArrayList
<>();
for
(
Long
id
:
ids
)
{
ItemRelOriginalRecord
relOriginalRecord
=
new
ItemRelOriginalRecord
();
relOriginalRecord
.
setItemId
(
id
);
relOriginalRecord
.
setRecordId
(
soilO
riginalRecord
.
getId
());
relOriginalRecord
.
setRecordId
(
o
riginalRecord
.
getId
());
saveList
.
add
(
relOriginalRecord
);
}
if
(
CollectionUtils
.
isNotEmpty
(
saveList
))
{
itemRelOriginalRecordService
.
saveBatch
(
saveList
);
}
}
return
soilO
riginalRecord
;
return
o
riginalRecord
;
}
@Transactional
(
rollbackFor
=
Exception
.
class
)
@Override
public
OriginalRecord
uploadExpGenerate
(
Map
<
Long
,
List
<
Long
>>
entrustItemIdMap
,
OriginalTemplate
template
,
Account
account
,
String
remark
,
File
file
)
{
RestAssert
.
fail
(
MapUtils
.
isEmpty
(
entrustItemIdMap
),
"请选择试验项目"
);
// 先上传文件,后保存记录
OssFileResult
ossFileResult
=
ossClient
.
upload
(
file
);
if
(
null
==
ossFileResult
)
{
return
null
;
}
String
entrustIds
=
StringUtils
.
join
(
entrustItemIdMap
.
keySet
(),
","
);
List
<
ItemRelOriginalRecord
>
itemOriginalList
=
new
ArrayList
<>();
OriginalRecord
originalRecord
=
new
OriginalRecord
();
originalRecord
.
setEntrustIds
(
entrustIds
);
originalRecord
.
setTemplateId
(
template
.
getId
());
originalRecord
.
setTitle
(
template
.
getName
());
originalRecord
.
setRemark
(
remark
);
originalRecord
.
setUname
(
account
.
getUserName
());
originalRecord
.
setObjectKey
(
ossFileResult
.
getObjectKey
());
originalRecord
.
setId
(
IdWorker
.
getId
());
save
(
originalRecord
);
entrustItemIdMap
.
values
().
forEach
(
m
->
{
itemOriginalList
.
addAll
(
m
.
stream
().
map
(
t
->
new
ItemRelOriginalRecord
().
setItemId
(
t
).
setRecordId
(
originalRecord
.
getId
())
).
collect
(
Collectors
.
toList
()));
});
if
(
CollectionUtils
.
isNotEmpty
(
itemOriginalList
))
{
itemRelOriginalRecordService
.
saveBatch
(
itemOriginalList
);
}
return
originalRecord
;
}
}
src/main/resources/mapper/hmhj/EntrustSampleItemMapper.xml
View file @
da556a98
...
...
@@ -259,13 +259,13 @@
<select
id=
"selectVOListByIds"
resultType=
"com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO"
>
SELECT i.id,i.name,i.entrust_sample_id,s.entrust_id,i.agreed_value,i.test_value,i.standard,s.code AS
"sampleCode",s.name AS "sampleName",
s.order_by,s.type,
s.order_by,s.type,
e.code "entrust_code",
s.sample_shape ,s.sample_quantity, s.standard, s.sample_from,s.product_code,s.name_code
FROM
entrust_sample_item i
JOIN entrust_sample s ON i.entrust_sample_id = s.ID
WHERE i.deleted = 0
AND s.deleted = 0
JOIN entrust_sample s ON i.entrust_sample_id = s.ID
and s.deleted = 0
JOIN entrust e on e.id = i.entrust_id and e.deleted = 0
WHERE i.deleted = 0
AND i.id IN
<foreach
collection=
"ids"
index=
"index"
item=
"id"
open=
"("
separator=
","
close=
")"
>
...
...
@@ -725,6 +725,73 @@
ii.NAME
</select>
<!--获取数据录入 - 检测项目列表-->
<select
id=
"pageInputItemLeft"
resultType=
"com.patzn.cloud.service.hmhj.vo.ItemVO"
>
SELECT DISTINCT ON
( NAME, standard ) NAME, standard
FROM
entrust_sample_item i
where i.deleted = 0 and i.status = #{vo.status} and i.company_id = #{vo.companyId}
<if
test=
"null != vo.personal and vo.personal == 1"
>
AND i.tester_id = #{vo.uid}
</if>
<if
test=
"null != vo.nameList"
>
<foreach
collection=
"vo.nameList"
item=
"name"
open=
"AND ( i.name "
close=
")"
separator=
" OR name"
>
LIKE CONCAT ('%',#{name},'%')
</foreach>
</if>
<if
test=
"null != vo.standard"
>
AND i.standard LIKE CONCAT ('%',#{vo.standard},'%')
</if>
<if
test=
"null != vo.uid"
>
AND i.tester_id = #{vo.uid}
</if>
order by i.name
</select>
<!-- 查询数据录入- 按项目录入 - 右侧检测项目数据列表 -->
<select
id=
"pageInputItemRight"
resultType=
"com.patzn.cloud.service.hmhj.vo.ItemVO"
>
SELECT
i.id,i.entrust_sample_id,i.name,i.status,i.company_id,i.standard,i.group_name,i.test_value,i.group_id,i.tester,i.tester_id,i.test_time,i.in_report,i.entrust_id,
s.name "sampleName",s.code "sampleCode",s.compliance_test,s.sample_from,sample_shape,s.first_code,s.second_code,s.third_code,
e.test_side "testSide",e.code "entrustCode",l.record_id,r.object_key AS "recordObjectKey"
FROM entrust_sample_item i
JOIN entrust_sample s ON i.entrust_sample_id = s.id and s.deleted = 0
JOIN entrust e on i.entrust_id = e.id and e.deleted = 0
LEFT JOIN item_rel_original_record l on l.item_id = i.id and l.deleted = 0
LEFT JOIN original_record r on r.id = l.record_id and r.deleted = 0
WHERE i.deleted = 0 and i.company_id = #{vo.companyId}
<if
test=
"null != vo.nameList"
>
<foreach
collection=
"vo.nameList"
item=
"name"
open=
"AND ( i.name "
close=
")"
separator=
" OR i.name "
>
LIKE CONCAT ('%',#{name},'%')
</foreach>
</if>
<if
test=
"null != vo.standard"
>
AND i.standard LIKE CONCAT ('%',#{vo.standard},'%')
</if>
<if
test=
"null != vo.status"
>
AND i.status = #{vo.status}
</if>
<if
test=
"null != vo.uid"
>
AND i.tester_id = #{vo.uid}
</if>
<if
test=
"null != vo.entrustCode"
>
AND e.code LIKE CONCAT ('%',#{vo.entrustCode},'%')
</if>
<if
test=
"null != vo.testSide"
>
AND e.test_side LIKE CONCAT ('%',#{vo.testSide},'%')
</if>
<if
test=
"null != vo.sampleCode"
>
AND s.code LIKE CONCAT ('%',#{vo.sampleCode},'%')
</if>
<if
test=
"null != vo.sampleName"
>
AND s.name LIKE CONCAT ('%',#{vo.sampleName},'%')
</if>
order by i.name, s.code
</select>
<update
id=
"updateBatchByData"
parameterType=
"java.util.List"
>
<foreach
collection=
"itemList"
item=
"item"
index=
"index"
open=
""
close=
""
separator=
";"
>
update entrust_sample_item
...
...
src/test/java/resources/db_sql/hmhj/v172/20220118新增字段.sql
0 → 100644
View file @
da556a98
/** created by meazty on 2022/1/18 16:43 **/
/** created by meazty on 2022/1/18 16:43 **/
-- 委托 --
ALTER
TABLE
"public"
.
"original_record"
ADD
COLUMN
"entrust_ids"
varchar
(
512
);
COMMENT
ON
COLUMN
"public"
.
"original_record"
.
"entrust_ids"
IS
'委托IDS'
;
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