111
k94314517
2023-08-22 2cef955017c735c2828e69f878d3d6b44200074f
111
已添加3个文件
已删除1个文件
已修改7个文件
281 ■■■■■ 文件已修改
server/src/main/java/doumeemes/api/business/UnqualifiedRecordController.java 71 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/api/ext/StatisticsController.java 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/api/ext/UnqualifiedRecordExtController.java 53 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/dao/business/model/UnqualifiedRecord.java 44 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/dao/ext/dto/QueryUnQualifiedRecordDTO.java 24 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/dao/ext/join/UnQualifiedRecordJoinMapper.java 14 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/service/business/UnqualifiedRecordService.java 5 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/service/business/impl/UnqualifiedRecordServiceImpl.java 61 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/service/ext/impl/PlansExtServiceImpl.java 8 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/service/ext/impl/ProceduresExtServiceImpl.java 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/resources/mappers/WorkorderExtMapper.xml 补丁 | 查看 | 原始文档 | blame | 历史
server/src/main/java/doumeemes/api/business/UnqualifiedRecordController.java
ÎļþÒÑɾ³ý
server/src/main/java/doumeemes/api/ext/StatisticsController.java
@@ -38,6 +38,7 @@
    public ApiResponse<StatisticsPlanDataModel> getPlansData(@PathVariable Integer companyId, @PathVariable Integer departId) {
        return ApiResponse.success(statisticsService.getPlansData(companyId,departId));
    }
    @ApiOperation("数据统计-工序计划,执行中、延期计划数、今日生产人数、今日生产设备数、今日不良品")
    @GetMapping("/getProcedurePlanData/{companyId}/{departId}")
    public ApiResponse<StatisticsPlanDataModel> getProcedurePlanData(@PathVariable Integer companyId, @PathVariable Integer departId,@RequestParam(required = false) Integer procedureId) {
server/src/main/java/doumeemes/api/ext/UnqualifiedRecordExtController.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,53 @@
package doumeemes.api.ext;
import doumeemes.api.BaseController;
import doumeemes.core.annotation.excel.ExcelExporter;
import doumeemes.core.model.ApiResponse;
import doumeemes.core.model.PageData;
import doumeemes.core.model.PageWrap;
import doumeemes.core.utils.DateUtil;
import doumeemes.dao.business.model.UnqualifiedRecord;
import doumeemes.dao.business.vo.WorkPlansVO;
import doumeemes.dao.ext.dto.QueryUnQualifiedRecordDTO;
import doumeemes.dao.ext.dto.QueryWorkPlansDTO;
import doumeemes.service.business.UnqualifiedRecordService;
import doumeemes.service.business.UserDeviceService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.apache.shiro.authz.annotation.RequiresPermissions;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.PostMapping;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RestController;
import javax.servlet.http.HttpServletResponse;
/**
 * Created by IntelliJ IDEA.
 *
 * @Author : Rk
 * @create 2023/8/22 13:56
 */
@RestController
@RequestMapping("/ext/unqualifiedRecord")
@Api(tags = "工单类-报工不良记录类型表")
public class UnqualifiedRecordExtController  extends BaseController {
    @Autowired
    private UnqualifiedRecordService unqualifiedRecordService;
    @ApiOperation("分页查询")
    @PostMapping("/page")
    public ApiResponse<PageData<UnqualifiedRecord>> findJoinPage (@RequestBody PageWrap<QueryUnQualifiedRecordDTO> pageWrap) {
        return ApiResponse.success(unqualifiedRecordService.findJoinPage(pageWrap));
    }
    @ApiOperation("导出Excel")
    @PostMapping("/exportExcel")
    public void exportExcel (@RequestBody PageWrap<QueryUnQualifiedRecordDTO> pageWrap, HttpServletResponse response) throws Exception{
        ExcelExporter.build(UnqualifiedRecord.class).export(unqualifiedRecordService.findJoinPage(pageWrap).getRecords(), "不良产出明细记录"+ DateUtil.getNowLongTime(), response);
    }
}
server/src/main/java/doumeemes/dao/business/model/UnqualifiedRecord.java
@@ -1,5 +1,6 @@
package doumeemes.dao.business.model;
import com.baomidou.mybatisplus.annotation.TableField;
import doumeemes.core.annotation.excel.ExcelColumn;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
@@ -23,28 +24,23 @@
    @TableId(type = IdType.AUTO)
    @ApiModelProperty(value = "主键", example = "1")
    @ExcelColumn(name="主键")
    private Integer id;
    @ApiModelProperty(value = "是否已删除 0未删除 1已删除", example = "1")
    @ExcelColumn(name="是否已删除 0未删除 1已删除")
    private Integer deleted;
    @ApiModelProperty(value = "创建人编码", example = "1")
    @ExcelColumn(name="创建人编码")
    private Integer createUser;
    @ApiModelProperty(value = "创建时间")
    @ExcelColumn(name="创建时间")
    @ExcelColumn(name="创建时间",index = 7,width =15)
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date createTime;
    @ApiModelProperty(value = "更新人编码", example = "1")
    @ExcelColumn(name="更新人编码")
    private Integer updateUser;
    @ApiModelProperty(value = "更新时间")
    @ExcelColumn(name="更新时间")
    @JsonFormat(pattern = "yyyy-MM-dd")
    private Date updateTime;
@@ -53,27 +49,51 @@
    private String remark;
    @ApiModelProperty(value = "主组织编码(关联department表根组织)", example = "1")
    @ExcelColumn(name="主组织编码(关联department表根组织)")
    private Integer rootDepartId;
    @ApiModelProperty(value = "公司级组织编码(关联department表)", example = "1")
    @ExcelColumn(name="公司级组织编码(关联department表)")
    private Integer departId;
    @ApiModelProperty(value = "工单主键", example = "1")
    @ExcelColumn(name="工单主键")
    private Integer workorderId;
    @ApiModelProperty(value = "产出记录主键", example = "1")
    @ExcelColumn(name="产出记录主键")
    private Integer recordId;
    @ApiModelProperty(value = "类别主键", example = "1")
    @ExcelColumn(name="类别主键")
    private Integer categoryId;
    @ApiModelProperty(value = "检验不合格数量", example = "1")
    @ExcelColumn(name="检验不合格数量")
    @ExcelColumn(name="数量",index = 6,width =15)
    private BigDecimal unqualifiedNum;
    @ApiModelProperty(value = "工单编码", example = "1")
    @ExcelColumn(name="工单编码",index = 1,width =15)
    @TableField(exist = false)
    private String workOrderCode;
    @ApiModelProperty(value = "物料名称", example = "1")
    @ExcelColumn(name="物料名称",index = 2,width =15)
    @TableField(exist = false)
    private String materialName;
    @ApiModelProperty(value = "物料编码", example = "1")
    @ExcelColumn(name="物料编码",index = 3,width =15)
    @TableField(exist = false)
    private String materialCode;
    @ApiModelProperty(value = "工序", example = "1")
    @ExcelColumn(name="工序",index = 4,width =15)
    @TableField(exist = false)
    private String proceduresName;
    @ApiModelProperty(value = "不良项", example = "1")
    @ExcelColumn(name="不良项",index = 5,width =15)
    @TableField(exist = false)
    private String categoryName;
    @ApiModelProperty(value = "创建人", example = "1")
    @ExcelColumn(name="创建人",index = 8,width =15)
    @TableField(exist = false)
    private String createUserName;
}
server/src/main/java/doumeemes/dao/ext/dto/QueryUnQualifiedRecordDTO.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,24 @@
package doumeemes.dao.ext.dto;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.Date;
/**
 * Created by IntelliJ IDEA.
 *
 * @Author : Rk
 * @create 2023/8/22 14:02
 */
