blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/DncSendBackController.java
@@ -59,7 +59,7 @@ @PostMapping("dnc-sendback-accept") @ApiOperationSupport(order = 2) @Operation(summary = "DNCåä¼ æ°æ®å ¥åº") @Operation(summary = "DNCåä¼ æ°æ®å ¥åº", description = "å ¥åºï¼åæ¶å¯å¨åºåæµç¨") public R<Void> dncSendBackAccept(@RequestParam String ids) { try { dncSendBackService.dncFileAccept(ids); blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/controller/ProgramExchangeStatController.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,45 @@ package org.springblade.mdm.program.controller; import com.baomidou.mybatisplus.core.metadata.IPage; import com.github.xiaoymin.knife4j.annotations.ApiOperationSupport; import io.swagger.v3.oas.annotations.Operation; import io.swagger.v3.oas.annotations.tags.Tag; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.core.tenant.annotation.NonDS; import org.springblade.core.tool.api.R; import org.springblade.mdm.basesetting.machine.vo.MachineQueryVO; import org.springblade.mdm.basesetting.machine.vo.MachineVO; import org.springblade.mdm.program.service.DncSendBackService; import org.springblade.mdm.program.service.NcProgramExchangeStatService; import org.springblade.mdm.program.vo.DncSendBackData; import org.springblade.mdm.program.vo.ProgramExchangeStatQueryVO; import org.springframework.web.bind.annotation.*; import org.springframework.web.multipart.MultipartFile; import java.util.List; /** * æµç¨ç®¡çæ¥å£ * * @author Chill */ @NonDS @RestController @RequestMapping("/program/stat") @AllArgsConstructor @Tag(name = "ä¸å/åä¼ ç¨åºç»è®¡", description = "ä¸å/åä¼ ç¨åºç»è®¡") @Slf4j public class ProgramExchangeStatController { private final NcProgramExchangeStatService service; @Operation(summary = "åéç¨åºç»è®¡", description = "åéç¨åºç»è®¡") @GetMapping("/page") public R<IPage<MachineVO>> page(ProgramExchangeStatQueryVO query) { IPage<MachineVO> pages = service.distributeStatPageQuery(query); return R.data(pages); } //ProgramExchangeStatQueryVO } blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/entity/NcNode.java
@@ -15,8 +15,11 @@ private String name; private Long parentId; /** * ç¨åºå å * èç¹ç±»åï¼åå ¸ */ private String nodeType; private String description; private String remark; } blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcNodeService.java
@@ -43,7 +43,8 @@ NcNode ncNode = this.getById(vo.getId()); ncNode.setName(vo.getName()); ncNode.setNodeType(vo.getNodeType()); ncNode.setDescription(vo.getDescription()); ncNode.setRemark(vo.getRemark()); this.updateById(ncNode); } blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/service/NcProgramExchangeStatService.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,54 @@ package org.springblade.mdm.program.service; import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; import com.baomidou.mybatisplus.core.metadata.IPage; import lombok.AllArgsConstructor; import lombok.extern.slf4j.Slf4j; import org.springblade.core.mp.base.BizServiceImpl; import org.springblade.core.mp.support.Condition; import org.springblade.mdm.basesetting.machine.entity.Machine; import org.springblade.mdm.basesetting.machine.entity.MachineSpec; import org.springblade.mdm.basesetting.machine.vo.MachineQueryVO; import org.springblade.mdm.basesetting.machine.vo.MachineVO; import org.springblade.mdm.program.entity.NcProgram; import org.springblade.mdm.program.mapper.NcProgramMapper; import org.springblade.mdm.program.vo.ProgramExchangeStatQueryVO; import org.springframework.stereotype.Service; /** * ä¸å/åä¼ ç¨åºç»è®¡ * * @author yangys */ @Slf4j @Service @AllArgsConstructor public class NcProgramExchangeStatService extends BizServiceImpl<NcProgramMapper, NcProgram> { private final NcProgramMapper programMapper; /** * ç¨åºä¸åç»è®¡å页æ¥è¯¢ * @param query æ¥è¯¢åæ° * @return */ public IPage<MachineVO> distributeStatPageQuery(ProgramExchangeStatQueryVO query) { //å è¯¥æ¯æ¯æ¬¡å¯¼åºé½æä¸ä¸ªè®°å½ï¼éå¤çå¯ä»¥æ´æ°å¯¼åºæ¶é´ï¼ï¼ç¶åæ ¹æ®è¿ä¸ªè®°å½è¿è¡ç»è®¡ï¼ /* IPage<MachineVO> page = this.getBaseMapper().pageQuery(Condition.getPage(query),query); //MachineSpec.valueOf() for (MachineVO record : page.getRecords()) { if(record.getMachineSpec() != null){ MachineSpec spec = MachineSpec.valueOf(record.getMachineSpec()); record.setMachineSpecName(spec.getText()); } } return page; */ return null; } } blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/NcNodeVO.java
@@ -16,4 +16,8 @@ private String nodeType; @Schema(description = "æ¯å¦æåèç¹") private Boolean hasChildren; @Schema(description = "æè¿°") private String description; @Schema(description = "夿³¨") private String remark; } blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/ProgramExchangeStatQueryVO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,21 @@ package org.springblade.mdm.program.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Getter; import lombok.Setter; import org.springblade.core.mp.support.Query; import java.time.LocalDateTime; @Schema(description = "ç¨åºä¸å/åä¼ ç»è®¡æ¥è¯¢å¯¹è±¡") @Setter @Getter public class ProgramExchangeStatQueryVO extends Query { @Schema(description = "ä¸åæ¶é´å¼å§") private LocalDateTime distributeTimeBegin; @Schema(description = "ä¸åæ¶é´æªæ¢") private LocalDateTime distributeTimeEnd; @Schema(description = "æºåºç¼ç (éå·åé)") private String machineCodes; } blade-service/blade-mdm/src/main/java/org/springblade/mdm/program/vo/ProgramExchangeStatVO.java
¶Ô±ÈÐÂÎļþ @@ -0,0 +1,27 @@ package org.springblade.mdm.program.vo; import io.swagger.v3.oas.annotations.media.Schema; import lombok.Getter; import lombok.Setter; import org.springblade.core.mp.support.Query; import java.math.BigDecimal; import java.time.LocalDateTime; @Schema(description = "ç¨åºä¸å/åä¼ ç»è®¡æ¥è¯¢å¯¹è±¡") @Setter @Getter public class ProgramExchangeStatVO{ @Schema(description = "æ°éï¼å¦ä¸å/åºå") private Long count; @Schema(description = "彿¡£æ°é") private Long filedCount; @Schema(description = "æºåºç¼å·") private String machineCode; @Schema(description = "å æ¯") private BigDecimal countPercent; @Schema(description = "彿¡£å æ¯") private BigDecimal fileCountPercent; } doc/sql/mdm/mdm.mysql.all.create.sql
@@ -60,22 +60,24 @@ UNIQUE KEY `uniqueCheckIndex` (`team_leader_id`,`programmer_id`,`checker_id`,`senior_id`,`is_deleted`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='主å¶è®¡å表'; DROP TABLE IF EXISTS `mdm_nc_node`; CREATE TABLE `mdm_nc_node` ( `id` bigint NOT NULL, `tenant_id` varchar(6) DEFAULT NULL COMMENT 'æå±ç§æ·', `name` varchar(100) NOT NULL COMMENT 'èç¹åç§°', `parent_id` bigint DEFAULT NULL COMMENT 'æå±æºåºç»ID', `node_type` varchar(20) DEFAULT NULL COMMENT 'èç¹ç±»åï¼PRODUCT_MODEL(产ååå·)/PARTS_NO(é¶ç»ä»¶å·)/CRAFT_EDITION(å·¥èºç次)/PROCESS_NO(å·¥åºå·)/MACHINE(æºåº)/PACKAGE(ç¨åºå å)/PROGRAME(ç¨åºæä»¶)', `status` int DEFAULT NULL COMMENT 'ä¸å¡ç¶æ', `create_dept` bigint DEFAULT NULL COMMENT 'å建åä½', `is_deleted` int DEFAULT NULL, `create_time` datetime DEFAULT NULL COMMENT 'å建æ¶é´', `create_user` bigint DEFAULT NULL COMMENT 'å建人', `update_time` datetime DEFAULT NULL COMMENT 'æ´æ°æ¶é´', `update_user` bigint DEFAULT NULL COMMENT 'æ´æ°äºº' PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uniqueCodeIndex` (`code`,`is_deleted`) USING BTREE, `id` bigint NOT NULL, `tenant_id` varchar(6) DEFAULT NULL COMMENT 'æå±ç§æ·', `name` varchar(100) NOT NULL COMMENT 'èç¹åç§°', `description` varchar(100) NOT NULL COMMENT 'æè¿°', `remark` varchar(200) NOT NULL COMMENT '夿³¨', `parent_id` bigint DEFAULT NULL COMMENT 'æå±æºåºç»ID', `node_type` varchar(20) DEFAULT NULL COMMENT 'èç¹ç±»åï¼ä¸å¡åå ¸å®ä¹', `status` int DEFAULT NULL COMMENT 'ä¸å¡ç¶æ', `create_dept` bigint DEFAULT NULL COMMENT 'å建åä½', `is_deleted` int DEFAULT NULL, `create_time` datetime DEFAULT NULL COMMENT 'å建æ¶é´', `create_user` bigint DEFAULT NULL COMMENT 'å建人', `update_time` datetime DEFAULT NULL COMMENT 'æ´æ°æ¶é´', `update_user` bigint DEFAULT NULL COMMENT 'æ´æ°äºº', PRIMARY KEY (`id`) USING BTREE, UNIQUE KEY `uniqueNameIndex` (`name`,`is_deleted`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='ç¨åºèç¹ç®å½'; DROP TABLE IF EXISTS `mdm_nc_program`; @@ -105,14 +107,14 @@ PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='æ°æ§ç¨åº'; DROP TABLE IF EXISTS `mdm_nc_program_file`; CREATE TABLE `mdm_nc_program_file` ( DROP TABLE IF EXISTS `mdm_nc_program_exchange`; CREATE TABLE `mdm_nc_program_exchange` ( `id` bigint NOT NULL, `tenant_id` varchar(6) DEFAULT NULL COMMENT 'æå±ç§æ·', `program_id` varchar(100) NOT NULL COMMENT 'æå±ç¨åºid', `name` varchar(100) NOT NULL COMMENT 'æä»¶åç§°', `url` varchar(100) NOT NULL COMMENT 'æä»¶å°å', `name` varchar(100) NOT NULL COMMENT 'ç¨åºåç§°', `status` int DEFAULT NULL COMMENT 'ä¸å¡ç¶æ', `exchange_type` int DEFAULT NULL COMMENT '交æ¢ç±»å,1:ä¸å;2:åºå', `create_dept` bigint DEFAULT NULL COMMENT 'å建åä½', `is_deleted` int DEFAULT NULL, `create_time` datetime DEFAULT NULL COMMENT 'å建æ¶é´', @@ -120,16 +122,23 @@ `update_time` datetime DEFAULT NULL COMMENT 'æ´æ°æ¶é´', `update_user` bigint DEFAULT NULL COMMENT 'æ´æ°äºº', PRIMARY KEY (`id`) USING BTREE ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='æ°æ§ç¨åºæä»¶'; ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE = utf8mb4_general_ci ROW_FORMAT=DYNAMIC COMMENT='æ°æ§ç¨åºä¸åè®°å½'; DROP TABLE IF EXISTS `mdm_machine_back_file`; CREATE TABLE `mdm_machine_back_file` ( `id` bigint NOT NULL, `filename` varchar(255) NOT NULL COMMENT 'æä»¶åç§°', `program_id` varchar(255) NOT NULL COMMENT 'ç¨åºç¼ç ', `machine_code` bigint DEFAULT NULL COMMENT 'æå±æºåºä»£ç ', `confirm_time` datetime DEFAULT NULL COMMENT '确认æ¶é´', `status` int DEFAULT NULL COMMENT 'ä¸å¡ç¶æ', `create_dept` bigint DEFAULT NULL COMMENT 'å建åä½', `is_deleted` int DEFAULT NULL, `create_time` datetime DEFAULT NULL COMMENT 'å建æ¶é´', `create_user` bigint DEFAULT NULL COMMENT 'å建人', `update_time` datetime DEFAULT NULL COMMENT 'æ´æ°æ¶é´',