委托管理后台接口已完成

parent 1fbe4ad2
......@@ -114,7 +114,17 @@
<artifactId>poi</artifactId>
<version>3.17</version>
</dependency>
<!-- https://mvnrepository.com/artifact/net.oschina.zcx7878/fastdfs-client-java -->
<dependency>
<groupId>net.oschina.zcx7878</groupId>
<artifactId>fastdfs-client-java</artifactId>
<version>1.27.0.0</version>
</dependency>
<dependency>
<groupId>commons-io</groupId>
<artifactId>commons-io</artifactId>
<version>2.6</version>
</dependency>
</dependencies>
<build>
......
package cn.wise.sc.cement.business.controller;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.LoginUser;
import cn.wise.sc.cement.business.service.ISysUserService;
import cn.wise.sc.cement.business.util.dfs.FastDFSUtils;
import cn.wise.sc.cement.business.util.dfs.FileTypeUtil;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import org.springframework.web.multipart.MultipartFile;
import org.springframework.web.multipart.MultipartHttpServletRequest;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import java.io.OutputStream;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 附件管理Controller
* @author ztw
*/
@Api(tags = "附件管理")
@RestController
@RequestMapping("/enclosure")
public class EntityEnclosureController {
private static final Logger logger = LoggerFactory.getLogger("adminLogger");
@Autowired
protected HttpServletResponse response;
@Autowired
protected HttpServletRequest request;
@Autowired
private ISysUserService userService;
@ApiOperation(value = "单个文件上传")
@PostMapping("/fileUpLoad")
public BaseResponse fileUpLoad(MultipartFile file){
Map<String,Object> map = new HashMap<>();
String filePath = null;
String fileName = null;
String extName = null;
try {
LoginUser loginUser = userService.getLoginUser();
if(loginUser != null){
filePath = FastDFSUtils.uploadPic(file.getBytes(),file.getOriginalFilename(),file.getSize());
fileName = file.getOriginalFilename().substring(0,file.getOriginalFilename().lastIndexOf("."));
extName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
}else {
return BaseResponse.errorMsg("该账号已在其他地方登陆");
}
String picUrl = filePath;
map.put("fileUrl",picUrl);
map.put("fileName",fileName);
map.put("extName",extName);
return BaseResponse.okData(map);
}catch (Exception e){
logger.error(e.toString());
}
return BaseResponse.errorMsg("失败");
}
@ApiOperation(value = "单个图片上传")
@PostMapping("/imgUpLoad")
public BaseResponse imgUpLoad(MultipartFile file){
Map<String,Object> map = new HashMap<>();
String filePath = null;
String fileName = null;
String extName = null;
try {
LoginUser loginUser = userService.getLoginUser();
if(loginUser != null){
if(!FileTypeUtil.isImageByExtension(file.getOriginalFilename())){
return BaseResponse.errorMsg("请上传有效图片");
}
filePath = FastDFSUtils.uploadPic(file.getBytes(),file.getOriginalFilename(),file.getSize());
fileName = file.getOriginalFilename().substring(0,file.getOriginalFilename().lastIndexOf("."));
extName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
}else {
return BaseResponse.errorMsg("该账号已在其他地方登陆");
}
String picUrl = filePath;
map.put("fileUrl",picUrl);
map.put("fileName",fileName);
map.put("extName",extName);
return BaseResponse.okData(map);
}catch (Exception e){
logger.error(e.toString());
}
return BaseResponse.errorMsg("失败");
}
@ApiOperation(value = "多个文件上传")
@PostMapping("/filesUpLoad")
public BaseResponse filesUpLoad(HttpServletRequest request){
Map<String,Object> map = new HashMap<>();
List<MultipartFile> files = null;
String filePath = null;
String fileName = null;
String extName = null;
List<Map<String,Object>> filePathList = null;
try {
filePathList = new ArrayList<>();
files = ((MultipartHttpServletRequest)request).getFiles("files");
LoginUser loginUser = userService.getLoginUser();
if(loginUser != null){
if(files != null && files.size() > 0) {
for (MultipartFile file : files) {
Map<String,Object> mapSub = new HashMap<>();
filePath = FastDFSUtils.uploadPic(file.getBytes(), file.getOriginalFilename(), file.getSize());
fileName = file.getOriginalFilename().substring(0,file.getOriginalFilename().lastIndexOf("."));
extName = file.getOriginalFilename().substring(file.getOriginalFilename().lastIndexOf("."));
String picUrl = filePath;
mapSub.put("fileUrl",picUrl);
mapSub.put("fileName",fileName);
mapSub.put("extName",extName);
filePathList.add(mapSub);
}
}else {
return BaseResponse.errorMsg("没有文件");
}
}else {
return BaseResponse.errorMsg("该账号已在其他地方登陆");
}
return BaseResponse.okData(map);
}catch (Exception e){
logger.error(e.toString());
}
return BaseResponse.errorMsg("失败");
}
@ApiOperation(value = "单个文件下载")
@PostMapping("/fileDownload")
public BaseResponse fileDownload(String fileUrl,String fileName,String extName){
OutputStream out = null;
try {
response.setHeader("Content-Disposition", "attachment;filename="+fileName+extName);
response.setContentType("application/force-download");
out = response.getOutputStream();
LoginUser loginUser = userService.getLoginUser();
if(loginUser != null){
fileUrl = fileUrl.substring(fileUrl.indexOf("g"));
byte[] by = FastDFSUtils.fileDownload(fileUrl);
out.write(by);
out.close();
}else {
return BaseResponse.errorMsg("该账号已在其他地方登陆");
}
return BaseResponse.okMsg("成功");
}catch (Exception e){
logger.error(e.toString());
}
return BaseResponse.errorMsg("失败");
}
@ApiOperation(value = "app扫描二维码下载")
@GetMapping("/appDownload")
public BaseResponse appDownload(String fileUrl){
Map<String,Object> map = new HashMap<>();
OutputStream out = null;
try {
response.setHeader("Content-Disposition", "attachment;filename=app-release.apk");
response.setContentType("application/force-download");
out = response.getOutputStream();
fileUrl = fileUrl.substring(fileUrl.indexOf("g"));
byte[] by = FastDFSUtils.fileDownload(fileUrl);
out.write(by);
out.close();
return BaseResponse.okMsg("成功");
}catch (Exception e){
logger.error(e.toString());
}
return BaseResponse.errorMsg("失败");
}
@ApiOperation(value = "删除相关文件")
@PostMapping("/fileDeleted")
public BaseResponse fileDeleted(String[] filePaths){
Map<String,Object> map = new HashMap<>();
String filePath = null;
boolean rel = false;
try {
LoginUser loginUser = userService.getLoginUser();
if(loginUser != null){
for(String url : filePaths){
/*filePath = url.substring(0,url.indexOf("g"));*/
rel = FastDFSUtils.deletePic(url);
if(!rel){
return BaseResponse.errorMsg("删除失败");
}
}
}else {
return BaseResponse.errorMsg("该账号已在其他地方登陆");
}
return BaseResponse.okMsg("成功");
}catch (Exception e){
logger.error(e.toString());
}
return BaseResponse.errorMsg("失败");
}
}
package cn.wise.sc.cement.business.controller;
import cn.wise.sc.cement.business.entity.Project;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.model.query.*;
import cn.wise.sc.cement.business.model.vo.EntrustVo;
import cn.wise.sc.cement.business.service.IEntrustService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
/**
* <p>
* 前端控制器
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Api(tags="委托管理")
@RestController
@RequestMapping("/business/entrust")
public class EntrustController {
private static final Logger log = LoggerFactory.getLogger("EntrustController");
@Autowired
private IEntrustService entrustService;
@ApiOperation(value = "委托分页列表")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "startDate", value = "开始日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "endDate", value = "结束日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "status", value = "状态(0未审批,1未通过,2已通过,3样品处理,4派发)", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "clientId", value = "委托单位id", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "projectName", value = "项目名称", paramType = "query", dataType = "String")
})
@GetMapping("/getPage")
public BaseResponse getPage(PageQuery pageQuery, String startDate, String endDate, Integer status, Integer clientId, String projectName) {
try {
return entrustService.getPage(pageQuery, startDate, endDate, status, clientId, projectName);
} catch (Exception e) {
log.debug("委托分页列表{}", e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "新增委托")
@PostMapping("/create")
public BaseResponse create(@RequestBody EntrustQuery query) {
try {
return entrustService.create(query);
}catch (Exception e) {
log.debug("新增委托{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "委托详情")
@GetMapping("/{id}")
public BaseResponse getDtail(@PathVariable Integer id){
try {
return entrustService.getDtail(id);
}catch (Exception e){
log.debug("委托详情{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "委托评审")
@PostMapping("/approval")
public BaseResponse approval(@RequestBody ApprovalQuery query) {
try {
return entrustService.approval(query);
}catch (Exception e) {
log.debug("委托评审{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "发送样品处理任务")
@PostMapping("/handle")
public BaseResponse handle(@RequestBody HandleQuery query) {
try {
return entrustService.handle(query);
}catch (Exception e) {
log.debug("发送样品处理任务{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "样品处理分页列表")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "startDate", value = "开始日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "endDate", value = "结束日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "status", value = "状态(0未审批,1未通过,2已通过,3样品处理,4派发)", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "clientId", value = "委托单位id", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "projectName", value = "项目名称", paramType = "query", dataType = "String")
})
@GetMapping("/getSampleHandlePage")
public BaseResponse getSampleHandlePage(PageQuery pageQuery, String startDate, String endDate, Integer status, Integer clientId, String projectName) {
try {
return entrustService.getSampleHandlePage(pageQuery, startDate, endDate, status, clientId, projectName);
} catch (Exception e) {
log.debug("样品处理分页列表{}", e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "接受样品处理任务")
@PostMapping("/acceptHandle")
public BaseResponse acceptHandle(Integer id) {
try {
return entrustService.acceptHandle(id);
}catch (Exception e) {
log.debug("接受样品处理任务{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "完成样品处理任务")
@PostMapping("/finishHandle")
public BaseResponse finishHandle(Integer id) {
try {
return entrustService.finishHandle(id);
}catch (Exception e) {
log.debug("完成样品处理任务{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "派发检测项目任务")
@PostMapping("/distribution")
public BaseResponse distribution(@RequestBody DistributionQuery query) {
try {
return entrustService.distribution(query);
}catch (Exception e) {
log.debug("派发检测项目任务{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "派发分页列表")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "startDate", value = "开始日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "endDate", value = "结束日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "status", value = "状态(0未审批,1未通过,2已通过,3样品处理,4派发)", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "clientId", value = "委托单位id", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "projectName", value = "项目名称", paramType = "query", dataType = "String")
})
@GetMapping("/getSampleDistributionPage")
public BaseResponse getSampleDistributionPage(PageQuery pageQuery, String startDate, String endDate, Integer status, Integer clientId, String projectName) {
try {
return entrustService.getSampleDistributionPage(pageQuery, startDate, endDate, status, clientId, projectName);
} catch (Exception e) {
log.debug("派发分页列表{}", e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "接受检测项目任务")
@PostMapping("/acceptDistribution")
public BaseResponse acceptDistribution(Integer id) {
try {
return entrustService.acceptDistribution(id);
}catch (Exception e) {
log.debug("接受检测项目任务{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "完成检测项目任务")
@PostMapping("/finishDistribution")
public BaseResponse finishDistribution(Integer id) {
try {
return entrustService.finishDistribution(id);
}catch (Exception e) {
log.debug("完成检测项目任务{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "数据校核")
@PostMapping("/check")
public BaseResponse check(CheckQuery query) {
try {
return entrustService.check(query);
}catch (Exception e) {
log.debug("数据校核{}",e);
}
return BaseResponse.errorMsg("失败!");
}
}
......@@ -79,13 +79,13 @@ public class MethodController {
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "获取所有检测方法信息")
@ApiOperation(value = "检测方法列表")
@GetMapping("/getList")
public BaseResponse getList() {
try {
return methodService.getList();
} catch (Exception e) {
log.debug("获取所有检测方法信息{}", e);
log.debug("检测方法列表{}", e);
}
return BaseResponse.errorMsg("失败!");
}
......@@ -120,7 +120,7 @@ public class MethodController {
try {
return methodService.delete(id);
}catch (Exception e){
log.debug("更新检测方法{}",e);
log.debug("删除检测方法{}",e);
}
return BaseResponse.errorMsg("失败!");
}
......
......@@ -3,6 +3,7 @@ package cn.wise.sc.cement.business.controller;
import cn.wise.sc.cement.business.entity.SysGroup;
import cn.wise.sc.cement.business.entity.SysRole;
import cn.wise.sc.cement.business.entity.SysUser;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.model.query.RoleQuery;
......@@ -16,6 +17,8 @@ import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* <p>
* 前端控制器
......@@ -82,6 +85,29 @@ public class SysGroupController {
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "工作组列表")
@GetMapping("/getList")
public BaseResponse getById(){
try {
List<SysGroup> list = groupService.list();
return BaseResponse.okData(list);
}catch (Exception e){
log.debug("工作组列表{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "删除工作组")
@PostMapping("/delete/{id}")
public BaseResponse delete(@PathVariable Integer id){
try {
groupService.removeById(id);
return BaseResponse.okData("删除成功");
}catch (Exception e){
log.debug("更新检测方法{}",e);
}
return BaseResponse.errorMsg("失败!");
}
......
package cn.wise.sc.cement.business.controller;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.service.ISysLogsService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
/**
* <p>
* 前端控制器
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Api(tags="系统管理-日志管理")
@RestController
@RequestMapping("/business/sys-logs")
public class SysLogsController {
private static final Logger log = LoggerFactory.getLogger("SysLogsController");
@Autowired
private ISysLogsService logsService;
@ApiOperation(value = "日志分页列表")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "startDate", value = "开始日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "endDate", value = "结束日期", paramType = "query", dataType = "String"),
@ApiImplicitParam(name = "objType", value = "日志类型(0系统日志, 1委托管理)", paramType = "query", dataType = "Integer"),
@ApiImplicitParam(name = "objId", value = "对象表id", paramType = "query", dataType = "Integer")
})
@GetMapping("/getPage")
public BaseResponse getPage(PageQuery pageQuery, String startDate, String endDate, Integer objType, Integer objId) {
try {
return logsService.getPage(pageQuery, startDate, endDate, objType, objId);
} catch (Exception e) {
log.debug("日志分页列表{}", e);
}
return BaseResponse.errorMsg("失败!");
}
}
package cn.wise.sc.cement.business.controller;
import cn.wise.sc.cement.business.entity.SysGroup;
import cn.wise.sc.cement.business.entity.SysPost;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.model.query.PostQuery;
import cn.wise.sc.cement.business.service.ISysPostService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiImplicitParam;
import io.swagger.annotations.ApiImplicitParams;
import io.swagger.annotations.ApiOperation;
import org.slf4j.Logger;
import org.slf4j.LoggerFactory;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/**
* <p>
* 前端控制器
* </p>
*
* @author ztw
* @since 2020-08-25
*/
@Api(tags="系统管理-职务管理")
@RestController
@RequestMapping("/business/sys-post")
public class SysPostController {
private static final Logger log = LoggerFactory.getLogger("SysPostController");
@Autowired
private ISysPostService postService;
@ApiOperation(value = "职务分页列表")
@ApiImplicitParams(value = {
@ApiImplicitParam(name = "name", value = "职务名称", paramType = "query", dataType = "String")
})
@GetMapping("/getPage")
public BaseResponse getPage(PageQuery pageQuery, String name) {
try {
return postService.getPage(pageQuery, name);
} catch (Exception e) {
log.debug("职务分页列表{}", e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "新增职务")
@PostMapping("/create")
public BaseResponse create(@RequestBody PostQuery query) {
try {
return postService.create(query);
}catch (Exception e) {
log.debug("新增职务{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "修改职务")
@PostMapping("/update")
public BaseResponse update(@RequestBody PostQuery query) {
try {
return postService.update(query);
}catch (Exception e) {
log.debug("修改职务{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "职务详情")
@GetMapping("/{id}")
public BaseResponse getById(@PathVariable Integer id){
try {
SysPost post = postService.getById(id);
if(post == null){
return BaseResponse.errorMsg("信息错误!");
}
return BaseResponse.okData(post);
}catch (Exception e){
log.debug("职务详情{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "职务列表")
@GetMapping("/getList")
public BaseResponse getById(){
try {
List<SysPost> list = postService.list();
return BaseResponse.okData(list);
}catch (Exception e){
log.debug("职务列表{}",e);
}
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "删除职务")
@PostMapping("/delete/{id}")
public BaseResponse delete(@PathVariable Integer id){
try {
postService.removeById(id);
return BaseResponse.okData("删除成功");
}catch (Exception e){
log.debug("删除职务{}",e);
}
return BaseResponse.errorMsg("失败!");
}
}
......@@ -82,13 +82,13 @@ public class TeamController {
return BaseResponse.errorMsg("失败!");
}
@ApiOperation(value = "获取所有启动的检测项信息")
@ApiOperation(value = "检测项列表")
@GetMapping("/getList")
public BaseResponse getList() {
try {
return teamService.getList();
} catch (Exception e) {
log.debug("获取所有启动的检测项信息{}", e);
log.debug("检测项列表{}", e);
}
return BaseResponse.errorMsg("失败!");
}
......
......@@ -5,6 +5,7 @@ import cn.wise.sc.cement.business.model.query.ClientQuery;
import cn.wise.sc.cement.business.model.vo.ClientVo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
......@@ -30,30 +31,20 @@ public class Client extends BaseEntity implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 单位名
*/
@ApiModelProperty("委托单位名")
private String name;
/**
* 负责人
*/
@ApiModelProperty("负责人")
private String principal;
/**
* 负责人电话
*/
@ApiModelProperty("负责人电话")
private String principalPhone;
/**
* 所在地区:xx省xx县xx
*/
@ApiModelProperty("所在地区:xx省xx县xx")
private String region;
/**
* 状态 0:禁用 1:激活
*/
private Boolean status;
@ApiModelProperty("状态 0:禁用 1:激活")
private Integer status;
......
package cn.wise.sc.cement.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class Entrust implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("委托编号")
private String entrustCode;
@ApiModelProperty("项目id")
private Integer projectId;
@ApiModelProperty("项目编号")
private String projectCode;
@ApiModelProperty("委托单位id")
private Integer clientId;
@ApiModelProperty("送样人")
private String sendName;
@ApiModelProperty("送样人电话")
private String sendPhone;
@ApiModelProperty("委托日期")
private LocalDate entrustDate;
@ApiModelProperty("拟定完成日期")
private LocalDate finishDate;
@ApiModelProperty("受理人id")
private Integer userId;
@ApiModelProperty("样品数量")
private Integer sampleNum;
@ApiModelProperty("(1加急,0不加急)")
private Integer isUrgent;
@ApiModelProperty("剩余样品处理方法(0,取回,1由本所统一处置)")
private Integer handleMethod;
@ApiModelProperty("状态(0未审批,1已通过,2未通过,3样品处理,4派发)")
private Integer status;
@ApiModelProperty("项目类型(常规项目,科研项目,质量控制项目)")
private String projectType;
@ApiModelProperty("(0删除,1正常)")
private Integer isDelete;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("修改时间")
private LocalDateTime updateTime;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class EntrustApproval implements Serializable {
private static final long serialVersionUID=1L;
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("委托表id")
private Integer entrustId;
@ApiModelProperty("审批人id")
private Integer userId;
@ApiModelProperty("审批意见")
private String opinion;
@ApiModelProperty("审批结果(1通过,2驳回)")
private Integer status;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
}
......@@ -6,6 +6,9 @@ import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
......@@ -32,35 +35,34 @@ public class Method implements Serializable {
return newObj;
}
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 检测标准名
*/
@ApiModelProperty("检测标准名")
private String name;
/**
* 标准号
*/
@ApiModelProperty("标准号")
private String standard;
/**
* 编号
*/
@ApiModelProperty("编号")
private String number;
/**
* 实施日期
*/
@ApiModelProperty("实施日期")
private LocalDate doDate;
/**
* 更新日期
*/
@ApiModelProperty("更新日期")
private LocalDate upDate;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
}
......@@ -5,6 +5,7 @@ import cn.wise.sc.cement.business.model.query.ProjectQuery;
import cn.wise.sc.cement.business.model.vo.ProjectVo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
......@@ -31,33 +32,22 @@ public class Project extends BaseEntity implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 项目名
*/
@ApiModelProperty("项目名")
private String name;
/**
* 项目编号:客户自己填的
*/
@ApiModelProperty(" 项目编号:客户自己填的")
private String code;
/**
* 客户id
*/
@ApiModelProperty("客户id")
private Integer clientId;
/**
* 状态0:禁用 1:启用
*/
private Boolean status;
@ApiModelProperty("状态0:禁用 1:启用")
private Integer status;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.entity;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class Sample implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("来样编号(样品编号)")
private String sampleCode;
@ApiModelProperty("样品名")
private String name;
@ApiModelProperty("样品状态(粉、块状)")
private String sampleForm;
@ApiModelProperty("检测项id 例子:1、2、3")
private String teamIds;
@ApiModelProperty("样品照片")
private String samplePhoto;
@ApiModelProperty("样品重量(kg)")
private BigDecimal weight;
@ApiModelProperty("(检测依据编号) 例子:01、23、15")
private String methodNumbers;
@ApiModelProperty("是否平行样(1是,0否)")
private Integer isParallel;
@ApiModelProperty("本所编号")
private String cementCode;
@ApiModelProperty("产值")
private BigDecimal outputValue;
@ApiModelProperty("委托表id")
private Integer entrustId;
@ApiModelProperty("样品临时表id")
private Integer sampleId;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("基本元素检测结果")
private String baseResult;
@ApiModelProperty("比表面积校核结果")
private String surfaceResult;
}
package cn.wise.sc.cement.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SampleCheck implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("样品表d")
private Integer sampleId;
@ApiModelProperty("处理人id")
private Integer userId;
@ApiModelProperty("检测设备表id")
private Integer equipmentId;
@ApiModelProperty("检测设备名称")
private String equipmentName;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SampleCheckTeam implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("样品检测表id")
private Integer checkId;
@ApiModelProperty("检测项目id(检测项目表)")
private Integer testItemId;
@ApiModelProperty("检测项目")
private String testItem;
/**
* 检测项目信息 json串
{"样重m":"40","K值":1.0274,"Vsio2":3.89,................}
*/
@ApiModelProperty("检测项目信息json串")
private String testTeams;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SampleDistribution implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("样品表d")
private Integer sampleId;
@ApiModelProperty("检测项id")
private Integer teamId;
@ApiModelProperty("处理人id")
private Integer userId;
@ApiModelProperty("(0未接受,1接受,2完成)")
private Integer status;
@ApiModelProperty("接受时间")
private LocalDateTime acceptTime;
@ApiModelProperty("完成时间")
private LocalDateTime finishTime;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import java.time.LocalDate;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SampleHandle implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("样品表d")
private Integer sampleId;
@ApiModelProperty("处理人id")
private Integer userId;
@ApiModelProperty("处理项")
private String content;
@ApiModelProperty("要求完成日期(计划完成日期)")
private LocalDate planFinishDate;
@ApiModelProperty("(0未接受,1接受,2完成)")
private Integer status;
@ApiModelProperty("接受时间")
private LocalDateTime acceptTime;
@ApiModelProperty("完成时间")
private LocalDateTime finishTime;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.entity;
import java.math.BigDecimal;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SampleTmp implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("来样编号(样品编号)")
private String sampleCode;
@ApiModelProperty("样品名")
private String name;
@ApiModelProperty("样品状态(粉、块状)")
private String sampleForm;
@ApiModelProperty("检测项id 例子:1、2、3")
private String teamIds;
@ApiModelProperty("样品照片")
private String samplePhoto;
@ApiModelProperty("样品重量(g)")
private BigDecimal weight;
@ApiModelProperty("(检测依据编号) 例子:01、23、15")
private String methodNumbers;
@ApiModelProperty("委托表id")
private Integer entrustId;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
}
......@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
......@@ -26,29 +28,19 @@ public class SysApproval implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 审批流程
*/
@ApiModelProperty("审批流程")
private String name;
/**
* 审批人id
*/
@ApiModelProperty("审批人id")
private Integer userId;
/**
* 状态 0:禁用 1:激活
*/
private Boolean status;
@ApiModelProperty("状态 0:禁用 1:激活")
private Integer status;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
......
......@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
......@@ -26,24 +28,16 @@ public class SysGroup implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 工作组名称
*/
@ApiModelProperty("工作组名称")
private String name;
/**
* 状态 0:禁用 1:激活
*/
private Boolean status;
@ApiModelProperty("状态 0:禁用 1:激活")
private Integer status;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
......
package cn.wise.sc.cement.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SysLogs implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("操作用户")
private Integer userId;
@ApiModelProperty("日志类型(1委托详情)")
private Integer objType;
@ApiModelProperty("对象表id(委托表id)")
private Integer objId;
@ApiModelProperty("操作内容")
private String module;
@ApiModelProperty("操作状态1成功,0失败")
private Integer flag;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
public interface ObjType {
int SYSTEM_LOG = 0;
int ENTRUST_LOG = 1;
}
}
......@@ -6,6 +6,7 @@ import com.baomidou.mybatisplus.annotation.TableField;
import java.io.Serializable;
import java.util.List;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
......@@ -31,49 +32,31 @@ public class SysPermission implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 上级ID(如果是一级为0)
*/
@ApiModelProperty("上级ID(如果是一级为0)")
private Integer parentId;
/**
* 名字
*/
@ApiModelProperty("名字")
private String name;
/**
* 菜单图标
*/
@ApiModelProperty("菜单图标")
private String css;
/**
* 链接
*/
@ApiModelProperty("链接")
private String href;
/**
* 1菜单权限,2按钮权限
*/
@ApiModelProperty("1菜单权限,2按钮权限")
private Integer type;
/**
* 接口权限
*/
@ApiModelProperty("接口权限")
private String permission;
/**
* 排序
*/
@ApiModelProperty("排序")
private Integer sort;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
/**
* 子元素
*/
@ApiModelProperty("子元素")
@TableField(exist = false)
private List<SysPermission> child;
......
package cn.wise.sc.cement.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-25
*/
@Data
@EqualsAndHashCode(callSuper = false)
@Accessors(chain = true)
public class SysPost implements Serializable {
private static final long serialVersionUID=1L;
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("职务名称")
private String name;
@ApiModelProperty("审批级别")
private Integer level;
@ApiModelProperty("状态(0禁用,1启用)")
private Integer status;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
}
......@@ -4,6 +4,8 @@ import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.time.LocalDateTime;
import java.io.Serializable;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
......@@ -29,24 +31,16 @@ public class SysRole implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 角色名称
*/
@ApiModelProperty("角色名称")
private String name;
/**
* (0禁用,1启用)
*/
private Boolean status;
@ApiModelProperty("(0禁用,1启用)")
private Integer status;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
......
......@@ -2,6 +2,7 @@ package cn.wise.sc.cement.business.entity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
......@@ -28,108 +29,65 @@ public class SysUser implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 用户账号
*/
@ApiModelProperty("用户账号")
private String username;
/**
* 真实姓名
*/
@ApiModelProperty("真实姓名")
private String name;
/**
* 性别0女1男
*/
@ApiModelProperty("性别0女1男")
private Integer sex;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Integer groupId;
/**
* 职务id
*/
@ApiModelProperty("职务id")
private Integer postId;
/**
* 微信号
*/
@ApiModelProperty("微信号")
private String wxId;
/**
* 职称
*/
@ApiModelProperty("职称")
private String qualifications;
/**
* 状态(0禁用,1启用)
*/
private Boolean status;
@ApiModelProperty("状态(0禁用,1启用")
private Integer status;
/**
* 工作年限
*/
@ApiModelProperty("工作年限")
private Double workYear;
/**
* 手机号
*/
@ApiModelProperty("手机号")
private String phone;
/**
* 传真
*/
@ApiModelProperty("传真")
private String fax;
/**
* 专业
*/
@ApiModelProperty("专业")
private String major;
/**
* 邮箱
*/
@ApiModelProperty("邮箱")
private String email;
/**
* 从事本技术领域日期
*/
@ApiModelProperty("从事本技术领域日期")
private LocalDate technologyDate;
/**
* 从事本技术领域年限
*/
@ApiModelProperty("从事本技术领域年限")
private Double technologyYear;
/**
* 文化程度
*/
@ApiModelProperty("文化程度")
private String education;
/**
* (0删除,1正常)
*/
private Boolean isDelete;
@ApiModelProperty("(0删除,1正常)")
private Integer isDelete;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime updateTime;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
public interface Status {
Boolean VALID = true;
Boolean LOCKED = false;
}
}
......@@ -10,6 +10,9 @@ import cn.wise.sc.cement.business.model.vo.TeamVo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import java.io.Serializable;
import java.time.LocalDateTime;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
......@@ -33,45 +36,35 @@ public class Team extends BaseEntity implements Serializable {
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
/**
* 检测项目
*/
@ApiModelProperty("检测项目")
private String name;
/**
* 元素分组id
*/
@ApiModelProperty("元素分组id")
private Integer groupId;
/**
* 元素分组名称
*/
@ApiModelProperty("元素分组名称")
private String groupName;
/**
* 检测依据
*/
@ApiModelProperty("检测依据")
private String basis;
/**
* 收费标准
*/
@ApiModelProperty("收费标准")
private BigDecimal charge;
/**
* 建议产值
*/
@ApiModelProperty("建议产值")
private BigDecimal proCharge;
/**
* 资质范围
*/
@ApiModelProperty("资质范围")
private String qualifications;
/**
* 状态 0:禁用 1:激活
*/
private Boolean status;
@ApiModelProperty("状态 0:禁用 1:激活")
private Integer status;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.exception;
/**
* 封装fastdfs的异常,使用运行时异常
*
* @author yuqih
* @author tobato
*
*/
public abstract class FdfsException extends RuntimeException {
/**
* serialVersionUID
*/
private static final long serialVersionUID = 1L;
protected FdfsException(String message) {
super(message);
}
/**
* @param message
* @param cause
*/
protected FdfsException(String message, Throwable cause) {
super(message, cause);
}
}
\ No newline at end of file
package cn.wise.sc.cement.business.exception;
/**
* 从Url解析StorePath文件路径对象错误
*
* @author wuyf
*
*/
public class FdfsUnsupportStorePathException extends FdfsException {
/**
* serialVersionUID
*/
private static final long serialVersionUID = 8116336411011152869L;
public FdfsUnsupportStorePathException(String message) {
super(message);
}
}
\ No newline at end of file
package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.EntrustApproval;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface EntrustApprovalMapper extends BaseMapper<EntrustApproval> {
}
package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.Entrust;
import cn.wise.sc.cement.business.model.vo.EntrustVo;
import cn.wise.sc.cement.business.model.vo.ProjectVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import java.util.Map;
/**
* <p>
* Mapper 接口
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface EntrustMapper extends BaseMapper<Entrust> {
IPage<EntrustVo> getPage(@Param("page") Page page, @Param("params") Map<String, Object> params);
EntrustVo getDetail(Integer id);
}
package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.SampleCheck;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface SampleCheckMapper extends BaseMapper<SampleCheck> {
}
package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.SampleCheckTeam;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface SampleCheckTeamMapper extends BaseMapper<SampleCheckTeam> {
}
package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.SampleDistribution;
import cn.wise.sc.cement.business.model.vo.SampleDistributionTeamVo;
import cn.wise.sc.cement.business.model.vo.SampleDistributionVo;
import cn.wise.sc.cement.business.model.vo.SampleHandleVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import java.util.List;
import java.util.Map;
/**
* <p>
* Mapper 接口
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface SampleDistributionMapper extends BaseMapper<SampleDistribution> {
IPage<SampleDistributionVo> getPage(@Param("page") Page page, @Param("params") Map<String, Object> params);
List<SampleDistributionTeamVo> getDistributionTeamList(Integer sampleId);
}
package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.SampleHandle;
import cn.wise.sc.cement.business.model.vo.EntrustVo;
import cn.wise.sc.cement.business.model.vo.SampleHandleVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import java.util.Map;
/**
* <p>
* Mapper 接口
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface SampleHandleMapper extends BaseMapper<SampleHandle> {
IPage<SampleHandleVo> getPage(@Param("page") Page page, @Param("params") Map<String, Object> params);
}
package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.Sample;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface SampleMapper extends BaseMapper<Sample> {
}
package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.SampleTmp;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface SampleTmpMapper extends BaseMapper<SampleTmp> {
}
package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.SysLogs;
import cn.wise.sc.cement.business.model.vo.EntrustVo;
import cn.wise.sc.cement.business.model.vo.LogVo;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.ibatis.annotations.Param;
import java.util.Map;
/**
* <p>
* Mapper 接口
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface SysLogsMapper extends BaseMapper<SysLogs> {
IPage<LogVo> getPage(@Param("page") Page page, @Param("params") Map<String, Object> params);
}
package cn.wise.sc.cement.business.mapper;
import cn.wise.sc.cement.business.entity.SysPost;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
/**
* <p>
* Mapper 接口
* </p>
*
* @author ztw
* @since 2020-08-25
*/
public interface SysPostMapper extends BaseMapper<SysPost> {
}
......@@ -4,11 +4,11 @@
<sql id="where">
<where>
<if test="params.status != null and params.status != ''">
<if test="params.status != null">
and t.status = #{params.status}
</if>
<if test="params.region != null and params.region != ''">
and t.region = #{params.region}
and t.region like concat('%', #{params.region}, '%')
</if>
<if test="params.principal != null and params.principal != ''">
and t.principal like concat('%', #{params.principal}, '%')
......
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.cement.business.mapper.EntrustApprovalMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.cement.business.mapper.EntrustMapper">
<sql id="where">
<where>
and e.is_delete = 1
<if test="params.startDate != null and params.startDate != ''">
and DATE(e.entrust_date) &gt;= #{params.startDate}
</if>
<if test="params.endDate != null and params.endDate != ''">
and DATE(e.entrust_date) &lt;= #{params.endDate}
</if>
<if test="params.status != null">
and e.status = #{params.status}
</if>
<if test="params.clientId != null and params.clientId != ''">
and e.client_id = #{params.clientId}
</if>
<if test="params.projectName != null and params.projectName != ''">
and p.name like concat('%', #{params.projectName}, '%')
</if>
</where>
</sql>
<select id="getPage" resultType="cn.wise.sc.cement.business.model.vo.EntrustVo">
select e.*, p.name as projectName, c.name as clientName, su.name as userName,
(
CASE e.status
WHEN 0 THEN '未审批'
WHEN 1 THEN '未通过'
ELSE '已通过'
END
) as statusValue
from entrust e
left join project p on p.id = e.project_id
left join client c on c.id = e.client_id
left join sys_user su on su.id = e.user_id
<include refid="where" />
order by e.create_time desc
</select>
<select id="getDetail" resultType="cn.wise.sc.cement.business.model.vo.EntrustVo">
select e.*, p.name as projectName, c.name as clientName, su.name as userName,
su.phone as userPhone, su.fax as userFax
from entrust e
left join project p on p.id = e.project_id
left join client c on c.id = e.client_id
left join sys_user su on su.id = e.user_id
where e.id = #{id}
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.cement.business.mapper.SampleCheckMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.cement.business.mapper.SampleCheckTeamMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.cement.business.mapper.SampleDistributionMapper">
<sql id="where">
<where>
<if test="params.startDate != null and params.startDate != ''">
and DATE(e.create_time) &gt;= #{params.startDate}
</if>
<if test="params.endDate != null and params.endDate != ''">
and DATE(e.create_time) &lt;= #{params.endDate}
</if>
<if test="params.status != null">
and t.status = #{params.status}
</if>
<if test="params.clientId != null">
and e.client_id = #{params.clientId}
</if>
<if test="params.projectName != null and params.projectName != ''">
and p.name like concat('%', #{params.projectName}, '%')
</if>
<if test="params.userId != null">
and t.user_id = #{params.userId}
</if>
</where>
</sql>
<select id="getPage" resultType="cn.wise.sc.cement.business.model.vo.SampleDistributionVo">
select t.*, p.id as projectId, p.name as projectName, p.code as projectCode,
e.id as entrustId, e.entrust_date as entrustDate, e.sample_num sampleNum,
su.name as userName
from sample_distribution t
left join sys_user su on su.id = t.user_id
left join sample s on s.id = t.sample_id
left join entrust e on e.id = s.entrust_id
left join project p on p.id = e.project_id
<include refid="where" />
order by t.create_time desc
</select>
<select id="getDistributionTeamList" resultType="cn.wise.sc.cement.business.model.vo.SampleDistributionTeamVo">
select t.id as distributionId, su.id as userId, su.name as userName, s.id as teamId, s.name as teamName
from sample_distribution t
left join sys_user su on su.id = t.user_id
left join team s on s.id = t.team_id
where t.sample_id = #{sampleId}
order by t.id asc
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.cement.business.mapper.SampleHandleMapper">
<sql id="where">
<where>
<if test="params.startDate != null and params.startDate != ''">
and DATE(e.create_time) &gt;= #{params.startDate}
</if>
<if test="params.endDate != null and params.endDate != ''">
and DATE(e.create_time) &lt;= #{params.endDate}
</if>
<if test="params.status != null">
and t.status = #{params.status}
</if>
<if test="params.clientId != null">
and e.client_id = #{params.clientId}
</if>
<if test="params.projectName != null and params.projectName != ''">
and p.name like concat('%', #{params.projectName}, '%')
</if>
<if test="params.userId != null">
and t.user_id = #{params.userId}
</if>
</where>
</sql>
<select id="getPage" resultType="cn.wise.sc.cement.business.model.vo.SampleHandleVo">
select t.*, su.name as userName, s.name as sampleName, s.sample_code as sampleCode,
s.cement_code as cementCode, p.id as projectId, p.name as projectName, p.code as projectCode
from sample_handle t
left join sys_user su on su.id = t.user_id
left join sample s on s.id = t.sample_id
left join entrust e on e.id = s.entrust_id
left join project p on p.id = e.project_id
<include refid="where" />
order by t.create_time desc
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.cement.business.mapper.SampleMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.cement.business.mapper.SampleTmpMapper">
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.cement.business.mapper.SysLogsMapper">
<sql id="where">
<where>
<if test="params.startDate != null and params.startDate != ''">
and DATE(t.create_time) &gt;= #{params.startDate}
</if>
<if test="params.endDate != null and params.endDate != ''">
and DATE(t.create_time) &lt;= #{params.endDate}
</if>
<if test="params.objType != null">
and t.obj_type = #{params.objType}
</if>
<if test="params.objId != null">
and t.obj_id = #{params.objId}
</if>
</where>
</sql>
<select id="getPage" resultType="cn.wise.sc.cement.business.model.vo.LogVo">
select t.*,su.name as userName
from sys_logs t
left join sys_user su on su.id = t.user_id
<include refid="where" />
order by t.create_time desc
</select>
</mapper>
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="cn.wise.sc.cement.business.mapper.SysPostMapper">
</mapper>
......@@ -5,7 +5,7 @@
<sql id="where">
<where>
<if test="params.status != null and params.status != ''">
<if test="params.status != null ">
and su.status = #{params.status}
</if>
<if test="params.gourpId != null and params.gourpId != ''">
......
......@@ -3,7 +3,7 @@
<mapper namespace="cn.wise.sc.cement.business.mapper.TeamMapper">
<sql id="where">
<where>
<if test="params.status != null and params.status != ''">
<if test="params.status != null">
and t.status = #{params.status}
</if>
<if test="params.groupName != null and params.groupName != ''">
......
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
import java.util.List;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托评审请求")
public class ApprovalQuery {
@ApiModelProperty("委托表id")
private Integer id;
@ApiModelProperty("项目类型(常规项目,科研项目,质量控制项目)")
private String projectType;
@ApiModelProperty("样品及检测项列表")
private List<SampleQuery> sampleList;
@ApiModelProperty("是否同意 1同意,2拒绝")
private Integer isAgree;
@ApiModelProperty("审批意见")
private String auditReason;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托-校核请求")
public class CheckQuery {
@ApiModelProperty("委托表id")
private Integer id;
/**
* 样品原始数据
*/
@ApiModelProperty("样品原始数据列表")
private List<SampleCheckQuery> sampleCheckQueryList;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托-派发请求")
public class DistributionQuery {
@ApiModelProperty("委托表id")
private Integer id;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("样品信息列表")
private List<SampleDistributionQuery> sampleDistributionQueryList;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
/**
* @description:
* @author: qh
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托请求")
public class EntrustQuery {
@ApiModelProperty("委托表id")
private Integer id;
@ApiModelProperty("项目id")
private Integer projectId;
@ApiModelProperty("项目编号")
private String projectCode;
@ApiModelProperty("委托单位id")
private Integer clientId;
@ApiModelProperty("送样人")
private String sendName;
@ApiModelProperty("送样人电话")
private String sendPhone;
@ApiModelProperty("委托日期")
private LocalDate entrustDate;
@ApiModelProperty("拟定完成日期")
private LocalDate finishDate;
@ApiModelProperty("样品数量")
private Integer sampleNum;
@ApiModelProperty("(1加急,0不加急)")
private Integer isUrgent;
@ApiModelProperty("剩余样品处理方法(0,取回,1由本所统一处置)")
private Integer handleMethod;
@ApiModelProperty("备注")
private String remark;
@ApiModelProperty("样品及检测项列表")
private List<SampleTmpQuery> sampleTmpList;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托-样品处理请求")
public class HandleQuery {
@ApiModelProperty("委托表id")
private Integer id;
@ApiModelProperty("样品及检测项列表")
private List<SampleHandleQuery> sampleHandleQueryList;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
......@@ -13,9 +14,19 @@ import java.time.LocalDate;
@Data
public class MethodQuery {
private Integer id;
@ApiModelProperty("检测标准名")
private String name;
@ApiModelProperty("标准号")
private String standard;
@ApiModelProperty("编号")
private String number;
@ApiModelProperty("实施日期")
private LocalDate doDate;
@ApiModelProperty("更新日期")
private LocalDate upDate;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
import java.util.List;
/**
* @description:
* @author: qh
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("职务请求")
public class PostQuery {
private Integer id;
@ApiModelProperty("职务名称")
private String name;
@ApiModelProperty("审批级别")
private Integer level;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
......@@ -10,7 +11,13 @@ import lombok.Data;
@Data
public class ProjectQuery {
private Integer id;
@ApiModelProperty("项目名")
private String name;
@ApiModelProperty(" 项目编号:客户自己填的")
private String code;
@ApiModelProperty("客户id")
private Integer clientId;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
......@@ -18,24 +19,13 @@ public class RoleQuery {
private Integer id;
/**
* 角色名称
*/
@ApiModelProperty("角色名称")
private String name;
/**
* (0禁用,1启用)
*/
private Boolean status;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
/**
* 权限id数组
*/
@ApiModelProperty("权限id数组")
private List<Integer> permissionIds;
......
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托校核-样品原始数据请求")
public class SampleCheckQuery {
@ApiModelProperty("样品表d")
private Integer sampleId;
@ApiModelProperty("本所编号")
private String cementCode;
@ApiModelProperty("检测人员id")
private String userId;
@ApiModelProperty("检测人员姓名")
private String userName;
@ApiModelProperty("检测设备表id")
private Integer equipmentId;
@ApiModelProperty("检测设备名称")
private String equipmentName;
@ApiModelProperty("基本元素检测结果 json串")
private String baseResult;
@ApiModelProperty("比表面积校核结果 json串")
private String surfaceResult;
@ApiModelProperty("检测样品信息列表")
public List<SampleCheckTeamQuery> sampleCheckTeamQueryList;
}
package cn.wise.sc.cement.business.model.query;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import java.io.Serializable;
import java.time.LocalDateTime;
/**
* <p>
*
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Data
@ApiModel("委托校核-检测样品")
public class SampleCheckTeamQuery {
/**
* 主键
*/
@TableId(value = "id", type = IdType.AUTO)
private Integer id;
@ApiModelProperty("检测项目id(检测项目表)")
private Integer testItemId;
@ApiModelProperty("检测项目")
private String testItem;
/**
* 检测项目信息 json串
{"样重m":"40","K值":1.0274,"Vsio2":3.89,................}
*/
@ApiModelProperty("检测项目信息 json串")
private String testTeams;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
import java.util.List;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托-样品派发请求")
public class SampleDistributionQuery {
/**
* 样品表d
*/
@ApiModelProperty("样品表d")
private Integer sampleId;
/**
* 检测项目信息
*/
@ApiModelProperty("检测项目信息列表")
public List<SampleDistributionTeamQuery> sampleDistributionTeamQueryList;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托-样品派发请求")
public class SampleDistributionTeamQuery {
@ApiModelProperty("检测项id")
private Integer TeamId;
@ApiModelProperty("检测人员id")
private Integer userId;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托-样品处理请求")
public class SampleHandleQuery {
@ApiModelProperty("样品表d")
private Integer sampleId;
@ApiModelProperty("处理人id")
private Integer userId;
@ApiModelProperty("处理项")
private String content;
@ApiModelProperty("要求完成日期(计划完成日期)")
private LocalDate planFinishDate;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDateTime;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托评审-样品及检测项请求")
public class SampleQuery {
private Integer id;
@ApiModelProperty("来样编号(样品编号)")
private String sampleCode;
@ApiModelProperty("样品名")
private String name;
@ApiModelProperty("样品状态(粉、块状)")
private String sampleForm;
@ApiModelProperty("检测项id 例子:1、2、3")
private String 样品表d;
@ApiModelProperty("样品照片")
private String samplePhoto;
@ApiModelProperty("样品重量(kg)")
private BigDecimal weight;
@ApiModelProperty("(检测依据编号) 例子:01、23、15")
private String methodNumbers;
@ApiModelProperty(" 是否平行样(1是,0否)")
private Integer isParallel;
@ApiModelProperty("产值")
private BigDecimal outputValue;
@ApiModelProperty("委托表id")
private Integer entrustId;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* @description:
* @author: qh
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("样品及检测项请求")
public class SampleTmpQuery {
private Integer id;
@ApiModelProperty("来样编号(样品编号)")
private String sampleCode;
@ApiModelProperty("样品名")
private String name;
@ApiModelProperty("样品状态(粉、块状)")
private String sampleForm;
@ApiModelProperty("检测项id 例子:1、2、3")
private String teamIds;
@ApiModelProperty("样品照片")
private String samplePhoto;
@ApiModelProperty("样品重量(g)")
private BigDecimal weight;
@ApiModelProperty("(检测依据编号) 例子:01、23、15")
private String methodNumbers;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
......@@ -11,11 +12,27 @@ import java.math.BigDecimal;
**/
@Data
public class TeamQuery {
@ApiModelProperty("检测项表id")
private Integer id;
@ApiModelProperty("检测项目")
private String name;
@ApiModelProperty("元素分组id")
private Integer groupId;
@ApiModelProperty("检测依据")
private String basis;
@ApiModelProperty("收费标准")
private BigDecimal charge;
@ApiModelProperty("建议产值")
private BigDecimal proCharge;
@ApiModelProperty("资质范围")
private String qualifications;
}
package cn.wise.sc.cement.business.model.query;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;
import lombok.RequiredArgsConstructor;
......@@ -19,99 +20,52 @@ public class UserQuery {
private Integer id;
/**
* 用户账号
*/
@ApiModelProperty("用户账号")
private String username;
/**
* 真实姓名
*/
@ApiModelProperty("真实姓名")
private String name;
/**
* 性别0女1男
*/
@ApiModelProperty("性别0女1男")
private Integer sex;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Integer groupId;
/**
* 职务id
*/
@ApiModelProperty("职务id")
private Integer postId;
/**
* 微信号
*/
@ApiModelProperty("微信号")
private String wxId;
/**
* 职称
*/
@ApiModelProperty("职称")
private String qualifications;
/**
* 状态(0禁用,1启用)
*/
private Boolean status;
/**
* 工作年限
*/
@ApiModelProperty("工作年限")
private Double workYear;
/**
* 手机号
*/
@ApiModelProperty("手机号")
private String phone;
/**
* 专业
*/
@ApiModelProperty("传真")
private String fax;
@ApiModelProperty("专业")
private String major;
/**
* 邮箱
*/
@ApiModelProperty("邮箱")
private String email;
/**
* 从事本技术领域日期
*/
@ApiModelProperty("从事本技术领域日期")
private LocalDate technologyDate;
/**
* 从事本技术领域年限
*/
@ApiModelProperty("从事本技术领域年限")
private Double technologyYear;
/**
* 文化程度
*/
@ApiModelProperty("文化程度")
private String education;
/**
* (0删除,1正常)
*/
private Boolean isDelete;
/**
* 创建时间
*/
private LocalDateTime createTime;
/**
* 修改时间
*/
private LocalDateTime updateTime;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
......
package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDateTime;
......@@ -16,34 +17,22 @@ public class ApprovalVo {
private Integer id;
/**
* 审批流程
*/
@ApiModelProperty("审批流程")
private String name;
/**
* 审批人id
*/
@ApiModelProperty("审批人id")
private Integer userId;
/**
* 状态 0:禁用 1:激活
*/
private Boolean status;
@ApiModelProperty("状态 0:禁用 1:激活")
private Integer status;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
/**
* 审批人姓名
*/
@ApiModelProperty("审批人姓名")
private String userName;
......
package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
......@@ -17,33 +18,21 @@ public class ClientVo {
private Integer id;
/**
* 单位名
*/
@ApiModelProperty("委托单位名")
private String name;
/**
* 负责人
*/
@ApiModelProperty("负责人")
private String principal;
/**
* 负责人电话
*/
@ApiModelProperty("负责人电话")
private String principalPhone;
/**
* 所在地区:xx省xx县xx
*/
@ApiModelProperty("所在地区:xx省xx县xx")
private String region;
/**
* 状态 0:禁用 1:激活
*/
private String status;
@ApiModelProperty("状态 0:禁用 1:激活")
private Integer status;
/**
* 项目名字
*/
@ApiModelProperty("项目数量")
private Integer projectNums;
}
package cn.wise.sc.cement.business.model.vo;
import cn.wise.sc.cement.business.model.query.SampleTmpQuery;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托Vo")
public class EntrustVo {
@ApiModelProperty("委托表id")
private Integer id;
@ApiModelProperty("项目id")
private Integer projectId;
@ApiModelProperty("项目名称")
private String projectName;
@ApiModelProperty("项目编号")
private String projectCode;
@ApiModelProperty("项目类型(常规项目,科研项目,质量控制项目)")
private String projectType;
@ApiModelProperty("委托人id")
private Integer userId;
@ApiModelProperty("委托人姓名")
private String userName;
@ApiModelProperty("委托人手机号码")
private String userPhone;
@ApiModelProperty("委托人传真")
private String userFax;
@ApiModelProperty("委托单位Id")
private Integer clientId;
@ApiModelProperty("委托单位姓名")
private String clientName;
@ApiModelProperty("委托日期")
private LocalDate entrustDate;
@ApiModelProperty("样品数量")
private Integer sampleNum;
@ApiModelProperty("状态(0未审批,1已通过,2未通过,3样品处理,4派发)")
private Integer status;
@ApiModelProperty("状态")
private String statusValue;
@ApiModelProperty("送样人姓名")
private String sendName;
@ApiModelProperty("送样人电话")
private String sendPhone;
@ApiModelProperty("拟定完成日期")
private LocalDate finishDate;
@ApiModelProperty("(1加急,0不加急)")
private Integer isUrgent;
@ApiModelProperty(" 剩余样品处理方法(0,取回,1由本所统一处置)")
private Integer handleMethod;
@ApiModelProperty("备注")
private String remark;
/**
* 样品及检测项
*/
@ApiModelProperty("样品临时列表")
private List<SampleTmpVo> sampleTmpList;
@ApiModelProperty("样品列表")
private List<SampleVo> sampleList;
@ApiModelProperty("检测项 只显示第一个样品的")
private String checkTeam;
}
package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
......@@ -17,29 +18,19 @@ public class GroupVo {
private Integer id;
/**
* 工作组名称
*/
@ApiModelProperty("工作组名称")
private String name;
/**
* 状态 0:禁用 1:激活
*/
private Boolean status;
@ApiModelProperty("状态 0:禁用 1:激活")
private Integer status;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
/**
* 组内人数
*/
@ApiModelProperty("组内人数")
private Integer members;
......
package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
import java.time.LocalDateTime;
import java.util.List;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("日志Vo")
public class LogVo {
private Integer id;
/**
* 操作用户
*/
@ApiModelProperty("操作用户id")
private Integer userId;
@ApiModelProperty("操作用户姓名")
private String userName;
@ApiModelProperty("日志类型(1委托详情)")
private Integer objType;
@ApiModelProperty("对象表id(委托表id)")
private Integer objId;
@ApiModelProperty("操作内容")
private String module;
@ApiModelProperty("操作状态1成功,0失败")
private Integer flag;
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
@ApiModelProperty("备注")
private String remark;
}
......@@ -2,6 +2,7 @@ package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
......@@ -15,25 +16,18 @@ import java.io.Serializable;
@ApiModel("项目Vo")
public class ProjectVo {
@ApiModelProperty("项目id")
private Integer id;
/**
* 项目名
*/
@ApiModelProperty("项目名")
private String name;
/**
* 项目编号:客户自己填的
*/
@ApiModelProperty("项目编号:客户自己填的")
private String code;
/**
* 委托单位名
*/
@ApiModelProperty("委托单位名")
private String clientName;
/**
* 状态
*/
@ApiModelProperty("状态")
private String status;
}
package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
/**
* @description:
* @author: ztw
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("委托-样品派发Vo")
public class SampleDistributionTeamVo {
@ApiModelProperty("派发表id")
private Integer distributionId;
/**
* 检测项id
*/
@ApiModelProperty("检测项id")
private Integer teamId;
@ApiModelProperty("检测项名称")
private String teamName;
@ApiModelProperty("检测人员id")
private Integer userId;
@ApiModelProperty("检测人员姓名")
private Integer userName;
}
package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
/**
* @description:
* @author: ztw
* @create: 2020-08-27 14:58
**/
@Data
@ApiModel("委托派发Vo")
public class SampleDistributionVo {
@ApiModelProperty("派发表id")
private Integer id;
@ApiModelProperty("项目id")
private Integer projectId;
@ApiModelProperty("项目名称")
private String projectName;
@ApiModelProperty("项目编号")
private String projectCode;
@ApiModelProperty("委托表Id")
private Integer entrustId;
@ApiModelProperty("委托日期")
private LocalDate entrustDate;
@ApiModelProperty("样品数量")
private Integer sampleNum;
@ApiModelProperty("检测人员id")
private Integer userId;
@ApiModelProperty("检测人员姓名")
private String userName;
}
package cn.wise.sc.cement.business.model.vo;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableId;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
import java.time.LocalDateTime;
/**
* @description:
* @author: ztw
* @create: 2020-08-27 14:58
**/
@Data
@ApiModel("样品处理Vo")
public class SampleHandleVo {
@ApiModelProperty("样品处理表id")
private Integer id;
@ApiModelProperty("项目id")
private Integer projectId;
@ApiModelProperty("项目名称")
private String projectName;
@ApiModelProperty("项目编号")
private String projectCode;
@ApiModelProperty("样品表d")
private Integer sampleId;
@ApiModelProperty("样品名称")
private String sampleName;
@ApiModelProperty("private String 来样编号(样品编号)")
private String sampleCode;
@ApiModelProperty("本所编号")
private String cementCode;
@ApiModelProperty("处理人员id")
private Integer userId;
@ApiModelProperty("处理人员姓名")
private String userName;
@ApiModelProperty("处理项")
private String content;
@ApiModelProperty("要求完成日期(计划完成日期)")
private LocalDate planFinishDate;
@ApiModelProperty("备注")
private String remark;
}
package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
/**
* @description:
* @author: qh
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("样品及检测项 临时表Vo")
public class SampleTmpVo {
@ApiModelProperty("样品临时表id")
private Integer id;
@ApiModelProperty("来样编号(样品编号)")
private String sampleCode;
@ApiModelProperty("样品名")
private String name;
@ApiModelProperty("样品状态(粉、块状)")
private String sampleForm;
@ApiModelProperty("检测项id 例子:1、2、3")
private String teamIds;
@ApiModelProperty("检测项名称")
private String teamName;
@ApiModelProperty("样品照片")
private String samplePhoto;
@ApiModelProperty("样品重量(g)")
private BigDecimal weight;
@ApiModelProperty("(检测依据编号) 例子:01、23、15")
private String methodNumbers;
@ApiModelProperty("委托表id")
private Integer entrustId;
}
package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.math.BigDecimal;
import java.util.List;
/**
* @description:
* @author: qh
* @create: 2020-08-07 14:58
**/
@Data
@ApiModel("样品及检测项 正式表Vo")
public class SampleVo {
@ApiModelProperty("样品表id")
private Integer id;
@ApiModelProperty("来样编号(样品编号)")
private String sampleCode;
@ApiModelProperty("样品名")
private String name;
@ApiModelProperty("样品状态(粉、块状)")
private String sampleForm;
@ApiModelProperty("检测项id 例子:1、2、3")
private String teamIds;
@ApiModelProperty("检测项名称")
private String teamName;
@ApiModelProperty("样品照片")
private String samplePhoto;
@ApiModelProperty("样品重量(g)")
private BigDecimal weight;
@ApiModelProperty("(检测依据编号) 例子:01、23、15")
private String methodNumbers;
@ApiModelProperty("是否平行样(1是,0否)")
private Integer isParallel;
@ApiModelProperty("本所编号")
private String cementCode;
@ApiModelProperty("产值")
private BigDecimal outputValue;
@ApiModelProperty("委托表id")
private Integer entrustId;
@ApiModelProperty("检测项目列表")
private List<SampleDistributionTeamVo> sampleDistributionTeamVoList;
}
package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.io.Serializable;
......@@ -19,45 +20,31 @@ public class TeamVo extends BaseVo implements Serializable {
private static final long serialVersionUID = 1L;
@ApiModelProperty("检测项表id")
private Integer id;
/**
* 检测项目
*/
@ApiModelProperty("检测项目")
private String name;
/**
* 分组
*/
@ApiModelProperty("元素分组id")
private Integer groupId;
/**
* 检测依据
*/
@ApiModelProperty("检测依据")
private String basis;
/**
* 收费标准
*/
@ApiModelProperty("收费标准")
private BigDecimal charge;
/**
* 建议产值
*/
@ApiModelProperty("建议产值")
private BigDecimal proCharge;
/**
* 资质范围
*/
@ApiModelProperty("资质范围")
private String qualifications;
/**
* 状态 0:禁用 1:激活
*/
@ApiModelProperty("状态 0:禁用 1:激活")
private String status;
/**
* 分组名称
*/
@ApiModelProperty("分组名称")
private String groupName;
}
package cn.wise.sc.cement.business.model.vo;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.time.LocalDate;
......@@ -17,124 +18,76 @@ public class UserVo {
private Integer id;
/**
* 用户账号
*/
@ApiModelProperty("用户账号")
private String username;
/**
* 真实姓名
*/
@ApiModelProperty("真实姓名")
private String name;
/**
* 性别0女1男
*/
@ApiModelProperty("性别0女1男")
private Integer sex;
/**
* 部门id
*/
@ApiModelProperty("部门id")
private Integer groupId;
/**
* 职务id
*/
@ApiModelProperty("职务id")
private Integer postId;
/**
* 微信号
*/
@ApiModelProperty("微信号")
private String wxId;
/**
* 职称
*/
@ApiModelProperty("职称")
private String qualifications;
/**
* 状态(0禁用,1启用)
*/
private Boolean status;
@ApiModelProperty("状态(0禁用,1启用)")
private Integer status;
/**
* 工作年限
*/
@ApiModelProperty("工作年限")
private Double workYear;
/**
* 手机号
*/
@ApiModelProperty("手机号")
private String phone;
/**
* 传真
*/
@ApiModelProperty("传真")
private String fax;
/**
* 专业
*/
@ApiModelProperty("专业")
private String major;
/**
* 邮箱
*/
@ApiModelProperty("邮箱")
private String email;
/**
* 从事本技术领域日期
*/
@ApiModelProperty("从事本技术领域日期")
private LocalDate technologyDate;
/**
* 从事本技术领域年限
*/
@ApiModelProperty("从事本技术领域年限")
private Double technologyYear;
/**
* 文化程度
*/
@ApiModelProperty("文化程度")
private String education;
/**
* (0删除,1正常)
*/
private Boolean isDelete;
@ApiModelProperty("(0删除,1正常)")
private Integer isDelete;
/**
* 创建时间
*/
@ApiModelProperty("创建时间")
private LocalDateTime createTime;
/**
* 修改时间
*/
@ApiModelProperty("修改时间")
private LocalDateTime updateTime;
/**
* 备注
*/
@ApiModelProperty("备注")
private String remark;
/**
* 组名称
*/
@ApiModelProperty("组名称")
private String groupName;
/**
* 职务名称
*/
@ApiModelProperty("职务名称")
private String postName;
/**
* 角色id
*/
@ApiModelProperty("角色id")
private Integer roleId;
/**
* 角色名称
*/
@ApiModelProperty("角色名称")
private String roleName;
......
......@@ -61,7 +61,7 @@ public interface IClientService extends IService<Client> {
* @param id id
* @return Boolean
*/
BaseResponse<Boolean> status(Integer status, Integer id);
BaseResponse<String> status(Integer status, Integer id);
/**
* 委托单位导出
......
package cn.wise.sc.cement.business.service;
import cn.wise.sc.cement.business.entity.EntrustApproval;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface IEntrustApprovalService extends IService<EntrustApproval> {
}
package cn.wise.sc.cement.business.service;
import cn.wise.sc.cement.business.entity.Entrust;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.model.query.*;
import cn.wise.sc.cement.business.model.vo.EntrustVo;
import cn.wise.sc.cement.business.model.vo.SampleDistributionVo;
import cn.wise.sc.cement.business.model.vo.SampleHandleVo;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface IEntrustService extends IService<Entrust> {
BaseResponse<IPage<EntrustVo>> getPage(PageQuery pageQuery, String startDate, String endDate, Integer status,
Integer clientId, String projectName);
BaseResponse<Entrust> create(EntrustQuery query);
BaseResponse<EntrustVo> getDtail(Integer id);
BaseResponse<String> approval(ApprovalQuery query);
BaseResponse<String> handle(HandleQuery query);
BaseResponse<IPage<SampleHandleVo>> getSampleHandlePage(PageQuery pageQuery, String startDate, String endDate, Integer status,
Integer clientId, String projectName);
BaseResponse<String> acceptHandle(Integer id);
BaseResponse<String> finishHandle(Integer id);
BaseResponse<String> distribution(DistributionQuery query);
BaseResponse<IPage<SampleDistributionVo>> getSampleDistributionPage(PageQuery pageQuery, String startDate, String endDate, Integer status,
Integer clientId, String projectName);
BaseResponse<String> acceptDistribution(Integer id);
BaseResponse<String> finishDistribution(Integer id);
BaseResponse<String> check(CheckQuery query);
}
......@@ -62,7 +62,7 @@ public interface IProjectService extends IService<Project> {
* @param id id
* @return Boolean
*/
BaseResponse<Boolean> status(Integer status, Integer id);
BaseResponse<String> status(Integer status, Integer id);
/**
* 项目导出
......
package cn.wise.sc.cement.business.service;
import cn.wise.sc.cement.business.entity.SampleCheck;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface ISampleCheckService extends IService<SampleCheck> {
}
package cn.wise.sc.cement.business.service;
import cn.wise.sc.cement.business.entity.SampleCheckTeam;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface ISampleCheckTeamService extends IService<SampleCheckTeam> {
}
package cn.wise.sc.cement.business.service;
import cn.wise.sc.cement.business.entity.SampleDistribution;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface ISampleDistributionService extends IService<SampleDistribution> {
}
package cn.wise.sc.cement.business.service;
import cn.wise.sc.cement.business.entity.SampleHandle;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface ISampleHandleService extends IService<SampleHandle> {
}
package cn.wise.sc.cement.business.service;
import cn.wise.sc.cement.business.entity.Sample;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface ISampleService extends IService<Sample> {
}
package cn.wise.sc.cement.business.service;
import cn.wise.sc.cement.business.entity.SampleTmp;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface ISampleTmpService extends IService<SampleTmp> {
}
package cn.wise.sc.cement.business.service;
import cn.wise.sc.cement.business.entity.SysLogs;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.model.vo.LogVo;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
public interface ISysLogsService extends IService<SysLogs> {
BaseResponse<IPage<LogVo>> getPage(PageQuery pageQuery, String startDate, String endDate, Integer objType, Integer objId);
void saveLog(Integer objType, Integer objId, String module, String remark);
}
package cn.wise.sc.cement.business.service;
import cn.wise.sc.cement.business.entity.SysPost;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.model.query.PostQuery;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.service.IService;
/**
* <p>
* 服务类
* </p>
*
* @author ztw
* @since 2020-08-25
*/
public interface ISysPostService extends IService<SysPost> {
BaseResponse<IPage<SysPost>> getPage(PageQuery pageQuery, String name);
BaseResponse<SysPost> create(PostQuery query);
BaseResponse<SysPost> update(PostQuery query);
}
......@@ -27,7 +27,7 @@ public interface ISysUserService extends IService<SysUser> {
BaseResponse<SysUser> update(UserQuery query);
BaseResponse<Boolean> status(Integer status, Integer id);
BaseResponse<String> status(Integer status, Integer id);
BaseResponse<UserVo> findById(Integer id);
......
......@@ -57,7 +57,7 @@ public interface ITeamService extends IService<Team> {
* @param id
* @return
*/
BaseResponse<Boolean> status(Integer status, Integer id);
BaseResponse<String> status(Integer status, Integer id);
/**
* 检测项导出
......
......@@ -78,7 +78,7 @@ public class ClientServiceImpl extends ServiceImpl<ClientMapper, Client> impleme
}
Client create = new Client();
BeanUtils.copyProperties(query, create);
create.setStatus(true);
create.setStatus(1);
clientMapper.insert(create);
return BaseResponse.okData(create);
}
......@@ -103,13 +103,23 @@ public class ClientServiceImpl extends ServiceImpl<ClientMapper, Client> impleme
@Override
@Transactional
public BaseResponse<Boolean> status(Integer status, Integer id) {
BusinessExceptionEnum.BAD_LICENCE_TYPE.assertNotNull(status);
BusinessExceptionEnum.BAD_LICENCE_TYPE.assertNotNull(id);
Client update = new Client();
update.setId(id);
update.setStatus(status == 1);
return BaseResponse.okData(this.updateById(update));
public BaseResponse<String> status(Integer status, Integer id) {
if(status == null || id == null){
return BaseResponse.errorMsg("参数错误!");
}
Client client = clientMapper.selectById(id);
if(client == null){
return BaseResponse.errorMsg("数据错误!");
}
client.setStatus(status);
clientMapper.updateById(client);
String result = "";
if(client.getStatus() == 1){
result = "已启用";
}else{
result = "已禁用";
}
return BaseResponse.okData(result);
}
@Override
......
package cn.wise.sc.cement.business.service.impl;
import org.springframework.stereotype.Service;
import java.text.SimpleDateFormat;
import java.util.Date;
@Service
public class CommonServiceImpl {
/**
* 生成编号
* @param prefix 编号前缀: 申请编号SQ
* @param counts 当天申请数量 生成的编号+1
* @return
*/
public String createNo(String prefix, int counts){
SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMdd");//注意月份是MM
String date = sdf.format(new Date());
int nextNo = counts+1;
String tailNo = counts==0?"00"+nextNo:(counts<10?"00"+nextNo:(counts<100?"0"+nextNo:String.valueOf(nextNo)));
String applyNo = prefix+date+tailNo;
return applyNo;
}
}
package cn.wise.sc.cement.business.service.impl;
import cn.wise.sc.cement.business.entity.EntrustApproval;
import cn.wise.sc.cement.business.mapper.EntrustApprovalMapper;
import cn.wise.sc.cement.business.service.IEntrustApprovalService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Service
public class EntrustApprovalServiceImpl extends ServiceImpl<EntrustApprovalMapper, EntrustApproval> implements IEntrustApprovalService {
}
package cn.wise.sc.cement.business.service.impl;
import cn.wise.sc.cement.business.entity.*;
import cn.wise.sc.cement.business.mapper.*;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.LoginUser;
import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.model.query.*;
import cn.wise.sc.cement.business.model.vo.*;
import cn.wise.sc.cement.business.service.*;
import cn.wise.sc.cement.business.wrapper.page.Query;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import io.swagger.models.auth.In;
import org.apache.commons.lang3.StringUtils;
import org.apache.tomcat.jni.Local;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import sun.print.BackgroundServiceLookup;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.*;
/**
* <p>
* 服务实现类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Service
public class EntrustServiceImpl extends ServiceImpl<EntrustMapper, Entrust> implements IEntrustService {
@Resource
private EntrustMapper entrustMapper;
@Autowired
private ISampleTmpService sampleTmpService;
@Autowired
private ISysUserService userService;
@Resource
private TeamMapper teamMapper;
@Autowired
private CommonServiceImpl commonService;
@Autowired
private ISampleService sampleService;
@Resource
private EntrustApprovalMapper approvalMapper;
@Autowired
private ISysLogsService logsService;
@Autowired
private ISampleHandleService sampleHandleService;
@Resource
private SampleHandleMapper sampleHandleMapper;
@Autowired
private ISampleDistributionService distributionService;
@Resource
private SampleDistributionMapper distributionMapper;
@Autowired
private ISampleCheckService sampleCheckService;
@Autowired
private ISampleCheckTeamService sampleCheckTeamService;
/**
* 委托分页
* @param pageQuery
* @param startDate
* @param endDate
* @param status
* @param clientId
* @param projectName
* @return
*/
@Override
public BaseResponse<IPage<EntrustVo>> getPage(PageQuery pageQuery, String startDate, String endDate, Integer status,
Integer clientId, String projectName){
Map<String, Object> params = new HashMap<>();
params.put("startDate", startDate);
params.put("endDate", endDate);
params.put("status", status);
params.put("clientId", clientId);
params.put("projectName", projectName);
Page<EntrustVo> page = new Page<>(pageQuery.getPageNo(), pageQuery.getPageSize());
IPage<EntrustVo> pages = entrustMapper.getPage(page, params);
List<EntrustVo> list = pages.getRecords();
if(list != null && list.size()>0){
for(EntrustVo entrustVo : list){
QueryWrapper<SampleTmp> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("entrust_id", entrustVo.getId());
List<SampleTmp> sampleTmpList = sampleTmpService.list(queryWrapper);
//检测项目名称
if(sampleTmpList != null && sampleTmpList.size()>0){
SampleTmp sampleTmp = sampleTmpList.get(0);
String teamIds = sampleTmp.getTeamIds();
String checkTeam = "";
if(teamIds != null){
String[] teamIdS = teamIds.split("、");
for(String teamId : teamIdS){
Team team = teamMapper.selectById(Integer.valueOf(teamId));
if(team != null){
team.getName();
checkTeam = checkTeam.equals("")?team.getName():(checkTeam+"、"+team.getName());
}
}
}
entrustVo.setCheckTeam(checkTeam);
}
}
}
pages.setRecords(list);
return BaseResponse.okData(pages);
}
/**
* 新增委托
* @param query
* @return
*/
@Transactional
@Override
public BaseResponse<Entrust> create(EntrustQuery query){
if(query.getClientId() == null){
return BaseResponse.errorMsg("请选择委托单位");
}
if(query.getProjectId() == null || StringUtils.isEmpty(query.getProjectCode())){
return BaseResponse.errorMsg("请选择项目");
}
if(StringUtils.isEmpty(query.getSendName()) || StringUtils.isEmpty(query.getSendPhone())){
return BaseResponse.errorMsg("请填写送样人信息");
}
Entrust entrust = new Entrust();
BeanUtils.copyProperties(query,entrust);
//生成委托编号
QueryWrapper<Entrust> entrustQueryWrapper = new QueryWrapper<>();
entrustQueryWrapper.eq("create_time", LocalDateTime.now());
String entrustCode = commonService.createNo("WT", this.count(entrustQueryWrapper));
entrust.setEntrustCode(entrustCode)
.setUserId(userService.getLoginUser()!=null?userService.getLoginUser().getId():1)
.setStatus(0)
.setIsDelete(1)
.setCreateTime(LocalDateTime.now())
.setSampleNum(query.getSampleTmpList().size());
entrustMapper.insert(entrust);
if(query.getSampleTmpList() != null && query.getSampleTmpList().size()>0){
List<SampleTmp> sampleTmpList = new ArrayList<>();
for(SampleTmpQuery sampleTmpQuery : query.getSampleTmpList()){
SampleTmp sampleTmp = new SampleTmp();
BeanUtils.copyProperties(sampleTmpQuery, sampleTmp);
sampleTmp.setEntrustId(entrust.getId()).setCreateTime(LocalDateTime.now());
sampleTmpList.add(sampleTmp);
//sampleTmpMapper.insert(sampleTmp);
}
sampleTmpService.saveBatch(sampleTmpList);
}
logsService.saveLog(SysLogs.ObjType.ENTRUST_LOG, entrust.getId(), "提交了委托单", null);
return BaseResponse.okData(entrust);
}
/**
* 委托详情
* @param id
* @return
*/
@Override
public BaseResponse<EntrustVo> getDtail(Integer id){
if(id == null){
return BaseResponse.errorMsg("参数错误");
}
EntrustVo entrustVo = entrustMapper.getDetail(id);
if(entrustVo.getStatus()==1){
QueryWrapper<Sample> sampleWrapper = new QueryWrapper<>();
sampleWrapper.eq("entrust_id", entrustVo.getId());
sampleWrapper.orderByAsc("id");
List<Sample> sampleList = sampleService.list(sampleWrapper);
List<SampleVo> sampleVoList = new ArrayList<>();
if(sampleList!= null && sampleList.size()>0){
for(Sample sample : sampleList){
SampleVo sampleVo = new SampleVo();
BeanUtils.copyProperties(sample,sampleVo);
String teamIds = sample.getTeamIds();
String teamName = "";
if(teamIds != null){
String[] teamIdS = teamIds.split("、");
for(String teamId : teamIdS){
Team team = teamMapper.selectById(Integer.valueOf(teamId));
if(team != null){
team.getName();
teamName = teamName.equals("")?team.getName():(teamName+"、"+team.getName());
}
}
}
sampleVo.setTeamName(teamName);
List<SampleDistributionTeamVo> sampleDistributionTeamVoList =
distributionMapper.getDistributionTeamList(sample.getId());
if(sampleDistributionTeamVoList != null && sampleDistributionTeamVoList.size()>0) {
sampleVo.setSampleDistributionTeamVoList(sampleDistributionTeamVoList);
}
sampleVoList.add(sampleVo);
}
}
entrustVo.setSampleList(sampleVoList);
}else{
QueryWrapper<SampleTmp> queryWrapper = new QueryWrapper<>();
queryWrapper.eq("entrust_id", entrustVo.getId());
List<SampleTmp> sampleTmpList = sampleTmpService.list(queryWrapper);
List<SampleTmpVo> sampleTmpVoList = new ArrayList<>();
if(sampleTmpList!= null && sampleTmpList.size()>0){
for(SampleTmp sampleTmp : sampleTmpList){
SampleTmpVo sampleTmpVo = new SampleTmpVo();
BeanUtils.copyProperties(sampleTmp,sampleTmpVo);
String teamIds = sampleTmp.getTeamIds();
String teamName = "";
if(teamIds != null){
String[] teamIdS = teamIds.split("、");
for(String teamId : teamIdS){
Team team = teamMapper.selectById(Integer.valueOf(teamId));
if(team != null){
team.getName();
teamName = teamName.equals("")?team.getName():(teamName+"、"+team.getName());
}
}
}
sampleTmpVo.setTeamName(teamName);
sampleTmpVoList.add(sampleTmpVo);
}
}
entrustVo.setSampleTmpList(sampleTmpVoList);
}
return BaseResponse.okData(entrustVo);
}
/**
* 委托评审
* @param query
* @return
*/
@Transactional
@Override
public BaseResponse<String> approval(ApprovalQuery query){
if(query.getId() == null || query.getIsAgree() == null){
return BaseResponse.errorMsg("参数错误");
}
Entrust entrust = entrustMapper.selectById(query.getId());
if(entrust == null){
return BaseResponse.errorMsg("信息错误");
}
if(entrust.getStatus() != 0){
return BaseResponse.errorMsg("当前状态不允许评审");
}
if(query.getIsAgree() ==1){ //通过
if(StringUtils.isEmpty(query.getProjectType())){
return BaseResponse.errorMsg("请选择项目类型");
}
if(query.getSampleList() != null && query.getSampleList().size()>0){
List<Sample> sampleList = new ArrayList<>();
for(SampleQuery sampleQuery : query.getSampleList()){
Sample sample = new Sample();
BeanUtils.copyProperties(sampleQuery, sample);
sample.setId(null).setSampleId(sampleQuery.getId()).setCreateTime(LocalDateTime.now());
if(sampleQuery.getIsParallel() ==1){ //平行样
//生成本所编号
QueryWrapper<Sample> sampleQueryWrapper = new QueryWrapper<>();
Integer nums = sampleService.count(sampleQueryWrapper);
String cementCode = commonService.createNo("BS", nums);
String cementCode2 = commonService.createNo("BS", nums+1);
sample.setCementCode(cementCode);
sampleList.add(sample);
Sample sample2 = new Sample();
BeanUtils.copyProperties(sample, sample2);
sample2.setCementCode(cementCode2);
sampleList.add(sample2);
}else if(sampleQuery.getIsParallel() ==0){ //非平行样
QueryWrapper<Sample> sampleQueryWrapper = new QueryWrapper<>();
Integer nums = sampleService.count(sampleQueryWrapper);
String cementCode = commonService.createNo("BS", nums);
sample.setCementCode(cementCode);
sampleList.add(sample);
}else{
return BaseResponse.errorMsg("请选择是否需要平行样");
}
}
sampleService.saveBatch(sampleList);
}
entrust.setStatus(1).setProjectType(query.getProjectType()).setUpdateTime(LocalDateTime.now());
logsService.saveLog(SysLogs.ObjType.ENTRUST_LOG, entrust.getId(), "修改评审状态为“通过”", null);
}else if (query.getIsAgree() == 2){ //驳回
entrust.setStatus(2).setUpdateTime(LocalDateTime.now());
logsService.saveLog(SysLogs.ObjType.ENTRUST_LOG, entrust.getId(), "修改评审状态为“驳回”", null);
}else{
return BaseResponse.errorMsg("请选择正确按钮");
}
//记录审批信息
EntrustApproval entrustApproval = new EntrustApproval();
LoginUser loginUser = userService.getLoginUser();
entrustApproval.setEntrustId(entrust.getId())
.setUserId(loginUser.getId())
.setOpinion(query.getAuditReason())
.setStatus(query.getIsAgree())
.setCreateTime(LocalDateTime.now())
.setRemark(null);
approvalMapper.insert(entrustApproval);
entrustMapper.updateById(entrust);
return BaseResponse.okMsg("审批完成");
}
/**
* 发送样品处理任务
* @param query
* @return
*/
@Transactional
@Override
public BaseResponse<String> handle(HandleQuery query){
if(query.getId() == null ){
return BaseResponse.errorMsg("参数错误");
}
Entrust entrust = entrustMapper.selectById(query.getId());
if(entrust == null){
return BaseResponse.errorMsg("信息错误");
}
if(entrust.getStatus() != 1){
return BaseResponse.errorMsg("当前状态不允许样品处理");
}
if(query.getSampleHandleQueryList() != null && query.getSampleHandleQueryList().size()>0){
List<SampleHandleQuery> sampleHandleQueryList = query.getSampleHandleQueryList();
List<SampleHandle> sampleHandleList = new ArrayList<>();
for(SampleHandleQuery sampleHandleQuery : sampleHandleQueryList){
SampleHandle sampleHandle = new SampleHandle();
if(sampleHandleQuery.getSampleId() == null){
return BaseResponse.errorMsg("样品信息错误");
}
if(sampleHandleQuery.getUserId() == null){
return BaseResponse.errorMsg("请选择处理人");
}
if(StringUtils.isEmpty(sampleHandleQuery.getContent())){
return BaseResponse.errorMsg("请填写处理项");
}
if(sampleHandleQuery.getPlanFinishDate() == null){
return BaseResponse.errorMsg("请选择要求完成日期");
}
BeanUtils.copyProperties(sampleHandleQuery, sampleHandle);
sampleHandle.setStatus(0).setCreateTime(LocalDateTime.now());
sampleHandleList.add(sampleHandle);
}
sampleHandleService.saveBatch(sampleHandleList);
}
logsService.saveLog(SysLogs.ObjType.ENTRUST_LOG, entrust.getId(), "发送样品处理任务", null);
return BaseResponse.okMsg("已发送样品处理任务");
}
/**
* 样品处理分页
* @param pageQuery
* @param startDate
* @param endDate
* @param status
* @param clientId
* @param projectName
* @return
*/
@Override
public BaseResponse<IPage<SampleHandleVo>> getSampleHandlePage(PageQuery pageQuery, String startDate, String endDate, Integer status,
Integer clientId, String projectName){
LoginUser loginUser = userService.getLoginUser();
Map<String, Object> params = new HashMap<>();
params.put("startDate", startDate);
params.put("endDate", endDate);
params.put("status", status);
params.put("clientId", clientId);
params.put("projectName", projectName);
params.put("userId", loginUser.getId());
Page<EntrustVo> page = new Page<>(pageQuery.getPageNo(), pageQuery.getPageSize());
IPage<SampleHandleVo> pages = sampleHandleMapper.getPage(page, params);
return BaseResponse.okData(pages);
}
/**
* 接受样品处理任务
* @param id
* @return
*/
@Transactional
@Override
public BaseResponse<String> acceptHandle(Integer id){
if(id == null){
return BaseResponse.errorMsg("参数错误");
}
SampleHandle sampleHandle = sampleHandleMapper.selectById(id);
if(sampleHandle == null){
return BaseResponse.errorMsg("信息错误");
}
if(sampleHandle.getStatus() != 0){
return BaseResponse.errorMsg("状态错误");
}
sampleHandle.setStatus(1).setAcceptTime(LocalDateTime.now());
sampleHandleMapper.updateById(sampleHandle);
Sample sample = sampleService.getById(sampleHandle.getSampleId());
if(sample == null){
return BaseResponse.errorMsg("样品信息错误");
}
logsService.saveLog(SysLogs.ObjType.ENTRUST_LOG, sample.getEntrustId(), "接受样品处理任务", null);
return BaseResponse.okMsg("已接受样品处理任务");
}
/**
* 完成样品处理任务
* @param id
* @return
*/
@Transactional
@Override
public BaseResponse<String> finishHandle(Integer id){
if(id == null){
return BaseResponse.errorMsg("参数错误");
}
SampleHandle sampleHandle = sampleHandleMapper.selectById(id);
if(sampleHandle == null){
return BaseResponse.errorMsg("信息错误");
}
if(sampleHandle.getStatus() != 1){
return BaseResponse.errorMsg("状态错误");
}
sampleHandle.setStatus(2).setFinishTime(LocalDateTime.now());
sampleHandleMapper.updateById(sampleHandle);
Sample sample = sampleService.getById(sampleHandle.getSampleId());
if(sample == null){
return BaseResponse.errorMsg("样品信息错误");
}
logsService.saveLog(SysLogs.ObjType.ENTRUST_LOG, sample.getEntrustId(), "完成样品处理任务", null);
return BaseResponse.okMsg("已完成样品处理任务");
}
/**
* 派发检测项目任务
* @param query
* @return
*/
@Transactional
@Override
public BaseResponse<String> distribution(DistributionQuery query){
if(query.getId() == null ){
return BaseResponse.errorMsg("参数错误");
}
Entrust entrust = entrustMapper.selectById(query.getId());
if(entrust == null){
return BaseResponse.errorMsg("信息错误");
}
if(entrust.getStatus() != 1){
return BaseResponse.errorMsg("当前状态不允许派发");
}
entrust.setRemark(query.getRemark());
if(query.getSampleDistributionQueryList() != null && query.getSampleDistributionQueryList().size()>0){
List<SampleDistributionQuery> sampleDistributionQueryList = query.getSampleDistributionQueryList();
List<SampleDistribution> sampleDistributionList = new ArrayList<>();
for(SampleDistributionQuery distributionQuery : sampleDistributionQueryList){
if(distributionQuery==null || distributionQuery.getSampleId() == null){
return BaseResponse.errorMsg("样品信息错误");
}
if(distributionQuery.getSampleDistributionTeamQueryList() != null && distributionQuery.getSampleDistributionTeamQueryList().size()>0){
List<SampleDistributionTeamQuery> sampleDistributionTeamQueryList = distributionQuery.getSampleDistributionTeamQueryList();
for(SampleDistributionTeamQuery distributionTeamQuery : sampleDistributionTeamQueryList){
if(distributionTeamQuery==null || distributionTeamQuery.getTeamId()== null){
return BaseResponse.errorMsg("检测项信息错误");
}
if(distributionTeamQuery.getUserId() == null){
return BaseResponse.errorMsg("请选择检测人员");
}
SampleDistribution sampleDistribution = new SampleDistribution();
sampleDistribution.setSampleId(distributionQuery.getSampleId())
.setTeamId(distributionTeamQuery.getTeamId())
.setUserId(distributionTeamQuery.getUserId())
.setStatus(0)
.setCreateTime(LocalDateTime.now());
sampleDistributionList.add(sampleDistribution);
}
}
}
distributionService.saveBatch(sampleDistributionList);
}
logsService.saveLog(SysLogs.ObjType.ENTRUST_LOG, entrust.getId(), "派发检测项目任务", null);
return BaseResponse.okMsg("已派发检测项目任务");
}
/**
* 派发分页
* @param pageQuery
* @param startDate
* @param endDate
* @param status
* @param clientId
* @param projectName
* @return
*/
@Override
public BaseResponse<IPage<SampleDistributionVo>> getSampleDistributionPage(PageQuery pageQuery, String startDate, String endDate, Integer status,
Integer clientId, String projectName){
LoginUser loginUser = userService.getLoginUser();
Map<String, Object> params = new HashMap<>();
params.put("startDate", startDate);
params.put("endDate", endDate);
params.put("status", status);
params.put("clientId", clientId);
params.put("projectName", projectName);
params.put("userId", loginUser.getId());
Page<SampleDistributionVo> page = new Page<>(pageQuery.getPageNo(), pageQuery.getPageSize());
IPage<SampleDistributionVo> pages = distributionMapper.getPage(page, params);
return BaseResponse.okData(pages);
}
/**
* 接受检测项目任务
* @param id
* @return
*/
@Transactional
@Override
public BaseResponse<String> acceptDistribution(Integer id){
if(id == null){
return BaseResponse.errorMsg("参数错误");
}
SampleDistribution distribution = distributionMapper.selectById(id);
if(distribution == null){
return BaseResponse.errorMsg("信息错误");
}
if(distribution.getStatus() != 0){
return BaseResponse.errorMsg("状态错误");
}
distribution.setStatus(1).setAcceptTime(LocalDateTime.now());
distributionMapper.updateById(distribution);
Sample sample = sampleService.getById(distribution.getSampleId());
if(sample == null){
return BaseResponse.errorMsg("样品信息错误");
}
logsService.saveLog(SysLogs.ObjType.ENTRUST_LOG, sample.getEntrustId(), "接受检测项目任务", null);
return BaseResponse.okMsg("已接受检测项目任务");
}
/**
* 完成检测项目任务
* @param id
* @return
*/
@Transactional
@Override
public BaseResponse<String> finishDistribution(Integer id){
if(id == null){
return BaseResponse.errorMsg("参数错误");
}
SampleDistribution distribution = distributionMapper.selectById(id);
if(distribution == null){
return BaseResponse.errorMsg("信息错误");
}
if(distribution.getStatus() != 0){
return BaseResponse.errorMsg("状态错误");
}
distribution.setStatus(1).setAcceptTime(LocalDateTime.now());
distributionMapper.updateById(distribution);
Sample sample = sampleService.getById(distribution.getSampleId());
if(sample == null){
return BaseResponse.errorMsg("样品信息错误");
}
logsService.saveLog(SysLogs.ObjType.ENTRUST_LOG, sample.getEntrustId(), "完成检测项目任务", null);
return BaseResponse.okMsg("已完成检测项目任务");
}
/**
* 数据校核
* @param query
* @return
*/
@Transactional
@Override
public BaseResponse<String> check(CheckQuery query){
if(query.getId() == null ){
return BaseResponse.errorMsg("参数错误");
}
Entrust entrust = entrustMapper.selectById(query.getId());
if(entrust == null){
return BaseResponse.errorMsg("信息错误");
}
if(entrust.getStatus() != 1){
return BaseResponse.errorMsg("当前状态不允许校核");
}
LoginUser loginUser = userService.getLoginUser();
if(loginUser == null){
return BaseResponse.errorMsg("请登录用户");
}
if(query.getSampleCheckQueryList() != null && query.getSampleCheckQueryList().size()>0){
List<SampleCheckQuery> sampleCheckQueryList = query.getSampleCheckQueryList();
for(SampleCheckQuery checkQuery : sampleCheckQueryList){
if(checkQuery==null || checkQuery.getSampleId() == null){
return BaseResponse.errorMsg("样品信息错误");
}
//保存样品 基本元素检测结果 比表面积校核结果
Sample sample = sampleService.getById(checkQuery.getSampleId());
sample.setBaseResult(checkQuery.getBaseResult())
.setSurfaceResult(checkQuery.getSurfaceResult());
sampleService.save(sample);
//保存校核表信息
SampleCheck check = new SampleCheck();
check.setSampleId(checkQuery.getSampleId())
.setUserId(loginUser.getId())
.setEquipmentId(checkQuery.getEquipmentId())
.setEquipmentName(checkQuery.getEquipmentName())
.setCreateTime(LocalDateTime.now());
sampleCheckService.save(check);
if(checkQuery.getSampleCheckTeamQueryList() != null && checkQuery.getSampleCheckTeamQueryList().size()>0){
List<SampleCheckTeam> sampleCheckTeamList = new ArrayList<>();
List<SampleCheckTeamQuery> sampleCheckTeamQueryList = checkQuery.getSampleCheckTeamQueryList();
for(SampleCheckTeamQuery checkTeamQuery : sampleCheckTeamQueryList){
if(checkTeamQuery==null ){
return BaseResponse.errorMsg("检测样品信息错误");
}
if(checkTeamQuery.getTestItemId()== null || StringUtils.isEmpty(checkTeamQuery.getTestItem())){
return BaseResponse.errorMsg("检测项目信息错误");
}
if(StringUtils.isEmpty(checkTeamQuery.getTestTeams())){
return BaseResponse.errorMsg("请录入校核结果");
}
SampleCheckTeam sampleCheckTeam = new SampleCheckTeam();
sampleCheckTeam.setCheckId(check.getId())
.setTestItemId(checkTeamQuery.getTestItemId())
.setTestItem(checkTeamQuery.getTestItem())
.setTestTeams(checkTeamQuery.getTestTeams())
.setCreateTime(LocalDateTime.now())
.setRemark(checkTeamQuery.getRemark());
sampleCheckTeamList.add(sampleCheckTeam);
}
sampleCheckTeamService.saveBatch(sampleCheckTeamList);
}
}
}
logsService.saveLog(SysLogs.ObjType.ENTRUST_LOG, entrust.getId(), "数据校核", null);
return BaseResponse.okMsg("数据校核完成");
}
}
......@@ -2,6 +2,7 @@ package cn.wise.sc.cement.business.service.impl;
import cn.hutool.core.util.StrUtil;
import cn.wise.sc.cement.business.entity.Method;
import cn.wise.sc.cement.business.entity.Project;
import cn.wise.sc.cement.business.mapper.MethodMapper;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.PageQuery;
......@@ -13,11 +14,13 @@ import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.core.toolkit.CollectionUtils;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
......@@ -64,8 +67,17 @@ public class MethodServiceImpl extends ServiceImpl<MethodMapper, Method> impleme
@Override
public BaseResponse<Method> create(MethodQuery query) {
Method crate = Method.crate(query);
this.save(crate);
QueryWrapper<Method> qw = new QueryWrapper<>();
qw.eq("name", query.getName());
int count = methodMapper.selectCount(qw);
if(count>0){
return BaseResponse.errorMsg("检测方法名称已存在!");
}
Method crate = new Method();
BeanUtils.copyProperties(query, crate);
crate.setCreateTime(LocalDateTime.now())
.setRemark(null);
methodMapper.insert(crate);
return BaseResponse.okData(crate);
}
......
......@@ -28,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
......@@ -81,7 +82,9 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
}
Project create = new Project();
BeanUtils.copyProperties(query, create);
create.setStatus(true);
create.setStatus(1)
.setCreateTime(LocalDateTime.now())
.setRemark(null);
projectMapper.insert(create);
return BaseResponse.okData(create);
}
......@@ -106,13 +109,23 @@ public class ProjectServiceImpl extends ServiceImpl<ProjectMapper, Project> impl
@Override
@Transactional
public BaseResponse<Boolean> status(Integer status, Integer id) {
BusinessExceptionEnum.BAD_LICENCE_TYPE.assertNotNull(status);
BusinessExceptionEnum.BAD_LICENCE_TYPE.assertNotNull(id);
Project update = new Project();
update.setId(id);
update.setStatus(status == 1);
return BaseResponse.okData(this.updateById(update));
public BaseResponse<String> status(Integer status, Integer id) {
if (status == null || id == null) {
return BaseResponse.errorMsg("参数错误!");
}
Project project = projectMapper.selectById(id);
if (project == null) {
return BaseResponse.errorMsg("数据错误!");
}
project.setStatus(status);
projectMapper.updateById(project);
String result = "";
if (project.getStatus() == 1) {
result = "已启用";
} else {
result = "已禁用";
}
return BaseResponse.okData(result);
}
@Override
......
package cn.wise.sc.cement.business.service.impl;
import cn.wise.sc.cement.business.entity.SampleCheck;
import cn.wise.sc.cement.business.mapper.SampleCheckMapper;
import cn.wise.sc.cement.business.service.ISampleCheckService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Service
public class SampleCheckServiceImpl extends ServiceImpl<SampleCheckMapper, SampleCheck> implements ISampleCheckService {
}
package cn.wise.sc.cement.business.service.impl;
import cn.wise.sc.cement.business.entity.SampleCheckTeam;
import cn.wise.sc.cement.business.mapper.SampleCheckTeamMapper;
import cn.wise.sc.cement.business.service.ISampleCheckTeamService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Service
public class SampleCheckTeamServiceImpl extends ServiceImpl<SampleCheckTeamMapper, SampleCheckTeam> implements ISampleCheckTeamService {
}
package cn.wise.sc.cement.business.service.impl;
import cn.wise.sc.cement.business.entity.SampleDistribution;
import cn.wise.sc.cement.business.mapper.SampleDistributionMapper;
import cn.wise.sc.cement.business.service.ISampleDistributionService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Service
public class SampleDistributionServiceImpl extends ServiceImpl<SampleDistributionMapper, SampleDistribution> implements ISampleDistributionService {
}
package cn.wise.sc.cement.business.service.impl;
import cn.wise.sc.cement.business.entity.SampleHandle;
import cn.wise.sc.cement.business.mapper.SampleHandleMapper;
import cn.wise.sc.cement.business.service.ISampleHandleService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Service
public class SampleHandleServiceImpl extends ServiceImpl<SampleHandleMapper, SampleHandle> implements ISampleHandleService {
}
package cn.wise.sc.cement.business.service.impl;
import cn.wise.sc.cement.business.entity.Sample;
import cn.wise.sc.cement.business.mapper.SampleMapper;
import cn.wise.sc.cement.business.service.ISampleService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Service
public class SampleServiceImpl extends ServiceImpl<SampleMapper, Sample> implements ISampleService {
}
package cn.wise.sc.cement.business.service.impl;
import cn.wise.sc.cement.business.entity.SampleTmp;
import cn.wise.sc.cement.business.mapper.SampleTmpMapper;
import cn.wise.sc.cement.business.service.ISampleTmpService;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.stereotype.Service;
/**
* <p>
* 服务实现类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Service
public class SampleTmpServiceImpl extends ServiceImpl<SampleTmpMapper, SampleTmp> implements ISampleTmpService {
}
......@@ -62,7 +62,7 @@ public class SysApprovalServiceImpl extends ServiceImpl<SysApprovalMapper, SysAp
if (count > 0) {
return BaseResponse.errorMsg(query.getName() + "已存在");
}
query.setStatus(true);
query.setStatus(1);
query.setCreateTime(LocalDateTime.now());
approvalMapper.insert(query);
return BaseResponse.okData(query);
......
......@@ -61,7 +61,7 @@ public class SysGroupServiceImpl extends ServiceImpl<SysGroupMapper, SysGroup> i
return BaseResponse.errorMsg(query.getName() + "已存在");
}
query.setCreateTime(LocalDateTime.now());
query.setStatus(true);
query.setStatus(1);
groupMapper.insert(query);
return BaseResponse.okData(query);
}
......
package cn.wise.sc.cement.business.service.impl;
import ch.qos.logback.classic.net.SyslogAppender;
import cn.wise.sc.cement.business.entity.SysLogs;
import cn.wise.sc.cement.business.mapper.SysLogsMapper;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.LoginUser;
import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.model.vo.GroupVo;
import cn.wise.sc.cement.business.model.vo.LogVo;
import cn.wise.sc.cement.business.service.ISysLogsService;
import cn.wise.sc.cement.business.service.ISysUserService;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.Map;
/**
* <p>
* 服务实现类
* </p>
*
* @author ztw
* @since 2020-08-24
*/
@Service
public class SysLogsServiceImpl extends ServiceImpl<SysLogsMapper, SysLogs> implements ISysLogsService {
@Resource
private SysLogsMapper logsMapper;
@Autowired
private ISysUserService userService;
/**
* 分页列表
* @param pageQuery
* @param startDate
* @param endDate
* @param objType
* @param objId
* @return
*/
public BaseResponse<IPage<LogVo>> getPage(PageQuery pageQuery, String startDate, String endDate, Integer objType, Integer objId) {
Map<String, Object> params = new HashMap<>();
params.put("startDate", startDate);
params.put("endDate", endDate);
params.put("objType", objType);
params.put("objId", objId);
Page<LogVo> page = new Page<>(pageQuery.getPageNo(), pageQuery.getPageSize());
IPage<LogVo> pages = logsMapper.getPage(page, params);
return BaseResponse.okData(pages);
}
/**
* 添加日志
* @param objType
* @param objId
* @param module
* @param remark
*/
@Transactional
@Override
public void saveLog(Integer objType, Integer objId, String module, String remark){
LoginUser loginUser = userService.getLoginUser();
SysLogs sysLogs = new SysLogs();
sysLogs.setUserId(loginUser.getId())
.setObjType(objType)
.setObjId(objId)
.setModule(module)
.setFlag(1)
.setCreateTime(LocalDateTime.now())
.setRemark(remark);
logsMapper.insert(sysLogs);
}
}
package cn.wise.sc.cement.business.service.impl;
import cn.wise.sc.cement.business.entity.SysGroup;
import cn.wise.sc.cement.business.entity.SysPost;
import cn.wise.sc.cement.business.entity.SysRole;
import cn.wise.sc.cement.business.mapper.SysPostMapper;
import cn.wise.sc.cement.business.model.BaseResponse;
import cn.wise.sc.cement.business.model.PageQuery;
import cn.wise.sc.cement.business.model.query.PostQuery;
import cn.wise.sc.cement.business.model.query.RoleQuery;
import cn.wise.sc.cement.business.service.ISysPostService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.CollectionUtils;
import javax.annotation.Resource;
import java.time.LocalDateTime;
import java.util.List;
/**
* <p>
* 服务实现类
* </p>
*
* @author ztw
* @since 2020-08-25
*/
@Service
public class SysPostServiceImpl extends ServiceImpl<SysPostMapper, SysPost> implements ISysPostService {
@Resource
private SysPostMapper postMapper;
/**
* 获取分页
* @param pageQuery
* @param name
* @return
*/
@Override
public BaseResponse<IPage<SysPost>> getPage(PageQuery pageQuery, String name) {
QueryWrapper<SysPost> qw = new QueryWrapper<>();
if(StringUtils.isNotEmpty(name)){
qw.like("name", name);
}
qw.orderByDesc("create_time");
IPage<SysPost> page = new Page<>(pageQuery.getPageNo(), pageQuery.getPageSize());
page = postMapper.selectPage(page, qw);
return BaseResponse.okData(page);
}
/**
* 新增职务
* @param query
* @return
*/
@Override
@Transactional
public BaseResponse<SysPost> create(PostQuery query) {
if (StringUtils.isEmpty(query.getName())) {
return BaseResponse.errorMsg("职务名称不能为空!");
}
QueryWrapper<SysPost> qw = new QueryWrapper<>();
qw.eq("name", query.getName());
int count = postMapper.selectCount(qw);
if (count > 0) {
return BaseResponse.errorMsg(query.getName() + "已存在");
}
SysPost post = new SysPost();
BeanUtils.copyProperties(query,post);
post.setStatus(1);
post.setCreateTime(LocalDateTime.now());
postMapper.insert(post);
return BaseResponse.okData(post);
}
/**
* 修改职务
* @param query
* @return
*/
@Override
public BaseResponse<SysPost> update(PostQuery query) {
if (StringUtils.isEmpty(query.getName())) {
return BaseResponse.errorMsg("职务名称不能为空!");
}
QueryWrapper<SysPost> qw = new QueryWrapper<>();
qw.eq("name", query.getName());
qw.ne("id", query.getId());
int count = postMapper.selectCount(qw);
if (count > 0) {
return BaseResponse.errorMsg(query.getName() + "已存在");
}
SysPost post = new SysPost();
BeanUtils.copyProperties(query,post);
postMapper.updateById(post);
return BaseResponse.okData(post);
}
}
......@@ -79,7 +79,7 @@ public class SysRoleServiceImpl extends ServiceImpl<SysRoleMapper, SysRole> impl
SysRole role = new SysRole();
BeanUtils.copyProperties(query,role);
List<Integer> permissionIds = query.getPermissionIds();
role.setStatus(true);
role.setStatus(1);
role.setCreateTime(LocalDateTime.now());
roleMapper.insert(role);
if (!CollectionUtils.isEmpty(permissionIds)) {
......
......@@ -25,6 +25,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletResponse;
import java.time.LocalDateTime;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
......@@ -76,7 +77,7 @@ public class TeamServiceImpl extends ServiceImpl<TeamMapper, Team> implements IT
public BaseResponse<Team> create(TeamQuery query) {
Team create = new Team();
BeanUtils.copyProperties(query, create);
create.setStatus(true);
create.setStatus(1).setCreateTime(LocalDateTime.now());
teamMapper.insert(create);
return BaseResponse.okData(create);
}
......@@ -91,13 +92,23 @@ public class TeamServiceImpl extends ServiceImpl<TeamMapper, Team> implements IT
@Override
@Transactional
public BaseResponse<Boolean> status(Integer status, Integer id) {
BusinessExceptionEnum.BAD_LICENCE_TYPE.assertNotNull(status);
BusinessExceptionEnum.BAD_LICENCE_TYPE.assertNotNull(id);
Team update = new Team();
update.setId(id);
update.setStatus(status == 1);
return BaseResponse.okData(this.updateById(update));
public BaseResponse<String> status(Integer status, Integer id) {
if(status == null || id == null){
return BaseResponse.errorMsg("参数错误!");
}
Team team = teamMapper.selectById(id);
if(team == null){
return BaseResponse.errorMsg("数据错误!");
}
team.setStatus(status);
teamMapper.updateById(team);
String result = "";
if(team.getStatus() == 1){
result = "已启用";
}else{
result = "已禁用";
}
return BaseResponse.okData(result);
}
@Override
......
......@@ -28,6 +28,7 @@ import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource;
import javax.servlet.http.HttpServletRequest;
import java.time.LocalDateTime;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -113,9 +114,9 @@ public class UserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impleme
if (count > 0) {
return BaseResponse.errorMsg("手机号已存在!");
}
SysUser user = new SysUser();
BeanUtils.copyProperties(query,user);
user.setStatus(1).setIsDelete(1).setCreateTime(LocalDateTime.now());
userMapper.insert(user);
return BaseResponse.okData(user);
}
......@@ -153,13 +154,23 @@ public class UserServiceImpl extends ServiceImpl<SysUserMapper, SysUser> impleme
*/
@Override
@Transactional
public BaseResponse<Boolean> status(Integer status, Integer id) {
BusinessExceptionEnum.BAD_LICENCE_TYPE.assertNotNull(status);
BusinessExceptionEnum.BAD_LICENCE_TYPE.assertNotNull(id);
SysUser update = new SysUser();
update.setId(id);
update.setStatus(status == 1);
return BaseResponse.okData(this.updateById(update));
public BaseResponse<String> status(Integer status, Integer id) {
if(status == null || id == null){
return BaseResponse.errorMsg("参数错误!");
}
SysUser user = userMapper.selectById(id);
if(user == null){
return BaseResponse.errorMsg("数据错误!");
}
user.setStatus(status);
userMapper.updateById(user);
String result = "";
if(user.getStatus() == 1){
result = "已启用";
}else{
result = "已禁用";
}
return BaseResponse.okData(result);
}
/**
......
......@@ -63,10 +63,10 @@ public class WeiXinService {
if(sysUser == null){
return BaseResponse.errorMsg("非系统用户不允许登录!");
}
if(sysUser.getStatus()==false){
if(sysUser.getStatus()==0){
return BaseResponse.errorMsg("用户被禁用!");
}
if(sysUser.getIsDelete()==false){
if(sysUser.getIsDelete()==0){
return BaseResponse.errorMsg("用户被删除!");
}
//生成token,存入redis
......
package cn.wise.sc.cement.business.util.dfs;
import org.apache.commons.io.FilenameUtils;
import org.csource.common.MyException;
import org.csource.common.NameValuePair;
import org.csource.fastdfs.*;
import java.io.FileNotFoundException;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;
/**
* 上传图片到FastDFS
*/
public class FastDFSUtils {
static {
try {
// ClientGlobal.initByProperties(FastDFSUtils.class.getClassLoader().getResource("fastdfs-client.properties").getPath());
ClientGlobal.initByProperties("fastdfs-client.properties");
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
} catch (MyException e) {
e.printStackTrace();
}
}
public static String[] uploadPic(String path, String fileName, long size) {
String[] fileIds = null;
try {
// ClientGloble 读配置文件
// 老大客户端
TrackerClient trackerClient = new TrackerClient();
TrackerServer trackerServer = trackerClient.getConnection();
StorageServer storageServer = null;
StorageClient storageClient = new StorageClient(trackerServer, storageServer);
String extName = FilenameUtils.getExtension(fileName);
NameValuePair[] meta_list = new NameValuePair[3];
meta_list[0] = new NameValuePair("fileName", fileName);
meta_list[1] = new NameValuePair("fileExt", extName);
meta_list[2] = new NameValuePair("fileSize", String.valueOf(size));
// http://172.16.15.244:8081/group1/M00/00/00/rBAP9FfFG62AZsuBAADeW7MfEHA287.png
// group1/M00/00/01/wKjIgFWOYc6APpjAAAD-qk29i78248.jpg
fileIds = storageClient.upload_file(path, extName, meta_list);
} catch (Exception e) {
e.printStackTrace();
}
return fileIds;
}
public static String[] uploadPic(InputStream inStream, String fileName, long size) {
String[] fileIds = null;
try {
// ClientGloble 读配置文件
// 老大客户端
TrackerClient trackerClient = new TrackerClient();
TrackerServer trackerServer = trackerClient.getConnection();
StorageServer storageServer = null;
StorageClient storageClient = new StorageClient(trackerServer, storageServer);
String extName = FilenameUtils.getExtension(fileName);
NameValuePair[] meta_list = new NameValuePair[3];
meta_list[0] = new NameValuePair("fileName", fileName);
meta_list[1] = new NameValuePair("fileExt", extName);
meta_list[2] = new NameValuePair("fileSize", String.valueOf(size));
// http://172.16.15.244:8081/group1/M00/00/00/rBAP9FfFG62AZsuBAADeW7MfEHA287.png
// group1/M00/00/01/wKjIgFWOYc6APpjAAAD-qk29i78248.jpg
fileIds = storageClient.upload_file(null, size, new UploadFileSender(inStream), extName, meta_list);
} catch (Exception e) {
e.printStackTrace();
}
return fileIds;
}
public static byte[] fileDownload(String fileUrl) {
byte[] by = null;
TrackerClient trackerClient = null;
TrackerServer trackerServer = null;
StorageClient1 storageClient1 = null;
StorageServer storageServer = null;
try {
trackerClient = new TrackerClient();
trackerServer = trackerClient.getConnection();
storageClient1 = new StorageClient1(trackerServer, storageServer);
// 根据文件标识下载文件
by = storageClient1.download_file1(fileUrl);
// 将数据写入输出流
} catch (IOException e) {
e.printStackTrace();
} catch (MyException e) {
e.printStackTrace();
}
return by;
}
public static String uploadPic(byte[] pic, String fileName, long size) {
String[] fileIds = null;
try {
// ClientGloble 读配置文件
// 老大客户端
TrackerClient trackerClient = new TrackerClient();
TrackerServer trackerServer = trackerClient.getConnection();
StorageServer storageServer = null;
StorageClient storageClient = new StorageClient(trackerServer, storageServer);
String extName = FilenameUtils.getExtension(fileName);
// 设置图片meta信息
NameValuePair[] meta_list = new NameValuePair[3];
meta_list[0] = new NameValuePair("fileName", fileName);
meta_list[1] = new NameValuePair("fileExt", extName);
meta_list[2] = new NameValuePair("fileSize", String.valueOf(size));
// 上传且返回path
fileIds = storageClient.upload_file(pic, extName, meta_list);
return fileIds[0] + "/" + fileIds[1];
} catch (Exception e) {
e.printStackTrace();
}
return null;
}
public static boolean deletePic(String fileUrl) {
try {
TrackerClient tracker = new TrackerClient();
TrackerServer trackerServer = tracker.getConnection();
StorageServer storageServer = null;
StorageClient storageClient = new StorageClient(trackerServer, storageServer);
StorePath storePath = StorePath.praseFromUrl(fileUrl);
int i = storageClient.delete_file(storePath.getGroup(), storePath.getPath());
System.out.println(i == 0 ? "删除成功" : "删除失败:" + i);
return i == 0;
} catch (Exception e) {
e.printStackTrace();
}
return false;
}
public static String deletePic(String[] fileIds) {
try {
TrackerClient tracker = new TrackerClient();
TrackerServer trackerServer = tracker.getConnection();
StorageServer storageServer = null;
StorageClient storageClient = new StorageClient(trackerServer, storageServer);
int i = storageClient.delete_file(fileIds[0], fileIds[1]);
System.out.println(i == 0 ? "删除成功" : "删除失败:" + i);
} catch (Exception e) {
e.printStackTrace();
}
return fileIds[1];
}
private static class UploadFileSender implements UploadCallback {
private InputStream inStream;
public UploadFileSender(InputStream inStream) {
this.inStream = inStream;
}
@Override
public int send(OutputStream out) throws IOException {
int readBytes;
while ((readBytes = inStream.read()) > 0) {
out.write(readBytes);
}
return 0;
}
}
}
\ No newline at end of file
package cn.wise.sc.cement.business.util.dfs;
import org.apache.commons.io.FilenameUtils;
import org.apache.commons.lang3.StringUtils;
import javax.imageio.ImageIO;
import javax.imageio.ImageReader;
import javax.imageio.stream.ImageInputStream;
import java.awt.image.BufferedImage;
import java.io.*;
import java.util.*;
import java.util.Map.Entry;
public class FileTypeUtil {
private final static Map<String, String> FILE_TYPE_MAP = new HashMap<String, String>();
private final static List<String> imageAllowFiles = Arrays
.asList(new String[] { "png", "jpg", "jpeg", "gif", "bmp" });/* 允许上传的图片格式 */
static {
getAllFileType(); // 初始化文件类型信息
}
/**
* <p>
* Discription:[getAllFileType,常见文件头信息] 注:TXT文件没有文件头
* </p>
*/
private static void getAllFileType() {
FILE_TYPE_MAP.put("jpg", "FFD8FF"); // JPEG (jpg)
FILE_TYPE_MAP.put("png", "89504E47"); // PNG (png)
FILE_TYPE_MAP.put("gif", "47494638"); // GIF (gif)
FILE_TYPE_MAP.put("tif", "49492A00"); // TIFF (tif)
FILE_TYPE_MAP.put("bmp", "424D"); // Windows Bitmap (bmp)
FILE_TYPE_MAP.put("dwg", "41433130"); // CAD (dwg)
FILE_TYPE_MAP.put("html", "68746D6C3E"); // HTML (html)
FILE_TYPE_MAP.put("rtf", "7B5C727466"); // Rich Text Format (rtf)
FILE_TYPE_MAP.put("xml", "3C3F786D6C");
FILE_TYPE_MAP.put("zip", "504B0304");
FILE_TYPE_MAP.put("rar", "52617221");
FILE_TYPE_MAP.put("psd", "38425053"); // Photoshop (psd)
FILE_TYPE_MAP.put("eml", "44656C69766572792D646174653A"); // Email
// [thorough
// only]
// (eml)
FILE_TYPE_MAP.put("dbx", "CFAD12FEC5FD746F"); // Outlook Express (dbx)
FILE_TYPE_MAP.put("pst", "2142444E"); // Outlook (pst)
FILE_TYPE_MAP.put("xls", "D0CF11E0"); // MS Word
FILE_TYPE_MAP.put("doc", "D0CF11E0"); // MS Excel 注意:word 和 excel的文件头一样
FILE_TYPE_MAP.put("mdb", "5374616E64617264204A"); // MS Access (mdb)
FILE_TYPE_MAP.put("wpd", "FF575043"); // WordPerfect (wpd)
FILE_TYPE_MAP.put("eps", "252150532D41646F6265");
FILE_TYPE_MAP.put("ps", "252150532D41646F6265");
FILE_TYPE_MAP.put("pdf", "255044462D312E"); // Adobe Acrobat (pdf)
FILE_TYPE_MAP.put("qdf", "AC9EBD8F"); // Quicken (qdf)
FILE_TYPE_MAP.put("pwl", "E3828596"); // Windows Password (pwl)
FILE_TYPE_MAP.put("wav", "57415645"); // Wave (wav)
FILE_TYPE_MAP.put("avi", "41564920");
FILE_TYPE_MAP.put("ram", "2E7261FD"); // Real Audio (ram)
FILE_TYPE_MAP.put("rm", "2E524D46"); // Real Media (rm)
FILE_TYPE_MAP.put("mpg", "000001BA"); //
FILE_TYPE_MAP.put("mov", "6D6F6F76"); // Quicktime (mov)
FILE_TYPE_MAP.put("asf", "3026B2758E66CF11"); // Windows Media (asf)
FILE_TYPE_MAP.put("mid", "4D546864"); // MIDI (mid)
}
/**
* <p>
* Discription:[getFileTypeByStream]
* </p>
*/
public final static String getFileTypeByStream(byte[] b) {
String filetypeHex = String.valueOf(getFileHexString(b));
Iterator<Entry<String, String>> entryiterator = FILE_TYPE_MAP.entrySet().iterator();
while (entryiterator.hasNext()) {
Entry<String, String> entry = entryiterator.next();
String fileTypeHexValue = entry.getValue();
if (filetypeHex.toUpperCase().startsWith(fileTypeHexValue)) {
return entry.getKey();
}
}
return null;
}
/**
* <p>
* Discription:[getFileByFile,获取文件类型,包括图片,若格式不是已配置的,则返回null]
* </p>
*/
public final static String getFileTypeByFile(File file) {
String fileType = null;
byte[] b = new byte[50];
try {
InputStream is = new FileInputStream(file);
is.read(b);
fileType = getFileTypeByStream(b);
is.close();
} catch (FileNotFoundException e) {
e.printStackTrace();
} catch (IOException e) {
e.printStackTrace();
}
return fileType;
}
/**
* <p>
* Discription:[getFileHexString]
* </p>
*/
public final static String getFileHexString(byte[] b) {
StringBuilder stringBuilder = new StringBuilder();
if (b == null || b.length <= 0) {
return null;
}
for (int i = 0; i < b.length; i++) {
int v = b[i] & 0xFF;
String hv = Integer.toHexString(v);
if (hv.length() < 2) {
stringBuilder.append(0);
}
stringBuilder.append(hv);
}
return stringBuilder.toString();
}
/**
* <p>
* Discription:[getImageFileType,获取图片文件实际类型,若不是图片则返回null]
* </p>
*/
public final static String getImageFileType(File f) {
if (isImage(f)) {
try {
ImageInputStream iis = ImageIO.createImageInputStream(f);
Iterator<ImageReader> iter = ImageIO.getImageReaders(iis);
if (!iter.hasNext()) {
return null;
}
ImageReader reader = iter.next();
iis.close();
return reader.getFormatName();
} catch (IOException e) {
e.printStackTrace();
return null;
} catch (Exception e) {
e.printStackTrace();
return null;
}
}
return null;
}
/**
* 只根据后缀名判断是否为图片
*
* @param file
* @return
*/
public static final boolean isImage(File file) {
return isImage(file, true);
}
/**
* <p>
* Discription:[isImage,判断文件是否为图片]
* </p>
*
* @param file
* 源文件
* @param onlyByExtension
* 是否值验证后缀名
* @return true 是 | false 否
*/
public static final boolean isImage(File file, boolean onlyByExtension) {
boolean flag = false;
try {
boolean allowFile = isImageByExtension(file.getName());
if (onlyByExtension) {
flag = allowFile;
} else {
if (allowFile) {
BufferedImage bufreader = ImageIO.read(file);
int width = bufreader.getWidth();
int height = bufreader.getHeight();
if (width == 0 || height == 0) {
flag = false;
} else {
flag = true;
}
}
}
} catch (IOException e) {
flag = false;
e.printStackTrace();
} catch (Exception e) {
flag = false;
e.printStackTrace();
}
return flag;
}
/**
* 只通过后缀名判断是否为图片
*
* @param fileName
* @return
*/
public static final boolean isImageByExtension(String fileName) {
boolean flag = false;
String fileExtName = FilenameUtils.getExtension(fileName);
if (StringUtils.isNotBlank(fileExtName)) {
flag = imageAllowFiles.contains(fileExtName.toLowerCase());
}
return flag;
}
}
package cn.wise.sc.cement.business.util.dfs;
import cn.wise.sc.cement.business.exception.FdfsUnsupportStorePathException;
import org.apache.commons.lang3.Validate;
/**
* 存储文件的路径信息
*
* @author yuqih
*
*/
public class StorePath {
private String group;
private String path;
/** 解析路径 */
private static final String SPLIT_GROUP_NAME_AND_FILENAME_SEPERATOR = "/";
/** group */
private static final String SPLIT_GROUP_NAME = "group";
/**
* 存储文件路径
*/
public StorePath() {
}
/**
* 存储文件路径
*
* @param group
* @param path
*/
public StorePath(String group, String path) {
super();
this.group = group;
this.path = path;
}
/**
* @return the group
*/
public String getGroup() {
return group;
}
/**
* @param group
* the group to set
*/
public void setGroup(String group) {
this.group = group;
}
/**
* @return the path
*/
public String getPath() {
return path;
}
/**
* @param path
* the path to set
*/
public void setPath(String path) {
this.path = path;
}
/**
* 获取文件全路径
*
* @return
*/
public String getFullPath() {
return this.group.concat(SPLIT_GROUP_NAME_AND_FILENAME_SEPERATOR).concat(this.path);
}
/*
* (non-Javadoc)
*
* @see java.lang.Object#toString()
*/
@Override
public String toString() {
return "StorePath [group=" + group + ", path=" + path + "]";
}
/**
* 从Url当中解析存储路径对象
*
* @param filePath
* 有效的路径样式为(group/path) 或者 (http://ip/group/path),路径地址必须包含group
* @return
*/
public static StorePath praseFromUrl(String filePath) {
Validate.notNull(filePath, "解析文件路径不能为空");
// 获取group起始位置
int groupStartPos = getGroupStartPos(filePath);
String groupAndPath = filePath.substring(groupStartPos);
int pos = groupAndPath.indexOf(SPLIT_GROUP_NAME_AND_FILENAME_SEPERATOR);
if ((pos <= 0) || (pos == groupAndPath.length() - 1)) {
throw new FdfsUnsupportStorePathException("解析文件路径错误,有效的路径样式为(group/path) 而当前解析路径为".concat(filePath));
}
String group = groupAndPath.substring(0, pos);
String path = groupAndPath.substring(pos + 1);
return new StorePath(group, path);
}
/**
* 获得group起始位置
*
* @param filePath
*/
private static int getGroupStartPos(String filePath) {
int pos = filePath.indexOf(SPLIT_GROUP_NAME);
if ((pos == -1)) {
throw new FdfsUnsupportStorePathException("解析文件路径错误,被解析路径url没有group,当前解析路径为".concat(filePath));
}
return pos;
}
}
\ No newline at end of file
fastdfs.connect_timeout=2000
fastdfs.network_timeout=1501
fastdfs.charset=UTF-8
fastdfs.http.tracker_http_port=8888
fastdfs.http.anti_steal_token=no
fastdfs.http.secret_key=FastDFS1234567890
fastdfs.tracker_servers=192.168.110.85:22122
#fastdfs.tracker_servers=localhost:22122
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