From 76f68055a9396488c88c6fa3409a52d2a5d0fc89 Mon Sep 17 00:00:00 2001 From: mx <1289317512@qq.com> Date: Wed, 13 Nov 2024 11:24:27 +0800 Subject: [PATCH] =?UTF-8?q?=E5=B7=A5=E4=BA=BA=E5=AF=BC=E5=85=A5=EF=BC=8C?= =?UTF-8?q?=E6=8E=92=E5=BA=8F=EF=BC=8C=20=E6=8A=A5=E5=90=8D=E5=88=97?= =?UTF-8?q?=E8=A1=A8=E6=8E=92=E5=BA=8F=EF=BC=8C=E6=8B=BF=E5=87=BA=E5=B0=8F?= =?UTF-8?q?=E7=A8=8B=E5=BA=8F=E9=85=8D=E7=BD=AE=E5=88=B0=E9=85=8D=E7=BD=AE?= =?UTF-8?q?=E6=96=87=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../custom/StEmployeeController.java | 75 ++++++++++++++++ .../controller/custom/StTaskController.java | 20 ++--- .../src/main/resources/application.yml | 13 ++- .../com/staffing/common/config/EnvConfig.java | 65 ++++++++++++++ .../common/config/StaffingConfig.java | 46 ++++++++++ .../com/staffing/common/utils/WxUtil.java | 26 +++--- .../web/service/SysLoginService.java | 14 ++- .../staffing/custom/domain/StEmployee.java | 33 +++++-- .../custom/mapper/StEmployeeMapper.java | 2 + .../custom/service/IStEmployeeService.java | 2 + .../custom/service/IStTaskService.java | 2 + .../service/impl/StEmployeeServiceImpl.java | 60 +++++++++++++ .../service/impl/StTaskServiceImpl.java | 12 ++- .../service/impl/StTaskSignServiceImpl.java | 1 + .../mapper/custom/StEmployeeMapper.xml | 58 ++++++++++++ .../mapper/custom/StTaskSignMapper.xml | 3 + .../src/layout/components/Sidebar/Logo.vue | 4 +- .../src/views/employee/employee/index.vue | 89 ++++++++++++++++++- staffing-ui/src/views/fund/fund/index.vue | 2 +- 19 files changed, 482 insertions(+), 45 deletions(-) create mode 100644 staffing-common/src/main/java/com/staffing/common/config/EnvConfig.java diff --git a/staffing-admin/src/main/java/com/staffing/web/controller/custom/StEmployeeController.java b/staffing-admin/src/main/java/com/staffing/web/controller/custom/StEmployeeController.java index 2f77d20..8e8fbf6 100644 --- a/staffing-admin/src/main/java/com/staffing/web/controller/custom/StEmployeeController.java +++ b/staffing-admin/src/main/java/com/staffing/web/controller/custom/StEmployeeController.java @@ -1,5 +1,6 @@ package com.staffing.web.controller.custom; +import java.util.ArrayList; import java.util.Date; import java.util.List; import java.util.stream.Collectors; @@ -8,6 +9,7 @@ import javax.servlet.http.HttpServletResponse; import com.staffing.common.core.domain.entity.SysUser; import com.staffing.common.core.redis.RedisCache; import com.staffing.common.utils.SecurityUtils; +import com.staffing.custom.domain.StEmployeeFundRecord; import com.staffing.custom.domain.StTask; import com.staffing.custom.domain.StTaskSign; import com.staffing.custom.mapper.StTaskMapper; @@ -31,6 +33,7 @@ import com.staffing.custom.domain.StEmployee; import com.staffing.custom.service.IStEmployeeService; import com.staffing.common.utils.poi.ExcelUtil; import com.staffing.common.core.page.TableDataInfo; +import org.springframework.web.multipart.MultipartFile; import static com.staffing.common.constant.Constants.DELETED_USER_KEY; import static com.staffing.common.utils.PageUtils.startPage; @@ -75,9 +78,80 @@ public class StEmployeeController extends BaseController public void export(HttpServletResponse response, StEmployee stEmployee) { List list = stEmployeeService.selectStEmployeeList(stEmployee); + for (StEmployee employee : list) { + employee.setEmployeeTypeStr(employee.getEmployeeType() == 0 ? "灵活用工" : "固定长期用工"); + + if (employee.getSex() == null){ + employee.setSexStr("未知"); + }else{ + if (employee.getSex() == 0){ + employee.setSexStr("男"); + }else if (employee.getSex() == 1){ + employee.setSexStr("女"); + }else if (employee.getSex() == 2){ + employee.setSexStr("未知"); + } + } + } + ExcelUtil util = new ExcelUtil(StEmployee.class); util.exportExcel(response, list, "员工数据"); } + /** + * 导出员工列表 + */ + @PreAuthorize("@ss.hasPermi('employee:export')") + @Log(title = "员工", businessType = BusinessType.EXPORT) + @PostMapping("/exportMoudle") + public void exportMoudle(HttpServletResponse response, StEmployee stEmployee) + { + List list = new ArrayList<>(); + StEmployee stEmployee1 = new StEmployee(); + stEmployee1.setSexStr("男"); + stEmployee1.setRealName("张三"); + stEmployee1.setPhone("1313131313"); + stEmployee1.setIdCard("11011001111111111"); + stEmployee1.setNation("汉"); + stEmployee1.setAge(18); + stEmployee1.setUseUnit("xxx单位"); + stEmployee1.setInterviewDate(new Date()); + stEmployee1.setEntryDate(new Date()); + stEmployee1.setSupplier("xxx供应商"); + stEmployee1.setEmployeePrice("10"); + stEmployee1.setSupplierPrice("20"); + stEmployee1.setEmployeeTypeStr("灵活用工"); + + StEmployee stEmployee2 = new StEmployee(); + stEmployee2.setSexStr("女"); + stEmployee2.setRealName("张三"); + stEmployee2.setPhone("1313131313"); + stEmployee2.setIdCard("11011001111111111"); + stEmployee2.setNation("汉"); + stEmployee2.setAge(18); + stEmployee2.setUseUnit("xxx单位"); + stEmployee2.setInterviewDate(new Date()); + stEmployee2.setEntryDate(new Date()); + stEmployee2.setSupplier("xxx供应商"); + stEmployee2.setEmployeePrice("10"); + stEmployee2.setSupplierPrice("20"); + stEmployee2.setEmployeeTypeStr("固定长期用工"); + list.add(stEmployee1); + list.add(stEmployee2); + + ExcelUtil util = new ExcelUtil(StEmployee.class); + util.exportExcel(response, list, "员工数据"); + } + @Log(title = "员工导入", businessType = BusinessType.IMPORT) + @PreAuthorize("@ss.hasPermi('employee:export')") + @PostMapping("/importData") + public AjaxResult importData(MultipartFile file) throws Exception + { + ExcelUtil util = new ExcelUtil<>(StEmployee.class); + List records = util.importExcel(file.getInputStream()); + + String message = stEmployeeService.importStEmployee(records); + return success(message); + } /** * 获取员工详细信息 @@ -102,6 +176,7 @@ public class StEmployeeController extends BaseController return error("手机号已存在"); } stEmployee.setUpdateTime(new Date()); + stEmployee.setCreateTime(new Date()); return toAjax(stEmployeeService.insertStEmployee(stEmployee)); } diff --git a/staffing-admin/src/main/java/com/staffing/web/controller/custom/StTaskController.java b/staffing-admin/src/main/java/com/staffing/web/controller/custom/StTaskController.java index 0ce1447..8d499bc 100644 --- a/staffing-admin/src/main/java/com/staffing/web/controller/custom/StTaskController.java +++ b/staffing-admin/src/main/java/com/staffing/web/controller/custom/StTaskController.java @@ -6,6 +6,7 @@ import java.util.Date; import java.util.List; import javax.servlet.http.HttpServletResponse; +import com.staffing.common.config.EnvConfig; import com.staffing.common.utils.MinioUtil; import com.staffing.common.utils.QRCodeGenerator; import com.staffing.custom.domain.StTaskSign; @@ -38,6 +39,9 @@ public class StTaskController extends BaseController @Autowired private MinioUtil minioUtil; + + @Autowired + EnvConfig envConfig; /** * 查询任务列表 */ @@ -52,7 +56,7 @@ public class StTaskController extends BaseController continue; } - task.setCodePic("https://www.tulkj.cn/file/yonggong/" + task.getCodePic()); + task.setCodePic(envConfig.getPicPrefix() + task.getCodePic()); // task.setCodePic(minioUtil.getObjectURL( "yonggong", task.getCodePic())); } return getDataTable(list); @@ -95,19 +99,7 @@ public class StTaskController extends BaseController stTask.setCreateTime(new Date()); stTask.setUpdateTime(new Date()); stTaskService.insertStTask(stTask); - - String url = "http://www.tulkj.cn:81/index.html?id=" + stTask.getId(); - InputStream inputStream = QRCodeGenerator.generateQRCodeImage(url, 500, 500); - String fileName = System.currentTimeMillis() + stTask.getId() + ".png"; - try { - ObjectWriteResponse objectWriteResponse = minioUtil.putObject("yonggong" - , fileName, inputStream, inputStream.available(), "image/png"); - } catch (Exception e) { - logger.error("minioUtil.putObject error", e); - } - - stTask.setCodePic(fileName); - + stTaskService.generatePrCode(stTask); return toAjax(stTaskService.updateStTask(stTask)); } diff --git a/staffing-admin/src/main/resources/application.yml b/staffing-admin/src/main/resources/application.yml index c2bf6d8..377eab2 100644 --- a/staffing-admin/src/main/resources/application.yml +++ b/staffing-admin/src/main/resources/application.yml @@ -168,4 +168,15 @@ minio: ip: 8.155.21.176 port: 9000 access-key: root - secret-key: root_6688 \ No newline at end of file + secret-key: root_6688 + +env: + genPicCodeUrl: http://yg.pusonggroup.com:81/index.html?id= + picPrefix: https://www.tulkj.cn/file/yonggong/ + appId: wx7bc7df6eb945a84f + secret: 60dc8f7e8c850dfbe0170acefa48070a +#env: +# genPicCodeUrl: http://www.tulkj.cn:81/index.html?id= +# picPrefix: https://www.tulkj.cn/file/yonggong/ +# appId: wx26e952dad7a8aae5 +# secret: 60a85e94d921a385ce52faaaed4a103b \ No newline at end of file diff --git a/staffing-common/src/main/java/com/staffing/common/config/EnvConfig.java b/staffing-common/src/main/java/com/staffing/common/config/EnvConfig.java new file mode 100644 index 0000000..cfd066c --- /dev/null +++ b/staffing-common/src/main/java/com/staffing/common/config/EnvConfig.java @@ -0,0 +1,65 @@ +package com.staffing.common.config; + +import org.springframework.boot.context.properties.ConfigurationProperties; +import org.springframework.stereotype.Component; + +/** + * 读取项目相关配置 + * + * @author staffing + */ +@Component +@ConfigurationProperties(prefix = "env") +public class EnvConfig { + /** + * 二维码 地址内容 + */ + private String genPicCodeUrl; + + /** + * minio 文件前缀 + */ + private String picPrefix; + + /** + * 小程序 + */ + private String appId; + + /** + * 小程序 + */ + private String secret; + + public String getGenPicCodeUrl() { + return genPicCodeUrl; + } + + public void setGenPicCodeUrl(String genPicCodeUrl) { + this.genPicCodeUrl = genPicCodeUrl; + } + + public String getPicPrefix() { + return picPrefix; + } + + public void setPicPrefix(String picPrefix) { + this.picPrefix = picPrefix; + } + + public String getAppId() { + return appId; + } + + public void setAppId(String appId) { + this.appId = appId; + } + + public String getSecret() { + return secret; + } + + public void setSecret(String secret) { + this.secret = secret; + } +} \ No newline at end of file diff --git a/staffing-common/src/main/java/com/staffing/common/config/StaffingConfig.java b/staffing-common/src/main/java/com/staffing/common/config/StaffingConfig.java index e340ccf..eb00856 100644 --- a/staffing-common/src/main/java/com/staffing/common/config/StaffingConfig.java +++ b/staffing-common/src/main/java/com/staffing/common/config/StaffingConfig.java @@ -30,6 +30,52 @@ public class StaffingConfig /** 验证码类型 */ private static String captchaType; + + /** 二维码 地址内容 */ + private String genPicCodeUrl; + + /** minio 文件前缀 */ + private static String picPrefix; + + /** 小程序 */ + private static boolean appId; + + /** 小程序 */ + private static String secret; + + + public String getGenPicCodeUrl() { + return genPicCodeUrl; + } + + public void setGenPicCodeUrl(String genPicCodeUrl) { + this.genPicCodeUrl = genPicCodeUrl; + } + + public static String getPicPrefix() { + return picPrefix; + } + + public static void setPicPrefix(String picPrefix) { + StaffingConfig.picPrefix = picPrefix; + } + + public static boolean isAppId() { + return appId; + } + + public static void setAppId(boolean appId) { + StaffingConfig.appId = appId; + } + + public static String getSecret() { + return secret; + } + + public static void setSecret(String secret) { + StaffingConfig.secret = secret; + } + public String getName() { return name; diff --git a/staffing-common/src/main/java/com/staffing/common/utils/WxUtil.java b/staffing-common/src/main/java/com/staffing/common/utils/WxUtil.java index 4bdc295..81704a7 100644 --- a/staffing-common/src/main/java/com/staffing/common/utils/WxUtil.java +++ b/staffing-common/src/main/java/com/staffing/common/utils/WxUtil.java @@ -1,28 +1,34 @@ package com.staffing.common.utils; import com.alibaba.fastjson2.JSONObject; +import com.staffing.common.config.EnvConfig; import com.staffing.common.core.domain.WxLogin; import com.staffing.common.core.domain.WxPhone; import com.staffing.common.core.domain.WxToken; import com.staffing.common.utils.http.HttpUtils; +import org.springframework.beans.factory.annotation.Autowired; +import org.springframework.stereotype.Component; import java.util.HashMap; import java.util.Map; +@Component public class WxUtil { // public final static String appId = "wx7bc7df6eb945a84f";//ps // public final static String secret = "60dc8f7e8c850dfbe0170acefa48070a";//ps - public final static String appId = "wx26e952dad7a8aae5"; - public final static String secret = "60a85e94d921a385ce52faaaed4a103b"; +// public final static String appId = "wx26e952dad7a8aae5"; +// public final static String secret = "60a85e94d921a385ce52faaaed4a103b"; - private static WxToken wxToken = null; + private WxToken wxToken = null; + @Autowired + EnvConfig envConfig; - public static synchronized WxToken getAccessToken(){ + public synchronized WxToken getAccessToken(){ if (wxToken == null || System.currentTimeMillis() > wxToken.getExpiresTime() - 60000){ Map getParam = new HashMap<>(); getParam.put("grant_type", "client_credential"); - getParam.put("appid", appId); - getParam.put("secret", secret); + getParam.put("appid", envConfig.getAppId()); + getParam.put("secret", envConfig.getSecret()); String resJson = HttpUtils.sendGet("https://api.weixin.qq.com/cgi-bin/token", HttpUtils.getParam(getParam)); wxToken = JSONObject.parseObject(resJson, WxToken.class); wxToken.setExpiresTime(wxToken.getExpires_in() * 1000 + System.currentTimeMillis()); @@ -36,7 +42,7 @@ public class WxUtil { * @param openId 微信用户唯一表示 * @return */ - public static WxPhone getPhoneNumber(String code, String openId){ + public WxPhone getPhoneNumber(String code, String openId){ Map getParam = new HashMap<>(); getParam.put("code", code); getParam.put("openid", openId); @@ -50,11 +56,11 @@ public class WxUtil { * wx 登录 获取openId * @return */ - public static WxLogin login(String code){ + public WxLogin login(String code){ Map getParam = new HashMap<>(); getParam.put("grant_type", "authorization_code"); - getParam.put("appid", appId); - getParam.put("secret", secret); + getParam.put("appid", envConfig.getAppId()); + getParam.put("secret", envConfig.getSecret()); getParam.put("js_code", code); String url = "https://api.weixin.qq.com/sns/jscode2session"; String resJson = HttpUtils.sendGet(url, HttpUtils.getParam(getParam)); diff --git a/staffing-framework/src/main/java/com/staffing/framework/web/service/SysLoginService.java b/staffing-framework/src/main/java/com/staffing/framework/web/service/SysLoginService.java index 6b8885e..af12b60 100644 --- a/staffing-framework/src/main/java/com/staffing/framework/web/service/SysLoginService.java +++ b/staffing-framework/src/main/java/com/staffing/framework/web/service/SysLoginService.java @@ -39,6 +39,7 @@ import com.staffing.system.service.ISysConfigService; import com.staffing.system.service.ISysUserService; import java.util.ArrayList; +import java.util.Date; import java.util.HashSet; /** @@ -67,6 +68,9 @@ public class SysLoginService private IStEmployeeService stEmployeeService; @Autowired private SysPermissionService permissionService; + @Autowired + private WxUtil wxUtil; + /** * 登录验证 * @@ -142,8 +146,8 @@ public class SysLoginService LoginUser loginUser = null; try { - WxLogin login = WxUtil.login(loginCode); - WxPhone wxPhone = WxUtil.getPhoneNumber(phoneCode, login.getOpenid()); + WxLogin login = wxUtil.login(loginCode); + WxPhone wxPhone = wxUtil.getPhoneNumber(phoneCode, login.getOpenid()); String phoneNumber = wxPhone.getPhoneNumber(); StEmployee stEmployee = stEmployeeService.selectStEmployeeByPhone(phoneNumber); @@ -152,6 +156,8 @@ public class SysLoginService stEmployee.setPhone(phoneNumber); stEmployee.setOpenId(login.getOpenid()); stEmployee.setRealName("微信用户"); + stEmployee.setCreateTime(new Date()); + stEmployee.setUpdateTime(new Date()); stEmployeeService.insertStEmployee(stEmployee); } if (stEmployee.getOpenId() == null){ @@ -192,8 +198,8 @@ public class SysLoginService LoginUser loginUser = null; try { - WxLogin login = WxUtil.login(loginCode); - WxPhone wxPhone = WxUtil.getPhoneNumber(phoneCode, login.getOpenid()); + WxLogin login = wxUtil.login(loginCode); + WxPhone wxPhone = wxUtil.getPhoneNumber(phoneCode, login.getOpenid()); String phoneNumber = wxPhone.getPhoneNumber(); SysUser user = userService.selectUserByPhone(phoneNumber); diff --git a/staffing-system/src/main/java/com/staffing/custom/domain/StEmployee.java b/staffing-system/src/main/java/com/staffing/custom/domain/StEmployee.java index b71acaa..1cd4cb6 100644 --- a/staffing-system/src/main/java/com/staffing/custom/domain/StEmployee.java +++ b/staffing-system/src/main/java/com/staffing/custom/domain/StEmployee.java @@ -34,6 +34,8 @@ public class StEmployee extends BaseEntity /** 性别 */ @Excel(name = "性别") + private String sexStr; + private Integer sex; /** 民族 */ @@ -42,7 +44,7 @@ public class StEmployee extends BaseEntity /** 年龄 */ @Excel(name = "年龄") - private Long age; + private Integer age; /** 用工单位 */ @Excel(name = "用工单位") @@ -70,12 +72,31 @@ public class StEmployee extends BaseEntity @Excel(name = "供应商单价") private String supplierPrice; + /** 用工类型 */ + private Integer employeeType; + /** 用工类型 */ @Excel(name = "用工类型") - private Long employeeType; + private String employeeTypeStr; private String openId; + public String getSexStr() { + return sexStr; + } + + public void setSexStr(String sexStr) { + this.sexStr = sexStr; + } + + public String getEmployeeTypeStr() { + return employeeTypeStr; + } + + public void setEmployeeTypeStr(String employeeTypeStr) { + this.employeeTypeStr = employeeTypeStr; + } + public String getOpenId() { return openId; } @@ -138,12 +159,12 @@ public class StEmployee extends BaseEntity { return nation; } - public void setAge(Long age) + public void setAge(Integer age) { this.age = age; } - public Long getAge() + public Integer getAge() { return age; } @@ -201,12 +222,12 @@ public class StEmployee extends BaseEntity { return supplierPrice; } - public void setEmployeeType(Long employeeType) + public void setEmployeeType(Integer employeeType) { this.employeeType = employeeType; } - public Long getEmployeeType() + public Integer getEmployeeType() { return employeeType; } diff --git a/staffing-system/src/main/java/com/staffing/custom/mapper/StEmployeeMapper.java b/staffing-system/src/main/java/com/staffing/custom/mapper/StEmployeeMapper.java index 9a7911a..f17be27 100644 --- a/staffing-system/src/main/java/com/staffing/custom/mapper/StEmployeeMapper.java +++ b/staffing-system/src/main/java/com/staffing/custom/mapper/StEmployeeMapper.java @@ -40,6 +40,8 @@ public interface StEmployeeMapper */ public int insertStEmployee(StEmployee stEmployee); + public int save(StEmployee stEmployee); + /** * 修改员工 * diff --git a/staffing-system/src/main/java/com/staffing/custom/service/IStEmployeeService.java b/staffing-system/src/main/java/com/staffing/custom/service/IStEmployeeService.java index c7b9ee8..3e528a3 100644 --- a/staffing-system/src/main/java/com/staffing/custom/service/IStEmployeeService.java +++ b/staffing-system/src/main/java/com/staffing/custom/service/IStEmployeeService.java @@ -61,4 +61,6 @@ public interface IStEmployeeService * @return 结果 */ public int deleteStEmployeeById(Long id); + + String importStEmployee(List stEmployees); } diff --git a/staffing-system/src/main/java/com/staffing/custom/service/IStTaskService.java b/staffing-system/src/main/java/com/staffing/custom/service/IStTaskService.java index a4aaa79..727ab9c 100644 --- a/staffing-system/src/main/java/com/staffing/custom/service/IStTaskService.java +++ b/staffing-system/src/main/java/com/staffing/custom/service/IStTaskService.java @@ -61,6 +61,8 @@ public interface IStTaskService */ public int updateStTask(StTask stTask); public int updateStTask(StTask stTask, boolean syncRelationsTabel); + + void generatePrCode(StTask stTask); /** * 批量删除任务 * diff --git a/staffing-system/src/main/java/com/staffing/custom/service/impl/StEmployeeServiceImpl.java b/staffing-system/src/main/java/com/staffing/custom/service/impl/StEmployeeServiceImpl.java index 5f07af4..609c11b 100644 --- a/staffing-system/src/main/java/com/staffing/custom/service/impl/StEmployeeServiceImpl.java +++ b/staffing-system/src/main/java/com/staffing/custom/service/impl/StEmployeeServiceImpl.java @@ -1,15 +1,21 @@ package com.staffing.custom.service.impl; +import java.util.Date; import java.util.List; import com.staffing.common.core.domain.entity.SysUser; +import com.staffing.common.exception.ServiceException; import com.staffing.common.utils.DateUtils; import com.staffing.common.utils.SecurityUtils; +import com.staffing.common.utils.StringUtils; import com.staffing.custom.domain.StEmployeeFundRecord; import com.staffing.custom.domain.StTaskSign; import com.staffing.custom.mapper.StEmployeeFundRecordMapper; import com.staffing.custom.mapper.StTaskSignMapper; import com.staffing.custom.service.IStTaskService; +import com.staffing.system.service.impl.SysUserServiceImpl; +import org.slf4j.Logger; +import org.slf4j.LoggerFactory; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.security.core.userdetails.User; import org.springframework.stereotype.Service; @@ -37,6 +43,9 @@ public class StEmployeeServiceImpl implements IStEmployeeService @Autowired private IStTaskService stTaskService; + + private static final Logger log = LoggerFactory.getLogger(StEmployeeServiceImpl.class); + /** * 查询员工 * @@ -126,4 +135,55 @@ public class StEmployeeServiceImpl implements IStEmployeeService { return stEmployeeMapper.deleteStEmployeeById(id); } + + @Override + public String importStEmployee(List stEmployees) + { + if (StringUtils.isNull(stEmployees) || stEmployees.size() == 0) + { + throw new ServiceException("导入数据不能为空!"); + } + int successNum = 0; + int failureNum = 0; + StringBuilder successMsg = new StringBuilder(); + StringBuilder failureMsg = new StringBuilder(); + for (StEmployee record : stEmployees) + { + try + { + record.setCreateTime(new Date()); + record.setEmployeeType("灵活用工".equals(record.getEmployeeTypeStr()) ? 0 : 1); + + if ("男".equals(record.getSexStr())){ + record.setSex(0); + }else if ("女".equals(record.getSexStr())) { + record.setSex(1); + }else{ + record.setSex(2); + } + int i = stEmployeeMapper.save(record); + if (i > 0){ + successNum++; + successMsg.append("
" + successNum + "、数据导入修改成功"); + } + } + catch (Exception e) + { + failureNum++; + String msg = "
" + failureNum + "、数据导入失败:"; + failureMsg.append(msg + e.getMessage()); + log.error(msg, e); + } + } + if (failureNum > 0) + { + failureMsg.insert(0, "很抱歉,导入失败!共 " + failureNum + " 条数据格式不正确,错误如下:"); + throw new ServiceException(failureMsg.toString()); + } + else + { + successMsg.insert(0, "恭喜您,数据已全部导入成功!共 " + successNum + " 条,数据如下:"); + } + return successMsg.toString(); + } } diff --git a/staffing-system/src/main/java/com/staffing/custom/service/impl/StTaskServiceImpl.java b/staffing-system/src/main/java/com/staffing/custom/service/impl/StTaskServiceImpl.java index 14d56ee..caad977 100644 --- a/staffing-system/src/main/java/com/staffing/custom/service/impl/StTaskServiceImpl.java +++ b/staffing-system/src/main/java/com/staffing/custom/service/impl/StTaskServiceImpl.java @@ -8,6 +8,7 @@ import java.util.List; import java.util.Map; import java.util.stream.Collectors; +import com.staffing.common.config.EnvConfig; import com.staffing.common.utils.DateUtils; import com.staffing.common.utils.MinioUtil; import com.staffing.common.utils.QRCodeGenerator; @@ -52,6 +53,9 @@ public class StTaskServiceImpl implements IStTaskService @Autowired private RedissonClient redissonClient; + @Autowired + EnvConfig envConfig; + protected final Logger logger = LoggerFactory.getLogger(StTaskServiceImpl.class); @Override @@ -128,6 +132,7 @@ public class StTaskServiceImpl implements IStTaskService for (StTask task : stTasks) { if (task.getCodePic() == null){ generatePrCode(task); + updateStTask(stTask); } } @@ -355,8 +360,9 @@ public class StTaskServiceImpl implements IStTaskService } } - public int generatePrCode(StTask stTask){ - String url = "http://www.tulkj.cn:81/index.html?id=" + stTask.getId(); + public void generatePrCode(StTask stTask){ + String url = envConfig.getGenPicCodeUrl() + stTask.getId(); +// String url = "http://www.tulkj.cn:81/index.html?id=" + stTask.getId(); InputStream inputStream = QRCodeGenerator.generateQRCodeImage(url, 500, 500); String fileName = System.currentTimeMillis() + stTask.getId() + ".png"; try { @@ -367,8 +373,6 @@ public class StTaskServiceImpl implements IStTaskService } stTask.setCodePic(fileName); - - return updateStTask(stTask); } /** diff --git a/staffing-system/src/main/java/com/staffing/custom/service/impl/StTaskSignServiceImpl.java b/staffing-system/src/main/java/com/staffing/custom/service/impl/StTaskSignServiceImpl.java index b398ab7..3ed11f2 100644 --- a/staffing-system/src/main/java/com/staffing/custom/service/impl/StTaskSignServiceImpl.java +++ b/staffing-system/src/main/java/com/staffing/custom/service/impl/StTaskSignServiceImpl.java @@ -95,6 +95,7 @@ public class StTaskSignServiceImpl implements IStTaskSignService taskSign.setDayPrice(stTask.getDayPrice()); taskSign.setEmployeeName(taskSign.getEmployeeName()); taskSign.setStatus(-1);//未点名 + taskSign.setCreateTime(new Date()); return AjaxResult.success(insertStTaskSign(taskSign)); }finally { // 锁被持有 diff --git a/staffing-system/src/main/resources/mapper/custom/StEmployeeMapper.xml b/staffing-system/src/main/resources/mapper/custom/StEmployeeMapper.xml index 35538ef..add2664 100644 --- a/staffing-system/src/main/resources/mapper/custom/StEmployeeMapper.xml +++ b/staffing-system/src/main/resources/mapper/custom/StEmployeeMapper.xml @@ -36,6 +36,7 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" and id_card like concat('%', #{idCard}, '%') and employee_type = #{employeeType} + order by create_time desc , update_time desc