|
@@ -14,6 +14,7 @@ import com.jeesite.modules.mes.entity.MesEmployee;
|
|
|
import com.jeesite.modules.mes.service.MesEmployeeService;
|
|
import com.jeesite.modules.mes.service.MesEmployeeService;
|
|
|
import com.jeesite.modules.sys.entity.EmpUser;
|
|
import com.jeesite.modules.sys.entity.EmpUser;
|
|
|
import com.jeesite.modules.sys.entity.*;
|
|
import com.jeesite.modules.sys.entity.*;
|
|
|
|
|
+import com.jeesite.modules.sys.service.EmployeeService;
|
|
|
import com.jeesite.modules.sys.service.EmpUserService;
|
|
import com.jeesite.modules.sys.service.EmpUserService;
|
|
|
import com.jeesite.modules.sys.service.UserService;
|
|
import com.jeesite.modules.sys.service.UserService;
|
|
|
import com.jeesite.modules.sys.web.user.EmpUserController;
|
|
import com.jeesite.modules.sys.web.user.EmpUserController;
|
|
@@ -47,6 +48,9 @@ public class EmpUserCustomController extends BaseController {
|
|
|
@Autowired
|
|
@Autowired
|
|
|
private MesEmployeeService mesEmployeeService;
|
|
private MesEmployeeService mesEmployeeService;
|
|
|
|
|
|
|
|
|
|
+ @Autowired
|
|
|
|
|
+ private EmployeeService employeeService;
|
|
|
|
|
+
|
|
|
@ModelAttribute
|
|
@ModelAttribute
|
|
|
public EmpUser get(String userCode, boolean isNewRecord) {
|
|
public EmpUser get(String userCode, boolean isNewRecord) {
|
|
|
return empUserService.get(userCode, isNewRecord);
|
|
return empUserService.get(userCode, isNewRecord);
|
|
@@ -175,10 +179,16 @@ public class EmpUserCustomController extends BaseController {
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
@RequestMapping(value = "exportData")
|
|
@RequestMapping(value = "exportData")
|
|
|
- public void exportData(EmpUser empUser, Boolean ctrlPermi, String ctrlPermiFilter, HttpServletResponse response) {
|
|
|
|
|
- empUser.getEmployee().getOffice().setIsQueryChildren(true);
|
|
|
|
|
- empUser.getEmployee().getCompany().setIsQueryChildren(true);
|
|
|
|
|
- if (ctrlPermi == null || ctrlPermi || Global.isStrictMode()) {
|
|
|
|
|
|
|
+ public void exportData(EmpUser empUser, String ctrlPermi, String ctrlPermiFilter, HttpServletResponse response) {
|
|
|
|
|
+ if (empUser.getEmployee() != null) {
|
|
|
|
|
+ if (empUser.getEmployee().getOffice() != null) {
|
|
|
|
|
+ empUser.getEmployee().getOffice().setIsQueryChildren(true);
|
|
|
|
|
+ }
|
|
|
|
|
+ if (empUser.getEmployee().getCompany() != null) {
|
|
|
|
|
+ empUser.getEmployee().getCompany().setIsQueryChildren(true);
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ if (StringUtils.isBlank(ctrlPermi) || !"0".equals(ctrlPermi) || Global.isStrictMode()) {
|
|
|
empUserService.addDataScopeFilter(empUser, ctrlPermiFilter);
|
|
empUserService.addDataScopeFilter(empUser, ctrlPermiFilter);
|
|
|
}
|
|
}
|
|
|
List<ExcelEmpUserEmployee> list = ListUtils.newArrayList();
|
|
List<ExcelEmpUserEmployee> list = ListUtils.newArrayList();
|
|
@@ -224,7 +234,7 @@ public class EmpUserCustomController extends BaseController {
|
|
|
for (ExcelEmpUserEmployee item : list) {
|
|
for (ExcelEmpUserEmployee item : list) {
|
|
|
try {
|
|
try {
|
|
|
EmpUser empUser = buildImportUser(item, updateSupport);
|
|
EmpUser empUser = buildImportUser(item, updateSupport);
|
|
|
- empUserService.save(empUser);
|
|
|
|
|
|
|
+ userService.save(empUser);
|
|
|
if (StringUtils.isNotBlank(item.getUserRoleString())) {
|
|
if (StringUtils.isNotBlank(item.getUserRoleString())) {
|
|
|
userService.saveAuth(empUser);
|
|
userService.saveAuth(empUser);
|
|
|
}
|
|
}
|
|
@@ -331,9 +341,56 @@ public class EmpUserCustomController extends BaseController {
|
|
|
employee.setRemarks(item.getRemarks());
|
|
employee.setRemarks(item.getRemarks());
|
|
|
employee.setStatus(MesEmployee.STATUS_NORMAL);
|
|
employee.setStatus(MesEmployee.STATUS_NORMAL);
|
|
|
mesEmployeeService.save(employee);
|
|
mesEmployeeService.save(employee);
|
|
|
|
|
+ saveEmployeePostList(employee, item.getPostCode());
|
|
|
|
|
+ syncUserEmployeePost(employee, item.getPostCode(), item.getPostName());
|
|
|
return employee;
|
|
return employee;
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
|
|
+ private void saveEmployeePostList(MesEmployee employee, String postCodes) {
|
|
|
|
|
+ if (employee == null || StringUtils.isBlank(employee.getEmpCode()) || StringUtils.isBlank(postCodes)) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ Employee sysEmployee = employeeService.get(new Employee(employee.getEmpCode()));
|
|
|
|
|
+ if (sysEmployee == null) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ sysEmployee.setPostCode(StringUtils.trim(postCodes));
|
|
|
|
|
+ sysEmployee.setEmployeePostList(buildEmployeePostList(postCodes));
|
|
|
|
|
+ sysEmployee.setIsNewRecord(false);
|
|
|
|
|
+ employeeService.save(sysEmployee);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private void syncUserEmployeePost(MesEmployee employee, String postCode, String postName) {
|
|
|
|
|
+ if (employee == null) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ User query = new User();
|
|
|
|
|
+ query.setUserType("employee");
|
|
|
|
|
+ query.setRefCode(employee.getEmpCode());
|
|
|
|
|
+ User boundUser = userService.getByUserTypeAndRefCode(query);
|
|
|
|
|
+ if (boundUser == null) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ Employee sysEmployee = employeeService.get(new Employee(boundUser.getUserCode()));
|
|
|
|
|
+ if (sysEmployee == null) {
|
|
|
|
|
+ return;
|
|
|
|
|
+ }
|
|
|
|
|
+ if (StringUtils.isNotBlank(postCode)) {
|
|
|
|
|
+ sysEmployee.setPostCode(StringUtils.trim(postCode));
|
|
|
|
|
+ }
|
|
|
|
|
+ employeeService.save(sysEmployee);
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
|
|
+ private List<EmployeePost> buildEmployeePostList(String postCodes) {
|
|
|
|
|
+ List<EmployeePost> employeePostList = ListUtils.newArrayList();
|
|
|
|
|
+ for (String postCode : StringUtils.split(StringUtils.trim(postCodes), ",")) {
|
|
|
|
|
+ if (StringUtils.isNotBlank(postCode)) {
|
|
|
|
|
+ employeePostList.add(new EmployeePost(null, StringUtils.trim(postCode)));
|
|
|
|
|
+ }
|
|
|
|
|
+ }
|
|
|
|
|
+ return employeePostList;
|
|
|
|
|
+ }
|
|
|
|
|
+
|
|
|
private ExcelEmpUserEmployee toExcel(EmpUser user) {
|
|
private ExcelEmpUserEmployee toExcel(EmpUser user) {
|
|
|
ExcelEmpUserEmployee excel = new ExcelEmpUserEmployee();
|
|
ExcelEmpUserEmployee excel = new ExcelEmpUserEmployee();
|
|
|
excel.setLoginCode(user.getLoginCode());
|
|
excel.setLoginCode(user.getLoginCode());
|
|
@@ -380,6 +437,9 @@ public class EmpUserCustomController extends BaseController {
|
|
|
|
|
|
|
|
private MesEmployee findSelectedEmployee(EmpUser empUser) {
|
|
private MesEmployee findSelectedEmployee(EmpUser empUser) {
|
|
|
if (empUser.getEmployee() == null) {
|
|
if (empUser.getEmployee() == null) {
|
|
|
|
|
+ if (StringUtils.isNotBlank(empUser.getRefCode())) {
|
|
|
|
|
+ return mesEmployeeService.get(new MesEmployee(StringUtils.trim(empUser.getRefCode())));
|
|
|
|
|
+ }
|
|
|
return null;
|
|
return null;
|
|
|
}
|
|
}
|
|
|
if (StringUtils.isNotBlank(empUser.getEmployee().getEmpCode())) {
|
|
if (StringUtils.isNotBlank(empUser.getEmployee().getEmpCode())) {
|
|
@@ -405,11 +465,28 @@ public class EmpUserCustomController extends BaseController {
|
|
|
if (employee == null) {
|
|
if (employee == null) {
|
|
|
return;
|
|
return;
|
|
|
}
|
|
}
|
|
|
- if (empUser != null && empUser.getEmployee() != null
|
|
|
|
|
- && StringUtils.isBlank(empUser.getEmployee().getPostCode())) {
|
|
|
|
|
- empUser.getEmployee().setPostCode(employee.getPostCode());
|
|
|
|
|
|
|
+ if (empUser != null) {
|
|
|
|
|
+ if (empUser.getEmployee() == null) {
|
|
|
|
|
+ empUser.setEmployee(new Employee(employee.getEmpCode()));
|
|
|
|
|
+ }
|
|
|
|
|
+ if (StringUtils.isBlank(empUser.getEmployee().getEmpCode())) {
|
|
|
|
|
+ empUser.getEmployee().setEmpCode(employee.getEmpCode());
|
|
|
|
|
+ }
|
|
|
|
|
+ if (StringUtils.isBlank(empUser.getEmployee().getEmpNo())) {
|
|
|
|
|
+ empUser.getEmployee().setEmpNo(employee.getEmpNo());
|
|
|
|
|
+ }
|
|
|
|
|
+ if (StringUtils.isBlank(empUser.getEmployee().getEmpName())) {
|
|
|
|
|
+ empUser.getEmployee().setEmpName(employee.getEmpName());
|
|
|
|
|
+ }
|
|
|
|
|
+ if (StringUtils.isBlank(empUser.getEmployee().getEmpNameEn())) {
|
|
|
|
|
+ empUser.getEmployee().setEmpNameEn(employee.getEmpNameEn());
|
|
|
|
|
+ }
|
|
|
|
|
+ if (StringUtils.isBlank(empUser.getEmployee().getPostCode())) {
|
|
|
|
|
+ empUser.getEmployee().setPostCode(employee.getPostCode());
|
|
|
|
|
+ }
|
|
|
}
|
|
}
|
|
|
model.addAttribute("employeePostName", employee.getPostName());
|
|
model.addAttribute("employeePostName", employee.getPostName());
|
|
|
|
|
+ model.addAttribute("empUser", empUser);
|
|
|
}
|
|
}
|
|
|
|
|
|
|
|
private String checkSelectedEmployee(EmpUser empUser, MesEmployee employee) {
|
|
private String checkSelectedEmployee(EmpUser empUser, MesEmployee employee) {
|