inspect-server/pom.xml
@@ -58,5 +58,11 @@ <version>0.0.1-SNAPSHOT</version> <scope>compile</scope> </dependency> <dependency> <groupId>com.yuanchu.mom</groupId> <artifactId>performance-server</artifactId> <version>0.0.1-SNAPSHOT</version> </dependency> </dependencies> </project> inspect-server/src/main/java/com/yuanchu/mom/service/impl/InsOrderPlanServiceImpl.java
@@ -1,12 +1,15 @@ package com.yuanchu.mom.service.impl; import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.date.DateTime; import cn.hutool.core.date.DateUtil; import cn.hutool.core.util.ObjectUtil; import cn.hutool.core.util.StrUtil; import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSONArray; 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.baomidou.mybatisplus.extension.service.impl.ServiceImpl; @@ -45,8 +48,11 @@ import java.io.*; import java.nio.file.Files; import java.nio.file.Paths; import java.text.SimpleDateFormat; import java.time.LocalDate; import java.time.LocalDateTime; import java.time.format.DateTimeFormatter; import java.time.temporal.TemporalAdjusters; import java.util.*; import java.util.concurrent.CompletableFuture; import java.util.concurrent.atomic.AtomicInteger; @@ -90,6 +96,9 @@ @Resource private InsProductUserMapper insProductUserMapper; @Resource AuxiliaryOutputWorkingHoursMapper auxiliaryOutputWorkingHoursMapper; @Resource private InformationNotificationService informationNotificationService; @@ -252,6 +261,34 @@ insProduct.setUpdateUser(userId); insProductMapper.updateById(insProduct); insProductUserMapper.insert(new InsProductUser(null, userId, LocalDateTime.now(), insProduct.getId())); //æ¥è¯¢æ£éªåä¿¡æ¯ InsOrder insOrder = insOrderMapper.selectById(insSampleMapper.selectById(insProduct.getInsSampleId()).getInsOrderId()); //æ ¡éªå¦æè¿ä¸ªäººè¿ä¸ªæ£æµé¡¹ç®å·²ç»æ·»å è¿äºåä¸éè¦åæ°å¢ Long count = auxiliaryOutputWorkingHoursMapper.selectCount(Wrappers.<AuxiliaryOutputWorkingHours>lambdaQuery() .eq(AuxiliaryOutputWorkingHours::getCheck, userMapper.selectById(userId).getName()) .eq(AuxiliaryOutputWorkingHours::getInspectProject, insProduct.getInspectionItemSubclass() + insProduct.getInspectionItem()) .eq(AuxiliaryOutputWorkingHours::getOrderNo, insOrder.getEntrustCode())); if (count == 0) { //æ·»å æ¯ä¸ªäººç产éå·¥æ¶ AuxiliaryOutputWorkingHours auxiliaryOutputWorkingHours = new AuxiliaryOutputWorkingHours(); auxiliaryOutputWorkingHours.setInspectProject(insProduct.getInspectionItemSubclass() + insProduct.getInspectionItem());//æ£æµé¡¹ç® auxiliaryOutputWorkingHours.setOrderNo(insOrder.getEntrustCode());//éå çå§æåå· auxiliaryOutputWorkingHours.setWorkTime(insProduct.getManHour());//éå çå·¥æ¶ auxiliaryOutputWorkingHours.setAmount(1);//éå çæ°é auxiliaryOutputWorkingHours.setOutputWorkTime(insProduct.getManHour());//产éå·¥æ¶ auxiliaryOutputWorkingHours.setManHourGroup(insProduct.getManHourGroup());//å·¥æ¶åç» auxiliaryOutputWorkingHours.setDateTime(LocalDateTime.now());//æ¥æ DateTimeFormatter formatter = DateTimeFormatter.ofPattern("yyyy-MM-dd"); DateTimeFormatter formatters = DateTimeFormatter.ofPattern("yyyy-MM-dd HH:mm:ss"); LocalDateTime localDateTime = LocalDateTime.now(); DateTime parse = DateUtil.parse(localDateTime.format(formatter)); auxiliaryOutputWorkingHours.setWeekDay(getWeek(localDateTime.format(formatters)));//ææ auxiliaryOutputWorkingHours.setWeek(DateUtil.weekOfYear(DateUtil.offsetDay(parse, 1)));//卿¬¡ auxiliaryOutputWorkingHours.setCheck(userMapper.selectById(userId).getName());//æ£æµäºº auxiliaryOutputWorkingHoursMapper.insert(auxiliaryOutputWorkingHours); } InsSample insSample = insSampleMapper.selectById(insProductMapper.selectById(insProduct.getId()).getInsSampleId()); insSample.setInsState(1); Long l = insProductMapper.selectCount(Wrappers.<InsProduct>lambdaQuery() @@ -336,7 +373,7 @@ } } } if(b.getTemplate()==null){ if (b.getTemplate() == null) { continue; } if (b.getTemplate().size() == 0) { @@ -383,7 +420,7 @@ Set<String> delRSet = new HashSet<>(); for (JSONObject jo1 : temp) { JSONObject v = JSON.parseObject(JSON.toJSONString(jo1.get("v"))); if(Integer.parseInt(jo1.get("c")+"") > 9){ if (Integer.parseInt(jo1.get("c") + "") > 9) { delSet.add(jo1.get("c") + ""); continue; } @@ -531,7 +568,7 @@ TableRenderData tableRenderData = new TableRenderData(); tableRenderData.setRows(rows); TableStyle tableStyle = new TableStyle(); tableStyle.setColWidths(new int[]{650,1600,2000,750,2800,1100,1100}); tableStyle.setColWidths(new int[]{650, 1600, 2000, 750, 2800, 1100, 1100}); tableStyle.setWidth("10000"); tableStyle.setAlign(TableRowAlign.CENTER); BorderStyle borderStyle = new BorderStyle(); @@ -600,10 +637,10 @@ String signatureUrl; try { signatureUrl = userMapper.selectById(userId).getSignatureUrl(); }catch (Exception e){ } catch (Exception e) { throw new ErrorException("æ¾ä¸å°æ£éªäººçç¾å"); } if(signatureUrl == null || "".equals(signatureUrl)){ if (signatureUrl == null || "".equals(signatureUrl)) { throw new ErrorException("æ¾ä¸å°æ£éªäººçç¾å"); } XWPFTemplate template = XWPFTemplate.compile(url, builder.build()).render( @@ -624,7 +661,7 @@ put("insTime", insOrder.getInsTime().format(DateTimeFormatter.ofPattern("yyyyå¹´MMæddæ¥"))); put("insTimeEn", monthNames[insOrder.getInsTime().getMonthValue() - 1] + " " + now.getDayOfMonth() + ", " + now.getYear()); put("writeUrl", null); put("insUrl", Pictures.ofLocal(imgUrl+"/"+signatureUrl).create()); put("insUrl", Pictures.ofLocal(imgUrl + "/" + signatureUrl).create()); put("examineUrl", null); put("ratifyUrl", null); put("sampleEn", sampleEn); @@ -768,4 +805,53 @@ public int pxToCm(int px) { return px / 9; } // è·å两个localDateTimeçæ¯ä¸å¤© public static List<LocalDateTime> getLocalDateTimesBetween(LocalDateTime start, LocalDateTime end) { List<LocalDateTime> localDateTimes = new ArrayList<>(); LocalDate currentDate = start.toLocalDate(); LocalDateTime currentLocalDateTime = start; while (!currentDate.isAfter(end.toLocalDate())) { localDateTimes.add(currentLocalDateTime); currentLocalDateTime = currentLocalDateTime.plusDays(1); currentDate = currentDate.plusDays(1); } return localDateTimes; } public static String getWeek(String dayStr) { SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss"); try { Date date = sdf.parse(dayStr); Calendar calendar = Calendar.getInstance(); calendar.setTime(date); int dayOfWeek = calendar.get(Calendar.DAY_OF_WEEK); int day = calendar.get(Calendar.DAY_OF_MONTH); return day + " " + getWeekDay(dayOfWeek); } catch (Exception e) { e.printStackTrace(); } return null; } public static String getWeekDay(int dayOfWeek) { switch (dayOfWeek) { case Calendar.MONDAY: return "å¨ä¸"; case Calendar.TUESDAY: return "å¨äº"; case Calendar.WEDNESDAY: return "å¨ä¸"; case Calendar.THURSDAY: return "å¨å"; case Calendar.FRIDAY: return "å¨äº"; case Calendar.SATURDAY: return "å¨å "; case Calendar.SUNDAY: return "卿¥"; default: return "æªç¥"; } } } performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryOutputWorkingHoursController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,48 @@ package com.yuanchu.mom.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.annotation.ValueClassify; import com.yuanchu.mom.pojo.AuxiliaryOutputWorkingHours; import com.yuanchu.mom.pojo.AuxiliaryWorkingHoursDay; import com.yuanchu.mom.service.AuxiliaryOutputWorkingHoursService; import com.yuanchu.mom.service.AuxiliaryWorkingHoursDayService; import com.yuanchu.mom.utils.JackSonUtil; import com.yuanchu.mom.vo.Result; 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 javax.annotation.Resource; import java.util.Map; /** * <p> * æ¥å·¥æ¶ç®¡çç产éå·¥æ¶ å端æ§å¶å¨ * </p> * * @author æ±èéµ·éç½ç»ç§ææéå ¬å¸ * @since 2024-05-28 03:48:48 */ @Api(tags = "æ¥å·¥æ¶ç®¡ç-产éå·¥æ¶") @AllArgsConstructor @RestController @RequestMapping("/auxiliaryOutputWorkingHours") public class AuxiliaryOutputWorkingHoursController { @Resource private AuxiliaryOutputWorkingHoursService auxiliaryOutputWorkingHoursService; @ValueClassify("å·¥æ¶ç®¡ç") @ApiOperation(value = "æ¥è¯¢äº§éå·¥æ¶") @PostMapping("/selectAuxiliaryOutputWorkingHours") public Result selectAuxiliaryOutputWorkingHours(@RequestBody Map<String, Object> data) throws Exception { Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class); AuxiliaryOutputWorkingHours entity = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), AuxiliaryOutputWorkingHours.class); return Result.success(auxiliaryOutputWorkingHoursService.selectAuxiliaryOutputWorkingHours(page, entity)); } } performance-server/src/main/java/com/yuanchu/mom/controller/AuxiliaryWorkingHoursDayController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,91 @@ package com.yuanchu.mom.controller; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.annotation.ValueClassify; import com.yuanchu.mom.pojo.AuxiliaryWorkingHours; import com.yuanchu.mom.pojo.AuxiliaryWorkingHoursDay; import com.yuanchu.mom.service.AuxiliaryWorkingHoursDayService; import com.yuanchu.mom.service.AuxiliaryWorkingHoursService; import com.yuanchu.mom.utils.JackSonUtil; import com.yuanchu.mom.vo.Result; 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 javax.annotation.Resource; import java.time.LocalDateTime; import java.util.Map; /** * <p> * æ¥å·¥æ¶ç®¡ççè¾ å©å·¥æ¶ å端æ§å¶å¨ * </p> * * @author æ±èéµ·éç½ç»ç§ææéå ¬å¸ * @since 2024-05-28 02:22:19 */ @Api(tags = "æ¥å·¥æ¶ç®¡ç-è¾ å©å·¥æ¶") @AllArgsConstructor @RestController @RequestMapping("/auxiliaryWorkingHoursDay") public class AuxiliaryWorkingHoursDayController { @Resource private AuxiliaryWorkingHoursDayService auxiliaryWorkingHoursDayService; @ValueClassify("å·¥æ¶ç®¡ç") @ApiOperation(value = "æ¥è¯¢è¾ å©å·¥æ¶") @PostMapping("/selectAuxiliaryWorkingHoursDay") public Result selectAuxiliaryWorkingHoursDay(@RequestBody Map<String, Object> data) throws Exception { Page page = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("page")), Page.class); AuxiliaryWorkingHoursDay entity = JackSonUtil.unmarshal(JackSonUtil.marshal(data.get("entity")), AuxiliaryWorkingHoursDay.class); return Result.success(auxiliaryWorkingHoursDayService.selectAuxiliaryWorkingHoursDay(page, entity)); } @ValueClassify("å·¥æ¶ç®¡ç") @ApiOperation(value = "æ ¹æ®ç¼å·æ¥è¯¢è¾ å©å·¥æ¶é 置信æ¯") @PostMapping("/selectAuxiliaryWorkingHoursByNumber") public Result selectAuxiliaryWorkingHoursByNumber(String number) { return Result.success(auxiliaryWorkingHoursDayService.selectAuxiliaryWorkingHoursByNumber(number)); } @ValueClassify("å·¥æ¶ç®¡ç") @ApiOperation(value = "æ ¹æ®ç¼å·å½åç¨æ·ä¿¡æ¯æ¥è¯¢æå¨ç次") @PostMapping("/selectshiftByUser") public Result selectshiftByUser(LocalDateTime dateTime) { return Result.success(auxiliaryWorkingHoursDayService.selectshiftByUser(dateTime)); } @ValueClassify("å·¥æ¶ç®¡ç") @ApiOperation(value = "å½å ¥æ°æ®(æ°å¢)") @PostMapping("/insertAuxiliaryWorkingHoursDay") public Result insertAuxiliaryWorkingHoursDay(@RequestBody AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay) { return Result.success(auxiliaryWorkingHoursDayService.insertAuxiliaryWorkingHoursDay(auxiliaryWorkingHoursDay)); } @ValueClassify("å·¥æ¶ç®¡ç") @ApiOperation(value = "å®¡æ ¸/æ¹å") @PostMapping("/checkOrApprove") public Result checkOrApprove(Integer id, String state) { return Result.success(auxiliaryWorkingHoursDayService.checkOrApprove(id,state)); } @ValueClassify("å·¥æ¶ç®¡ç") @ApiOperation(value = "ç¼è¾") @PostMapping("/updateAuxiliaryWorkingHoursDay") public Result updateAuxiliaryWorkingHoursDay(@RequestBody AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay) { return Result.success(auxiliaryWorkingHoursDayService.updateAuxiliaryWorkingHoursDay(auxiliaryWorkingHoursDay)); } @ValueClassify("å·¥æ¶ç®¡ç") @ApiOperation(value = "å é¤") @PostMapping("/deleteAuxiliaryWorkingHoursDay") public Result deleteAuxiliaryWorkingHoursDay(Integer id) { return Result.success(auxiliaryWorkingHoursDayService.deleteAuxiliaryWorkingHoursDay(id)); } } performance-server/src/main/java/com/yuanchu/mom/mapper/AuxiliaryOutputWorkingHoursMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,20 @@ package com.yuanchu.mom.mapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.pojo.AuxiliaryOutputWorkingHours; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * <p> * æ¥å·¥æ¶ç®¡çç产éå·¥æ¶ Mapper æ¥å£ * </p> * * @author æ±èéµ·éç½ç»ç§ææéå ¬å¸ * @since 2024-05-28 03:48:48 */ public interface AuxiliaryOutputWorkingHoursMapper extends BaseMapper<AuxiliaryOutputWorkingHours> { IPage<AuxiliaryOutputWorkingHours> selectAuxiliaryOutputWorkingHours(Page page, QueryWrapper<AuxiliaryOutputWorkingHours> ew); } performance-server/src/main/java/com/yuanchu/mom/mapper/AuxiliaryWorkingHoursDayMapper.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,21 @@ package com.yuanchu.mom.mapper; import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.pojo.AuxiliaryWorkingHours; import com.yuanchu.mom.pojo.AuxiliaryWorkingHoursDay; import com.baomidou.mybatisplus.core.mapper.BaseMapper; /** * <p> * æ¥å·¥æ¶ç®¡ççè¾ å©å·¥æ¶ Mapper æ¥å£ * </p> * * @author æ±èéµ·éç½ç»ç§ææéå ¬å¸ * @since 2024-05-28 02:22:19 */ public interface AuxiliaryWorkingHoursDayMapper extends BaseMapper<AuxiliaryWorkingHoursDay> { IPage<AuxiliaryWorkingHoursDay> selectAuxiliaryWorkingHoursDay(Page page, QueryWrapper<AuxiliaryWorkingHoursDay> ew); } performance-server/src/main/java/com/yuanchu/mom/pojo/AuxiliaryOutputWorkingHours.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,102 @@ package com.yuanchu.mom.pojo; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import java.time.LocalDateTime; import com.yuanchu.mom.annotation.ValueTableShow; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; /** * <p> * æ¥å·¥æ¶ç®¡çç产éå·¥æ¶ * </p> * * @author æ±èéµ·éç½ç»ç§ææéå ¬å¸ * @since 2024-05-28 03:48:48 */ @Getter @Setter @TableName("auxiliary_output_working_hours") @ApiModel(value = "AuxiliaryOutputWorkingHours对象", description = "æ¥å·¥æ¶ç®¡çç产éå·¥æ¶") public class AuxiliaryOutputWorkingHours implements Serializable { private static final long serialVersionUID = 1L; @TableId(value = "id", type = IdType.AUTO) private Integer id; @ApiModelProperty("æ£æµé¡¹ç®") @ValueTableShow(2) private String inspectProject; @ApiModelProperty("å çå§æåå·") @ValueTableShow(3) private String overtimeOrderNo; @ApiModelProperty("å çå·¥æ¶") @ValueTableShow(4) private Double overtimeWorkTime; @ApiModelProperty("å çæ°é") @ValueTableShow(5) private Integer overtimeAmount; @ApiModelProperty("éå çå§æåå·") @ValueTableShow(6) private String orderNo; @ApiModelProperty("éå çå·¥æ¶") @ValueTableShow(7) private Double workTime; @ApiModelProperty("éå çæ°é") @ValueTableShow(8) private Integer amount; @ApiModelProperty("产éå·¥æ¶") @ValueTableShow(9) private Double outputWorkTime; @ApiModelProperty("æ¥æ") @ValueTableShow(10) private LocalDateTime dateTime; @ApiModelProperty("卿¬¡") @ValueTableShow(11) private Integer week; @ApiModelProperty("ææ") @ValueTableShow(12) private String weekDay; @ApiModelProperty("æ£æµäºº") @ValueTableShow(13) private String check; @ApiModelProperty("å建æ¶é´") @TableField(fill = FieldFill.INSERT) private LocalDateTime createTime; @ApiModelProperty("ä¿®æ¹æ¶é´") @TableField(fill = FieldFill.INSERT_UPDATE) private LocalDateTime updateTime; @ApiModelProperty("å建人id") @TableField(fill = FieldFill.INSERT) private Integer createUser; @ApiModelProperty("ä¿®æ¹äººid") @TableField(fill = FieldFill.INSERT_UPDATE) private Integer updateUser; @ApiModelProperty("å·¥æ¶åç»") private String manHourGroup; } performance-server/src/main/java/com/yuanchu/mom/pojo/AuxiliaryWorkingHours.java
@@ -5,6 +5,7 @@ import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import java.time.LocalDateTime; @@ -40,7 +41,7 @@ private String auxiliaryProject; @ValueTableShow(5) @ApiModelProperty("æ ¸åå·¥æ¶") private Float approvedWorkingHour; private Double approvedWorkingHour; @ValueTableShow(7) @ApiModelProperty("夿³¨") private String remarks; performance-server/src/main/java/com/yuanchu/mom/pojo/AuxiliaryWorkingHoursDay.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,122 @@ package com.yuanchu.mom.pojo; import com.baomidou.mybatisplus.annotation.FieldFill; import com.baomidou.mybatisplus.annotation.IdType; import com.baomidou.mybatisplus.annotation.TableField; import com.baomidou.mybatisplus.annotation.TableId; import com.baomidou.mybatisplus.annotation.TableLogic; import com.baomidou.mybatisplus.annotation.TableName; import java.io.Serializable; import java.time.LocalDateTime; import com.yuanchu.mom.annotation.ValueTableShow; import io.swagger.annotations.ApiModel; import io.swagger.annotations.ApiModelProperty; import lombok.Getter; import lombok.Setter; /** * <p> * æ¥å·¥æ¶ç®¡ççè¾ å©å·¥æ¶ * </p> * * @author æ±èéµ·éç½ç»ç§ææéå ¬å¸ * @since 2024-05-28 02:22:19 */ @Getter @Setter @TableName("auxiliary_working_hours_day") @ApiModel(value = "AuxiliaryWorkingHoursDay对象", description = "æ¥å·¥æ¶ç®¡ççè¾ å©å·¥æ¶") public class AuxiliaryWorkingHoursDay implements Serializable { private static final long serialVersionUID = 1L; @TableId(value = "id", type = IdType.AUTO) private Integer id; @ApiModelProperty("å§å") @ValueTableShow(2) private String name; @ApiModelProperty("ç¼å·") @ValueTableShow(3) private String number; @ApiModelProperty("è¾ å©é¡¹ç®åç§°") @ValueTableShow(4) private String auxiliaryProject; @ApiModelProperty("æ ¸åå·¥æ¶") @ValueTableShow(5) private Double approvedWorkingHour; @ApiModelProperty("æ°é") @ValueTableShow(6) private Integer amount; @ApiModelProperty("è¾ å©å·¥æ¶") @ValueTableShow(7) private Double nonproductiveTime; @ApiModelProperty("è¾ å©è¯´æ") @ValueTableShow(8) private String remarks; @ApiModelProperty("夿 ¸äºº") @ValueTableShow(9) private String reviewer; @ApiModelProperty("夿 ¸æ°é") @ValueTableShow(10) private Integer reviewerNumber; @ApiModelProperty("夿 ¸å·¥æ¶") @ValueTableShow(11) private Double reviewerNonproductiveTime; @ApiModelProperty("夿 ¸è¯´æ") @ValueTableShow(12) private String reviewerRemark; @ApiModelProperty("å¹´") @ValueTableShow(13) private String year; @ApiModelProperty("çæ¬¡") @ValueTableShow(14) private String shift; @ApiModelProperty("卿¬¡") @ValueTableShow(15) private Integer week; @ApiModelProperty("ææ") @ValueTableShow(16) private String weekDay; @ApiModelProperty("å建æ¶é´") @TableField(fill = FieldFill.INSERT) @ValueTableShow(17) private LocalDateTime createTime; @ApiModelProperty("ä¿®æ¹æ¶é´") @TableField(fill = FieldFill.INSERT_UPDATE) private LocalDateTime updateTime; @ApiModelProperty("å建人id") @TableField(fill = FieldFill.INSERT) private Integer createUser; @ApiModelProperty("ä¿®æ¹äººid") @TableField(fill = FieldFill.INSERT_UPDATE) private Integer updateUser; @ApiModelProperty("ç¶æ") @ValueTableShow(18) private String state; @ApiModelProperty("æ¥æ") @TableLogic @ValueTableShow(19) private LocalDateTime dateTime; } performance-server/src/main/java/com/yuanchu/mom/service/AuxiliaryOutputWorkingHoursService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,21 @@ package com.yuanchu.mom.service; import com.baomidou.mybatisplus.core.metadata.IPage; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.pojo.AuxiliaryOutputWorkingHours; import com.baomidou.mybatisplus.extension.service.IService; import java.util.Map; /** * <p> * æ¥å·¥æ¶ç®¡çç产éå·¥æ¶ æå¡ç±» * </p> * * @author æ±èéµ·éç½ç»ç§ææéå ¬å¸ * @since 2024-05-28 03:48:48 */ public interface AuxiliaryOutputWorkingHoursService extends IService<AuxiliaryOutputWorkingHours> { Map<String, Object> selectAuxiliaryOutputWorkingHours(Page page, AuxiliaryOutputWorkingHours auxiliaryOutputWorkingHours); } performance-server/src/main/java/com/yuanchu/mom/service/AuxiliaryWorkingHoursDayService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,34 @@ package com.yuanchu.mom.service; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.pojo.AuxiliaryWorkingHours; import com.yuanchu.mom.pojo.AuxiliaryWorkingHoursDay; import com.baomidou.mybatisplus.extension.service.IService; import java.time.LocalDateTime; import java.util.Map; /** * <p> * æ¥å·¥æ¶ç®¡ççè¾ å©å·¥æ¶ æå¡ç±» * </p> * * @author æ±èéµ·éç½ç»ç§ææéå ¬å¸ * @since 2024-05-28 02:22:19 */ public interface AuxiliaryWorkingHoursDayService extends IService<AuxiliaryWorkingHoursDay> { Map<String, Object> selectAuxiliaryWorkingHoursDay(Page page, AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay); int insertAuxiliaryWorkingHoursDay(AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay); AuxiliaryWorkingHoursDay selectAuxiliaryWorkingHoursByNumber(String number); int checkOrApprove(Integer id, String state); int updateAuxiliaryWorkingHoursDay(AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay); int deleteAuxiliaryWorkingHoursDay(Integer id); String selectshiftByUser(LocalDateTime dateTime); } performance-server/src/main/java/com/yuanchu/mom/service/AuxiliaryWorkingHoursService.java
@@ -16,7 +16,10 @@ */ public interface AuxiliaryWorkingHoursService extends IService<AuxiliaryWorkingHours> { Map<String, Object> selectAuxiliaryWorkingHours(Page page, AuxiliaryWorkingHours auxiliaryWorkingHours); int deleteAuxiliaryWorkingHours(Integer id); int upAuxiliaryWorkingHours(AuxiliaryWorkingHours auxiliaryWorkingHours); int insertAuxiliaryWorkingHours(AuxiliaryWorkingHours auxiliaryWorkingHours); } performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryOutputWorkingHoursServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,38 @@ package com.yuanchu.mom.service.impl; import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.common.PrintChina; import com.yuanchu.mom.pojo.AuxiliaryOutputWorkingHours; import com.yuanchu.mom.mapper.AuxiliaryOutputWorkingHoursMapper; import com.yuanchu.mom.pojo.AuxiliaryWorkingHoursDay; import com.yuanchu.mom.service.AuxiliaryOutputWorkingHoursService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.yuanchu.mom.utils.QueryWrappers; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.util.HashMap; import java.util.Map; /** * <p> * æ¥å·¥æ¶ç®¡çç产éå·¥æ¶ æå¡å®ç°ç±» * </p> * * @author æ±èéµ·éç½ç»ç§ææéå ¬å¸ * @since 2024-05-28 03:48:48 */ @Service public class AuxiliaryOutputWorkingHoursServiceImpl extends ServiceImpl<AuxiliaryOutputWorkingHoursMapper, AuxiliaryOutputWorkingHours> implements AuxiliaryOutputWorkingHoursService { @Resource AuxiliaryOutputWorkingHoursMapper auxiliaryOutputWorkingHoursMapper; @Override public Map<String, Object> selectAuxiliaryOutputWorkingHours(Page page, AuxiliaryOutputWorkingHours auxiliaryOutputWorkingHours) { Map<String, Object> map = new HashMap<>(); map.put("head", PrintChina.printChina(AuxiliaryOutputWorkingHours.class)); map.put("body", auxiliaryOutputWorkingHoursMapper.selectAuxiliaryOutputWorkingHours(page, QueryWrappers.queryWrappers(auxiliaryOutputWorkingHours))); return map; } } performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryWorkingHoursDayServiceImpl.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,127 @@ package com.yuanchu.mom.service.impl; 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.exception.ErrorException; import com.yuanchu.mom.mapper.AuxiliaryWorkingHoursMapper; import com.yuanchu.mom.mapper.PerformanceShiftMapper; import com.yuanchu.mom.mapper.UserMapper; import com.yuanchu.mom.pojo.AuxiliaryWorkingHours; import com.yuanchu.mom.pojo.AuxiliaryWorkingHoursDay; import com.yuanchu.mom.mapper.AuxiliaryWorkingHoursDayMapper; import com.yuanchu.mom.pojo.PerformanceShift; import com.yuanchu.mom.pojo.User; import com.yuanchu.mom.service.AuxiliaryWorkingHoursDayService; import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; import com.yuanchu.mom.utils.MyUtil; import com.yuanchu.mom.utils.QueryWrappers; import org.springframework.beans.BeanUtils; import org.springframework.stereotype.Service; import javax.annotation.Resource; import java.time.LocalDateTime; import java.util.HashMap; import java.util.Map; /** * <p> * æ¥å·¥æ¶ç®¡ççè¾ å©å·¥æ¶ æå¡å®ç°ç±» * </p> * * @author æ±èéµ·éç½ç»ç§ææéå ¬å¸ * @since 2024-05-28 02:22:19 */ @Service public class AuxiliaryWorkingHoursDayServiceImpl extends ServiceImpl<AuxiliaryWorkingHoursDayMapper, AuxiliaryWorkingHoursDay> implements AuxiliaryWorkingHoursDayService { @Resource AuxiliaryWorkingHoursDayMapper auxiliaryWorkingHoursDayMapper; @Resource AuxiliaryWorkingHoursMapper auxiliaryWorkingHoursMapper; @Resource GetLook getLook; @Resource UserMapper userMapper; @Resource PerformanceShiftMapper performanceShiftMapper; @Override public Map<String, Object> selectAuxiliaryWorkingHoursDay(Page page, AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay) { Map<String, Object> map = new HashMap<>(); map.put("head", PrintChina.printChina(AuxiliaryWorkingHoursDay.class)); map.put("body", auxiliaryWorkingHoursDayMapper.selectAuxiliaryWorkingHoursDay(page, QueryWrappers.queryWrappers(auxiliaryWorkingHoursDay))); return map; } //æ ¹æ®ç¼å·æ¥è¯¢è¾ å©å·¥æ¶é ç½®ä¿¡æ¯ @Override public AuxiliaryWorkingHoursDay selectAuxiliaryWorkingHoursByNumber(String number) { //æ ¹æ®å¡«åçç¼å·æ¥è¯¢è¾ å©å·¥æ¶é ç½® AuxiliaryWorkingHours auxiliaryWorkingHours = auxiliaryWorkingHoursMapper.selectOne(Wrappers.<AuxiliaryWorkingHours>lambdaQuery().eq(AuxiliaryWorkingHours::getNumber, number)); if (ObjectUtils.isEmpty(auxiliaryWorkingHours)) { throw new RuntimeException("该ç¼å·æ²¡æå¯¹åºçè¾ å©å·¥æ¶é ç½®"); } AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay = new AuxiliaryWorkingHoursDay(); BeanUtils.copyProperties(auxiliaryWorkingHours, auxiliaryWorkingHoursDay); return auxiliaryWorkingHoursDay; } //å½å ¥æ°æ®(æ°å¢) @Override public int insertAuxiliaryWorkingHoursDay(AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay) { Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId"); User user = userMapper.selectById(userId); auxiliaryWorkingHoursDay.setName(user.getName());//å§å auxiliaryWorkingHoursDay.setState("å·²æäº¤"); return auxiliaryWorkingHoursDayMapper.insert(auxiliaryWorkingHoursDay); } //å®¡æ ¸/æ¹å @Override public int checkOrApprove(Integer id, String state) { AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay = auxiliaryWorkingHoursDayMapper.selectById(id); if (auxiliaryWorkingHoursDay.getState().equals("å·²æ¹å") && state.equals("å·²å®¡æ ¸")) { throw new RuntimeException("è¯¥æ°æ®å·²ç»æ¹åæ éå®¡æ ¸!"); } auxiliaryWorkingHoursDay.setState(state); return auxiliaryWorkingHoursDayMapper.updateById(auxiliaryWorkingHoursDay); } //ç¼è¾ @Override public int updateAuxiliaryWorkingHoursDay(AuxiliaryWorkingHoursDay auxiliaryWorkingHoursDay) { if (!auxiliaryWorkingHoursDay.getState().equals("å·²æäº¤")) { throw new RuntimeException("è¯¥æ°æ®å·²ç»æ¹åæå·²å®¡æ ¸,æ æ³è¿è¡ç¼è¾!"); } Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId"); User user = userMapper.selectById(userId); auxiliaryWorkingHoursDay.setName(user.getName());//å§å return auxiliaryWorkingHoursDayMapper.updateById(auxiliaryWorkingHoursDay); } //å é¤ @Override public int deleteAuxiliaryWorkingHoursDay(Integer id) { return auxiliaryWorkingHoursDayMapper.deleteById(id); } //æ ¹æ®ç¼å·å½åç¨æ·ä¿¡æ¯æ¥è¯¢æå¨ç次 @Override public String selectshiftByUser(LocalDateTime dateTime) { Integer userId = getLook.selectPowerByMethodAndUserId(null).get("userId"); PerformanceShift performanceShift = performanceShiftMapper.selectOne(Wrappers.<PerformanceShift>lambdaQuery().eq(PerformanceShift::getUserId, userId).eq(PerformanceShift::getWorkTime, dateTime)); if (ObjectUtils.isEmpty(performanceShift)){ throw new RuntimeException("æ²¡ææ¥å°å½åç¨æ·éæ©æ¥æçå½ççæ¬¡ä¿¡æ¯!!"); } return performanceShift.getShift(); } } performance-server/src/main/java/com/yuanchu/mom/service/impl/AuxiliaryWorkingHoursServiceImpl.java
@@ -2,6 +2,7 @@ import com.baomidou.mybatisplus.extension.plugins.pagination.Page; import com.yuanchu.mom.common.PrintChina; import com.yuanchu.mom.exception.ErrorException; import com.yuanchu.mom.pojo.AuxiliaryWorkingHours; import com.yuanchu.mom.mapper.AuxiliaryWorkingHoursMapper; import com.yuanchu.mom.service.AuxiliaryWorkingHoursService; @@ -11,7 +12,9 @@ import javax.annotation.Resource; import java.util.HashMap; import java.util.List; import java.util.Map; import java.util.stream.Collectors; /** * <p> @@ -46,6 +49,11 @@ @Override public int insertAuxiliaryWorkingHours(AuxiliaryWorkingHours auxiliaryWorkingHours) { //ç¼å·ä¸è½éå¤ List<String> strings = auxiliaryWorkingHoursMapper.selectList(null).stream().map(AuxiliaryWorkingHours::getNumber).distinct().collect(Collectors.toList()); if (strings.contains(auxiliaryWorkingHours.getNumber())){ throw new RuntimeException("ç¼å·ä¸è½éå¤!"); } return auxiliaryWorkingHoursMapper.insert(auxiliaryWorkingHours); } } performance-server/src/main/resources/mapper/AuxiliaryOutputWorkingHoursMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,35 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.yuanchu.mom.mapper.AuxiliaryOutputWorkingHoursMapper"> <!-- éç¨æ¥è¯¢æ å°ç»æ --> <resultMap id="BaseResultMap" type="com.yuanchu.mom.pojo.AuxiliaryOutputWorkingHours"> <id column="id" property="id" /> <result column="inspect_project" property="inspectProject" /> <result column="overtime_order_no" property="overtimeOrderNo" /> <result column="overtime_work_time" property="overtimeWorkTime" /> <result column="overtime_amount" property="overtimeAmount" /> <result column="order_no" property="orderNo" /> <result column="work_time" property="workTime" /> <result column="amount" property="amount" /> <result column="output_work_time" property="outputWorkTime" /> <result column="date_time" property="dateTime" /> <result column="week" property="week" /> <result column="week_day" property="weekDay" /> <result column="check" property="check" /> <result column="create_time" property="createTime" /> <result column="update_time" property="updateTime" /> <result column="create_user" property="createUser" /> <result column="update_user" property="updateUser" /> </resultMap> <select id="selectAuxiliaryOutputWorkingHours" resultType="com.yuanchu.mom.pojo.AuxiliaryOutputWorkingHours"> select data.* from ( select * FROM auxiliary_output_working_hours ) data <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> ${ew.customSqlSegment} </if> </select> </mapper> performance-server/src/main/resources/mapper/AuxiliaryWorkingHoursDayMapper.xml
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,38 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <mapper namespace="com.yuanchu.mom.mapper.AuxiliaryWorkingHoursDayMapper"> <!-- éç¨æ¥è¯¢æ å°ç»æ --> <resultMap id="BaseResultMap" type="com.yuanchu.mom.pojo.AuxiliaryWorkingHoursDay"> <id column="id" property="id"/> <result column="name" property="name"/> <result column="number" property="number"/> <result column="auxiliary_project" property="auxiliaryProject"/> <result column="approved_working_hour" property="approvedWorkingHour"/> <result column="amount" property="amount"/> <result column="nonproductive_time" property="nonproductiveTime"/> <result column="remarks" property="remarks"/> <result column="reviewer" property="reviewer"/> <result column="reviewer_number" property="reviewerNumber"/> <result column="reviewer_nonproductive_time" property="reviewerNonproductiveTime"/> <result column="reviewer_remark" property="reviewerRemark"/> <result column="year" property="year"/> <result column="shift" property="shift"/> <result column="week" property="week"/> <result column="week_day" property="weekDay"/> <result column="create_time" property="createTime"/> <result column="update_time" property="updateTime"/> <result column="create_user" property="createUser"/> <result column="update_user" property="updateUser"/> <result column="state" property="state"/> </resultMap> <select id="selectAuxiliaryWorkingHoursDay" resultType="com.yuanchu.mom.pojo.AuxiliaryWorkingHoursDay"> select data.* from ( select * FROM auxiliary_working_hours_day ) data <if test="ew.customSqlSegment != null and ew.customSqlSegment != ''"> ${ew.customSqlSegment} </if> </select> </mapper> system-run/src/main/java/com/yuanchu/mom/CodeGenerator.java
@@ -16,7 +16,7 @@ // æ¼ç¤ºä¾åï¼æ§è¡ main æ¹æ³æ§å¶å°è¾å ¥æ¨¡å表åå车èªå¨çæå¯¹åºé¡¹ç®ç®å½ä¸ public class CodeGenerator { public static String database_url = "jdbc:mysql://114.132.189.42:9004/center-lims?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8"; public static String database_url = "jdbc:mysql://localhost:3306/center-lims?useSSL=false&useUnicode=true&characterEncoding=utf-8&serverTimezone=GMT%2B8"; public static String database_username = "root"; public static String database_password= "123456"; public static String author = "æ±èéµ·éç½ç»ç§ææéå ¬å¸";