Commit b9454ba0 by lijingjing

霍煤客户反馈问题修改;

parent b9eaddd3
package com.patzn.cloud.service.lims.hmhj.controller;
import com.baomidou.kisso.annotation.Action;
import com.baomidou.kisso.annotation.Login;
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.ContractInfoAnnex;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoAnnexService;
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 org.springframework.web.multipart.MultipartHttpServletRequest;
import java.util.List;
/**
* 合同物资 前端控制器
*
* @author wwd
* @since 2021-02-01
*/
@Api(tags = "合同物资附件")
@RestController
@RequestMapping("/v1/info_annex")
public class ContractInfoAnnexController extends ServiceController {
@Autowired
private IContractInfoAnnexService contractInfoAnnexService;
@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<ContractInfoAnnex>> getPage(ContractInfoAnnex contractInfoAnnex) {
return success(contractInfoAnnexService.page(getPage(), contractInfoAnnex));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<ContractInfoAnnex> get(@PathVariable("id") Long id) {
return success(contractInfoAnnexService.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, ContractInfoAnnex contractInfoAnnex) {
contractInfoAnnex.setId(id);
return success(contractInfoAnnexService.updateById(contractInfoAnnex));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(ContractInfoAnnex contractInfoAnnex) {
return success(contractInfoAnnexService.save(contractInfoAnnex));
}
@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(contractInfoAnnexService.removeByIds(ids));
}
@ApiOperation(value = "附件上传", notes = "附件上传")
@PostMapping("/upload/{contractId}")
public RestResult<Boolean> upload(@PathVariable("contractId") Long contractId, MultipartFile file) {
return success(contractInfoAnnexService.upload(file, contractId));
}
@ApiOperation(value = "附件批量上传", notes = "附件批量上传")
@PostMapping("/upload_bath/{contractId}")
public RestResult<Boolean> uploadBath(@PathVariable("contractId") Long contractId, MultipartHttpServletRequest httpServletRequest) {
return success(contractInfoAnnexService.uploadBath(httpServletRequest, contractId,getAccount()));
}
@ApiOperation(value = "下载附件", notes = "下载指定附件")
@GetMapping("/download/{id}")
public void downloadFile(@PathVariable("id")Long id) {
contractInfoAnnexService.downloadFile(id, response);
}
@ApiOperation(value = "预览图片", notes = "预览图片")
@Login(action = Action.Skip)
@GetMapping("/view")
public void view(String objectKey) {
contractInfoAnnexService.view(response, objectKey);
}
}
...@@ -4,37 +4,37 @@ import com.baomidou.mybatisplus.plugins.Page; ...@@ -4,37 +4,37 @@ import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.api.RestConstants; import com.patzn.cloud.commons.api.RestConstants;
import com.patzn.cloud.commons.api.RestResult; import com.patzn.cloud.commons.api.RestResult;
import com.patzn.cloud.commons.controller.ServiceController; import com.patzn.cloud.commons.controller.ServiceController;
import com.patzn.cloud.service.hmhj.dto.ContractInfoDTO;
import com.patzn.cloud.service.hmhj.entity.ContractInfo; import com.patzn.cloud.service.hmhj.entity.ContractInfo;
import com.patzn.cloud.service.hmhj.enums.ContractInfoStatusEnum; import com.patzn.cloud.service.hmhj.enums.ContractInfoStatusEnum;
import com.patzn.cloud.service.hmhj.vo.ContractInfoVO;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoService; import com.patzn.cloud.service.lims.hmhj.service.IContractInfoService;
import com.patzn.cloud.service.lims.hmhj.service.impl.UserInfoServiceImpl; import com.patzn.cloud.service.lims.hmhj.service.impl.UserInfoServiceImpl;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import java.util.List; import java.util.List;
/** /**
* 合同信息 前端控制器 * 合同物资 前端控制器
* *
* @author wwd * @author wwd
* @since 2021-02-01 * @since 2021-02-01
*/ */
@Api(tags = "合同信息") @Api(tags = "合同物资")
@RestController @RestController
@RequestMapping("/v1/contract_info") @RequestMapping("/v1/contract_info")
public class ContractInfoController extends ServiceController { public class ContractInfoController extends ServiceController {
private final IContractInfoService contractInfoService; @Autowired
private IContractInfoService contractInfoService;
private final UserInfoServiceImpl userInfoService; @Autowired
private UserInfoServiceImpl userInfoService;
public ContractInfoController(IContractInfoService contractInfoService, UserInfoServiceImpl userInfoService) {
this.contractInfoService = contractInfoService;
this.userInfoService = userInfoService;
}
@ApiOperation("分页列表") @ApiOperation("分页列表")
...@@ -45,39 +45,26 @@ public class ContractInfoController extends ServiceController { ...@@ -45,39 +45,26 @@ public class ContractInfoController extends ServiceController {
@ApiImplicitParam(name = RestConstants.PAGE_SORD, value = "排序方式", paramType = "query", dataTypeClass = String.class), @ApiImplicitParam(name = RestConstants.PAGE_SORD, value = "排序方式", paramType = "query", dataTypeClass = String.class),
}) })
@PostMapping("/page") @PostMapping("/page")
public RestResult<Page<ContractInfo>> getPage(ContractInfo contractInfo) { public RestResult<Page<ContractInfoVO>> getPage(ContractInfoVO contractInfo) {
contractInfo.setStatus(ContractInfoStatusEnum.DRAFT);
// 根据组织显示数据 // 根据组织显示数据
contractInfo.setPeriod(userInfoService.getUserPeriod(getAccount())); contractInfo.setPeriod(userInfoService.getUserPeriod(getAccount()));
return success(contractInfoService.page(getPage(), contractInfo)); return success(contractInfoService.pageVO(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("合同登记分页历史列表") @ApiOperation("合同登记历史分页列表")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = RestConstants.PAGE_PAGE, value = "请求数据的页码", required = true, paramType = "query", dataTypeClass = Integer.class), @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_ROWS, value = "每页条数", required = true, paramType = "query", dataTypeClass = Integer.class),
@ApiImplicitParam(name = RestConstants.PAGE_SIDX, value = "排序字段", paramType = "query", dataTypeClass = String.class), @ApiImplicitParam(name = RestConstants.PAGE_SIDX, value = "排序字段", paramType = "query", dataTypeClass = String.class),
@ApiImplicitParam(name = RestConstants.PAGE_SORD, value = "排序方式", paramType = "query", dataTypeClass = String.class), @ApiImplicitParam(name = RestConstants.PAGE_SORD, value = "排序方式", paramType = "query", dataTypeClass = String.class),
}) })
@PostMapping("/page_his") @PostMapping("/page_reg_his")
public RestResult<Page<ContractInfo>> getPageHis(ContractInfo contractInfo) { public RestResult<Page<ContractInfoVO>> getRegPageHis(ContractInfoVO contractInfo) {
contractInfo.setStatus(ContractInfoStatusEnum.HISTORY); contractInfo.setStatus(ContractInfoStatusEnum.HISTORY);
return getPage(contractInfo); return success(contractInfoService.pageVO(getPage(), contractInfo));
} }
@ApiOperation("查询 id 信息") @ApiOperation("查询 id 信息")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class), @ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
...@@ -97,11 +84,19 @@ public class ContractInfoController extends ServiceController { ...@@ -97,11 +84,19 @@ public class ContractInfoController extends ServiceController {
return success(contractInfoService.updateById(contractInfo)); return success(contractInfoService.updateById(contractInfo));
} }
@ApiOperation("添加或修改") @ApiOperation("添加")
@PostMapping("/save_update") @PostMapping("/")
public RestResult<Boolean> saveUpdate(ContractInfo contractInfo) { public RestResult<Boolean> add(ContractInfo contractInfo) {
contractInfo.setPeriod(userInfoService.getUserPeriod(getAccount())); contractInfo.setPeriod(userInfoService.getUserPeriod(getAccount()));
return success(contractInfoService.saveOrUpdateInfo(contractInfo)); return success(contractInfoService.save(contractInfo));
}
@ApiOperation("添加")
@PostMapping("/add_contract")
public RestResult<Boolean> addDTO(@RequestBody ContractInfoDTO dto) {
dto.setPeriod(userInfoService.getUserPeriod(getAccount()));
return success(contractInfoService.addDTO(dto));
} }
...@@ -114,4 +109,10 @@ public class ContractInfoController extends ServiceController { ...@@ -114,4 +109,10 @@ public class ContractInfoController extends ServiceController {
return success(contractInfoService.removeByIds(ids)); return success(contractInfoService.removeByIds(ids));
} }
@ApiOperation("批量修改合同信息")
@PostMapping("/batch_update")
public RestResult<Boolean> batchUpdate(@RequestParam("ids") Long[] ids, ContractInfo contractInfo) {
return success(contractInfoService.updateContractBatch(ids, contractInfo, getAccount()));
}
} }
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.ContractInfoItem;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoItemService;
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 java.util.List;
/**
* 合同物资所检项目 前端控制器
*
* @author wwd
* @since 2021-02-01
*/
@Api(tags = "合同物资所检项目")
@RestController
@RequestMapping("/v1/contract_info_item")
public class ContractInfoItemController extends ServiceController {
@Autowired
private IContractInfoItemService contractInfoItemService;
@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<ContractInfoItem>> getPage(ContractInfoItem contractInfoItem) {
return success(contractInfoItemService.page(getPage(), contractInfoItem));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<ContractInfoItem> get(@PathVariable("id") Long id) {
return success(contractInfoItemService.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, ContractInfoItem contractInfoItem) {
contractInfoItem.setId(id);
return success(contractInfoItemService.updateById(contractInfoItem));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(ContractInfoItem contractInfoItem) {
return success(contractInfoItemService.save(contractInfoItem));
}
@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(contractInfoItemService.removeByIds(ids));
}
}
package com.patzn.cloud.service.lims.hmhj.controller; package com.patzn.cloud.service.lims.hmhj.controller;
import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.google.common.collect.Lists; import com.google.common.collect.Lists;
import com.patzn.cloud.commons.api.RestConstants; import com.patzn.cloud.commons.api.RestConstants;
import com.patzn.cloud.commons.api.RestResult; import com.patzn.cloud.commons.api.RestResult;
...@@ -18,7 +17,6 @@ import io.swagger.annotations.Api; ...@@ -18,7 +17,6 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam; import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams; import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation; import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*; import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile; import org.springframework.web.multipart.MultipartFile;
...@@ -391,8 +389,7 @@ public class ContractSampleController extends ServiceController { ...@@ -391,8 +389,7 @@ public class ContractSampleController extends ServiceController {
contractSample.setStatusList(Lists.newArrayList( contractSample.setStatusList(Lists.newArrayList(
ContractSampleStatusEnum.OUT_DRIFT, ContractSampleStatusEnum.OUT_DRIFT,
ContractSampleStatusEnum.OUT_INPUT, ContractSampleStatusEnum.OUT_INPUT,
ContractSampleStatusEnum.ENTRUST_REG, ContractSampleStatusEnum.ENTRUST_REG
ContractSampleStatusEnum.ACCEPTANCE_CHECK_PUBLISH
)); ));
contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.ACCEPTANCE_ROOM)); contractSample.setUserOrgName(userInfoService.getOrgNameByUserPeriod(getAccount(), HmConst.ACCEPTANCE_ROOM));
return success(contractSampleService.pageVO(getPage(), contractSample)); return success(contractSampleService.pageVO(getPage(), contractSample));
...@@ -446,6 +443,13 @@ public class ContractSampleController extends ServiceController { ...@@ -446,6 +443,13 @@ public class ContractSampleController extends ServiceController {
return success(contractSampleService.addDTO(dto)); return success(contractSampleService.addDTO(dto));
} }
@ApiOperation("根据合同添加储运合同信息")
@PostMapping("/add_by_contract_info")
public RestResult<Boolean> addDtoByContractInfo(@RequestBody ContractSampleDTO dto) {
dto.setPeriod(userInfoService.getUserPeriod(getAccount()));
return success(contractSampleService.addByContractInfo(dto));
}
@ApiOperation("提交至储运登记") @ApiOperation("提交至储运登记")
@PostMapping("/submit_to_store_transport") @PostMapping("/submit_to_store_transport")
...@@ -453,7 +457,7 @@ public class ContractSampleController extends ServiceController { ...@@ -453,7 +457,7 @@ public class ContractSampleController extends ServiceController {
return success(contractSampleService.submitToStoreTransport(ids, getAccount())); return success(contractSampleService.submitToStoreTransport(ids, getAccount()));
} }
@ApiOperation("提交至储运入库登记") @ApiOperation("验收结果发布提交至储运入库登记")
@PostMapping("/submit_to_store_register") @PostMapping("/submit_to_store_register")
public RestResult<Boolean> submitToStoreRegister(@RequestParam("ids") Long[] ids) { public RestResult<Boolean> submitToStoreRegister(@RequestParam("ids") Long[] ids) {
return success(contractSampleService.submitToStoreRegister(ids, getAccount())); return success(contractSampleService.submitToStoreRegister(ids, getAccount()));
...@@ -546,7 +550,6 @@ public class ContractSampleController extends ServiceController { ...@@ -546,7 +550,6 @@ public class ContractSampleController extends ServiceController {
return success(contractSampleService.removeByIds(ids)); return success(contractSampleService.removeByIds(ids));
} }
@ApiOperation("验收结果录入提交至验收结果发布") @ApiOperation("验收结果录入提交至验收结果发布")
@PostMapping("/submit_to_acceptance_check_publish") @PostMapping("/submit_to_acceptance_check_publish")
public RestResult<Boolean> submitToAcceptanceCheckPublish(@RequestParam("ids") Long[] ids) { public RestResult<Boolean> submitToAcceptanceCheckPublish(@RequestParam("ids") Long[] ids) {
...@@ -554,6 +557,19 @@ public class ContractSampleController extends ServiceController { ...@@ -554,6 +557,19 @@ public class ContractSampleController extends ServiceController {
} }
@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_check_publish_his")
public RestResult<Page<ContractSampleVO>> getPageAcceptanceCheckPublishHis(ContractSampleVO contractSample) {
contractSample.setStatus(ContractSampleStatusEnum.STORAGE_REGISTER);
return success(contractSampleService.pageVOPublish(getPage(), contractSample));
}
@ApiOperation("验收结果发布历史分页列表") @ApiOperation("验收结果发布历史分页列表")
@ApiImplicitParams({ @ApiImplicitParams({
@ApiImplicitParam(name = RestConstants.PAGE_PAGE, value = "请求数据的页码", required = true, paramType = "query", dataTypeClass = Integer.class), @ApiImplicitParam(name = RestConstants.PAGE_PAGE, value = "请求数据的页码", required = true, paramType = "query", dataTypeClass = Integer.class),
......
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.ContractInfoAnnex;
/**
* <p>
* 食药单机系统-样品附件表 Mapper 接口
* </p>
*
* @author wwd
* @since 2021-02-01
*/
public interface ContractInfoAnnexMapper extends BatchMapper<ContractInfoAnnex> {
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.ContractInfoItem;
/**
* <p>
* Mapper 接口
* </p>
*
* @author wwd
* @since 2021-02-01
*/
public interface ContractInfoItemMapper extends BatchMapper<ContractInfoItem> {
}
...@@ -2,20 +2,15 @@ package com.patzn.cloud.service.lims.hmhj.mapper; ...@@ -2,20 +2,15 @@ package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.commons.mapper.BatchMapper; import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.ContractInfo; import com.patzn.cloud.service.hmhj.entity.ContractInfo;
import com.patzn.cloud.service.hmhj.entity.ContractSample; import com.patzn.cloud.service.hmhj.vo.ContractInfoVO;
import com.patzn.cloud.service.hmhj.vo.ContractSampleVO;
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;
/**
* <p>
* Mapper 接口
* </p>
* @author meazty
* @since 2021-09-16
*/
public interface ContractInfoMapper extends BatchMapper<ContractInfo> { public interface ContractInfoMapper extends BatchMapper<ContractInfo> {
List<ContractInfoVO> selectVOList(RowBounds rowBounds, @Param("vo") ContractInfoVO 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.entity.ContractInfoAnnex;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
/**
* 食药单机系统-样品附件表 服务类
*
* @author wwd
* @since 2021-02-01
*/
public interface IContractInfoAnnexService extends IBaseService<ContractInfoAnnex> {
Page<ContractInfoAnnex> page(Page<ContractInfoAnnex> page, ContractInfoAnnex contractInfoAnnex);
boolean removeByIds(List<Long> ids);
boolean upload(MultipartFile file, Long contractInfoId);
void downloadFile(Long id, HttpServletResponse response);
void view(HttpServletResponse response, String objectKey);
boolean uploadBath(MultipartHttpServletRequest httpServletRequest, Long contractInfoId, Account account);
}
package com.patzn.cloud.service.lims.hmhj.service;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.entity.ContractInfoItem;
import java.util.List;
/**
* 服务类
*
* @author wwd
* @since 2021-02-01
*/
public interface IContractInfoItemService extends IBaseService<ContractInfoItem> {
Page<ContractInfoItem> page(Page<ContractInfoItem> page, ContractInfoItem contractInfoItem);
boolean removeByIds(List<Long> ids);
List<ContractInfoItem> getByContractId(Long contractId);
}
...@@ -3,25 +3,27 @@ package com.patzn.cloud.service.lims.hmhj.service; ...@@ -3,25 +3,27 @@ package com.patzn.cloud.service.lims.hmhj.service;
import com.baomidou.mybatisplus.plugins.Page; import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.controller.Account; import com.patzn.cloud.commons.controller.Account;
import com.patzn.cloud.commons.service.IBaseService; import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.dto.ContractSampleDTO; import com.patzn.cloud.service.hmhj.dto.ContractInfoDTO;
import com.patzn.cloud.service.hmhj.dto.ContractSampleVODTO;
import com.patzn.cloud.service.hmhj.entity.ContractInfo; import com.patzn.cloud.service.hmhj.entity.ContractInfo;
import com.patzn.cloud.service.hmhj.entity.ContractSample; import com.patzn.cloud.service.hmhj.vo.ContractInfoVO;
import com.patzn.cloud.service.hmhj.vo.ContractSampleVO;
import org.springframework.web.multipart.MultipartFile;
import java.util.List; import java.util.List;
/** /**
* @title: 合同信息表 * 服务类
* @author: meazty *
* @ondate: 2021/9/16 20:37 * @author wwd
**/ * @since 2021-02-01
*/
public interface IContractInfoService extends IBaseService<ContractInfo> { public interface IContractInfoService extends IBaseService<ContractInfo> {
Page<ContractInfo> page(Page<ContractInfo> page, ContractInfo contractInfo); Page<ContractInfo> page(Page<ContractInfo> page, ContractInfo contractInfo);
boolean removeByIds(List<Long> ids); boolean removeByIds(List<Long> ids);
boolean saveOrUpdateInfo(ContractInfo contractInfo); boolean addDTO(ContractInfoDTO dto);
boolean updateContractBatch(Long[] ids, ContractInfo contractInfo, Account account);
Page<ContractInfoVO> pageVO(Page<ContractInfoVO> page, ContractInfoVO contractInfo);
} }
...@@ -80,4 +80,6 @@ public interface IContractSampleService extends IBaseService<ContractSample> { ...@@ -80,4 +80,6 @@ public interface IContractSampleService extends IBaseService<ContractSample> {
boolean updateContractBatch(Long[] ids, ContractSample contractSample, Account account); boolean updateContractBatch(Long[] ids, ContractSample contractSample, Account account);
boolean updateSuspendOrContinue(Long[] ids, Integer suspend, Account account); boolean updateSuspendOrContinue(Long[] ids, Integer suspend, Account account);
boolean addByContractInfo(ContractSampleDTO contractSampleDTO);
} }
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.api.RestAssert;
import com.patzn.cloud.commons.controller.Account;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.oss.starter.OssClient;
import com.patzn.cloud.oss.starter.OssFileResult;
import com.patzn.cloud.service.hmhj.entity.ContractInfoAnnex;
import com.patzn.cloud.service.lims.hmhj.mapper.ContractInfoAnnexMapper;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoAnnexService;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.Iterator;
import java.util.List;
/**
* 合同信息附件表 服务实现类
*
* @author meazty
* @since 2021-09-18
*/
@Service
public class ContractInfoAnnexServiceImpl extends BaseServiceImpl<ContractInfoAnnexMapper, ContractInfoAnnex> implements IContractInfoAnnexService {
@Autowired
private OssClient ossClient;
@Autowired
private IContractInfoService contractInfoService;
@Override
public Page<ContractInfoAnnex> page(Page<ContractInfoAnnex> page, ContractInfoAnnex contractInfoAnnex) {
Wrapper wrapper = new EntityWrapper<>(contractInfoAnnex);
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
@Transactional(rollbackFor = Exception.class)
@Override
public boolean upload(MultipartFile file, Long contractInfoId) {
RestAssert.fail(null == contractInfoId, "请选择样品");
String fileName = file.getOriginalFilename();
RestAssert.fail(StringUtils.isBlank(fileName), "请上传文件");
if (null == contractInfoService.getById(contractInfoId)) {
RestAssert.fail("样品不存在");
}
OssFileResult result = ossClient.upload(file);
if (null == result) {
return false;
}
ContractInfoAnnex sampleAnnex = new ContractInfoAnnex();
sampleAnnex.setType(result.getType());
sampleAnnex.setFileName(result.getName());
sampleAnnex.setObjectKey(result.getObjectKey());
sampleAnnex.setContractId(contractInfoId);
return save(sampleAnnex);
}
@Override
public void downloadFile(Long id, HttpServletResponse response) {
ContractInfoAnnex attachment = super.getById(id);
if (null == attachment) {
RestAssert.fail("抱歉!该照片不存在");
}
ossClient.download(attachment.getObjectKey(), attachment.getFileName() + "." + attachment.getType(), response);
}
@Override
public void view(HttpServletResponse response, String objectKey) {
ossClient.download(objectKey, response);
}
@Override
public boolean uploadBath(MultipartHttpServletRequest multipartHttpServletRequest, Long contractInfoId, Account account) {
// 先拿到文件名称的迭代器
Iterator<String> fileNamesIt = multipartHttpServletRequest.getFileNames();
List<String> failedNameList = new ArrayList<>();
while (fileNamesIt.hasNext()) {
String fileName = fileNamesIt.next();
// 获取文件
MultipartFile multipartFile = multipartHttpServletRequest.getFile(fileName);
upload(multipartFile, contractInfoId);
failedNameList.add(fileName);
}
return true;
}
}
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.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.entity.ContractInfoItem;
import com.patzn.cloud.service.lims.hmhj.mapper.ContractInfoItemMapper;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoItemService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 服务实现类
*
* @author wwd
* @since 2021-02-01
*/
@Service
public class ContractInfoItemServiceImpl extends BaseServiceImpl<ContractInfoItemMapper, ContractInfoItem> implements IContractInfoItemService {
@Override
public Page<ContractInfoItem> page(Page<ContractInfoItem> page, ContractInfoItem contractInfoItem) {
String name = contractInfoItem.getName();
contractInfoItem.setName(null);
Wrapper wrapper = new EntityWrapper<>(contractInfoItem);
if (StringUtils.isNotBlank(name)) {
wrapper.like("name", name);
}
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
@Override
public List<ContractInfoItem> getByContractId(Long contractId) {
return list(Condition.create().eq("contract_id", contractId));
}
}
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.api.RestAssert;
import com.patzn.cloud.commons.controller.Account;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl; import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.dto.ContractInfoDTO;
import com.patzn.cloud.service.hmhj.entity.ContractInfo; import com.patzn.cloud.service.hmhj.entity.ContractInfo;
import com.patzn.cloud.service.hmhj.entity.ContractInfoItem;
import com.patzn.cloud.service.hmhj.vo.ContractInfoVO;
import com.patzn.cloud.service.lims.hmhj.mapper.ContractInfoMapper; import com.patzn.cloud.service.lims.hmhj.mapper.ContractInfoMapper;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoItemService;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoService; import com.patzn.cloud.service.lims.hmhj.service.IContractInfoService;
import org.apache.commons.lang3.StringUtils; import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.List; import java.util.List;
...@@ -21,6 +30,11 @@ import java.util.List; ...@@ -21,6 +30,11 @@ import java.util.List;
@Service @Service
public class ContractInfoServiceImpl extends BaseServiceImpl<ContractInfoMapper, ContractInfo> implements IContractInfoService { public class ContractInfoServiceImpl extends BaseServiceImpl<ContractInfoMapper, ContractInfo> implements IContractInfoService {
@Autowired
private IContractInfoService contractInfoService;
@Autowired
private IContractInfoItemService contractInfoItemService;
@Override @Override
public Page<ContractInfo> page(Page<ContractInfo> page, ContractInfo contractInfo) { public Page<ContractInfo> page(Page<ContractInfo> page, ContractInfo contractInfo) {
...@@ -39,14 +53,57 @@ public class ContractInfoServiceImpl extends BaseServiceImpl<ContractInfoMapper, ...@@ -39,14 +53,57 @@ public class ContractInfoServiceImpl extends BaseServiceImpl<ContractInfoMapper,
return this.page(page, wrapper); return this.page(page, wrapper);
} }
@Override @Override
public boolean removeByIds(List<Long> ids) { public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0; return baseMapper.deleteBatchIds(ids) > 0;
} }
private void judgeNotNullField(List<ContractInfo> contractInfos) {
contractInfos.forEach(t -> {
RestAssert.fail(null == t.getType(), String.format("物资编号为【%s】的合同,检测类型不能为空", t.getMaterialCode()));
RestAssert.fail(StringUtils.isBlank(t.getStoragePlace()), String.format("物资编号为【%s】的合同,存放地不能为空", t.getMaterialCode()));
RestAssert.fail(StringUtils.isBlank(t.getStorekeeper()), String.format("物资编号为【%s】的合同,保管员不能为空", t.getMaterialCode()));
});
}
@Override
public boolean addDTO(ContractInfoDTO dto) {
RestAssert.fail(null == dto, "数据有错误");
List<ContractInfoItem> itemList = dto.getItemList();
ContractInfo contractInfo = dto.convert(ContractInfo.class);
RestAssert.fail(null == dto.getContractQuantity(), "合同数量不能为空");
dto.setArrivalQuantity(0);
if (save(contractInfo)) {
if (CollectionUtils.isNotEmpty(itemList)) {
for (ContractInfoItem item : itemList) {
item.setContractId(contractInfo.getId());
}
return contractInfoItemService.saveBatch(itemList);
}
return true;
}
return false;
}
@Override
public boolean updateContractBatch(Long[] ids, ContractInfo contractInfo, Account account) {
RestAssert.fail(null == ids || 0 == ids.length, "选择要修改信息为空");
RestAssert.fail(StringUtils.isBlank(contractInfo.getStoragePlace()), "存放地为空");
RestAssert.fail(StringUtils.isBlank(contractInfo.getDetailPlace()), "货位为空");
RestAssert.fail(StringUtils.isBlank(contractInfo.getStoragePlace()), "保管员为空");
// RestAssert.fail(null == contractInfo.getArrivalTime(),"到货时间为空");
// RestAssert.fail(null == contractInfo.getStoragePlace(),"报建时间为空");
// RestAssert.fail(null == contractInfo.getType(),"检测类型为空");
return baseMapper.update(contractInfo, Condition.create().in("id", ids)) > 0;
}
@Override @Override
public boolean saveOrUpdateInfo(ContractInfo contractInfo) { public Page<ContractInfoVO> pageVO(Page<ContractInfoVO> page, ContractInfoVO contractInfo) {
return saveOrUpdate(contractInfo); return page.setRecords(baseMapper.selectVOList(page, contractInfo));
} }
} }
...@@ -5,17 +5,20 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper; ...@@ -5,17 +5,20 @@ 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.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.toolkit.IdWorker;
import com.patzn.cloud.commons.api.RestAssert; import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.commons.controller.Account; 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.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.dto.ContractSampleDTO; import com.patzn.cloud.service.hmhj.dto.ContractSampleDTO;
import com.patzn.cloud.service.hmhj.dto.ContractSampleVODTO; import com.patzn.cloud.service.hmhj.dto.ContractSampleVODTO;
import com.patzn.cloud.service.hmhj.entity.*; import com.patzn.cloud.service.hmhj.entity.*;
import com.patzn.cloud.service.hmhj.enums.ContractInfoStatusEnum;
import com.patzn.cloud.service.hmhj.enums.ContractSampleStatusEnum; import com.patzn.cloud.service.hmhj.enums.ContractSampleStatusEnum;
import com.patzn.cloud.service.hmhj.enums.EntrustSampleStatusEnum; import com.patzn.cloud.service.hmhj.enums.EntrustSampleStatusEnum;
import com.patzn.cloud.service.hmhj.vo.ContractSampleVO; import com.patzn.cloud.service.hmhj.vo.ContractSampleVO;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO; import com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO;
import com.patzn.cloud.service.lims.common.consts.Symbol; import com.patzn.cloud.service.lims.common.BeanUtils;
import com.patzn.cloud.service.lims.common.service.ILmsMsgService; import com.patzn.cloud.service.lims.common.service.ILmsMsgService;
import com.patzn.cloud.service.lims.hmhj.common.consts.HmConst; import com.patzn.cloud.service.lims.hmhj.common.consts.HmConst;
import com.patzn.cloud.service.lims.hmhj.mapper.ContractSampleMapper; import com.patzn.cloud.service.lims.hmhj.mapper.ContractSampleMapper;
...@@ -34,10 +37,7 @@ import java.io.IOException; ...@@ -34,10 +37,7 @@ import java.io.IOException;
import java.io.InputStream; import java.io.InputStream;
import java.text.ParseException; import java.text.ParseException;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.*;
import java.util.Arrays;
import java.util.Date;
import java.util.List;
import java.util.concurrent.atomic.AtomicReference; import java.util.concurrent.atomic.AtomicReference;
import java.util.stream.Collectors; import java.util.stream.Collectors;
...@@ -52,6 +52,12 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap ...@@ -52,6 +52,12 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap
@Autowired @Autowired
private IContractInfoService contractInfoService;
@Autowired
private IContractInfoItemService contractInfoItemService;
@Autowired
private IContractSampleRecordService contractSampleRecordService; private IContractSampleRecordService contractSampleRecordService;
...@@ -132,8 +138,8 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap ...@@ -132,8 +138,8 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap
ContractSample contractSample = new ContractSample(); ContractSample contractSample = new ContractSample();
contractSample.setStatus(ContractSampleStatusEnum.STORAGE_REGISTER); contractSample.setStatus(ContractSampleStatusEnum.STORAGE_REGISTER);
contractSample.setProgress(ContractSampleStatusEnum.STORAGE_REGISTER); contractSample.setProgress(ContractSampleStatusEnum.STORAGE_REGISTER);
contractSampleRecordService.record(ids, ContractSampleStatusEnum.DRAFT, ContractSampleStatusEnum.STORAGE_REGISTER, 0, "提交至储运入库登记", account); contractSampleRecordService.record(ids, ContractSampleStatusEnum.ACCEPTANCE_CHECK_PUBLISH, ContractSampleStatusEnum.STORAGE_REGISTER, 0, "提交至储运入库登记", account);
// lmsMsgService.sendMsg("/hmhj/accept_manage/accept_register","有合同从提交过来,请及时处理","新的储运部门登记任务!",account,null); // lmsMsgService.sendMsg("/hmhj/accept_manage/accept_register","有合同从验收结果发布提交过来,请及时处理","新的储运部门登记任务!",account,null);
return super.update(contractSample, Condition.create().in("id", ids)); return super.update(contractSample, Condition.create().in("id", ids));
} }
...@@ -596,4 +602,59 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap ...@@ -596,4 +602,59 @@ public class ContractSampleServiceImpl extends BaseServiceImpl<ContractSampleMap
return update(new ContractSample().setSuspend(suspend), Condition.create().in("id", ids)); return update(new ContractSample().setSuspend(suspend), Condition.create().in("id", ids));
} }
@Override
public boolean addByContractInfo(ContractSampleDTO contractSampleDTO) {
if (null == contractSampleDTO.getContractId()) {
throw new PatznException("请选择合同信息");
}
if (StringUtils.isBlank(contractSampleDTO.getArrivalQuantity())) {
throw new PatznException("到货数量不能为空");
}
Integer arrivalQuantity = null;
try {
arrivalQuantity = Integer.parseInt(contractSampleDTO.getArrivalQuantity());
} catch (NumberFormatException e) {
throw new PatznException("到货数量转换异常");
}
ContractInfo contractInfo = contractInfoService.getById(contractSampleDTO.getContractId());
RestAssert.fail(null == contractInfo, "合同信息获取为空");
// 获取验证每次到货累计的数量
int compareResult = contractInfo.getContractQuantity() - contractInfo.getArrivalQuantity() - arrivalQuantity;
if (compareResult < 0) {
throw new PatznException("合同信息中的已到货数量不能大于合同数量");
}
// 更新数量
contractInfo.setArrivalQuantity(contractInfo.getArrivalQuantity() + arrivalQuantity);
if (0 == compareResult) {
contractInfo.setStatus(ContractInfoStatusEnum.HISTORY);
}
contractInfoService.updateById(contractInfo);
List<ContractInfoItem> contractInfoItems = contractInfoItemService.getByContractId(contractInfo.getId());
//
ContractSample contractSample = new ContractSample();
BeanUtils.copyProperties(contractInfo, contractSample);
contractSample.setId(IdWorker.getId());
save(contractSample);
List<ContractSampleItem> itemList = Optional.ofNullable(contractInfoItems).orElse(new ArrayList<>()).stream().map(t -> {
ContractSampleItem item = new ContractSampleItem();
BeanUtils.copyProperties(t, item);
item.setId(null);
item.setContractSampleId(contractSample.getId());
return item;
}).collect(Collectors.toList());
if (CollectionUtils.isNotEmpty(itemList)) {
contractSampleItemService.saveBatch(itemList);
}
return true;
}
} }
...@@ -137,6 +137,8 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust> ...@@ -137,6 +137,8 @@ public class EntrustServiceImpl extends BaseServiceImpl<EntrustMapper, Entrust>
if (StringUtils.isNotEmpty(entrustCode)) { if (StringUtils.isNotEmpty(entrustCode)) {
entrust.setCode(entrustCode); entrust.setCode(entrustCode);
} }
// 根据当前用户,设置委托期数
entrust.setPeriod(userInfoService.getUserPeriod(LoginHelper.getAccount()));
return save(entrust); return save(entrust);
} }
......
...@@ -2,4 +2,73 @@ ...@@ -2,4 +2,73 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!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 namespace="com.patzn.cloud.service.lims.hmhj.mapper.ContractInfoMapper">
<sql id="sqlWhere">
<if test="null!=vo.neType">
AND s.type != #{vo.neType}
</if>
<if test="null!=vo.type">
AND s.type = #{vo.type}
</if>
<if test="null!=vo.status">
AND s.status = #{vo.status}
</if>
<if test="null!=vo.code">
AND s.code LIKE CONCAT('%',#{vo.code},'%')
</if>
<if test="null!=vo.orderNo">
AND s.order_no LIKE CONCAT('%',#{vo.orderNo},'%')
</if>
<if test="null!=vo.materialName">
AND s.material_name LIKE CONCAT('%',#{vo.materialName},'%')
</if>
<if test="null!=vo.materialCode">
AND s.material_code LIKE CONCAT('%',#{vo.materialCode},'%')
</if>
<if test="null!=vo.currUserId">
AND exists (select 1 from v_sys_user_role r where r.user_id = #{vo.currUserId} and r.role_name in ('验收主管','验收管理员'))
</if>
<if test="null!=vo.userOrgName">
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=")">
#{status}
</foreach>
</if>
<if test="null!=vo.idList">
AND s.id IN
<foreach collection="vo.idList" index="index" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</if>
<if test="null != vo.noShowInfo">
AND NOT EXISTS (
select 1 from entrust_info ss where ss.deleted = 0 and ss.contract_info_id = s.id
)
</if>
</sql>
<select id="selectVOList" resultType="com.patzn.cloud.service.hmhj.vo.ContractInfoVO">
SELECT s.* FROM contract_info s WHERE s.deleted = 0
<include refid="sqlWhere"/>
order by s.ctime desc
</select>
</mapper> </mapper>
...@@ -37,8 +37,8 @@ ...@@ -37,8 +37,8 @@
and s.biz_id = e.material_id and s.biz_id = e.material_id
and s.biz_type = 'REPORT_RECIPIENT' and s.biz_type = 'REPORT_RECIPIENT'
and s.staff_id = #{vo.uid} and s.staff_id = #{vo.uid}
<if test="null!=vo.period"> <if test="null != vo.period">
AND s.type = #{vo.period} AND (e.period is null or (e.period is not null and e.period = #{vo.period}))
</if> </if>
) )
) )
......
This source diff could not be displayed because it is too large. You can view the blob instead.
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