longyvfengyun
2022-07-28 eab1c7170a901f354bb8bf5c62e5a12c4d73d88b
Merge branch 'master' of http://118.89.139.230:10101/r/~whyclxw/CadDrawManager
8个文件已修改
153 ■■■■■ 已修改文件
src/main/java/com/whyc/controller/WorksheetLinkController.java 9 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/controller/WorksheetMainController.java 7 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/pojo/ProductBomApproving.java 10 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/pojo/WorksheetLink.java 22 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/ProductBomApprovingService.java 13 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/WorksheetLinkService.java 5 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/service/WorksheetMainService.java 30 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/resources/mapper/WorksheetMainMapper.xml 57 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/main/java/com/whyc/controller/WorksheetLinkController.java
@@ -6,7 +6,10 @@
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
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;
@RestController
@RequestMapping("worksheetLink")
@@ -21,7 +24,7 @@
     * @return
     */
    @PostMapping("audit")
    @ApiOperation(value = "经理审核",notes = "传参:int id,int linkStatus,String dealReason,int mainId,int nextUser;" +
    @ApiOperation(value = "经理审核",notes = "传参:int id,int linkStatus,String dealReason,int mainId,int nextUser,int rejectVersion;" +
            "linkStatus:1通过,2驳回;dealReason:审核意见")
    public Response audit(@RequestBody WorksheetLink link){
        service.audit(link);
@@ -30,7 +33,7 @@
    @PostMapping("approve")
    @ApiOperation(value = "总经理审批",notes = "传参:int id,int linkStatus,String dealReason,int mainId;" +
    @ApiOperation(value = "总经理审批",notes = "传参:int id,int linkStatus,String dealReason,int mainId,int rejectVersion;" +
            "linkStatus:1通过,2驳回,驳回到员工,通知经理;dealReason:审核意见")
    public Response approve(@RequestBody WorksheetLink link){
        service.approve(link);
src/main/java/com/whyc/controller/WorksheetMainController.java
@@ -91,4 +91,11 @@
        return  new Response().set(1,main);
    }
    @PostMapping("info")
    @ApiOperation("查询工作流的标题及描述")
    public Response getInfo(@RequestParam int id){
        WorksheetMain main = service.getInfo(id);
        return new Response().set(1,main);
    }
}
src/main/java/com/whyc/pojo/ProductBomApproving.java
@@ -60,6 +60,8 @@
    @ApiModelProperty("工程图纸url")
    private String dwgUrl;
    @ApiModelProperty("驳回版本号")
    private Integer rejectVersion;
    @ApiModelProperty("工程图纸是否存在:0否1存在")
    @TableField(exist = false)
@@ -272,4 +274,12 @@
    public void setDwgExist(Integer dwgExist) {
        this.dwgExist = dwgExist;
    }
    public Integer getRejectVersion() {
        return rejectVersion;
    }
    public void setRejectVersion(Integer rejectVersion) {
        this.rejectVersion = rejectVersion;
    }
}
src/main/java/com/whyc/pojo/WorksheetLink.java
@@ -5,6 +5,7 @@
import org.apache.ibatis.type.Alias;
import java.util.Date;
import java.util.List;
@TableName(schema = "db_doc",value = "tb_worksheet_link")
@Alias("WorksheetLink")
@@ -44,6 +45,8 @@
    private Date createTime;
    /**节点处理时间*/
    private Date  dealTime;
    /**驳回版本*/
    private Integer rejectVersion;
    /**流程的下个处理人*/
    @TableField(exist = false)
@@ -54,6 +57,9 @@
    @TableField(exist = false)
    private WorksheetMain main;
    @TableField(exist = false)
    private List<ProductBomApproving> bomApprovingList;
    public Integer getId() {
        return id;
@@ -174,4 +180,20 @@
    public void setMain(WorksheetMain main) {
        this.main = main;
    }
    public Integer getRejectVersion() {
        return rejectVersion;
    }
    public void setRejectVersion(Integer rejectVersion) {
        this.rejectVersion = rejectVersion;
    }
    public List<ProductBomApproving> getBomApprovingList() {
        return bomApprovingList;
    }
    public void setBomApprovingList(List<ProductBomApproving> bomApprovingList) {
        this.bomApprovingList = bomApprovingList;
    }
}
src/main/java/com/whyc/service/ProductBomApprovingService.java
@@ -1,5 +1,7 @@
package com.whyc.service;
import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.core.toolkit.Wrappers;
import com.whyc.dto.FileUrlDTO;
import com.whyc.dto.Response;
import com.whyc.mapper.ProductBomApprovingMapper;
@@ -265,4 +267,15 @@
        return new Response().set(1,"doc_file"+dwgSubFileDirPath+File.separator+pdfFileName);
    }
    public int getRejectVersion(Integer mainId) {
        QueryWrapper<ProductBomApproving> query = Wrappers.query();
        query.select("reject_version").eq("main_id",mainId).orderByDesc("id").last(" limit 1");
        ProductBomApproving bomApproving = mapper.selectOne(query);
        if(bomApproving==null){
            return -1;
        }else{
            return bomApproving.getRejectVersion();
        }
    }
}
src/main/java/com/whyc/service/WorksheetLinkService.java
@@ -50,6 +50,7 @@
            link2.setDealDesc("工单被经理驳回,驳回信息:"+link.getDealReason());
            link2.setLinkStatus(0);
            link2.setEnableArchive(0);
            link2.setRejectVersion(link.getRejectVersion());
            linkMapper.insert(link2);
            //更新主表状态
            mainService.updateStatusById(link.getMainId(),0);
