diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/mapper/UserMachineDetailMapper.java b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/mapper/UserMachineDetailMapper.java new file mode 100644 index 0000000..e0b2d4c --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/mapper/UserMachineDetailMapper.java @@ -0,0 +1,8 @@ +package jnpf.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import jnpf.model.machine.UserMachineDetailEntity; + +public interface UserMachineDetailMapper extends BaseMapper { + +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/mapper/UserMachineMapper.java b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/mapper/UserMachineMapper.java new file mode 100644 index 0000000..1129c4b --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/mapper/UserMachineMapper.java @@ -0,0 +1,8 @@ +package jnpf.mapper; + +import com.baomidou.mybatisplus.core.mapper.BaseMapper; +import jnpf.model.machine.UserMachineEntity; + +public interface UserMachineMapper extends BaseMapper { + +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/UserMachineDetailService.java b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/UserMachineDetailService.java new file mode 100644 index 0000000..6ce6a56 --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/UserMachineDetailService.java @@ -0,0 +1,29 @@ +package jnpf.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import jnpf.model.machine.UserMachineDetailEntity; +import jnpf.model.usermachinedetail.UserMachineDetailForm; +import jnpf.model.usermachinedetail.UserMachineDetailPagination; + +import java.util.List; + +public interface UserMachineDetailService extends IService { + + List getList(UserMachineDetailPagination userMachineDetailPagination); + + UserMachineDetailEntity getInfo(String id); + + void delete(UserMachineDetailEntity entity); + + void create(UserMachineDetailEntity entity); + + boolean update(String id, UserMachineDetailEntity entity); + + String checkForm(UserMachineDetailForm form, int i); + + void saveOrUpdate(UserMachineDetailForm userMachineDetailForm, String id, boolean isSave) throws Exception; + + List getListByUserMachId(Integer userMachId); + + void deleteByUserMachId(Integer userMachId); +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/UserMachineService.java b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/UserMachineService.java new file mode 100644 index 0000000..c216959 --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/UserMachineService.java @@ -0,0 +1,27 @@ +package jnpf.service; + +import com.baomidou.mybatisplus.extension.service.IService; +import jnpf.model.machine.UserMachineEntity; +import jnpf.model.usermachine.UserMachineForm; +import jnpf.model.usermachine.UserMachinePagination; + +import java.util.List; + +public interface UserMachineService extends IService { + + List getList(UserMachinePagination userMachinePagination); + + UserMachineEntity getInfo(String id); + + void delete(UserMachineEntity entity); + + void create(UserMachineEntity entity); + + boolean update(String id, UserMachineEntity entity); + + String checkForm(UserMachineForm form, int i); + + void saveOrUpdate(UserMachineForm userMachineForm, String id, boolean isSave) throws Exception; + + List getSelectList(); +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/MachineServiceImpl.java b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/MachineServiceImpl.java index bafc23a..14546b9 100644 --- a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/MachineServiceImpl.java +++ b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/MachineServiceImpl.java @@ -65,6 +65,10 @@ public class MachineServiceImpl extends ServiceImpl implements UserMachineDetailService { + + @Resource + private UserProvider userProvider; + + @Resource + private UserService userService; + + @Override + public List getList(UserMachineDetailPagination userMachineDetailPagination) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + + if (ObjectUtil.isNotEmpty(userMachineDetailPagination.getUserMachId())) { + wrapper.eq(UserMachineDetailEntity::getUserMachId, userMachineDetailPagination.getUserMachId()); + } + if (ObjectUtil.isNotEmpty(userMachineDetailPagination.getMachineCd())) { + wrapper.like(UserMachineDetailEntity::getMachineCd, userMachineDetailPagination.getMachineCd()); + } + if (ObjectUtil.isNotEmpty(userMachineDetailPagination.getMachineName())) { + wrapper.like(UserMachineDetailEntity::getMachineName, userMachineDetailPagination.getMachineName()); + } + if (ObjectUtil.isNotEmpty(userMachineDetailPagination.getEnabledStatus())) { + wrapper.eq(UserMachineDetailEntity::getEnabledStatus, userMachineDetailPagination.getEnabledStatus()); + } + + wrapper.eq(UserMachineDetailEntity::getDeleteMark, 0); + wrapper.orderByDesc(UserMachineDetailEntity::getId); + + if ("0".equals(userMachineDetailPagination.getDataType())) { + Page page = new Page<>(userMachineDetailPagination.getCurrentPage(), userMachineDetailPagination.getPageSize()); + IPage result = this.page(page, wrapper); + return userMachineDetailPagination.setData(result.getRecords(), result.getTotal()); + } else { + return this.list(wrapper); + } + } + + @Override + public UserMachineDetailEntity getInfo(String id) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(UserMachineDetailEntity::getId, id); + return this.getOne(queryWrapper); + } + + @Override + public void create(UserMachineDetailEntity entity) { + this.save(entity); + } + + @Override + public boolean update(String id, UserMachineDetailEntity entity) { + return this.updateById(entity); + } + + @Override + public void delete(UserMachineDetailEntity entity) { + if (entity != null) { + this.removeById(entity.getId()); + } + } + + @Override + public String checkForm(UserMachineDetailForm form, int i) { + String countRecover = ""; + + if (ObjectUtil.isEmpty(form.getUserMachId())) { + return "主表ID不能为空"; + } + + if (ObjectUtil.isEmpty(form.getMachineId())) { + return "机台不能为空"; + } + + return countRecover; + } + + @Override + @Transactional + public void saveOrUpdate(UserMachineDetailForm userMachineDetailForm, String id, boolean isSave) throws Exception { + if (isSave) { + UserMachineDetailEntity entity = new UserMachineDetailEntity(); + BeanUtils.copyProperties(userMachineDetailForm, entity); + entity.setId(null); + this.save(entity); + } else { + UserMachineDetailEntity entity = getInfo(id); + if (entity == null) { + throw new Exception("数据不存在"); + } + BeanUtils.copyProperties(userMachineDetailForm, entity); + this.updateById(entity); + } + } + + @Override + public List getListByUserMachId(Integer userMachId) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(UserMachineDetailEntity::getUserMachId, userMachId); + wrapper.eq(UserMachineDetailEntity::getDeleteMark, 0); + wrapper.eq(UserMachineDetailEntity::getEnabledStatus, 1); + wrapper.orderByAsc(UserMachineDetailEntity::getMachineCd); + List list = this.list(wrapper); + // 查询用户信息 + if (CollUtil.isNotEmpty(list)) { + list.forEach(item -> { + UserEntity userEntity = userService.getById(item.getCreatorUserId()); + if (userEntity != null) { + item.setCreateUserName(userEntity.getRealName()); + } + }); + } + return list; + } + + @Override + @Transactional + public void deleteByUserMachId(Integer userMachId) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(UserMachineDetailEntity::getUserMachId, userMachId); + this.remove(wrapper); + } +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/UserMachineServiceImpl.java b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/UserMachineServiceImpl.java new file mode 100644 index 0000000..fef1ec8 --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-biz/src/main/java/jnpf/service/impl/UserMachineServiceImpl.java @@ -0,0 +1,151 @@ +package jnpf.service.impl; + +import cn.hutool.core.util.ObjectUtil; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; +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 jnpf.mapper.UserMachineMapper; +import jnpf.model.machine.UserMachineDetailEntity; +import jnpf.model.machine.UserMachineEntity; +import jnpf.model.usermachine.UserMachineForm; +import jnpf.model.usermachine.UserMachinePagination; +import jnpf.model.usermachinedetail.UserMachineDetailForm; +import jnpf.service.UserMachineDetailService; +import jnpf.service.UserMachineService; +import jnpf.util.UserProvider; +import org.springframework.beans.BeanUtils; +import org.springframework.stereotype.Service; +import org.springframework.transaction.annotation.Transactional; + +import javax.annotation.Resource; +import java.util.List; +import java.util.stream.Collectors; + +@Service +public class UserMachineServiceImpl extends ServiceImpl implements UserMachineService { + + @Resource + private UserProvider userProvider; + + @Resource + private UserMachineDetailService userMachineDetailService; + + @Override + public List getList(UserMachinePagination userMachinePagination) { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + + if (ObjectUtil.isNotEmpty(userMachinePagination.getUserName())) { + wrapper.like(UserMachineEntity::getUserName, userMachinePagination.getUserName()); + } + if (ObjectUtil.isNotEmpty(userMachinePagination.getUserNo())) { + wrapper.like(UserMachineEntity::getUserNo, userMachinePagination.getUserNo()); + } + if (ObjectUtil.isNotEmpty(userMachinePagination.getClassGroup())) { + wrapper.eq(UserMachineEntity::getClassGroup, userMachinePagination.getClassGroup()); + } + if (ObjectUtil.isNotEmpty(userMachinePagination.getEnabledStatus())) { + wrapper.eq(UserMachineEntity::getEnabledStatus, userMachinePagination.getEnabledStatus()); + } + + wrapper.eq(UserMachineEntity::getDeleteMark, 0); + wrapper.orderByDesc(UserMachineEntity::getId); + + if ("0".equals(userMachinePagination.getDataType())) { + Page page = new Page<>(userMachinePagination.getCurrentPage(), userMachinePagination.getPageSize()); + IPage result = this.page(page, wrapper); + return userMachinePagination.setData(result.getRecords(), result.getTotal()); + } else { + return this.list(wrapper); + } + } + + @Override + public UserMachineEntity getInfo(String id) { + QueryWrapper queryWrapper = new QueryWrapper<>(); + queryWrapper.lambda().eq(UserMachineEntity::getId, id); + return this.getOne(queryWrapper); + } + + @Override + public void create(UserMachineEntity entity) { + this.save(entity); + } + + @Override + public boolean update(String id, UserMachineEntity entity) { + return this.updateById(entity); + } + + @Override + public void delete(UserMachineEntity entity) { + if (entity != null) { + this.removeById(entity.getId()); + } + } + + @Override + public String checkForm(UserMachineForm form, int i) { + if (ObjectUtil.isEmpty(form.getUserId())) { + return "人员不能为空"; + } + if (ObjectUtil.isEmpty(form.getClassGroup())) { + return "班组不能为空"; + } + return ""; + } + + @Override + @Transactional + public void saveOrUpdate(UserMachineForm userMachineForm, String id, boolean isSave) throws Exception { + UserMachineEntity entity; + if (isSave) { + entity = new UserMachineEntity(); + BeanUtils.copyProperties(userMachineForm, entity); + entity.setId(null); + this.save(entity); + } else { + entity = getInfo(id); + if (entity == null) { + throw new Exception("数据不存在"); + } + BeanUtils.copyProperties(userMachineForm, entity); + this.updateById(entity); + } + + saveMachineDetails(entity.getId(), userMachineForm.getMachineList()); + } + + private void saveMachineDetails(Integer userMachId, List machineList) { + if (ObjectUtil.isEmpty(machineList)) { + return; + } + + userMachineDetailService.deleteByUserMachId(userMachId); + + List detailEntities = machineList.stream() + .map(form -> { + UserMachineDetailEntity detailEntity = new UserMachineDetailEntity(); + detailEntity.setUserMachId(userMachId); + detailEntity.setMachineCd(form.getMachineCd()); + detailEntity.setMachineId(form.getMachineId()); + detailEntity.setMachineName(form.getMachineName()); + detailEntity.setEnabledStatus(1); + return detailEntity; + }) + .collect(Collectors.toList()); + + userMachineDetailService.saveBatch(detailEntities); + } + + + @Override + public List getSelectList() { + LambdaQueryWrapper wrapper = new LambdaQueryWrapper<>(); + wrapper.eq(UserMachineEntity::getDeleteMark, 0); + wrapper.eq(UserMachineEntity::getEnabledStatus, 1); + wrapper.orderByAsc(UserMachineEntity::getUserName); + return this.list(wrapper); + } +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-controller/src/main/java/jnpf/controller/MachineController.java b/jnpf-java-boot/jnpf-example/jnpf-example-controller/src/main/java/jnpf/controller/MachineController.java index 16361ad..4a8191e 100644 --- a/jnpf-java-boot/jnpf-example/jnpf-example-controller/src/main/java/jnpf/controller/MachineController.java +++ b/jnpf-java-boot/jnpf-example/jnpf-example-controller/src/main/java/jnpf/controller/MachineController.java @@ -10,10 +10,10 @@ import jnpf.model.machine.MachineEntity; import jnpf.model.machine.MachineForm; import jnpf.model.machine.MachinePagination; import jnpf.model.proline.ProLineEntity; +import jnpf.permission.entity.UserEntity; import jnpf.permission.service.UserService; import jnpf.service.MachineService; import jnpf.service.ProLineService; -import jnpf.service.ProcService; import jnpf.util.JsonUtil; import jnpf.util.StringUtil; import org.springframework.beans.factory.annotation.Autowired; @@ -26,7 +26,6 @@ import java.util.stream.Collectors; /** * 机台主数据 控制类 - * */ @Tag(name = "机台主数据", description = "Machine") @RestController @@ -39,9 +38,13 @@ public class MachineController { @Autowired private ProLineService proLineService; + @Autowired + private UserService userService; + /** * 列表 + * * @param machinePagination 分页查询对象 * @return 列表结果集 */ @@ -49,6 +52,13 @@ public class MachineController { @PostMapping("/getList") public ActionResult getList(@RequestBody MachinePagination machinePagination) { List list = machineService.getList(machinePagination); + // 查询用户信息 + list.forEach(item -> { + UserEntity userEntity = userService.getById(item.getCreatorUserId()); + if (userEntity != null) { + item.setCreateUserName(userEntity.getRealName()); + } + }); List> realList = list.stream() .map(JsonUtil::entityToMap) .collect(Collectors.toList()); @@ -63,6 +73,7 @@ public class MachineController { /** * 详情 + * * @param id 主键 * @return 详情结果集 */ @@ -78,6 +89,7 @@ public class MachineController { /** * 新建 + * * @param machineForm 表单对象 * @return 新建结果 */ @@ -98,7 +110,8 @@ public class MachineController { /** * 编辑 - * @param id 主键 + * + * @param id 主键 * @param machineForm 表单对象 * @return 编辑结果 */ @@ -125,6 +138,7 @@ public class MachineController { /** * 获取产线下拉列表 + * * @return 产线列表 */ @Operation(summary = "获取产线下拉列表") @@ -140,5 +154,4 @@ public class MachineController { } - } diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-controller/src/main/java/jnpf/controller/UserMachineController.java b/jnpf-java-boot/jnpf-example/jnpf-example-controller/src/main/java/jnpf/controller/UserMachineController.java new file mode 100644 index 0000000..a8b345c --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-controller/src/main/java/jnpf/controller/UserMachineController.java @@ -0,0 +1,126 @@ +package jnpf.controller; + +import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.tags.Tag; +import jnpf.base.ActionResult; +import jnpf.base.vo.PageListVO; +import jnpf.base.vo.PaginationVO; +import jnpf.model.machine.UserMachineDetailEntity; +import jnpf.model.machine.UserMachineEntity; +import jnpf.model.usermachine.UserMachineForm; +import jnpf.model.usermachine.UserMachinePagination; +import jnpf.permission.entity.UserEntity; +import jnpf.permission.service.UserService; +import jnpf.service.UserMachineDetailService; +import jnpf.service.UserMachineService; +import jnpf.util.JsonUtil; +import jnpf.util.StringUtil; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.web.bind.annotation.*; + +import javax.validation.Valid; +import java.util.List; +import java.util.Map; +import java.util.stream.Collectors; + +@Tag(name = "人员机台班组配置", description = "UserMachine") +@RestController +@RequestMapping("/api/example/userMachine") +public class UserMachineController { + + @Autowired + private UserMachineService userMachineService; + + @Autowired + private UserMachineDetailService userMachineDetailService; + + @Autowired + private UserService userService; + + @Operation(summary = "获取人员机台班组列表") + @PostMapping("/getList") + public ActionResult getList(@RequestBody UserMachinePagination userMachinePagination) { + List list = userMachineService.getList(userMachinePagination); + // 循环查询创建人 + list.forEach(item -> { + UserEntity userEntity = userService.getById(item.getCreatorUserId()); + if (userEntity != null) { + item.setCreateUserName(userEntity.getRealName()); + } + }); + List> realList = list.stream() + .map(JsonUtil::entityToMap) + .collect(Collectors.toList()); + + PageListVO vo = new PageListVO(); + vo.setList(realList); + PaginationVO page = JsonUtil.getJsonToBean(userMachinePagination, PaginationVO.class); + vo.setPagination(page); + return ActionResult.success(vo); + } + + @Operation(summary = "获取人员机台班组详情") + @GetMapping("/{id}") + public ActionResult info(@PathVariable("id") String id) { + UserMachineEntity entity = userMachineService.getInfo(id); + // 查询机台 + List detailEntities = userMachineDetailService.getListByUserMachId(entity.getId()); + entity.setMachineList(detailEntities); + if (entity != null) { + return ActionResult.success(JsonUtil.entityToMap(entity)); + } + return ActionResult.fail("数据不存在"); + } + + @Operation(summary = "新建人员机台班组配置") + @PostMapping + public ActionResult create(@RequestBody @Valid UserMachineForm userMachineForm) { + String b = userMachineService.checkForm(userMachineForm, 0); + if (StringUtil.isNotEmpty(b)) { + return ActionResult.fail(b); + } + try { + userMachineService.saveOrUpdate(userMachineForm, "", true); + return ActionResult.success("新建成功"); + } catch (Exception e) { + return ActionResult.fail("新建数据失败:" + e.getMessage()); + } + } + + @Operation(summary = "更新人员机台班组配置") + @PutMapping("/{id}") + public ActionResult update(@PathVariable("id") String id, @RequestBody @Valid UserMachineForm userMachineForm) { + userMachineForm.setId(Integer.parseInt(id)); + String b = userMachineService.checkForm(userMachineForm, 1); + if (StringUtil.isNotEmpty(b)) { + return ActionResult.fail(b); + } + UserMachineEntity entity = userMachineService.getInfo(id); + if (entity != null) { + try { + userMachineService.saveOrUpdate(userMachineForm, id, false); + return ActionResult.success("更新成功"); + } catch (Exception e) { + return ActionResult.fail("更新数据失败:" + e.getMessage()); + } + } else { + return ActionResult.fail("更新失败,数据不存在"); + } + } + + @Operation(summary = "删除人员机台班组配置") + @DeleteMapping("/{id}") + public ActionResult delete(@PathVariable("id") String id) { + UserMachineEntity entity = userMachineService.getInfo(id); + if (entity != null) { + try { + userMachineService.delete(entity); + return ActionResult.success("删除成功"); + } catch (Exception e) { + return ActionResult.fail("删除失败:" + e.getMessage()); + } + } + return ActionResult.fail("删除失败,数据不存在"); + } + +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/MachineEntity.java b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/MachineEntity.java index ceb995e..d231e26 100644 --- a/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/MachineEntity.java +++ b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/MachineEntity.java @@ -51,4 +51,7 @@ public class MachineEntity { @TableField(exist = false) private String belgProcName; + @TableField(exist = false) + private String createUserName; + } diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/MachinePagination.java b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/MachinePagination.java index 91a6175..8975469 100644 --- a/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/MachinePagination.java +++ b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/MachinePagination.java @@ -15,7 +15,7 @@ import lombok.Data; @Data public class MachinePagination extends Pagination { /** 查询key */ - private String[] selectKey; + private String selectKey; /** json */ private String json; /** 数据类型 0-当前页,1-全部数据 */ diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineDetailEntity.java b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineDetailEntity.java new file mode 100644 index 0000000..94683c5 --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineDetailEntity.java @@ -0,0 +1,61 @@ +package jnpf.model.machine; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; + +import java.util.Date; + +@Data +@TableName("tba_user_machine_detail") +public class UserMachineDetailEntity { + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @TableField(value = "f_creator_user_id", fill = FieldFill.INSERT) + private String creatorUserId; + + @TableField(value = "f_creator_time", fill = FieldFill.INSERT) + private Date creatorTime; + + @TableField(value = "f_last_modify_user_id", fill = FieldFill.INSERT_UPDATE) + private String lastModifyUserId; + + @TableField(value = "f_last_modify_time", fill = FieldFill.INSERT_UPDATE) + private Date lastModifyTime; + + @TableField(value = "f_delete_user_id", fill = FieldFill.UPDATE) + private String deleteUserId; + + @TableField(value = "f_delete_time", fill = FieldFill.UPDATE) + private Date deleteTime; + + @TableField(value = "f_delete_mark", updateStrategy = FieldStrategy.IGNORED) + private Integer deleteMark; + + @TableField(value = "f_flow_id") + private String flowId; + + @TableField(value = "f_flow_task_id") + private String flowTaskId; + + @TableField("enabled_status") + private Integer enabledStatus; + + @TableField(value = "remark", updateStrategy = FieldStrategy.IGNORED) + private String remark; + + @TableField("user_mach_id") + private Integer userMachId; + + @TableField("machine_cd") + private String machineCd; + + @TableField("machine_name") + private String machineName; + + @TableField("machine_id") + private Integer machineId; + + @TableField(exist = false) + private String createUserName; +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineDetailForm.java b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineDetailForm.java new file mode 100644 index 0000000..6e95340 --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineDetailForm.java @@ -0,0 +1,58 @@ +package jnpf.model.usermachinedetail; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.Date; + +@Data +public class UserMachineDetailForm { + + @Schema(description = "主键") + private Integer id; + + @Schema(description = "状态(1启用 2 未启用)") + private Integer enabledStatus; + + @Schema(description = "备注") + private String remark; + + @Schema(description = "主表id") + private Integer userMachId; + + @Schema(description = "机台编码") + private String machineCd; + + @Schema(description = "机台名称") + private String machineName; + + @Schema(description = "机台id") + private Integer machineId; + + @Schema(description = "创建时间") + private Date creatorTime; + + @Schema(description = "创建用户ID") + private String creatorUserId; + + @Schema(description = "最后修改时间") + private Date lastModifyTime; + + @Schema(description = "最后修改用户ID") + private String lastModifyUserId; + + @Schema(description = "删除时间") + private Date deleteTime; + + @Schema(description = "删除用户ID") + private String deleteUserId; + + @Schema(description = "删除标记") + private Integer deleteMark; + + @Schema(description = "流程ID") + private String flowId; + + @Schema(description = "流程任务ID") + private String flowTaskId; +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineDetailPagination.java b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineDetailPagination.java new file mode 100644 index 0000000..36e5b63 --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineDetailPagination.java @@ -0,0 +1,27 @@ +package jnpf.model.usermachinedetail; + +import jnpf.base.Pagination; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Data +public class UserMachineDetailPagination extends Pagination { + private String[] selectKey; + private String json; + private String dataType; + private String superQueryJson; + private String moduleId; + private String menuId; + + @Schema(description = "主表id") + private Integer userMachId; + + @Schema(description = "机台编码") + private String machineCd; + + @Schema(description = "机台名称") + private String machineName; + + @Schema(description = "状态(1启用 2 未启用)") + private Integer enabledStatus; +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineEntity.java b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineEntity.java new file mode 100644 index 0000000..5c797ca --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineEntity.java @@ -0,0 +1,66 @@ +package jnpf.model.machine; + +import com.baomidou.mybatisplus.annotation.*; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +@Data +@TableName("tba_user_machine") +public class UserMachineEntity { + @TableId(value = "id", type = IdType.AUTO) + private Integer id; + + @TableField(value = "f_creator_user_id", fill = FieldFill.INSERT) + private String creatorUserId; + + @TableField(value = "f_creator_time", fill = FieldFill.INSERT) + private Date creatorTime; + + @TableField(value = "f_last_modify_user_id", fill = FieldFill.INSERT_UPDATE) + private String lastModifyUserId; + + @TableField(value = "f_last_modify_time", fill = FieldFill.INSERT_UPDATE) + private Date lastModifyTime; + + @TableField(value = "f_delete_user_id", fill = FieldFill.UPDATE) + private String deleteUserId; + + @TableField(value = "f_delete_time", fill = FieldFill.UPDATE) + private Date deleteTime; + + @TableField(value = "f_delete_mark", updateStrategy = FieldStrategy.IGNORED) + private Integer deleteMark; + + @TableField(value = "f_flow_id") + private String flowId; + + @TableField(value = "f_flow_task_id") + private String flowTaskId; + + @TableField("enabled_status") + private Integer enabledStatus; + + @TableField(value = "remark", updateStrategy = FieldStrategy.IGNORED) + private String remark; + + @TableField("user_id") + private String userId; + + @TableField("user_name") + private String userName; + + @TableField("user_no") + private String userNo; + + @TableField("class_group") + private String classGroup; + + @TableField(exist = false) + private String createUserName; + + @TableField(exist = false) + private List machineList; + +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineForm.java b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineForm.java new file mode 100644 index 0000000..628da59 --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachineForm.java @@ -0,0 +1,62 @@ +package jnpf.model.usermachine; + +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +import java.util.Date; +import java.util.List; + +@Data +public class UserMachineForm { + + @Schema(description = "主键") + private Integer id; + + @Schema(description = "状态(1启用 2 未启用)") + private Integer enabledStatus; + + @Schema(description = "备注") + private String remark; + + @Schema(description = "人员id") + private String userId; + + @Schema(description = "人员名称") + private String userName; + + @Schema(description = "人员账号") + private String userNo; + + @Schema(description = "班组(甲 乙 丙 丁)") + private String classGroup; + + @Schema(description = "创建时间") + private Date creatorTime; + + @Schema(description = "创建用户ID") + private String creatorUserId; + + @Schema(description = "最后修改时间") + private Date lastModifyTime; + + @Schema(description = "最后修改用户ID") + private String lastModifyUserId; + + @Schema(description = "删除时间") + private Date deleteTime; + + @Schema(description = "删除用户ID") + private String deleteUserId; + + @Schema(description = "删除标记") + private Integer deleteMark; + + @Schema(description = "流程ID") + private String flowId; + + @Schema(description = "流程任务ID") + private String flowTaskId; + + + List machineList; +} diff --git a/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachinePagination.java b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachinePagination.java new file mode 100644 index 0000000..c31d53b --- /dev/null +++ b/jnpf-java-boot/jnpf-example/jnpf-example-entity/src/main/java/jnpf/model/machine/UserMachinePagination.java @@ -0,0 +1,27 @@ +package jnpf.model.usermachine; + +import jnpf.base.Pagination; +import io.swagger.v3.oas.annotations.media.Schema; +import lombok.Data; + +@Data +public class UserMachinePagination extends Pagination { + private String[] selectKey; + private String json; + private String dataType; + private String superQueryJson; + private String moduleId; + private String menuId; + + @Schema(description = "人员名称") + private String userName; + + @Schema(description = "人员账号") + private String userNo; + + @Schema(description = "班组") + private String classGroup; + + @Schema(description = "状态(1启用 2 未启用)") + private Integer enabledStatus; +} diff --git a/jnpf-java-boot/jnpf-permission/jnpf-permission-biz/src/main/java/jnpf/permission/service/impl/UserServiceImpl.java b/jnpf-java-boot/jnpf-permission/jnpf-permission-biz/src/main/java/jnpf/permission/service/impl/UserServiceImpl.java index 94862d8..3cee3ac 100644 --- a/jnpf-java-boot/jnpf-permission/jnpf-permission-biz/src/main/java/jnpf/permission/service/impl/UserServiceImpl.java +++ b/jnpf-java-boot/jnpf-permission/jnpf-permission-biz/src/main/java/jnpf/permission/service/impl/UserServiceImpl.java @@ -1,41 +1,46 @@ package jnpf.permission.service.impl; -import cn.hutool.core.collection.CollectionUtil; -import com.alibaba.fastjson.JSONObject; -import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; -import com.github.pagehelper.page.PageMethod; -import jnpf.base.service.SuperServiceImpl; import cn.afterturn.easypoi.excel.ExcelExportUtil; import cn.afterturn.easypoi.excel.entity.ExportParams; import cn.afterturn.easypoi.excel.entity.enmus.ExcelType; import cn.afterturn.easypoi.excel.entity.params.ExcelExportEntity; +import cn.hutool.core.collection.CollectionUtil; import cn.xuyanwu.spring.file.storage.FileInfo; +import com.alibaba.fastjson.JSONObject; +import com.baomidou.dynamic.datasource.annotation.DSTransactional; +import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageInfo; +import com.github.pagehelper.page.PageMethod; import jnpf.base.Pagination; +import jnpf.base.UserInfo; import jnpf.base.entity.DictionaryDataEntity; import jnpf.base.service.DictionaryDataService; +import jnpf.base.service.SuperServiceImpl; import jnpf.base.vo.DownloadVO; import jnpf.config.ConfigValueUtil; import jnpf.constant.JnpfConst; import jnpf.constant.PermissionConst; import jnpf.consts.AuthConsts; +import jnpf.database.source.DbBase; +import jnpf.database.util.DataSourceUtil; import jnpf.exception.DataException; import jnpf.message.util.OnlineUserModel; import jnpf.message.util.OnlineUserProvider; -import jnpf.permission.model.user.UserIdListVo; -import jnpf.permission.model.user.vo.*; -import jnpf.database.source.DbBase; -import jnpf.database.util.DataSourceUtil; import jnpf.permission.entity.*; import jnpf.permission.mapper.UserMapper; +import jnpf.permission.model.user.UserIdListVo; +import jnpf.permission.model.user.mod.UserConditionModel; import jnpf.permission.model.user.mod.UserImportModel; import jnpf.permission.model.user.page.PaginationUser; -import jnpf.util.ExcelUtil; +import jnpf.permission.model.user.vo.UserByRoleVO; +import jnpf.permission.model.user.vo.UserExportExceptionVO; +import jnpf.permission.model.user.vo.UserExportVO; +import jnpf.permission.model.user.vo.UserImportVO; import jnpf.permission.service.*; import jnpf.util.*; import lombok.Cleanup; @@ -43,17 +48,13 @@ import org.apache.poi.hssf.usermodel.HSSFWorkbook; import org.apache.poi.ss.usermodel.Workbook; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; -import com.baomidou.dynamic.datasource.annotation.DSTransactional; import org.springframework.util.ObjectUtils; import org.springframework.web.multipart.MultipartFile; +import javax.annotation.Resource; import java.text.SimpleDateFormat; import java.util.*; import java.util.stream.Collectors; -import jnpf.base.UserInfo; -import jnpf.permission.model.user.mod.UserConditionModel; - -import javax.annotation.Resource; import static jnpf.consts.AuthConsts.TOKEN_PREFIX; @@ -2173,4 +2174,13 @@ public class UserServiceImpl extends SuperServiceImpl im return (currentFinded == 1)?userInfo.getUserId():""; } + @Override + public List getUserSelect(String keyword) { + LambdaQueryWrapper queryWrapper = new LambdaQueryWrapper<>(); + queryWrapper.like(StringUtil.isNotEmpty(keyword), UserEntity::getRealName, keyword); +// queryWrapper.or().like(StringUtil.isNotEmpty(keyword), UserEntity::getRealName, keyword); + queryWrapper.isNull(UserEntity::getDeleteMark); + queryWrapper.eq(UserEntity::getEnabledMark, 1); + return this.list(queryWrapper); + } } diff --git a/jnpf-java-boot/jnpf-permission/jnpf-permission-controller/src/main/java/jnpf/permission/controller/UserController.java b/jnpf-java-boot/jnpf-permission/jnpf-permission-controller/src/main/java/jnpf/permission/controller/UserController.java index 36789c3..43773ca 100644 --- a/jnpf-java-boot/jnpf-permission/jnpf-permission-controller/src/main/java/jnpf/permission/controller/UserController.java +++ b/jnpf-java-boot/jnpf-permission/jnpf-permission-controller/src/main/java/jnpf/permission/controller/UserController.java @@ -1,21 +1,27 @@ package jnpf.permission.controller; import cn.dev33.satoken.annotation.SaCheckPermission; -import io.swagger.v3.oas.annotations.Parameter; -import io.swagger.v3.oas.annotations.Parameters; -import jnpf.base.controller.SuperController; import cn.xuyanwu.spring.file.storage.FileInfo; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; -import io.swagger.v3.oas.annotations.tags.Tag; import io.swagger.v3.oas.annotations.Operation; +import io.swagger.v3.oas.annotations.Parameter; +import io.swagger.v3.oas.annotations.Parameters; +import io.swagger.v3.oas.annotations.tags.Tag; import jnpf.annotation.UserPermission; +import jnpf.base.ActionResult; import jnpf.base.Page; +import jnpf.base.Pagination; import jnpf.base.UserInfo; +import jnpf.base.controller.SuperController; import jnpf.base.vo.DownloadVO; +import jnpf.base.vo.ListVO; +import jnpf.base.vo.PageListVO; +import jnpf.base.vo.PaginationVO; import jnpf.config.ConfigValueUtil; import jnpf.constant.MsgCode; import jnpf.constant.PermissionConst; import jnpf.engine.service.FlowTaskService; +import jnpf.exception.DataException; import jnpf.exception.ImportException; import jnpf.message.service.SynThirdDingTalkService; import jnpf.message.service.SynThirdQyService; @@ -32,15 +38,9 @@ import jnpf.permission.model.user.page.PageUser; import jnpf.permission.model.user.page.PaginationUser; import jnpf.permission.model.user.vo.*; import jnpf.permission.rest.PullUserUtil; +import jnpf.permission.service.*; import jnpf.permission.util.PermissionUtil; import jnpf.util.*; -import jnpf.base.ActionResult; -import jnpf.base.vo.PageListVO; -import jnpf.base.Pagination; -import jnpf.base.vo.PaginationVO; -import jnpf.base.vo.ListVO; -import jnpf.exception.DataException; -import jnpf.permission.service.*; import jnpf.util.treeutil.SumTree; import jnpf.util.treeutil.newtreeutil.TreeDotUtils; import lombok.Cleanup; @@ -1467,5 +1467,22 @@ public class UserController extends SuperController { flowWorkListVO.setPermission(jsonToList); return ActionResult.success(flowWorkListVO); } + //获取用户下拉框,根据用户名称或者者用户模糊查询 + @Operation(summary = "获取用户下拉框") + @SaCheckPermission("permission.user") + @GetMapping("/getUserSelect") + public ActionResult getUserSelect(String keyword) { + List list = userService.getUserSelect(keyword); + List> result = list.stream() + .map(entity -> { + Map map = new HashMap<>(3); + map.put("id", entity.getId()); + map.put("name", entity.getRealName()); + map.put("account", entity.getAccount()); + return map; + }) + .collect(Collectors.toList()); + return ActionResult.success(result); + } } diff --git a/jnpf-java-boot/jnpf-public/jnpf-provider/src/main/java/jnpf/permission/service/UserService.java b/jnpf-java-boot/jnpf-public/jnpf-provider/src/main/java/jnpf/permission/service/UserService.java index 73410e4..ceafbd5 100644 --- a/jnpf-java-boot/jnpf-public/jnpf-provider/src/main/java/jnpf/permission/service/UserService.java +++ b/jnpf-java-boot/jnpf-public/jnpf-provider/src/main/java/jnpf/permission/service/UserService.java @@ -398,4 +398,6 @@ public interface UserService extends SuperService { List selectedByIds(List ids); List getUserByName(String saleManName); + + List getUserSelect(String keyword); } diff --git a/jnpf-java-boot/jnpf-web/src/views/example/usermachine/form.vue b/jnpf-java-boot/jnpf-web/src/views/example/usermachine/form.vue new file mode 100644 index 0000000..c332e9c --- /dev/null +++ b/jnpf-java-boot/jnpf-web/src/views/example/usermachine/form.vue @@ -0,0 +1,242 @@ + + + diff --git a/jnpf-java-boot/jnpf-web/src/views/example/usermachine/index.vue b/jnpf-java-boot/jnpf-web/src/views/example/usermachine/index.vue new file mode 100644 index 0000000..a400357 --- /dev/null +++ b/jnpf-java-boot/jnpf-web/src/views/example/usermachine/index.vue @@ -0,0 +1,212 @@ + + +