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
740d40d9
Commit
740d40d9
authored
Mar 08, 2022
by
lijingjing
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
发送ERP更改为单个发送
parent
2ac19b73
Hide whitespace changes
Inline
Side-by-side
Showing
6 changed files
with
88 additions
and
87 deletions
+88
-87
EntrustSampleItemController.java
...ice/lims/hmhj/controller/EntrustSampleItemController.java
+5
-3
EntrustSampleItemIndexMapper.java
...ervice/lims/hmhj/mapper/EntrustSampleItemIndexMapper.java
+46
-3
IEntrustSampleItemIndexService.java
...ice/lims/hmhj/service/IEntrustSampleItemIndexService.java
+2
-2
EntrustSampleItemIndexServiceImpl.java
.../hmhj/service/impl/EntrustSampleItemIndexServiceImpl.java
+2
-2
EntrustSampleItemServiceImpl.java
.../lims/hmhj/service/impl/EntrustSampleItemServiceImpl.java
+22
-66
EntrustSampleItemIndexMapper.xml
...in/resources/mapper/hmhj/EntrustSampleItemIndexMapper.xml
+11
-11
No files found.
src/main/java/com/patzn/cloud/service/lims/hmhj/controller/EntrustSampleItemController.java
View file @
740d40d9
...
@@ -33,7 +33,7 @@ import java.util.List;
...
@@ -33,7 +33,7 @@ import java.util.List;
import
java.util.Map
;
import
java.util.Map
;
/**
/**
*
${table.comment}
前端控制器
*
委托单样品所测检测项目
前端控制器
*
*
* @author wwd
* @author wwd
* @since 2021-02-01
* @since 2021-02-01
...
@@ -734,8 +734,10 @@ public class EntrustSampleItemController extends ServiceController {
...
@@ -734,8 +734,10 @@ public class EntrustSampleItemController extends ServiceController {
@ApiOperation
(
value
=
"模拟测试发送数据到ERP"
,
notes
=
"模拟测试发送数据到ERP"
)
@ApiOperation
(
value
=
"模拟测试发送数据到ERP"
,
notes
=
"模拟测试发送数据到ERP"
)
@PostMapping
(
"/send_data"
)
@PostMapping
(
"/send_data"
)
@Login
(
action
=
Action
.
Skip
)
@Login
(
action
=
Action
.
Skip
)
public
RestResult
<
Boolean
>
sendData
(
@RequestBody
List
<
SampleItemVO
>
sampleItemVOList
)
{
public
RestResult
<
Boolean
>
sendData
(
@RequestBody
SampleItemVO
itemVO
)
{
return
RestResult
.
failed
(
"测试凯龙"
);
logger
.
error
(
itemVO
.
getSample_code
());
logger
.
error
(
itemVO
.
getBrand
());
return
RestResult
.
failed
(
"测试中"
);
}
}
@ApiOperation
(
value
=
"根据检测项目ID退回原始记录"
,
notes
=
"根据检测项目ID退回原始记录"
)
@ApiOperation
(
value
=
"根据检测项目ID退回原始记录"
,
notes
=
"根据检测项目ID退回原始记录"
)
...
...
src/main/java/com/patzn/cloud/service/lims/hmhj/mapper/EntrustSampleItemIndexMapper.java
View file @
740d40d9
...
@@ -4,11 +4,11 @@ import com.baomidou.mybatisplus.annotations.SqlParser;
...
@@ -4,11 +4,11 @@ import com.baomidou.mybatisplus.annotations.SqlParser;
import
com.patzn.cloud.commons.mapper.BatchMapper
;
import
com.patzn.cloud.commons.mapper.BatchMapper
;
import
com.patzn.cloud.service.hmhj.entity.EntrustSampleItemIndex
;
import
com.patzn.cloud.service.hmhj.entity.EntrustSampleItemIndex
;
import
com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO
;
import
com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO
;
import
com.patzn.cloud.service.hmhj.vo.SampleItemVO
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.annotations.Param
;
import
org.apache.ibatis.session.RowBounds
;
import
org.apache.ibatis.session.RowBounds
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* <p>
* <p>
...
@@ -16,22 +16,65 @@ import java.util.List;
...
@@ -16,22 +16,65 @@ import java.util.List;
* </p>
* </p>
*
*
* @author wwd
* @author wwd
* @since 2021-06-15
* @since 2021
-06-15
*/
*/
public
interface
EntrustSampleItemIndexMapper
extends
BatchMapper
<
EntrustSampleItemIndex
>
{
public
interface
EntrustSampleItemIndexMapper
extends
BatchMapper
<
EntrustSampleItemIndex
>
{
/**
* List item by sample ids list.
*
* @param sampleIds the sample ids
* @return the list
*/
List
<
EntrustSampleItemIndex
>
listItemBySampleIds
(
@Param
(
"sampleIds"
)
List
<
Long
>
sampleIds
);
List
<
EntrustSampleItemIndex
>
listItemBySampleIds
(
@Param
(
"sampleIds"
)
List
<
Long
>
sampleIds
);
/**
* List vo by exp ids list.
*
* @param expIdsList the exp ids list
* @return the list
*/
List
<
EntrustSampleItemIndexVO
>
listVOByExpIds
(
@Param
(
"expIds"
)
List
<
Long
>
expIdsList
);
List
<
EntrustSampleItemIndexVO
>
listVOByExpIds
(
@Param
(
"expIds"
)
List
<
Long
>
expIdsList
);
/**
* List by sample ids list.
*
* @param sampleIdList the sample id list
* @return the list
*/
List
<
EntrustSampleItemIndexVO
>
listBySampleIds
(
@Param
(
"sampleIds"
)
List
<
Long
>
sampleIdList
);
List
<
EntrustSampleItemIndexVO
>
listBySampleIds
(
@Param
(
"sampleIds"
)
List
<
Long
>
sampleIdList
);
/**
* Gets in report item index.
*
* @param sampleId the sample id
* @return the in report item index
*/
@SqlParser
(
filter
=
true
)
@SqlParser
(
filter
=
true
)
List
<
EntrustSampleItemIndex
>
getInReportItemIndex
(
@Param
(
"sampleId"
)
Long
sampleId
);
List
<
EntrustSampleItemIndex
>
getInReportItemIndex
(
@Param
(
"sampleId"
)
Long
sampleId
);
/**
* Select index with item list.
*
* @param rowBounds the row bounds
* @param entrustSampleItemIndexVO the entrust sample item index vo
* @return the list
*/
List
<
EntrustSampleItemIndexVO
>
selectIndexWithItem
(
RowBounds
rowBounds
,
@Param
(
"vo"
)
EntrustSampleItemIndexVO
entrustSampleItemIndexVO
);
List
<
EntrustSampleItemIndexVO
>
selectIndexWithItem
(
RowBounds
rowBounds
,
@Param
(
"vo"
)
EntrustSampleItemIndexVO
entrustSampleItemIndexVO
);
List
<
SampleItemVO
>
selectSampleItemIndex
(
@Param
(
"sampleIds"
)
List
<
Long
>
sampleIds
);
/**
* Select sample item index list.
*
* @param sampleIds the sample ids
* @return the list
*/
List
<
Map
<
String
,
Object
>>
selectSampleItemIndex
(
@Param
(
"sampleIds"
)
List
<
Long
>
sampleIds
);
/**
* Physical delete by item ids integer.
*
* @param itemIds the item ids
* @return the integer
*/
Integer
physicalDeleteByItemIds
(
@Param
(
"itemIds"
)
List
<
Long
>
itemIds
);
Integer
physicalDeleteByItemIds
(
@Param
(
"itemIds"
)
List
<
Long
>
itemIds
);
}
}
src/main/java/com/patzn/cloud/service/lims/hmhj/service/IEntrustSampleItemIndexService.java
View file @
740d40d9
...
@@ -4,9 +4,9 @@ import com.baomidou.mybatisplus.plugins.Page;
...
@@ -4,9 +4,9 @@ import com.baomidou.mybatisplus.plugins.Page;
import
com.patzn.cloud.commons.service.IBaseService
;
import
com.patzn.cloud.commons.service.IBaseService
;
import
com.patzn.cloud.service.hmhj.entity.EntrustSampleItemIndex
;
import
com.patzn.cloud.service.hmhj.entity.EntrustSampleItemIndex
;
import
com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO
;
import
com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO
;
import
com.patzn.cloud.service.hmhj.vo.SampleItemVO
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* 服务类
* 服务类
...
@@ -39,7 +39,7 @@ public interface IEntrustSampleItemIndexService extends IBaseService<EntrustSamp
...
@@ -39,7 +39,7 @@ public interface IEntrustSampleItemIndexService extends IBaseService<EntrustSamp
Page
<
EntrustSampleItemIndexVO
>
pageIndexWithItem
(
Page
<
EntrustSampleItemIndexVO
>
page
,
EntrustSampleItemIndexVO
entrustSampleItemIndexVO
);
Page
<
EntrustSampleItemIndexVO
>
pageIndexWithItem
(
Page
<
EntrustSampleItemIndexVO
>
page
,
EntrustSampleItemIndexVO
entrustSampleItemIndexVO
);
List
<
SampleItemVO
>
listSampleItemIndex
(
List
<
Long
>
sampleIds
);
List
<
Map
<
String
,
Object
>
>
listSampleItemIndex
(
List
<
Long
>
sampleIds
);
boolean
physicalDeleteByItemIds
(
List
<
Long
>
itemIds
);
boolean
physicalDeleteByItemIds
(
List
<
Long
>
itemIds
);
}
}
src/main/java/com/patzn/cloud/service/lims/hmhj/service/impl/EntrustSampleItemIndexServiceImpl.java
View file @
740d40d9
...
@@ -10,7 +10,6 @@ import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
...
@@ -10,7 +10,6 @@ import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import
com.patzn.cloud.service.hmhj.entity.EntrustSampleItem
;
import
com.patzn.cloud.service.hmhj.entity.EntrustSampleItem
;
import
com.patzn.cloud.service.hmhj.entity.EntrustSampleItemIndex
;
import
com.patzn.cloud.service.hmhj.entity.EntrustSampleItemIndex
;
import
com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO
;
import
com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO
;
import
com.patzn.cloud.service.hmhj.vo.SampleItemVO
;
import
com.patzn.cloud.service.lims.common.BeanUtils
;
import
com.patzn.cloud.service.lims.common.BeanUtils
;
import
com.patzn.cloud.service.lims.hmhj.mapper.EntrustSampleItemIndexMapper
;
import
com.patzn.cloud.service.lims.hmhj.mapper.EntrustSampleItemIndexMapper
;
import
com.patzn.cloud.service.lims.hmhj.service.IEntrustSampleItemIndexService
;
import
com.patzn.cloud.service.lims.hmhj.service.IEntrustSampleItemIndexService
;
...
@@ -20,6 +19,7 @@ import org.springframework.stereotype.Service;
...
@@ -20,6 +19,7 @@ import org.springframework.stereotype.Service;
import
java.util.ArrayList
;
import
java.util.ArrayList
;
import
java.util.List
;
import
java.util.List
;
import
java.util.Map
;
/**
/**
* 服务实现类
* 服务实现类
...
@@ -47,7 +47,7 @@ public class EntrustSampleItemIndexServiceImpl extends BaseServiceImpl<EntrustSa
...
@@ -47,7 +47,7 @@ public class EntrustSampleItemIndexServiceImpl extends BaseServiceImpl<EntrustSa
}
}
@Override
@Override
public
List
<
SampleItemVO
>
listSampleItemIndex
(
List
<
Long
>
sampleIds
)
{
public
List
<
Map
<
String
,
Object
>
>
listSampleItemIndex
(
List
<
Long
>
sampleIds
)
{
if
(
CollectionUtils
.
isEmpty
(
sampleIds
))
{
if
(
CollectionUtils
.
isEmpty
(
sampleIds
))
{
return
new
ArrayList
<>();
return
new
ArrayList
<>();
}
}
...
...
src/main/java/com/patzn/cloud/service/lims/hmhj/service/impl/EntrustSampleItemServiceImpl.java
View file @
740d40d9
...
@@ -33,7 +33,6 @@ import com.patzn.cloud.service.lims.base.enums.FlowTypeEnum;
...
@@ -33,7 +33,6 @@ import com.patzn.cloud.service.lims.base.enums.FlowTypeEnum;
import
com.patzn.cloud.service.lims.base.vo.LmsUserRelGroupVO
;
import
com.patzn.cloud.service.lims.base.vo.LmsUserRelGroupVO
;
import
com.patzn.cloud.service.lims.collection.entity.LmsOriginalRecordInfo
;
import
com.patzn.cloud.service.lims.collection.entity.LmsOriginalRecordInfo
;
import
com.patzn.cloud.service.lims.common.CompareUtils
;
import
com.patzn.cloud.service.lims.common.CompareUtils
;
import
com.patzn.cloud.service.lims.common.RedisUtil
;
import
com.patzn.cloud.service.lims.common.StringHandleUtils
;
import
com.patzn.cloud.service.lims.common.StringHandleUtils
;
import
com.patzn.cloud.service.lims.common.service.IExportService
;
import
com.patzn.cloud.service.lims.common.service.IExportService
;
import
com.patzn.cloud.service.lims.hmhj.common.HSSFWorkbookUtil
;
import
com.patzn.cloud.service.lims.hmhj.common.HSSFWorkbookUtil
;
...
@@ -1408,9 +1407,11 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
...
@@ -1408,9 +1407,11 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
handleSampleBrand
(
ids
,
finalSampleBrandMap
,
true
);
handleSampleBrand
(
ids
,
finalSampleBrandMap
,
true
);
});
});
// 针对铝成品和原铝进行发送ERP数据处理
executor1
.
execute
(()
->
{
logger
.
error
(
"{}开始执行发送ERP请求;"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()));
// 针对铝成品和原铝进行发送ERP数据处理
sendTestDataToErp
(
Arrays
.
asList
(
ids
));
logger
.
error
(
"{}开始执行发送ERP请求:---->ERP---"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()));
sendTestDataToErp
(
Arrays
.
asList
(
ids
));
});
logger
.
error
(
"======================质量判定结束========================"
);
logger
.
error
(
"======================质量判定结束========================"
);
return
true
;
return
true
;
...
@@ -1436,80 +1437,35 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
...
@@ -1436,80 +1437,35 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
return
;
return
;
}
}
// 获取检测项目指标数据
// 获取检测项目指标数据
List
<
SampleItemVO
>
dataList
=
entrustSampleItemIndexService
.
listSampleItemIndex
(
ids
);
List
<
Map
<
String
,
Object
>
>
dataList
=
entrustSampleItemIndexService
.
listSampleItemIndex
(
ids
);
logger
.
error
(
"====>ERP====:获取项目和指标数据:{}"
,
JSONArray
.
toJSON
(
dataList
));
logger
.
error
(
"====>ERP====:获取项目和指标数据:{}"
,
JSONArray
.
toJSON
(
dataList
));
String
suffix
=
sampleName
+
ids
.
get
(
0
)
+
dataList
.
size
();
// 通信
String
sampleConnectKey
=
"SAMPLE_CONNECT_COUNT_KEY"
+
suffix
;
try
{
try
{
logger
.
error
(
"{}=====>===:将要发送ERP数据;"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()));
logger
.
error
(
"{}=====>===:将要发送ERP数据;"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()));
doSendErpData
(
ids
,
dataList
);
doSendErpData
(
dataList
);
}
catch
(
Exception
e
)
{
}
catch
(
Exception
e
)
{
logger
.
error
(
e
.
getMessage
());
logger
.
error
(
e
.
getMessage
());
logger
.
error
(
"{}:发送ERP请求失败,请稍后重试!"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()));
logger
.
error
(
"{}:发送ERP请求失败,请稍后重试!"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()));
try
{
logger
.
error
(
"{}====>ERP===:处理失败的数据"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()));
dealFailureRequest
(
ids
,
dataList
,
sampleConnectKey
);
}
catch
(
Exception
ex
)
{
logger
.
error
(
"{}:重试后失败,发送结束。错误内容:"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()),
ex
.
getMessage
());
}
}
}
}
}
private
void
doSendErpData
(
List
<
Long
>
ids
,
List
<
SampleItemVO
>
dataList
)
{
private
void
doSendErpData
(
List
<
Map
<
String
,
Object
>
>
dataList
)
{
logger
.
error
(
"{}====>ERP==== 开始发送中...."
);
logger
.
error
(
"{}====>ERP==== 开始发送中...."
);
String
result
=
OkHttpUtils
.
sendByPostJson
(
HttpConst
.
ERP_URL
,
HttpConst
.
ERP_TOKEN
,
JacksonUtils
.
toJSONString
(
dataList
));
dataList
.
forEach
(
t
->
{
logger
.
error
(
"======>ERP====>result:"
+
result
);
String
result
=
OkHttpUtils
.
sendByPostJson
(
HttpConst
.
ERP_URL
,
HttpConst
.
ERP_TOKEN
,
JacksonUtils
.
toJSONString
(
t
));
if
(
StringUtils
.
isNotBlank
(
result
))
{
logger
.
error
(
"======>ERP====>result:"
+
result
);
JSONObject
jsonObject
=
JSON
.
parseObject
(
result
);
if
(
StringUtils
.
isNotBlank
(
result
))
{
logger
.
error
(
"======<ERP>===="
+
jsonObject
.
toJSONString
());
JSONObject
jsonObject
=
JSON
.
parseObject
(
result
);
// 若成功 ,则更新标识
logger
.
error
(
"======<ERP>===="
+
jsonObject
.
toJSONString
());
if
(
Objects
.
equals
(
jsonObject
.
getString
(
"code"
),
"1"
)
&&
Objects
.
equals
(
jsonObject
.
getBoolean
(
"success"
),
true
))
{
// 若成功 ,则更新标识
logger
.
error
(
"{}:====>ERP===>Result===>data,更新本地库是否发送标识!"
);
if
(
Objects
.
equals
(
jsonObject
.
getString
(
"code"
),
"1"
)
&&
Objects
.
equals
(
jsonObject
.
getBoolean
(
"success"
),
true
))
{
entrustSampleService
.
update
(
new
EntrustSample
().
setSendErp
(
1
),
Condition
.
create
().
in
(
"ids"
,
ids
));
logger
.
error
(
"{}:====>ERP===>Result===>data,更新本地库是否发送标识!"
);
}
else
{
entrustSampleService
.
update
(
new
EntrustSample
().
setSendErp
(
1
),
Condition
.
create
().
eq
(
"code"
,
t
.
get
(
"sample_code"
)));
logger
.
error
(
"{}:响应失败:{}"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()),
StringHandleUtils
.
parse
(
jsonObject
.
getString
(
"msg"
)));
}
else
{
}
logger
.
error
(
"{}:响应失败:{}"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()),
StringHandleUtils
.
parse
(
jsonObject
.
getString
(
"msg"
)));
}
}
private
void
dealFailureRequest
(
List
<
Long
>
ids
,
List
<
SampleItemVO
>
dataList
,
String
sampleFlagKey
)
throws
InterruptedException
{
Integer
retryCount
=
0
;
//
logger
.
error
(
"====>ERP===:开始处理失败的数据!"
);
String
retryCountStr
=
RedisUtil
.
StringOps
.
get
(
sampleFlagKey
);
String
sampleFailureIdsKey
=
"SAMPLE_FAILURE_IDS_KEY"
;
logger
.
error
(
"====>ERP====:获取重试次数:"
+
retryCountStr
);
if
(
Objects
.
isNull
(
retryCountStr
)
||
(
retryCount
=
Integer
.
parseInt
(
retryCountStr
))
<
4
)
{
logger
.
error
(
"====>ERP===:满足重试机制限制数量!"
);
RedisUtil
.
StringOps
.
set
(
sampleFlagKey
,
retryCount
+
1
+
""
);
Thread
.
sleep
(
10000
);
executor1
.
execute
(()
->
{
logger
.
error
(
"{} =====>==== 另开线程:再次执行发送操作!"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()));
doSendErpData
(
ids
,
dataList
);
});
logger
.
error
(
"{}:处理之前发送失败的请求:{},嘀嘀嘀!"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()),
sampleFailureIdsKey
);
// 对于那些已经失败的请求,重试
if
(
RedisUtil
.
KeyOps
.
hasKey
(
sampleFailureIdsKey
))
{
List
<
String
>
idList
=
RedisUtil
.
ListOps
.
lWholeList
(
sampleFailureIdsKey
);
logger
.
error
(
"{}:处理之前发送失败的请求,获取IDS:{}"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()),
idList
.
toString
());
RedisUtil
.
KeyOps
.
delete
(
sampleFailureIdsKey
);
if
(
CollectionUtils
.
isNotEmpty
(
idList
))
{
logger
.
error
(
"失败的请求不为空,继续处理数据;"
);
List
<
Long
>
sampleIds
=
idList
.
stream
().
map
(
Long:
:
parseLong
).
collect
(
Collectors
.
toList
());
Thread
.
sleep
(
5000
);
executor1
.
execute
(()
->
{
logger
.
error
(
"{} =====>==== 另开线程:处理之前的数据进行发送操作!"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()));
doSendErpData
(
ids
,
dataList
);
});
}
}
}
}
}
else
{
});
logger
.
error
(
"{}:发送请求失败,系统自动记录失败样品ID:{}"
,
DateUtils
.
toYearMonthDayTime
(
new
Date
()),
StringUtils
.
join
(
ids
,
","
));
// 只对此失败的任务在下次判定时,连带重试一次
RedisUtil
.
ListOps
.
lLeftPushAll
(
sampleFailureIdsKey
,
ids
.
toArray
(
new
String
[
ids
.
size
()]));
}
}
}
@Override
@Override
...
...
src/main/resources/mapper/hmhj/EntrustSampleItemIndexMapper.xml
View file @
740d40d9
...
@@ -89,24 +89,24 @@
...
@@ -89,24 +89,24 @@
</if>
</if>
</select>
</select>
<select
id=
"selectSampleItemIndex"
resultType=
"
com.patzn.cloud.service.hmhj.vo.SampleItemVO
"
>
<select
id=
"selectSampleItemIndex"
resultType=
"
java.util.Map
"
>
SELECT
SELECT
s.NAME "sample_name",
s.NAME "sample_name",
s.code "sample_code",
s.code "sample_code",
max(s.sample_grading) "brand",
max(s.sample_grading) "brand",
max(i.test_time
) "test_time",
to_char(max(i.test_time),'YYYY-MM-DD HH24:MI:SS'
) "test_time",
max(r.report_checker) "report_checker",
max(r.report_checker) "report_checker",
max(r.report_issuer) "report_issuer",
max(r.report_issuer) "report_issuer",
max(r.quality_inspector) "quality_inspector",
max(r.quality_inspector) "quality_inspector",
max(case when ii.name = '原铝Fe' then
ii.test_value
else null end) "fe",
max(case when ii.name = '原铝Fe' then
trim(ii.test_value)
else null end) "fe",
max(case when ii.name = '原铝Si' then
ii.test_value
else null end) "si",
max(case when ii.name = '原铝Si' then
trim(ii.test_value)
else null end) "si",
max(case when ii.name = '原铝Cu' then
ii.test_value
else null end) "cu",
max(case when ii.name = '原铝Cu' then
trim(ii.test_value)
else null end) "cu",
max(case when ii.name = '原铝Ga' then
ii.test_value
else null end) "ga",
max(case when ii.name = '原铝Ga' then
trim(ii.test_value)
else null end) "ga",
max(case when ii.name = '原铝Mg' then
ii.test_value
else null end) "mg",
max(case when ii.name = '原铝Mg' then
trim(ii.test_value)
else null end) "mg",
max(case when ii.name = '原铝Zn' then
ii.test_value
else null end) "zn",
max(case when ii.name = '原铝Zn' then
trim(ii.test_value)
else null end) "zn",
max(case when ii.name = '原铝Mn' then
ii.test_value
else null end) "mn",
max(case when ii.name = '原铝Mn' then
trim(ii.test_value)
else null end) "mn",
max(case when ii.name = '原铝Ni' then
ii.test_value
else null end) "ni",
max(case when ii.name = '原铝Ni' then
trim(ii.test_value)
else null end) "ni",
max(case when ii.name = '原铝V' then
ii.test_value
else null end) "v"
max(case when ii.name = '原铝V' then
trim(ii.test_value)
else null end) "v"
FROM
FROM
entrust_sample_item_index ii
entrust_sample_item_index ii
JOIN entrust_sample_item i ON i.ID = ii.entrust_sample_item_id AND i.deleted = 0
JOIN entrust_sample_item i ON i.ID = ii.entrust_sample_item_id AND i.deleted = 0
...
...
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