Commit a7d78e6d by lidingxin

Merge branch 'master' of git.patzn.com:wangweidong/patzn-cloud-service-hmhj

parents 8b8ea614 1fb62a29
......@@ -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
package com.patzn.cloud.service.lims.common;
import com.patzn.cloud.commons.constant.CommonConstants;
import java.time.LocalDate;
import java.time.Period;
import java.time.ZoneId;
......@@ -72,4 +74,23 @@ public class DateKit {
}
return monthList;
}
public static List<String> dateBetweenTwoDates(LocalDate start, LocalDate end) {
if (null == start || null == end) {
return null;
}
String pattern = CommonConstants.YEAR_MONTH_DAY;
List<String> dateList = new ArrayList<>();
LocalDate localDate = start;
while (localDate.isBefore(end)) {
dateList.add(localDate.format(DateTimeFormatter.ofPattern(pattern)));
localDate = localDate.plusDays(1);
}
return dateList;
}
public static List<String> dateInMonth(String yearMonth) {
LocalDate start = LocalDate.parse(yearMonth + "-01", DateTimeFormatter.ofPattern(CommonConstants.YEAR_MONTH_DAY));
return dateBetweenTwoDates(start, start.plusMonths(1));
}
}
package com.patzn.cloud.service.lims.common.consts;
/**
* @title: 标点符号
* @author: meazty
* @ondate: 2021/8/9 11:43
**/
public class Symbol {
public static final String POINT = ".";
public static final String COMMA = ",";
public static final String COLON = ":";
public static final String PAUSE = "...";
public static final String PERIOD = "。";
public static final String HALT = "、";
public static final String COMMA_CN = ",";
public static final String SLASH = "/";
public static final String BACKSLASH = "\\";
public static final String FORWARD = "->";
}
......@@ -43,6 +43,7 @@ public class ExcelController extends ServiceController {
ExcelController.TPL.put("MeterSendSampleImport", "出检样品导入模板");
ExcelController.TPL.put("SoilEntrustImport", "试验委托单导入模板");
ExcelController.TPL.put("SoilAptExpImport", "试样项目导入模板");
ExcelController.TPL.put("ContractImport", "合同导入模板");
ExcelController.TPL.put("ContractSampleImport", "报验单导入模板");
......
......@@ -2,6 +2,7 @@ package com.patzn.cloud.service.lims.hmhj.common;
import com.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.patzn.cloud.service.hmhj.enums.*;
import com.patzn.cloud.service.lims.common.consts.Symbol;
import org.apache.commons.lang3.StringUtils;
import java.util.Arrays;
......@@ -11,7 +12,7 @@ import java.util.List;
* 委托流程控制(状态控制)
*/
public class EntrustFlowUtils {
public static final String SEQ = "->";
public static final String SEQ = Symbol.FORWARD;
public static List<String> getFlowStatusList(String statusPath) {
if (StringUtils.isBlank(statusPath)) {
......@@ -95,10 +96,8 @@ public class EntrustFlowUtils {
case 10:
case 11:
case 12:
statusEnum = EntrustStatusEnum.TEST;
break;
case 13:
statusEnum = EntrustStatusEnum.OUT_INPUT;
statusEnum = EntrustStatusEnum.TEST;
break;
case 14:
case 15:
......@@ -151,6 +150,9 @@ public class EntrustFlowUtils {
case 12:
sampleStatusEnum = EntrustSampleStatusEnum.REPORT_SEND;
break;
case 13:
sampleStatusEnum = EntrustSampleStatusEnum.QUALITY_INSPECT;
break;
case 14:
case 15:
sampleStatusEnum = EntrustSampleStatusEnum.END;
......@@ -191,6 +193,8 @@ public class EntrustFlowUtils {
return EntrustReportStatusEnum.ISSUE;
} else if (flowEnum == EntrustFlowEnum.REPORT_SEND) {
return EntrustReportStatusEnum.SEND;
} else if (flowEnum == EntrustFlowEnum.QUALITY_INSPECT) {
return EntrustReportStatusEnum.INSPECT;
} else if (flowEnum == EntrustFlowEnum.QUALITY_JUDGE) {
return EntrustReportStatusEnum.END;
} else if (flowEnum == EntrustFlowEnum.ARCHIVES) {
......
package com.patzn.cloud.service.lims.hmhj.common.consts;
/**
* @title: 霍煤常量
* @author: meazty
* @ondate: 2021/8/9 11:49
**/
public class HmConst {
public static final int MINUS_ONE = -1;
public static final int ZERO = 0;
public static final int ONE = 1;
public static final int TWO = 2;
public static final String Y = "是";
public static final String N = "否";
public static final String PRIMARY_ALUMINUM = "原铝";
public static final String ELECTROLYTE = "电解质";
public static final String EXTERNAL_INSPECTION_MATERIALS = "外委检测物资";
public static final String THIRD_CODE_MATERIALS = "三级编码物资";
public static final String EXIST_CODE_MATERIALS = "已有编码物资";
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.AcceptanceExpert;
import com.patzn.cloud.service.lims.hmhj.service.IAcceptanceExpertService;
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 meazty
* @since 2021-09-22
*/
@Api(tags = "验收专家配置表")
@RestController
@RequestMapping("/v1/expert")
public class AcceptanceExpertController extends ServiceController {
@Autowired
private IAcceptanceExpertService acceptanceExpertService;
@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),
})
@PostMapping("/page")
public RestResult<Page<AcceptanceExpert>> getPage(AcceptanceExpert acceptanceExpert) {
return success(acceptanceExpertService.page(getPage(), acceptanceExpert));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<AcceptanceExpert> get(@PathVariable("id") Long id) {
return success(acceptanceExpertService.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, AcceptanceExpert acceptanceExpert) {
acceptanceExpert.setId(id);
return success(acceptanceExpertService.updateById(acceptanceExpert));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(AcceptanceExpert acceptanceExpert) {
return success(acceptanceExpertService.save(acceptanceExpert));
}
@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(acceptanceExpertService.removeByIds(ids));
}
}
package com.patzn.cloud.service.lims.hmhj.controller;
import com.patzn.cloud.service.hmhj.enums.BusinessDataEnum;
import com.patzn.cloud.service.hmhj.enums.BusinessStaffEnum;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
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.BusinessData;
import com.patzn.cloud.service.lims.hmhj.service.IBusinessDataService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
* 业务数据表 前端控制器
*
* @author meazty
* @since 2021-08-07
*/
@Api(tags = "业务数据表")
@RestController
@RequestMapping("/v1/data")
public class BusinessDataController extends ServiceController {
@Autowired
private IBusinessDataService businessDataService;
@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),
})
@PostMapping("/page")
public RestResult<Page<BusinessData>> getPage(BusinessData businessData) {
return success(businessDataService.page(getPage(), businessData));
}
@PostMapping("/list_sample_from")
public RestResult<List<BusinessData>> getListSampleFrom(BusinessData businessData) {
businessData.setBizType(BusinessDataEnum.SAMPLE_SOURCE.getName());
return success(businessDataService.list(businessData));
}
@PostMapping("/list_product_standard")
public RestResult<List<BusinessData>> getListProductStandard(BusinessData businessData) {
businessData.setBizType(BusinessDataEnum.PRODUCT_STANDARD.getName());
return success(businessDataService.list(businessData));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<BusinessData> get(@PathVariable("id") Long id) {
return success(businessDataService.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, BusinessData businessData) {
businessData.setId(id);
return success(businessDataService.updateById(businessData));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(BusinessData businessData) {
return success(businessDataService.save(businessData));
}
@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(businessDataService.removeByIds(ids));
}
@ApiOperation("批量添加或修改样品来源")
@PostMapping("/save_or_update_batch_sample_from")
public RestResult<Boolean> saveOrUpdateBatchSampleFrom(@RequestBody String dataJson) {
return success(businessDataService.saveOrUpdateBatch(BusinessDataEnum.SAMPLE_SOURCE, dataJson));
}
@ApiOperation("批量添加或修改产品标准")
@PostMapping("/save_or_update_batch_project_standard")
public RestResult<Boolean> saveOrUpdateBatchProjectStandard(@RequestBody String dataJson) {
return success(businessDataService.saveOrUpdateBatch(BusinessDataEnum.PRODUCT_STANDARD, dataJson));
}
}
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.BusinessStaff;
import com.patzn.cloud.service.hmhj.enums.BusinessStaffEnum;
import com.patzn.cloud.service.lims.hmhj.service.IBusinessStaffService;
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 meazty
* @since 2021-08-07
*/
@Api(tags = "业务人员表")
@RestController
@RequestMapping("/v1/staff")
public class BusinessStaffController extends ServiceController {
@Autowired
private IBusinessStaffService businessStaffService;
@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),
})
@PostMapping("/page")
public RestResult<Page<BusinessStaff>> getPage(BusinessStaff businessStaff) {
return success(businessStaffService.page(getPage(), businessStaff));
}
@ApiOperation("委托人员列表")
@PostMapping("/list_assignor")
public RestResult<List<BusinessStaff>> getListSampleFrom(BusinessStaff businessStaff) {
businessStaff.setBizType(BusinessStaffEnum.ASSIGNOR.getName());
return success(businessStaffService.listData(businessStaff));
}
@ApiOperation("报告接收人员列表")
@PostMapping("/list_report_recipient")
public RestResult<List<BusinessStaff>> getListProductStandard(BusinessStaff businessStaff) {
businessStaff.setBizType(BusinessStaffEnum.REPORT_RECIPIENT.getName());
return success(businessStaffService.listData(businessStaff));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<BusinessStaff> get(@PathVariable("id") Long id) {
return success(businessStaffService.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, BusinessStaff businessStaff) {
businessStaff.setId(id);
return success(businessStaffService.updateById(businessStaff));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(BusinessStaff businessStaff) {
return success(businessStaffService.save(businessStaff));
}
@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(businessStaffService.removeByIds(ids));
}
@ApiOperation("批量添加委托人员")
@PostMapping("/save_batch_assignor")
public RestResult<Boolean> saveBatchAssignor(@RequestBody String staffJson) {
return success(businessStaffService.saveBatchStaff(BusinessStaffEnum.ASSIGNOR, staffJson));
}
@ApiOperation("批量添加报告接收人员")
@PostMapping("/save_batch_report_recipient")
public RestResult<Boolean> saveBatchRecipient(@RequestBody String staffJson) {
return success(businessStaffService.saveBatchStaff(BusinessStaffEnum.REPORT_RECIPIENT, staffJson));
}
}
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.CargoSpace;
import com.patzn.cloud.service.lims.hmhj.service.ICargoSpaceService;
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 meazty
* @since 2021-08-20
*/
@Api(tags = "货位管理")
@RestController
@RequestMapping("/v1/cargo_space")
public class CargoSpaceController extends ServiceController {
@Autowired
private ICargoSpaceService cargoSpaceService;
@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),
})
@PostMapping("/page")
public RestResult<Page<CargoSpace>> getPage(CargoSpace cargoSpace) {
return success(cargoSpaceService.page(getPage(), cargoSpace));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<CargoSpace> get(@PathVariable("id") Long id) {
return success(cargoSpaceService.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, CargoSpace cargoSpace) {
cargoSpace.setId(id);
return success(cargoSpaceService.updateById(cargoSpace));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(CargoSpace cargoSpace) {
return success(cargoSpaceService.save(cargoSpace));
}
@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(cargoSpaceService.removeByIds(ids));
}
}
package com.patzn.cloud.service.lims.hmhj.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
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.ClientInfo;
import com.patzn.cloud.service.lims.hmhj.service.IClientInfoService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import java.util.List;
import java.util.Map;
/**
* 委托单位配置信息 前端控制器
*
* @author meazty
* @since 2021-08-07
*/
@Api(tags = "委托单位配置信息")
@RestController
@RequestMapping("/v1/client_info")
public class ClientInfoController extends ServiceController {
@Autowired
private IClientInfoService clientInfoService;
@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),
})
@PostMapping("/page")
public RestResult<Page<ClientInfo>> getPage(ClientInfo clientInfo) {
return success(clientInfoService.page(getPage(), clientInfo));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<ClientInfo> get(@PathVariable("id") Long id) {
return success(clientInfoService.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, ClientInfo clientInfo) {
clientInfo.setId(id);
return success(clientInfoService.updateById(clientInfo));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(ClientInfo clientInfo) {
return success(clientInfoService.save(clientInfo));
}
@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(clientInfoService.removeByIds(ids));
}
@ApiOperation("获取委托单位列表")
@PostMapping("/info")
public RestResult<ClientInfo> getInfo() {
return success(clientInfoService.getClientInfo(getAccount()));
}
@ApiOperation("获取委托单位及相关信息")
@PostMapping("/client_about")
public RestResult<Map> getClientAbout() {
return success(clientInfoService.getClientAbout(getAccount()));
}
@ApiOperation("批量添加委托单位")
@PostMapping("/save_batch")
public RestResult<Boolean> saveBatch(@RequestBody String clientJson) {
return success(clientInfoService.saveBatchClient(clientJson, getAccount()));
}
}
package com.patzn.cloud.service.lims.hmhj.controller;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
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.ClientTestSide;
import com.patzn.cloud.service.lims.hmhj.service.IClientTestSideService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import java.util.List;
/**
* 委托单位下检测单位信息 前端控制器
*
* @author meazty
* @since 2021-08-07
*/
@Api(tags = "委托单位下检测单位信息")
@RestController
@RequestMapping("/v1/test_side")
public class ClientTestSideController extends ServiceController {
@Autowired
private IClientTestSideService clientTestSideService;
@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),
})
@PostMapping("/page")
public RestResult<Page<ClientTestSide>> getPage(ClientTestSide clientTestSide) {
return success(clientTestSideService.page(getPage(), clientTestSide));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<ClientTestSide> get(@PathVariable("id") Long id) {
return success(clientTestSideService.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, ClientTestSide clientTestSide) {
clientTestSide.setId(id);
return success(clientTestSideService.updateById(clientTestSide));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(ClientTestSide clientTestSide) {
return success(clientTestSideService.save(clientTestSide));
}
@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(clientTestSideService.removeByIds(ids));
}
@ApiOperation("批量添加检测单位")
@PostMapping("/save_or_update_batch")
public RestResult<Boolean> saveOrUpdateBatch(@RequestBody String testSideJson) {
return success(clientTestSideService.saveOrUpdateBatch(testSideJson, getAccount()));
}
}
......@@ -2,22 +2,20 @@ package com.patzn.cloud.service.lims.hmhj.controller;
import com.baomidou.kisso.annotation.Action;
import com.baomidou.kisso.annotation.Login;
import com.patzn.cloud.service.hmhj.entity.CodeRule;
import com.patzn.cloud.service.lims.base.dto.CodeTypeDTO;
import com.patzn.cloud.service.lims.base.enums.CodeTypeEnum;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
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.CodeRule;
import com.patzn.cloud.service.lims.base.dto.CodeTypeDTO;
import com.patzn.cloud.service.lims.base.enums.CodeTypeEnum;
import com.patzn.cloud.service.lims.hmhj.service.ICodeRuleService;
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;
......@@ -44,6 +42,7 @@ public class CodeRuleController extends ServiceController {
})
@PostMapping("/page")
public RestResult<Page<CodeRule>> getPage(CodeRule codeRule) {
codeRule.setRecessive(0);
return success(codeRuleService.page(getPage(), codeRule));
}
......
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);
}
}
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.dto.ContractInfoDTO;
import com.patzn.cloud.service.hmhj.entity.ContractInfo;
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.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.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
* 合同物资 前端控制器
*
* @author wwd
* @since 2021-02-01
*/
@Api(tags = "合同物资")
@RestController
@RequestMapping("/v1/contract_info")
public class ContractInfoController extends ServiceController {
@Autowired
private IContractInfoService contractInfoService;
@Autowired
private UserInfoServiceImpl 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<ContractInfoVO>> getPage(ContractInfoVO contractInfo) {
contractInfo.setStatus(ContractInfoStatusEnum.DRAFT);
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_reg")
public RestResult<Page<ContractInfoVO>> getRegPage(ContractInfoVO contractInfo) {
contractInfo.setStatus(ContractInfoStatusEnum.DRAFT);
contractInfo.setPeriod(userInfoService.getUserPeriod(getAccount()));
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_reg_his")
public RestResult<Page<ContractInfoVO>> getRegPageHis(ContractInfoVO contractInfo) {
contractInfo.setStatus(ContractInfoStatusEnum.HISTORY);
return success(contractInfoService.pageVO(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("/")
public RestResult<Boolean> add(ContractInfo contractInfo) {
return success(contractInfoService.save(contractInfo));
}
@ApiOperation("添加")
@PostMapping("/add_contract")
public RestResult<Boolean> addDTO(@RequestBody ContractInfoDTO dto) {
return success(contractInfoService.addDTO(dto));
}
@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));
}
@ApiOperation("批量导入合同单")
@PostMapping("/batch_import")
public RestResult<Boolean> batchImport(@RequestPart MultipartFile file) {
return success(contractInfoService.batchImport(file, getAccount()));
}
@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;
import com.patzn.cloud.service.hmhj.dto.ContractOkOrganizerDTO;
import com.patzn.cloud.service.hmhj.entity.ContractOkOrganizer;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
......@@ -74,6 +75,12 @@ public class ContractOkOrganizerController extends ServiceController {
return success(contractOkOrganizerService.saveBatch(itemJson));
}
@ApiOperation("批量维护验收专家")
@PostMapping("/add_organizer_batch")
public RestResult<Boolean> addOrganizerBatch(@RequestBody String organizerJson) {
return success(contractOkOrganizerService.saveOrganizerBatch(organizerJson));
}
@ApiOperation("根据 ids 删除")
@ApiImplicitParams({
@ApiImplicitParam(name = "ids", value = "主键列表", required = true, paramType = "query", allowMultiple = true, dataTypeClass = Long.class),
......
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.ContractSampling;
import com.patzn.cloud.service.lims.hmhj.service.IContractSamplingService;
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;
/**
* 合同样品控制器
*/
@Api(tags = "合同样品")
@RestController
@RequestMapping("/v1/contract_sampling")
public class ContractSamplingController extends ServiceController {
@Autowired
private IContractSamplingService contractSamplingService;
@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<ContractSampling>> getPage(ContractSampling contractSampling) {
return success(contractSamplingService.page(getPage(), contractSampling));
}
@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_sample")
public RestResult<Page<ContractSampling>> getPageMake(ContractSampling contractSampling) {
if (null == contractSampling.getContractSampleId()) {
return success(null);
}
return success(contractSamplingService.page(getPage(), contractSampling));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<ContractSampling> get(@PathVariable("id") Long id) {
return success(contractSamplingService.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, ContractSampling contractSampling) {
contractSampling.setId(id);
return success(contractSamplingService.updateSampling(contractSampling));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(ContractSampling contractSampling) {
return success(contractSamplingService.save(contractSampling));
}
@ApiOperation("批量添加或修改")
@PostMapping("/add_batch")
public RestResult<Boolean> add(@RequestBody List<ContractSampling> sampleList) {
return success(contractSamplingService.saveOrUpdateInfoBatch(sampleList));
}
@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(contractSamplingService.removeByIds(ids));
}
}
package com.patzn.cloud.service.lims.hmhj.controller;
import com.baomidou.kisso.annotation.Action;
import com.baomidou.kisso.annotation.Login;
import com.patzn.cloud.service.hmhj.entity.EntrustRecord;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
......@@ -21,7 +23,9 @@ import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 委托操作日志表 前端控制器
......@@ -80,4 +84,12 @@ public class EntrustRecordController extends ServiceController {
public RestResult<Boolean> delete(@RequestParam("ids") List<Long> ids) {
return success(entrustRecordService.removeByIds(ids));
}
@ApiOperation("统计各月报告总量相关统计")
@PostMapping("/month_statistic")
@Login(action = Action.Skip)
public RestResult<Map<String, String>> monthStatistic(@RequestParam("start") Date start,
@RequestParam("end") Date end) {
return success(entrustRecordService.monthStatistic(start,end));
}
}
package com.patzn.cloud.service.lims.hmhj.controller;
import com.patzn.cloud.service.hmhj.entity.EntrustReport;
import com.patzn.cloud.service.hmhj.enums.EntrustReportStatusEnum;
import com.patzn.cloud.service.hmhj.vo.EntrustReportVO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
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.EntrustReport;
import com.patzn.cloud.service.hmhj.enums.EntrustReportStatusEnum;
import com.patzn.cloud.service.hmhj.vo.EntrustReportVO;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustReportService;
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 javax.servlet.http.HttpServletResponse;
import java.util.ArrayList;
import java.util.List;
......@@ -161,6 +153,32 @@ public class EntrustReportController extends ServiceController {
@PostMapping("/page_report_send_his")
public RestResult<Page<EntrustReport>> getPageSendHis(EntrustReport entrustReport) {
List<EntrustReportStatusEnum> reportStatusList = new ArrayList<>();
reportStatusList.add(EntrustReportStatusEnum.INSPECT);
reportStatusList.add(EntrustReportStatusEnum.REPORT_PRINT);
reportStatusList.add(EntrustReportStatusEnum.END);
return success(entrustReportService.pageStatus(getPage(), reportStatusList, entrustReport));
}
@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),
})
@PostMapping("/page_quality_inspect")
public RestResult<Page<EntrustReport>> getPageQualityInspection(EntrustReport entrustReport) {
entrustReport.setStatus(EntrustReportStatusEnum.INSPECT);
return success(entrustReportService.page(getPage(), entrustReport));
}
@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),
})
@PostMapping("/page_quality_inspect_his")
public RestResult<Page<EntrustReport>> getPageQualityInspectHis(EntrustReport entrustReport) {
List<EntrustReportStatusEnum> reportStatusList = new ArrayList<>();
reportStatusList.add(EntrustReportStatusEnum.REPORT_PRINT);
reportStatusList.add(EntrustReportStatusEnum.END);
return success(entrustReportService.pageStatus(getPage(), reportStatusList, entrustReport));
......@@ -279,10 +297,16 @@ public class EntrustReportController extends ServiceController {
}
@ApiOperation("报告发放提交至质量判定")
@PostMapping("/submit_from_send_to_judge")
public RestResult<Boolean> submitFromSendToJudge(@RequestParam("ids") Long[] ids) {
return success(entrustReportService.submitFromSendToJudge(ids, getAccount()));
@ApiOperation("报告发放提交至质检审核")
@PostMapping("/submit_from_send_to_inspect")
public RestResult<Boolean> submitFromSendToInspect(@RequestParam("ids") Long[] ids) {
return success(entrustReportService.submitFromSendToInspect(ids, getAccount()));
}
@ApiOperation("质检审核提交至质量判定")
@PostMapping("/submit_from_inspect_to_judge")
public RestResult<Boolean> submitFromInspectToJudge(@RequestParam("ids") Long[] ids) {
return success(entrustReportService.submitFromInspectToJudge(ids, getAccount()));
}
......@@ -313,6 +337,12 @@ public class EntrustReportController extends ServiceController {
return success(entrustReportService.backFromReportSendToAllow(ids, reason, getAccount()));
}
@ApiOperation("质检审核退回至报告发放")
@PostMapping("/back_from_inspect_to_send")
public RestResult<Boolean> backFromInspectToSend(@RequestParam("ids") Long[] ids, @RequestParam("reason") String reason) {
return success(entrustReportService.backFromInspectToSend(ids, reason, getAccount()));
}
@ApiOperation("报告批准退回至报告审核")
@PostMapping("/back_from_report_allow_to_check")
public RestResult<Boolean> backFromReportAllowToCheck(@RequestParam("ids") Long[] ids, @RequestParam("reason") String reason) {
......@@ -326,4 +356,16 @@ public class EntrustReportController extends ServiceController {
return success(entrustReportService.backFromReportIssueToAllow(ids, reason, getAccount()));
}
@ApiOperation("委托下报告")
@PostMapping("/report_under_entrust")
public RestResult<List<EntrustReport>> getReportUnderEntrust(@RequestParam("entrustId") Long entrustId) {
return success(entrustReportService.getReportUnderEntrust(entrustId));
}
@ApiOperation("下载excel")
@GetMapping("/download")
public void downloadExcel(@RequestParam("id") Long id, HttpServletResponse response) {
entrustReportService.downloadExcel(id, response);
}
}
......@@ -2,14 +2,7 @@ package com.patzn.cloud.service.lims.hmhj.controller;
import com.patzn.cloud.service.hmhj.entity.EntrustReportTemplateConfig;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.api.RestConstants;
......@@ -22,6 +15,7 @@ import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import java.util.Date;
import java.util.List;
/**
......@@ -67,6 +61,12 @@ public class EntrustReportTemplateConfigController extends ServiceController {
return success(entrustReportTemplateConfigService.updateById(entrustReportTemplateConfig));
}
@ApiOperation("根据 id 修改信息")
@PostMapping("/update")
public RestResult<Boolean> update(@RequestBody EntrustReportTemplateConfig entrustReportTemplateConfig) {
return success(entrustReportTemplateConfigService.updateConfigById(entrustReportTemplateConfig,getAccount()));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(EntrustReportTemplateConfig entrustReportTemplateConfig) {
......
......@@ -2,14 +2,7 @@ package com.patzn.cloud.service.lims.hmhj.controller;
import com.patzn.cloud.service.hmhj.entity.EntrustReportTemplate;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.api.RestConstants;
......@@ -45,9 +38,9 @@ public class EntrustReportTemplateController extends ServiceController {
@ApiImplicitParam(name = RestConstants.PAGE_ROWS, value = "每页条数", required = true, paramType = "query", dataTypeClass = Integer.class),
})
@PostMapping("/page")
public RestResult<Page<EntrustReportTemplate>> getPage(EntrustReportTemplate entrustReportTemplate) {
public RestResult<Page<EntrustReportTemplate>> getPage(EntrustReportTemplate entrustReportTemplate) {
return success(entrustReportTemplateService.page(getPage(), entrustReportTemplate));
}
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
......@@ -63,30 +56,36 @@ public class EntrustReportTemplateController extends ServiceController {
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@PutMapping("/{id}")
public RestResult<Boolean> edit(@PathVariable("id") Long id, EntrustReportTemplate entrustReportTemplate) {
public RestResult<Boolean> edit(@PathVariable("id") Long id, EntrustReportTemplate entrustReportTemplate) {
entrustReportTemplate.setId(id);
return success(entrustReportTemplateService.updateById(entrustReportTemplate));
}
}
@ApiOperation("根据 id 修改信息")
@PostMapping("/update")
public RestResult<Boolean> update(@RequestBody EntrustReportTemplate entrustReportTemplate) {
return success(entrustReportTemplateService.updateTemplateById(entrustReportTemplate, getAccount()));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(EntrustReportTemplate entrustReportTemplate) {
public RestResult<Boolean> add(EntrustReportTemplate entrustReportTemplate) {
return success(entrustReportTemplateService.save(entrustReportTemplate));
}
}
@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) {
@DeleteMapping("/")
public RestResult<Boolean> delete(@RequestParam("ids") List<Long> ids) {
return success(entrustReportTemplateService.removeByIds(ids));
}
}
@ApiOperation(value = "附件上传", notes = "附件上传")
@PostMapping("/upload_template/")
public RestResult<Boolean> uploadTemplate(@RequestParam("name") String name,@RequestParam("classType") String classType,@RequestParam("remark") String remark, MultipartFile file) {
return success(entrustReportTemplateService.uploadTemplate(file,name,classType,remark));
public RestResult<Boolean> uploadTemplate(@RequestParam("name") String name, @RequestParam("classType") String classType, @RequestParam("remark") String remark, MultipartFile file) {
return success(entrustReportTemplateService.uploadTemplate(file, name, classType, remark));
}
}
package com.patzn.cloud.service.lims.hmhj.controller;
import com.patzn.cloud.service.hmhj.entity.EntrustSampleBackup;
import com.patzn.cloud.service.hmhj.enums.EntrustSampleBackupStatusEnum;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleBackupVO;
import com.patzn.cloud.service.lims.hmhj.service.impl.UserInfoServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
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.EntrustSampleBackup;
import com.patzn.cloud.service.hmhj.enums.EntrustSampleBackupStatusEnum;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleBackupVO;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustSampleBackupService;
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.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
......@@ -59,6 +50,21 @@ public class EntrustSampleBackupController extends ServiceController {
return success(entrustSampleBackupService.pageVO(getPage(), entrustSampleBackup));
}
@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_sampling")
public RestResult<Page<EntrustSampleBackupVO>> getPageSampling(EntrustSampleBackupVO entrustSampleBackup) {
entrustSampleBackup.setStatus(EntrustSampleBackupStatusEnum.BACKUP_ING);
entrustSampleBackup.setType("BY");
// entrustSampleBackup.setGroupNameList(userInfoService.getCurGroupNameList());
return success(entrustSampleBackupService.pageCO(getPage(), entrustSampleBackup));
}
@ApiOperation("样品备样历史分页列表")
@ApiImplicitParams({
......@@ -138,6 +144,36 @@ public class EntrustSampleBackupController extends ServiceController {
return success(entrustSampleBackupService.pageVO(getPage(), entrustSampleBackup));
}
// --
@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_handle_list")
public RestResult<Page<EntrustSampleBackupVO>> getPageListHandle(EntrustSampleBackupVO entrustSampleBackup) {
entrustSampleBackup.setStatus(EntrustSampleBackupStatusEnum.HANDLE);
// entrustSampleBackup.setGroupNameList(userInfoService.getCurGroupNameList());
return success(entrustSampleBackupService.pageCO(getPage(), entrustSampleBackup));
}
@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_handle_list_his")
public RestResult<Page<EntrustSampleBackupVO>> getPageHandleListHis(EntrustSampleBackupVO entrustSampleBackup) {
entrustSampleBackup.setStatus(EntrustSampleBackupStatusEnum.HANDLE_OK);
// entrustSampleBackup.setGroupNameList(userInfoService.getCurGroupNameList());
return success(entrustSampleBackupService.pageCO(getPage(), entrustSampleBackup));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
......
......@@ -2,30 +2,32 @@ package com.patzn.cloud.service.lims.hmhj.controller;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.google.common.collect.Lists;
import com.patzn.cloud.service.hmhj.dto.*;
import com.patzn.cloud.service.hmhj.entity.EntrustSample;
import com.patzn.cloud.service.hmhj.enums.*;
import com.patzn.cloud.service.hmhj.vo.AlTasteStatsVO;
import com.patzn.cloud.service.hmhj.vo.ElectrolyteRatioStatsVO;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleVO;
import com.patzn.cloud.service.hmhj.vo.PMakeFeStatsVO;
import org.apache.commons.lang3.ArrayUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import com.baomidou.mybatisplus.plugins.Page;
import com.google.common.collect.Lists;
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.dto.EntrustSampleADDDTO;
import com.patzn.cloud.service.hmhj.dto.QueryDTO;
import com.patzn.cloud.service.hmhj.dto.ReportDTO;
import com.patzn.cloud.service.hmhj.dto.StatsQueryDTO;
import com.patzn.cloud.service.hmhj.entity.EntrustSample;
import com.patzn.cloud.service.hmhj.enums.EntrustSampleItemStatusEnum;
import com.patzn.cloud.service.hmhj.enums.EntrustSamplePrepareStatusEnum;
import com.patzn.cloud.service.hmhj.enums.EntrustSampleStatusEnum;
import com.patzn.cloud.service.hmhj.vo.AlGradeStatsVO;
import com.patzn.cloud.service.hmhj.vo.ElectrolyteRatioStatsVO;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleIndexVO;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleVO;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustSampleService;
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.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
......@@ -43,6 +45,9 @@ public class EntrustSampleController extends ServiceController {
@Autowired
private IEntrustSampleService entrustSampleService;
@Autowired
private UserInfoServiceImpl userInfoService;
@ApiOperation("分页列表")
@ApiImplicitParams({
@ApiImplicitParam(name = RestConstants.PAGE_PAGE, value = "请求数据的页码", required = true, paramType = "query", dataTypeClass = Integer.class),
......@@ -142,6 +147,7 @@ public class EntrustSampleController extends ServiceController {
@PostMapping("/page_report_issue")
public RestResult<Page<EntrustSample>> getPageReportIssue(EntrustSample entrustSample) {
entrustSample.setStatus(EntrustSampleStatusEnum.REPORT_ISSUE);
entrustSample.setType(0);
return success(entrustSampleService.page(getPage(), entrustSample));
}
......@@ -155,6 +161,7 @@ public class EntrustSampleController extends ServiceController {
@PostMapping("/page_report_allow")
public RestResult<Page<EntrustSample>> getPageReportAllow(EntrustSample entrustSample) {
entrustSample.setStatus(EntrustSampleStatusEnum.REPORT_ALLOW);
entrustSample.setType(0);
return success(entrustSampleService.page(getPage(), entrustSample));
}
......@@ -168,6 +175,21 @@ public class EntrustSampleController extends ServiceController {
@PostMapping("/page_report_send")
public RestResult<Page<EntrustSample>> getPageReportSend(EntrustSample entrustSample) {
entrustSample.setStatus(EntrustSampleStatusEnum.REPORT_SEND);
entrustSample.setType(0);
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("/page_quality_inspect")
public RestResult<Page<EntrustSample>> getPageQualityInspect(EntrustSample entrustSample) {
entrustSample.setStatus(EntrustSampleStatusEnum.QUALITY_INSPECT);
entrustSample.setType(0);
return success(entrustSampleService.page(getPage(), entrustSample));
}
......@@ -203,6 +225,12 @@ public class EntrustSampleController extends ServiceController {
return success(entrustSampleService.save(entrustSample));
}
@ApiOperation("批量添加或修改")
@PostMapping("/add_batch")
public RestResult<Boolean> add(@RequestBody List<EntrustSample> sampleList) {
return success(entrustSampleService.saveOrUpdateInfoBatch(sampleList));
}
@ApiOperation("根据 ids 删除")
@ApiImplicitParams({
@ApiImplicitParam(name = "ids", value = "主键列表", required = true, paramType = "query", allowMultiple = true, dataTypeClass = Long.class),
......@@ -458,9 +486,18 @@ public class EntrustSampleController extends ServiceController {
@PostMapping("/page_input_by_sample_left")
public RestResult<Page<EntrustSampleVO>> getPageInputByItemLeft(EntrustSampleVO sampleVO) {
sampleVO.setItemStatus(EntrustSampleItemStatusEnum.TEST);
handlerData(sampleVO);
return success(entrustSampleService.pageBySampleLeft(getPage(), sampleVO));
}
private void handlerData(EntrustSampleVO vo) {
// 数据来源
// 若为数据录入节点且不为分组管理员,那么需要过滤数据
boolean isLeader = userInfoService.isGroupLeader(vo.getEntrustId(), getAccount());
if ("TEST".equalsIgnoreCase(vo.getSource()) && !isLeader) {
vo.setTesterId(getAccount().getUserId());
}
}
@ApiOperation("数据录入历史按照样品录入左侧分页列表")
@ApiImplicitParams({
......@@ -541,6 +578,19 @@ public class EntrustSampleController extends ServiceController {
return success(entrustSampleService.pageBySampleLeftHis(getPage(), sampleVO));
}
@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_result_entry")
public RestResult<Page<EntrustSampleVO>> getPageAcceptanceResultEntry(EntrustSampleVO entrustSample) {
entrustSample.setStatus(EntrustSampleStatusEnum.END);
return success(entrustSampleService.pageAcceptanceResultEntry(getPage(), entrustSample));
}
@ApiOperation("检测结果查询分页列表")
@ApiImplicitParams({
......@@ -555,9 +605,9 @@ public class EntrustSampleController extends ServiceController {
}
@ApiOperation("原铝品味统计查询")
@PostMapping("/al_taste_stats_query")
public RestResult<List<AlTasteStatsVO>> getAlTasteStatsQuery(StatsQueryDTO statsQueryDTO) {
return success(entrustSampleService.getAlTasteStatsQuery(statsQueryDTO));
@PostMapping("/al_grade_stats_query")
public RestResult<List<AlGradeStatsVO>> getAlGradeStatsQuery(StatsQueryDTO statsQueryDTO) {
return success(entrustSampleService.getAlGradeStatsQuery(statsQueryDTO));
}
@ApiOperation("电解质分子比统计查询")
......@@ -577,4 +627,22 @@ public class EntrustSampleController extends ServiceController {
public RestResult<Boolean> scanReceive(@RequestParam("sampleCode") String sampleCode) {
return success(entrustSampleService.scanReceive(sampleCode, 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_sample_index")
public RestResult<Page<EntrustSampleIndexVO>> getPageSampleIndex(EntrustSampleIndexVO sampleIndexVO) {
return success(entrustSampleService.getPageSampleIndex(getPage(), sampleIndexVO));
}
@ApiOperation("导出样品指标信息")
@RequestMapping(value = "/export_sample_index", method = {RequestMethod.POST, RequestMethod.GET})
public void exportSampleIndex(Long entrustId) {
entrustSampleService.exportSampleIndex(entrustId, getAccount(), response);
}
}
......@@ -2,6 +2,7 @@ package com.patzn.cloud.service.lims.hmhj.controller;
import com.baomidou.mybatisplus.plugins.Page;
import com.google.common.collect.Lists;
import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.commons.api.RestConstants;
import com.patzn.cloud.commons.api.RestResult;
import com.patzn.cloud.commons.controller.ServiceController;
......@@ -21,11 +22,9 @@ import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import javax.xml.transform.Result;
import java.util.List;
import java.util.Map;
......@@ -329,9 +328,9 @@ public class EntrustSampleItemController extends ServiceController {
private void handlerData(EntrustSampleItemVO vo) {
// 数据来源
// 若为数据录入节点或者不为分组管理员,那么需要过滤数据
if ("TEST".equalsIgnoreCase(vo.getSource()) ||
!userInfoService.isGroupLeader(vo.getEntrustId(), getAccount())) {
// 若为数据录入节点不为分组管理员,那么需要过滤数据
boolean isLeader = userInfoService.isGroupLeader(vo.getEntrustId(),getAccount());
if("TEST".equalsIgnoreCase(vo.getSource()) && !isLeader){
vo.setTesterId(getAccount().getUserId());
}
}
......@@ -643,4 +642,35 @@ public class EntrustSampleItemController extends ServiceController {
public RestResult<Map> getSampleItemStatsQuery(SampleItemDTO sampleItemDTO) {
return success(entrustSampleItemService.getSampleItemStatsQuery(sampleItemDTO));
}
@ApiOperation("批量删除样品下检测项目")
@PostMapping("/delete_sample_item")
public RestResult<Boolean> removeSamplesItem(@RequestParam("sampleIds") Long[] sampleIds, @RequestParam("itemName") String itemName) {
return success(entrustSampleItemService.removeSamplesItem(sampleIds, itemName));
}
@ApiOperation("恢复删除的检测项目")
@PostMapping("/revoke_deleted_item")
public RestResult<Boolean> revokeDeletedItem(@RequestParam("sampleIds") Long[] sampleIds) {
return success(entrustSampleItemService.revokeDeletedItems(sampleIds));
}
@ApiOperation("恢复删除的检测项目")
@PostMapping("/revoke_removed_item")
public RestResult<Boolean> revokeRemovedItem(@RequestParam("ids") Long[] ids) {
return success(entrustSampleItemService.revokeRemovedItem(ids));
}
@ApiOperation("委托检测项目填写进度查询")
@ApiImplicitParams({
@ApiImplicitParam(name = RestConstants.PAGE_PAGE, value = "请求数据的页码", required = true, paramType = "query", dataType = "int"),
@ApiImplicitParam(name = RestConstants.PAGE_ROWS, value = "每页条数", required = true, paramType = "query", dataType = "int"),
@ApiImplicitParam(name = RestConstants.PAGE_SIDX, value = "排序字段", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = RestConstants.PAGE_SORD, value = "排序方式", paramType = "query", dataType = "String"),
})
@PostMapping("/item_fill_progress_query")
public RestResult<Page<EntrustSampleItemVO>> getItemFillProgressQuery(EntrustSampleItemVO itemVO) {
RestAssert.fail(null == itemVO.getEntrustId(), "委托ID为空");
return success(entrustSampleItemService.getItemFillProgressQuery(getPage(), itemVO));
}
}
package com.patzn.cloud.service.lims.hmhj.controller;
import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.service.hmhj.entity.EntrustSampleItemIndex;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.DeleteMapping;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PathVariable;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.PutMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.RestController;
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.EntrustSampleItemIndex;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustSampleItemIndexService;
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;
......@@ -94,4 +85,14 @@ public class EntrustSampleItemIndexController extends ServiceController {
public RestResult<Boolean> saveOrUpdate(EntrustSampleItemIndex entrustSampleItemIndex) {
return success(entrustSampleItemIndexService.saveOrUpdateData(entrustSampleItemIndex));
}
@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),
})
@PostMapping("/page_index_with_item")
public RestResult<Page<EntrustSampleItemIndexVO>> pageIndexWithItem(EntrustSampleItemIndexVO entrustSampleItemIndexVO) {
return success(entrustSampleItemIndexService.pageIndexWithItem(getPage(), entrustSampleItemIndexVO));
}
}
......@@ -50,9 +50,33 @@ public class MaterialController extends ServiceController {
@ApiImplicitParam(name = RestConstants.PAGE_SORD, value = "排序方式", paramType = "query", dataTypeClass = String.class),
})
@PostMapping("/page")
public RestResult<Page<Material>> getPage(Material material) {
public RestResult<Page<Material>> getPage(Material material) {
return success(materialService.page(getPage(), material));
}
}
@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_material")
public RestResult<Page<Material>> getPageMaterial(Material material) {
return success(materialService.getPageMaterialByPerson(getPage(), material, "ASSIGNOR", 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_materials")
public RestResult<Page<Material>> getPageMaterialByPerson(Material material) {
return success(materialService.getPageMaterialByPerson(getPage(), material, "REPORT_RECIPIENT", getAccount()));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
......@@ -68,24 +92,24 @@ public class MaterialController extends ServiceController {
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@PutMapping("/{id}")
public RestResult<Boolean> edit(@PathVariable("id") Long id, Material material) {
public RestResult<Boolean> edit(@PathVariable("id") Long id, Material material) {
material.setId(id);
return success(materialService.updateById(material));
}
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(Material material) {
public RestResult<Boolean> add(Material material) {
return success(materialService.save(material));
}
}
@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) {
@DeleteMapping("/")
public RestResult<Boolean> delete(@RequestParam("ids") List<Long> ids) {
return success(materialService.removeByIds(ids));
}
}
}
......@@ -2,6 +2,7 @@ package com.patzn.cloud.service.lims.hmhj.controller;
import com.patzn.cloud.commons.api.RestResult;
import com.patzn.cloud.commons.controller.ServiceController;
import com.patzn.cloud.service.hmhj.dto.LedgerQueryDTO;
import com.patzn.cloud.service.hmhj.dto.QueryDTO;
import com.patzn.cloud.service.hmhj.dto.RangeStatsQueryDTO;
import com.patzn.cloud.service.hmhj.entity.Statistics;
......@@ -38,7 +39,7 @@ public class StatisticsController extends ServiceController {
@ApiOperation("报告发放量统计")
@PostMapping("/report_send_quantity")
public RestResult<Map<String,Object>> getReportSendQuantity(RangeStatsQueryDTO queryDTO) {
public RestResult<Map<String, Object>> getReportSendQuantity(RangeStatsQueryDTO queryDTO) {
return success(statsService.getReportSendQuantity(queryDTO));
}
......@@ -91,4 +92,41 @@ public class StatisticsController extends ServiceController {
return success(statsService.getAlBrandsRate(queryDTO));
}
@ApiOperation("原铝品味台账")
@PostMapping("/al_grade_ledger")
public RestResult<List<Map>> getAlGradeLedger(LedgerQueryDTO ledgerQueryDTO) {
return success(statsService.getAlGradeLedger(ledgerQueryDTO));
}
@ApiOperation("原铝品位台账统计表")
@PostMapping("/al_grade_ledger_stats")
public RestResult<List<Map>> getAlGradeLedgerStats(LedgerQueryDTO ledgerQueryDTO) {
return success(statsService.getAlGradeLedgerStats(ledgerQueryDTO));
}
@ApiOperation("原铝杂质含量台账")
@PostMapping("/al_impurity_ledger")
public RestResult<List<Map>> getAlImpurityLedger(LedgerQueryDTO ledgerQueryDTO) {
return success(statsService.getAlImpurityLedger(ledgerQueryDTO));
}
@ApiOperation("原铝杂质含量台账统计表")
@PostMapping("/al_impurity_ledger_stats")
public RestResult<List<Map>> getAlImpurityLedgerStats(LedgerQueryDTO ledgerQueryDTO) {
return success(statsService.getAlImpurityLedgerStats(ledgerQueryDTO));
}
@ApiOperation("原铝铁含量统计表")
@PostMapping("/al_fe_ledger_stats")
public RestResult<List<Map>> getAlFeLedgerStats(LedgerQueryDTO ledgerQueryDTO) {
return success(statsService.getAlFeLedgerStats(ledgerQueryDTO));
}
@ApiOperation("汇总统计表")
@PostMapping("/summary_ledger_stats")
public RestResult<List<Map>> getSummaryLedgerStats(LedgerQueryDTO ledgerQueryDTO) {
return success(statsService.getSummaryLedgerStats(ledgerQueryDTO));
}
}
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.feign.base.client.SysUserClient;
import com.patzn.cloud.service.hmhj.entity.Transformer;
import com.patzn.cloud.service.lims.hmhj.service.ITransformerService;
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 meazty
* @since 2021-08-07
*/
@Api(tags = "变压器油基础数据")
@RestController
@RequestMapping("/v1/transformer")
public class TransformerController extends ServiceController {
@Autowired
private ITransformerService transformerService;
@Autowired
private SysUserClient sysUserClient;
@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),
})
@PostMapping("/page")
public RestResult<Page<Transformer>> getPage(Transformer transformer) {
return success(transformerService.page(getPage(), transformer));
}
@ApiOperation("查询 id 信息")
@ApiImplicitParams({
@ApiImplicitParam(name = "id", value = "主键", required = true, paramType = "path", dataTypeClass = Long.class),
})
@GetMapping("/{id}")
public RestResult<Transformer> get(@PathVariable("id") Long id) {
return success(transformerService.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, Transformer transformer) {
transformer.setId(id);
return success(transformerService.updateById(transformer));
}
@ApiOperation("添加")
@PostMapping("/")
public RestResult<Boolean> add(Transformer transformer) {
transformer.setCreator(sysUserClient.get(getAccount().getUserId()).serviceData().getRealname());
return success(transformerService.save(transformer));
}
@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(transformerService.removeByIds(ids));
}
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.AcceptanceExpert;
/**
* <p>
* 验收专家配置表 Mapper 接口
* </p>
*
* @author meazty
* @since 2021-09-22
*/
public interface AcceptanceExpertMapper extends BatchMapper<AcceptanceExpert> {
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.service.hmhj.entity.BusinessData;
import com.patzn.cloud.commons.mapper.BatchMapper;
/**
* <p>
* 业务数据表 Mapper 接口
* </p>
*
* @author meazty
* @since 2021-08-07
*/
public interface BusinessDataMapper extends BatchMapper<BusinessData> {
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.service.hmhj.entity.BusinessStaff;
import com.patzn.cloud.commons.mapper.BatchMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author meazty
* @since 2021-08-07
*/
public interface BusinessStaffMapper extends BatchMapper<BusinessStaff> {
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.CargoSpace;
/**
* <p>
* 货位管理 Mapper 接口
* </p>
*
* @author meazty
* @since 2021-08-20
*/
public interface CargoSpaceMapper extends BatchMapper<CargoSpace> {
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.service.hmhj.entity.ClientInfo;
import com.patzn.cloud.commons.mapper.BatchMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author meazty
* @since 2021-08-07
*/
public interface ClientInfoMapper extends BatchMapper<ClientInfo> {
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.service.hmhj.entity.ClientTestSide;
import com.patzn.cloud.commons.mapper.BatchMapper;
/**
* <p>
* 委托单位下检测单位信息 Mapper 接口
* </p>
*
* @author meazty
* @since 2021-08-07
*/
public interface ClientTestSideMapper extends BatchMapper<ClientTestSide> {
}
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> {
}
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.vo.ContractInfoVO;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
import java.util.List;
public interface ContractInfoMapper extends BatchMapper<ContractInfo> {
List<ContractInfoVO> selectVOList(RowBounds rowBounds, @Param("vo") ContractInfoVO contractInfo);
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.service.hmhj.entity.ContractSample;
import com.patzn.cloud.commons.mapper.BatchMapper;
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;
......@@ -22,4 +21,6 @@ public interface ContractSampleMapper extends BatchMapper<ContractSample> {
List<ContractSampleVO> selectVOList(RowBounds rowBounds, @Param("vo") ContractSampleVO contractSample);
List<ContractSampleVO> selectVOPublishList(RowBounds rowBounds, @Param("vo") ContractSampleVO contractSample);
List<ContractSampleVO> selectExpertReviewList(RowBounds rowBounds, @Param("vo") ContractSampleVO contractSample);
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.ContractSampling;
import com.patzn.cloud.service.hmhj.vo.ContractSamplingVO;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
import java.util.List;
/**
* @title: 合同样品 Mapper
* @author: meazty
* @ondate: 2021/9/23 17:12
**/
public interface ContractSamplingMapper extends BatchMapper<ContractSampling> {
List<ContractSamplingVO> selectVOList(RowBounds rowBounds, @Param("vo") ContractSamplingVO contractSamplingVO);
String selectLastCode(String queryKey);
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.baomidou.mybatisplus.annotations.SqlParser;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.EntrustRecord;
import org.apache.ibatis.annotations.Param;
import java.util.Date;
import java.util.List;
/**
* <p>
......@@ -13,4 +18,9 @@ import com.patzn.cloud.service.hmhj.entity.EntrustRecord;
*/
public interface EntrustRecordMapper extends BatchMapper<EntrustRecord> {
@SqlParser(filter = true)
List<Long> selectRollBackCount(@Param("start") Date startYM, @Param("end") Date endYM);
@SqlParser(filter = true)
Long selectInTimeCount(@Param("start") Date startYM, @Param("endYM") Date endYM);
}
......@@ -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.EntrustReportTemplateConfig;
import org.apache.ibatis.annotations.Param;
/**
* <p>
......@@ -13,4 +14,5 @@ import com.patzn.cloud.service.hmhj.entity.EntrustReportTemplateConfig;
*/
public interface EntrustReportTemplateConfigMapper extends BatchMapper<EntrustReportTemplateConfig> {
boolean updateConfigById(@Param("vo") EntrustReportTemplateConfig entrustReportTemplateConfig);
}
......@@ -2,10 +2,11 @@ package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.service.hmhj.entity.EntrustReportTemplate;
import com.patzn.cloud.commons.mapper.BatchMapper;
import org.apache.ibatis.annotations.Param;
/**
* <p>
* Mapper 接口
* Mapper 接口
* </p>
*
* @author wwd
......@@ -13,4 +14,5 @@ import com.patzn.cloud.commons.mapper.BatchMapper;
*/
public interface EntrustReportTemplateMapper extends BatchMapper<EntrustReportTemplate> {
boolean updateTemplateById(@Param("vo") EntrustReportTemplate entrustReportTemplate);
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.service.hmhj.entity.EntrustSampleBackup;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.EntrustSampleBackup;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleBackupVO;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
......@@ -21,5 +21,7 @@ public interface EntrustSampleBackupMapper extends BatchMapper<EntrustSampleBack
List<EntrustSampleBackupVO> selectVOList(RowBounds rowBounds, @Param("vo") EntrustSampleBackupVO entrustSampleBackup);
List<EntrustSampleBackupVO> selectCOList(RowBounds rowBounds, @Param("vo") EntrustSampleBackupVO entrustSampleBackup);
List<EntrustSampleBackupVO> selectManageList(Page<EntrustSampleBackupVO> page, @Param("vo") EntrustSampleBackupVO entrustSampleBackup);
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.baomidou.mybatisplus.annotations.SqlParser;
import com.patzn.cloud.service.hmhj.entity.EntrustSampleItemIndex;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.entity.EntrustSampleItemIndex;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
import java.util.List;
......@@ -24,4 +25,6 @@ public interface EntrustSampleItemIndexMapper extends BatchMapper<EntrustSampleI
@SqlParser(filter = true)
List<EntrustSampleItemIndex> getInReportItemIndex(@Param("sampleId") Long sampleId);
List<EntrustSampleItemIndexVO> selectIndexWithItem(RowBounds rowBounds, @Param("vo") EntrustSampleItemIndexVO entrustSampleItemIndexVO);
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.baomidou.mybatisplus.annotations.SqlParser;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.dto.QueryDTO;
import com.patzn.cloud.service.hmhj.dto.SampleItemDTO;
import com.patzn.cloud.service.hmhj.entity.EntrustSampleItem;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleCalcResultVO;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO;
import com.patzn.cloud.service.hmhj.vo.SampleItemStatsVO;
import com.patzn.cloud.service.hmhj.vo.TesterWorkloadStatsVO;
import com.patzn.cloud.service.hmhj.vo.*;
import com.patzn.cloud.service.lims.base.entity.LmsUserRelGroup;
import com.patzn.cloud.service.lims.base.vo.LmsUserRelGroupVO;
import org.apache.ibatis.annotations.Param;
......@@ -54,7 +50,7 @@ public interface EntrustSampleItemMapper extends BatchMapper<EntrustSampleItem>
int selectUnallocatedCountByEntrustId(@Param("entrustId") Long entrustId, @Param("itemIds") Long[] itemIds);
List<TesterWorkloadStatsVO> selectTesterWorkloadStatus(@Param("vo") QueryDTO queryDTO);
List<TesterWorkloadStatsVO> selectTesterWorkloadStats(@Param("vo") QueryDTO queryDTO);
@SqlParser(filter = true)
List<LmsUserRelGroupVO> selectAllPersonWorkload(RowBounds rowBounds, @Param("rel") LmsUserRelGroup lmsUserRelGroup);
......@@ -69,4 +65,18 @@ public interface EntrustSampleItemMapper extends BatchMapper<EntrustSampleItem>
List<EntrustSampleItemVO> selectUnfinishItemList(@Param("vo") QueryDTO dto);
boolean updateBatchByData(@Param("itemList") List<EntrustSampleItem> sampleItems);
@SqlParser(filter = true)
boolean updateForRevokeDeletedItems(@Param("sampleIds") Long[] sampleIds);
@SqlParser(filter = true)
boolean updateForRevokeRemovedItems(@Param("ids") Long[] ids);
List<EntrustSampleItemVO> selectItemFillProgress(RowBounds rowBounds, @Param("vo") EntrustSampleItemVO itemVO);
@SqlParser(filter = true)
boolean updateSampleRetakeInfoByEntrustId(@Param("entrustId") Long entrustId);
List<EntrustSampleItemIndexVO> selectItemTestByEntrustId(@Param("entrustId") Long entrustId);
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.baomidou.mybatisplus.annotations.SqlParser;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.dto.QueryDTO;
import com.patzn.cloud.service.hmhj.dto.StatsQueryDTO;
import com.patzn.cloud.service.hmhj.entity.EntrustSample;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.vo.AlTasteStatsVO;
import com.patzn.cloud.service.hmhj.vo.ElectrolyteRatioStatsVO;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleVO;
import com.patzn.cloud.service.hmhj.vo.PMakeFeStatsVO;
import com.patzn.cloud.service.hmhj.vo.*;
import org.apache.ibatis.annotations.Param;
import org.apache.ibatis.session.RowBounds;
......@@ -31,9 +28,11 @@ public interface EntrustSampleMapper extends BatchMapper<EntrustSample> {
List<EntrustSampleVO> selectMinStatusByEntrustIds(@Param("entrustIds") List<Long> entrustIds);
@SqlParser(filter = true)
List<EntrustSampleVO> selectTestResultQuery(RowBounds rowBounds, @Param("vo") EntrustSampleVO entrustSample);
List<AlTasteStatsVO> selectAlTasteStats(@Param("vo") StatsQueryDTO queryDTO);
@SqlParser(filter = true)
List<AlGradeStatsVO> selectAlGradeStats(@Param("vo") StatsQueryDTO queryDTO);
List<ElectrolyteRatioStatsVO> selectElectrolyteRatioStats(@Param("vo") QueryDTO queryDTO);
......@@ -42,4 +41,13 @@ public interface EntrustSampleMapper extends BatchMapper<EntrustSample> {
Map<String, Object> selectAlBrandsRateStatus(@Param("vo") QueryDTO queryDTO);
List<EntrustSample> selectByReportIds(@Param("reportIds") Long[] reportIds);
boolean updateBatchByData(@Param("sampleList") List<EntrustSample> sampleList);
@SqlParser(filter = true)
List<ReportSampleVO> selectReportSampleInfos(@Param("sampleIds") Long[] sampleIds);
String selectLastCode(@Param("queryKey") String queryKey);
List<EntrustSampleIndexVO> selectSampleIndex(RowBounds rowBounds, @Param("vo") EntrustSampleIndexVO sampleIndexVO);
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.baomidou.mybatisplus.annotations.SqlParser;
import com.patzn.cloud.commons.mapper.BatchMapper;
import com.patzn.cloud.service.hmhj.dto.LedgerQueryDTO;
import com.patzn.cloud.service.hmhj.dto.QueryDTO;
import com.patzn.cloud.service.hmhj.dto.RangeStatsQueryDTO;
import com.patzn.cloud.service.hmhj.entity.Statistics;
import com.patzn.cloud.service.hmhj.vo.DailyStatsLedgerVO;
import org.apache.ibatis.annotations.Param;
import java.util.List;
......@@ -31,4 +34,20 @@ public interface StatisticsMapper extends BatchMapper<Statistics> {
Statistics selectReportSendQuantity(@Param("vo") RangeStatsQueryDTO queryDTO);
List<Statistics> selectEntrustedQuantity(QueryDTO queryDTO);
@SqlParser(filter = true)
List<DailyStatsLedgerVO> selectAlGradeLedger(@Param("vo") LedgerQueryDTO ledgerQueryDTO);
@SqlParser(filter = true)
List<DailyStatsLedgerVO> selectAlGradeLedgerStats(@Param("vo") LedgerQueryDTO ledgerQueryDTO);
@SqlParser(filter = true)
List<DailyStatsLedgerVO> selectAlImpurityLedger(@Param("vo") LedgerQueryDTO ledgerQueryDTO);
@SqlParser(filter = true)
List<DailyStatsLedgerVO> selectAlFeLedgerStats(@Param("vo") LedgerQueryDTO ledgerQueryDTO);
@SqlParser(filter = true)
List<DailyStatsLedgerVO> selectAlImpurityLedgerStats(@Param("vo") LedgerQueryDTO ledgerQueryDTO);
}
package com.patzn.cloud.service.lims.hmhj.mapper;
import com.patzn.cloud.service.hmhj.entity.Transformer;
import com.patzn.cloud.commons.mapper.BatchMapper;
/**
* <p>
* 变压器油基础数据 Mapper 接口
* </p>
*
* @author meazty
* @since 2021-08-07
*/
public interface TransformerMapper extends BatchMapper<Transformer> {
}
package com.patzn.cloud.service.lims.hmhj.original;
import com.patzn.cloud.service.lims.common.StringHandleUtils;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.ss.usermodel.Cell;
import java.math.BigDecimal;
import java.math.RoundingMode;
public interface Operation {
void doMakeOriginal();
void doMakeOriginal();
/**
* 对从直读光谱中抓取过来的原铝分析结果,进行修约
* @param cell
* @param value
* @param roundNum
*/
default void rounding(Cell cell, String value, Integer roundNum) {
if (StringUtils.isNotBlank(value)) {
if (!StringHandleUtils.validateNumber(value)) {
if (value.startsWith("!")) {
value = value.substring(1);
} else {
cell.setCellValue(value);
return;
}
}
// IF(ABS(TRUNC(A1,B1+5)*10^B1-TRUNC(A1,B1+5)*10^B1)<0.499999,ROUND(A1,B1),
// IF(ABS(TRUNC(A1,B1+5)*10^B1-TRUNC(A1,B1+5)*10^B1)>0.500001,ROUND(A1,B1),
// CEILING(ABS(TRUNC(A1,B1+1)-0.5*10^(-B1),2*10^(-B1)*SIGN(A1)))
int beginIndex = value.lastIndexOf(".") + 1, valueLength = value.length();
int remindLength = valueLength - beginIndex;
String truncValue = "", zeroStr = "000000000";
// bdA = TRUNC(A1,B1+5)*10^B1
if (remindLength >= roundNum + 5) {
truncValue = "0." + value.substring(beginIndex, beginIndex + roundNum + 5);
} else {
truncValue = "0." + value.substring(beginIndex) + zeroStr.substring(0, roundNum + 5 - remindLength);
}
BigDecimal bdDiff = new BigDecimal(truncValue).scaleByPowerOfTen(roundNum);
// bdB = TRUNC(A1,B1+5)*10^B1
if (remindLength >= roundNum) {
truncValue = "0." + value.substring(beginIndex, beginIndex + roundNum);
} else {
truncValue = "0." + value.substring(beginIndex) + zeroStr.substring(0, roundNum - remindLength);
}
bdDiff = bdDiff.subtract(new BigDecimal(truncValue).scaleByPowerOfTen(roundNum)).abs();
// 若 < 0.499999 或 大于 0.500001
if (bdDiff.compareTo(new BigDecimal("0.499999")) < 0 || bdDiff.compareTo(new BigDecimal("0.500001")) > 0) {
cell.setCellValue(new BigDecimal(value).setScale(roundNum, RoundingMode.HALF_EVEN).toPlainString());
return;
}
// 处理第三种情况
// CEILING(ABS(TRUNC(A1,B1+1)-0.5*10^(-B1),2*10^(-B1)*SIGN(A1))
if (remindLength >= roundNum + 1) {
truncValue = "0." + value.substring(beginIndex, beginIndex + roundNum + 1);
} else {
truncValue = "0." + value.substring(beginIndex) + zeroStr.substring(0, roundNum + 1 - remindLength);
}
bdDiff = new BigDecimal(truncValue);
bdDiff = bdDiff.subtract(new BigDecimal("0.5").scaleByPowerOfTen(-roundNum)).abs();
int signValue = Double.valueOf(value).compareTo(0.0);
BigDecimal significance = new BigDecimal("2").scaleByPowerOfTen(-roundNum).multiply(BigDecimal.valueOf(signValue)).abs();
// ceiling
BigDecimal[] result = bdDiff.divideAndRemainder(significance);
if (result[1].compareTo(BigDecimal.ZERO) == 0) {
cell.setCellValue(bdDiff.toPlainString());
} else {
cell.setCellValue(result[0].add(BigDecimal.ONE).multiply(significance).setScale(roundNum).toPlainString());
}
}
}
}
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.AcceptanceExpert;
import java.util.List;
/**
* 验收专家配置表 服务类
*
* @author meazty
* @since 2021-09-22
*/
public interface IAcceptanceExpertService extends IBaseService<AcceptanceExpert> {
Page<AcceptanceExpert> page(Page<AcceptanceExpert> page, AcceptanceExpert acceptanceExpert);
boolean removeByIds(List<Long> ids);
}
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.BusinessData;
import com.patzn.cloud.service.hmhj.enums.BusinessDataEnum;
import java.util.List;
/**
* 业务数据表 服务类
*
* @author meazty
* @since 2021-08-07
*/
public interface IBusinessDataService extends IBaseService<BusinessData> {
Page<BusinessData> page(Page<BusinessData> page, BusinessData businessData);
boolean removeByIds(List<Long> ids);
List<BusinessData> list(BusinessData businessData);
Boolean saveOrUpdateBatch(BusinessDataEnum productStandard, String dataJson);
}
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.BusinessStaff;
import com.patzn.cloud.service.hmhj.enums.BusinessStaffEnum;
import java.util.List;
/**
* 服务类
*
* @author meazty
* @since 2021-08-07
*/
public interface IBusinessStaffService extends IBaseService<BusinessStaff> {
Page<BusinessStaff> page(Page<BusinessStaff> page, BusinessStaff businessStaff);
boolean removeByIds(List<Long> ids);
List<BusinessStaff> listData(BusinessStaff businessStaff);
boolean saveBatchStaff(BusinessStaffEnum businessStaffEnum, String staffJson);
}
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.CargoSpace;
import java.util.List;
/**
* 货位管理 服务类
*
* @author meazty
* @since 2021-08-20
*/
public interface ICargoSpaceService extends IBaseService<CargoSpace> {
Page<CargoSpace> page(Page<CargoSpace> page, CargoSpace cargoSpace);
boolean removeByIds(List<Long> ids);
}
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.base.entity.SysOrg;
import com.patzn.cloud.service.hmhj.entity.ClientInfo;
import java.util.List;
import java.util.Map;
/**
* 服务类
*
* @author meazty
* @since 2021-08-07
*/
public interface IClientInfoService extends IBaseService<ClientInfo> {
Page<ClientInfo> page(Page<ClientInfo> page, ClientInfo clientInfo);
boolean removeByIds(List<Long> ids);
ClientInfo getClientInfo(Account account);
Map<String, Object> getClientAbout(Account account);
boolean saveBatchClient(String clientJson, Account account);
}
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.ClientTestSide;
import java.util.List;
/**
* 委托单位下检测单位信息 服务类
*
* @author meazty
* @since 2021-08-07
*/
public interface IClientTestSideService extends IBaseService<ClientTestSide> {
Page<ClientTestSide> page(Page<ClientTestSide> page, ClientTestSide clientTestSide);
boolean removeByIds(List<Long> ids);
List<ClientTestSide> listByClientId(Long clientId);
boolean saveOrUpdateBatch(String testSideJson, Account account);
}
......@@ -23,4 +23,6 @@ public interface ICodeRuleService extends IBaseService<CodeRule> {
String getCodeKey(CodeTypeDTO dto);
String getKey(Integer codeType, String codeName, BaseEntity entity);
String getKey(String prefix, String rule, BaseEntity entity);
}
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);
}
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.ContractInfoDTO;
import com.patzn.cloud.service.hmhj.entity.ContractInfo;
import com.patzn.cloud.service.hmhj.vo.ContractInfoVO;
import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
* 服务类
*
* @author wwd
* @since 2021-02-01
*/
public interface IContractInfoService extends IBaseService<ContractInfo> {
Page<ContractInfo> page(Page<ContractInfo> page, ContractInfo contractInfo);
boolean removeByIds(List<Long> ids);
boolean addDTO(ContractInfoDTO dto);
boolean updateContractBatch(Long[] ids, ContractInfo contractInfo, Account account);
boolean batchImport(MultipartFile file, Account account);
Page<ContractInfoVO> pageVO(Page<ContractInfoVO> page, ContractInfoVO contractInfo);
}
......@@ -2,6 +2,7 @@ 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.dto.ContractOkOrganizerDTO;
import com.patzn.cloud.service.hmhj.entity.ContractOkOrganizer;
import java.util.List;
......@@ -19,4 +20,6 @@ public interface IContractOkOrganizerService extends IBaseService<ContractOkOrga
boolean removeByIds(List<Long> ids);
boolean saveBatch(String itemJson);
boolean saveOrganizerBatch(String organizerJson);
}
......@@ -12,7 +12,7 @@ import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
* 服务类
* 服务类
*
* @author wwd
* @since 2021-02-01
......@@ -27,6 +27,8 @@ public interface IContractSampleService extends IBaseService<ContractSample> {
boolean submitToStoreTransport(Long[] ids, Account account);
boolean submitToStoreRegister(Long[] ids, Account account);
boolean submitToProTechCheck(Long[] ids, Account account);
boolean proTechCheckPass(Long[] ids, Account account);
......@@ -47,7 +49,7 @@ public interface IContractSampleService extends IBaseService<ContractSample> {
boolean submitToExpertReviewFromOrg(Long[] ids, Account account);
boolean submitCheckResultInput(Long[] ids, Account account);
boolean submitCheckResultInput(Long[] ids, String result,String failReason, Account account);
Page<ContractSampleVO> pageVO(Page<ContractSampleVO> page, ContractSampleVO contractSample);
......@@ -69,9 +71,21 @@ public interface IContractSampleService extends IBaseService<ContractSample> {
boolean addJudgementType(Long[] ids, String judgement, Account account);
Page<ContractSample> pageOutReg(Page<ContractSample> page, ContractSample contractSample);
Page<ContractSampleVO> pageOutReg(Page<ContractSampleVO> page, ContractSampleVO contractSample);
boolean isOutEntrustData(Long contractSampleId);
boolean batchImport(MultipartFile file, Account account);
boolean updateContractBatch(Long[] ids, ContractSample contractSample, Account account);
boolean updateSuspendOrContinue(Long[] ids, Integer suspend, Account account);
boolean addByContractInfo(ContractSampleDTO contractSampleDTO);
Page<ContractSampleVO> pageExpertReview(Page<ContractSampleVO> page, ContractSampleVO contractSample);
boolean submitToDataSampling(Long[] ids, Account account);
boolean updatePutInRegEnd(ContractSample contractSample, Account account);
}
package com.patzn.cloud.service.lims.hmhj.service;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.entity.ContractSampling;
import com.patzn.cloud.service.hmhj.vo.ContractSamplingVO;
import java.util.List;
/**
* @title: 合同样品表
* @author: meazty
* @ondate: 2021/9/23 17:17
**/
public interface IContractSamplingService extends IBaseService<ContractSampling> {
Page<ContractSampling> page(Page<ContractSampling> page, ContractSampling contractSampling);
Page<ContractSampling> pageByWrapper(Page<ContractSampling> page, Wrapper wrapper);
boolean removeByIds(List<Long> ids);
Page<ContractSamplingVO> pageVO(Page<ContractSamplingVO> page, ContractSamplingVO contractSampling);
List<ContractSampling> getByContractId(Long contractId);
boolean saveOrUpdateInfoBatch(List<ContractSampling> sampleList);
boolean updateSampling(ContractSampling contractSampling);
String getNewCode(String queryKey, int lens);
}
......@@ -6,7 +6,9 @@ import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.entity.EntrustRecord;
import java.util.Collection;
import java.util.Date;
import java.util.List;
import java.util.Map;
/**
* 委托操作日志表 服务类
......@@ -23,4 +25,12 @@ public interface IEntrustRecordService extends IBaseService<EntrustRecord> {
void record(Long[] ids, String from, String to, int type, Account account, String remark);
void record(Collection<Long> ids, String from, String to, int type, Account account, String remark);
Map<String, String> monthStatistic(Date start, Date end);
/* 查询被退回过的报告数 */
Integer selectRollBackCount(Date startYM, Date endYM);
/* 查询不及时的报告数 */
Long selectInTimeCount(Date startYM, Date endYM);
}
......@@ -8,6 +8,7 @@ import com.patzn.cloud.service.hmhj.entity.EntrustReport;
import com.patzn.cloud.service.hmhj.enums.EntrustReportStatusEnum;
import com.patzn.cloud.service.hmhj.vo.EntrustReportVO;
import javax.servlet.http.HttpServletResponse;
import java.io.File;
import java.util.List;
......@@ -27,6 +28,10 @@ public interface IEntrustReportService extends IBaseService<EntrustReport> {
void uploadReportGenerateDocx(Entrust entrust, Long[] ids, Account account, String name, String remark, File file);
void uploadReportGenerateXlsx(Entrust entrust, Long[] ids, Account account, String name, String remark, File file);
boolean submitReportMake(Long[] ids, Account account);
boolean submitReportCheck(Long[] ids, Account account);
......@@ -55,4 +60,15 @@ public interface IEntrustReportService extends IBaseService<EntrustReport> {
boolean updateLastFlowCheckByEntrustId(Long entrustId, Account account);
List<EntrustReport> getReportUnderEntrust(Long entrustId);
void downloadExcel(Long id, HttpServletResponse response);
void changeExcelReportToPdf(Long[] ids);
boolean submitFromSendToInspect(Long[] ids, Account account);
boolean submitFromInspectToJudge(Long[] ids, Account account);
boolean backFromInspectToSend(Long[] ids, String reason, Account account);
}
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.EntrustReportTemplateConfig;
......@@ -17,4 +18,6 @@ public interface IEntrustReportTemplateConfigService extends IBaseService<Entrus
Page<EntrustReportTemplateConfig> page(Page<EntrustReportTemplateConfig> page, EntrustReportTemplateConfig entrustReportTemplateConfig);
boolean removeByIds(List<Long> ids);
boolean updateConfigById(EntrustReportTemplateConfig entrustReportTemplateConfig, Account account);
}
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.EntrustReportTemplate;
import org.springframework.web.multipart.MultipartFile;
......@@ -8,7 +9,7 @@ import org.springframework.web.multipart.MultipartFile;
import java.util.List;
/**
* 服务类
* 服务类
*
* @author wwd
* @since 2021-02-26
......@@ -19,5 +20,9 @@ public interface IEntrustReportTemplateService extends IBaseService<EntrustRepor
boolean removeByIds(List<Long> ids);
boolean uploadTemplate(MultipartFile file, String name,String classType, String remark);
boolean uploadTemplate(MultipartFile file, String name, String classType, String remark);
boolean updateTemplateById(EntrustReportTemplate entrustReportTemplate, Account account);
EntrustReportTemplate getByClassType(String classType);
}
......@@ -24,7 +24,11 @@ public interface IEntrustSampleBackupService extends IBaseService<EntrustSampleB
Page<EntrustSampleBackupVO> pageVO(Page<EntrustSampleBackupVO> page, EntrustSampleBackupVO entrustSampleBackup);
Page<EntrustSampleBackupVO> pageCO(Page<EntrustSampleBackupVO> page, EntrustSampleBackupVO entrustSampleBackup);
boolean submitToHandle(Long[] ids, Account account);
Page<EntrustSampleBackupVO> pageManage(Page<EntrustSampleBackupVO> page, EntrustSampleBackupVO entrustSampleBackup);
void updateEntrustId(Long id, List<Long> contractSamplings);
}
......@@ -35,4 +35,6 @@ public interface IEntrustSampleItemIndexService extends IBaseService<EntrustSamp
/* 获取所有在报告中显示的指标 */
List<EntrustSampleItemIndex> getInReportItemIndex(Long sampleId);
Page<EntrustSampleItemIndexVO> pageIndexWithItem(Page<EntrustSampleItemIndexVO> page, EntrustSampleItemIndexVO entrustSampleItemIndexVO);
}
......@@ -5,12 +5,12 @@ import com.patzn.cloud.commons.controller.Account;
import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.dto.QueryDTO;
import com.patzn.cloud.service.hmhj.dto.SampleItemDTO;
import com.patzn.cloud.service.hmhj.entity.Entrust;
import com.patzn.cloud.service.hmhj.entity.EntrustSampleItem;
import com.patzn.cloud.service.hmhj.entity.ItemDeviate;
import com.patzn.cloud.service.hmhj.entity.OriginalRecord;
import com.patzn.cloud.service.hmhj.enums.EntrustFlowEnum;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleCalcResultVO;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleItemVO;
import com.patzn.cloud.service.hmhj.vo.TesterWorkloadStatsVO;
import com.patzn.cloud.service.lims.base.entity.LmsUserRelGroup;
......@@ -100,4 +100,28 @@ public interface IEntrustSampleItemService extends IBaseService<EntrustSampleIte
boolean autoAllotItem(Long[] ids, Account account);
boolean autoAllotItemFromFlowStatus(Long entrustId, EntrustFlowEnum flowEnum, Account account);
boolean updateBatchByData(List<EntrustSampleItem> sampleItems);
boolean removeSamplesItem(Long[] sampleIds, String itemName);
boolean revokeDeletedItems(Long[] sampleIds);
List<EntrustSampleItem> getListByEntrustId(Long entrustId);
List<Long> getTesterIdListByEntrustId(Long entrustId);
boolean revokeRemovedItem(Long[] ids);
Page<EntrustSampleItemVO> getItemFillProgressQuery(Page<EntrustSampleItemVO> page, EntrustSampleItemVO itemVO);
boolean updateQualityJudgeFlow(Long[] ids, Account account);
boolean updateSampleRetakeByEntrustId(Long entrustId);
List<EntrustSampleItemVO> getSampleItemIndexList(Long sampleId);
List<EntrustSampleItemIndexVO> getItemTestByEntrustId(Long entrustIds);
EntrustSampleItem getItemModelBySampleId(Long sampleId);
}
......@@ -4,20 +4,21 @@ import com.baomidou.mybatisplus.mapper.Wrapper;
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.*;
import com.patzn.cloud.service.hmhj.dto.EntrustSampleADDDTO;
import com.patzn.cloud.service.hmhj.dto.QueryDTO;
import com.patzn.cloud.service.hmhj.dto.ReportDTO;
import com.patzn.cloud.service.hmhj.dto.StatsQueryDTO;
import com.patzn.cloud.service.hmhj.entity.Entrust;
import com.patzn.cloud.service.hmhj.entity.EntrustSample;
import com.patzn.cloud.service.hmhj.enums.EntrustFlowEnum;
import com.patzn.cloud.service.hmhj.vo.AlTasteStatsVO;
import com.patzn.cloud.service.hmhj.vo.ElectrolyteRatioStatsVO;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleVO;
import com.patzn.cloud.service.hmhj.vo.PMakeFeStatsVO;
import com.patzn.cloud.service.hmhj.vo.*;
import javax.servlet.http.HttpServletResponse;
import java.util.List;
import java.util.Map;
/**
* 服务类
* 服务类
*
* @author wwd
* @since 2021-02-01
......@@ -62,11 +63,11 @@ public interface IEntrustSampleService extends IBaseService<EntrustSample> {
int countByEntrustId(Long id);
List<AlTasteStatsVO> getAlTasteStatsQuery(StatsQueryDTO queryDTO);
List<AlGradeStatsVO> getAlGradeStatsQuery(StatsQueryDTO queryDTO);
List<ElectrolyteRatioStatsVO> getElectrolyteRatioStatsQuery(QueryDTO queryDTO);
Map<String,Object> getPMakeFeStatsQuery(QueryDTO queryDTO);
Map<String, Object> getPMakeFeStatsQuery(QueryDTO queryDTO);
boolean updateSampleNextFlowInfo(Entrust entrust, EntrustFlowEnum nextFlowStatus, Account account);
......@@ -102,7 +103,7 @@ public interface IEntrustSampleService extends IBaseService<EntrustSample> {
boolean isRequireJudgeGrading(Long entrustId);
boolean updateJudgeStatus(Long entrustId,Integer judgeStatus);
boolean updateJudgeStatus(Long entrustId, Integer judgeStatus);
Page<EntrustSampleVO> pageVOForMakeHis(Page<EntrustSampleVO> page, EntrustSampleVO entrustSample);
......@@ -113,4 +114,21 @@ public interface IEntrustSampleService extends IBaseService<EntrustSample> {
boolean updateSampleInfo(EntrustSample entrustSample);
List<EntrustSample> getByReportIds(Long[] reportIds);
boolean updateBatchByData(List<EntrustSample> sampleList);
List<ReportSampleVO> getReportBrands(Long[] sampleIds);
Page<EntrustSampleVO> pageAcceptanceResultEntry(Page<EntrustSampleVO> page, EntrustSampleVO entrustSampleVO);
String getNewCode(String queryKey, int lens);
EntrustSample getByContractId(Long contractId);
boolean saveOrUpdateInfoBatch(List<EntrustSample> sampleList);
Page<EntrustSampleIndexVO> getPageSampleIndex(Page<EntrustSampleIndexVO> page, EntrustSampleIndexVO sampleIndexVO);
void exportSampleIndex(Long entrustId, Account account, HttpServletResponse response);
}
......@@ -106,4 +106,15 @@ public interface IEntrustService extends IBaseService<Entrust> {
Page<EntrustVO> pageEntrustSampleMake(Page<EntrustVO> page, EntrustVO entrust);
boolean updateEntrustById(Entrust entrust);
boolean backFromReportMake(Long[] ids, Account account, String reason);
boolean updateSetEntrustTpl(List<Long> ids, Integer status);
Page<EntrustVO> getPageEntrustTpl(Page<EntrustVO> page, EntrustVO entrust);
boolean submitToNextFlow(Long[] ids, Account account);
boolean saveOrUpdateToSubmit(EntrustDTO entrustDTO, Account account);
Page<EntrustVO> getPageReportProduct(Page<EntrustVO> page, EntrustVO entrust);
}
package com.patzn.cloud.service.lims.hmhj.service;
import com.baomidou.mybatisplus.mapper.Wrapper;
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.Material;
......@@ -16,5 +18,9 @@ public interface IMaterialService extends IBaseService<Material> {
Page<Material> page(Page<Material> page, Material material);
Page<Material> page(Page<Material> page, Material material, Wrapper<Material> materialWrapper);
boolean removeByIds(List<Long> ids);
Page<Material> getPageMaterialByPerson(Page<Material> page, Material material, String bizType, Account account);
}
package com.patzn.cloud.service.lims.hmhj.service;
import com.patzn.cloud.commons.service.IBaseService;
import com.patzn.cloud.service.hmhj.dto.LedgerQueryDTO;
import com.patzn.cloud.service.hmhj.dto.QueryDTO;
import com.patzn.cloud.service.hmhj.dto.RangeStatsQueryDTO;
import com.patzn.cloud.service.hmhj.entity.Statistics;
......@@ -33,4 +34,17 @@ public interface IStatisticsService extends IBaseService<Statistics> {
List<Statistics> getCurWeekAcceptanceQualified(QueryDTO queryDTO);
List<Statistics> getCurWeekCarbonBlocks(QueryDTO queryDTO);
List<Map> getAlGradeLedger(LedgerQueryDTO ledgerQueryDTO);
List<Map> getAlGradeLedgerStats(LedgerQueryDTO ledgerQueryDTO);
List<Map> getAlImpurityLedger(LedgerQueryDTO ledgerQueryDTO);
List<Map> getAlImpurityLedgerStats(LedgerQueryDTO ledgerQueryDTO);
List<Map> getAlFeLedgerStats(LedgerQueryDTO ledgerQueryDTO);
List<Map> getSummaryLedgerStats(LedgerQueryDTO ledgerQueryDTO);
}
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.Transformer;
import java.util.List;
/**
* 变压器油基础数据 服务类
*
* @author meazty
* @since 2021-08-07
*/
public interface ITransformerService extends IBaseService<Transformer> {
Page<Transformer> page(Page<Transformer> page, Transformer transformer);
boolean removeByIds(List<Long> ids);
}
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.AcceptanceExpert;
import com.patzn.cloud.service.lims.hmhj.mapper.AcceptanceExpertMapper;
import com.patzn.cloud.service.lims.hmhj.service.IAcceptanceExpertService;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 验收专家配置表 服务实现类
*
* @author meazty
* @since 2021-09-22
*/
@Service
public class AcceptanceExpertServiceImpl extends BaseServiceImpl<AcceptanceExpertMapper, AcceptanceExpert> implements IAcceptanceExpertService {
@Override
public Page<AcceptanceExpert> page(Page<AcceptanceExpert> page, AcceptanceExpert acceptanceExpert) {
Wrapper wrapper = new EntityWrapper<>(acceptanceExpert);
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
}
package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.alibaba.fastjson.JSONArray;
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.exception.PatznException;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.entity.BusinessData;
import com.patzn.cloud.service.hmhj.enums.BusinessDataEnum;
import com.patzn.cloud.service.lims.hmhj.mapper.BusinessDataMapper;
import com.patzn.cloud.service.lims.hmhj.service.IBusinessDataService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 业务数据表 服务实现类
*
* @author meazty
* @since 2021-08-07
*/
@Service
public class BusinessDataServiceImpl extends BaseServiceImpl<BusinessDataMapper, BusinessData> implements IBusinessDataService {
@Override
public Page<BusinessData> page(Page<BusinessData> page, BusinessData businessData) {
Wrapper wrapper = new EntityWrapper<>(businessData);
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
@Override
public List<BusinessData> list(BusinessData businessData) {
if (null == businessData.getBizId()) {
return null;
}
Wrapper<BusinessData> wrapper = new EntityWrapper<>(businessData);
return baseMapper.selectList(wrapper);
}
@Override
public Boolean saveOrUpdateBatch(BusinessDataEnum businessDataEnum, String dataJson) {
RestAssert.fail(StringUtils.isBlank(dataJson), "人员信息为空");
try {
List<BusinessData> dataList = JSONArray.parseArray(dataJson, BusinessData.class);
RestAssert.fail(dataList.stream().anyMatch(t -> null == t.getBizId()), "业务编号为空");
if (BusinessDataEnum.PRODUCT_STANDARD == businessDataEnum) {
RestAssert.fail(dataList.stream().anyMatch(t -> null == t.getDataId()), "业务数据ID为空");
}
dataList.forEach(t -> t.setBizType(businessDataEnum.getName()));
saveOrUpdateBatch(dataList);
} catch (Exception e) {
logger.error(e.getMessage(), e.getCause());
throw new PatznException("业务数据转换异常");
}
return true;
}
}
package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.alibaba.fastjson.JSONArray;
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.exception.PatznException;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.entity.BusinessStaff;
import com.patzn.cloud.service.hmhj.enums.BusinessStaffEnum;
import com.patzn.cloud.service.lims.hmhj.mapper.BusinessStaffMapper;
import com.patzn.cloud.service.lims.hmhj.service.IBusinessStaffService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 服务实现类
*
* @author meazty
* @since 2021-08-07
*/
@Service
public class BusinessStaffServiceImpl extends BaseServiceImpl<BusinessStaffMapper, BusinessStaff> implements IBusinessStaffService {
@Override
public Page<BusinessStaff> page(Page<BusinessStaff> page, BusinessStaff businessStaff) {
Wrapper wrapper = new EntityWrapper<>(businessStaff);
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
@Override
public List<BusinessStaff> listData(BusinessStaff businessStaff) {
if (null == businessStaff.getBizId()) {
return null;
}
Wrapper<BusinessStaff> wrapper = new EntityWrapper<>(businessStaff);
return baseMapper.selectList(wrapper);
}
@Override
public boolean saveBatchStaff(BusinessStaffEnum businessStaffEnum, String staffJson) {
RestAssert.fail(StringUtils.isBlank(staffJson), "人员信息为空");
try {
List<BusinessStaff> staffList = JSONArray.parseArray(staffJson, BusinessStaff.class);
RestAssert.fail(staffList.stream().anyMatch(t -> null == t.getBizId()), "业务编号为空");
staffList.forEach(t -> t.setBizType(businessStaffEnum.getName()));
saveOrUpdateBatch(staffList);
} catch (Exception e) {
logger.error(e.getMessage(), e.getCause());
throw new PatznException("人员数据转换异常");
}
return true;
}
}
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.CargoSpace;
import com.patzn.cloud.service.lims.hmhj.mapper.CargoSpaceMapper;
import com.patzn.cloud.service.lims.hmhj.service.ICargoSpaceService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.Collections;
import java.util.List;
/**
* 货位管理 服务实现类
*
* @author meazty
* @since 2021-08-20
*/
@Service
public class CargoSpaceServiceImpl extends BaseServiceImpl<CargoSpaceMapper, CargoSpace> implements ICargoSpaceService {
@Override
public Page<CargoSpace> page(Page<CargoSpace> page, CargoSpace cargoSpace) {
String cargo = cargoSpace.getCargoSpace(), location = cargoSpace.getStorageLocation(), plantArea = cargoSpace.getPlantArea();
cargoSpace.setCargoSpace(null).setPlantArea(null).setStorageLocation(null);
Wrapper wrapper = new EntityWrapper<>(cargoSpace);
if (StringUtils.isNotBlank(cargo)) {
wrapper.like("cargo_space", cargo);
}
if (StringUtils.isNotBlank(location)) {
wrapper.like("storage_location", location);
}
if (StringUtils.isNotBlank(plantArea)) {
wrapper.like("plant_area", plantArea);
}
wrapper.orderDesc(Collections.singleton("ctime"));
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
}
package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.alibaba.fastjson.JSONArray;
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.baomidou.mybatisplus.toolkit.CollectionUtils;
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.service.base.entity.SysOrg;
import com.patzn.cloud.service.base.entity.SysUser;
import com.patzn.cloud.service.hmhj.entity.ClientInfo;
import com.patzn.cloud.service.hmhj.entity.ClientTestSide;
import com.patzn.cloud.service.lims.hmhj.mapper.ClientInfoMapper;
import com.patzn.cloud.service.lims.hmhj.service.IClientInfoService;
import com.patzn.cloud.service.lims.hmhj.service.IClientTestSideService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 服务实现类
*
* @author meazty
* @since 2021-08-07
*/
@Service
public class ClientInfoServiceImpl extends BaseServiceImpl<ClientInfoMapper, ClientInfo> implements IClientInfoService {
@Autowired
private UserInfoServiceImpl userInfoService;
@Autowired
private IClientTestSideService clientTestSideService;
@Override
public Page<ClientInfo> page(Page<ClientInfo> page, ClientInfo clientInfo) {
String client = clientInfo.getClient();
clientInfo.setClient(null);
Wrapper wrapper = new EntityWrapper<>(clientInfo);
if (StringUtils.isNotBlank(client)) {
wrapper.like("client", client);
}
wrapper.orderBy("ctime", false);
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
@Override
public ClientInfo getClientInfo(Account account) {
SysOrg sysOrg = userInfoService.getUserOrg(account);
if (null == sysOrg) {
return null;
}
List<ClientInfo> list = list(Condition.create().eq("org_id", sysOrg.getId()));
return CollectionUtils.isNotEmpty(list) ? list.get(0) : null;
}
@Override
public Map<String, Object> getClientAbout(Account account) {
Map<String, Object> result = new HashMap<>();
SysOrg sysOrg = userInfoService.getUserOrg(account);
result.put("client", sysOrg);
ClientInfo clientInfo = getClientInfo(account);
// 为空或者大于1,直接返回,不对数据进行处理
if (null == clientInfo) {
return result;
}
result.put("clientInfo", clientInfo);
// 检测单位信息
List<ClientTestSide> clientTestSides = clientTestSideService.listByClientId(clientInfo.getId());
if (CollectionUtils.isEmpty(clientTestSides) || clientTestSides.size() > 1) {
result.put("testSides", clientTestSides);
return result;
}
ClientTestSide testSide = clientTestSides.get(0);
result.put("testSide", testSide);
// 额外处理数据
// 若委托单位为净化分厂
if (clientInfo.getClient().contains("净化分厂")) {
List<SysUser> orgUsers = userInfoService.getUsersByOrg(sysOrg.getId());
List<SysUser> roleUsers = userInfoService.getUsersByRoleName("净化化验员");
if (CollectionUtils.isNotEmpty(roleUsers)) {
List<Long> orgUserIds = orgUsers.stream().map(SysUser::getId).collect(Collectors.toList());
result.put("jhUsers", roleUsers.stream().filter(t -> orgUserIds.contains(t.getId())).collect(Collectors.toList()));
}
}
return result;
}
@Override
public boolean saveBatchClient(String clientJson, Account account) {
RestAssert.fail(StringUtils.isBlank(clientJson), "委托单位信息为空");
try {
List<ClientInfo> clientInfoList = JSONArray.parseArray(clientJson, ClientInfo.class);
if (CollectionUtils.isEmpty(clientInfoList)) {
return true;
}
this.saveBatch(clientInfoList);
} catch (Exception e) {
logger.error(e.getMessage(), e.getCause());
throw new PatznException("数据转换异常");
}
return true;
}
}
package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.alibaba.fastjson.JSONArray;
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.baomidou.mybatisplus.toolkit.CollectionUtils;
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.service.hmhj.entity.ClientTestSide;
import com.patzn.cloud.service.lims.hmhj.mapper.ClientTestSideMapper;
import com.patzn.cloud.service.lims.hmhj.service.IClientTestSideService;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import java.util.List;
/**
* 委托单位下检测单位信息 服务实现类
*
* @author meazty
* @since 2021-08-07
*/
@Service
public class ClientTestSideServiceImpl extends BaseServiceImpl<ClientTestSideMapper, ClientTestSide> implements IClientTestSideService {
@Override
public Page<ClientTestSide> page(Page<ClientTestSide> page, ClientTestSide clientTestSide) {
Wrapper wrapper = new EntityWrapper<>(clientTestSide);
return this.page(page, wrapper);
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
@Override
public List<ClientTestSide> listByClientId(Long clientId) {
RestAssert.fail(null == clientId, "委托单位编号为空");
return list(Condition.create().eq("client_id", clientId));
}
@Override
public boolean saveOrUpdateBatch(String testSideJson, Account account) {
RestAssert.fail(StringUtils.isBlank(testSideJson), "检测单位信息为空");
try {
List<ClientTestSide> clientTestSideList = JSONArray.parseArray(testSideJson, ClientTestSide.class);
if (CollectionUtils.isEmpty(clientTestSideList)) {
return true;
}
this.saveOrUpdateBatch(clientTestSideList);
} catch (Exception e) {
logger.error(e.getMessage(), e.getCause());
throw new PatznException("数据转换异常");
}
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.api.RestAssert;
import com.patzn.cloud.commons.constant.CommonConstants;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.commons.toolkit.CodeKeyUtils;
import com.patzn.cloud.commons.toolkit.FreemarkerUtils;
import com.patzn.cloud.commons.toolkit.JacksonUtils;
......@@ -12,18 +16,14 @@ import com.patzn.cloud.service.CodeRuleHelper;
import com.patzn.cloud.service.hmhj.entity.CodeRule;
import com.patzn.cloud.service.lims.base.dto.CodeTypeDTO;
import com.patzn.cloud.service.lims.base.entity.LmsBaseDict;
import com.patzn.cloud.service.lims.base.entity.LmsCodeRule;
import com.patzn.cloud.service.lims.common.StringHandleUtils;
import com.patzn.cloud.service.lims.hmhj.mapper.CodeRuleMapper;
import com.patzn.cloud.service.lims.hmhj.service.ICodeRuleRecordService;
import com.patzn.cloud.service.lims.hmhj.service.ICodeRuleService;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.joda.time.DateTime;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import org.springframework.transaction.annotation.Transactional;
import java.util.HashMap;
......@@ -71,6 +71,10 @@ public class CodeRuleServiceImpl extends BaseServiceImpl<CodeRuleMapper, CodeRul
}
CodeRule codeRule = super.getOne(Condition.create().eq("type", codeType).last("LIMIT 1"));
return getCodeKey(codeRule, codeName, entity);
}
private String getCodeKey(CodeRule codeRule, String codeName, BaseEntity entity) {
if (null == codeRule) {
RestAssert.fail(codeName + "不存在请配置规则");
}
......@@ -114,9 +118,9 @@ public class CodeRuleServiceImpl extends BaseServiceImpl<CodeRuleMapper, CodeRul
LmsBaseDict baseDict = new LmsBaseDict();
baseDict.setType(dictArr[0]);
baseDict.setName( FreemarkerUtils.process(dictArr[1], model));
LmsBaseDict dict = lmsBaseDictClient.getDictByNameType(baseDict).serviceData();
if (null!=dict){
baseDict.setName(FreemarkerUtils.process(dictArr[1], model));
LmsBaseDict dict = lmsBaseDictClient.getDictByNameType(baseDict).serviceData();
if (null != dict) {
key.append(dict.getCode());
}
}
......@@ -165,4 +169,13 @@ public class CodeRuleServiceImpl extends BaseServiceImpl<CodeRuleMapper, CodeRul
}
return next;
}
@Override
public String getKey(String prefix, String rule, BaseEntity entity) {
RestAssert.fail(StringUtils.isBlank(rule), "配置的规则为空");
RestAssert.fail(StringUtils.isBlank(prefix), "配置的规则前缀为空");
CodeRule codeRule = super.getOne(Condition.create().eq("pre", prefix).eq("rule", rule).last("LIMIT 1"));
RestAssert.fail(null == codeRule, "隐性编号规则不存在");
return getCodeKey(codeRule, "隐性规则" + prefix, entity);
}
}
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;
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.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.service.hmhj.dto.ContractInfoDTO;
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.service.IContractInfoItemService;
import com.patzn.cloud.service.lims.hmhj.service.IContractInfoService;
import org.apache.commons.lang3.StringUtils;
import org.apache.poi.xssf.usermodel.XSSFRow;
import org.apache.poi.xssf.usermodel.XSSFSheet;
import org.apache.poi.xssf.usermodel.XSSFWorkbook;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.web.multipart.MultipartFile;
import java.io.IOException;
import java.io.InputStream;
import java.text.ParseException;
import java.text.SimpleDateFormat;
import java.util.ArrayList;
import java.util.Date;
import java.util.List;
/**
* 服务实现类
*
* @author wwd
* @since 2021-02-01
*/
@Service
public class ContractInfoServiceImpl extends BaseServiceImpl<ContractInfoMapper, ContractInfo> implements IContractInfoService {
@Autowired
private IContractInfoItemService contractInfoItemService;
@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;
}
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
public Page<ContractInfoVO> pageVO(Page<ContractInfoVO> page, ContractInfoVO contractInfo) {
return page.setRecords(baseMapper.selectVOList(page, contractInfo));
}
@Override
public boolean batchImport(MultipartFile file, Account account) {
XSSFWorkbook workbook = null;
try {
InputStream is = file.getInputStream();
workbook = new XSSFWorkbook(is);
} catch (IOException e) {
RestAssert.fail("文件读取失败");
}
int sheetCount = workbook.getNumberOfSheets();
for (int i = 0; i < sheetCount; i++) {
XSSFSheet sheet = workbook.getSheetAt(i);
if (null == sheet) {
continue;
}
// 固定开始行和开始列
int beginRowNum = 5, beginColumnNum = 1;
// 最后一行
int lastRowNum = sheet.getLastRowNum();
if (lastRowNum < beginRowNum) {
RestAssert.fail("导入文件中没有有效数据");
}
short lastCellNum = sheet.getRow(5).getLastCellNum();
ArrayList<ContractInfo> contractInfos = new ArrayList<>();
for (int j = 5; j <= lastRowNum; j++) {
XSSFRow row = sheet.getRow(j);
ContractInfo info = new ContractInfo();
for (int k = beginColumnNum; k < lastCellNum; k++) {
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("合同编号")) {
info.setCode(row.getCell(k).getStringCellValue());
continue;
}
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("订单号")) {
info.setOrderNo(row.getCell(k).getStringCellValue());
continue;
}
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("供货单位")) {
info.setSupplier(row.getCell(k).getStringCellValue());
continue;
}
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("物资编码")) {
info.setMaterialCode(row.getCell(k).getStringCellValue());
continue;
}
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("物资名称")) {
info.setMaterialName(row.getCell(k).getStringCellValue());
continue;
}
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("规格型号")) {
info.setSpec(row.getCell(k).getStringCellValue());
continue;
}
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("单位")) {
info.setUnit(row.getCell(k).getStringCellValue());
continue;
}
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("合同数量")) {
info.setContractQuantity(row.getCell(k).getNumericCellValue() + "");
continue;
}
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("货位")) {
info.setDetailPlace(row.getCell(k).getStringCellValue());
continue;
}
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("到货时间")) {
String time = row.getCell(k).getStringCellValue();
SimpleDateFormat dateFormat = new SimpleDateFormat("yyyy.MM.dd");
Date date = null;
try {
date = dateFormat.parse(time);
} catch (ParseException e) {
RestAssert.fail("解析时间出错");
}
info.setArrivalTime(date);
continue;
}
if (sheet.getRow(beginRowNum - 1).getCell(k).getStringCellValue().equals("采购员")) {
info.setBuyer(row.getCell(k).getStringCellValue());
}
}
contractInfos.add(info);
}
this.saveBatch(contractInfos);
}
return true;
}
}
......@@ -3,18 +3,23 @@ package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.alibaba.fastjson.JSONArray;
import com.alibaba.fastjson.JSONObject;
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.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.commons.exception.PatznException;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.dto.ContractOkOrganizerDTO;
import com.patzn.cloud.service.hmhj.entity.ContractOkOrganizer;
import com.patzn.cloud.service.lims.hmhj.mapper.ContractOkOrganizerMapper;
import com.patzn.cloud.service.lims.hmhj.service.IContractOkOrganizerService;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import java.util.List;
import java.util.Map;
import java.util.stream.Collectors;
/**
* 服务实现类
......@@ -45,6 +50,11 @@ public class ContractOkOrganizerServiceImpl extends BaseServiceImpl<ContractOkOr
RestAssert.fail(!jsonObject.containsKey("id"), "数据不包含ID信息");
Long contractSampleId = Long.parseLong(jsonObject.get("id").toString());
List<ContractOkOrganizer> contractOkOrganizerList = JSONArray.parseArray(jsonObject.getString("infoList"), ContractOkOrganizer.class);
contractOkOrganizerList.forEach(t -> {
RestAssert.fail(null == t.getUserId(), "验收专家不能为空");
});
List<Long> userIds = contractOkOrganizerList.stream().map(ContractOkOrganizer::getUserId).collect(Collectors.toList());
RestAssert.fail(userIds.size() != contractOkOrganizerList.size(),"验收专家不能重复!");
contractOkOrganizerList.stream().forEach(t -> t.setContractSampleId(contractSampleId));
return saveOrUpdateBatch(contractOkOrganizerList);
} catch (Exception e) {
......@@ -54,4 +64,42 @@ public class ContractOkOrganizerServiceImpl extends BaseServiceImpl<ContractOkOr
return false;
}
@Override
public boolean saveOrganizerBatch(String organizerJson) {
ContractOkOrganizerDTO organizerDTO = null;
try {
organizerDTO = JSONObject.parseObject(organizerJson, ContractOkOrganizerDTO.class);
} catch (Exception e) {
throw new PatznException("信息转换失败");
}
RestAssert.fail(null == organizerDTO.getContractIds(), "合同信息为空");
RestAssert.fail(CollectionUtils.isEmpty(organizerDTO.getContractOkOrganizerList()), "验收专家信息为空");
List<ContractOkOrganizer> contractOkOrganizerList = organizerDTO.getContractOkOrganizerList();
contractOkOrganizerList.forEach(t -> {
RestAssert.fail(null == t.getUserId(), "验收专家不能为空");
});
List<Long> userIdList = contractOkOrganizerList.stream().map(ContractOkOrganizer::getUserId).distinct().collect(Collectors.toList());
RestAssert.fail(userIdList.size() != contractOkOrganizerList.size(), "验收专家不能重复");
for (Long contractId : organizerDTO.getContractIds()) {
contractOkOrganizerList.forEach(t -> {
t.setContractSampleId(contractId);
});
List<ContractOkOrganizer> organizerList = list(Condition.create().eq("contract_sample_id", contractId));
if (CollectionUtils.isNotEmpty(organizerList)) {
Map<Long, Long> userMap = organizerList.stream().collect(Collectors.toMap(ContractOkOrganizer::getUserId, ContractOkOrganizer::getId));
contractOkOrganizerList.forEach(t -> {
if (userMap.containsKey(t.getUserId())) {
t.setId(userMap.get(t.getUserId()));
}
});
}
saveOrUpdateBatch(contractOkOrganizerList);
contractOkOrganizerList.forEach(t -> t.setUserId(null).setId(null));
}
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.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.toolkit.DateUtils;
import com.patzn.cloud.commons.toolkit.MapMergeUtils;
import com.patzn.cloud.service.hmhj.entity.EntrustRecord;
import com.patzn.cloud.service.hmhj.entity.EntrustReport;
import com.patzn.cloud.service.hmhj.enums.EntrustReportStatusEnum;
import com.patzn.cloud.service.lims.frame.entity.LmsFrameCheckPlan;
import com.patzn.cloud.service.lims.frame.entity.LmsFrameCheckReport;
import com.patzn.cloud.service.lims.frame.enums.ManageCheckEnum;
import com.patzn.cloud.service.lims.hmhj.mapper.EntrustRecordMapper;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustRecordService;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustReportService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import java.util.ArrayList;
import java.util.Arrays;
import java.util.Collection;
import java.util.List;
import java.text.NumberFormat;
import java.text.SimpleDateFormat;
import java.util.*;
import java.util.stream.Collectors;
/**
* 委托操作日志表 服务实现类
......@@ -26,6 +36,9 @@ import java.util.List;
@Service
public class EntrustRecordServiceImpl extends BaseServiceImpl<EntrustRecordMapper, EntrustRecord> implements IEntrustRecordService {
@Autowired
private IEntrustReportService entrustReportService;
@Override
public Page<EntrustRecord> page(Page<EntrustRecord> page, EntrustRecord entrustRecord) {
Wrapper wrapper = new EntityWrapper<>(entrustRecord);
......@@ -64,4 +77,104 @@ public class EntrustRecordServiceImpl extends BaseServiceImpl<EntrustRecordMappe
saveBatch(saveRecord);
}
}
@Override
public Map<String, String> monthStatistic(Date start, Date end) {
String mistakeRateKey = "mistakeRate";//报告出错率的key
String inTimeRateKey = "inTimeRate";//报告及时率的key
String dealRateKey = "dealRate";//客户投诉处理率的key
String satisfactionRateKey = "satisfactionRate";//客户满意率的key
Map<String, String> resMap = new HashMap<>();
if (start.after(end)) {
return null;
}
/* 得到start-end时间段内所有的报告数量,然后分别得到各月的 */
SimpleDateFormat format = new SimpleDateFormat("yyyy-MM");
Date startYM = DateUtils.toDate(format.format(start));
Date endYM = DateUtils.toDate(format.format(end));
List<EntrustReport> reports = entrustReportService.list(Condition.create()
.between("report_make_time", startYM, endYM)
.ne("status", EntrustReportStatusEnum.MAKING));
/* 报告总量 */
int total = reports.size();
/* 退回过的报告数 */
Integer rollBackCount = this.selectRollBackCount(startYM, endYM);
/* 及时的报告数 */
Long inTimeCount = this.selectInTimeCount(startYM, endYM);
/* 计算百分比 */
String mistakeRate = calculatePercent(rollBackCount, total, 2);
String inTimeRate = calculatePercent((int) (long) inTimeCount, total, 2);
String dealRate = "100%";
String satisfactionRate = "100%";
resMap.put(mistakeRateKey,mistakeRate);
resMap.put(inTimeRateKey,inTimeRate);
resMap.put(dealRateKey,dealRate);
resMap.put(satisfactionRateKey,satisfactionRate);
return resMap;
}
/* 查询被退回过的报告数 */
@Override
public Integer selectRollBackCount(Date startYM, Date endYM) {
return baseMapper.selectRollBackCount(startYM,endYM).size();
}
@Override
public Long selectInTimeCount(Date startYM, Date endYM) {
return baseMapper.selectInTimeCount(startYM,endYM);
}
private Map<String, Map<String, Date>> getMonthStartDayEndDayMap(Date start, Date end) {
String ym = "yyyy-MM";
String ymd = "yyyy-MM-dd";
String ymdt = "yyyy-MM-dd HH:mm:ss";
String startTime = " 00:00:00";
String endTime = " 23:59:59";
String startKey = "begin";
String endKey = "end";
String startStr = DateUtils.toStrByFormatStr(start, ym);
String endStr = DateUtils.toStrByFormatStr(end, ym);
Map<String, Map<String, Date>> map = new HashMap<>();
Calendar cStart = Calendar.getInstance();
cStart.setTime(DateUtils.toDateByFormatStr(startStr,ym));
Calendar cEnd = Calendar.getInstance();
cEnd.setTime(DateUtils.toDateByFormatStr(endStr,ym));
cEnd.add(Calendar.MONTH,1); // 加一个月,不超过这个月
while (cStart.before(cEnd)) {
String key = DateUtils.toStrByFormatStr(cStart.getTime(),ym);
cStart.set(Calendar.DAY_OF_MONTH,1);//第一天
String s = DateUtils.toStrByFormatStr(cStart.getTime(),ymd) + startTime;
cStart.set(Calendar.DAY_OF_MONTH,cStart.getActualMaximum(Calendar.DAY_OF_MONTH));//最后一天
String e = DateUtils.toStrByFormatStr(cStart.getTime(),ymd) + endTime;
HashMap<String, Date> SEMap = new HashMap<>();
SEMap.put(startKey,DateUtils.toDateByFormatStr(s,ymdt));
SEMap.put(endKey,DateUtils.toDateByFormatStr(e,ymdt));
map.put(key,SEMap);
cStart.add(Calendar.MONTH,1);
}
return map;
}
/**
*
* @param numerator 分子
* @param denominator 分母
* @param digit 百分比的小数位数 设置精确到小数点后几位
* @return
*/
private String calculatePercent(int numerator,int denominator,int digit) {
NumberFormat numberFormat = NumberFormat.getInstance();
// 设置精确到小数点后几位
numberFormat.setMaximumFractionDigits(digit);
return numberFormat.format((float) numerator / (float) denominator * 100);
}
}
package com.patzn.cloud.service.lims.hmhj.service.impl;
import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.commons.controller.Account;
import com.patzn.cloud.service.hmhj.entity.EntrustReportTemplateConfig;
import com.patzn.cloud.service.lims.hmhj.mapper.EntrustReportTemplateConfigMapper;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustReportTemplateConfigService;
......@@ -9,6 +11,7 @@ import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import java.util.Date;
import java.util.List;
/**
......@@ -23,7 +26,7 @@ public class EntrustReportTemplateConfigServiceImpl extends BaseServiceImpl<Entr
@Override
public Page<EntrustReportTemplateConfig> page(Page<EntrustReportTemplateConfig> page, EntrustReportTemplateConfig entrustReportTemplateConfig) {
Wrapper wrapper = new EntityWrapper<>(entrustReportTemplateConfig);
wrapper.orderBy("ctime",true);
return this.page(page, wrapper);
}
......@@ -31,4 +34,11 @@ public class EntrustReportTemplateConfigServiceImpl extends BaseServiceImpl<Entr
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
@Override
public boolean updateConfigById(EntrustReportTemplateConfig entrustReportTemplateConfig, Account account) {
RestAssert.fail(null == entrustReportTemplateConfig.getId(),"配置项编号为空");
entrustReportTemplateConfig.setLtime(new Date()).setLid(account.getUserId());
return baseMapper.updateConfigById(entrustReportTemplateConfig);
}
}
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.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.oss.starter.OssClient;
import com.patzn.cloud.oss.starter.OssFileResult;
import com.patzn.cloud.service.hmhj.entity.EntrustReportTemplate;
import com.patzn.cloud.service.lims.hmhj.mapper.EntrustReportTemplateMapper;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustReportTemplateService;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import org.springframework.web.multipart.MultipartFile;
import java.util.Date;
import java.util.List;
/**
......@@ -37,6 +41,7 @@ public class EntrustReportTemplateServiceImpl extends BaseServiceImpl<EntrustRep
if (StringUtils.isNotBlank(name)) {
wrapper.like("name", name);
}
wrapper.orderBy("class_type").orderBy("name");
return this.page(page, wrapper);
}
......@@ -66,4 +71,17 @@ public class EntrustReportTemplateServiceImpl extends BaseServiceImpl<EntrustRep
attachment.setVersionId(result.getVersionId());
return super.save(attachment);
}
@Override
public boolean updateTemplateById(EntrustReportTemplate entrustReportTemplate, Account account) {
RestAssert.fail(null == entrustReportTemplate.getId(), "报告模板ID为空");
entrustReportTemplate.setLid(account.getUserId()).setLtime(new Date());
return baseMapper.updateTemplateById(entrustReportTemplate);
}
@Override
public EntrustReportTemplate getByClassType(String classType) {
List<EntrustReportTemplate> list = list(Condition.create().eq("class_type", classType));
return CollectionUtils.isEmpty(list) ? null : list.get(0);
}
}
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.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.service.hmhj.entity.EntrustSampleBackup;
import com.patzn.cloud.service.hmhj.enums.EntrustSampleBackupStatusEnum;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleBackupVO;
import com.patzn.cloud.service.lims.hmhj.mapper.EntrustSampleBackupMapper;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustSampleBackupService;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustSampleService;
import org.apache.commons.lang3.ArrayUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import org.springframework.transaction.annotation.Transactional;
import java.util.List;
......@@ -27,10 +30,12 @@ import java.util.List;
@Service
public class EntrustSampleBackupServiceImpl extends BaseServiceImpl<EntrustSampleBackupMapper, EntrustSampleBackup> implements IEntrustSampleBackupService {
@Autowired
private IEntrustSampleService entrustSampleService;
@Override
public Page<EntrustSampleBackup> page(Page<EntrustSampleBackup> page, EntrustSampleBackup entrustSampleBackup) {
Wrapper wrapper = new EntityWrapper<>(entrustSampleBackup);
return this.page(page, wrapper);
}
......@@ -42,31 +47,44 @@ public class EntrustSampleBackupServiceImpl extends BaseServiceImpl<EntrustSampl
@Transactional(rollbackFor = Exception.class)
@Override
public boolean handleOk(Long[] ids, Account account) {
RestAssert.fail(ArrayUtils.isEmpty(ids),"请选择完成处置的样品!");
RestAssert.fail(ArrayUtils.isEmpty(ids), "请选择完成处置的样品!");
EntrustSampleBackup backup = new EntrustSampleBackup();
backup.setStatus(EntrustSampleBackupStatusEnum.HANDLE_OK);
backup.setProgress(EntrustSampleBackupStatusEnum.HANDLE_OK);
return super.update(backup,Condition.create().in("id",ids));
return super.update(backup, Condition.create().in("id", ids));
}
@Override
public Page<EntrustSampleBackupVO> pageVO(Page<EntrustSampleBackupVO> page, EntrustSampleBackupVO entrustSampleBackup) {
return page.setRecords(baseMapper.selectVOList(page,entrustSampleBackup));
return page.setRecords(baseMapper.selectVOList(page, entrustSampleBackup));
}
@Override
public Page<EntrustSampleBackupVO> pageCO(Page<EntrustSampleBackupVO> page, EntrustSampleBackupVO entrustSampleBackup) {
return page.setRecords(baseMapper.selectCOList(page, entrustSampleBackup));
}
@Override
public boolean submitToHandle(Long[] ids, Account account) {
RestAssert.fail(ArrayUtils.isEmpty(ids),"请选择提交处置的样品!");
RestAssert.fail(ArrayUtils.isEmpty(ids), "请选择提交处置的样品!");
EntrustSampleBackup backup = new EntrustSampleBackup();
backup.setStatus(EntrustSampleBackupStatusEnum.HANDLE);
backup.setProgress(EntrustSampleBackupStatusEnum.HANDLE);
return super.update(backup,Condition.create().in("id",ids));
return super.update(backup, Condition.create().in("id", ids));
}
@Override
public Page<EntrustSampleBackupVO> pageManage(Page<EntrustSampleBackupVO> page, EntrustSampleBackupVO entrustSampleBackup) {
return page.setRecords(baseMapper.selectManageList(page,entrustSampleBackup));
return page.setRecords(baseMapper.selectManageList(page, entrustSampleBackup));
}
@Override
public void updateEntrustId(Long entrustId, List<Long> contractSampleIds) {
if (null == entrustId || CollectionUtils.isEmpty(contractSampleIds)) {
return;
}
update(new EntrustSampleBackup().setEntrustId(entrustId), Condition.create().in("contract_id", contractSampleIds).isNull("entrust_id"));
}
}
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.baomidou.mybatisplus.toolkit.CollectionUtils;
import com.patzn.cloud.commons.api.RestAssert;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.hmhj.entity.EntrustSampleItem;
import com.patzn.cloud.service.hmhj.entity.EntrustSampleItemIndex;
import com.patzn.cloud.service.hmhj.vo.EntrustSampleItemIndexVO;
import com.patzn.cloud.service.lims.common.BeanUtils;
import com.patzn.cloud.service.lims.hmhj.mapper.EntrustSampleItemIndexMapper;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustSampleItemIndexService;
import com.patzn.cloud.commons.service.impl.BaseServiceImpl;
import com.patzn.cloud.service.lims.hmhj.service.IEntrustSampleItemService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import com.baomidou.mybatisplus.mapper.EntityWrapper;
import com.baomidou.mybatisplus.mapper.Wrapper;
import com.baomidou.mybatisplus.plugins.Page;
import java.util.List;
import java.util.stream.Collectors;
......@@ -41,6 +41,11 @@ public class EntrustSampleItemIndexServiceImpl extends BaseServiceImpl<EntrustSa
}
@Override
public Page<EntrustSampleItemIndexVO> pageIndexWithItem(Page<EntrustSampleItemIndexVO> page, EntrustSampleItemIndexVO entrustSampleItemIndexVO) {
return page.setRecords(baseMapper.selectIndexWithItem(page, entrustSampleItemIndexVO));
}
@Override
public boolean removeByIds(List<Long> ids) {
return baseMapper.deleteBatchIds(ids) > 0;
}
......
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