Commit c465c0f9 by lijingjing

优化霍煤响应速度;

parent ca681a49
...@@ -17,4 +17,6 @@ public interface IGradingItemService extends IBaseService<GradingItem> { ...@@ -17,4 +17,6 @@ public interface IGradingItemService extends IBaseService<GradingItem> {
Page<GradingItem> page(Page<GradingItem> page, GradingItem gradingItem); Page<GradingItem> page(Page<GradingItem> page, GradingItem gradingItem);
boolean removeByIds(List<Long> ids); boolean removeByIds(List<Long> ids);
List<GradingItem> listByProductIds(List<Long> productIds);
} }
...@@ -17,4 +17,6 @@ public interface IGradingProductService extends IBaseService<GradingProduct> { ...@@ -17,4 +17,6 @@ public interface IGradingProductService extends IBaseService<GradingProduct> {
Page<GradingProduct> page(Page<GradingProduct> page, GradingProduct gradingProduct); Page<GradingProduct> page(Page<GradingProduct> page, GradingProduct gradingProduct);
boolean removeByIds(List<Long> ids); boolean removeByIds(List<Long> ids);
List<GradingProduct> listByStandardIds(List<Long> standardIds);
} }
...@@ -25,4 +25,6 @@ public interface IGradingStandardService extends IBaseService<GradingStandard> { ...@@ -25,4 +25,6 @@ public interface IGradingStandardService extends IBaseService<GradingStandard> {
boolean abolish(Long[] ids, String reason, Account account); boolean abolish(Long[] ids, String reason, Account account);
boolean editGradingStandard(GradingStandardDTO dto, Account account); boolean editGradingStandard(GradingStandardDTO dto, Account account);
List<GradingStandard> listByIds(List<Long> ids);
} }
...@@ -16,6 +16,7 @@ import com.patzn.cloud.commons.exception.PatznException; ...@@ -16,6 +16,7 @@ import com.patzn.cloud.commons.exception.PatznException;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl; import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.commons.toolkit.DateUtils; import com.patzn.cloud.commons.toolkit.DateUtils;
import com.patzn.cloud.commons.toolkit.FileUtils; import com.patzn.cloud.commons.toolkit.FileUtils;
import com.patzn.cloud.commons.toolkit.MapMergeUtils;
import com.patzn.cloud.feign.base.client.SysFileTemplateClient; import com.patzn.cloud.feign.base.client.SysFileTemplateClient;
import com.patzn.cloud.oss.starter.OssClient; import com.patzn.cloud.oss.starter.OssClient;
import com.patzn.cloud.service.hmhj.dto.*; import com.patzn.cloud.service.hmhj.dto.*;
...@@ -215,21 +216,16 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe ...@@ -215,21 +216,16 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
if (CollectionUtils.isEmpty(indexList)) { if (CollectionUtils.isEmpty(indexList)) {
return page.setRecords(voList); return page.setRecords(voList);
} }
Map<Long, List<EntrustSampleItemIndex>> sampleIndexMap = new HashMap<>(); Map<Long, List<EntrustSampleItemIndex>> sampleIndexMap = new HashMap<>();
for (EntrustSampleItemIndexVO entrustSampleItemIndex : indexList) { indexList.forEach(idx -> {
if (sampleIndexMap.containsKey(entrustSampleItemIndex.getSampleId())) { MapMergeUtils.getorCreateMapArrayList(idx.getSampleId(), sampleIndexMap, idx);
List<EntrustSampleItemIndex> itemIndexList = sampleIndexMap.get(entrustSampleItemIndex.getSampleId()); });
itemIndexList.add(entrustSampleItemIndex);
sampleIndexMap.put(entrustSampleItemIndex.getSampleId(), itemIndexList); voList.forEach(vo -> {
} else {
List<EntrustSampleItemIndex> itemIndexList = Lists.newArrayList();
itemIndexList.add(entrustSampleItemIndex);
sampleIndexMap.put(entrustSampleItemIndex.getSampleId(), itemIndexList);
}
}
for (EntrustSampleVO vo : voList) {
vo.setIndexList(sampleIndexMap.get(vo.getId())); vo.setIndexList(sampleIndexMap.get(vo.getId()));
} });
// 数据排序,有结果的排在前面,无结果排后面 // 数据排序,有结果的排在前面,无结果排后面
Collections.sort(voList, Comparator.comparingInt(t -> CollectionUtils.isNotEmpty(t.getIndexList()) ? 1 : 0)); Collections.sort(voList, Comparator.comparingInt(t -> CollectionUtils.isNotEmpty(t.getIndexList()) ? 1 : 0));
......
package com.patzn.cloud.service.lims.hmhj.service.impl; package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.baomidou.mybatisplus.mapper.Condition;
import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl; import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.entity.GradingItem; import com.patzn.cloud.service.hmhj.entity.GradingItem;
import com.patzn.cloud.service.lims.hmhj.mapper.GradingItemMapper; import com.patzn.cloud.service.lims.hmhj.mapper.GradingItemMapper;
import com.patzn.cloud.service.lims.hmhj.service.IGradingItemService; import com.patzn.cloud.service.lims.hmhj.service.IGradingItemService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
* 服务实现类 * 服务实现类
* *
* @author wwd * @author wwd
* @since 2021-05-14 * @since 2021-05-14
...@@ -31,4 +34,12 @@ public class GradingItemServiceImpl extends BaseServiceImpl<GradingItemMapper, G ...@@ -31,4 +34,12 @@ public class GradingItemServiceImpl extends BaseServiceImpl<GradingItemMapper, G
public boolean removeByIds(List<Long> ids) { public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0; return baseMapper.deleteBatchIds(ids) > 0;
} }
@Override
public List<GradingItem> listByProductIds(List<Long> productIds) {
if (CollectionUtils.isEmpty(productIds)) {
return new ArrayList<>();
}
return list(Condition.create().in("grading_product_id", productIds).isNotNull("limit_value"));
}
} }
package com.patzn.cloud.service.lims.hmhj.service.impl; package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.baomidou.mybatisplus.mapper.Condition;
import com.baomidou.mybatisplus.mapper.EntityWrapper; import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper; import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl; import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.entity.GradingProduct; import com.patzn.cloud.service.hmhj.entity.GradingProduct;
import com.patzn.cloud.service.lims.hmhj.mapper.GradingProductMapper; import com.patzn.cloud.service.lims.hmhj.mapper.GradingProductMapper;
import com.patzn.cloud.service.lims.hmhj.service.IGradingProductService; import com.patzn.cloud.service.lims.hmhj.service.IGradingProductService;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.ArrayList;
import java.util.List; import java.util.List;
/** /**
* 服务实现类 * 服务实现类
* *
* @author wwd * @author wwd
* @since 2021-05-14 * @since 2021-05-14
...@@ -31,4 +34,13 @@ public class GradingProductServiceImpl extends BaseServiceImpl<GradingProductMap ...@@ -31,4 +34,13 @@ public class GradingProductServiceImpl extends BaseServiceImpl<GradingProductMap
public boolean removeByIds(List<Long> ids) { public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0; return baseMapper.deleteBatchIds(ids) > 0;
} }
@Override
public List<GradingProduct> listByStandardIds(List<Long> standardIds) {
if (CollectionUtils.isEmpty(standardIds)) {
return new ArrayList<>();
}
// 依旧优先级来处理判定顺序
return list(Condition.create().in("grading_standard_id", standardIds).orderBy("judge_priority", true));
}
} }
...@@ -31,7 +31,7 @@ import java.util.Date; ...@@ -31,7 +31,7 @@ import java.util.Date;
import java.util.List; import java.util.List;
/** /**
* 服务实现类 * 服务实现类
* *
* @author wwd * @author wwd
* @since 2021-05-14 * @since 2021-05-14
...@@ -52,12 +52,12 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM ...@@ -52,12 +52,12 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM
@Override @Override
public Page<GradingStandard> page(Page<GradingStandard> page, GradingStandard gradingStandard) { public Page<GradingStandard> page(Page<GradingStandard> page, GradingStandard gradingStandard) {
Wrapper wrapper = new EntityWrapper<>(gradingStandard); Wrapper wrapper = new EntityWrapper<>(gradingStandard);
if (StringUtils.isNotBlank(gradingStandard.getCode())){ if (StringUtils.isNotBlank(gradingStandard.getCode())) {
wrapper.like("code",gradingStandard.getCode()); wrapper.like("code", gradingStandard.getCode());
gradingStandard.setCode(null); gradingStandard.setCode(null);
} }
if (StringUtils.isNotBlank(gradingStandard.getName())){ if (StringUtils.isNotBlank(gradingStandard.getName())) {
wrapper.like("name",gradingStandard.getName()); wrapper.like("name", gradingStandard.getName());
gradingStandard.setName(null); gradingStandard.setName(null);
} }
return this.page(page, wrapper); return this.page(page, wrapper);
...@@ -71,8 +71,8 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM ...@@ -71,8 +71,8 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public boolean addGradingStandard(GradingStandardDTO dto, Account account) { public boolean addGradingStandard(GradingStandardDTO dto, Account account) {
RestAssert.fail(StringUtils.isBlank(dto.getCode()),"产品标准不能为空!"); RestAssert.fail(StringUtils.isBlank(dto.getCode()), "产品标准不能为空!");
RestAssert.fail(StringUtils.isBlank(dto.getName()),"产品标准名称不能为空!"); RestAssert.fail(StringUtils.isBlank(dto.getName()), "产品标准名称不能为空!");
GradingStandard gradingStandard = dto.convert(GradingStandard.class); GradingStandard gradingStandard = dto.convert(GradingStandard.class);
gradingStandard.setId(IdWorker.getId()); gradingStandard.setId(IdWorker.getId());
...@@ -81,14 +81,14 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM ...@@ -81,14 +81,14 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM
List<GradingItem> saveItemList = new ArrayList<>(); List<GradingItem> saveItemList = new ArrayList<>();
List<GradingProduct> saveGradingProductList = new ArrayList<>(); List<GradingProduct> saveGradingProductList = new ArrayList<>();
if (CollectionUtils.isNotEmpty(gradingProductList)){ if (CollectionUtils.isNotEmpty(gradingProductList)) {
for (GradingProductDTO productDTO : gradingProductList) { for (GradingProductDTO productDTO : gradingProductList) {
List<GradingItem> itemList = productDTO.getGradingItemList(); List<GradingItem> itemList = productDTO.getGradingItemList();
GradingProduct product = productDTO.convert(GradingProduct.class); GradingProduct product = productDTO.convert(GradingProduct.class);
product.setGradingStandardId(gradingStandard.getId()); product.setGradingStandardId(gradingStandard.getId());
product.setId(IdWorker.getId()); product.setId(IdWorker.getId());
saveGradingProductList.add(product); saveGradingProductList.add(product);
if (CollectionUtils.isNotEmpty(itemList)){ if (CollectionUtils.isNotEmpty(itemList)) {
for (GradingItem item : itemList) { for (GradingItem item : itemList) {
item.setGradingProductId(product.getId()); item.setGradingProductId(product.getId());
saveItemList.add(item); saveItemList.add(item);
...@@ -96,7 +96,7 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM ...@@ -96,7 +96,7 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM
} }
} }
} }
if (save(gradingStandard)){ if (save(gradingStandard)) {
gradingProductService.saveBatch(saveGradingProductList); gradingProductService.saveBatch(saveGradingProductList);
gradingItemService.saveBatch(saveItemList); gradingItemService.saveBatch(saveItemList);
} }
...@@ -117,12 +117,12 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM ...@@ -117,12 +117,12 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public boolean abolish(Long[] ids, String reason, Account account) { public boolean abolish(Long[] ids, String reason, Account account) {
RestAssert.fail(ArrayUtils.isEmpty(ids),"请选择需要作废的判级标准"); RestAssert.fail(ArrayUtils.isEmpty(ids), "请选择需要作废的判级标准");
RestAssert.fail(StringUtils.isBlank(reason),"请填写,作废原因!"); RestAssert.fail(StringUtils.isBlank(reason), "请填写,作废原因!");
List<GradingStandard> standards = super.list(Condition.create().in("id",ids).eq("effective",1)); List<GradingStandard> standards = super.list(Condition.create().in("id", ids).eq("effective", 1));
if (CollectionUtils.isNotEmpty(standards)){ if (CollectionUtils.isNotEmpty(standards)) {
for (GradingStandard standard : standards) { for (GradingStandard standard : standards) {
RestAssert.fail("判级标准:"+standard.getCode()+"已经作废,请勿重复作废!"); RestAssert.fail("判级标准:" + standard.getCode() + "已经作废,请勿重复作废!");
} }
} }
GradingStandard gradingStandard = new GradingStandard(); GradingStandard gradingStandard = new GradingStandard();
...@@ -145,22 +145,22 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM ...@@ -145,22 +145,22 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM
saveRecord.add(record); saveRecord.add(record);
} }
gradingRecordService.saveBatch(saveRecord); gradingRecordService.saveBatch(saveRecord);
return super.update(gradingStandard,Condition.create().in("id",ids)); return super.update(gradingStandard, Condition.create().in("id", ids));
} }
@Transactional(rollbackFor = Exception.class) @Transactional(rollbackFor = Exception.class)
@Override @Override
public boolean editGradingStandard(GradingStandardDTO dto, Account account) { public boolean editGradingStandard(GradingStandardDTO dto, Account account) {
if (null == dto.getId()){ if (null == dto.getId()) {
return false; return false;
} }
List<GradingProductDTO> sampleList = dto.getGradingProductList(); List<GradingProductDTO> sampleList = dto.getGradingProductList();
if (CollectionUtils.isEmpty(sampleList)){ if (CollectionUtils.isEmpty(sampleList)) {
// PtAssert.fail("样品不能为空"); // PtAssert.fail("样品不能为空");
} }
GradingStandard standard =dto.convert(GradingStandard.class); GradingStandard standard = dto.convert(GradingStandard.class);
if (updateById(standard)){ if (updateById(standard)) {
List<Long> sampleIdsList = new ArrayList<>(); List<Long> sampleIdsList = new ArrayList<>();
List<GradingProduct> updateSampleList = new ArrayList<>(); List<GradingProduct> updateSampleList = new ArrayList<>();
...@@ -170,43 +170,43 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM ...@@ -170,43 +170,43 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM
List<GradingItem> saveItemList = new ArrayList<>(); List<GradingItem> saveItemList = new ArrayList<>();
List<GradingItem> updateItemList = new ArrayList<>(); List<GradingItem> updateItemList = new ArrayList<>();
for (GradingProductDTO productDTO:sampleList) { for (GradingProductDTO productDTO : sampleList) {
GradingProduct sample = productDTO.convert(GradingProduct.class); GradingProduct sample = productDTO.convert(GradingProduct.class);
if (null != sample.getId()){ if (null != sample.getId()) {
updateSampleList.add(sample); updateSampleList.add(sample);
sampleIdsList.add(sample.getId()); sampleIdsList.add(sample.getId());
}else{ } else {
sample.setGradingStandardId(standard.getId()); sample.setGradingStandardId(standard.getId());
sample.setId(IdWorker.getId()); sample.setId(IdWorker.getId());
saveSampleList.add(sample); saveSampleList.add(sample);
} }
List<GradingItem> viewItemList= productDTO.getGradingItemList(); List<GradingItem> viewItemList = productDTO.getGradingItemList();
if (CollectionUtils.isNotEmpty(viewItemList)){ if (CollectionUtils.isNotEmpty(viewItemList)) {
for (GradingItem item:viewItemList) { for (GradingItem item : viewItemList) {
if (null == item.getId()){ if (null == item.getId()) {
item.setId(IdWorker.getId()); item.setId(IdWorker.getId());
item.setGradingProductId(sample.getId()); item.setGradingProductId(sample.getId());
saveItemList.add(item); saveItemList.add(item);
}else{ } else {
updateItemList.add(item); updateItemList.add(item);
} }
} }
} }
} }
if (CollectionUtils.isNotEmpty(updateSampleList)){ if (CollectionUtils.isNotEmpty(updateSampleList)) {
gradingProductService.updateBatchById(updateSampleList); gradingProductService.updateBatchById(updateSampleList);
} }
if (CollectionUtils.isNotEmpty(saveSampleList)){ if (CollectionUtils.isNotEmpty(saveSampleList)) {
gradingProductService.saveBatch(saveSampleList); gradingProductService.saveBatch(saveSampleList);
} }
if (CollectionUtils.isNotEmpty(saveItemList)){ if (CollectionUtils.isNotEmpty(saveItemList)) {
gradingItemService.saveBatch(saveItemList); gradingItemService.saveBatch(saveItemList);
} }
if (CollectionUtils.isNotEmpty(updateItemList)){ if (CollectionUtils.isNotEmpty(updateItemList)) {
gradingItemService.updateBatchById(updateItemList); gradingItemService.updateBatchById(updateItemList);
} }
...@@ -222,4 +222,12 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM ...@@ -222,4 +222,12 @@ public class GradingStandardServiceImpl extends BaseServiceImpl<GradingStandardM
gradingRecordService.save(record); gradingRecordService.save(record);
return true; return true;
} }
@Override
public List<GradingStandard> listByIds(List<Long> ids) {
if (CollectionUtils.isEmpty(ids)) {
return new ArrayList<>();
}
return super.list(Condition.create().in("id", ids));
}
} }
...@@ -10,7 +10,7 @@ server: ...@@ -10,7 +10,7 @@ server:
spring: spring:
# 环境 dev|test|pro # 环境 dev|test|pro
profiles: profiles:
active: local active: dev
application: application:
name: hmhj name: hmhj
# 模板引擎配置 # 模板引擎配置
......
...@@ -682,6 +682,7 @@ ...@@ -682,6 +682,7 @@
<select id="listIndexReplaceItemBySampleIds" resultType="com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO"> <select id="listIndexReplaceItemBySampleIds" resultType="com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO">
select select
i.name || '##'|| ii.name "name", i.name || '##'|| ii.name "name",
i.entrust_sample_id,
ii.*, ii.*,
i.compose_judge, i.compose_judge,
s.code "sample_code", s.code "sample_code",
......
...@@ -37,38 +37,14 @@ ...@@ -37,38 +37,14 @@
</select> </select>
<select id="selectVOList" resultType="com.patzn.cloud.service.hmhj.vo.EntrustSampleVO"> <select id="selectVOList" resultType="com.patzn.cloud.service.hmhj.vo.EntrustSampleVO">
with sample_item as (
select
i.company_id,
i.entrust_sample_id,
max(i.group_id) "group_id",
string_agg(distinct i.name,'、') "item_names"
<!-- ,case when count(1) != count(distinct i.name) then true else false end "item_report" -->
from entrust_sample_item i where i.deleted = 0
<if test="null != vo.entrustId">
AND i.entrust_id = #{vo.entrustId}
</if>
<if test="null != vo.itemStatus">
and i.status = #{vo.itemStatus}
</if>
<if test="null != vo.itemStatusList">
and i.status IN
<foreach collection="vo.itemStatusList" index="index" item="itemStatus" open="(" separator="," close=")">
#{itemStatus}
</foreach>
</if>
<if test="null != vo.testerId ">
and i.tester_id = #{vo.testerId}
</if>
group by i.company_id,i.entrust_sample_id
)
SELECT SELECT
s.*, s.*,
i.group_id, max(i.group_id) "group_id",
i.item_names string_agg ( DISTINCT i.NAME, '、' ) "item_names"
FROM entrust_sample s FROM entrust_sample s
JOIN sample_item i on i.entrust_sample_id = s.id JOIN entrust_sample_item i on i.entrust_sample_id = s.id and i.deleted = 0
WHERE deleted = 0 WHERE s.deleted = 0
<if test="null != vo.entrustId"> <if test="null != vo.entrustId">
AND s.entrust_id = #{vo.entrustId} AND s.entrust_id = #{vo.entrustId}
</if> </if>
...@@ -97,29 +73,6 @@ ...@@ -97,29 +73,6 @@
AND s.status != #{vo.notStatus} AND s.status != #{vo.notStatus}
</if> </if>
<!--
<if test="null != vo.itemStatus or null != vo.itemStatusList or null != vo.testerId">
AND exists (
select 1 from entrust_sample_item i where i.deleted = 0 and i.entrust_sample_id = s.id
<if test="null != vo.itemStatus">
and i.status = #{vo.itemStatus}
</if>
<if test="null != vo.itemStatusList">
and i.status IN
<foreach collection="vo.itemStatusList" index="index" item="itemStatus" open="(" separator="," close=")">
#{itemStatus}
</foreach>
</if>
<if test="null != vo.testerId ">
and i.tester_id = #{vo.testerId}
</if>
)
</if>
-->
<if test="null != vo.statusList"> <if test="null != vo.statusList">
and s.status IN and s.status IN
<foreach collection="vo.statusList" index="index" item="status" open="(" separator="," close=")"> <foreach collection="vo.statusList" index="index" item="status" open="(" separator="," close=")">
...@@ -134,7 +87,22 @@ ...@@ -134,7 +87,22 @@
</foreach> </foreach>
</if> </if>
order by s.order_by asc, s.code ,s.ctime desc <if test="null != vo.itemStatus">
and i.status = #{vo.itemStatus}
</if>
<if test="null != vo.itemStatusList">
and i.status IN
<foreach collection="vo.itemStatusList" index="index" item="itemStatus" open="(" separator="," close=")">
#{itemStatus}
</foreach>
</if>
<if test="null != vo.testerId ">
and i.tester_id = #{vo.testerId}
</if>
GROUP BY s.ID
ORDER BY s.order_by asc, s.code ,s.ctime desc
</select> </select>
<select id="selectMinStatusByEntrustIds" resultType="com.patzn.cloud.service.hmhj.vo.EntrustSampleVO"> <select id="selectMinStatusByEntrustIds" resultType="com.patzn.cloud.service.hmhj.vo.EntrustSampleVO">
...@@ -211,6 +179,22 @@ ...@@ -211,6 +179,22 @@
<if test="null != vo.slotNoE"> <if test="null != vo.slotNoE">
AND to_number(s.slot_no,'99999') &lt;= #{vo.slotNoE} AND to_number(s.slot_no,'99999') &lt;= #{vo.slotNoE}
</if> </if>
<if test="null != vo.shift">
<choose>
<!--零点 =》 00:00-8:00 -->
<when test="0 == vo.shift">
and "time"('00:00:00') &lt;= "time"(e.entrust_time) and "time"('08:00:00') > "time"(e.entrust_time)
</when>
<!--白班 =》 8:00-16:00 -->
<when test="1 == vo.shift">
and "time"('08:00:00') &lt;= "time"(e.entrust_time) and "time"('16:00:00') > "time"(e.entrust_time)
</when>
<!--中班 =》 16:00 —24:00 -->
<when test="2 == vo.shift">
and "time"('16:00:00') &lt;= "time"(e.entrust_time) and "time"('23:59:59') >= "time"(e.entrust_time)
</when>
</choose>
</if>
ORDER BY e.code,s.code ORDER BY e.code,s.code
</select> </select>
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment