¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.basic.dto.CoalFieldDto; |
| | | import com.ruoyi.basic.entity.CoalField; |
| | | import com.ruoyi.basic.service.CoalFieldService; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ç»´æ¤å段 å端æ§å¶å¨ |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | |
| | | @RestController |
| | | @AllArgsConstructor |
| | | @RequestMapping("/coalField") |
| | | public class CoalFieldController { |
| | | |
| | | private CoalFieldService coalFieldService; |
| | | |
| | | /** |
| | | * ç
¤è´¨ç»´æ¤å段æ¥è¯¢ |
| | | */ |
| | | @GetMapping("/list") |
| | | public R<IPage<CoalField>> list(Page page, CoalFieldDto coalFieldDto) { |
| | | IPage<CoalField> list = coalFieldService.selectCoalFieldList(page, coalFieldDto); |
| | | return R.ok(list); |
| | | } |
| | | |
| | | /** |
| | | * Allç
¤è´¨ç»´æ¤å段æ¥è¯¢ è¿å |
| | | */ |
| | | @GetMapping("/coalFieldList") |
| | | public R<List<CoalField>> coalFieldList(CoalFieldDto coalFieldDto) { |
| | | return R.ok(coalFieldService.selectAllList(coalFieldDto)); |
| | | } |
| | | |
| | | /** |
| | | * ç
¤è´¨ç»´æ¤å段æ°å¢ä¿®æ¹ |
| | | */ |
| | | @PostMapping("/addOrEditCoalField") |
| | | public R addOrEditCoalField(@RequestBody CoalFieldDto coalFieldDto) { |
| | | return R.ok(coalFieldService.addOrEditCoalField(coalFieldDto)); |
| | | } |
| | | |
| | | /** |
| | | * ç
¤è´¨ç»´æ¤å段å é¤ |
| | | */ |
| | | @DeleteMapping("/delCoalInfo") |
| | | public R remove(@RequestBody Long[] ids) { |
| | | return R.ok(coalFieldService.delCoalFieldByIds(ids)); |
| | | } |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.basic.dto.CoalPlanDto; |
| | | import com.ruoyi.basic.entity.CoalPlan; |
| | | import com.ruoyi.basic.service.CoalPlanService; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨æ¹æ¡ å端æ§å¶å¨ |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | |
| | | @RestController |
| | | @AllArgsConstructor |
| | | @RequestMapping("/coalPlan") |
| | | public class CoalPlanController { |
| | | |
| | | private CoalPlanService coalPlanService; |
| | | |
| | | /** |
| | | * ç
¤è´¨æ¹æ¡æ¥è¯¢ |
| | | */ |
| | | @GetMapping("/list") |
| | | public R<IPage<CoalPlan>> list(Page page, CoalPlanDto coalPlanDto) { |
| | | IPage<CoalPlan> list = coalPlanService.selectCoalFieldList(page, coalPlanDto); |
| | | return R.ok(list); |
| | | } |
| | | |
| | | /** |
| | | * Allç
¤è´¨æ¹æ¡æ¥è¯¢ è¿å |
| | | */ |
| | | @GetMapping("/coalPlanList") |
| | | public R<List<CoalPlan>> coalPlanList() { |
| | | return R.ok(coalPlanService.selectAllList()); |
| | | } |
| | | |
| | | /** |
| | | * ç
¤è´¨æ¹æ¡æ°å¢ä¿®æ¹ |
| | | */ |
| | | @PostMapping("/addOrEditCoalPlan") |
| | | public R addOrEditCoalPlan(@RequestBody CoalPlanDto coalPlanDto) { |
| | | return R.ok(coalPlanService.addOrEditCoalPlan(coalPlanDto)); |
| | | } |
| | | |
| | | /** |
| | | * ç
¤è´¨æ¹æ¡å段å é¤ |
| | | */ |
| | | @DeleteMapping("/delCoalPlan") |
| | | public R remove(@RequestBody Long[] ids) { |
| | | return R.ok(coalPlanService.delCoalPlanByIds(ids)); |
| | | } |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.controller; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.basic.dto.CoalValueDto; |
| | | import com.ruoyi.basic.entity.CoalValue; |
| | | import com.ruoyi.basic.service.CoalValueService; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® å端æ§å¶å¨ |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | |
| | | @RestController |
| | | @AllArgsConstructor |
| | | @RequestMapping("/basic/coalValue") |
| | | public class CoalValueController { |
| | | |
| | | private CoalValueService coalValueService; |
| | | |
| | | /** |
| | | * ç
¤è´¨æ¹æ¡æ¥è¯¢ |
| | | */ |
| | | @GetMapping("/list") |
| | | public R<IPage<CoalValue>> list(Page page, CoalValueDto coalValueDto) { |
| | | IPage<CoalValue> list = coalValueService.selectCoalFieldList(page, coalValueDto); |
| | | return R.ok(list); |
| | | } |
| | | |
| | | |
| | | /** |
| | | * ç
¤è´¨æ¹æ¡å¼æ°å¢ä¿®æ¹ |
| | | */ |
| | | @PostMapping("/addOrEditCoalValue") |
| | | public R addOrEditCoalValue(@RequestBody CoalValueDto coalValueDto) { |
| | | return R.ok(coalValueService.addOrEditCoalValue(coalValueDto)); |
| | | } |
| | | |
| | | /** |
| | | * ç
¤è´¨æ¹æ¡å段å é¤ |
| | | */ |
| | | @DeleteMapping("/delCoalValue") |
| | | public R remove(@RequestBody Long[] ids) { |
| | | return R.ok(coalValueService.delCoalValueByIds(ids)); |
| | | } |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.dto; |
| | | |
| | | import com.ruoyi.basic.entity.CoalField; |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class CoalFieldDto extends CoalField { |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.dto; |
| | | |
| | | import com.ruoyi.basic.entity.CoalPlan; |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class CoalPlanDto extends CoalPlan { |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.dto; |
| | | |
| | | import com.ruoyi.basic.entity.CoalValue; |
| | | import lombok.Data; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | |
| | | @Data |
| | | public class CoalValueDto extends CoalValue { |
| | | |
| | | private List<Map<String, String>> fieldValue; |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.*; |
| | | import lombok.Data; |
| | | import com.ruoyi.common.core.domain.MyBaseEntity; |
| | | |
| | | /** |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® å®ä½ç±» |
| | | * |
| | | * @author ruoyi |
| | | * @date 2025-06-09 |
| | | */ |
| | | @Data |
| | | @TableName("coal_field") |
| | | public class CoalField extends MyBaseEntity { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 主é®ID |
| | | */ |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * åæ®µ |
| | | */ |
| | | @TableField(value = "fields") |
| | | private String fields; |
| | | /** |
| | | * åæ®µå |
| | | */ |
| | | @TableField(value = "field_name") |
| | | private String fieldName; |
| | | |
| | | /** |
| | | * åæ®µåæ°å |
| | | */ |
| | | @TableField(value = "field_name") |
| | | private String fieldNumber; |
| | | /** |
| | | * åæ®µæè¿° |
| | | */ |
| | | @TableField(value = "field_description") |
| | | private String fieldDescription; |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.*; |
| | | import lombok.Data; |
| | | import com.ruoyi.common.core.domain.MyBaseEntity; |
| | | |
| | | /** |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® å®ä½ç±» |
| | | * |
| | | * @author ruoyi |
| | | * @date 2025-06-09 |
| | | */ |
| | | @Data |
| | | @TableName("coal_plan") |
| | | public class CoalPlan extends MyBaseEntity { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 主é®ID |
| | | */ |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | /** |
| | | * ç
¤è´¨æ¹æ¡ |
| | | */ |
| | | @TableField(value = "plan") |
| | | private String plan; |
| | | /** |
| | | * ç
¤è´¨æ¹æ¡å段 |
| | | */ |
| | | @TableField(value = "coal_fields") |
| | | private String coalFields; |
| | | |
| | | /** |
| | | * ç
¤è´¨æ¹æ¡å段 |
| | | */ |
| | | @TableField(value = "scheme_desc") |
| | | private String schemeDesc; |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.entity; |
| | | |
| | | import com.baomidou.mybatisplus.annotation.*; |
| | | import lombok.Data; |
| | | import com.ruoyi.common.core.domain.MyBaseEntity; |
| | | |
| | | /** |
| | | * ç
¤è´¨æ¹æ¡åæ®µå¼ å®ä½ç±» |
| | | * |
| | | * @author ruoyi |
| | | * @date 2025-06-09 |
| | | */ |
| | | @Data |
| | | @TableName("coal_value") |
| | | public class CoalValue extends MyBaseEntity { |
| | | |
| | | private static final long serialVersionUID = 1L; |
| | | |
| | | /** |
| | | * 主é®ID |
| | | */ |
| | | @TableId(value = "id", type = IdType.AUTO) |
| | | private Long id; |
| | | |
| | | /** |
| | | * å
³èéè´å
¥åºä¸»é®ID |
| | | */ |
| | | @TableField(value = "plan_id") |
| | | private Long planId; |
| | | /** |
| | | * åæ®µå¼ |
| | | */ |
| | | @TableField(value = "coal_value") |
| | | private String coalValue; |
| | | /** |
| | | * åæ®µ |
| | | */ |
| | | @TableField(value = "fields") |
| | | private String fields; |
| | | /** |
| | | * åæ®µå |
| | | */ |
| | | @TableField(value = "field_name") |
| | | private String fieldName; |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.mapper; |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.basic.entity.CoalField; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® Mapper æ¥å£ |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | @Mapper |
| | | public interface CoalFieldMapper extends BaseMapper<CoalField> { |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.mapper; |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.basic.entity.CoalPlan; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® Mapper æ¥å£ |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | @Mapper |
| | | public interface CoalPlanMapper extends BaseMapper<CoalPlan> { |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.mapper; |
| | | |
| | | import com.baomidou.mybatisplus.core.mapper.BaseMapper; |
| | | import com.ruoyi.basic.entity.CoalValue; |
| | | import org.apache.ibatis.annotations.Mapper; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® Mapper æ¥å£ |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | @Mapper |
| | | public interface CoalValueMapper extends BaseMapper<CoalValue> { |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.basic.dto.CoalFieldDto; |
| | | import com.ruoyi.basic.entity.CoalField; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® æå¡ç±» |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | public interface CoalFieldService extends IService<CoalField> { |
| | | |
| | | IPage<CoalField> selectCoalFieldList(Page page, CoalFieldDto coalFieldDto); |
| | | |
| | | int addOrEditCoalField(CoalFieldDto coalFieldDto); |
| | | |
| | | int delCoalFieldByIds(Long[] ids); |
| | | |
| | | List<CoalField> selectAllList(CoalFieldDto coalFieldDto); |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.basic.dto.CoalPlanDto; |
| | | import com.ruoyi.basic.entity.CoalPlan; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | | import java.util.List; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® æå¡ç±» |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | public interface CoalPlanService extends IService<CoalPlan> { |
| | | |
| | | IPage<CoalPlan> selectCoalFieldList(Page page, CoalPlanDto coalPlanDto); |
| | | |
| | | int addOrEditCoalPlan(CoalPlanDto coalPlanDto); |
| | | |
| | | int delCoalPlanByIds(Long[] ids); |
| | | |
| | | List<CoalPlan> selectAllList(); |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | import com.ruoyi.basic.dto.CoalValueDto; |
| | | import com.ruoyi.basic.entity.CoalValue; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® æå¡ç±» |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | public interface CoalValueService extends IService<CoalValue> { |
| | | |
| | | IPage<CoalValue> selectCoalFieldList(Page page, CoalValueDto coalValueDto); |
| | | |
| | | int addOrEditCoalValue(CoalValueDto coalValueDto); |
| | | |
| | | int delCoalValueByIds(Long[] ids); |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.basic.dto.CoalFieldDto; |
| | | import com.ruoyi.basic.entity.CoalField; |
| | | import com.ruoyi.basic.mapper.CoalFieldMapper; |
| | | import com.ruoyi.basic.service.CoalFieldService; |
| | | import com.ruoyi.common.utils.bean.BeanUtils; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.util.StringUtils; |
| | | |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | import java.util.regex.Matcher; |
| | | import java.util.regex.Pattern; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® æå¡å®ç°ç±» |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | @Service |
| | | @RequiredArgsConstructor |
| | | public class CoalFieldServiceImpl extends ServiceImpl<CoalFieldMapper, CoalField> implements CoalFieldService { |
| | | |
| | | private final CoalFieldMapper coalFieldMapper; |
| | | |
| | | // æ£å表达å¼ï¼å¹é
"fieldXX" æ ¼å¼ï¼XX ä¸ºä¸¤ä½æ°å |
| | | private static final Pattern FIELD_PATTERN = Pattern.compile("^field(\\d{2})$"); |
| | | |
| | | @Override |
| | | public IPage<CoalField> selectCoalFieldList(Page page, CoalFieldDto coalFieldDto) { |
| | | LambdaQueryWrapper<CoalField> queryWrapper = new LambdaQueryWrapper<>(); |
| | | if (StringUtils.hasText(coalFieldDto.getFieldName())) { |
| | | queryWrapper.like(CoalField::getFieldName, coalFieldDto.getFieldName()); |
| | | } |
| | | queryWrapper.orderByDesc(CoalField::getCreateTime); |
| | | return coalFieldMapper.selectPage(page, queryWrapper); |
| | | } |
| | | |
| | | @Override |
| | | public int addOrEditCoalField(CoalFieldDto coalFieldDto) { |
| | | CoalField coalField = new CoalField(); |
| | | BeanUtils.copyProperties(coalFieldDto, coalField); |
| | | if (Objects.isNull(coalFieldDto.getId())) { |
| | | // æ°å¢æä½ï¼çæå¯ä¸ç fieldXX ç¼å· |
| | | String nextFieldNumber = generateNextFieldNumber(); |
| | | coalField.setFields(nextFieldNumber); |
| | | return coalFieldMapper.insert(coalField); |
| | | } else { |
| | | // æ´æ°æä½ï¼ä¸ä¿®æ¹ fieldNumber |
| | | return coalFieldMapper.updateById(coalField); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public int delCoalFieldByIds(Long[] ids) { |
| | | // æ£æ¥åæ° |
| | | if (ids == null || ids.length == 0) { |
| | | return 0; |
| | | } |
| | | // æé æ´æ°æ¡ä»¶ |
| | | UpdateWrapper<CoalField> updateWrapper = new UpdateWrapper<>(); |
| | | updateWrapper.in("id", ids) |
| | | .set("deleted", 1); // 设置 deleted 为 1 表示已å é¤ |
| | | // æ§è¡æ¹éé»è¾å é¤ |
| | | return coalFieldMapper.update(null, updateWrapper); |
| | | } |
| | | |
| | | @Override |
| | | public List<CoalField> selectAllList(CoalFieldDto coalFieldDto) { |
| | | return coalFieldMapper.selectList(null); |
| | | } |
| | | |
| | | private String generateNextFieldNumber() { |
| | | // è·åææå·²åå¨ç CoalField è®°å½ï¼å
æ¬å·²å é¤ç |
| | | LambdaQueryWrapper<CoalField> queryWrapper = new LambdaQueryWrapper<>(); |
| | | queryWrapper.in(CoalField::getDeleted, 0, 1); |
| | | List<CoalField> existingFields = coalFieldMapper.selectList(queryWrapper); |
| | | |
| | | // æåå¹¶è§£æææå·²åå¨ç fieldXX ç¼å· |
| | | int maxNumber = 0; |
| | | for (CoalField field : existingFields) { |
| | | String fields = field.getFields(); |
| | | if (fields != null) { |
| | | Matcher matcher = FIELD_PATTERN.matcher(fields); |
| | | if (matcher.matches()) { |
| | | String numberPart = matcher.group(1); |
| | | int currentNumber = Integer.parseInt(numberPart); |
| | | maxNumber = Math.max(maxNumber, currentNumber); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // çæä¸ä¸ä¸ªç¼å·ï¼æ ¼å¼ä¸ºä¸¤ä½æ°åï¼ä¸è¶³è¡¥é¶ï¼ |
| | | int nextNumber = maxNumber + 1; |
| | | return String.format("field%02d", nextNumber); |
| | | } |
| | | } |
| | |
| | | BeanUtils.copyProperties(coalInfoDto, coalInfo); |
| | | coalInfo.setMaintainerId(SecurityUtils.getUserId()); |
| | | coalInfo.setMaintenanceDate(DateUtils.getNowDate()); |
| | | if (Objects.isNull(coalInfo.getId())) { |
| | | if (Objects.isNull(coalInfoDto.getId())) { |
| | | return coalInfoMapper.insert(coalInfo); |
| | | } else { |
| | | return coalInfoMapper.updateById(coalInfo); |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.basic.dto.CoalPlanDto; |
| | | import com.ruoyi.basic.entity.CoalPlan; |
| | | import com.ruoyi.basic.mapper.CoalPlanMapper; |
| | | import com.ruoyi.basic.service.CoalPlanService; |
| | | import com.ruoyi.common.utils.bean.BeanUtils; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.List; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® æå¡å®ç°ç±» |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | @Service |
| | | @RequiredArgsConstructor |
| | | public class CoalPlanServiceImpl extends ServiceImpl<CoalPlanMapper, CoalPlan> implements CoalPlanService { |
| | | |
| | | private final CoalPlanMapper coalPlanMapper; |
| | | |
| | | @Override |
| | | public IPage<CoalPlan> selectCoalFieldList(Page page, CoalPlanDto coalPlanDto) { |
| | | LambdaQueryWrapper<CoalPlan> queryWrapper = new LambdaQueryWrapper<>(); |
| | | return coalPlanMapper.selectPage(page,queryWrapper); |
| | | } |
| | | |
| | | @Override |
| | | public int addOrEditCoalPlan(CoalPlanDto coalPlanDto) { |
| | | CoalPlan coalPlan = new CoalPlan(); |
| | | BeanUtils.copyProperties(coalPlanDto, coalPlan); |
| | | if (Objects.isNull(coalPlanDto.getId())) { |
| | | return coalPlanMapper.insert(coalPlan); |
| | | } else { |
| | | return coalPlanMapper.updateById(coalPlan); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public int delCoalPlanByIds(Long[] ids) { |
| | | // æ£æ¥åæ° |
| | | if (ids == null || ids.length == 0) { |
| | | return 0; |
| | | } |
| | | // æé æ´æ°æ¡ä»¶ |
| | | UpdateWrapper<CoalPlan> updateWrapper = new UpdateWrapper<>(); |
| | | updateWrapper.in("id", ids) |
| | | .set("deleted", 1); // 设置 deleted 为 1 表示已å é¤ |
| | | // æ§è¡æ¹éé»è¾å é¤ |
| | | return coalPlanMapper.update(null, updateWrapper); |
| | | } |
| | | |
| | | @Override |
| | | public List<CoalPlan> selectAllList() { |
| | | return coalPlanMapper.selectList(null); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.basic.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.basic.dto.CoalValueDto; |
| | | import com.ruoyi.basic.entity.CoalField; |
| | | import com.ruoyi.basic.entity.CoalValue; |
| | | import com.ruoyi.basic.mapper.CoalFieldMapper; |
| | | import com.ruoyi.basic.mapper.CoalValueMapper; |
| | | import com.ruoyi.basic.service.CoalValueService; |
| | | import com.ruoyi.common.utils.bean.BeanUtils; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.List; |
| | | import java.util.Map; |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * <p> |
| | | * ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ® æå¡å®ç°ç±» |
| | | * </p> |
| | | * |
| | | * @author ruoyi |
| | | * @since 2025-06-09 |
| | | */ |
| | | @Service |
| | | @RequiredArgsConstructor |
| | | public class CoalValueServiceImpl extends ServiceImpl<CoalValueMapper, CoalValue> implements CoalValueService { |
| | | |
| | | private final CoalValueMapper coalValueMapper; |
| | | |
| | | private final CoalFieldMapper coalFieldMapper; |
| | | |
| | | @Override |
| | | public IPage<CoalValue> selectCoalFieldList(Page page, CoalValueDto coalValueDto) { |
| | | LambdaQueryWrapper<CoalValue> queryWrapper = new LambdaQueryWrapper<>(); |
| | | return coalValueMapper.selectPage(page, queryWrapper); |
| | | } |
| | | |
| | | @Override |
| | | public int addOrEditCoalValue(CoalValueDto coalValueDto) { |
| | | CoalValue coalValue = new CoalValue(); |
| | | BeanUtils.copyProperties(coalValueDto, coalValue); |
| | | coalValue.setPlanId(coalValueDto.getPlanId()); |
| | | int i = 0; |
| | | if (Objects.isNull(coalValueDto.getId())) { |
| | | List<Map<String, String>> fieldValue = coalValueDto.getFieldValue(); |
| | | for (Map<String, String> field : fieldValue) { |
| | | for (Map.Entry<String, String> entry : field.entrySet()) { |
| | | String key = entry.getKey(); // è·å keyï¼è¿éä¼å¾å° "field01" |
| | | String value = entry.getValue(); // è·å valueï¼è¿éä¼å¾å° "99" |
| | | LambdaQueryWrapper<CoalField> queryWrapper = new LambdaQueryWrapper<>(); |
| | | CoalField coalField = coalFieldMapper.selectOne(queryWrapper.eq(CoalField::getFields, key)); |
| | | coalValue.setCoalValue(value); |
| | | coalValue.setFields(coalField.getFields()); |
| | | coalValue.setFieldName(coalField.getFieldName()); |
| | | coalValue.setId(null); |
| | | i = coalValueMapper.insert(coalValue); |
| | | } |
| | | } |
| | | return i; |
| | | } else { |
| | | return coalValueMapper.updateById(coalValue); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public int delCoalValueByIds(Long[] ids) { |
| | | return 0; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | -- å建ç
¤è´¨ä¿¡æ¯è¡¨ |
| | | CREATE TABLE coal_field |
| | | ( |
| | | id BIGSERIAL PRIMARY KEY, -- 主é®IDï¼èªå¨éå¢ |
| | | |
| | | fields VARCHAR(255) NOT NULL, --ç
¤è´¨å段 |
| | | field_name VARCHAR(255) NOT NULL, -- ç
¤è´¨æè¿° |
| | | field_description VARCHAR(255) NOT NULL, -- ç
¤è´¨æè¿° |
| | | |
| | | deleted INT NOT NULL DEFAULT 0, -- 软å 餿 å¿ï¼0=æªå é¤ï¼1=å·²å é¤ |
| | | create_by VARCHAR(255), -- åå»ºäººç¨æ·å |
| | | create_time TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP, -- å建æ¶é´ï¼é»è®¤å½åæ¶é´ |
| | | update_by VARCHAR(255), -- æåæ´æ°äººç¨æ·å |
| | | update_time TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP -- æåæ´æ°æ¶é´ï¼é»è®¤å½åæ¶é´ |
| | | ); |
| | | |
| | | -- 表注é |
| | | COMMENT ON TABLE coal_field IS 'ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ®'; |
| | | |
| | | -- åæ®µæ³¨é |
| | | COMMENT ON COLUMN coal_field.id IS '主é®ID'; |
| | | COMMENT ON COLUMN coal_field.fields IS 'ç
¤ç§ç±»åid'; |
| | | COMMENT ON COLUMN coal_field.field_name IS 'ç
¤ç§ç±»å'; |
| | | COMMENT ON COLUMN coal_field.deleted IS '软å 餿 å¿ï¼0=æªå é¤ï¼1=å·²å é¤'; |
| | | COMMENT ON COLUMN coal_field.create_by IS 'å建该记å½çç¨æ·'; |
| | | COMMENT ON COLUMN coal_field.create_time IS 'è®°å½å建æ¶é´'; |
| | | COMMENT ON COLUMN coal_field.update_by IS 'æåä¿®æ¹è¯¥è®°å½çç¨æ·'; |
| | | COMMENT ON COLUMN coal_field.update_time IS 'è®°å½æåæ´æ°æ¶é´'; |
¶Ô±ÈÐÂÎļþ |
| | |
| | | -- å建ç
¤è´¨ä¿¡æ¯è¡¨ |
| | | CREATE TABLE coal_plan |
| | | ( |
| | | id BIGSERIAL PRIMARY KEY, -- 主é®IDï¼èªå¨éå¢ |
| | | |
| | | plan VARCHAR(255) NOT NULL, --ç
¤è´¨æ¹æ¡ |
| | | coal_fields BIGINT NOT NULL, -- ç
¤è´¨æ¹æ¡å段 |
| | | |
| | | deleted INT NOT NULL DEFAULT 0, -- 软å 餿 å¿ï¼0=æªå é¤ï¼1=å·²å é¤ |
| | | create_by VARCHAR(255), -- åå»ºäººç¨æ·å |
| | | create_time TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP, -- å建æ¶é´ï¼é»è®¤å½åæ¶é´ |
| | | update_by VARCHAR(255), -- æåæ´æ°äººç¨æ·å |
| | | update_time TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP -- æåæ´æ°æ¶é´ï¼é»è®¤å½åæ¶é´ |
| | | ); |
| | | |
| | | -- 表注é |
| | | COMMENT ON TABLE coal_plan IS 'ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ®'; |
| | | |
| | | -- åæ®µæ³¨é |
| | | COMMENT ON COLUMN coal_plan.id IS '主é®ID'; |
| | | COMMENT ON COLUMN coal_plan.plan IS 'ç
¤è´¨æ¹æ¡'; |
| | | COMMENT ON COLUMN coal_plan.coal_fields IS 'ç
¤è´¨æ¹æ¡å段'; |
| | | COMMENT ON COLUMN coal_plan.deleted IS '软å 餿 å¿ï¼0=æªå é¤ï¼1=å·²å é¤'; |
| | | COMMENT ON COLUMN coal_plan.create_by IS 'å建该记å½çç¨æ·'; |
| | | COMMENT ON COLUMN coal_plan.create_time IS 'è®°å½å建æ¶é´'; |
| | | COMMENT ON COLUMN coal_plan.update_by IS 'æåä¿®æ¹è¯¥è®°å½çç¨æ·'; |
| | | COMMENT ON COLUMN coal_plan.update_time IS 'è®°å½æåæ´æ°æ¶é´'; |
¶Ô±ÈÐÂÎļþ |
| | |
| | | -- å建ç
¤è´¨ä¿¡æ¯è¡¨ |
| | | CREATE TABLE coal_value |
| | | ( |
| | | id BIGSERIAL PRIMARY KEY, -- 主é®IDï¼èªå¨éå¢ |
| | | |
| | | plan_id VARCHAR(255) NOT NULL, --å
³èç
¤è´¨æ¹æ¡ä¸»é®ID |
| | | coal_value VARCHAR(255) NOT NULL, -- åæ®µå¼ |
| | | fields VARCHAR(255) NOT NULL, -- åæ®µ |
| | | field_name VARCHAR(255) NOT NULL, -- åæ®µå |
| | | |
| | | deleted INT NOT NULL DEFAULT 0, -- 软å 餿 å¿ï¼0=æªå é¤ï¼1=å·²å é¤ |
| | | create_by VARCHAR(255), -- åå»ºäººç¨æ·å |
| | | create_time TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP, -- å建æ¶é´ï¼é»è®¤å½åæ¶é´ |
| | | update_by VARCHAR(255), -- æåæ´æ°äººç¨æ·å |
| | | update_time TIMESTAMP WITH TIME ZONE DEFAULT CURRENT_TIMESTAMP -- æåæ´æ°æ¶é´ï¼é»è®¤å½åæ¶é´ |
| | | ); |
| | | |
| | | -- 表注é |
| | | COMMENT ON TABLE coal_value IS 'ç
¤è´¨ä¿¡æ¯è¡¨ï¼è®°å½ç
¤çè´¨éæ£æµç¸å
³æ°æ®'; |
| | | |
| | | -- åæ®µæ³¨é |
| | | COMMENT ON COLUMN coal_value.id IS '主é®ID'; |
| | | COMMENT ON COLUMN coal_value.plan_id IS 'å
³èç
¤è´¨æ¹æ¡ä¸»é®ID'; |
| | | COMMENT ON COLUMN coal_value.coal_value IS 'åæ®µå¼'; |
| | | COMMENT ON COLUMN coal_value.fields IS 'åæ®µ'; |
| | | COMMENT ON COLUMN coal_value.field_name IS 'åæ®µå'; |
| | | COMMENT ON COLUMN coal_value.deleted IS '软å 餿 å¿ï¼0=æªå é¤ï¼1=å·²å é¤'; |
| | | COMMENT ON COLUMN coal_value.create_by IS 'å建该记å½çç¨æ·'; |
| | | COMMENT ON COLUMN coal_value.create_time IS 'è®°å½å建æ¶é´'; |
| | | COMMENT ON COLUMN coal_value.update_by IS 'æåä¿®æ¹è¯¥è®°å½çç¨æ·'; |
| | | COMMENT ON COLUMN coal_value.update_time IS 'è®°å½æåæ´æ°æ¶é´'; |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?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.ruoyi.basic.mapper.CoalFieldMapper"> |
| | | |
| | | <!-- éç¨æ¥è¯¢æ å°ç»æ --> |
| | | <resultMap id="BaseResultMap" type="com.ruoyi.basic.entity.CoalField"> |
| | | <id column="id" property="id"/> |
| | | <result column="deleted" property="deleted"/> |
| | | <result column="create_by" property="createBy"/> |
| | | <result column="create_time" property="createTime"/> |
| | | <result column="update_by" property="updateBy"/> |
| | | <result column="update_time" property="updateTime"/> |
| | | <result column="fields" property="fields"/> |
| | | <result column="field_name" property="fieldName"/> |
| | | <result column="field_description" property="fieldDescription"/> |
| | | </resultMap> |
| | | |
| | | <!-- éç¨æ¥è¯¢ç»æå --> |
| | | <sql id="Base_Column_List"> |
| | | deleted, |
| | | create_by, |
| | | create_time, |
| | | update_by, |
| | | update_time, |
| | | id, fields, field_name, field_description |
| | | </sql> |
| | | |
| | | </mapper> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?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.ruoyi.basic.mapper.CoalPlanMapper"> |
| | | |
| | | <!-- éç¨æ¥è¯¢æ å°ç»æ --> |
| | | <resultMap id="BaseResultMap" type="com.ruoyi.basic.entity.CoalPlan"> |
| | | <id column="id" property="id" /> |
| | | <result column="deleted" property="deleted" /> |
| | | <result column="create_by" property="createBy" /> |
| | | <result column="create_time" property="createTime" /> |
| | | <result column="update_by" property="updateBy" /> |
| | | <result column="update_time" property="updateTime" /> |
| | | <result column="plan" property="plan" /> |
| | | <result column="coal_field_id" property="coalFieldId" /> |
| | | <result column="field_names" property="fieldNames" /> |
| | | </resultMap> |
| | | |
| | | <!-- éç¨æ¥è¯¢ç»æå --> |
| | | <sql id="Base_Column_List"> |
| | | deleted, |
| | | create_by, |
| | | create_time, |
| | | update_by, |
| | | update_time, |
| | | id, plan, coal_field_id, field_names |
| | | </sql> |
| | | |
| | | </mapper> |
¶Ô±ÈÐÂÎļþ |
| | |
| | | <?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.ruoyi.basic.mapper.CoalValueMapper"> |
| | | |
| | | <!-- éç¨æ¥è¯¢æ å°ç»æ --> |
| | | <resultMap id="BaseResultMap" type="com.ruoyi.basic.entity.CoalValue"> |
| | | <id column="id" property="id" /> |
| | | <result column="deleted" property="deleted" /> |
| | | <result column="create_by" property="createBy" /> |
| | | <result column="create_time" property="createTime" /> |
| | | <result column="update_by" property="updateBy" /> |
| | | <result column="update_time" property="updateTime" /> |
| | | <result column="fields" property="fields" /> |
| | | <result column="field_name" property="fieldName" /> |
| | | <result column="field_value" property="fieldValue" /> |
| | | </resultMap> |
| | | |
| | | <!-- éç¨æ¥è¯¢ç»æå --> |
| | | <sql id="Base_Column_List"> |
| | | deleted, |
| | | create_by, |
| | | create_time, |
| | | update_by, |
| | | update_time, |
| | | id, fields, field_name, field_value |
| | | </sql> |
| | | |
| | | </mapper> |
| | |
| | | <groupId>org.flywaydb</groupId> |
| | | <artifactId>flyway-database-postgresql</artifactId> |
| | | </dependency> |
| | | <dependency> |
| | | <groupId>com.ruoyi</groupId> |
| | | <artifactId>basic-server</artifactId> |
| | | </dependency> |
| | | </dependencies> |
| | | |
| | | <properties> |
| | |
| | | package com.ruoyi.business.controller; |
| | | |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.business.dto.OfficialInventoryDto; |
| | | import com.ruoyi.business.entity.OfficialInventory; |
| | | import com.ruoyi.business.service.OfficialInventoryService; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springframework.web.bind.annotation.GetMapping; |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | |
| | | /** |
| | |
| | | |
| | | @RestController |
| | | @AllArgsConstructor |
| | | @RequestMapping("/business/officialInventory") |
| | | @RequestMapping("/officialInventory") |
| | | public class OfficialInventoryController { |
| | | |
| | | private OfficialInventoryService officialInventoryService; |
| | | |
| | | /** |
| | | * æ£å¼åºåºè¡¨æ¥è¯¢ |
| | | */ |
| | | @GetMapping("/list") |
| | | public R<IPage<OfficialInventory>> list(Page page, OfficialInventoryDto officialInventoryDto) { |
| | | IPage<OfficialInventory> list = officialInventoryService.selectOfficialInventoryList(page,officialInventoryDto); |
| | | return R.ok(list); |
| | | } |
| | | |
| | | } |
| | |
| | | package com.ruoyi.business.controller; |
| | | |
| | | import org.springframework.web.bind.annotation.RequestMapping; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.business.dto.PendingInventoryDto; |
| | | import com.ruoyi.business.entity.PendingInventory; |
| | | import com.ruoyi.business.service.PendingInventoryService; |
| | | import com.ruoyi.common.core.domain.R; |
| | | import lombok.AllArgsConstructor; |
| | | import org.springframework.web.bind.annotation.RestController; |
| | | import org.springframework.web.bind.annotation.*; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | |
| | | @RestController |
| | | @AllArgsConstructor |
| | | @RequestMapping("/business/pendingInventory") |
| | | @RequestMapping("/pendingInventory") |
| | | public class PendingInventoryController { |
| | | |
| | | private PendingInventoryService pendingInventoryService; |
| | | |
| | | /** |
| | | * å¾
å
¥åºè¡¨æ¥è¯¢ |
| | | */ |
| | | @GetMapping("/list") |
| | | public R<IPage<PendingInventory>> list(Page page, PendingInventoryDto pendingInventoryDto) { |
| | | IPage<PendingInventory> list = pendingInventoryService.selectPendingInventoryList(page,pendingInventoryDto); |
| | | return R.ok(list); |
| | | } |
| | | |
| | | /** |
| | | * æ°å¢ä¿®æ¹ |
| | | */ |
| | | @PostMapping("/addOrEditPending") |
| | | public R addOrEditPending(@RequestBody PendingInventoryDto pendingInventoryDto) { |
| | | return R.ok(pendingInventoryService.addOrEditPending(pendingInventoryDto)); |
| | | } |
| | | |
| | | /** |
| | | * å é¤ |
| | | */ |
| | | @DeleteMapping("/delPending") |
| | | public R remove(@RequestBody Long[] ids) { |
| | | return R.ok(pendingInventoryService.delByIds(ids)); |
| | | } |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.business.dto; |
| | | |
| | | import com.ruoyi.business.entity.OfficialInventory; |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class OfficialInventoryDto extends OfficialInventory { |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | package com.ruoyi.business.dto; |
| | | |
| | | import com.ruoyi.business.entity.PendingInventory; |
| | | import lombok.Data; |
| | | |
| | | @Data |
| | | public class PendingInventoryDto extends PendingInventory { |
| | | } |
| | |
| | | /** |
| | | * ç
¤ç§ |
| | | */ |
| | | @TableField(value = "coal_type") |
| | | private String coalType; |
| | | @TableField(value = "coal") |
| | | private String coal; |
| | | /** |
| | | * åä½ |
| | | */ |
| | |
| | | /** |
| | | * ç»è®°äºº |
| | | */ |
| | | @TableField(value = "registrant") |
| | | private String registrant; |
| | | @TableField(value = "registrant_id") |
| | | private String registrantId; |
| | | /** |
| | | * ç»è®°æ¶é´ |
| | | */ |
| | |
| | | package com.ruoyi.business.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.business.dto.OfficialInventoryDto; |
| | | import com.ruoyi.business.entity.OfficialInventory; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | |
| | | */ |
| | | public interface OfficialInventoryService extends IService<OfficialInventory> { |
| | | |
| | | IPage<OfficialInventory> selectOfficialInventoryList(Page page, OfficialInventoryDto officialInventoryDto); |
| | | } |
| | |
| | | package com.ruoyi.business.service; |
| | | |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.business.dto.PendingInventoryDto; |
| | | import com.ruoyi.business.entity.PendingInventory; |
| | | import com.baomidou.mybatisplus.extension.service.IService; |
| | | |
| | |
| | | */ |
| | | public interface PendingInventoryService extends IService<PendingInventory> { |
| | | |
| | | IPage<PendingInventory> selectPendingInventoryList(Page page, PendingInventoryDto pendingInventoryDto); |
| | | |
| | | int addOrEditPending(PendingInventoryDto pendingInventoryDto); |
| | | |
| | | int delByIds(Long[] ids); |
| | | } |
| | |
| | | package com.ruoyi.business.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.ruoyi.business.dto.OfficialInventoryDto; |
| | | import com.ruoyi.business.entity.OfficialInventory; |
| | | import com.ruoyi.business.mapper.OfficialInventoryMapper; |
| | | import com.ruoyi.business.service.OfficialInventoryService; |
| | |
| | | @RequiredArgsConstructor |
| | | public class OfficialInventoryServiceImpl extends ServiceImpl<OfficialInventoryMapper, OfficialInventory> implements OfficialInventoryService { |
| | | |
| | | private final OfficialInventoryMapper officialInventoryMapper; |
| | | |
| | | @Override |
| | | public IPage<OfficialInventory> selectOfficialInventoryList(Page page, OfficialInventoryDto officialInventoryDto) { |
| | | LambdaQueryWrapper<OfficialInventory> queryWrapper = new LambdaQueryWrapper<>(); |
| | | return officialInventoryMapper.selectPage(page, queryWrapper); |
| | | } |
| | | } |
| | |
| | | package com.ruoyi.business.service.impl; |
| | | |
| | | import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper; |
| | | import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper; |
| | | import com.baomidou.mybatisplus.core.metadata.IPage; |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.basic.mapper.CoalFieldMapper; |
| | | import com.ruoyi.basic.mapper.CoalValueMapper; |
| | | import com.ruoyi.business.dto.PendingInventoryDto; |
| | | import com.ruoyi.business.entity.PendingInventory; |
| | | import com.ruoyi.business.mapper.PendingInventoryMapper; |
| | | import com.ruoyi.business.service.PendingInventoryService; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import org.springframework.stereotype.Service; |
| | | import com.ruoyi.common.utils.bean.BeanUtils; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.springframework.stereotype.Service; |
| | | |
| | | import java.util.Objects; |
| | | |
| | | /** |
| | | * <p> |
| | |
| | | @RequiredArgsConstructor |
| | | public class PendingInventoryServiceImpl extends ServiceImpl<PendingInventoryMapper, PendingInventory> implements PendingInventoryService { |
| | | |
| | | private final PendingInventoryMapper pendingInventoryMapper; |
| | | |
| | | private final CoalValueMapper coalValueMapper; |
| | | |
| | | private final CoalFieldMapper coalFieldMapper; |
| | | |
| | | @Override |
| | | public IPage<PendingInventory> selectPendingInventoryList(Page page, PendingInventoryDto pendingInventoryDto) { |
| | | LambdaQueryWrapper<PendingInventory> queryWrapper = new LambdaQueryWrapper<>(); |
| | | queryWrapper.orderByDesc(PendingInventory::getCreateTime); |
| | | return pendingInventoryMapper.selectPage(page, queryWrapper); |
| | | } |
| | | |
| | | @Override |
| | | public int addOrEditPending(PendingInventoryDto pendingInventoryDto) { |
| | | PendingInventory pendingInventory = new PendingInventory(); |
| | | BeanUtils.copyProperties(pendingInventoryDto, pendingInventory); |
| | | if (Objects.isNull(pendingInventoryDto.getId())) { |
| | | return pendingInventoryMapper.insert(pendingInventory); |
| | | } else { |
| | | return pendingInventoryMapper.updateById(pendingInventory); |
| | | } |
| | | } |
| | | |
| | | @Override |
| | | public int delByIds(Long[] ids) { |
| | | // æ£æ¥åæ° |
| | | if (ids == null || ids.length == 0) { |
| | | return 0; |
| | | } |
| | | // æé æ´æ°æ¡ä»¶ |
| | | UpdateWrapper<PendingInventory> updateWrapper = new UpdateWrapper<>(); |
| | | updateWrapper.in("id", ids) |
| | | .set("deleted", 1); // 设置 deleted 为 1 表示已å é¤ |
| | | // æ§è¡æ¹éé»è¾å é¤ |
| | | return pendingInventoryMapper.update(null, updateWrapper); |
| | | } |
| | | } |
| | |
| | | import com.baomidou.mybatisplus.extension.plugins.pagination.Page; |
| | | import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl; |
| | | import com.ruoyi.business.dto.PurchaseRegistrationDto; |
| | | import com.ruoyi.business.entity.PendingInventory; |
| | | import com.ruoyi.business.entity.PurchaseRegistration; |
| | | import com.ruoyi.business.mapper.PendingInventoryMapper; |
| | | import com.ruoyi.business.mapper.PurchaseRegistrationMapper; |
| | | import com.ruoyi.business.service.PurchaseRegistrationService; |
| | | import com.ruoyi.common.utils.bean.BeanUtils; |
| | | import lombok.RequiredArgsConstructor; |
| | | import org.springframework.stereotype.Service; |
| | | import org.springframework.transaction.annotation.Transactional; |
| | | import org.springframework.util.Assert; |
| | | |
| | | import java.util.Objects; |
| | | |
| | |
| | | |
| | | private final PurchaseRegistrationMapper purchaseRegistrationMapper; |
| | | |
| | | private final PendingInventoryMapper pendingInventoryMapper; |
| | | |
| | | @Override |
| | | public IPage<PurchaseRegistration> selectPurchaseRegistrationList(Page page, PurchaseRegistrationDto purchaseRegistrationDto) { |
| | | LambdaQueryWrapper<PurchaseRegistration> queryWrapper = new LambdaQueryWrapper<>(); |
| | |
| | | } |
| | | |
| | | @Override |
| | | @Transactional(rollbackFor = Exception.class) |
| | | public int addOrEditPR(PurchaseRegistrationDto purchaseRegistrationDto) { |
| | | // åæ°æ ¡éª |
| | | Assert.notNull(purchaseRegistrationDto, "éè´ç»è®°ä¿¡æ¯ä¸è½ä¸ºç©º"); |
| | | |
| | | // å建éè´ç»è®°å®ä½å¹¶å¤å¶å±æ§ |
| | | PurchaseRegistration purchaseRegistration = new PurchaseRegistration(); |
| | | BeanUtils.copyProperties(purchaseRegistrationDto,purchaseRegistration); |
| | | |
| | | if (Objects.isNull(purchaseRegistrationDto.getId())) { |
| | | return purchaseRegistrationMapper.insert(purchaseRegistration); |
| | | // æ°å¢éè´ç»è®° |
| | | int insertCount = purchaseRegistrationMapper.insert(purchaseRegistration); |
| | | if (insertCount > 0) { |
| | | // éè´ç»è®°æåï¼åæ¥å建å¾
å
¥åºè®°å½ |
| | | PendingInventory pendingInventory = createPendingInventory(purchaseRegistration); |
| | | return pendingInventoryMapper.insert(pendingInventory); |
| | | } |
| | | return insertCount; |
| | | } else { |
| | | // æ´æ°éè´ç»è®° |
| | | return purchaseRegistrationMapper.updateById(purchaseRegistration); |
| | | } |
| | | } |
| | | |
| | | /** |
| | | * æ ¹æ®éè´ç»è®°ä¿¡æ¯å建å¾
å
¥åºè®°å½ |
| | | * @param purchaseRegistration éè´ç»è®°å®ä½ |
| | | * @return å¾
å
¥åºå®ä½ |
| | | */ |
| | | private PendingInventory createPendingInventory(PurchaseRegistration purchaseRegistration) { |
| | | PendingInventory pendingInventory = new PendingInventory(); |
| | | // å¤å¶åºæ¬å±æ§ |
| | | BeanUtils.copyProperties(purchaseRegistration, pendingInventory); |
| | | |
| | | // 设置å¾
å
¥åºè®°å½ç¹æç屿§ï¼å¦ææï¼ |
| | | // pendingInventory.setStatus(InventoryStatus.PENDING); |
| | | // pendingInventory.setCreateTime(LocalDateTime.now()); |
| | | |
| | | return pendingInventory; |
| | | } |
| | | |
| | | @Override |
| | | public int delByIds(Long[] ids) { |
| | | // æ£æ¥åæ° |
| | |
| | | <result column="update_by" property="updateBy" /> |
| | | <result column="update_time" property="updateTime" /> |
| | | <result column="supplier_name" property="supplierName" /> |
| | | <result column="coal_type" property="coalType" /> |
| | | <result column="coal" property="coal" /> |
| | | <result column="unit" property="unit" /> |
| | | <result column="inventory_quantity" property="inventoryQuantity" /> |
| | | <result column="price_including_tax" property="priceIncludingTax" /> |
| | | <result column="total_price_including_tax" property="totalPriceIncludingTax" /> |
| | | <result column="cost_per_unit" property="costPerUnit" /> |
| | | <result column="registrant" property="registrant" /> |
| | | <result column="registrant_id" property="registrantId" /> |
| | | <result column="registration_time" property="registrationTime" /> |
| | | </resultMap> |
| | | |