@@ -63,6 +64,7 @@
            link2.setDealDesc("工单被经理审核通过,信息:"+link.getDealReason());
            link2.setLinkStatus(0);
            link2.setEnableArchive(1);
            link2.setRejectVersion(link.getRejectVersion());
            linkMapper.insert(link2);
            //更新主表状态
            mainService.updateStatusById(link.getMainId(),2);
@@ -86,6 +88,7 @@
            link2.setDealDesc("工单被经理驳回,驳回信息:"+link.getDealReason());
            link2.setLinkStatus(0);
            link2.setEnableArchive(0);
            link2.setRejectVersion(link.getRejectVersion());
            linkMapper.insert(link2);
            //更新主表状态
            mainService.updateStatusById(link.getMainId(),0);
@@ -169,7 +172,7 @@
            FileUtil.copyDir()*/
            //将产品bom表的url修正,更新到正式表
            //将产品bom表的url修正,更新到正式表 TODO
        }
    }
src/main/java/com/whyc/service/WorksheetMainService.java
@@ -44,13 +44,18 @@
    @Transactional
    public boolean submit(WorksheetMain main, DocUser user) {
        List<ProductBomApproving> bomList = main.getApprovingBomList();
        int rejectVersion=-1;
        //提交主表
        main.setCreateUserId(user.getId());
        //提交人角色来判断工作流层级
        if(user.getRoleId().equals("1001")){
            main.setLevel(2);
            main.setStatus(1);
            mainMapper.insert(main);
            if(main.getId()==null) {
                main.setLevel(2);
                main.setStatus(1);
                mainMapper.insert(main);
            }else {
                rejectVersion = approvingService.getRejectVersion(main.getId());
            }
            //提交子表
            WorksheetLink link =new WorksheetLink();
            link.setMainId(main.getId());
@@ -60,12 +65,17 @@
            link.setDealDesc(main.getDealDesc());
            link.setLinkStatus(0);
            link.setEnableArchive(0);
            link.setRejectVersion(rejectVersion+1);
            linkMapper.insert(link);
        }
        else if(user.getRoleId().equals("1002")){
            main.setLevel(1);
            main.setStatus(2);
            mainMapper.insert(main);
            if(main.getId()==null) {
                main.setLevel(1);
                main.setStatus(2);
                mainMapper.insert(main);
            }else {
                rejectVersion = approvingService.getRejectVersion(main.getId());
            }
            //提交子表
            WorksheetLink link =new WorksheetLink();
            link.setMainId(main.getId());
@@ -75,6 +85,7 @@
            link.setDealDesc(main.getDealDesc());
            link.setLinkStatus(0);
            link.setEnableArchive(1);
            link.setRejectVersion(rejectVersion+1);
            linkMapper.insert(link);
        }
        else if(user.getRoleId().equals("1003")){
@@ -85,8 +96,11 @@
            return false;
        }
        //产品bom/图纸图片提交
        //查询当前驳回版本
        int nextRejectVersion = rejectVersion+1;
        bomList.forEach(bom->{
            bom.setMainId(main.getId());
            bom.setRejectVersion(nextRejectVersion);
        });
        approvingService.insert(bomList);
        return true;
@@ -291,4 +305,8 @@
        PageInfo<WorksheetMain> pageInfo = new PageInfo<>(worksheetMainList);
        return new Response<PageInfo<WorksheetMain>>().set(1,pageInfo);
    }
    public WorksheetMain getInfo(int id) {
         return mainMapper.selectById(id);
    }
}
src/main/resources/mapper/WorksheetMainMapper.xml
@@ -56,7 +56,61 @@
        </collection>
    </resultMap>
    <select id="getLinkList" resultMap="Map_WorksheetMain">
    <resultMap id="Map_WorksheetMain2" type="WorksheetMain">
        <id column="mid" property="id"/>
        <result column="title" property="title"/>
        <result column="description" property="description"/>
        <result column="file" property="file"/>
        <result column="begin_time" property="beginTime"/>
        <result column="end_time" property="endTime"/>
        <result column="level" property="level"/>
        <result column="status" property="status"/>
        <result column="end_reason" property="endReason"/>
        <association column="create_user_id" property="createUser" javaType="com.whyc.pojo.DocUser" select="getUser">
            <result column="name" property="name"/>
        </association>
        <collection property="links" ofType="com.whyc.pojo.WorksheetLink">
            <id column="lid" property="id"/>
            <result column="deal_user_id" property="dealUserId"/>
            <result column="deal_type" property="dealType"/>
            <result column="deal_desc" property="dealDesc"/>
            <result column="deal_reason" property="dealReason"/>
            <result column="link_file" property="linkFile"/>
            <result column="link_status" property="linkStatus"/>
            <result column="enable_archive" property="enableArchive"/>
            <result column="create_time" property="createTime"/>
            <result column="deal_time" property="dealTime"/>
            <association property="dealUser" column="deal_user_id" javaType="com.whyc.pojo.DocUser" select="getUser">
                <result column="name" property="name"/>
            </association>
            <collection property="bomApprovingList" ofType="ProductBomApproving">
                <result column="parent_code" property="parentCode"/>
                <result column="parent_name" property="parentName"/>
                <result column="parent_model" property="parentModel"/>
                <result column="type" property="type"/>
                <result column="category" property="category"/>
                <result column="sub_code" property="subCode"/>
                <result column="sub_name" property="subName"/>
                <result column="sub_model" property="subModel"/>
                <result column="unit" property="unit"/>
                <result column="quantity" property="quantity"/>
                <result column="producer" property="producer"/>
                <result column="material" property="material"/>
                <result column="thickness" property="thickness"/>
                <result column="surface_detail" property="surfaceDetail"/>
                <result column="notes" property="notes"/>
                <result column="picture_url" property="pictureUrl"/>
                <result column="file_url" property="fileUrl"/>
                <result column="dwg_url" property="dwgUrl"/>
                <result column="up_user" property="upUser"/>
                <result column="create_date" property="createDate"/>
                <result column="update_date" property="updateDate"/>
                <result column="parent_version" property="parentVersion"/>
            </collection>
        </collection>
    </resultMap>
    <select id="getLinkList" resultMap="Map_WorksheetMain2">
        SELECT
            m.id mid,m.title,m.description,m.file,m.create_user_id,m.begin_time,m.end_time,m.level,m.status,m.end_reason,
            l.id lid,deal_user_id,deal_type,deal_desc,deal_reason,link_file,link_status,enable_archive,create_time,deal_time,
@@ -69,6 +123,7 @@
            tb_product_bom_approving b ON m.id = b.main_id
        WHERE
        m.id = #{id}
        and l.reject_version = b.reject_version
    </select>
    
    <select id="getUser" resultType="com.whyc.pojo.DocUser">