From 598b7528eed13b0cc1f52f97e36d2c0515e56166 Mon Sep 17 00:00:00 2001 From: zss <zss@example.com> Date: 星期二, 04 六月 2024 17:53:32 +0800 Subject: [PATCH] 设备的数采配置+用户获取第三方权限+原始工时导出 --- performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOriginalHoursController.java | 14 ++- performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java | 6 cnas-server/src/main/java/com/yuanchu/mom/dto/DeviceDto1.java | 43 ++++++++++ user-server/src/main/java/com/yuanchu/mom/pojo/User.java | 3 user-server/src/main/java/com/yuanchu/mom/controller/CompaniesController.java | 41 ++++++++++ cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java | 1 performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOriginalHoursServiceImpl.java | 43 +++++++++- performance-server/src/main/java/com/yuanchu/mom/service/AuxiliaryOriginalHoursService.java | 9 ++ performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOutputWorkingHoursController.java | 2 cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java | 20 +++++ user-server/src/main/java/com/yuanchu/mom/service/UserService.java | 2 cnas-server/src/main/java/com/yuanchu/mom/service/DeviceService.java | 1 user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java | 2 cnas-server/src/main/java/com/yuanchu/mom/pojo/Device.java | 21 +++++ 14 files changed, 193 insertions(+), 15 deletions(-) diff --git a/cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java b/cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java index 17cd875..c70c19f 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/controller/DeviceController.java @@ -6,12 +6,14 @@ import com.yuanchu.mom.annotation.ValueAuth; import com.yuanchu.mom.annotation.ValueClassify; import com.yuanchu.mom.dto.DeviceDto; +import com.yuanchu.mom.dto.DeviceDto1; import com.yuanchu.mom.pojo.Device; import com.yuanchu.mom.service.DeviceService; import com.yuanchu.mom.utils.JackSonUtil; import com.yuanchu.mom.vo.Result; import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; +import org.springframework.beans.BeanUtils; import org.springframework.beans.factory.annotation.Value; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; @@ -130,5 +132,23 @@ public Result selectDeviceByCode(String code) { return Result.success(deviceService.selectDeviceByCode(code)); } + + @ValueClassify("璁惧") + @ApiOperation(value = "鏌ヨ鏁伴噰閰嶇疆") + @PostMapping("/getNumberCollect") + public Result<?> getNumberCollect(Integer id) { + DeviceDto1 deviceDto1 = new DeviceDto1(); + BeanUtils.copyProperties(deviceService.getById(id),deviceDto1); + return Result.success(deviceDto1); + } + + @ValueClassify("璁惧") + @ApiOperation(value = "缁存姢鏁伴噰閰嶇疆") + @PostMapping("/numberCollect") + public Result<?> numberCollect(@RequestBody DeviceDto1 deviceDto1) { + Device device = new Device(); + BeanUtils.copyProperties(deviceDto1,device); + return Result.success(deviceService.updateById(device)); + } } diff --git a/cnas-server/src/main/java/com/yuanchu/mom/dto/DeviceDto1.java b/cnas-server/src/main/java/com/yuanchu/mom/dto/DeviceDto1.java new file mode 100644 index 0000000..fae668c --- /dev/null +++ b/cnas-server/src/main/java/com/yuanchu/mom/dto/DeviceDto1.java @@ -0,0 +1,43 @@ +package com.yuanchu.mom.dto; + + +import com.yuanchu.mom.annotation.ValueTableShow; +import io.swagger.annotations.ApiModelProperty; +import lombok.Data; + +import javax.validation.constraints.NotNull; + +@Data +public class DeviceDto1 { + + private Integer id; + + @ApiModelProperty(value = "IP") + @ValueTableShow(1) + @NotNull + private String ip; + + @ApiModelProperty(value = "閲囬泦鍦板潃") + @NotNull + private String collectUrl; + + @ApiModelProperty(value = "瀛樺偍鍦板潃") + @NotNull + private String storageUrl; + + @ApiModelProperty(value = "鍙傜収") + @NotNull + private String refer; + + @ApiModelProperty(value = "X") + @NotNull + private String x; + + @ApiModelProperty(value = "Y") + @NotNull + private String y; + + @ApiModelProperty(value = "鍏紡") + @NotNull + private String formula; +} diff --git a/cnas-server/src/main/java/com/yuanchu/mom/pojo/Device.java b/cnas-server/src/main/java/com/yuanchu/mom/pojo/Device.java index 6a2e465..f339927 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/pojo/Device.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/pojo/Device.java @@ -118,4 +118,25 @@ @TableField(fill = FieldFill.INSERT) @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss") private LocalDateTime createTime; + + @ApiModelProperty(value = "IP") + private String ip; + + @ApiModelProperty(value = "閲囬泦鍦板潃") + private String collectUrl; + + @ApiModelProperty(value = "瀛樺偍鍦板潃") + private String storageUrl; + + @ApiModelProperty(value = "鍙傜収") + private String refer; + + @ApiModelProperty(value = "X") + private String x; + + @ApiModelProperty(value = "Y") + private String y; + + @ApiModelProperty(value = "鍏紡") + private String formula; } diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/DeviceService.java b/cnas-server/src/main/java/com/yuanchu/mom/service/DeviceService.java index 1d2e3d3..9268eda 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/service/DeviceService.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/service/DeviceService.java @@ -3,6 +3,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.baomidou.mybatisplus.extension.service.IService; import com.yuanchu.mom.dto.DeviceDto; +import com.yuanchu.mom.dto.DeviceDto1; import com.yuanchu.mom.pojo.Device; import java.util.List; diff --git a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java index 8f9872a..786bd65 100644 --- a/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java +++ b/cnas-server/src/main/java/com/yuanchu/mom/service/impl/DeviceServiceImpl.java @@ -7,6 +7,7 @@ import com.yuanchu.mom.common.GetLook; import com.yuanchu.mom.common.PrintChina; import com.yuanchu.mom.dto.DeviceDto; +import com.yuanchu.mom.dto.DeviceDto1; import com.yuanchu.mom.mapper.DeviceMapper; import com.yuanchu.mom.mapper.StructureItemParameterMapper; import com.yuanchu.mom.pojo.Device; diff --git a/performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOriginalHoursController.java b/performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOriginalHoursController.java index 191e4c5..8658998 100644 --- a/performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOriginalHoursController.java +++ b/performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOriginalHoursController.java @@ -11,12 +11,11 @@ import io.swagger.annotations.Api; import io.swagger.annotations.ApiOperation; import lombok.AllArgsConstructor; -import org.springframework.web.bind.annotation.PostMapping; -import org.springframework.web.bind.annotation.RequestBody; -import org.springframework.web.bind.annotation.RequestMapping; -import org.springframework.web.bind.annotation.RestController; +import org.springframework.web.bind.annotation.*; import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.util.Map; @Api(tags = "宸ユ椂缁熻-鍘熷宸ユ椂") @@ -36,4 +35,11 @@ AuxiliaryOriginalHoursLookDto entity = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), AuxiliaryOriginalHoursLookDto.class); return Result.success(auxiliaryOriginalHoursService.selectAuxiliaryOriginalHours(page, entity)); } + + @ValueClassify("宸ユ椂绠$悊") + @ApiOperation(value = "瀵煎嚭鍘熷宸ユ椂") + @GetMapping("/exportOriginalHours") + public void exportOriginalHours(@RequestBody AuxiliaryOriginalHoursLookDto auxiliaryOriginalHoursLookDto,HttpServletResponse response) throws IOException { + auxiliaryOriginalHoursService.exportWorkingHours(auxiliaryOriginalHoursLookDto,response); + } } diff --git a/performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOutputWorkingHoursController.java b/performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOutputWorkingHoursController.java index eb82628..c558ea3 100644 --- a/performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOutputWorkingHoursController.java +++ b/performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOutputWorkingHoursController.java @@ -55,7 +55,7 @@ @ValueClassify("宸ユ椂绠$悊") - @ApiOperation(value = "瀵煎嚭") + @ApiOperation(value = "瀵煎嚭浜ч噺宸ユ椂+杈呭姪宸ユ椂") @GetMapping("/exportWorkingHours") public void exportWorkingHours(HttpServletResponse response) throws IOException { auxiliaryOutputWorkingHoursService.exportWorkingHours(response); diff --git a/performance-server/src/main/java/com/yuanchu/mom/service/AuxiliaryOriginalHoursService.java b/performance-server/src/main/java/com/yuanchu/mom/service/AuxiliaryOriginalHoursService.java index 8053d93..9a6a477 100644 --- a/performance-server/src/main/java/com/yuanchu/mom/service/AuxiliaryOriginalHoursService.java +++ b/performance-server/src/main/java/com/yuanchu/mom/service/AuxiliaryOriginalHoursService.java @@ -4,9 +4,18 @@ import com.yuanchu.mom.dto.AuxiliaryOriginalHoursDto; import com.yuanchu.mom.dto.AuxiliaryOriginalHoursLookDto; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; import java.util.Map; public interface AuxiliaryOriginalHoursService { Map<String, Object> selectAuxiliaryOriginalHours(Page page, AuxiliaryOriginalHoursLookDto auxiliaryOriginalHoursLookDto); + + /** + * 瀵煎嚭鍘熷宸ユ椂 + * + * @param response + */ + void exportWorkingHours(AuxiliaryOriginalHoursLookDto auxiliaryOriginalHoursLookDto, HttpServletResponse response) throws IOException; } diff --git a/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOriginalHoursServiceImpl.java b/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOriginalHoursServiceImpl.java index e042b0c..2026c9c 100644 --- a/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOriginalHoursServiceImpl.java +++ b/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOriginalHoursServiceImpl.java @@ -1,14 +1,17 @@ package com.yuanchu.mom.service.impl; +import com.alibaba.excel.EasyExcel; +import com.alibaba.excel.ExcelWriter; +import com.alibaba.excel.write.metadata.WriteSheet; +import com.alibaba.excel.write.style.column.LongestMatchColumnWidthStyleStrategy; +import com.alibaba.fastjson.JSONObject; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.common.GetLook; import com.yuanchu.mom.common.PrintChina; -import com.yuanchu.mom.dto.AuxiliaryCorrectionHoursDto; -import com.yuanchu.mom.dto.AuxiliaryOriginalHoursDto; -import com.yuanchu.mom.dto.AuxiliaryOriginalHoursLookDto; +import com.yuanchu.mom.dto.*; import com.yuanchu.mom.mapper.*; import com.yuanchu.mom.pojo.AuxiliaryCorrectionHours; import com.yuanchu.mom.pojo.Power; @@ -18,6 +21,9 @@ import org.springframework.stereotype.Service; import javax.annotation.Resource; +import javax.servlet.http.HttpServletResponse; +import java.io.IOException; +import java.net.URLEncoder; import java.util.ArrayList; import java.util.HashMap; import java.util.List; @@ -124,11 +130,11 @@ } } //濡傛灉浜ч噺宸ユ椂涓虹┖ - else if (ObjectUtils.isEmpty(maps)) { + else if (ObjectUtils.isNotEmpty(maps1)) { for (Map<String, Object> objectMap : maps1) { auxiliaryOriginalHoursDtos.add(getData(objectMap, "鎬诲伐鏃�")); } - } else if (ObjectUtils.isEmpty(maps1)) { + } else if (ObjectUtils.isNotEmpty(maps)) { for (Map<String, Object> objectMap : maps) { auxiliaryOriginalHoursDtos.add(getData(objectMap, "鎬诲伐鏃�")); } @@ -138,6 +144,33 @@ return map; } + + //瀵煎嚭鍘熷宸ユ椂 + @Override + public void exportWorkingHours(AuxiliaryOriginalHoursLookDto auxiliaryOriginalHoursLookDto, HttpServletResponse response) throws IOException { + List<AuxiliaryOriginalHoursDto> auxiliaryOriginalHoursDtos = new ArrayList<AuxiliaryOriginalHoursDto>(); + + //鏌ヨ鍘熷宸ユ椂(浣跨敤鍒嗛〉鏌ヨ) + IPage<AuxiliaryOriginalHoursDto> body = (IPage<AuxiliaryOriginalHoursDto>) selectAuxiliaryOriginalHours(new Page(-1, -1), auxiliaryOriginalHoursLookDto).get("body"); + auxiliaryOriginalHoursDtos=body.getRecords(); + response.setContentType("application/vnd.ms-excel"); + response.setCharacterEncoding("UTF-8"); + // 杩欓噷URLEncoder.encode鍙互闃叉涓枃涔辩爜 褰撶劧鍜宔asyexcel娌℃湁鍏崇郴 + String fileName = URLEncoder.encode("宸ユ椂缁熻瀵煎嚭", "UTF-8"); + response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); + try { + // 鏂板缓ExcelWriter + ExcelWriter excelWriter = EasyExcel.write(response.getOutputStream()).registerWriteHandler(new LongestMatchColumnWidthStyleStrategy()).build(); + WriteSheet mainSheet = EasyExcel.writerSheet(0, "鍘熷宸ユ椂瀵煎嚭").head(AuxiliaryOriginalHoursDto.class).build(); + excelWriter.write(auxiliaryOriginalHoursDtos, mainSheet); + // 鍏抽棴娴� + excelWriter.finish(); + } catch (IOException e) { + throw new RuntimeException("瀵煎嚭澶辫触"); + } + + } + private AuxiliaryOriginalHoursDto getData(Map<String, Object> objectMap, String type) { AuxiliaryOriginalHoursDto auxiliaryOriginalHoursDto = new AuxiliaryOriginalHoursDto(); auxiliaryOriginalHoursDto.setName(objectMap.get("name").toString());//濮撳悕 diff --git a/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java b/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java index 58f25dd..bc1fba2 100644 --- a/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java +++ b/performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java @@ -167,8 +167,8 @@ //瀵煎嚭 @Override public void exportWorkingHours(HttpServletResponse response) throws IOException { - List<AuxiliaryOutputWorkingHoursDto> auxiliaryOutputWorkingHoursDtos = null; - List<AuxiliaryWorkingHoursDayDto> auxiliaryWorkingHoursDayDtos = null; + List<AuxiliaryOutputWorkingHoursDto> auxiliaryOutputWorkingHoursDtos = new ArrayList<>(); + List<AuxiliaryWorkingHoursDayDto> auxiliaryWorkingHoursDayDtos = new ArrayList<>(); List<Integer> ids = null; //鍒ゆ柇鏄粍闀胯繕鏄粍鍛樿繕鏄鐞嗗憳 Map<String, Integer> map1 = getLook.selectPowerByMethodAndUserId("selectAuxiliaryOutputWorkingHours"); @@ -199,7 +199,7 @@ response.setContentType("application/vnd.ms-excel"); response.setCharacterEncoding("UTF-8"); // 杩欓噷URLEncoder.encode鍙互闃叉涓枃涔辩爜 褰撶劧鍜宔asyexcel娌℃湁鍏崇郴 - String fileName = URLEncoder.encode("宸ユ椂绠$悊瀵煎嚭", "UTF-8"); + String fileName = URLEncoder.encode("鏃ュ伐鏃剁鐞嗗鍑�", "UTF-8"); response.setHeader("Content-disposition", "attachment;filename=" + fileName + ".xlsx"); try { // 鏂板缓ExcelWriter diff --git a/user-server/src/main/java/com/yuanchu/mom/controller/CompaniesController.java b/user-server/src/main/java/com/yuanchu/mom/controller/CompaniesController.java index b1e4805..ca5d2d6 100644 --- a/user-server/src/main/java/com/yuanchu/mom/controller/CompaniesController.java +++ b/user-server/src/main/java/com/yuanchu/mom/controller/CompaniesController.java @@ -1,10 +1,18 @@ package com.yuanchu.mom.controller; +import com.baomidou.mybatisplus.core.toolkit.ObjectUtils; +import com.baomidou.mybatisplus.core.toolkit.Wrappers; import com.yuanchu.mom.annotation.ValueAuth; import com.yuanchu.mom.annotation.ValueClassify; +import com.yuanchu.mom.common.GetLook; import com.yuanchu.mom.dto.PersonDto; +import com.yuanchu.mom.exception.ErrorException; +import com.yuanchu.mom.mapper.PowerMapper; +import com.yuanchu.mom.mapper.UserMapper; import com.yuanchu.mom.pojo.Company; import com.yuanchu.mom.pojo.Person; +import com.yuanchu.mom.pojo.Power; +import com.yuanchu.mom.pojo.User; import com.yuanchu.mom.service.UserService; import com.yuanchu.mom.util.HeaderToken; import com.yuanchu.mom.vo.Result; @@ -13,7 +21,9 @@ import lombok.AllArgsConstructor; import org.springframework.web.bind.annotation.*; +import java.util.ArrayList; import java.util.List; +import java.util.Map; @RestController @AllArgsConstructor @@ -25,11 +35,40 @@ private UserService userService; + UserMapper userMapper; + + PowerMapper powerMapper; + + private GetLook getLook; + + @ValueClassify("鐢ㄦ埛绠$悊") + @PostMapping("/getSampleUser") + @ApiOperation(value = "鐩存帴鑾峰彇涓庤嚜宸辩浉鍚屽崟浣嶇殑浜哄憳鍒楄〃") + public Result<?> getSampleUser(){ + return Result.success(); + } + @ValueClassify("鐢ㄦ埛绠$悊") @ApiOperation(value = "鑾峰彇浜轰簨绯荤粺缁勭粐鏋舵瀯") @GetMapping(value = "/selectCompaniesList") public Result<List<Company>> selectCompaniesList() { - return Result.success(headerToken.companyUrl()); + //鍒ゆ柇鏄惁鏈夌洿鎺ヨ幏鍙栫涓夋柟閮ㄩ棬鐨勬潈闄� + Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId"); + User user = userMapper.selectById(userId); + Integer roleId = user.getRoleId(); + Power power = powerMapper.selectOne(Wrappers.<Power>lambdaQuery().eq(Power::getRoleId, roleId).eq(Power::getMenuMethod, "getSampleUser")); + if (ObjectUtils.isNotEmpty(power)){ + List<Company> companies = new ArrayList<>(); + Company company = new Company(); + if (ObjectUtils.isEmpty(user.getCompanyId())){ + throw new ErrorException("璇ョ敤鎴锋病鏈夋墍灞炲崟浣�!"); + } + company.setCompanyId(user.getCompanyId()); + companies.add(company); + return Result.success(companies); + }else { + return Result.success(headerToken.companyUrl()); + } } @ValueAuth diff --git a/user-server/src/main/java/com/yuanchu/mom/pojo/User.java b/user-server/src/main/java/com/yuanchu/mom/pojo/User.java index bc8bf1a..cecb68f 100644 --- a/user-server/src/main/java/com/yuanchu/mom/pojo/User.java +++ b/user-server/src/main/java/com/yuanchu/mom/pojo/User.java @@ -105,4 +105,7 @@ @ApiModelProperty(value = "LIMS鍏宠仈鐨勯儴闂╥d") private String departLimsId; + @ApiModelProperty(value = "浜轰簨绯荤粺鍏宠仈鐨刬d") + private String companyId; + } diff --git a/user-server/src/main/java/com/yuanchu/mom/service/UserService.java b/user-server/src/main/java/com/yuanchu/mom/service/UserService.java index 1784a33..067fa11 100644 --- a/user-server/src/main/java/com/yuanchu/mom/service/UserService.java +++ b/user-server/src/main/java/com/yuanchu/mom/service/UserService.java @@ -8,7 +8,7 @@ import java.util.List; import java.util.Map; -public interface UserService { +public interface UserService { /*鍒ゆ柇鏄惁鐧诲綍鎴愬姛*/ User selectUserByPwd(String account, String password); diff --git a/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java b/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java index 805f6c4..625909b 100644 --- a/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java +++ b/user-server/src/main/java/com/yuanchu/mom/service/impl/UserServiceImp.java @@ -159,6 +159,7 @@ user.setCompany(BeanUtil.isNotEmpty(custom)?(custom.getId()+""):companyName); user.setAddress("鏈~鍐�"); user.setRoleId(personDto.getRoleId()>10000?0:personDto.getRoleId()); + user.setCompanyId(person.getCompanyId()); userMapper.insert(user); } else { user.setName(person.getName()); @@ -170,6 +171,7 @@ user.setCreateTime(null); user.setUpdateUser(null); user.setUpdateTime(null); + user.setCompanyId(person.getCompanyId()); userMapper.updateById(user); } }); -- Gitblit v1.9.3