diff --git a/bonus-gateway/src/main/java/com/bonus/gateway/config/ContextPathConfig.java b/bonus-gateway/src/main/java/com/bonus/gateway/config/ContextPathConfig.java index e038912..ed43b3e 100644 --- a/bonus-gateway/src/main/java/com/bonus/gateway/config/ContextPathConfig.java +++ b/bonus-gateway/src/main/java/com/bonus/gateway/config/ContextPathConfig.java @@ -1,38 +1,38 @@ -//package com.bonus.gateway.config; -//import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; -//import org.springframework.boot.autoconfigure.web.ServerProperties; -//import org.springframework.context.annotation.Bean; -//import org.springframework.context.annotation.Configuration; -//import org.springframework.core.Ordered; -//import org.springframework.core.annotation.Order; -//import org.springframework.http.HttpStatus; -//import org.springframework.http.server.reactive.ServerHttpRequest; -//import org.springframework.web.server.ResponseStatusException; -//import org.springframework.web.server.WebFilter; -// -//@Configuration -//public class ContextPathConfig { -// -// @Bean -// @ConditionalOnProperty("server.servlet.context-path") -// @Order(Ordered.HIGHEST_PRECEDENCE) -// public WebFilter contextPathWebFilter(ServerProperties serverProperties){ -// String contextPath = serverProperties.getServlet().getContextPath(); -// return (serverWebExchange, webFilterChain) ->{ -// ServerHttpRequest request = serverWebExchange.getRequest(); -// String requestPath = request.getURI().getPath(); -// -// if(requestPath.contains(contextPath)){ -// String newPath = requestPath.replaceFirst(contextPath+"/", ""); -// ServerHttpRequest newRequest = request.mutate() -// .path(newPath).build(); -// return webFilterChain.filter(serverWebExchange.mutate() -// .request(newRequest) -// .build() -// ); -// }else { -// throw new ResponseStatusException(HttpStatus.NOT_FOUND); -// } -// }; -// } -//} \ No newline at end of file +package com.bonus.gateway.config; +import org.springframework.boot.autoconfigure.condition.ConditionalOnProperty; +import org.springframework.boot.autoconfigure.web.ServerProperties; +import org.springframework.context.annotation.Bean; +import org.springframework.context.annotation.Configuration; +import org.springframework.core.Ordered; +import org.springframework.core.annotation.Order; +import org.springframework.http.HttpStatus; +import org.springframework.http.server.reactive.ServerHttpRequest; +import org.springframework.web.server.ResponseStatusException; +import org.springframework.web.server.WebFilter; + +@Configuration +public class ContextPathConfig { + + @Bean + @ConditionalOnProperty("server.servlet.context-path") + @Order(Ordered.HIGHEST_PRECEDENCE) + public WebFilter contextPathWebFilter(ServerProperties serverProperties){ + String contextPath = serverProperties.getServlet().getContextPath(); + return (serverWebExchange, webFilterChain) ->{ + ServerHttpRequest request = serverWebExchange.getRequest(); + String requestPath = request.getURI().getPath(); + + if(requestPath.contains(contextPath)){ + String newPath = requestPath.replaceFirst(contextPath+"/", ""); + ServerHttpRequest newRequest = request.mutate() + .path(newPath).build(); + return webFilterChain.filter(serverWebExchange.mutate() + .request(newRequest) + .build() + ); + }else { + throw new ResponseStatusException(HttpStatus.NOT_FOUND); + } + }; + } +} diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/controller/PmWorkerController.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/controller/PmWorkerController.java index 7761473..6494af6 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/controller/PmWorkerController.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/controller/PmWorkerController.java @@ -97,10 +97,14 @@ public class PmWorkerController extends BaseController { return error("系统异常,请联系管理员"); } - // + /** + * 根据id查询详情 + * @param id + * @return + */ @RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth, requiresPermissions = @RequiresPermissions("worker:ein:query")) @PostMapping("/select/{id}") - @SysLog(title = "人员入场管理", businessType = OperaType.QUERY, logType = 0, module = "施工人员->出入场管理->人员入场管理", details = "修改人员入场") + @SysLog(title = "查询人员入场信息", businessType = OperaType.QUERY, logType = 0, module = "施工人员->出入场管理->人员入场管理", details = "查询人员入场信息") public AjaxResult select(@PathVariable("id") Integer id) { try { AjaxResult ajax = AjaxResult.success(); @@ -113,6 +117,28 @@ public class PmWorkerController extends BaseController { return error("系统异常,请联系管理员"); } + /** + * 根据身份证去获取详情数据 + * @param files + * @param fileMsg + * @param params + * @return + */ + @RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth, requiresPermissions = @RequiresPermissions("worker:ein:query")) + @PostMapping("/selectByIdNumber/{idNumber}") + @SysLog(title = "查询人员入场信息", businessType = OperaType.QUERY, logType = 0, module = "施工人员->出入场管理->人员入场管理", details = "查询人员入场信息") + public AjaxResult select(@PathVariable("idNumber") String idNumber) { + try { + AjaxResult ajax = AjaxResult.success(); + PmWorker worker = service.selectByIdNumber(idNumber); + ajax.put("data", worker); + return ajax; + } catch (Exception e) { + logger.error(e.toString(), e); + } + return error("系统异常,请联系管理员"); + } + @RequiresPermissionsOrInnerAuth(innerAuth = @InnerAuth, requiresPermissions = @RequiresPermissions("worker:ein:edit")) @PostMapping("/edit") diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/po/MapBeanPo.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/po/MapBeanPo.java index 44baeb3..f9ef49a 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/po/MapBeanPo.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/po/MapBeanPo.java @@ -17,6 +17,8 @@ public class MapBeanPo { private Integer subId; + private Integer workerId; + public MapBeanPo(Integer id, String name) { this.id = id; this.name = name; diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/PmWorker.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/PmWorker.java index 7501d95..2f871e8 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/PmWorker.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/domain/vo/PmWorker.java @@ -194,4 +194,6 @@ public class PmWorker { private String photoIds; -} \ No newline at end of file + private String isShanghai; + +} diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/mapper/PmWorkerMapper.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/mapper/PmWorkerMapper.java index d045e92..3b3cd22 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/mapper/PmWorkerMapper.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/mapper/PmWorkerMapper.java @@ -1,6 +1,7 @@ package com.bonus.bmw.mapper; import com.bonus.bmw.domain.dto.PmWorkerDto; +import com.bonus.bmw.domain.vo.MapBeanVo; import com.bonus.bmw.domain.vo.PmWorker; import org.apache.ibatis.annotations.Mapper; import org.apache.ibatis.annotations.Param; @@ -129,4 +130,8 @@ public interface PmWorkerMapper { void updateIsActiveById(@Param("id") Integer id, @Param("isActive") int isActive); PmWorker getWorkerByPhoneById(@Param("phone") String phone,@Param("id")Integer id); -} \ No newline at end of file + + PmWorker selectByIdNumber(String idNumber); + + List getProListByWorkerId(Integer id); +} diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/PmWorkerService.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/PmWorkerService.java index d99a228..d4bb822 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/PmWorkerService.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/PmWorkerService.java @@ -29,4 +29,12 @@ public interface PmWorkerService{ * @return 结果 */ String importWorker(List workerList, boolean isUpdateSupport); + + /** + * 根据身份证号查询施工人员 + * + * @param idNumber 身份证号 + * @return 用户对象信息 + */ + PmWorker selectByIdNumber(String idNumber); } diff --git a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/PmWorkerServiceImpl.java b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/PmWorkerServiceImpl.java index 52045dd..24f52bd 100644 --- a/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/PmWorkerServiceImpl.java +++ b/bonus-modules/bonus-bmw/src/main/java/com/bonus/bmw/service/impl/PmWorkerServiceImpl.java @@ -6,6 +6,7 @@ import com.bonus.bmw.domain.dto.WebFileDto; import com.bonus.bmw.domain.po.FaceRecognitionBean; import com.bonus.bmw.domain.vo.BmWorkerContract; import com.bonus.bmw.domain.vo.BmWorkerWageCard; +import com.bonus.bmw.domain.vo.MapBeanVo; import com.bonus.bmw.service.*; import com.bonus.common.core.constant.Constants; import com.bonus.common.core.exception.ServiceException; @@ -195,6 +196,41 @@ public class PmWorkerServiceImpl implements PmWorkerService{ return worker; } + /** + * 根据员工编号查询人员信息 + * @param idNumber + * @return + */ + @Override + public PmWorker selectByIdNumber(String idNumber) { + //人员数据 + PmWorker worker = mapper.selectByIdNumber(idNumber); + if(worker != null){ + worker.setFiles(fileUploadUtils.getFileList("", worker.getId().toString(), Constants.FILE_UPLOAD_WORKER, "")); + //查询工资卡 数据 + BmWorkerWageCard wageCard = new BmWorkerWageCard(); + wageCard.setWorkerId(worker.getId()); + BmWorkerWageCard bmWorkerWageCard = wageCardService.selectWageCardByWorkerId(wageCard); + worker.setBmWorkerWageCard(bmWorkerWageCard); + //查询合同数据 只有入场才会有合同 + BmWorkerContract contract = new BmWorkerContract(); + contract.setWorkerId(worker.getId()); + BmWorkerContract workerContract = contractService.selectContractListByWorkerIdAndValid(contract); + worker.setBmWorkerContract(workerContract); + + if("1".equals(worker.getIsShanghai())){ + //可能已入场多个该工程,把工程都查回来 + List projectList = mapper.getProListByWorkerId(worker.getId()); + StringBuilder sb = new StringBuilder(); + for (MapBeanVo mapBeanVo : projectList) { + sb.append(mapBeanVo.getName()); + } + worker.setProName(sb.toString()); + } + } + return worker; + } + /** * 修改入场数据 * @param record diff --git a/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/PmWorkerMapper.xml b/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/PmWorkerMapper.xml index bf41943..068c24d 100644 --- a/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/PmWorkerMapper.xml +++ b/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/PmWorkerMapper.xml @@ -6,7 +6,6 @@ - @@ -15,9 +14,6 @@ - - - @@ -27,6 +23,7 @@ + @@ -61,9 +58,9 @@ - insert into pm_worker (`name`, id_number, sex, age, phone, birthday, nation, issuing_authority, + insert into pm_worker (`name`, id_number, sex, age, phone, birthday, nation, issuing_authority, start_time, end_time, address, create_user) - values (#{name}, #{idNumber}, #{sex}, #{age}, #{phone}, #{birthday}, #{nation}, #{issuingAuthority}, + values (#{name}, #{idNumber}, #{sex}, #{age}, #{phone}, #{birthday}, #{nation}, #{issuingAuthority}, #{startTime}, #{endTime}, #{address}, #{createUser}) @@ -276,4 +273,46 @@ limit 1 - \ No newline at end of file + + + + + diff --git a/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/SelectMapper.xml b/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/SelectMapper.xml index 12e82a7..e63860e 100644 --- a/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/SelectMapper.xml +++ b/bonus-modules/bonus-bmw/src/main/resources/mapper/bmw/SelectMapper.xml @@ -4,11 +4,14 @@