diff --git a/src/main/java/com/bonus/aqgqj/basis/controller/ExperimentalController.java b/src/main/java/com/bonus/aqgqj/basis/controller/ExperimentalController.java index 38e6f01..3bfb3e2 100644 --- a/src/main/java/com/bonus/aqgqj/basis/controller/ExperimentalController.java +++ b/src/main/java/com/bonus/aqgqj/basis/controller/ExperimentalController.java @@ -78,4 +78,26 @@ public class ExperimentalController { public ServerResponse addTestData(EncryptedReq data) { return service.addTestData(data.getData()); } + + @PostMapping(value = "editTestData") + @DecryptAndVerify(decryptedClass = TestVo.class)//加解密统一管理 + @LogAnnotation(operModul = "试验详情管理", operation = "修改试验数据", operDesc = "系统级事件", operType = "修改") + // @PreAuthorize("@pms.hasPermission('sys:experimentalTest:edit')") + public ServerResponse editTestData(EncryptedReq data) { + return service.editTestData(data.getData()); + } + + @PostMapping(value = "delTestData") + @DecryptAndVerify(decryptedClass = ParamsDto.class)//加解密统一管理 + @LogAnnotation(operModul = "试验详情管理", operation = "删除试验数据", operDesc = "系统级事件", operType = "删除") + // @PreAuthorize("@pms.hasPermission('sys:experimentalTest:del')") + public ServerResponse delTestData(EncryptedReq data) { + return service.delTestData(data.getData()); + } + + @PostMapping(value = "viewTestData") + @DecryptAndVerify(decryptedClass = ParamsDto.class)//加解密统一管理 + public ServerResponse viewTestData(EncryptedReq data) { + return service.viewTestData(data.getData()); + } } diff --git a/src/main/java/com/bonus/aqgqj/basis/controller/ToolsManageController.java b/src/main/java/com/bonus/aqgqj/basis/controller/ToolsManageController.java index e7f3d91..5f4915a 100644 --- a/src/main/java/com/bonus/aqgqj/basis/controller/ToolsManageController.java +++ b/src/main/java/com/bonus/aqgqj/basis/controller/ToolsManageController.java @@ -5,6 +5,7 @@ import com.bonus.aqgqj.annotation.LogAnnotation; import com.bonus.aqgqj.basis.entity.dto.ToolsManageDto; import com.bonus.aqgqj.basis.service.ToolsManageService; import com.bonus.aqgqj.model.PasswordConfig; +import com.bonus.aqgqj.model.Role; import com.bonus.aqgqj.model.SysUser; import com.bonus.aqgqj.system.dao.UserDao; import com.bonus.aqgqj.system.service.UserService; @@ -33,9 +34,10 @@ import java.util.Objects; /** - * 工器具管理 + * 工器具个体管理 + * @author hay */ -@Api(tags = "工器具管理") +@Api(tags = "工器具个体管理") @RestController @RequestMapping("/tools/") public class ToolsManageController { @@ -47,7 +49,7 @@ public class ToolsManageController { @PostMapping(value = "getList") @DecryptAndVerify(decryptedClass = ToolsManageDto.class) - @LogAnnotation(operModul = "系统管理-用户管理", operation = "查询用列表", operDesc = "系统级事件",operType="查询") + @LogAnnotation(operModul = "工器具管理-工器具个体管理", operation = "查询用列表", operDesc = "系统级事件",operType="查询") @PreAuthorize("@pms.hasPermission('sys:tools:query')" ) public ServerResponse listUsers(EncryptedReq data) { PageHelper.startPage(data.getData().getPage(), data.getData().getLimit()); @@ -61,4 +63,34 @@ public class ToolsManageController { return ServerResponse.createErrorPage(data.getData().getPage(),data.getData().getLimit()); } + @PostMapping(value = "getDetailsList") + @DecryptAndVerify(decryptedClass = ToolsManageDto.class) + @LogAnnotation(operModul = "工器具管理-工器具个体管理详情", operation = "查询用列表", operDesc = "系统级事件",operType="查询") + @PreAuthorize("@pms.hasPermission('sys:tools:query')" ) + public ServerResponse getDetailsList(EncryptedReq data) { + PageHelper.startPage(data.getData().getPage(), data.getData().getLimit()); + try { + List list = toolsManageService.getDetailsList(data.getData()); + PageInfo pageInfo = new PageInfo<>(list); + return ServerResponse.createSuccessPage(pageInfo,data.getData().getPage(),data.getData().getLimit()); + } catch (Exception e) { + log.error(e.toString(),e); + } + return ServerResponse.createErrorPage(data.getData().getPage(),data.getData().getLimit()); + } + + + @PostMapping(value = "all") + @LogAnnotation(operModul = "工器具管理", operation = "查询所有工器具", operDesc = "系统级事件",operType="查询") + @PreAuthorize("@pms.hasPermission('sys:tools:query')" ) + public ServerResponse getAll() { + try { + List list = toolsManageService.listTools(); + return ServerResponse.createSuccess(list); + }catch (Exception e){ + log.error(e.toString(),e); + } + return ServerResponse.createErroe("操作失败"); + } + } diff --git a/src/main/java/com/bonus/aqgqj/basis/dao/ExperimentalMapper.java b/src/main/java/com/bonus/aqgqj/basis/dao/ExperimentalMapper.java index 8e9b384..e05ba1d 100644 --- a/src/main/java/com/bonus/aqgqj/basis/dao/ExperimentalMapper.java +++ b/src/main/java/com/bonus/aqgqj/basis/dao/ExperimentalMapper.java @@ -1,10 +1,7 @@ package com.bonus.aqgqj.basis.dao; import com.bonus.aqgqj.basis.entity.dto.ParamsDto; -import com.bonus.aqgqj.basis.entity.vo.ExperBasisVo; -import com.bonus.aqgqj.basis.entity.vo.ExperimentalDetailVo; -import com.bonus.aqgqj.basis.entity.vo.ExperimentalVo; -import com.bonus.aqgqj.basis.entity.vo.TestVo; +import com.bonus.aqgqj.basis.entity.vo.*; import org.apache.ibatis.annotations.Param; import org.springframework.stereotype.Repository; @@ -61,11 +58,264 @@ public interface ExperimentalMapper { /** * 添加试验依据信息数据 + * * @param basisVos - * @param id + * @param experId * @return void * @author cwchen * @date 2024/7/20 17:05 */ - void addConfigBasis(@Param("list") List basisVos, @Param("id") Long id); + void addConfigBasis(@Param("list") List basisVos, @Param("experId") Long experId); + + /** + * 查询收样设备-根据设备类型 + * + * @param dto + * @return List + * @author cwchen + * @date 2024/7/21 17:01 + */ + List getSampleDeviceVos(ParamsDto dto); + + /** + * 添加试验项信息 + * + * @param configItemsVo + * @param experId + * @return void + * @author cwchen + * @date 2024/7/21 17:21 + */ + void addExperItems(@Param("params") ConfigItemsVo configItemsVo, @Param("experId") Long experId); + + /** + * 添加试验项内容 + * + * @param configItemVo + * @return void + * @author cwchen + * @date 2024/7/21 17:28 + */ + void addExperItem(@Param("params") ConfigItemVo configItemVo, @Param("experId") Long experId); + + /** + * 添加试验样品设备表 + * + * @param experDevVo + * @param experId + * @return void + * @author cwchen + * @date 2024/7/21 17:58 + */ + void addExperDev(@Param("params") ExperDevVo experDevVo, @Param("experId") Long experId); + + /** + * 添加设备试验项信息 + * + * @param experDevItemsVo + * @return void + * @author cwchen + * @date 2024/7/21 18:19 + */ + void addExperDevItems(ExperDevItemsVo experDevItemsVo); + + /** + * 添加设备试验项数据 + * + * @param experDevItemVos + * @return void + * @author cwchen + * @date 2024/7/21 19:48 + */ + void addExperDevItem(List experDevItemVos); + + /** + * 试验数据详情 + * + * @param dto + * @return TestVo + * @author cwchen + * @date 2024/7/21 22:53 + */ + TestVo viewTestData(ParamsDto dto); + + /** + * 添加试验设备数据 + * + * @param deviceVos + * @param experId + * @return void + * @author cwchen + * @date 2024/7/21 23:12 + */ + void addExperConfigDev(@Param("list") List deviceVos, @Param("experId") Long experId); + + /** + * 试验依据信息 + * + * @param dto + * @return List + * @author cwchen + * @date 2024/7/21 23:19 + */ + List getConfigBasis(ParamsDto dto); + + /** + * 试验设备信息 + * + * @param dto + * @return List + * @author cwchen + * @date 2024/7/21 23:22 + */ + List getExperConfigDevs(ParamsDto dto); + + /** + * 试验项信息 + * + * @param dto + * @return List + * @author cwchen + * @date 2024/7/21 23:27 + */ + List getExperItems(ParamsDto dto); + + /** + * 试验项内容信息 + * + * @param id + * @return List + * @author cwchen + * @date 2024/7/21 23:33 + */ + List getExperItem(Long id); + + /** + * 试验样品设备 + * + * @param dto + * @return List + * @author cwchen + * @date 2024/7/21 23:37 + */ + List getExperDev(ParamsDto dto); + + /** + * 修改试验信息数据 + * + * @param vo + * @return void + * @author cwchen + * @date 2024/7/22 0:02 + */ + void updateExper(TestVo vo); + + /** + * 获取试验样品设备ID + * + * @param id + * @return List + * @author cwchen + * @date 2024/7/22 0:18 + */ + List getExperDevIds(Long id); + + /** + * 获取设备试验项信息ID + * + * @param list + * @return List + * @author cwchen + * @date 2024/7/22 0:18 + */ + List getExperDevItems(List list); + + /** + * 删除试验依据 + * + * @param id + * @return void + * @author cwchen + * @date 2024/7/22 0:24 + */ + void delConfigBasis(Long id); + + /** + * 删除试验设备 + * + * @param id + * @return void + * @author cwchen + * @date 2024/7/22 0:24 + */ + void delExperConfigDev(Long id); + + /** + * 删除试验样品设备 + * + * @param id + * @return void + * @author cwchen + * @date 2024/7/22 0:24 + */ + void delExperDev(Long id); + + /** + * 删除设备试验项信息 + * + * @param list + * @return void + * @author cwchen + * @date 2024/7/22 0:24 + */ + void delExperDevItems(List list); + + /** + * 删除设备试验项数据 + * + * @param list + * @return void + * @author cwchen + * @date 2024/7/22 0:24 + */ + void delExperDevItem(List list); + + /** + * 删除试验信息 + * + * @param id + * @return void + * @author cwchen + * @date 2024/7/22 0:32 + */ + void delExper(Long id); + + /** + * 查询试验项ID + * + * @param id + * @return List + * @author cwchen + * @date 2024/7/22 0:34 + */ + List getExperItemsIds(Long id); + + /** + * 删除试验项 + * + * @param id + * @return void + * @author cwchen + * @date 2024/7/22 0:36 + */ + void delExperItems(Long id); + + /** + * 删除试验项内容 + * @param experItemsIds + * @return void + * @author cwchen + * @date 2024/7/22 0:36 + */ + void delExperItem(List experItemsIds); } diff --git a/src/main/java/com/bonus/aqgqj/basis/dao/ToolsManageDao.java b/src/main/java/com/bonus/aqgqj/basis/dao/ToolsManageDao.java index f3964a7..db2081a 100644 --- a/src/main/java/com/bonus/aqgqj/basis/dao/ToolsManageDao.java +++ b/src/main/java/com/bonus/aqgqj/basis/dao/ToolsManageDao.java @@ -25,4 +25,23 @@ public interface ToolsManageDao { */ List list(ToolsManageDto bean); + /** + * 获取工器具 + * @param id + * @return + */ + String getSampleTools(Integer id); + + /** + * 获取详情列表 + * @param data + * @return + */ + List getDetailsList(ToolsManageDto data); + + /** + * 获取工器具 + * @return + */ + List listTools(); } diff --git a/src/main/java/com/bonus/aqgqj/basis/entity/dto/ToolsManageDto.java b/src/main/java/com/bonus/aqgqj/basis/entity/dto/ToolsManageDto.java index 9012e3f..a02af06 100644 --- a/src/main/java/com/bonus/aqgqj/basis/entity/dto/ToolsManageDto.java +++ b/src/main/java/com/bonus/aqgqj/basis/entity/dto/ToolsManageDto.java @@ -3,119 +3,111 @@ package com.bonus.aqgqj.basis.entity.dto; import com.bonus.aqgqj.base.entity.PageEntity; import lombok.Data; +/** + * 工器具个体管理 + * @author hay + */ @Data public class ToolsManageDto extends PageEntity { private static final long serialVersionUID = -6525908145032868837L; - private Long id; - + private Integer id; /** - * 登录名 + * 名称 */ - private String loginName; + private String name; /** - * 用户名 + * 送样单位 */ - private String username; + private String customName; /** - * 工号 + * 送样部门 */ - private String userCode; + private String sampleDepartment; /** - * 单位部门 + * 送样人 */ - private String orgName; + private String sampleUser; /** - * 角色名称 + * 送样时间 */ - private String roleName; - - private String password; - - private String oldPassword; + private String sampleTime; /** - * 手机号 + * 送样设备 */ - private String phone; + private String sampleTools; /** - * 用户类型 + * 收样人 */ - private String userType; - - private String email; - - private Integer sex; - - private Integer state; - + private String collectSamplesUser; /** - * 角色id + * 收样时间 */ - private String roleId; + private String collectSamplesTime; /** - * 组织机构id + * 班组 */ - private Integer orgId; + private String teamName; /** - * 所属单位 + * 设备编号 */ - private String unit; + private String devCode; /** - * 所属部门 + * 客户自编号 */ - private String dept; + private String devTypeCode; /** - * 登录权限 + * 生产厂家 */ - private String loginType; - - private String headImgUrl; - - private String delFlag; + private String factoryName; /** - * 账号类型 + * 生产日期 */ - private int type; + private String manufactureDate; /** - * 休眠时间 + * 设备规格 */ - private String sleepTime; - - private String updatePasswordTime; + private String devModule; /** - * 临时账号时间 + * 试验日期 */ - private String lsTime; + private String experTime; /** - * 登录时间 + * 下次试验日期 */ - private String loginTimes; + private String nextExperTime; - private String status; + /** + * 试验人员 + */ + private String experUser; - private String newUser; + /** + * 试验结论 + */ + private String experConclu; + + /** + * 关键字 + */ + private String keyWord; - public interface Status { - int DISABLED = 0; - int VALID = 1; - int LOCKED = 2; - } } diff --git a/src/main/java/com/bonus/aqgqj/basis/entity/vo/ExperDevItemVo.java b/src/main/java/com/bonus/aqgqj/basis/entity/vo/ExperDevItemVo.java new file mode 100644 index 0000000..8d1027d --- /dev/null +++ b/src/main/java/com/bonus/aqgqj/basis/entity/vo/ExperDevItemVo.java @@ -0,0 +1,27 @@ +package com.bonus.aqgqj.basis.entity.vo; + +import lombok.Data; + +/** + * @className:ExperDevItemVo + * @author:cwchen + * @date:2024-07-21-19:03 + * @version:1.0 + * @description:设备试验项内容数据-vo + */ +@Data +public class ExperDevItemVo { + + /**id*/ + private Long id; + /**试验项id*/ + private Long itemsId; + /**试验内容id*/ + private Long itemId; + /**实验设备id*/ + private Long devId; + /** 试验项目名称*/ + private String itemName; + /**试验项值*/ + private String itemVal; +} diff --git a/src/main/java/com/bonus/aqgqj/basis/entity/vo/ExperDevItemsVo.java b/src/main/java/com/bonus/aqgqj/basis/entity/vo/ExperDevItemsVo.java new file mode 100644 index 0000000..cc6ef4f --- /dev/null +++ b/src/main/java/com/bonus/aqgqj/basis/entity/vo/ExperDevItemsVo.java @@ -0,0 +1,30 @@ +package com.bonus.aqgqj.basis.entity.vo; + +import lombok.Data; + +import java.util.List; + +/** + * @className:ExperDevItemsVo + * @author:cwchen + * @date:2024-07-21-18:12 + * @version:1.0 + * @description:设备试验项信息-vo + */ +@Data +public class ExperDevItemsVo { + + /**id*/ + private Long id; + /**试验设备id*/ + private Long devId; + /**实验项id*/ + private Long itemsId; + /**试验项名称*/ + private String itemsName; + /**排序*/ + private Integer valSort; + + /**设备试验项内容数据 list*/ + private List experDevItemVos; +} diff --git a/src/main/java/com/bonus/aqgqj/basis/entity/vo/ExperDevVo.java b/src/main/java/com/bonus/aqgqj/basis/entity/vo/ExperDevVo.java new file mode 100644 index 0000000..b12a1e1 --- /dev/null +++ b/src/main/java/com/bonus/aqgqj/basis/entity/vo/ExperDevVo.java @@ -0,0 +1,59 @@ +package com.bonus.aqgqj.basis.entity.vo; + +import lombok.Data; +import org.hibernate.validator.constraints.Length; + +import javax.validation.constraints.NotBlank; +import javax.validation.constraints.Pattern; + +/** + * @className:ExperDevVo + * @author:cwchen + * @date:2024-07-21-16:46 + * @version:1.0 + * @description:试验样品设备-vo + */ +@Data +public class ExperDevVo { + + /**id*/ + private Long id; + /**试验表id */ + private Long experId; + /**编号*/ + @NotBlank(message = "编号不能为空", groups = {Query.class}) + @Length(max = 32, message = "编号字符长度不能超过32", groups = {Query.class}) + private String devCode; + /**生产厂家*/ + @NotBlank(message = "生产厂家不能为空", groups = {Query.class}) + @Length(max = 32, message = "生产厂家字符长度不能超过32", groups = {Query.class}) + private String manufacturer; + /**生产日期*/ + @NotBlank(message = "生产日期不能为空", groups = {Query.class}) + @Length(max = 32, message = "生产日期字符长度不能超过32", groups = {Query.class}) + private String manufactureDate; + /**规格型号*/ + @NotBlank(message = "规格型号不能为空", groups = {Query.class}) + @Length(max = 32, message = "规格型号字符长度不能超过32", groups = {Query.class}) + private String devModule; + /**外观状态*/ + @NotBlank(message = "外观状态不能为空", groups = {Query.class}) + @Length(max = 32, message = "外观状态字符长度不能超过32", groups = {Query.class}) + private String devStatus; + /**设备试验项值*/ + @NotBlank(message = "设备试验项值不能为空", groups = {Query.class}) + @Length(max = 2000, message = "设备试验项值字符长度不能超过200", groups = {Query.class}) + private String devData; + /**额外超出的金额默认值0*/ + @NotBlank(message = "金额不能为空", groups = {Query.class}) + @Pattern(regexp = "(0|\\d{1,8}(?:\\.\\d{1,2})?|\\d{9}(?:\\.\\d{0,2})?)", message = "金额格式不正确(0-100000000)", groups = {Query.class}) + private String amount; + /**备注*/ + @NotBlank(message = "备注不能为空", groups = {Query.class}) + @Length(max = 256, message = "备注字符长度不能超过256", groups = {Query.class}) + private String remarks; + + public interface Query { + } + +} diff --git a/src/main/java/com/bonus/aqgqj/basis/entity/vo/SampleDeviceVo.java b/src/main/java/com/bonus/aqgqj/basis/entity/vo/SampleDeviceVo.java new file mode 100644 index 0000000..2da7c3a --- /dev/null +++ b/src/main/java/com/bonus/aqgqj/basis/entity/vo/SampleDeviceVo.java @@ -0,0 +1,25 @@ +package com.bonus.aqgqj.basis.entity.vo; + +import lombok.Data; + +/** + * @className:SampleDeviceVo + * @author:cwchen + * @date:2024-07-21-16:57 + * @version:1.0 + * @description:收样设备详情-vo + */ +@Data +public class SampleDeviceVo { + + /**id*/ + private Long id; + /**设备类型名称*/ + private String devTypeName; + /**设备类型编码*/ + private String devTypeCode; + /**规格型号*/ + private String devModule; + /**设备编号*/ + private String devCode; +} diff --git a/src/main/java/com/bonus/aqgqj/basis/entity/vo/TestVo.java b/src/main/java/com/bonus/aqgqj/basis/entity/vo/TestVo.java index 057be91..d6471fe 100644 --- a/src/main/java/com/bonus/aqgqj/basis/entity/vo/TestVo.java +++ b/src/main/java/com/bonus/aqgqj/basis/entity/vo/TestVo.java @@ -32,7 +32,7 @@ public class TestVo { */ private Long configId; - @NotNull(message = "收样不能为空", groups = {Query.class}) + @NotNull(message = "收样id不能为空", groups = {Query.class}) private Long sampleId; /** @@ -191,6 +191,7 @@ public class TestVo { /** * 试验主要设备 */ + @JsonProperty(access = JsonProperty.Access.WRITE_ONLY) private List mainDeviceVos; /** @@ -198,6 +199,16 @@ public class TestVo { */ private List configItemsVos; + /** + * 收样设备list + */ + @JsonProperty(access = JsonProperty.Access.WRITE_ONLY) + private List sampleDeviceVos; + /** + * 试验样品设备list + */ + private List experDevVos; + /** * 查询条件限制 */ diff --git a/src/main/java/com/bonus/aqgqj/basis/service/ExperimentalService.java b/src/main/java/com/bonus/aqgqj/basis/service/ExperimentalService.java index 1c93cd1..6c96fa5 100644 --- a/src/main/java/com/bonus/aqgqj/basis/service/ExperimentalService.java +++ b/src/main/java/com/bonus/aqgqj/basis/service/ExperimentalService.java @@ -48,10 +48,40 @@ public interface ExperimentalService { /** * 新增试验数据 + * * @param data * @return ServerResponse * @author cwchen * @date 2024/7/20 15:42 */ ServerResponse addTestData(TestVo data); + + /** + * 修改试验数据 + * + * @param data + * @return ServerResponse + * @author cwchen + * @date 2024/7/21 20:06 + */ + ServerResponse editTestData(TestVo data); + + /** + * 删除试验数据 + * + * @param data + * @return ServerResponse + * @author cwchen + * @date 2024/7/21 20:06 + */ + ServerResponse delTestData(ParamsDto data); + + /** + * 试验数据详情 + * @param data + * @return ServerResponse + * @author cwchen + * @date 2024/7/21 20:06 + */ + ServerResponse viewTestData(ParamsDto data); } diff --git a/src/main/java/com/bonus/aqgqj/basis/service/ToolsManageService.java b/src/main/java/com/bonus/aqgqj/basis/service/ToolsManageService.java index 3d95205..49a9def 100644 --- a/src/main/java/com/bonus/aqgqj/basis/service/ToolsManageService.java +++ b/src/main/java/com/bonus/aqgqj/basis/service/ToolsManageService.java @@ -10,6 +10,10 @@ import com.bonus.aqgqj.utils.ServerResponse; import java.util.List; import java.util.Map; +/** + * 工器具个体管理 + * @author hay + */ public interface ToolsManageService { /** * 查询列表 @@ -18,4 +22,16 @@ public interface ToolsManageService { */ List list(ToolsManageDto bean); + /** + * 详情列表 + * @param data + * @return + */ + List getDetailsList(ToolsManageDto data); + + /** + * 工器具列表 + * @return + */ + List listTools(); } diff --git a/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentStandardServiceImpl.java b/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentStandardServiceImpl.java index 52ccb17..16bbd20 100644 --- a/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentStandardServiceImpl.java +++ b/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentStandardServiceImpl.java @@ -121,6 +121,9 @@ public class ExperimentStandardServiceImpl implements ExperimentStandardService @Transactional(rollbackFor = Exception.class) public ServerResponse editData(ExperConfigVo vo) { try { + if(vo.getId() == null){ + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "参数不完整"); + } // 整体数据校验数据 String validResult = validatorsUtils.valid(vo, ExperConfigVo.Query.class); if (StringUtils.isNotBlank(validResult)) { diff --git a/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentalServiceImpl.java b/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentalServiceImpl.java index d63dda1..a381d04 100644 --- a/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentalServiceImpl.java +++ b/src/main/java/com/bonus/aqgqj/basis/service/impl/ExperimentalServiceImpl.java @@ -14,6 +14,7 @@ import com.bonus.aqgqj.webResult.Constants; import com.bonus.aqgqj.webResult.HttpStatus; import lombok.extern.slf4j.Slf4j; import org.apache.commons.collections4.CollectionUtils; +import org.apache.commons.collections4.ListUtils; import org.apache.commons.lang3.StringUtils; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; @@ -21,6 +22,7 @@ import org.springframework.transaction.interceptor.TransactionAspectSupport; import javax.annotation.Resource; import java.util.ArrayList; +import java.util.Arrays; import java.util.List; /** @@ -79,7 +81,11 @@ public class ExperimentalServiceImpl implements ExperimentalService { try { // 查询收样基本信息 vo = mapper.getTestBasicInfo(dto); - // 查询试验配置依据、试验设备、试验主要设备、试验项信息 + if (vo.getConfigId() == null) { + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "未配置该设备类型的试验标准,请先配置"); + } + // 查询收样设备、试验配置依据、试验设备、试验主要设备、试验项信息 + List sampleDeviceVos = mapper.getSampleDeviceVos(dto); List basisVos = standardMapper.getExperBasis(vo.getConfigId()); List deviceVos = standardMapper.getConfigDev(vo.getConfigId()); List mainDevVos = standardMapper.getConfigMainDev(vo.getConfigId()); @@ -88,6 +94,7 @@ public class ExperimentalServiceImpl implements ExperimentalService { List configItemVos = standardMapper.getConfiItem(configItemsVo.getId()); configItemsVo.setItemList(configItemVos); } + vo.setSampleDeviceVos(sampleDeviceVos); vo.setBasisVos(basisVos); vo.setDeviceVos(deviceVos); vo.setMainDeviceVos(mainDevVos); @@ -107,7 +114,7 @@ public class ExperimentalServiceImpl implements ExperimentalService { if (StringUtils.isNotBlank(validResult)) { return ServerResponse.createByErrorMsg(HttpStatus.ERROR, validResult); } - if(validatorsDate(vo)){ + if (!validatorsDate(vo)) { return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "下次试验日期不能早于试验日期"); } String result = validatorsParams(vo.getParamsData()); @@ -125,21 +132,154 @@ public class ExperimentalServiceImpl implements ExperimentalService { } // 添加试验信息数据 mapper.addExper(vo); + // 添加试验设备数据 + mapper.addExperConfigDev(vo.getDeviceVos(), vo.getId()); // 添加试验依据信息数据 - mapper.addConfigBasis(vo.getBasisVos(),vo.getId()); - // 添加试验项数据 tb_exper_item - // 添加试验项内容数据 tb_exper_items - // 添加试验样品数据 tb_exper_dev - // 添加试验项信息数据 tb_exper_dev_items - // 添加试验项数据 tb_exper_dev_item + mapper.addConfigBasis(vo.getBasisVos(), vo.getId()); + for (int i = 0; i < vo.getExperDevVos().size(); i++) { + // 添加试验样品数据 + mapper.addExperDev(vo.getExperDevVos().get(i), vo.getId()); + if (i == 0) { + for (ConfigItemsVo configItemsVo : vo.getConfigItemsVos()) { + // 添加试验项数据 + mapper.addExperItems(configItemsVo, vo.getId()); + // 添加试验项内容数据 + for (ConfigItemVo configItemVo : configItemsVo.getItemList()) { + mapper.addExperItem(configItemVo, configItemsVo.getId()); + } + } + } + List experDevItemsVos = setExperDevItemsList(vo.getExperDevVos().get(i), vo); + for (ExperDevItemsVo experDevItemsVo : experDevItemsVos) { + // 添加设备试验项信息 + mapper.addExperDevItems(experDevItemsVo); + List experDevItemVos = setExperDevItemList(vo.getExperDevVos().get(i), vo, experDevItemsVo); + // 添加设备试验项数据 + mapper.addExperDevItem(experDevItemVos); + } + + } } catch (Exception e) { + log.error(e.toString(), e); TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "操作失败"); } return ServerResponse.createBySuccessMsg("操作成功"); } + @Override + @Transactional(rollbackFor = Exception.class) + public ServerResponse editTestData(TestVo vo) { + try { + if(vo.getId() == null){ + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "参数不完整"); + } + // 整体数据校验数据 + String validResult = validatorsUtils.valid(vo, TestVo.Query.class); + if (StringUtils.isNotBlank(validResult)) { + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, validResult); + } + if (!validatorsDate(vo)) { + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "下次试验日期不能早于试验日期"); + } + String result = validatorsParams(vo.getParamsData()); + if (StringUtils.isNotBlank(result)) { + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, result); + } + TestVo testVo = handleConfigItem(vo); + if (testVo == null) { + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "参数异常"); + } + // 试验设备、试验主要设备、试验依据、试验项校验 + String result2 = singleValidators(testVo); + if (StringUtils.isNotBlank(result2)) { + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, result2); + } + // 删除试验依据、试验设备、试验样品设备、设备试验项信息、设备试验项数据 + List experDevIds = mapper.getExperDevIds(vo.getId()); + List experDevItemsIds = mapper.getExperDevItems(experDevIds); + mapper.delConfigBasis(vo.getId()); + mapper.delExperConfigDev(vo.getId()); + mapper.delExperDev(vo.getId()); + mapper.delExperDevItems(experDevIds); + mapper.delExperDevItem(experDevItemsIds); + // 修改试验信息数据 + mapper.updateExper(vo); + // 添加试验设备数据 + mapper.addExperConfigDev(vo.getDeviceVos(), vo.getId()); + // 添加试验依据信息数据 + mapper.addConfigBasis(vo.getBasisVos(), vo.getId()); + for (int i = 0; i < vo.getExperDevVos().size(); i++) { + // 添加试验样品数据 + mapper.addExperDev(vo.getExperDevVos().get(i), vo.getId()); + List experDevItemsVos = setExperDevItemsList(vo.getExperDevVos().get(i), vo); + for (ExperDevItemsVo experDevItemsVo : experDevItemsVos) { + // 添加设备试验项信息 + mapper.addExperDevItems(experDevItemsVo); + List experDevItemVos = setExperDevItemList(vo.getExperDevVos().get(i), vo, experDevItemsVo); + // 添加设备试验项数据 + mapper.addExperDevItem(experDevItemVos); + } + } + } catch (Exception e) { + log.error(e.toString(), e); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "操作失败"); + } + return ServerResponse.createBySuccessMsg("操作成功"); + } + + @Override + @Transactional(rollbackFor = Exception.class) + public ServerResponse delTestData(ParamsDto dto) { + try { + // 删除试验依据、试验设备、试验样品设备、设备试验项信息、设备试验项数据、试验项、试验项内容、试验信息 + List experDevIds = mapper.getExperDevIds(dto.getId()); + List experDevItemsIds = mapper.getExperDevItems(experDevIds); + List experItemsIds = mapper.getExperItemsIds(dto.getId()); + mapper.delConfigBasis(dto.getId()); + mapper.delExperConfigDev(dto.getId()); + mapper.delExperDev(dto.getId()); + mapper.delExperDevItems(experDevIds); + mapper.delExperDevItem(experDevItemsIds); + mapper.delExperItems(dto.getId()); + mapper.delExperItem(experItemsIds); + mapper.delExper(dto.getId()); + } catch (Exception e) { + log.error(e.toString(), e); + TransactionAspectSupport.currentTransactionStatus().setRollbackOnly(); + return ServerResponse.createByErrorMsg(HttpStatus.ERROR, "操作失败"); + } + return ServerResponse.createBySuccessMsg("操作成功"); + } + + @Override + public ServerResponse viewTestData(ParamsDto dto) { + TestVo testVo = new TestVo(); + try { + // 试验数据详情 + testVo = mapper.viewTestData(dto); + //试验依据信息、试验设备、试验项、试验项目信息、试验样品设备 + List experBasisVos = mapper.getConfigBasis(dto); + List experConfigDevs = mapper.getExperConfigDevs(dto); + List configItemsVos = mapper.getExperItems(dto); + for (ConfigItemsVo configItemsVo : configItemsVos) { + List configItemVos = mapper.getExperItem(configItemsVo.getId()); + configItemsVo.setItemList(configItemVos); + } + List experDevVos = mapper.getExperDev(dto); + testVo.setBasisVos(experBasisVos); + testVo.setDeviceVos(experConfigDevs); + testVo.setConfigItemsVos(configItemsVos); + testVo.setExperDevVos(experDevVos); + return ServerResponse.createSuccess(testVo); + } catch (Exception e) { + log.error(e.toString(), e); + return ServerResponse.createSuccess(null); + } + } + /** * 验证参数是否为空 * @@ -150,12 +290,13 @@ public class ExperimentalServiceImpl implements ExperimentalService { */ public String validatorsParams(String value) { try { - // 试验配置项、试验依据、试验设备、主要试验设备验证数据是否为空 + // 试验配置项、试验依据、试验设备、主要试验设备、样品设备验证数据是否为空 JSONObject obj = JSONObject.parseObject(value); JSONArray itemsList = obj.getJSONArray("items"); JSONArray yjList = obj.getJSONArray("yjList"); JSONArray devList = obj.getJSONArray("devList"); JSONArray mainDevList = obj.getJSONArray("mainDevList"); + JSONArray experDevList = obj.getJSONArray("experDevList"); if (CollectionUtils.isEmpty(devList)) { return Constants.ERROR_1; } @@ -168,6 +309,9 @@ public class ExperimentalServiceImpl implements ExperimentalService { if (CollectionUtils.isEmpty(itemsList)) { return Constants.ERROR_4; } + if (CollectionUtils.isEmpty(experDevList)) { + return Constants.ERROR_6; + } } catch (Exception e) { log.error(e.toString(), e); return Constants.ERROR_5; @@ -176,7 +320,7 @@ public class ExperimentalServiceImpl implements ExperimentalService { } /** - * 处理试验项、试验项内容、试验依据、试验设备、主要试验设备数据 + * 处理试验项、试验项内容、试验依据、试验设备、主要试验设备、样品设备试验数据 数据 * * @param vo * @return List @@ -190,10 +334,12 @@ public class ExperimentalServiceImpl implements ExperimentalService { JSONArray devList = obj.getJSONArray("devList"); JSONArray mainDevList = obj.getJSONArray("mainDevList"); JSONArray itemsList = obj.getJSONArray("items"); + JSONArray experDevList = obj.getJSONArray("experDevList"); List basisVos = yjList.toJavaList(ExperBasisVo.class); List deviceVos = devList.toJavaList(ConfigDevVo.class); List mainDeviceVos = mainDevList.toJavaList(ConfigMainDevVo.class); List configItemsVos = itemsList.toJavaList(ConfigItemsVo.class); + List experDevVos = experDevList.toJavaList(ExperDevVo.class); for (ConfigItemsVo configItemsVo : configItemsVos) { JSONArray itemArr = JSONObject.parseArray(configItemsVo.getItem()); List configItemVos = itemArr.toJavaList(ConfigItemVo.class); @@ -209,6 +355,7 @@ public class ExperimentalServiceImpl implements ExperimentalService { vo.setDeviceVos(deviceVos); vo.setMainDeviceVos(mainDeviceVos); vo.setConfigItemsVos(configItemsVos); + vo.setExperDevVos(experDevVos); } catch (Exception e) { log.error(e.toString(), e); return null; @@ -229,6 +376,7 @@ public class ExperimentalServiceImpl implements ExperimentalService { List mainDeviceVos = vo.getMainDeviceVos(); List basisVos = vo.getBasisVos(); List configItemsVos = vo.getConfigItemsVos(); + List experDevVos = vo.getExperDevVos(); for (ConfigDevVo deviceVo : deviceVos) { String validResult = validatorsUtils.valid(deviceVo, ConfigDevVo.Query.class); if (StringUtils.isNotBlank(validResult)) { @@ -259,11 +407,18 @@ public class ExperimentalServiceImpl implements ExperimentalService { } } } + for (ExperDevVo experDevVo : experDevVos) { + String validResult = validatorsUtils.valid(experDevVo, ExperDevVo.Query.class); + if (StringUtils.isNotBlank(validResult)) { + return validResult; + } + } return null; } /** * 校验试验时间和下次试验时间 + * * @param vo * @return boolean * @author cwchen @@ -277,4 +432,79 @@ public class ExperimentalServiceImpl implements ExperimentalService { } return true; } + + /** + * 处理设备试验项数据 + * + * @param experDevVo + * @param vo + * @return List + * @author cwchen + * @date 2024/7/21 19:17 + */ + public List setExperDevItemsList(ExperDevVo experDevVo, TestVo vo) { + List experDevItemsList = new ArrayList<>(); + for (int i = 0; i < vo.getConfigItemsVos().size(); i++) { + ConfigItemsVo configItemsVo = vo.getConfigItemsVos().get(i); + ExperDevItemsVo experDevItems = new ExperDevItemsVo(); + experDevItems.setItemsId(configItemsVo.getId()); + experDevItems.setDevId(experDevVo.getId()); + experDevItems.setItemsName(configItemsVo.getExperTypeName()); + experDevItems.setValSort(configItemsVo.getItemsSort()); + experDevItemsList.add(experDevItems); + } + return experDevItemsList; + } + + /** + * 处理设备试验项内容数据 + * + * @param experDevVo + * @param vo + * @return List + * @author cwchen + * @date 2024/7/21 19:17 + */ + public List setExperDevItemList(ExperDevVo experDevVo, TestVo vo, ExperDevItemsVo experDevItemsVo) { + List experDevItemList = new ArrayList<>(); + int index = 0; + for (int i = 0; i < vo.getConfigItemsVos().size(); i++) { + ConfigItemsVo configItemsVo = vo.getConfigItemsVos().get(i); + List experDevItemVos = new ArrayList<>(); + for (int j = 0; j < configItemsVo.getItemList().size(); j++) { + ConfigItemVo configItemVo = configItemsVo.getItemList().get(j); + ExperDevItemVo experDevItemVo = new ExperDevItemVo(); + experDevItemVo.setItemsId(configItemsVo.getId()); + experDevItemVo.setItemId(configItemVo.getId()); + experDevItemVo.setDevId(experDevItemsVo.getId()); + experDevItemVo.setItemName(configItemVo.getItemName()); + index = i * configItemsVo.getItemList().size() + j; + String val = getVal(experDevVo, index); + experDevItemVo.setItemVal(val); + experDevItemList.add(experDevItemVo); + } + } + return experDevItemList; + } + + /** + * 获取设备试验项内容数据 + * + * @param experDevVo + * @param index + * @return String + * @author cwchen + * @date 2024/7/21 19:30 + */ + public String getVal(ExperDevVo experDevVo, int index) { + try { + String devData = experDevVo.getDevData(); + JSONArray jsonArray = JSONObject.parseArray(devData); + String data = (String) jsonArray.get(index); + return data; + } catch (Exception e) { + log.error(e.toString(), e); + return null; + } + } } diff --git a/src/main/java/com/bonus/aqgqj/basis/service/impl/ToolsManageServiceImpl.java b/src/main/java/com/bonus/aqgqj/basis/service/impl/ToolsManageServiceImpl.java index 41ac426..d89944b 100644 --- a/src/main/java/com/bonus/aqgqj/basis/service/impl/ToolsManageServiceImpl.java +++ b/src/main/java/com/bonus/aqgqj/basis/service/impl/ToolsManageServiceImpl.java @@ -5,6 +5,7 @@ import com.bonus.aqgqj.basis.dao.ToolsManageDao; import com.bonus.aqgqj.basis.entity.dto.ToolsManageDto; import com.bonus.aqgqj.basis.service.ToolsManageService; import com.bonus.aqgqj.model.PasswordConfig; +import com.bonus.aqgqj.model.Role; import com.bonus.aqgqj.model.SysUser; import com.bonus.aqgqj.system.dao.UserDao; import com.bonus.aqgqj.system.service.UserService; @@ -23,6 +24,11 @@ import javax.annotation.Resource; import java.util.List; import java.util.Map; +/** +* @description 工器具个体管理 +* @author hay +* @date 2024/7/20 16:10 +*/ @Slf4j @Service public class ToolsManageServiceImpl implements ToolsManageService { @@ -32,11 +38,34 @@ public class ToolsManageServiceImpl implements ToolsManageService { private ToolsManageDao toolsManageDao; /** - * 查询用户列表 + * 查询列表 + * @param bean + * @return */ @Override public List list(ToolsManageDto bean) { - return toolsManageDao.list(bean); + List list = toolsManageDao.list(bean); +// for (ToolsManageDto dto : list){ +// String sampleTools = toolsManageDao.getSampleTools(dto.getId()); +// dto.setSampleTools(sampleTools); +// } + return list; + } + + /** + * 查询详情列表 + * @param data + * @return + */ + @Override + public List getDetailsList(ToolsManageDto data) { + return toolsManageDao.getDetailsList(data); + } + + @Override + public List listTools() { + List list = toolsManageDao.listTools(); + return list; } diff --git a/src/main/java/com/bonus/aqgqj/webResult/Constants.java b/src/main/java/com/bonus/aqgqj/webResult/Constants.java index aaeab81..ffdcdcd 100644 --- a/src/main/java/com/bonus/aqgqj/webResult/Constants.java +++ b/src/main/java/com/bonus/aqgqj/webResult/Constants.java @@ -137,6 +137,7 @@ public class Constants public static final String ERROR_3 = "试验依据不能为空"; public static final String ERROR_4 = "试验项不能为空"; public static final String ERROR_5 = "参数不能为空"; + public static final String ERROR_6 = "试验不能为空"; public static final String FORMAT_STR = "yyyy-MM-dd"; diff --git a/src/main/resources/mappers/basis/ExperimentalMapper.xml b/src/main/resources/mappers/basis/ExperimentalMapper.xml index dcb954a..459b929 100644 --- a/src/main/resources/mappers/basis/ExperimentalMapper.xml +++ b/src/main/resources/mappers/basis/ExperimentalMapper.xml @@ -50,13 +50,13 @@ #{experStand}, #{experConclu}, #{remarsk}, - #{auditStatus} + #{auditStatus}, #{createTime}, #{createUser}, #{updateTime}, #{updateUser}, - #{status}, 0, + #{status}, null @@ -65,10 +65,163 @@ INSERT INTO tb_config_basis(id,exper_id,exper_basis_name) VALUES ( - null,#{id},#{item.basisName} + null,#{experId},#{item.basisName} ) + + + INSERT INTO tb_exper_items + + exper_id, + exper_type_code, + exper_type_name, + exper_num, + items_sort, + amount, + id + + + #{experId}, + #{params.experTypeCode}, + #{params.experTypeName}, + #{params.experNum}, + #{params.itemsSort}, + #{params.amount}, + null + + + + + INSERT INTO tb_exper_item + + items_id, + item_sort, + item_name, + id + + + #{experId}, + #{params.itemNum}, + #{params.itemName}, + null + + + + + INSERT INTO tb_exper_dev + + exper_id, + dev_code, + manufacturer, + manufacture_date, + dev_module, + dev_status, + dev_data, + amount, + remarks, + id + + + #{experId}, + #{params.devCode}, + #{params.manufacturer}, + #{params.manufactureDate}, + #{params.devModule}, + #{params.devStatus}, + #{params.devData}, + #{params.amount}, + #{params.remarks}, + null + + + + + INSERT INTO tb_exper_dev_items + + dev_id, + items_id, + items_name, + val_sort, + id + + + #{devId}, + #{itemsId}, + #{itemsName}, + #{valSort}, + null + + + + + INSERT INTO tb_exper_dev_item (id,items_id,item_id,dev_id,item_name,item_val) VALUES + + ( + null,#{item.itemsId},#{item.itemId},#{item.devId},#{item.itemName},#{item.itemVal} + ) + + + + + INSERT INTO tb_exper_config_dev(id,dev_type_code,dev_type_name,exper_id,dev_name,dev_id) VALUES + + ( + null,#{item.devTypeCode},#{item.devTypeName},#{experId},#{item.devName},#{item.devId} + ) + + + + + UPDATE tb_exper SET dev_type_code = #{devTypeCode},dev_type_name = #{devTypeName},dev_num = #{sampleQuantity}, + dev_module = #{devModule},sample_date = #{sampleDate},exper_time = #{experTime},next_exper_time = #{nextExperTime}, + submit_unit = #{customId},submit_location = #{experLocal},exper_dev = #{experDev},exper_module = #{experModule}, + exper_code = #{experCode},check_time = #{checkTime},update_time = #{updateTime},update_user = #{updateUser}, + exper_conclu = #{experConclu},remarsk = #{remarsk} WHERE id = #{id} + + + + DELETE FROM tb_config_basis WHERE exper_id = #{id} + + + + DELETE FROM tb_exper_config_dev WHERE exper_id = #{id} + + + + DELETE FROM tb_exper_dev WHERE exper_id = #{id} + + + + DELETE FROM tb_exper_dev_items + WHERE dev_id IN + + #{item} + + + + + DELETE FROM tb_exper_dev_item + WHERE dev_id IN + + #{item} + + + + + UPDATE tb_exper SET del_flag = 1 WHERE id = #{id} + + + + DELETE FROM tb_exper_items WHERE exper_id = #{id} + + + + DELETE FROM tb_exper_item WHERE items_id IN + + #{item} + + + + + + + + + + + + + + + + + + + + + + diff --git a/src/main/resources/mappers/basis/ToolsManageMapper.xml b/src/main/resources/mappers/basis/ToolsManageMapper.xml index 3f0d42e..80f9a52 100644 --- a/src/main/resources/mappers/basis/ToolsManageMapper.xml +++ b/src/main/resources/mappers/basis/ToolsManageMapper.xml @@ -4,43 +4,68 @@ + + + \ No newline at end of file diff --git a/src/main/resources/static/js/system/child/userForm.js b/src/main/resources/static/js/system/child/userForm.js index 441058b..43cbf21 100644 --- a/src/main/resources/static/js/system/child/userForm.js +++ b/src/main/resources/static/js/system/child/userForm.js @@ -151,7 +151,7 @@ function setFormData(data) { $("#password").removeAttr("lay-verify"); $("#pwd").css("display","none"); $('#id').val(data.id) - $('#userCode').val(data.userCode) + // $('#userCode').val(data.userCode) $('#username').val(data.username) $('#loginName').val(data.loginName) $('#phone').val(data.phone) diff --git a/src/main/resources/static/js/system/role.js b/src/main/resources/static/js/system/role.js index 44952ee..5bafae7 100644 --- a/src/main/resources/static/js/system/role.js +++ b/src/main/resources/static/js/system/role.js @@ -127,7 +127,7 @@ function initTable(dataList, limit, page) { unresize: true, align: "center" }, - {field: "state", title: "启用状态", align: "center",templet: '#is-state'}, + {field: "state", title: "状态", align: "center",templet: '#is-state'}, { title: "操作", unresize: true, diff --git a/src/main/resources/static/js/system/userMge.js b/src/main/resources/static/js/system/userMge.js index 34752e5..e2ecb24 100644 --- a/src/main/resources/static/js/system/userMge.js +++ b/src/main/resources/static/js/system/userMge.js @@ -97,7 +97,7 @@ function initTable(dataList, limit, page) { }, {field: "loginName", title: "登录名", unresize: true, align: "center"}, {field: "username", title: "用户名", unresize: true, align: "center"}, - {field: "userCode", title: "工号", unresize: true, align: "center"}, + // {field: "userCode", title: "工号", unresize: true, align: "center"}, {field: "sex", title: "性别", unresize: true, align: "center", templet: function (d) { if (d.sex == 0) { diff --git a/src/main/resources/static/js/tools/child/toolsForm.js b/src/main/resources/static/js/tools/child/toolsForm.js new file mode 100644 index 0000000..9e6638f --- /dev/null +++ b/src/main/resources/static/js/tools/child/toolsForm.js @@ -0,0 +1,280 @@ +let form, layer, table, tableIns; +let pageNum = 1, limitSize = 10; // 默认第一页,分页数量为10 +let orgData,selectOrgId; +let idParam; + +function setParams(params){ + idParam = JSON.parse(params).id; + layui.use(['form', 'layer', 'table', 'laydate'], function () { + form = layui.form; + layer = layui.layer; + table = layui.table; + layui.form.render(); + pages(1, 10, 1); + getToolsSelected(); + }) +} + +function pages(pageNum, pageSize, typeNum) { + let params = getReqParams(pageNum, pageSize, typeNum); + let url = dataUrl + "/tools/getDetailsList" + ajaxRequest(url, "POST", params, true, function () { + }, function (result) { + console.log(result); + if (result.code === 200) { + if (result.data) { + initTable(result.data, result.limit, result.curr) + laypages(result.count, result.curr, result.limit) + } + } else if (result.code === 500) { + layer.alert(result.msg, {icon: 2}) + } + }, function (xhr) { + error(xhr) + }); + +} + +function getToolsSelected() { + let url = dataUrl + '/tools/all'; + ajaxRequest(url, "POST", null, true, function () { + }, function (result) { + if (result.code === 200) { + setSelectValue(result.data, 'sampleTools'); + // return result.data + } else { + layer.alert(result.msg, {icon: 2}) + } + }, function (xhr) { + error(xhr) + }); +} + +function laypages(total, page, limit) { + layui.use(['laypage'], function () { + let laypage = layui.laypage; + laypage.render({ + elem: 'voi-page', + count: total, + curr: page, + limit: limit, + limits: [10, 20, 50, 100, 200, 500], + layout: ['prev', 'page', 'next', 'skip', 'count', 'limit'], + groups: 5, + jump: function (obj, first) { + if (!first) { + pageNum = obj.curr, limitSize = obj.limit; + pages(obj.curr, obj.limit, null); + } + } + }); + }) +} + +/*初始化表格*/ +function initTable(dataList, limit, page) { + let loadingMsg = layer.msg("数据加载中,请稍候...", {icon: 16, scrollbar: false, time: 0,}); + tableIns = table.render({ + elem: "#table_data", + height: "full-130", + data: dataList, + limit: limit, + cols: [ + [ + //表头 + {title: "序号", width: 80, unresize: true, align: "center", + templet: function (d) { + return (page - 1) * limit + d.LAY_INDEX; + } + }, + {field: "sampleTools", title: "设备类型", unresize: true, align: "center"}, + {field: "devTypeCode", title: "设备编号", unresize: true, align: "center"}, + {field: "factoryName", title: "生产厂家", unresize: true, align: "center"}, + {field: "produceDate", title: "生产日期", unresize: true, align: "center"}, + {field: "devModule", title: "设备规格", unresize: true, align: "center"}, + { + field: "view1", title: "检测报告", unresize: true, align: "center", + templet: function (d) { + return '查看'; + } + }, + { + field: "view2", title: "合格证", unresize: true, align: "center", templet: function (d) { + return '查看'; + } + }, + { + field: "view3", title: "设备二维码", unresize: true, align: "center", templet: function (d) { + return '查看'; + } + }, + ], + ], + done: function (res, curr, count) { + layer.close(loadingMsg); + table.resize("table_data"); + count || this.elem.next(".layui-table-view").find(".layui-table-header").css("display", "inline-block"); + count || this.elem.next(".layui-table-view").find(".layui-table-box").css("overflow", "auto"); + }, + }); +} + +function handleClick1(view1) { + alert('Clicked on: ' + view1); +} + +function handleClick2(view1) { + alert('Clicked on: ' + view1); +} + +function handleClick3(view1) { + alert('Clicked on: ' + view1); +} + +// 获取参数 +function getReqParams(page, limit, type) { + var selectedValue =$('#sampleTools').val() + // 2. 查找对应的选项文本 + var selectedText = $('#sampleTools option[value="' + selectedValue + '"]').text(); + if (selectedText=='请选择'){ + selectedText='' + } + let obj = {}; + if (!type) { + obj = { + page: page + "", + limit: limit + "", + id: idParam, + sampleTools: selectedText, + collectSamplesUser:$('#collectSamplesUser').val() + }; + } else { + obj = { + page: '1', + limit: '10', + id: idParam, + sampleTools: selectedText, + collectSamplesUser: '' + }; + } + console.log(obj) + obj={ + encryptedData:encryptCBC(JSON.stringify(obj)) + } + return obj; +} + +// 查询/重置 +function query() { + let pattern = new RegExp("[%_<>]"); + if (pattern.test($("#loginName").val())) { + $("#loginName").val(''); + return layer.msg('用户名查询包含特殊字符,请重新输入', { + icon: 2, + time: 2000 //2秒关闭(如果不配置,默认是3秒) + }); + } + if (pattern.test($("#phone").val())) { + $("#phone").val(''); + return layer.msg('手机号查询包含特殊字符,请重新输入', { + icon: 2, + time: 2000 //2秒关闭(如果不配置,默认是3秒) + }); + } + pageNum = 1; + pages(1, limitSize); +} + + +//重置 +function reset() { + pages(1, limitSize, 1) +} + + +function reloadData() { + pages(pageNum, limitSize); +} + +// 新增/修改平台用户 +function addData(id) { + if (id) { + title = '详情'; + } + let param = { + 'id': id + } + openIframe2("addOrEditUser", title, "child/toolsFrom.html", '100%', '100%', param); +} + +/*删除用户*/ +function delData(id) { + layer.confirm("确定删除吗?", { + move: false + }, function () { + let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0}); + let url = dataUrl + "/users/delById"; + let params = { + 'id': id + } + params={ + encryptedData:encryptCBC(JSON.stringify(params)) + } + ajaxRequest(url, "POST", params, true, function () { + }, function (result) { + layer.close(loadingMsg); // 关闭提示层 + if (result.code === 200) { + parent.layer.msg(result.msg, {icon: 1}) + query() + } else if (result.code === 500) { + layer.alert(result.msg, {icon: 2}) + } + }, function (xhr) { + layer.close(loadingMsg); // 关闭提示层 + error(xhr) + }); + }) +} + +// 启用/停用/解除锁定 +function editUserAccountStatus(id, status, type) { + let url = dataUrl + "/sys/user/editUserAccountStatus?token=" + token; + let params = { + 'id': id, + 'accountStatus': status, + 'type': type + } + ajaxRequest(url, "POST", params, true, function () { + }, function (result) { + if (result.code === 200) { + if(type){ + reloadData(); + } + parent.layer.msg(result.msg, {icon: 1}) + } else if (result.code === 500) { + layer.alert(result.msg, {icon: 2}) + } + }, function (xhr) { + error(xhr) + }); +} + +// 管理员修改密码 +function resetPwd(id) { + let param = { + 'id': id, + 'type': '1' + } + openIframe2("addOrEditUnifyUser", '修改密码', "password.html", '770px', '400px', param); +} + +/*下拉选表单赋值*/ +function setSelectValue(list, selectName) { + console.log("list",list) + let html = ''; + $.each(list, function (index, item) { + html += ''; + }) + $('#' + selectName).empty().append(html); + layui.form.render(); +} diff --git a/src/main/resources/static/js/tools/toolsMge.js b/src/main/resources/static/js/tools/toolsMge.js index 9552058..7385620 100644 --- a/src/main/resources/static/js/tools/toolsMge.js +++ b/src/main/resources/static/js/tools/toolsMge.js @@ -1,46 +1,36 @@ -let form, layer, dtree, table, tableIns; +let form, layer, table, tableIns; let pageNum = 1, limitSize = 10; // 默认第一页,分页数量为10 let orgData,selectOrgId; -layui.config({ - base: "../../js/layui-v2.6.8/dtree/", //此处路径请自行处理, 可以使用绝对路径 -}).extend({ - dtree: 'dtree' -}).use(['form', 'layer', 'table','dtree', 'laydate'], function () { +layui.use(['form', 'layer', 'table', 'laydate'], function () { form = layui.form; layer = layui.layer; table = layui.table; - dtree = layui.dtree; layui.form.render(); - orgData = getOrgTree(); pages(1, 10, 1); - form.on('switch(is-state)', function (obj) { - console.log(obj); - let url = dataUrl + "/users/updateEnableState"; - let params = { - 'id': this.value, - 'state': obj.elem.checked ? 1 : 0 - } - params={ - encryptedData:encryptCBC(JSON.stringify(params)) - } - ajaxRequest(url, "POST", params, true, function () {}, function (result) { - console.log(result) - reloadData(); - if (result.status === 200) { - parent.layer.msg(result.data, {icon: 1}) - } else if (result.status === 204) { - parent.layer.alert(result.msg, {icon: 2}) - } - }, function (xhr) { - error(xhr) - }); - }); + getToolsSelected(); }) + +function getToolsSelected() { + let url = dataUrl + '/tools/all'; + ajaxRequest(url, "POST", null, true, function () { + }, function (result) { + if (result.code === 200) { + setSelectValue(result.data, 'sampleTools'); + // return result.data + } else { + layer.alert(result.msg, {icon: 2}) + } + }, function (xhr) { + error(xhr) + }); +} + + function pages(pageNum, pageSize, typeNum) { let params = getReqParams(pageNum, pageSize, typeNum); - let url = dataUrl + "/users/getList" + let url = dataUrl + "/tools/getList" ajaxRequest(url, "POST", params, true, function () { }, function (result) { console.log(result); @@ -95,27 +85,40 @@ function initTable(dataList, limit, page) { return (page - 1) * limit + d.LAY_INDEX; } }, - {field: "loginName", title: "送样单位", unresize: true, align: "center"}, - {field: "username", title: "送样人", unresize: true, align: "center"}, - {field: "userCode", title: "送样时间", unresize: true, align: "center"}, - {field: "orgName", title: "送样设备", unresize: true, align: "center"}, - {field: "roleName", title: "收样人", unresize: true, align: "center"}, - {field: "phone", title: "收样时间", unresize: true, align: "center"}, - {field: "userType", title: "试验班组", unresize: true, align: "center"}, - {title: "操作", unresize: true, width: 300, align: "center", - templet: function (d) { - - let html = ''; - // let updaetpwd=""; - let del="" - let edit=""; - html=edit+del; - if(d.delFlag==1){ - return ''; - } - return html; + {field: "sampleTools", title: "设备类型", unresize: true, align: "center"}, + {field: "devCode", title: "设备编号", unresize: true, align: "center"}, + {field: "devTypeCode", title: "客户自编号", unresize: true, align: "center"}, + {field: "devModule", title: "设备规格", unresize: true, align: "center"}, + {field: "customName", title: "送样单位", unresize: true, align: "center"}, + {field: "sampleDepartment", title: "送样部门", unresize: true, align: "center"}, + {field: "manufactureDate", title: "生产日期", unresize: true, align: "center"}, + {field: "experTime", title: "试验日期", unresize: true, align: "center"}, + {field: "experConclu", title: "试验结果", unresize: true, align: "center"}, + { + field: "certificate", title: "合格证", unresize: true, align: "center", templet: function (d) { + console.log("d",d.id); + return '查看'; } }, + { + field: "qrCode", title: "二维码", unresize: true, align: "center", templet: function (d) { + return '打印'; + } + }, + // {title: "操作", unresize: true, width: 85, align: "center", + // templet: function (d) { + // + // let html = ''; + // // let updaetpwd=""; + // // let del="" + // let view=""; + // html=view; + // if(d.delFlag==1){ + // return ''; + // } + // return html; + // } + // }, ], ], done: function (res, curr, count) { @@ -127,27 +130,48 @@ function initTable(dataList, limit, page) { }); } +function handleClick1(sampleTools,devModule,devCode,experTime,nextExperTime,experUser,experConclu,customName) { + title = '合格证'; + let param = { + 'sampleTools' : sampleTools, + 'devModule' : devModule, + 'devCode' : devCode, + 'experTime' : experTime, + 'nextExperTime' : nextExperTime, + 'experUser': experUser, + 'experConclu': experConclu, + 'customName': customName + } + openIframe2("addOrEditUser", title, "child/certificateView.html", '30%', '70%', param); +} + +function handleClick2(view1) { + alert('Clicked on: ' + view1); +} + // 获取参数 function getReqParams(page, limit, type) { + var selectedValue =$('#sampleTools').val() + // 2. 查找对应的选项文本 + var selectedText = $('#sampleTools option[value="' + selectedValue + '"]').text(); + if (selectedText=='请选择设备类型'){ + selectedText='' + } let obj = {}; if (!type) { obj = { page: page + "", limit: limit + "", - userName: $('#userName').val(), - phone: $('#phone').val(), - orgId: $('#orgId').val(), - userType: $('#userType').val(), + sampleTools: selectedText, + keyWord:$('#keyWord').val() }; } else { obj = { page: '1', limit: '10', - userName: '', - phone:'', - orgId:'', - userType: '', + sampleTools: '', + keyWord: '' }; } console.log(obj) @@ -191,43 +215,13 @@ function reloadData() { // 新增/修改平台用户 function addData(id) { - let title = '新增用户' if (id) { - title = '修改用户'; + title = '工器具个体管理/详情'; } let param = { 'id': id } - openIframe2("addOrEditUser", title, "child/userForm.html", '1000px', '625px', param); -} - -/*删除用户*/ -function delData(id) { - layer.confirm("确定删除吗?", { - move: false - }, function () { - let loadingMsg = layer.msg('数据删除中,请稍候...', {icon: 16, scrollbar: false, time: 0}); - let url = dataUrl + "/users/delById"; - let params = { - 'id': id - } - params={ - encryptedData:encryptCBC(JSON.stringify(params)) - } - ajaxRequest(url, "POST", params, true, function () { - }, function (result) { - layer.close(loadingMsg); // 关闭提示层 - if (result.code === 200) { - parent.layer.msg(result.msg, {icon: 1}) - query() - } else if (result.code === 500) { - layer.alert(result.msg, {icon: 2}) - } - }, function (xhr) { - layer.close(loadingMsg); // 关闭提示层 - error(xhr) - }); - }) + openIframe2("addOrEditUser", title, "child/toolsForm.html", '100%', '100%', param); } // 启用/停用/解除锁定 @@ -262,47 +256,10 @@ function resetPwd(id) { openIframe2("addOrEditUnifyUser", '修改密码', "password.html", '770px', '400px', param); } -function getOrgTree() { - let data = []; - let url = dataUrl + '/users/getOrg'; - ajaxRequest(url, "POST", null, true, function () { - }, function (result) { - if (result.code === 200) { - console.log(result,"getOrgTree") - data = result.data; - setOrgTree(data) - } else { - layer.alert(result.msg, {icon: 2}) - } - }, function (xhr) { - error(xhr) - }); - return data; -} - -function setOrgTree(data){ - console.log("data",data) - orgTree = dtree.renderSelect({ - elem: "#orgId", - data: data, - dataFormat: "list", - skin: "laySimple", - line: true, // 显示树线 - checkbar: false, //开启复选框 - done: function (data, url, first) { - console.log($('#orgId').val()) - if (first) { - var params = dtree.dataInit("orgId", $('#orgId').val()); - var selectParam = dtree.selectVal("orgId"); - console.log(params) - } - } - }); -} - /*下拉选表单赋值*/ function setSelectValue(list, selectName) { - let html = ''; + console.log("list",list) + let html = ''; $.each(list, function (index, item) { html += ''; }) diff --git a/src/main/resources/static/pages/role/addRole.html b/src/main/resources/static/pages/role/addRole.html index c06cb82..ba1eefb 100644 --- a/src/main/resources/static/pages/role/addRole.html +++ b/src/main/resources/static/pages/role/addRole.html @@ -24,10 +24,9 @@
- +
- +
diff --git a/src/main/resources/static/pages/tools/child/certificateView.html b/src/main/resources/static/pages/tools/child/certificateView.html new file mode 100644 index 0000000..2300c6a --- /dev/null +++ b/src/main/resources/static/pages/tools/child/certificateView.html @@ -0,0 +1,69 @@ + + + + + + + + 表格布局示例 + + + +
xxxxxxxx
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
试验结果
样品名称
规格型号
样品编号
检验日期
下次检验日期
试验人员
试验结果
送检单位
+ + \ No newline at end of file diff --git a/src/main/resources/static/pages/tools/child/toolsForm.html b/src/main/resources/static/pages/tools/child/toolsForm.html new file mode 100644 index 0000000..fce1b5e --- /dev/null +++ b/src/main/resources/static/pages/tools/child/toolsForm.html @@ -0,0 +1,52 @@ + + + + + + + + + + + + + + + + 详情 + + +
+ +
+
+
+
+
+ + + \ No newline at end of file diff --git a/src/main/resources/static/pages/tools/toolsMge.html b/src/main/resources/static/pages/tools/toolsMge.html index a845bdb..94e040d 100644 --- a/src/main/resources/static/pages/tools/toolsMge.html +++ b/src/main/resources/static/pages/tools/toolsMge.html @@ -9,11 +9,12 @@ + - 用户管理 + 工器具个体管理
@@ -23,14 +24,14 @@
-
- +
@@ -38,12 +39,12 @@
- + + + + + +
@@ -60,11 +61,5 @@ } - - \ No newline at end of file diff --git a/src/main/resources/static/pages/user/child/userForm.html b/src/main/resources/static/pages/user/child/userForm.html index 1512a9e..e2934a2 100644 --- a/src/main/resources/static/pages/user/child/userForm.html +++ b/src/main/resources/static/pages/user/child/userForm.html @@ -24,7 +24,7 @@
+ lay-verify="required" maxlength="20">
@@ -32,19 +32,19 @@
+ lay-verify="required" maxlength="10">
-
- -
- -
-
+ + + + + + +
@@ -107,31 +107,6 @@
- - - - - - - - - - - - - - - - - - - - - - - - -