Commit b9eaddd3 by lijingjing

霍煤客户反馈问题修改;

parent d5322f40
......@@ -4,4 +4,5 @@ build
gradle*
Dockerfile
Jenkinsfile-test
libs
\ No newline at end of file
libs
*env.json
\ No newline at end of file
......@@ -21,5 +21,12 @@ public class HmConst {
public static final String SCATTERED = "散样";
public static final String SECOND_PERIOD = "一二期";
public static final String THIRD_PERIOD = "三期";
public static final String NO_MATCH = "NO_MATCH";
public static final String[] STORAGE_BRANCH = {"储运分厂(二期)", "储运分厂(三期)"};
public static final String[] PURIFY_BRANCH = {"净化分厂一二期", "净化分厂三期"};
public static final String[] PURIFY_ASSAY = {"净化化验一二期", "净化化验三期"};
public static final String[] ACCEPTANCE_ROOM = {"二期验收室", "三期验收室"};
public static final String[] LABORATORY = {"二期化验室", "三期化验室"};
public static final String[] QUALITY_ROOM = {"二期质量室", "三期质量室"};
}
\ No newline at end of file
package com.patzn.cloud.service.lims.hmhj.controller;
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.service.hmhj.entity.ContractInfo;
import com.patzn.cloud.service.hmhj.enums.ContractInfoStatusEnum;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoService;
import com.patzn.cloud.service.lims.hmhj.service.impl.UserInfoServiceImpl;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* 合同信息 前端控制器
*
* @author wwd
* @since 2021-02-01
*/
@Api(tags = "合同信息")
@RestController
@RequestMapping("/v1/contract_info")
public class ContractInfoController extends ServiceController {
private final IContractInfoService contractInfoService;
private final UserInfoServiceImpl userInfoService;
public ContractInfoController(IContractInfoService contractInfoService, UserInfoServiceImpl userInfoService) {
this.contractInfoService = contractInfoService;
this.userInfoService = userInfoService;
}
@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")
public RestResult<Page<ContractInfo>> getPage(ContractInfo contractInfo) {
// 根据组织显示数据
contractInfo.setPeriod(userInfoService.getUserPeriod(getAccount()));
return success(contractInfoService.page(getPage(), contractInfo));
}
@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_draft")
public RestResult<Page<ContractInfo>> getPageDraft(ContractInfo contractInfo) {
contractInfo.setStatus(ContractInfoStatusEnum.DRAFT);
return getPage(contractInfo);
}
@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_his")
public RestResult<Page<ContractInfo>> getPageHis(ContractInfo contractInfo) {
contractInfo.setStatus(ContractInfoStatusEnum.HISTORY);
return getPage(contractInfo);
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<ContractInfo> get(@PathVariable("id") Long id) {
return success(contractInfoService.getById(id));
}
@ApiOperation("根据 id 修改信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@PutMapping("/{id}")
public RestResult<Boolean> edit(@PathVariable("id") Long id, ContractInfo contractInfo) {
contractInfo.setId(id);
return success(contractInfoService.updateById(contractInfo));
}
@ApiOperation("添加或修改")
@PostMapping("/save_update")
public RestResult<Boolean> saveUpdate(ContractInfo contractInfo) {
contractInfo.setPeriod(userInfoService.getUserPeriod(getAccount()));
return success(contractInfoService.saveOrUpdateInfo(contractInfo));
}
@ApiOperation("根据 ids 删除")
@ApiImplicitParams({
@ApiImplicitParam(name = "ids", value = "主键列表", required = true, paramType = "query", allowMultiple = true, dataTypeClass = Long.class),
})
@DeleteMapping("/")
public RestResult<Boolean> delete(@RequestParam("ids") List<Long> ids) {
return success(contractInfoService.removeByIds(ids));
}
}
......@@ -11,6 +11,7 @@ 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.ContractSampleVO;
import com.patzn.cloud.service.lims.hmhj.common.consts.HmConst;
import com.patzn.cloud.service.lims.hmhj.service.IContractSampleService;
import com.patzn.cloud.service.lims.hmhj.service.impl.UserInfoServiceImpl;
import io.swagger.annotations.Api;
......@@ -93,7 +94,7 @@ public class ContractSampleController extends ServiceController {
@PostMapping("/page_store_transport")
public RestResult<Page<ContractSampleVO>> getPageStoreTransport(ContractSampleVO contractSample) {
contractSample.setStatus(ContractSampleStatusEnum.STORE_TRANSPORT);
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), "储运分厂一二期", "储运分厂三期"));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.STORAGE_BRANCH));
return success(contractSampleService.pageVO(getPage(), contractSample));
}
......@@ -115,7 +116,7 @@ public class ContractSampleController extends ServiceController {
statusList.add(ContractSampleStatusEnum.OUT_DRIFT);
statusList.add(ContractSampleStatusEnum.ENTRUST_REG);
contractSample.setStatusList(statusList);
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), "储运分厂一二期", "储运分厂三期"));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.STORAGE_BRANCH));
return success(contractSampleService.pageVO(getPage(), contractSample));
}
......@@ -189,7 +190,10 @@ public class ContractSampleController extends ServiceController {
@PostMapping("/page_entrust_reg")
public RestResult<Page<ContractSampleVO>> getPageEntrustReg(ContractSampleVO contractSample) {
contractSample.setStatus(ContractSampleStatusEnum.ENTRUST_REG);
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), "二期质量室", "三期质量室"));
// 过滤组织
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.QUALITY_ROOM));
// 过滤二三期
contractSample.setPeriod(userInfoService.getUserPeriod(getAccount()));
return success(contractSampleService.pageOutReg(getPage(), contractSample));
}
......@@ -224,6 +228,8 @@ public class ContractSampleController extends ServiceController {
public RestResult<Page<ContractSampleVO>> getPageCheckAcceptReg(ContractSampleVO contractSample) {
contractSample.setStatus(ContractSampleStatusEnum.CHECK_ACCEPT_REG);
contractSample.setCurrUserId(getAccount().getUserId());
// 保持原样,不做处理
// contractSample.setPeriod(userInfoService.getOrgNameByUserPeriod(getAccount(),HmConst.ACCEPTANCE_ROOM));
return success(contractSampleService.pageVO(getPage(), contractSample));
}
......@@ -243,7 +249,7 @@ public class ContractSampleController extends ServiceController {
ContractSampleStatusEnum.ENTRUST_REG
));
contractSample.setType(2);
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(),"二期验收室","三期验收室"));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(),HmConst.ACCEPTANCE_ROOM));
return success(contractSampleService.pageVO(getPage(), contractSample));
}
......@@ -276,7 +282,7 @@ public class ContractSampleController extends ServiceController {
@PostMapping("/page_check_accept_org")
public RestResult<Page<ContractSampleVO>> getPageCheckAcceptOrg(ContractSampleVO contractSample) {
contractSample.setStatus(ContractSampleStatusEnum.CHECK_ACCEPT_ORg);
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), "二期验收室", "三期验收室"));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.ACCEPTANCE_ROOM));
return success(contractSampleService.pageVO(getPage(), contractSample));
}
......@@ -291,7 +297,7 @@ public class ContractSampleController extends ServiceController {
@PostMapping("/page_check_accept_org_his")
public RestResult<Page<ContractSampleVO>> getPageCheckAcceptOrgHis(ContractSampleVO contractSample) {
contractSample.setStatus(ContractSampleStatusEnum.CHECK_ACCEPT_ORg);
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), "二期验收室", "三期验收室"));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.ACCEPTANCE_ROOM));
return success(contractSampleService.pageCheckAcceptOrgHis(getPage(), contractSample));
}
......@@ -334,7 +340,7 @@ public class ContractSampleController extends ServiceController {
@PostMapping("/page_check_result_input")
public RestResult<Page<ContractSampleVO>> getPageCheckResultInput(ContractSampleVO contractSample) {
contractSample.setStatus(ContractSampleStatusEnum.CHECK_RESULT_INPUT);
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), "二期验收室", "三期验收室"));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.ACCEPTANCE_ROOM));
return success(contractSampleService.pageVO(getPage(), contractSample));
}
......@@ -348,7 +354,7 @@ public class ContractSampleController extends ServiceController {
@PostMapping("/page_storage_register")
public RestResult<Page<ContractSampleVO>> getPageStorageRegister(ContractSampleVO contractSample) {
contractSample.setStatus(ContractSampleStatusEnum.STORAGE_REGISTER);
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), "二期验收室", "三期验收室"));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.ACCEPTANCE_ROOM));
return success(contractSampleService.pageVO(getPage(), contractSample));
}
......@@ -369,7 +375,7 @@ public class ContractSampleController extends ServiceController {
ContractSampleStatusEnum.STORAGE_REGISTER,
ContractSampleStatusEnum.ACCEPTANCE_CHECK_PUBLISH
));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), "二期验收室", "三期验收室"));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.ACCEPTANCE_ROOM));
return success(contractSampleService.pageVO(getPage(), contractSample));
}
......@@ -388,7 +394,7 @@ public class ContractSampleController extends ServiceController {
ContractSampleStatusEnum.ENTRUST_REG,
ContractSampleStatusEnum.ACCEPTANCE_CHECK_PUBLISH
));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), "二期验收室", "三期验收室"));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.ACCEPTANCE_ROOM));
return success(contractSampleService.pageVO(getPage(), contractSample));
}
......
......@@ -11,6 +11,7 @@ import com.patzn.cloud.service.hmhj.dto.EntrustDTO;
import com.patzn.cloud.service.hmhj.entity.Entrust;
import com.patzn.cloud.service.hmhj.enums.*;
import com.patzn.cloud.service.hmhj.vo.EntrustVO;
import com.patzn.cloud.service.lims.hmhj.common.consts.HmConst;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustService;
import com.patzn.cloud.service.lims.hmhj.service.impl.UserInfoServiceImpl;
import io.swagger.annotations.Api;
......@@ -63,7 +64,7 @@ public class EntrustController extends ServiceController {
@PostMapping("/page_out")
public RestResult<Page<EntrustVO>> getPageOut(EntrustVO entrust) {
entrust.setStatus(EntrustStatusEnum.OUT_DRAFT);
entrust.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(),"二期验收室","三期验收室"));
entrust.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.ACCEPTANCE_ROOM));
return success(entrustService.pageVO(getPage(), entrust));
}
......@@ -851,6 +852,7 @@ public class EntrustController extends ServiceController {
public RestResult<Page<EntrustVO>> getPageEntrustEBook(EntrustVO entrust) {
entrust.setSampleStatus(EntrustSampleStatusEnum.END);
entrust.setJudgeStatus(2);
entrust.setSortOrder(" r.report_send_time desc ");
return success(entrustService.pageEntrustJudge(getPage(), entrust));
}
......
......@@ -458,6 +458,7 @@ public class EntrustSampleController extends ServiceController {
@PostMapping("/page_input_by_sample_left")
public RestResult<Page<EntrustSampleVO>> getPageInputByItemLeft(EntrustSampleVO sampleVO) {
sampleVO.setItemStatus(EntrustSampleItemStatusEnum.TEST);
sampleVO.setTesterId(getAccount().getUserId());
return success(entrustSampleService.pageBySampleLeft(getPage(), sampleVO));
}
......
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.ContractInfo;
import com.patzn.cloud.service.hmhj.entity.ContractSample;
import com.patzn.cloud.service.hmhj.vo.ContractSampleVO;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
import java.util.List;
/**
* <p>
* Mapper 接口
* </p>
* @author meazty
* @since 2021-09-16
*/
public interface ContractInfoMapper extends BatchMapper<ContractInfo> {
}
package com.patzn.cloud.service.lims.hmhj.service;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.controller.Account;
import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.dto.ContractSampleDTO;
import com.patzn.cloud.service.hmhj.dto.ContractSampleVODTO;
import com.patzn.cloud.service.hmhj.entity.ContractInfo;
import com.patzn.cloud.service.hmhj.entity.ContractSample;
import com.patzn.cloud.service.hmhj.vo.ContractSampleVO;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
* @title: 合同信息表
* @author: meazty
* @ondate: 2021/9/16 20:37
**/
public interface IContractInfoService extends IBaseService<ContractInfo> {
Page<ContractInfo> page(Page<ContractInfo> page, ContractInfo contractInfo);
boolean removeByIds(List<Long> ids);
boolean saveOrUpdateInfo(ContractInfo contractInfo);
}
package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.entity.ContractInfo;
import com.patzn.cloud.service.lims.hmhj.mapper.ContractInfoMapper;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 服务实现类
*
* @author wwd
* @since 2021-02-01
*/
@Service
public class ContractInfoServiceImpl extends BaseServiceImpl<ContractInfoMapper, ContractInfo> implements IContractInfoService {
@Override
public Page<ContractInfo> page(Page<ContractInfo> page, ContractInfo contractInfo) {
String code = contractInfo.getCode();
String materialName = contractInfo.getMaterialName();
contractInfo.setCode(null).setMaterialName(null);
Wrapper wrapper = new EntityWrapper<>(contractInfo);
if (StringUtils.isNotBlank(code)) {
wrapper.like("code", code);
}
if (StringUtils.isNotBlank(materialName)) {
wrapper.like("material_name", materialName);
}
wrapper.orderBy("ctime", false);
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
@Override
public boolean saveOrUpdateInfo(ContractInfo contractInfo) {
return saveOrUpdate(contractInfo);
}
}
......@@ -156,6 +156,13 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap
}
}
private void judgeNotNullField(List<ContractSample> contractSamples) {
contractSamples.forEach(t -> {
RestAssert.fail(null == t.getType(), String.format("编号为【%s】的合同,检测类型不能为空", t.getCode()));
RestAssert.fail(StringUtils.isBlank(t.getStoragePlace()), String.format("编号为【%s】的合同,存放地不能为空", t.getCode()));
RestAssert.fail(StringUtils.isBlank(t.getStorekeeper()), String.format("编号为【%s】的合同,保管员不能为空", t.getCode()));
});
}
@Transactional(rollbackFor = Exception.class)
@Override
......@@ -163,7 +170,7 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap
RestAssert.fail(ArrayUtils.isEmpty(ids), "请选择要提交的合同!");
judgePauseStatus(ids);
List<ContractSample> contractSamples = getBatchIds(Arrays.asList(ids));
RestAssert.fail(contractSamples.stream().anyMatch(t -> null == t.getType()), "检测类型为空");
judgeNotNullField(contractSamples);
ContractSample contractSample = new ContractSample();
contractSample.setStatus(ContractSampleStatusEnum.PRO_TEC_CHECK);
contractSample.setProgress(ContractSampleStatusEnum.PRO_TEC_CHECK);
......@@ -211,7 +218,7 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap
public boolean submitToCheckAcceptReg(Long[] ids, Account account) {
RestAssert.fail(ArrayUtils.isEmpty(ids), "请选择要提交的合同!");
List<ContractSample> contractSamples = getBatchIds(Arrays.asList(ids));
RestAssert.fail(contractSamples.stream().anyMatch(t -> null == t.getType()), "检测类型为空");
judgeNotNullField(contractSamples);
ContractSample contractSample = new ContractSample();
contractSample.setStatus(ContractSampleStatusEnum.CHECK_ACCEPT_REG);
contractSample.setProgress(ContractSampleStatusEnum.CHECK_ACCEPT_REG);
......@@ -468,7 +475,7 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap
@Override
public Page<ContractSampleVO> pageOutReg(Page<ContractSampleVO> page, ContractSampleVO contractSample) {
contractSample.setNoShowSample(HmConst.Y);
return page.setRecords(baseMapper.selectVOList(page,contractSample));
return page.setRecords(baseMapper.selectVOList(page, contractSample));
}
@Override
......
......@@ -232,12 +232,19 @@ public class UserInfoServiceImpl {
public String getOrgNameByUserPeriod(Account account, String... periods) {
List<String> userOrgNameList = getUserOrgNames(account);
if (CollectionUtils.isEmpty(userOrgNameList)) {
return null;
return HmConst.NO_MATCH;
}
String parent = periods[0].replace("(", "").replace(")", "")
.replace("一二期", "").replace("二期", "");
List<String> list = Arrays.stream(periods).filter(t -> userOrgNameList.contains(t)).collect(Collectors.toList());
if (CollectionUtils.isEmpty(list)) {
return null;
// 为空的前提下,若能匹配父级,那么返回父级
if (userOrgNameList.contains(parent)) {
return parent;
}
return HmConst.NO_MATCH;
}
return list.get(0);
}
......
......@@ -12,7 +12,7 @@ service:
spring:
datasource:
type: com.zaxxer.hikari.HikariDataSource
url: jdbc:postgresql://localhost:5432/dev_lims_hmhj
url: jdbc:postgresql://meazty.fun:5433/dev_lims_hmhj
username: postgres
password: post123
dynamic:
......@@ -20,7 +20,7 @@ spring:
# 注册中心配置
cloud:
consul:
host: 127.0.0.1
host: localhost
mail:
host: smtp.163.com
username: ptlims_test@163.com
......@@ -29,7 +29,7 @@ spring:
protocol: smtp
default-encoding: UTF-8
rabbitmq:
host: localhost
host: data.meazty.fun
port: 5672
username: mqbase
password: mqb123#@$5
......@@ -49,7 +49,8 @@ spring:
# Mongodb GridFS
data:
mongodb:
uri: mongodb://hmuser:hj564Aq@127.0.0.1:27017/lims
# uri: mongodb://hmuser:hj564Aq@meazty.fun:27017/lims
uri: mongodb://mongo:mong123@meazty.fun:27017/lims
grid-fs-database: lims
# Mongodb GridFS 存储
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.patzn.cloud.service.lims.hmhj.mapper.ContractInfoMapper">
</mapper>
......@@ -41,6 +41,10 @@
AND strpos(#{vo.userOrgName},s.factory_area) > 0
</if>
<if test="null!=vo.period">
AND (s.factory_area is null or strpos(#{vo.period},s.factory_area) > 0 )
</if>
<if test="null!=vo.statusList">
AND s.status IN
<foreach collection="vo.statusList" index="index" item="status" open="(" separator="," close=")">
......
......@@ -157,9 +157,12 @@
</if>
GROUP BY s.company_id,s.entrust_id
)
SELECT e.*,s.sample_from
SELECT e.*,s.sample_from,r.report_send_time
FROM entrust e
JOIN sample s on s.entrust_id = e.id
left join (
select r.* from entrust_report r where r.deleted = 0
) r on r.entrust_id = e.id
WHERE e.deleted = 0
<include refid="basicCondition"/>
......@@ -196,7 +199,15 @@
</foreach>
)
</if>
order by e.ctime DESC
<if test="null == vo.sortOrder">
order by e.ctime DESC
</if>
<if test="null != vo.sortOrder">
order by ${vo.sortOrder}
</if>
</select>
<!--查询委托历史数据-->
......
......@@ -111,56 +111,56 @@
<select id="selectVOList" resultType="com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO">
WITH i AS (
SELECT
id,
entrust_sample_id,
name,
status,
standard,
test_value,
tester,
tester_id,
test_time,
group_name,
group_id,
in_report
SELECT
id,
entrust_sample_id,
name,
status,
standard,
test_value,
tester,
tester_id,
test_time,
group_name,
group_id,
in_report
FROM
entrust_sample_item
entrust_sample_item
WHERE
deleted = 0
deleted = 0
<if test="null != vo.name">
AND name LIKE CONCAT('%',#{vo.name},'%')
</if>
<if test="null != vo.name">
AND name LIKE CONCAT('%',#{vo.name},'%')
</if>
<if test="null != vo.status">
AND status = #{vo.status}
</if>
<if test="null != vo.status">
AND status = #{vo.status}
</if>
<if test="null != vo.statusList">
AND status IN
<foreach collection="vo.statusList" index="index" item="status" open="(" separator="," close=")">
#{status}
</foreach>
</if>
<if test="null != vo.statusList">
AND status IN
<foreach collection="vo.statusList" index="index" item="status" open="(" separator="," close=")">
#{status}
</foreach>
</if>
<if test="null!=vo.sampleIds">
AND entrust_sample_id IN
<foreach collection="vo.sampleIds" index="index" item="sampleId" open="(" separator="," close=")">
#{sampleId}
</foreach>
</if>
<if test="null!=vo.sampleIds">
AND entrust_sample_id IN
<foreach collection="vo.sampleIds" index="index" item="sampleId" open="(" separator="," close=")">
#{sampleId}
</foreach>
</if>
<if test="null!=vo.sampleIdsArray">
AND entrust_sample_id IN
<foreach collection="vo.sampleIdsArray" index="index" item="sampleId" open="(" separator="," close=")">
#{sampleId}
</foreach>
</if>
<if test="null!=vo.sampleIdsArray">
AND entrust_sample_id IN
<foreach collection="vo.sampleIdsArray" index="index" item="sampleId" open="(" separator="," close=")">
#{sampleId}
</foreach>
</if>
<if test="null != vo.testerId">
AND tester_id = #{vo.testerId}
</if>
<if test="null != vo.testerId">
AND tester_id = #{vo.testerId}
</if>
)
SELECT i.*,s.name AS "sampleName",s.code AS "sampleCode",e.test_side "testSide",l.record_id,r.object_key AS
......
......@@ -53,11 +53,24 @@
AND s.status != #{vo.notStatus}
</if>
<if test="null != vo.itemStatus">
<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
and i.status = #{vo.itemStatus}
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>
......@@ -68,23 +81,13 @@
</foreach>
</if>
<if test="null != vo.itemStatusList">
AND exists (
select 1 from entrust_sample_item i where i.deleted = 0
and i.entrust_sample_id = s.id
and i.status IN
<foreach collection="vo.itemStatusList" index="index" item="itemStatus" open="(" separator="," close=")">
#{itemStatus}
</foreach>
)
</if>
<if test="null!=vo.ids">
<if test="null != vo.ids">
AND s.id IN
<foreach collection="vo.ids" index="index" item="sampleId" open="(" separator="," close=")">
#{sampleId}
</foreach>
</if>
order by s.order_by asc, s.code ,s.ctime desc
</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