Commit e1539172 by lijingjing

霍煤修改部分查询问题;

修改统计低铁变量;
parent 73eedae0
......@@ -9,6 +9,7 @@ import com.patzn.cloud.service.hmhj.dto.ContractSampleDTO;
import com.patzn.cloud.service.hmhj.dto.ContractSampleVODTO;
import com.patzn.cloud.service.hmhj.entity.ContractSample;
import com.patzn.cloud.service.hmhj.enums.ContractSampleStatusEnum;
import com.patzn.cloud.service.hmhj.vo.ContractLedgerVO;
import com.patzn.cloud.service.hmhj.vo.ContractSampleVO;
import com.patzn.cloud.service.lims.hmhj.common.consts.HmConst;
import com.patzn.cloud.service.lims.hmhj.service.IContractSampleService;
......@@ -750,4 +751,16 @@ public class ContractSampleController extends ServiceController {
return success(contractSampleService.updateSuspendOrContinue(ids, suspend, getAccount()));
}
@ApiOperation("查询验收台账")
@ApiImplicitParams({
@ApiImplicitParam(name = RestConstants.PAGE_PAGE, value = "请求数据的页码", required = true, paramType = "query", dataTypeClass = Integer.class),
@ApiImplicitParam(name = RestConstants.PAGE_ROWS, value = "每页条数", required = true, paramType = "query", dataTypeClass = Integer.class),
@ApiImplicitParam(name = RestConstants.PAGE_SIDX, value = "排序字段", paramType = "query", dataTypeClass = String.class),
@ApiImplicitParam(name = RestConstants.PAGE_SORD, value = "排序方式", paramType = "query", dataTypeClass = String.class),
})
@PostMapping("/page_acceptance_ledger")
public RestResult<Page<ContractLedgerVO>> pageAcceptanceLedger(ContractLedgerVO contractLedgerVO) {
return success(contractSampleService.pageAcceptanceLedger(getPage(), contractLedgerVO));
}
}
......@@ -60,6 +60,17 @@ public class EntrustSampleController extends ServiceController {
return success(entrustSampleService.page(getPage(), entrustSample));
}
@ApiOperation("获取样品列表")
@ApiImplicitParams({
@ApiImplicitParam(name = RestConstants.PAGE_PAGE, value = "请求数据的页码", required = true, paramType = "query", dataTypeClass = Integer.class),
@ApiImplicitParam(name = RestConstants.PAGE_ROWS, value = "每页条数", required = true, paramType = "query", dataTypeClass = Integer.class),
@ApiImplicitParam(name = RestConstants.PAGE_SIDX, value = "排序字段", paramType = "query", dataTypeClass = String.class),
@ApiImplicitParam(name = RestConstants.PAGE_SORD, value = "排序方式", paramType = "query", dataTypeClass = String.class),
})
@PostMapping("/pageVO")
public RestResult<Page<EntrustSampleVO>> getPageVO(EntrustSampleVO entrustSample) {
return success(entrustSampleService.pageVO(getPage(), entrustSample));
}
@ApiOperation("制备样品分页列表")
@ApiImplicitParams({
......
......@@ -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.ContractSample;
import com.patzn.cloud.service.hmhj.vo.ContractLedgerVO;
import com.patzn.cloud.service.hmhj.vo.ContractSampleVO;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
......@@ -23,4 +24,6 @@ public interface ContractSampleMapper extends BatchMapper<ContractSample> {
List<ContractSampleVO> selectVOPublishList(RowBounds rowBounds, @Param("vo") ContractSampleVO contractSample);
List<ContractSampleVO> selectExpertReviewList(RowBounds rowBounds, @Param("vo") ContractSampleVO contractSample);
List<ContractLedgerVO> selectContractLedger(RowBounds rowBounds, @Param("vo") ContractLedgerVO contractLedgerVO);
}
......@@ -50,4 +50,6 @@ public interface EntrustSampleMapper extends BatchMapper<EntrustSample> {
String selectLastCode(@Param("queryKey") String queryKey);
List<EntrustSampleIndexVO> selectSampleIndex(RowBounds rowBounds, @Param("vo") EntrustSampleIndexVO sampleIndexVO);
int isRepeatSampleCode(@Param("vo") EntrustSample sample);
}
......@@ -28,9 +28,11 @@ public class OriginalFactory {
this.xssfWorkbook = xssfWorkbook;
}
public OriginalFactory(OriginalTemplate template, List<EntrustSampleItemVO> voList, List<OriginalTemplateConfig> configList, List<Entrust> entrustList, XSSFWorkbook xssfWorkbook) {
public OriginalFactory(OriginalTemplate template, List<EntrustSampleItemVO> voList, Entrust entrust,List<Entrust> entrustList, List<OriginalTemplateConfig> configList, XSSFWorkbook xssfWorkbook) {
this.entrustList = entrustList;
this.template = template;
this.entrust = entrust;
this.entrustList = entrustList;
this.voList = voList;
this.configList = configList;
this.xssfWorkbook = xssfWorkbook;
......
......@@ -30,15 +30,7 @@ public class SingleSheetMoreItemOperation implements Operation {
private FormulaEvaluator formulaEvaluator;
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) {
public SingleSheetMoreItemOperation(OriginalTemplate template, Entrust entrust, List<Entrust> entrustList, List<EntrustSampleVO> voList, List<OriginalTemplateConfig> configList, XSSFWorkbook xssfWorkbook) {
this.template = template;
this.voList = voList;
this.entrust = entrust;
......
......@@ -6,6 +6,7 @@ import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.dto.ContractSampleDTO;
import com.patzn.cloud.service.hmhj.dto.ContractSampleVODTO;
import com.patzn.cloud.service.hmhj.entity.ContractSample;
import com.patzn.cloud.service.hmhj.vo.ContractLedgerVO;
import com.patzn.cloud.service.hmhj.vo.ContractSampleVO;
import org.springframework.web.multipart.MultipartFile;
......@@ -88,4 +89,6 @@ public interface IContractSampleService extends IBaseService<ContractSample> {
boolean submitToDataSampling(Long[] ids, Account account);
boolean updatePutInRegEnd(ContractSample contractSample, Account account);
Page<ContractLedgerVO> pageAcceptanceLedger(Page<ContractLedgerVO> page, ContractLedgerVO contractLedgerVO);
}
......@@ -10,10 +10,13 @@ import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.commons.controller.Account;
import com.patzn.cloud.commons.exception.PatznException;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.feign.base.client.SysUserClient;
import com.patzn.cloud.service.base.entity.SysUser;
import com.patzn.cloud.service.hmhj.dto.ContractSampleDTO;
import com.patzn.cloud.service.hmhj.dto.ContractSampleVODTO;
import com.patzn.cloud.service.hmhj.entity.*;
import com.patzn.cloud.service.hmhj.enums.*;
import com.patzn.cloud.service.hmhj.vo.ContractLedgerVO;
import com.patzn.cloud.service.hmhj.vo.ContractSampleVO;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO;
import com.patzn.cloud.service.lims.common.BeanUtils;
......@@ -81,6 +84,12 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap
@Autowired
private ILmsMsgService lmsMsgService;
@Autowired
private SysUserClient sysUserClient;
@Autowired
private IEntrustSampleItemIndexService entrustSampleItemIndexService;
@Override
public Page<ContractSample> page(Page<ContractSample> page, ContractSample contractSample) {
String code = contractSample.getCode();
......@@ -752,6 +761,25 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap
return true;
}
@Override
public Page<ContractLedgerVO> pageAcceptanceLedger(Page<ContractLedgerVO> page, ContractLedgerVO contractLedgerVO) {
List<ContractLedgerVO> voList = baseMapper.selectContractLedger(page, contractLedgerVO);
if (CollectionUtils.isEmpty(voList)) {
return page.setRecords(voList);
}
// 根据 xxx 获取检测项目指标
voList.forEach(t -> {
if (null != t.getSamplerId()) {
SysUser sysUser = sysUserClient.get(t.getSamplerId()).servcieData();
t.setSampler(sysUser.getRealname());
}
if (null != t.getSampleId()) {
t.setIndexList(entrustSampleItemIndexService.listBySampleId(t.getSampleId()));
}
});
return page.setRecords(voList);
}
private void backupSampleHandler(Long[] ids, Account account) {
if (null == ids || 0 == ids.length) {
return;
......
......@@ -740,7 +740,7 @@ public class EntrustReportServiceImpl extends BaseServiceImpl<EntrustReportMappe
BeanUtils.copyProperties(itemModel, item);
item.setName(i.getName()).setEntrustSampleId(sample.getId()).setProgress(EntrustSampleItemStatusEnum.END)
.setStatus(EntrustSampleItemStatusEnum.END).setCtime(new Date()).setUid(account.getUserId())
.setLid(account.getUserId()).setLtime(new Date()).setId(IdWorker.getId());
.setLid(account.getUserId()).setLtime(new Date()).setEntrustId(entrustId).setId(IdWorker.getId());
itemList.add(item);
// 生成检测值
......
......@@ -648,7 +648,7 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
return null;
}
/* 多个检测项目放在一个sheet中,一个样品一条记录 */
SingleSheetMoreItemOperation operation = new SingleSheetMoreItemOperation(template, entrustList, sampleVOList, configList, xssfWorkbook);
SingleSheetMoreItemOperation operation = new SingleSheetMoreItemOperation(template, null, entrustList, sampleVOList, configList, xssfWorkbook);
operation.doMakeOriginal();
} else {
......@@ -667,7 +667,7 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
mapReplace.put("#{sampleName}", firstVO == null ? "" : firstVO.getSampleName());
}
OriginalFactory factory = new OriginalFactory(template, voList, configList, entrustList, xssfWorkbook);
OriginalFactory factory = new OriginalFactory(template, voList, null, entrustList, configList, xssfWorkbook);
Operation operation = factory.getOperation();
if (null != operation) {
......@@ -788,7 +788,7 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
// MoreItemMoreOperation moreItemOperation = new MoreItemMoreOperation(template, sampleVOList, entrust, configList, xssfWorkbook);
// moreItemOperation.doMakeOriginal();
/* 多个检测项目放在一个sheet中,一个样品一条记录 */
SingleSheetMoreItemOperation operation = new SingleSheetMoreItemOperation(template, sampleVOList, entrust, configList, xssfWorkbook);
SingleSheetMoreItemOperation operation = new SingleSheetMoreItemOperation(template, entrust, null, sampleVOList, configList, xssfWorkbook);
operation.doMakeOriginal();
// }
......@@ -810,7 +810,7 @@ public class EntrustSampleItemServiceImpl extends BaseServiceImpl<EntrustSampleI
}
OriginalFactory factory = new OriginalFactory(template, voList, entrust, configList, xssfWorkbook);
OriginalFactory factory = new OriginalFactory(template, voList, entrust, null, configList, xssfWorkbook);
Operation operation = factory.getOperation();
if (null != operation) {
......
......@@ -576,8 +576,11 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
RestAssert.fail("数据转换失败");
}
RestAssert.fail(CollectionUtils.isEmpty(sampleDTOList), "标样数据为空");
// 委托ID
Long entrustId = sampleDTOList.get(0).getEntrustId();
RestAssert.fail(null == entrustId, "委托ID为空");
// 添加后排序,不论是否成功添加标样
List<EntrustSample> sampleList = list(Condition.create().eq("entrust_id", sampleDTOList.get(0).getEntrustId())
List<EntrustSample> sampleList = list(Condition.create().eq("entrust_id", entrustId)
.orderBy("order_by", true).orderBy("ctime", false));
//
List<Integer> orderByList = sampleList.stream().map(EntrustSample::getOrderBy).collect(Collectors.toList());
......@@ -600,6 +603,7 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
List<EntrustSampleItem> itemList = t.getItemList();
if (CollectionUtils.isNotEmpty(itemList)) {
for (EntrustSampleItem item : itemList) {
item.setEntrustId(entrustId);
item.setEntrustSampleId(entrustSample.getId());
item.setStatus(EntrustSampleItemStatusEnum.TEST);
item.setProgress(EntrustSampleItemStatusEnum.TEST);
......@@ -1718,6 +1722,8 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
List<EntrustSampleItem> itemList = dto.getItemList();
if (CollectionUtils.isEmpty(itemList)) return false;
List<EntrustSample> sampleList = getBatchIds(sampleIdsList);
Map<Long,Long> sampleEntrustIdMap = sampleList.stream().collect(Collectors.toMap(EntrustSample::getId,EntrustSample::getEntrustId));
List<EntrustSampleItem> saveItemList = new ArrayList<>();
for (Long sampleId : sampleIdsList) {
......@@ -1728,6 +1734,7 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
for (EntrustSampleItem item : itemList) {
EntrustSampleItem add = item.convert(EntrustSampleItem.class);
add.setEntrustSampleId(sampleId);
add.setEntrustId(sampleEntrustIdMap.get(sampleId));
add.setTesterId(account.getUserId());
add.setTester(account.getUserName());
add.setStatus(EntrustSampleItemStatusEnum.TEST);
......@@ -2213,11 +2220,11 @@ public class EntrustSampleServiceImpl extends BaseServiceImpl<EntrustSampleMappe
}
@Override
public boolean isRepeatSampleCode(EntrustSample sample){
if(StringUtils.isBlank(sample.getCode())){
public boolean isRepeatSampleCode(EntrustSample sample) {
if (StringUtils.isBlank(sample.getCode())) {
return false;
}
return super.count(Condition.create().eq("code",sample.getCode())) > 0;
return baseMapper.isRepeatSampleCode(sample) > 0;
}
}
\ No newline at end of file
......@@ -339,10 +339,6 @@ 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) {
......@@ -407,6 +403,10 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
EntrustSample sample = sampleDTO.convert(EntrustSample.class);
sample.setEntrustId(entrust.getId());
handleSampleCode(entrust, sample);
if(StringUtils.isNotBlank(sample.getCode())){
RestAssert.fail(entrustSampleService.isRepeatSampleCode(sample),String.format("样品编号【%s】重复!",sample.getCode()));
}
judgeSampleFields(sample, true);
sample.setId(IdWorker.getId());
sample.setOrderBy(incNum);
......@@ -625,6 +625,10 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
saveSampleList.add(sample);
}
if(StringUtils.isNotBlank(sample.getCode())){
RestAssert.fail(entrustSampleService.isRepeatSampleCode(sample),String.format("样品编号【%s】重复!",sample.getCode()));
}
judgeSampleFields(sample, true);
List<EntrustSampleItem> viewItemList = dto.getItemList();
......@@ -633,6 +637,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
if (null == item.getId()) {
item.setId(IdWorker.getId());
item.setEntrustSampleId(sample.getId());
item.setEntrustId(entrust.getId());
item.setStatus(EntrustSampleItemStatusEnum.DRAFT);
item.setProgress(EntrustSampleItemStatusEnum.DRAFT);
saveItemList.add(item);
......@@ -1141,7 +1146,7 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
.setProgress(EntrustSampleItemStatusEnum.DRAFT).setTesterId(null).setTester(null)
.setAgreedValue(null).setTestTime(null).setTestValue(null).setAuditor(null)
.setAuditorId(null).setAuditTime(null).setCheckTime(null).setChecker(null)
.setCheckerId(null).setPrice(null)
.setCheckerId(null).setPrice(null).setEntrustId(entrust.getId())
.setUid(account.getUserId()).setCtime(new Date()).setLid(null).setLtime(null);
entrustSampleItemList.add(item);
}
......
......@@ -112,5 +112,42 @@
and o.acceptance_result is null
order by s.ctime desc
</select>
<!--验收数据台账-->
<select id="selectContractLedger" resultType="com.patzn.cloud.service.hmhj.vo.ContractLedgerVO">
SELECT
distinct
cs.code,cs.supplier,cs.contract_id,cs.contract_code,cs.inspect_conclusion,cs.arrival_quantity,
cg.ctime "sampling_time",cg.uid "sampler_id", er.report_send_time, er.id "report_id",
es.entrust_id,es.id "sample_id",es.code "sample_code",es.name "sample_name",es.sample_from,
e.code "entrust_code",e.assignor
FROM
contract_sample cs
left join contract_sampling cg on cg.contract_sample_id = cs.id and cg.deleted = 0
left join entrust_sample es on es.contract_sample_id = cs.id and es.deleted = 0
left join entrust e on e.id = es.entrust_id and e.deleted = 0
left join entrust_report er on er.entrust_id = es.entrust_id and er.deleted = 0
WHERE
cs.deleted = 0
<if test="null != vo.contractCode">
AND cs.contract_code like concat('%',#{vo.contractCode},'%')
</if>
<if test="null != vo.supplier">
AND cs.supplier like concat('%',#{vo.supplier},'%')
</if>
<if test="null != vo.inspectConclusion">
AND cs.inspect_conclusion like concat('%',#{vo.inspectConclusion},'%')
</if>
<if test="null != vo.sampleName">
AND es.name like concat('%',#{vo.sampleName},'%')
</if>
<if test="null != vo.sampleCode">
AND es.code like concat('%',#{vo.sampleCode},'%')
</if>
<if test="null != vo.entrustCode">
AND e.code like concat('%',#{vo.entrustCode},'%')
</if>
<if test="null != vo.assignor">
AND e.assignor like concat('%',#{vo.assignor},'%')
</if>
</select>
</mapper>
......@@ -264,7 +264,7 @@
FROM
entrust_sample_item i
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
JOIN entrust e on e.id = s.entrust_id and e.deleted = 0
WHERE i.deleted = 0
AND i.id IN
......
......@@ -32,8 +32,13 @@
<select id="selectVOList" resultType="com.patzn.cloud.service.hmhj.vo.EntrustSampleVO">
SELECT
s.*
FROM entrust_sample s WHERE deleted = 0
s.*,i.group_id
FROM entrust_sample s
LEFT JOIN (
select i.entrust_sample_id, max(i.group_id) "group_id" from entrust_sample_item i where i.deleted = 0
group by i.entrust_sample_id
) i on i.entrust_sample_id = s.id
WHERE deleted = 0
<if test="null != vo.entrustId">
AND s.entrust_id = #{vo.entrustId}
</if>
......@@ -489,6 +494,18 @@
</select>
<!---->
<select id="isRepeatSampleCode" resultType="int">
select
count(1)
from entrust_sample s
join entrust e on e.id = s.entrust_id and e.deleted = 0
where s.deleted = 0 and s.code = #{vo.code}
<if test="null != vo.id">
and s.id != #{vo.id}
</if>
</select>
<update id="updateBatchByData" parameterType="java.util.List">
<foreach collection="sampleList" item="item" index="index" open="" close="" separator=";">
update entrust_sample
......
......@@ -424,10 +424,10 @@
SUM ( i.fe_0080 ) "fe_0080",
SUM ( CASE WHEN s.sample_grading IN ( 'Al99.85', 'Al99.70DT', 'Al99.80', 'Al99.70' ) THEN 1 ELSE 0 END ) "over_70",
SUM ( CASE WHEN s.sample_grading IN ( 'Al99.85', 'Al99.70DT', 'Al99.80', 'Al99.70' ) AND i.fe_01 > 0 THEN 1 ELSE 0 END ) "low_fe",
SUM ( CASE WHEN s.sample_grading IN ( 'Al99.85', 'Al99.70DT', 'Al99.80', 'Al99.70' ) AND i.fe_0080 > 0 AND i.ni_00042 > 0 THEN 1 ELSE 0 END ) "low_ni"
SUM ( CASE WHEN s.sample_grading IN ( 'Al99.85', 'Al99.70DT', 'Al99.80', 'Al99.70' ) AND i.fe_01 > 0 AND i.ni_00042 > 0 THEN 1 ELSE 0 END ) "low_ni"
FROM
entrust_sample s
JOIN electrolyzer e ON e.ID = s.electrolyzer_id
JOIN electrolyzer e ON e.ID = s.electrolyzer_id AND e.deleted = 0
JOIN (
SELECT
i.entrust_sample_id,
......@@ -439,11 +439,11 @@
SUM ( CASE WHEN ii.NAME = '原铝Ni' AND CAST ( ii.test_value AS NUMERIC ) &lt;= 0.0042 THEN 1 ELSE 0 END) "ni_00042"
FROM
entrust_sample_item i
JOIN entrust_sample_item_index ii ON ii.entrust_sample_item_id = i.ID
JOIN entrust_sample_item_index ii ON ii.entrust_sample_item_id = i.ID AND ii.deleted = 0
WHERE
i.deleted = 0
AND ii.deleted = 0
AND i.NAME IN ( '原铝Fe', '原铝Ni')
AND to_char(i.test_time,'yyyy-mm-dd') LIKE '${vo.yearMonth}%'
AND ii.test_value is not null
AND is_numeric ( ii.test_value )
GROUP BY
......@@ -451,7 +451,6 @@
) i ON i.entrust_sample_id = s.ID
WHERE
s.deleted = 0
AND e.deleted = 0
AND s.NAME = '原铝'
AND s.sample_grading IS NOT NULL
AND i.test_time LIKE '${vo.yearMonth}%'
......
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