@Data
public class QueryUnQualifiedRecordDTO {
    @ApiModelProperty("工单编码")
    private String code;
    @ApiModelProperty("不良项主键")
    private Integer categoryId;
}
server/src/main/java/doumeemes/dao/ext/join/UnQualifiedRecordJoinMapper.java
¶Ô±ÈÐÂÎļþ
@@ -0,0 +1,14 @@
package doumeemes.dao.ext.join;
import com.github.yulichang.base.mapper.MPJJoinMapper;
import doumeemes.dao.business.model.UnqualifiedRecord;
import doumeemes.dao.system.model.SystemLoginLog;
/**
 * Created by IntelliJ IDEA.
 *
 * @Author : Rk
 * @create 2023/8/22 13:55
 */
public interface UnQualifiedRecordJoinMapper  extends MPJJoinMapper<UnqualifiedRecord> {
}
server/src/main/java/doumeemes/service/business/UnqualifiedRecordService.java
@@ -3,6 +3,8 @@
import doumeemes.core.model.PageData;
import doumeemes.core.model.PageWrap;
import doumeemes.dao.business.model.UnqualifiedRecord;
import doumeemes.dao.ext.dto.QueryUnQualifiedRecordDTO;
import java.util.List;
/**
@@ -94,4 +96,7 @@
     * @return long
     */
    long count(UnqualifiedRecord unqualifiedRecord);
    PageData<UnqualifiedRecord> findJoinPage(PageWrap<QueryUnQualifiedRecordDTO> pageWrap);
}
server/src/main/java/doumeemes/service/business/impl/UnqualifiedRecordServiceImpl.java
@@ -1,20 +1,33 @@
package doumeemes.service.business.impl;
import com.github.yulichang.wrapper.MPJLambdaWrapper;
import doumeemes.core.constants.ResponseStatus;
import doumeemes.core.exception.BusinessException;
import doumeemes.core.model.LoginUserInfo;
import doumeemes.core.model.PageData;
import doumeemes.core.model.PageWrap;
import doumeemes.core.utils.Constants;
import doumeemes.core.utils.Utils;
import doumeemes.dao.business.UnqualifiedRecordMapper;
import doumeemes.dao.business.model.UnqualifiedRecord;
import doumeemes.dao.business.model.*;
import doumeemes.dao.ext.dto.QueryUnQualifiedRecordDTO;
import doumeemes.dao.system.dto.QuerySystemLoginLogDTO;
import doumeemes.dao.ext.join.UnQualifiedRecordJoinMapper;
import doumeemes.dao.system.model.SystemLoginLog;
import doumeemes.dao.system.model.SystemUser;
import doumeemes.service.business.UnqualifiedRecordService;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.conditions.update.UpdateWrapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import org.apache.commons.lang3.StringUtils;
import org.apache.shiro.SecurityUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.util.CollectionUtils;
import java.util.List;
import java.util.Objects;
/**
 * å·¥å•ç±»-报工不良记录类型表Service实现
@@ -26,6 +39,10 @@
    @Autowired
    private UnqualifiedRecordMapper unqualifiedRecordMapper;
    @Autowired
    private UnQualifiedRecordJoinMapper unQualifiedRecordJoinMapper;
    @Override
    public Integer create(UnqualifiedRecord unqualifiedRecord) {
@@ -121,4 +138,46 @@
        QueryWrapper<UnqualifiedRecord> wrapper = new QueryWrapper<>(unqualifiedRecord);
        return unqualifiedRecordMapper.selectCount(wrapper);
    }
    @Override
    public PageData<UnqualifiedRecord> findJoinPage(PageWrap<QueryUnQualifiedRecordDTO> pageWrap) {
        LoginUserInfo user = (LoginUserInfo) SecurityUtils.getSubject().getPrincipal();
        if(!Constants.equalsInteger(user.getType(),Constants.USERTYPE.COM)){
            throw new BusinessException(ResponseStatus.NOT_ALLOWED.getCode(), "对不起,您无权限进行该操作!");
        }
        IPage<UnqualifiedRecord> page = new Page<>(pageWrap.getPage(), pageWrap.getCapacity());
        MPJLambdaWrapper<UnqualifiedRecord> mpjLambdaWrapper = new MPJLambdaWrapper<>();
        mpjLambdaWrapper.selectAll(UnqualifiedRecord.class);
        mpjLambdaWrapper.selectAs(Workorder::getCode, UnqualifiedRecord::getWorkOrderCode);
        mpjLambdaWrapper.selectAs(Material::getCode, UnqualifiedRecord::getMaterialName);
        mpjLambdaWrapper.selectAs(Workorder::getCode, UnqualifiedRecord::getMaterialCode);
        mpjLambdaWrapper.selectAs(Procedures::getName, UnqualifiedRecord::getProceduresName);
        mpjLambdaWrapper.selectAs(Category::getName, UnqualifiedRecord::getCategoryName);
        mpjLambdaWrapper.selectAs(SystemUser::getRealname, UnqualifiedRecord::getCreateUserName);
        mpjLambdaWrapper.leftJoin(Workorder.class,Workorder::getId,UnqualifiedRecord::getWorkorderId);
        mpjLambdaWrapper.leftJoin(MaterialDistribute.class,MaterialDistribute::getId,Workorder::getMaterialId);
        mpjLambdaWrapper.leftJoin(Material.class,Material::getId,MaterialDistribute::getMaterialId);
        mpjLambdaWrapper.leftJoin(Procedures.class,Procedures::getId,Workorder::getProcedureId);
        mpjLambdaWrapper.leftJoin(Category.class,Category::getId,UnqualifiedRecord::getCategoryId);
        mpjLambdaWrapper.leftJoin(SystemUser.class,SystemUser::getId,UnqualifiedRecord::getCreateUser);
        //只能查看当前根组织的数据
        mpjLambdaWrapper.eq(Workorder::getRootDepartId,user.getRootDepartment().getId());
        //如果当前选择的公司级组织非根组织信息,只能查看当前选择公司级组织数据
        mpjLambdaWrapper.eq(Workorder::getDepartId,user.getCurComDepartment().getId());
        mpjLambdaWrapper.eq(UnqualifiedRecord::getDeleted,Constants.ZERO);
        // ä¸è‰¯åˆ†ç±»åˆ†ç±»
        if ( pageWrap.getModel().getCategoryId() !=null) {
            mpjLambdaWrapper.eq(UnqualifiedRecord::getCategoryId, pageWrap.getModel().getCategoryId());
        }
        // å·¥å•编码
        if (StringUtils.isNotBlank(pageWrap.getModel().getCode())) {
            mpjLambdaWrapper.like(Workorder::getCode, pageWrap.getModel().getCode());
        }
        return PageData.from(unQualifiedRecordJoinMapper.selectJoinPage(page, UnqualifiedRecord.class,mpjLambdaWrapper));
    }
}
server/src/main/java/doumeemes/service/ext/impl/PlansExtServiceImpl.java
@@ -127,7 +127,7 @@
        if(user.getProcedureIds()!=null){
            pageWrap.setProcedureIds(user.getProcedureIds());
        }else{
            pageWrap.setUserId(user.getId());
            pageWrap.setCreateUser(user.getId());
        }
        List<PlansExtListVO> result = plansExtMapper.selectList(pageWrap);
        if(result==null||result.size()==0){
@@ -190,12 +190,6 @@
            pageWrap.getModel().setCreateUser(user.getId());
            //否则走数据权限
            pageWrap.getModel().setDepartIds(dataPermission);
         /*   if(dataPermission.size() == 0){
                //只能看自己的
                pageWrap.getModel().setCreateUser(user.getId());
            }else{
            }*/
        }
        if(user.getProcedureIds()!=null){
            pageWrap.getModel().setProcedureIds(user.getProcedureIds());
server/src/main/java/doumeemes/service/ext/impl/ProceduresExtServiceImpl.java
server/src/main/resources/mappers/WorkorderExtMapper.xml