| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214 |
- package com.jeesite.modules.mes.web;
- import com.jeesite.common.config.Global;
- import com.jeesite.common.collect.ListUtils;
- import com.jeesite.common.collect.MapUtils;
- import com.jeesite.common.entity.Page;
- import com.jeesite.common.lang.StringUtils;
- import com.jeesite.common.web.BaseController;
- import com.jeesite.modules.mes.entity.MesLineProcess;
- import com.jeesite.modules.mes.entity.MesLineProcessUser;
- import com.jeesite.modules.mes.service.MesLineProcessService;
- import com.jeesite.modules.mes.service.MesLineProcessUserService;
- import org.apache.shiro.authz.annotation.RequiresPermissions;
- import org.springframework.beans.factory.annotation.Autowired;
- import org.springframework.jdbc.core.JdbcTemplate;
- import org.springframework.stereotype.Controller;
- import org.springframework.ui.Model;
- import org.springframework.validation.annotation.Validated;
- import org.springframework.web.bind.annotation.ModelAttribute;
- import org.springframework.web.bind.annotation.PostMapping;
- import org.springframework.web.bind.annotation.RequestMapping;
- import org.springframework.web.bind.annotation.ResponseBody;
- import javax.servlet.http.HttpServletRequest;
- import javax.servlet.http.HttpServletResponse;
- import java.util.LinkedHashSet;
- import java.util.List;
- import java.util.Map;
- import java.util.Set;
- /**
- * 生产工序物料表Controller
- * @author mes
- * @version 2024-04-02
- */
- @Controller
- @RequestMapping(value = "${adminPath}/mes/mesLineProcessUser")
- public class MesLineProcessUserController extends BaseController {
- @Autowired
- private MesLineProcessUserService mesLineProcessUserService;
- @Autowired
- private MesLineProcessService mesLineProcessService;
- @Autowired
- private JdbcTemplate jdbcTemplate;
-
- /**
- * 获取数据
- */
- @ModelAttribute
- public MesLineProcessUser get(String id, boolean isNewRecord) {
- return mesLineProcessUserService.get(id, isNewRecord);
- }
-
- /**
- * 查询列表
- */
- @RequiresPermissions("mes:mesLineProcess:view")
- @RequestMapping(value = {"list", ""})
- public String list(MesLineProcessUser mesLineProcessUser, Model model) {
- model.addAttribute("mesLineProcessUser", mesLineProcessUser);
- MesLineProcess mesLineProcess = new MesLineProcess();
- mesLineProcess.setId(mesLineProcessUser.getLineProcessId());
- MesLineProcess mlInfo = mesLineProcessService.get(mesLineProcess);
- model.addAttribute("mlInfo", mlInfo);
- return "modules/mes/mesLineProcessUserList";
- }
-
- /**
- * 查询列表数据
- */
- @RequiresPermissions("mes:mesLineProcess:view")
- @RequestMapping(value = "listData")
- @ResponseBody
- public Page<MesLineProcessUser> listData(MesLineProcessUser mesLineProcessUser, HttpServletRequest request, HttpServletResponse response) {
- mesLineProcessUser.setPage(new Page<>(request, response));
- Page<MesLineProcessUser> page = mesLineProcessUserService.findPage(mesLineProcessUser);
- return page;
- }
- /**
- * 查看编辑表单
- */
- @RequiresPermissions("mes:mesLineProcess:view")
- @RequestMapping(value = "form")
- public String form(MesLineProcessUser mesLineProcessUser, Model model) {
- model.addAttribute("mesLineProcessUser", mesLineProcessUser);
- return "modules/mes/mesLineProcessUserForm";
- }
- /**
- * 生产工位人员选择树:查询全部正常用户,不按当前登录人的创建人/数据权限过滤。
- */
- @RequiresPermissions("mes:mesLineProcess:view")
- @RequestMapping(value = "userTreeData")
- @ResponseBody
- public List<Map<String, Object>> userTreeData() {
- List<Map<String, Object>> mapList = ListUtils.newArrayList();
- List<Map<String, Object>> officeList = jdbcTemplate.queryForList(
- "select office_code, parent_code, office_name " +
- "from js_sys_office where status = '0' order by tree_sorts, tree_sort");
- for (Map<String, Object> office : officeList) {
- Map<String, Object> map = MapUtils.newHashMap();
- map.put("id", valueToString(office.get("office_code")));
- map.put("pId", StringUtils.defaultIfBlank(valueToString(office.get("parent_code")), "0"));
- map.put("name", office.get("office_name"));
- map.put("isParent", true);
- mapList.add(map);
- }
- List<Map<String, Object>> userList = jdbcTemplate.queryForList(
- "select u.user_code, u.login_code, u.user_name, u.ref_name, e.emp_name, e.office_code " +
- "from js_sys_user u " +
- "left join js_sys_employee e on e.emp_code = u.ref_code and e.status = '0' " +
- "where u.status = '0' and u.user_type = 'employee' " +
- "order by e.office_code, u.user_weight desc, u.user_name, u.login_code");
- for (Map<String, Object> user : userList) {
- Map<String, Object> map = MapUtils.newHashMap();
- String userCode = valueToString(user.get("user_code"));
- String userName = firstNotBlank(
- valueToString(user.get("user_name")),
- valueToString(user.get("ref_name")),
- valueToString(user.get("emp_name")),
- valueToString(user.get("login_code")),
- userCode);
- map.put("id", userCode);
- map.put("pId", StringUtils.defaultIfBlank(valueToString(user.get("office_code")), "0"));
- map.put("name", userName);
- map.put("isParent", false);
- mapList.add(map);
- }
- return mapList;
- }
- /**
- * 保存数据
- */
- @RequiresPermissions("mes:mesLineProcess:edit")
- @PostMapping(value = "save")
- @ResponseBody
- public String save(@Validated MesLineProcessUser mesLineProcessUser) {
- if(mesLineProcessUser.getIsNewRecord()){
- Set<String> userCodeSet = new LinkedHashSet<>();
- String[] userCodes = StringUtils.split(StringUtils.trim(mesLineProcessUser.getUserCode()), ",");
- if (userCodes != null) {
- for (String userCode : userCodes) {
- if (StringUtils.isNotBlank(userCode)) {
- userCodeSet.add(StringUtils.trim(userCode));
- }
- }
- }
- if (userCodeSet.isEmpty()) {
- return renderResult(Global.FALSE, text("请选择人员!"));
- }
- int saveCount = 0;
- for (String userCode : userCodeSet) {
- MesLineProcessUser exists = new MesLineProcessUser();
- exists.setLineProcessId(mesLineProcessUser.getLineProcessId());
- exists.setUserCode(userCode);
- Long mr = mesLineProcessUserService.findCount(exists);
- if(mr > 0){
- continue;
- }
- MesLineProcessUser saveUser = new MesLineProcessUser();
- saveUser.setIsNewRecord(true);
- saveUser.setLineProcessId(mesLineProcessUser.getLineProcessId());
- saveUser.setUserCode(userCode);
- saveUser.setAuth(mesLineProcessUser.getAuth());
- mesLineProcessUserService.save(saveUser);
- saveCount++;
- }
- if(saveCount == 0){
- return renderResult(Global.FALSE, text("当前人员已添加!"));
- }
- return renderResult(Global.TRUE, text("保存成功!"));
- }
- mesLineProcessUserService.save(mesLineProcessUser);
- return renderResult(Global.TRUE, text("保存成功!"));
- }
-
- /**
- * 删除数据
- */
- @RequiresPermissions("mes:mesLineProcess:edit")
- @RequestMapping(value = "delete")
- @ResponseBody
- public String delete(MesLineProcessUser mesLineProcessUser) {
- mesLineProcessUserService.delete(mesLineProcessUser);
- return renderResult(Global.TRUE, text("删除成功!"));
- }
-
- private String firstNotBlank(String... values) {
- if (values == null) {
- return "";
- }
- for (String value : values) {
- if (StringUtils.isNotBlank(value)) {
- return value;
- }
- }
- return "";
- }
- private String valueToString(Object value) {
- return value == null ? "" : String.valueOf(value);
- }
-
- }
|