lyh
2025-03-07 b864148d2a9afd5e1627b761da923cca8f8dfbd2
修改产品结构树新增删除同步结构树表,新增刀具信息与设备类
已添加12个文件
已修改8个文件
796 ■■■■■ 文件已修改
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/controller/CutterController.java 67 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/controller/DeviceTypeController.java 73 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/controller/ProcessSpecVersionController.java 15 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/entity/Cutter.java 82 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/entity/DeviceType.java 65 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/CutterMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/DeviceTypeMapper.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/xml/CutterMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/xml/DeviceTypeMapper.xml 4 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/ICutterService.java 37 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/IDeviceTypeService.java 45 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/IProcessSpecVersionService.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ComponentInfoSeServiceImpl.java 17 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/CutterServiceImpl.java 120 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/DeviceTypeServiceImpl.java 134 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/PartsInfoServiceImpl.java 22 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessSpecVersionServiceImpl.java 25 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessStreamServiceImpl.java 29 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductInfoServiceImpl.java 16 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/WorkStepServiceImpl.java 19 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/controller/CutterController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,67 @@
package org.jeecg.modules.dnc.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.modules.dnc.entity.Cutter;
import org.jeecg.modules.dnc.service.ICutterService;
import org.springframework.web.bind.annotation.*;
@Slf4j
@Api(tags = "刀具信息")
@RestController
@RequestMapping("/nc/cutter")
public class CutterController extends JeecgController<Cutter, ICutterService> {
//    /**
//     * æ ¹æ®ä¸šåŠ¡id查询刀具列表
//     * @param businessId
//     * @param pageNo
//     * @param pageSize
//     * @return
//     */
//    @GetMapping("/getByBusinessId")
//    public Result<?> getByBusinessId(String businessId,Integer pageNo,Integer pageSize){
//        return Result.OK(service.getByBusinessId(businessId,pageNo,pageSize));
//    }
    /**
     * æ–°å¢žåˆ€å…·ä¿¡æ¯
     * @param cutter
     * @return
     */
    @AutoLog(value = "刀具信息-新增刀具信息")
    @ApiOperation(value = "刀具信息-新增刀具信息", notes = "刀具信息-新增刀具信息")
    @PostMapping("/add")
    public Result<?> add(@RequestBody Cutter cutter){
        return Result.OK(service.add(cutter));
    }
    /**
     * ç¼–辑刀具信息
     * @param cutter
     * @return
     */
    @AutoLog(value = "刀具信息-编辑刀具信息")
    @ApiOperation(value = "刀具信息-编辑刀具信息", notes = "刀具信息-编辑刀具信息")
    @PutMapping("/edit")
    public Result<?> edit(@RequestBody Cutter cutter){
        return Result.OK(service.edit(cutter));
    }
    /**
     * æ ¹æ®id删除刀具信息
     * @param id
     * @return
     */
    @AutoLog(value = "刀具信息-根据id删除刀具信息")
    @ApiOperation(value = "刀具信息-根据id删除刀具信息", notes = "刀具信息-根据id删除刀具信息")
    @DeleteMapping("/delete")
    public Result<?> delete(@RequestBody String id){
        return Result.OK(service.delete(id));
    }
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/controller/DeviceTypeController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,73 @@
package org.jeecg.modules.dnc.controller;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.modules.dnc.entity.DeviceType;
import org.jeecg.modules.dnc.service.IDeviceTypeService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.GetMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
@Slf4j
@Api(tags = "设备类信息")
@RestController
@RequestMapping("/nc/deviceType")
public class DeviceTypeController extends JeecgController<DeviceType, IDeviceTypeService> {
    @Autowired
    private IDeviceTypeService deviceTypeService;
    /**
     * æ ¹æ®ä¸šåŠ¡id查询设备类列表
     * @param businessId
     * @param type
     * @return
     */
    @AutoLog(value = "设备类信息-根据业务id查询设备类列表")
    @ApiOperation(value = "设备类信息-根据业务id查询设备类列表", notes = "设备类信息-根据业务id查询设备类列表")
    @GetMapping("/getByBusinessId")
    public Result<?> getByBusinessId(String businessId,String type){
        return deviceTypeService.getByBusinessId(businessId,type);
    }
    /**
     * æ–°å¢žè®¾å¤‡ç±»
     * @param deviceType
     * @return
     */
    @AutoLog(value = "设备类信息-新增设备类")
    @ApiOperation(value = "设备类信息-新增设备类", notes = "设备类信息-新增设备类")
    @GetMapping("/add")
    public Result<?> add(DeviceType deviceType){
        return Result.OK(deviceTypeService.add(deviceType));
    }
    /**
     * ç¼–辑设备类
     * @param deviceType
     * @return
     */
    @AutoLog(value = "设备类信息-编辑设备类")
    @ApiOperation(value = "设备类信息-编辑设备类", notes = "设备类信息-编辑设备类")
    @GetMapping("/edit")
    public Result<?> edit(DeviceType deviceType){
        return Result.OK(deviceTypeService.edit(deviceType));
    }
    /**
     * æ ¹æ®id删除设备类
     * @param id
     * @return
     */
    @AutoLog(value = "设备类信息-根据id删除设备类")
    @ApiOperation(value = "设备类信息-根据id删除设备类", notes = "设备类信息-根据id删除设备类")
    @GetMapping("/delete")
    public Result<?> delete(@RequestBody String id){
        return Result.OK(deviceTypeService.delete(id));
    }
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/controller/ProcessSpecVersionController.java
@@ -3,14 +3,13 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import lombok.extern.slf4j.Slf4j;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.aspect.annotation.AutoLog;
import org.jeecg.common.system.base.controller.JeecgController;
import org.jeecg.modules.dnc.entity.ProcessSpecVersion;
import org.jeecg.modules.dnc.entity.WorkStep;
import org.jeecg.modules.dnc.response.CommonCode;
import org.jeecg.modules.dnc.response.ResponseResult;
import org.jeecg.modules.dnc.service.IProcessSpecVersionService;
import org.jeecg.modules.dnc.service.IWorkStepService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -23,6 +22,18 @@
    @Autowired
    private IProcessSpecVersionService processSpecVersionService;
    /**
     * æ ¹æ®å·¥è‰ºè§„程id查询,下级工序工步数量
     * @param processSpecId
     * @return
     */
    @AutoLog(value = "工艺规程版本表-根据工艺规程id查询,下级工序工步数量")
    @ApiOperation(value = "工艺规程版本表-根据工艺规程id查询,下级工序工步数量", notes = "工艺规程版本表-根据工艺规程id查询,下级工序工步数量")
    @GetMapping("/getWorkStepCountByProcessSpecId/{processSpecId}")
    public Result<?> getWorkStepCountByProcessSpecId(@PathVariable("processSpecId") String processSpecId) {
        return processSpecVersionService.getProcessSpecVersionCount(processSpecId);
    }
    @AutoLog(value = "工艺规程版本表-新增工艺规程版本信息")
    @ApiOperation(value = "工艺规程版本表-新增工艺规程版本信息", notes = "工艺规程版本表-新增工艺规程版本信息")
    @PostMapping("/add")
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/entity/Cutter.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,82 @@
package org.jeecg.modules.dnc.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import io.swagger.annotations.Api;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.jeecg.common.aspect.annotation.Dict;
import java.io.Serializable;
import java.util.Date;
@Data
@NoArgsConstructor
@TableName(value = "nc_cutter")
@Api(value = "刀具")
public class Cutter implements Serializable {
    private static final long serialVersionUID = 1529244980533421687L;
    private String id;
    //工序或工步id
    @TableField(value = "process_step_id")
    private String processStepId;
    //工序/工步  1工序 2工步
    @TableField(value = "type")
    private Integer type;
    //刀具名称
    @TableField(value = "cutter_name")
    private String cutterName;
    //刀具编号
    @TableField(value = "cutter_code")
    private String cutterCode;
    //刀具类型
    @TableField(value = "cutter_type")
    private String cutterType;
    //额定寿命
    @TableField(value = "lifetime")
    private String lifetime;
    //刀位
    @TableField(value = "cutter_position")
    private String cutterSpacing;
    //数量
    @TableField(value = "quantity")
    private Integer quantity;
    //描述
    @TableField(value = "description")
    private String description;
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @TableField(value = "update_time", fill = FieldFill.INSERT)
    private Date updateTime;
    @JsonIgnore
    @TableField(value = "create_by", select = false, fill = FieldFill.INSERT)
    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
    private String createBy;
    @JsonIgnore
    @TableField(value = "update_by", select = false, fill = FieldFill.UPDATE)
    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
    private String updateBy;
    @JsonIgnore
    @TableField(value = "delete_flag", select = false)
    private Integer deleteFlag = 0;
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/entity/DeviceType.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,65 @@
package org.jeecg.modules.dnc.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonIgnore;
import lombok.Data;
import lombok.NoArgsConstructor;
import org.jeecg.common.aspect.annotation.Dict;
import org.jeecg.modules.mdc.entity.MdcEquipment;
import java.io.Serializable;
import java.util.Date;
import java.util.List;
@Data
@NoArgsConstructor
@TableName(value = "nc_device_type")
public class DeviceType implements Serializable {
    private static final long serialVersionUID = 1529244980533421687L;
    private String id;
    //工序或工步id
    @TableField(value = "process_step_id")
    private String processStepId;
    //工序/工步  1工序 2工步
    @TableField(value = "type")
    private Integer type;
    //车间id
    @TableField(value = "production_id")
    private String productionId;
    //设备类型
    @TableField(value = "device_type")
    private Integer deviceType;
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @TableField(value = "create_time", fill = FieldFill.INSERT)
    private Date createTime;
    @JsonFormat(pattern="yyyy-MM-dd HH:mm:ss",timezone="GMT+8")
    @TableField(value = "update_time", fill = FieldFill.INSERT)
    private Date updateTime;
    @JsonIgnore
    @TableField(value = "create_by", select = false, fill = FieldFill.INSERT)
    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
    private String createBy;
    @JsonIgnore
    @TableField(value = "update_by", select = false, fill = FieldFill.UPDATE)
    @Dict(dictTable = "sys_user", dicCode = "username", dicText = "realname")
    private String updateBy;
    @JsonIgnore
    @TableField(value = "delete_flag", select = false)
    private Integer deleteFlag = 0;
    private transient List<MdcEquipment> equipmentList;
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/CutterMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
package org.jeecg.modules.dnc.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.dnc.entity.Cutter;
public interface CutterMapper extends BaseMapper<Cutter> {
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/DeviceTypeMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,7 @@
package org.jeecg.modules.dnc.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import org.jeecg.modules.dnc.entity.DeviceType;
public interface DeviceTypeMapper extends BaseMapper<DeviceType> {
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/xml/CutterMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,4 @@
<?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="org.jeecg.modules.dnc.mapper.CutterMapper">
</mapper>
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/mapper/xml/DeviceTypeMapper.xml
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,4 @@
<?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="org.jeecg.modules.dnc.mapper.DeviceTypeMapper">
</mapper>
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/ICutterService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,37 @@
package org.jeecg.modules.dnc.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.dnc.entity.Cutter;
public interface ICutterService extends IService<Cutter> {
    /**
     * æ–°å¢žåˆ€å…·ä¿¡æ¯
     * @param cutter
     * @return
     */
    Result<?> add(Cutter cutter);
    /**
     * ç¼–辑刀具信息
     * @param cutter
     * @return
     */
    Result<?> edit(Cutter cutter);
    /**
     * åˆ é™¤åˆ€å…·ä¿¡æ¯
     * @param id
     * @return
     */
    Result<?> delete(String id);
    /**
     * èŽ·å–ä¸šåŠ¡id下的刀具列表
     * @param cutter
     * @return
     */
    Result<?> query(Cutter cutter, Integer pageNo, Integer pageSize);
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/IDeviceTypeService.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,45 @@
package org.jeecg.modules.dnc.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.dnc.entity.DeviceType;
import java.util.List;
public interface IDeviceTypeService extends IService<DeviceType> {
    /**
     * æ–°å¢žè®¾å¤‡ç±»
     * @param deviceType
     * @return
     */
    Result<?> add(DeviceType deviceType);
    /**
     * ç¼–辑设备类
     * @param deviceType
     * @return
     */
    Result<?> edit(DeviceType deviceType);
    /**
     * æ ¹æ®id删除设备类
     * @param id
     * @return
     */
    Result<?> delete(String id);
    /**
     * æ ¹æ®è®¾å¤‡ç±»ä¿¡æ¯æŸ¥è¯¢å¯¹åº”设备类
     * @param deviceTypes
     * @return
     */
    Result<?> getByDeviceType(List<DeviceType> deviceTypes);
    /**
     * æ ¹æ®ä¸šåŠ¡id查询设备类列表
     * @param businessId
     * @param type
     * @return
     */
    Result<?> getByBusinessId(String businessId, String type);
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/IProcessSpecVersionService.java
@@ -1,7 +1,7 @@
package org.jeecg.modules.dnc.service;
import com.baomidou.mybatisplus.extension.service.IService;
import org.jeecg.modules.dnc.entity.PartsInfo;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.dnc.entity.ProcessSpecVersion;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.entity.SysUser;
@@ -102,4 +102,10 @@
     */
    boolean assignRemoveDepart(ProcessSpecVersion processSpecVersion, Collection<MdcProduction> departmentList);
    /**
     * æ ¹æ®å·¥è‰ºè§„程id查询,下级工序工步数量
     * @param processSpecId
     * @return
     */
    Result<?> getProcessSpecVersionCount(String processSpecId);
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ComponentInfoSeServiceImpl.java
@@ -1,6 +1,5 @@
package org.jeecg.modules.dnc.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -8,7 +7,7 @@
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.dnc.dto.ComponentExt;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.dnc.exception.ExceptionCast;
import org.jeecg.modules.dnc.mapper.ComponentInfoMapper;
import org.jeecg.modules.dnc.mapper.ProductInfoMapper;
@@ -16,14 +15,10 @@
import org.jeecg.modules.dnc.response.ComponentInfoCode;
import org.jeecg.modules.dnc.response.ProductInfoCode;
import org.jeecg.modules.dnc.response.UcenterCode;
import org.jeecg.modules.dnc.service.*;
import org.jeecg.modules.dnc.ucenter.Department;
import org.jeecg.modules.dnc.utils.ValidateUtil;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.entity.SysUser;
import org.jeecg.modules.dnc.entity.ComponentInfo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
@@ -50,7 +45,7 @@
    @Autowired
    private IProcessStreamService processStreamService;
    @Autowired
    private IDocInfoService docInfoService;
    private IProductMixService productMixService;
    @Autowired
    private IDocRelativeService iDocRelativeService;
    @Autowired
@@ -125,7 +120,10 @@
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
        //去除默认新增工序,转为手动添加
        //添加结构树
        ProductMix productMix = new ProductMix(Long.parseLong(componentInfo.getComponentId()),Long.parseLong(productInfo.getProductId())
                ,componentInfo.getComponentName(),componentInfo.getComponentCode(),"2");
        productMixService.save(productMix);
        //添加权限
        PermissionStreamNew stream = new PermissionStreamNew();
        stream.setUserId(userId);
@@ -278,6 +276,9 @@
        b = permissionStreamNewService.deletePermissionStreamNewByBusinessId(componentInfo.getComponentId(),"2","1");
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
        b = productMixService.removeById(id);
        if (!b)
            ExceptionCast.cast(CommonCode.FAIL);
        return super.removeById(id);
    }
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/CutterServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,120 @@
package org.jeecg.modules.dnc.service.impl;
import cn.hutool.core.util.StrUtil;
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.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.dnc.entity.Cutter;
import org.jeecg.modules.dnc.exception.ExceptionCast;
import org.jeecg.modules.dnc.mapper.CutterMapper;
import org.jeecg.modules.dnc.response.CommonCode;
import org.jeecg.modules.dnc.response.ProcessInfoCode;
import org.jeecg.modules.dnc.service.ICutterService;
import org.jeecg.modules.dnc.utils.ValidateUtil;
import org.springframework.stereotype.Service;
import java.util.List;
@Service
public class CutterServiceImpl extends ServiceImpl<CutterMapper, Cutter> implements ICutterService {
    /**
     * æ–°å¢žåˆ€å…·ä¿¡æ¯
     * @param cutter
     * @return
     */
    @Override
    public Result<?> add(Cutter cutter){
        if(cutter == null)
            ExceptionCast.cast(CommonCode.INVALID_PARAM);
        if(!ValidateUtil.validateString(cutter.getProcessStepId()))
            Result.error("无效的刀具");
        boolean b =this.checkCutterNo(cutter);
        if(!b)
            return Result.error("已存在相同的刀具编号");
        boolean save = this.save(cutter);
        if(save){
            return Result.OK("添加刀具成功");
        }
        return Result.error("新增刀具失败");
    }
    /**
     * ç¼–辑刀具信息
     * @param cutter
     * @return
     */
    @Override
    public Result<?> edit(Cutter cutter){
        if(cutter == null)
            ExceptionCast.cast(CommonCode.INVALID_PARAM);
        if(!ValidateUtil.validateString(cutter.getCutterName()))
            ExceptionCast.cast(ProcessInfoCode.PROCESS_NAME_NONE);
        Cutter en = super.getById(cutter.getId());
        if(en == null)
            ExceptionCast.cast(ProcessInfoCode.WORKSTEP_NOT_EXIST);
        boolean b =this.checkCutterNo(cutter);
        if(!b)
            return Result.error("已存在相同的刀具编号");
        boolean save = this.updateById(cutter);
        if(save){
            return Result.OK("刀具信息编辑成功");
        }
        return Result.OK("刀具信息编辑失败");
    }
    /**
     * åˆ é™¤åˆ€å…·ä¿¡æ¯
     * @param id
     * @return
     */
    @Override
    public Result<?> delete(String id){
        if(!ValidateUtil.validateString(id))
            ExceptionCast.cast(CommonCode.INVALID_PARAM);
        Cutter en = super.getById(id);
        if(en == null)
            return Result.error("无效的刀具");
        boolean b=super.removeById(id);
        if(!b) {
            return Result.error("删除刀具失败");
        }
        return Result.OK("删除刀具成功");
    }
    /**
     * éªŒè¯åŒç»“构下刀具编号是否重复
     * @param cutter
     * @return
     */
    public boolean checkCutterNo(Cutter cutter){
        QueryWrapper<Cutter> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq(StrUtil.isNotEmpty(cutter.getProcessStepId()),"process_step_id",cutter.getProcessStepId());
        queryWrapper.eq("type",cutter.getType());
        queryWrapper.eq(StrUtil.isNotEmpty(cutter.getCutterCode()),"craft_code",cutter.getCutterCode());
        List<Cutter> list = baseMapper.selectList(queryWrapper);
        return list.isEmpty();
    }
    /**
     * èŽ·å–ä¸šåŠ¡id下的刀具列表
     * @param cutter
     * @return
     */
    @Override
    public Result<?> query(Cutter cutter, Integer pageNo, Integer pageSize){
        QueryWrapper<Cutter> queryWrapper = new QueryWrapper<>();
        queryWrapper.eq(StrUtil.isNotEmpty(cutter.getProcessStepId()),"process_step_id",cutter.getProcessStepId());
        if (cutter.getType() != null){
            queryWrapper.eq("type",cutter.getType());
        }
        queryWrapper.like(StrUtil.isNotEmpty(cutter.getCutterName()),"craft_code",cutter.getCutterCode());
        queryWrapper.like(StrUtil.isNotEmpty(cutter.getCutterName()),"craft_name",cutter.getCutterName());
        queryWrapper.orderByDesc("create_time");
        Page<Cutter> page = new Page<>(pageNo,pageSize);
        IPage<Cutter> cutterIPage = baseMapper.selectPage(page, queryWrapper);
        return Result.OK(cutterIPage);
    }
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/DeviceTypeServiceImpl.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,134 @@
package org.jeecg.modules.dnc.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.jeecg.common.api.vo.Result;
import org.jeecg.modules.dnc.entity.DeviceType;
import org.jeecg.modules.dnc.exception.ExceptionCast;
import org.jeecg.modules.dnc.mapper.DeviceTypeMapper;
import org.jeecg.modules.dnc.response.CommonCode;
import org.jeecg.modules.dnc.response.ProcessInfoCode;
import org.jeecg.modules.dnc.service.IDeviceTypeService;
import org.jeecg.modules.dnc.utils.ValidateUtil;
import org.jeecg.modules.mdc.entity.MdcEquipment;
import org.jeecg.modules.mdc.service.IMdcEquipmentService;
import org.jeecg.modules.mdc.service.IMdcProductionEquipmentService;
import org.jeecg.modules.system.entity.MdcProductionEquipment;
import org.jeecg.modules.system.entity.SysParams;
import org.jeecg.modules.system.service.ISysParamsService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class DeviceTypeServiceImpl extends ServiceImpl<DeviceTypeMapper, DeviceType> implements IDeviceTypeService {
    @Autowired
    private ISysParamsService sysParamsService;
    @Autowired
    private IMdcEquipmentService mdcEquipmentService;
    @Autowired
    private IMdcProductionEquipmentService mdcProductionEquipmentService;
    /**
     * æ–°å¢žè®¾å¤‡ç±»
     * @param deviceType
     * @return
     */
    public Result<?> add(DeviceType deviceType){
        SysParams sysParams = sysParamsService.getSysPramBySettingKey("dnc_nc_device_type");
        if ("-1".equals(sysParams.getSettingValue())){
            //未启动设备类
            return Result.error("设备类未启动,请联系管理员");
        }else {
            //已启动设备类
            if(deviceType == null)
                ExceptionCast.cast(CommonCode.INVALID_PARAM);
            if(!ValidateUtil.validateString(deviceType.getProcessStepId()))
                Result.error("无效的设备类");
            boolean save = this.save(deviceType);
            if(save){
                return Result.OK("添加设备类成功");
            }
            return Result.error("新增设备类失败");
        }
    }
    /**
     * ç¼–辑设备类
     * @param deviceType
     * @return
     */
    public Result<?> edit(DeviceType deviceType){
        if(deviceType == null)
            ExceptionCast.cast(CommonCode.INVALID_PARAM);
        if(deviceType.getDeviceType()==null)
            ExceptionCast.cast(ProcessInfoCode.PROCESS_NAME_NONE);
        DeviceType en = super.getById(deviceType.getId());
        if(en == null)
            ExceptionCast.cast(ProcessInfoCode.WORKSTEP_NOT_EXIST);
        boolean save = this.updateById(deviceType);
        if(save){
            return Result.OK("设备类编辑成功");
        }
        return Result.OK("设备类编辑失败");
    }
    /**
     * æ ¹æ®id删除设备类
     * @param id
     * @return
     */
    public Result<?> delete(String id){
        if(!ValidateUtil.validateString(id))
            ExceptionCast.cast(CommonCode.INVALID_PARAM);
        DeviceType en = super.getById(id);
        if(en == null)
            return Result.error("无效的设备类");
        boolean b=super.removeById(id);
        if(!b) {
            return Result.error("删除设备类失败");
        }
        return Result.OK("删除设备类成功");
    }
    /**
     * æ ¹æ®è®¾å¤‡ç±»ä¿¡æ¯æŸ¥è¯¢å¯¹åº”设备类
     * @param deviceTypes
     * @return
     */
    public Result<?> getByDeviceType(List<DeviceType> deviceTypes){
        if (deviceTypes == null || deviceTypes.isEmpty()) {
            return Result.error("设备类信息为空");
        }
        List<Integer> deviceTypeIds = deviceTypes.stream().map(DeviceType::getDeviceType).collect(Collectors.toList());
        QueryWrapper<MdcEquipment> queryWrapper = new QueryWrapper<>();
        queryWrapper.in("device_type", deviceTypeIds);
        List<MdcEquipment> mdcEquipmentList = mdcEquipmentService.list(queryWrapper);
        return Result.OK(mdcEquipmentList);
    }
    /**
     * æ ¹æ®ä¸šåŠ¡id查询设备类列表
     * @param businessId
     * @param type
     * @return
     */
    public Result<?> getByBusinessId(String businessId,String type){
        List<DeviceType> list = this.list(new QueryWrapper<DeviceType>().eq("production_id", businessId).eq("type", type));
        if (list == null || list.isEmpty()) {
            return Result.error("设备类信息为空");
        }
        List<Integer> deviceTypeIds = list.stream().map(DeviceType::getDeviceType).collect(Collectors.toList());
        List<String> equipmentIds=mdcProductionEquipmentService.list(new QueryWrapper<MdcProductionEquipment>().in("production_id",deviceTypeIds))
                .stream().map(MdcProductionEquipment::getEquipmentId).collect(Collectors.toList());
        list.forEach(item->{
            List<MdcEquipment> mdcEquipmentList = mdcEquipmentService.list(new QueryWrapper<MdcEquipment>()
                    .eq("device_type", item.getDeviceType()).in("id", equipmentIds));
            item.setEquipmentList(mdcEquipmentList);
        });
        return Result.OK(list);
    }
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/PartsInfoServiceImpl.java
@@ -1,13 +1,13 @@
package org.jeecg.modules.dnc.service.impl;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.commons.collections4.ListUtils;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.dnc.exception.ExceptionCast;
import org.jeecg.modules.dnc.mapper.ComponentInfoMapper;
import org.jeecg.modules.dnc.mapper.PartsInfoMapper;
@@ -16,18 +16,11 @@
import org.jeecg.modules.dnc.response.PartsInfoCode;
import org.jeecg.modules.dnc.response.ProductInfoCode;
import org.jeecg.modules.dnc.response.UcenterCode;
import org.jeecg.modules.dnc.service.*;
import org.jeecg.modules.dnc.ucenter.Department;
import org.jeecg.modules.dnc.utils.ValidateUtil;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.entity.SysUser;
import org.apache.commons.collections4.ListUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
@@ -54,6 +47,8 @@
    private IDocRelativeService iDocRelativeService;
    @Autowired
    private IProductPermissionService productPermissionService;
    @Autowired
    private IProductMixService productMixService;
    @Override
    @Transactional(rollbackFor = {Exception.class})
    public boolean addPartsInfo(PartsInfo partsInfo) {
@@ -114,6 +109,10 @@
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
        //添加结构树
        ProductMix productMix = new ProductMix(Long.parseLong(partsInfo.getPartsId()),Long.parseLong(partsInfo.getComponentId())
                ,partsInfo.getPartsName(),partsInfo.getPartsCode(),"3");
        productMixService.save(productMix);
        //添加用户权限
        PermissionStreamNew stream = new PermissionStreamNew();
        stream.setBusinessId(partsInfo.getPartsId());
@@ -253,7 +252,10 @@
        b = permissionStreamNewService.deletePermissionStreamNewByBusinessId(partsId,"3","1");
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
        return super.removeById(partsInfo.getPartsId());
        b = productMixService.removeById(partsId);
        if (!b)
            ExceptionCast.cast(CommonCode.FAIL);
        return super.removeById(partsId);
    }
    @Override
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessSpecVersionServiceImpl.java
@@ -1,10 +1,10 @@
package org.jeecg.modules.dnc.service.impl;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.api.vo.Result;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.dnc.exception.ExceptionCast;
@@ -44,7 +44,7 @@
    @Autowired
    private IProcessSpecVersionDepartmentService processSpecVersionDepartmentService;
    @Autowired
    private IProductPermissionService productPermissionService;
    private IProductMixService productMixService;
    /**
     * æ ¹æ®ç”¨æˆ·id获取授权的工艺规程版本表信息
     * @param userId
@@ -144,11 +144,10 @@
                    ExceptionCast.cast(CommonCode.FAIL);
            }
        }
        //添加用户权限
        b = productPermissionService.add(ProcessSpecVersion.getId(), userId,"4");
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
        //添加结构树
        ProductMix productMix = new ProductMix(Long.parseLong(ProcessSpecVersion.getId()),Long.parseLong(ProcessSpecVersion.getPartsId())
                ,ProcessSpecVersion.getProcessSpecVersionName(),ProcessSpecVersion.getProcessSpecVersionCode(),"4");
        productMixService.save(productMix);
        //添加用户权限
        PermissionStreamNew stream = new PermissionStreamNew();
        stream.setBusinessId(ProcessSpecVersion.getId());
@@ -224,6 +223,9 @@
            ExceptionCast.cast(CommonCode.FAIL);
        b = permissionStreamNewService.deletePermissionStreamNewByBusinessId(processSpecVersion.getId(),"4","1");
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
        b = productMixService.removeById(processSpecVersion.getId());
        if (!b)
            ExceptionCast.cast(CommonCode.FAIL);
        return super.removeById(processSpecVersion.getId());
    }
@@ -430,4 +432,13 @@
        return true;
    }
    /**
     * æ ¹æ®å·¥è‰ºè§„程id查询,下级工序工步数量
     * @param processSpecId
     * @return
     */
    @Override
    public Result<?> getProcessSpecVersionCount(String processSpecId){
        return null;
    }
}
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProcessStreamServiceImpl.java
@@ -1,26 +1,19 @@
package org.jeecg.modules.dnc.service.impl;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.conditions.query.LambdaQueryChainWrapper;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import liquibase.pro.packaged.P;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.dnc.exception.ExceptionCast;
import org.jeecg.modules.dnc.mapper.ProcessStreamMapper;
import org.jeecg.modules.dnc.request.ProcessStreamRequest;
import org.jeecg.modules.dnc.response.*;
import org.jeecg.modules.dnc.service.*;
import org.jeecg.modules.dnc.utils.ValidateUtil;
import org.jeecg.modules.dnc.request.ProcessStreamRequest;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.entity.SysUser;
import org.springframework.beans.factory.annotation.Autowired;
@@ -56,7 +49,7 @@
    @Autowired
    private IProcessStreamPermissionService processStreamPermissionService;
    @Autowired
    private IProductPermissionService productPermissionService;
    private IProductMixService productMixService;
    @Override
    @Transactional(rollbackFor = {Exception.class})
@@ -131,11 +124,16 @@
                    ExceptionCast.cast(CommonCode.FAIL);
            }
        }
        //添加用户权限
        b = productPermissionService.add(stream.getProcessId(), userId,"5");
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        //添加结构树
        ProductMix productMix;
        if (stream.getPartsId() != null) {
            productMix = new ProductMix(Long.parseLong(stream.getProcessId()),Long.parseLong(stream.getPartsId())
                    ,stream.getProcessName(),stream.getProcessCode(),"5");
        }else {
            productMix = new ProductMix(Long.parseLong(stream.getProcessId()),Long.parseLong(stream.getComponentId())
                    ,stream.getProcessName(),stream.getProcessCode(),"5");
        }
        productMixService.save(productMix);
        //添加权限验证
        PermissionStreamNew permissionStream = new PermissionStreamNew();
        permissionStream.setUserId(userId);
@@ -187,6 +185,9 @@
        if (!docRelativeList.isEmpty()){
            ExceptionCast.cast(ProcessInfoCode.PROCESS_HAS_DOC);
        }
        boolean b = productMixService.removeById(id);
        if(!b)
            ExceptionCast.cast(CommonCode.FAIL);
        return super.removeById(id);
    }
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/ProductInfoServiceImpl.java
@@ -4,29 +4,26 @@
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.baomidou.mybatisplus.extension.service.impl.ServiceImpl;
import liquibase.pro.packaged.S;
import lombok.extern.slf4j.Slf4j;
import org.apache.shiro.SecurityUtils;
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.dnc.dto.ComponentExt;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.dnc.exception.ExceptionCast;
import org.jeecg.modules.dnc.mapper.ProcessSpecVersionPermissionMapper;
import org.jeecg.modules.dnc.mapper.ProductInfoMapper;
import org.jeecg.modules.dnc.response.*;
import org.jeecg.modules.dnc.service.*;
import org.jeecg.modules.dnc.service.support.ProductTreeWrapper;
import org.jeecg.modules.dnc.ucenter.UserDepartExt;
import org.jeecg.modules.dnc.utils.ValidateUtil;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.system.entity.MdcProduction;
import org.jeecg.modules.system.entity.SysUser;
import org.jeecg.modules.system.service.IMdcProductionService;
import org.jeecg.modules.system.service.ISysUserService;
import lombok.extern.slf4j.Slf4j;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Lazy;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import redis.clients.jedis.Jedis;
import java.util.*;
import java.util.stream.Collectors;
@@ -79,6 +76,8 @@
    private IProcessStreamPermissionService iProcessStreamPermissionService;
    @Autowired
    private IWorkStepPermissionService iWorkStepPermissionService;
    @Autowired
    private IProductMixService productMixService;
    @Override
    @Transactional(rollbackFor = {Exception.class})
@@ -106,6 +105,10 @@
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
        //添加结构树
        ProductMix productMix = new ProductMix(Long.parseLong(productInfo.getProductId()),0,productInfo.getProductName(),productInfo.getProductNo(),"1");
        productMixService.save(productMix);
        //添加用户权限
        PermissionStreamNew stream = new PermissionStreamNew();
        stream.setBusinessId(productInfo.getProductId());
        stream.setUserId(userId);
@@ -239,6 +242,9 @@
        b = permissionStreamNewService.deletePermissionStreamNewByBusinessId(id, "1","1");
        if (!b)
            ExceptionCast.cast(CommonCode.FAIL);
        b = productMixService.removeById(id);
        if (!b)
            ExceptionCast.cast(CommonCode.FAIL);
        return super.removeById(id);
    }
lxzn-module-dnc/src/main/java/org/jeecg/modules/dnc/service/impl/WorkStepServiceImpl.java
@@ -1,7 +1,5 @@
package org.jeecg.modules.dnc.service.impl;
import cn.hutool.core.util.StrUtil;
import com.alibaba.fastjson.JSONObject;
import com.baomidou.mybatisplus.core.conditions.query.LambdaQueryWrapper;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
@@ -11,7 +9,6 @@
import org.jeecg.common.system.vo.LoginUser;
import org.jeecg.modules.dnc.entity.*;
import org.jeecg.modules.dnc.exception.ExceptionCast;
import org.jeecg.modules.dnc.mapper.PartsInfoMapper;
import org.jeecg.modules.dnc.mapper.WorkStepMapper;
import org.jeecg.modules.dnc.response.CommonCode;
import org.jeecg.modules.dnc.response.ProcessInfoCode;
@@ -53,6 +50,9 @@
    @Autowired
    private IProductPermissionService productPermissionService;
    @Autowired
    private IProductMixService productMixService;
    @Override
    public List<WorkStep> getByUserPerms(String userId) {
@@ -137,11 +137,10 @@
                    ExceptionCast.cast(CommonCode.FAIL);
            }
        }
        //添加用户权限
        b = productPermissionService.add(workStep.getId(), userId,"6");
        if (!b) {
            ExceptionCast.cast(ProductInfoCode.PRODUCT_SAVE_ERROR);
        }
        //添加结构树
        ProductMix productMix = new ProductMix(Long.parseLong(workStep.getId()),Long.parseLong(workStep.getProcessId())
                ,workStep.getStepName(),workStep.getStepCode(),"6");
        productMixService.save(productMix);
        //添加权限验证
        PermissionStreamNew permissionStream = new PermissionStreamNew();
        permissionStream.setUserId(userId);
@@ -293,6 +292,10 @@
        if (!docRelativeList.isEmpty()){
            ExceptionCast.cast(ProcessInfoCode.WORKSTEP_HAS_DOC);
        }
        boolean b=productMixService.removeById(id);
        if(!b) {
            ExceptionCast.cast(CommonCode.FAIL);
        }
        return super.removeById(id);
    }