Browse Source

Merge remote-tracking branch 'origin/master'

master
zelian_wu 2 years ago
parent
commit
2795914233
  1. 140
      src/main/java/com/spring/modules/request/controller/RequestManageController.java
  2. 146
      src/main/java/com/spring/modules/request/entity/PlmRequestDetailEntity.java
  3. 85
      src/main/java/com/spring/modules/request/entity/PlmRequestHeaderEntity.java
  4. 128
      src/main/java/com/spring/modules/request/mapper/RequestManageMapper.java
  5. 81
      src/main/java/com/spring/modules/request/service/RequestManageService.java
  6. 135
      src/main/java/com/spring/modules/request/service/impl/RequestManageServiceImpl.java
  7. 11
      src/main/java/com/spring/modules/request/vo/PlmRequestDetailVo.java
  8. 15
      src/main/java/com/spring/modules/request/vo/PlmRequestHeaderVo.java
  9. 231
      src/main/resources/mapper/request/RequestManageMapper.xml

140
src/main/java/com/spring/modules/request/controller/RequestManageController.java

@ -0,0 +1,140 @@
package com.spring.modules.request.controller;
import com.spring.common.utils.PageUtils;
import com.spring.common.utils.R;
import com.spring.modules.request.service.RequestManageService;
import com.spring.modules.request.vo.PlmRequestDetailVo;
import com.spring.modules.request.vo.PlmRequestHeaderVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
import java.util.List;
/*
* @Description 流程管理
* @Title RequestManageController
* @author yzz
* @date 2024/4/9 15:45
*/
@RestController
@RequestMapping("plm/request")
public class RequestManageController {
@Autowired
private RequestManageService requestManageService;
/*
* @Author yzz
* @Description 获取流程绑定信息的主表数据
* @Date 2024/4/9
* @param partInformationVoPage
* @param data
* @return IPage<MasterPartInformationVo>
*/
@PostMapping(value="/getRequestMainData")
@ResponseBody
public R masterPartSearch(@RequestBody PlmRequestHeaderVo data) {
PageUtils page = requestManageService.getRequestMainData(data);
return R.ok().put("page", page);
}
/*
* @Author yzz
* @Description 保存流程绑定信息的主表数据
* @Date 2024/4/10
* @param data
*/
@PostMapping(value="/saveRequestHeader")
@ResponseBody
public R saveRequestHeader(@RequestBody PlmRequestHeaderVo inData){
requestManageService.saveRequestHeader(inData);
return R.ok();
}
/*
* @Author yzz
* @Description 修改流程绑定信息的主表数据
* @Date 2024/4/10
* @param inData
* @return R
*/
@PostMapping(value="/updateRequestHeader")
@ResponseBody
public R updateRequestHeader(@RequestBody PlmRequestHeaderVo inData){
requestManageService.updateRequestHeader(inData);
return R.ok();
}
/*
* @Author yzz
* @Description 删除流程信息的主表数据
* @Date 2024/4/10
* @param inData
* @return R
*/
@PostMapping(value="/deleteRequestHeader")
@ResponseBody
public R deleteRequestHeader(@RequestBody List<PlmRequestHeaderVo> inData){
requestManageService.deleteRequestHeader(inData);
return R.ok();
}
/*
* @Author yzz
* @Description 获取节点信息
* @Date 2024/4/11
* @param data
* @return R
*/
@PostMapping(value="/getNodeInfoByWorkflow")
@ResponseBody
public R getNodeInfoByWorkflow(@RequestBody PlmRequestDetailVo data) {
List<PlmRequestDetailVo> list = requestManageService.getNodeInfoByWorkflow(data);
return R.ok().put("rows", list);
}
/*
* @Author yzz
* @Description 获取流程节点现有的出口配置
* @Date 2024/4/12
* @param data
* @return R
*/
@PostMapping(value="/getNodeDetail")
@ResponseBody
public R getNodeDetail(@RequestBody PlmRequestDetailVo data) {
List<PlmRequestDetailVo> list = requestManageService.getNodeDetail(data);
return R.ok().put("rows", list);
}
/*
* @Author yzz
* @Description 保存流程节点的出口配置
* @Date 2024/4/12
* @param inData
* @return R
*/
@PostMapping(value="/saveRequestNodeDetail")
@ResponseBody
public R saveRequestNodeDetail(@RequestBody List<PlmRequestDetailVo> inData){
requestManageService.saveRequestNodeDetail(inData);
return R.ok();
}
/*
* @Author yzz
* @Description 删除当前流程节点的全部出口配置
* @Date 2024/4/12
* @param inData
* @return R
*/
@PostMapping(value="/deleteRequestNodeDetailByLine")
@ResponseBody
public R deleteRequestNodeDetailByLine(@RequestBody PlmRequestDetailVo inData){
requestManageService.deleteRequestNodeDetailByLine(inData);
return R.ok();
}
}

146
src/main/java/com/spring/modules/request/entity/PlmRequestDetailEntity.java

@ -0,0 +1,146 @@
package com.spring.modules.request.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.spring.common.utils.QueryPage;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
@TableName("plm_request_detail")
public class PlmRequestDetailEntity extends QueryPage implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
private Integer id;
/**
*
*/
private String site;
/**
* BU
*/
private String bu;
/**
* 分类编码
*/
private String classificationNo;
/**
* 节点ID
*/
private String nodeId;
/**
* 节点名称
*/
private String nodeName;
/**
* 节点类型
*/
private String nodeType;
/**
* 是否分支
*/
private String isBranch;
/**
* 创建时间
*/
@TableField(fill = FieldFill.INSERT)
private Date createDate;
/**
* 创建人
*/
private String createBy;
/**
* 修改时间
*/
@TableField(fill = FieldFill.UPDATE)
private Date updateDate;
/**
* 修改人
*/
private String updateBy;
/**
* 备注
*/
private String remark;
/**
* plm字段名
*/
private String plmField;
/**
* oa字段名
*/
private String oaField;
/**
* 字段值
*/
private String fieldValue;
/**
* 备用字段1
*/
private String orderRef1;
/**
* 备用字段2
*/
private String orderRef2;
/**
* 备用字段3
*/
private String orderRef3;
/**
* 备用字段4
*/
private String orderRef4;
/**
* 字段说明
*/
private String fieldDesc;
/**
* 流程ID
*/
private String workflowId;
public PlmRequestDetailEntity() {
}
public PlmRequestDetailEntity(String site, String bu, String classificationNo, String nodeId, String nodeName,
String nodeType, String isBranch, Date createDate, String createBy, String remark, String workflowId) {
this.site = site;
this.bu = bu;
this.classificationNo = classificationNo;
this.nodeId = nodeId;
this.nodeName = nodeName;
this.nodeType = nodeType;
this.isBranch = isBranch;
this.createDate = createDate;
this.createBy = createBy;
this.remark = remark;
this.workflowId = workflowId;
}
}

85
src/main/java/com/spring/modules/request/entity/PlmRequestHeaderEntity.java

@ -0,0 +1,85 @@
package com.spring.modules.request.entity;
import com.baomidou.mybatisplus.annotation.FieldFill;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableName;
import com.spring.common.utils.QueryPage;
import lombok.Data;
import java.io.Serializable;
import java.util.Date;
@Data
@TableName("plm_request_header")
public class PlmRequestHeaderEntity extends QueryPage implements Serializable {
private static final long serialVersionUID = 1L;
/**
*
*/
private Integer id;
/**
*
*/
private String site;
/**
* BU
*/
private String bu;
/**
* 分类编码
*/
private String classificationNo;
/**
* 分类名称
*/
private String classificationName;
/**
* 流程ID
*/
private String workflowId;
/**
* 菜单ID
*/
private String menuId;
/**
* 状态
*/
private String status;
/**
* 创建时间
*/
@TableField(fill = FieldFill.INSERT)
private Date createDate;
/**
* 创建人
*/
private String createBy;
/**
* 修改时间
*/
@TableField(fill = FieldFill.UPDATE)
private Date updateDate;
/**
* 修改人
*/
private String updateBy;
/**
* 备注
*/
private String remark;
}

128
src/main/java/com/spring/modules/request/mapper/RequestManageMapper.java

@ -0,0 +1,128 @@
package com.spring.modules.request.mapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.spring.modules.request.entity.PlmRequestDetailEntity;
import com.spring.modules.request.vo.PlmRequestDetailVo;
import com.spring.modules.request.vo.PlmRequestHeaderVo;
import org.apache.ibatis.annotations.Mapper;
import org.apache.ibatis.annotations.Param;
import java.util.List;
@Mapper
public interface RequestManageMapper extends BaseMapper<PlmRequestHeaderVo> {
/*
* @Author yzz
* @Description 获取流程绑定信息的主表数据
* @Date 2024/4/9
* @param partInformationVoPage
* @param data
* @return IPage<MasterPartInformationVo>
*/
IPage<PlmRequestHeaderVo> getRequestMainData(Page<PlmRequestHeaderVo> partInformationVoPage, @Param("query") PlmRequestHeaderVo data);
/*
* @Author yzz
* @Description 获取流程绑定信息的主表数据 List
* @Date 2024/4/12
* @param data
* @return List<PlmRequestHeaderVo>
*/
List<PlmRequestHeaderVo> getRequestMainDataByList(@Param("query") PlmRequestHeaderVo data);
/*
* @Author yzz
* @Description 保存流程绑定信息的主表数据
* @Date 2024/4/10
* @param data
*/
void saveRequestHeader(PlmRequestHeaderVo data);
/*
* @Author yzz
* @Description 修改流程绑定信息的主表数据
* @Date 2024/4/10
* @param data
*/
void updateRequestHeader(PlmRequestHeaderVo data);
/*
* @Author yzz
* @Description 删除流程绑定信息的主表数据
* @Date 2024/4/10
* @param data
*/
void deleteRequestHeader(@Param("data") PlmRequestHeaderVo data);
/*
* @Author yzz
* @Description 删除了流程节点信息
* @Date 2024/4/12
* @param data
*/
void deleteRequestNode(@Param("data") PlmRequestHeaderVo data);
/*
* @Author yzz
* @Description 删除流程所有出口配置
* @Date 2024/4/12
* @param data
*/
void deleteRequestNodeDetail(@Param("data") PlmRequestHeaderVo data);
/*
* @Author yzz
* @Description 保存流程节点的出口配置
* @Date 2024/4/12
* @param data
*/
void saveRequestNodeDetail(List<PlmRequestDetailVo> data);
/*
* @Author yzz
* @Description 删除流程单个节点对应的出口配置
* @Date 2024/4/12
* @param data
*/
void deleteRequestNodeDetailByLine(@Param("site") String site, @Param("workflowId") String workflowId, @Param("nodeId") String nodeId, @Param("classificationNo") String classificationNo);
/*
* @Author yzz
* @Description 根据流程ID获取节点信息
* @Date 2024/4/11
* @param workflowId
*/
List<PlmRequestDetailVo> getRequestNodeData(@Param("workflowId") String workflowId);
/*
* @Author yzz
* @Description 保存生成的节点数据
* @Date 2024/4/11
* @param data
*/
void saveRequestNode(List<PlmRequestDetailEntity> dataList);
/*
* @Author yzz
* @Description 查询节点信息
* @Date 2024/4/11
* @param data
* @return List<PlmRequestDetailVo>
*/
List<PlmRequestDetailVo> getNodeInfoByWorkflow(@Param("query") PlmRequestDetailVo data);
/*
* @Author yzz
* @Description 获取流程节点现有的出口配置
* @Date 2024/4/12
* @param data
* @return List<PlmRequestDetailVo>
*/
List<PlmRequestDetailVo> getNodeDetail(@Param("query") PlmRequestDetailVo data);
}

81
src/main/java/com/spring/modules/request/service/RequestManageService.java

@ -0,0 +1,81 @@
package com.spring.modules.request.service;
import com.spring.common.utils.PageUtils;
import com.spring.modules.request.vo.PlmRequestDetailVo;
import com.spring.modules.request.vo.PlmRequestHeaderVo;
import java.util.List;
public interface RequestManageService {
/*
* @Author yzz
* @Description 获取流程绑定信息的主表数据
* @Date 2024/4/9
* @param data
* @return PageUtils
*/
PageUtils getRequestMainData(PlmRequestHeaderVo data);
/*
* @Author yzz
* @Description 保存流程绑定信息的主表数据
* @Date 2024/4/10
* @param data
*/
void saveRequestHeader(PlmRequestHeaderVo data);
/*
* @Author yzz
* @Description 修改流程绑定信息的主表数据
* @Date 2024/4/10
* @param inData
* @return R
*/
void updateRequestHeader(PlmRequestHeaderVo data);
/*
* @Author yzz
* @Description 删除流程信息的主表数据
* @Date 2024/4/10
* @param inData
* @return R
*/
void deleteRequestHeader(List<PlmRequestHeaderVo> data);
/*
* @Author yzz
* @Description 查询节点信息
* @Date 2024/4/11
* @param data
* @return List<PlmRequestDetailVo>
*/
List<PlmRequestDetailVo> getNodeInfoByWorkflow(PlmRequestDetailVo data);
/*
* @Author yzz
* @Description 获取流程节点现有的出口配置
* @Date 2024/4/12
* @param data
* @return List<PlmRequestDetailVo>
*/
List<PlmRequestDetailVo> getNodeDetail(PlmRequestDetailVo data);
/*
* @Author yzz
* @Description 保存流程节点的出口配置
* @Date 2024/4/12
* @param data
*/
void saveRequestNodeDetail(List<PlmRequestDetailVo> data);
/*
* @Author yzz
* @Description 删除当前流程节点的全部出口配置
* @Date 2024/4/12
* @param data
*/
void deleteRequestNodeDetailByLine(PlmRequestDetailVo data);
}

135
src/main/java/com/spring/modules/request/service/impl/RequestManageServiceImpl.java

@ -0,0 +1,135 @@
package com.spring.modules.request.service.impl;
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.spring.common.utils.PageUtils;
import com.spring.modules.base.service.TransNoControlService;
import com.spring.modules.request.entity.PlmRequestDetailEntity;
import com.spring.modules.request.mapper.RequestManageMapper;
import com.spring.modules.request.service.RequestManageService;
import com.spring.modules.request.vo.PlmRequestDetailVo;
import com.spring.modules.request.vo.PlmRequestHeaderVo;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import java.util.Date;
import java.util.List;
import java.util.stream.Collectors;
@Service
public class RequestManageServiceImpl extends ServiceImpl<RequestManageMapper, PlmRequestHeaderVo> implements RequestManageService {
@Autowired
private RequestManageMapper requestManageMapper;
@Autowired
private TransNoControlService transNoControlService;
@Override
public PageUtils getRequestMainData(PlmRequestHeaderVo data) {
IPage<PlmRequestHeaderVo> resultList = this.requestManageMapper.getRequestMainData(new Page<PlmRequestHeaderVo>(data.getPage(), data.getLimit()), data);
return new PageUtils(resultList);
}
@Override
@Transactional
public void saveRequestHeader(PlmRequestHeaderVo data) {
String workflowId = data.getWorkflowId();
//生成分类编码
String classificationNo = transNoControlService.transNo(data.getSite(), "classification_no");
data.setClassificationNo(classificationNo);
//数据校验
PlmRequestHeaderVo searchData = new PlmRequestHeaderVo();
searchData.setSite(data.getSite());
searchData.setWorkflowId(data.getWorkflowId());
searchData.setMenuId(data.getMenuId());
IPage<PlmRequestHeaderVo> requestMainData = this.requestManageMapper.getRequestMainData(new Page<PlmRequestHeaderVo>(1, 10), data);
if (requestMainData.getTotal()>0){
throw new RuntimeException(data.getWorkflowId()+"-"+data.getMenuId()+",已存在该绑定关系!");
}
//查询节点数据
List<PlmRequestDetailVo> requestNodeData = requestManageMapper.getRequestNodeData(workflowId);
//生成节点数据
List<PlmRequestDetailEntity> nodeList = requestNodeData
.stream()
.map(item -> new PlmRequestDetailEntity(data.getSite(),
data.getBu(), data.getClassificationNo(), item.getNodeId(),
item.getNodeName(), "", "", new Date(), data.getCreateBy(), "",workflowId))
.collect(Collectors.toList());
//保存信息
requestManageMapper.saveRequestNode(nodeList);
requestManageMapper.saveRequestHeader(data);
}
@Override
public void updateRequestHeader(PlmRequestHeaderVo data) {
//保存信息
requestManageMapper.updateRequestHeader(data);
}
@Override
@Transactional
public void deleteRequestHeader(List<PlmRequestHeaderVo> data) {
for (PlmRequestHeaderVo inData : data) {
//数据校验
PlmRequestHeaderVo searchData = new PlmRequestHeaderVo();
searchData.setSite(inData.getSite());
searchData.setClassificationNo(inData.getClassificationNo());
List<PlmRequestHeaderVo> requestMainData = this.requestManageMapper.getRequestMainDataByList(searchData);
if (requestMainData.size()==0){
throw new RuntimeException("数据结构发生变化,请刷新后再试!");
}
if (!"N".equalsIgnoreCase(requestMainData.get(0).getStatus())){
throw new RuntimeException(inData.getClassificationNo()+"数据发生变化,请刷新数据后再试!");
}
//删除主表信息
requestManageMapper.deleteRequestHeader(inData);
//删除节点表信息
requestManageMapper.deleteRequestNode(inData);
//删除节点参数信息
requestManageMapper.deleteRequestNodeDetail(inData);
}
}
@Override
public List<PlmRequestDetailVo> getNodeInfoByWorkflow(PlmRequestDetailVo data) {
List<PlmRequestDetailVo> nodeInfoByWorkflow = requestManageMapper.getNodeInfoByWorkflow(data);
return nodeInfoByWorkflow;
}
@Override
public List<PlmRequestDetailVo> getNodeDetail(PlmRequestDetailVo data) {
List<PlmRequestDetailVo> dataList = requestManageMapper.getNodeDetail(data);
return dataList;
}
@Override
@Transactional
public void saveRequestNodeDetail(List<PlmRequestDetailVo> data) {
String site = data.get(0).getSite();
String workflowId = data.get(0).getWorkflowId();
String nodeId = data.get(0).getNodeId();
String classificationNo = data.get(0).getClassificationNo();
//删除对应流程节点现有的出口配置
requestManageMapper.deleteRequestNodeDetailByLine(site,workflowId,nodeId,classificationNo);
//保存新的出口配置
requestManageMapper.saveRequestNodeDetail(data);
}
@Override
public void deleteRequestNodeDetailByLine(PlmRequestDetailVo data) {
String site = data.getSite();
String workflowId = data.getWorkflowId();
String nodeId = data.getNodeId();
String classificationNo = data.getClassificationNo();
//删除对应流程节点现有的出口配置
requestManageMapper.deleteRequestNodeDetailByLine(site,workflowId,nodeId,classificationNo);
}
}

11
src/main/java/com/spring/modules/request/vo/PlmRequestDetailVo.java

@ -0,0 +1,11 @@
package com.spring.modules.request.vo;
import com.spring.modules.request.entity.PlmRequestDetailEntity;
import lombok.Data;
@Data
public class PlmRequestDetailVo extends PlmRequestDetailEntity {
private String workflowname;
}

15
src/main/java/com/spring/modules/request/vo/PlmRequestHeaderVo.java

@ -0,0 +1,15 @@
package com.spring.modules.request.vo;
import com.spring.modules.request.entity.PlmRequestHeaderEntity;
import lombok.Data;
@Data
public class PlmRequestHeaderVo extends PlmRequestHeaderEntity {
private String workflowname; //流程标题
private String name; //菜单名称
private String buDesc; //BU描述
private String statusDesc; //状态描述
}

231
src/main/resources/mapper/request/RequestManageMapper.xml

@ -0,0 +1,231 @@
<?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.spring.modules.request.mapper.RequestManageMapper">
<select id="getRequestMainData" parameterType="com.spring.modules.request.vo.PlmRequestHeaderVo" resultType="com.spring.modules.request.vo.PlmRequestHeaderVo">
SELECT
a.site,
a.bu,
d.bu_desc,
a.classification_no,
a.classification_name,
a.menu_id,
c.name,
a.workflow_id,
b.workflowname,
a.status,
(case when a.status = 'Y' then '启用' else '停用' end) statusDesc,
a.remark,
a.create_by,
a.create_date,
a.update_by,
a.update_date
FROM plm_request_header a
LEFT JOIN [VIEW_Process_management_OA_PLM] b ON a.workflow_id = b.workflowid
LEFT JOIN sys_menu c ON a.menu_id = c.menu_id
LEFT JOIN BU d ON a.site = d.site AND a.bu = d.bu_no
<where>
<if test = "query.site != null and query.site != ''">
AND a.site like #{query.site}
</if>
<if test = "query.name != null and query.name != ''">
AND c.name like #{query.name}
</if>
<if test = "query.status != null and query.status != ''">
AND a.status = #{query.status}
</if>
<if test = "query.workflowId != null and query.workflowId != ''">
AND a.workflow_id like #{query.workflowId}
</if>
<if test = "query.workflowname != null and query.workflowname != ''">
AND b.workflowname like #{query.workflowname}
</if>
<if test = "query.classificationNo != null and query.classificationNo != ''">
AND a.workflow_id like #{query.classificationNo}
</if>
</where>
group by a.site, a.bu, d.bu_desc, a.classification_no, a.classification_name, a.menu_id, c.name, a.workflow_id,
b.workflowname, a.status, a.remark, a.create_by, a.create_date, a.update_by, a.update_date
</select>
<select id="getRequestMainDataByList" parameterType="com.spring.modules.request.vo.PlmRequestHeaderVo" resultType="com.spring.modules.request.vo.PlmRequestHeaderVo">
SELECT
a.site,
a.bu,
d.bu_desc,
a.classification_no,
a.classification_name,
a.menu_id,
c.name,
a.workflow_id,
b.workflowname,
a.status,
(case when a.status = 'Y' then '启用' else '停用' end) statusDesc,
a.remark,
a.create_by,
a.create_date,
a.update_by,
a.update_date
FROM plm_request_header a
LEFT JOIN [VIEW_Process_management_OA_PLM] b ON a.workflow_id = b.workflowid
LEFT JOIN sys_menu c ON a.site = c.site AND a.menu_id = c.menu_id
LEFT JOIN BU d ON a.site = d.site AND a.bu = d.bu_no
<where>
<if test = "query.site != null and query.site != ''">
AND a.site like #{query.site}
</if>
<if test = "query.name != null and query.name != ''">
AND c.name like #{query.name}
</if>
<if test = "query.workflowId != null and query.workflowId != ''">
AND a.workflow_id like #{query.workflowId}
</if>
<if test = "query.classificationNo != null and query.classificationNo != ''">
AND a.workflow_id like #{query.classificationNo}
</if>
</where>
group by a.site, a.bu, d.bu_desc, a.classification_no, a.classification_name, a.menu_id, c.name, a.workflow_id,
b.workflowname, a.status, a.remark, a.create_by, a.create_date, a.update_by, a.update_date
</select>
<insert id="saveRequestHeader">
INSERT INTO plm_request_header (site,bu,classification_no,classification_name,workflow_id,menu_id,status,create_date,create_by,remark)
values(#{site},#{bu},#{classificationNo},#{classificationName},#{workflowId},#{menuId},#{status},#{createDate},#{createBy},#{remark})
</insert>
<update id="updateRequestHeader" parameterType="com.spring.modules.request.vo.PlmRequestHeaderVo">
update plm_request_header
set classification_name = #{classificationName},
workflow_id = #{workflowId},
menu_id = #{menuId},
status = #{status},
remark = #{remark},
update_date = GETDATE(),
update_by = #{updateBy}
where classification_no = #{classificationNo}
</update>
<delete id="deleteRequestHeader">
delete from plm_request_header
where site = #{data.site} and classification_no = #{data.classificationNo}
</delete>
<delete id="deleteRequestNode">
delete from plm_request_node
where site = #{data.site} and classification_no = #{data.classificationNo}
</delete>
<delete id="deleteRequestNodeDetail">
delete from plm_request_node_detail
where site = #{data.site} and classification_no = #{data.classificationNo}
</delete>
<insert id="saveRequestNodeDetail">
INSERT INTO plm_request_node_detail (site, bu, classification_no, node_id, node_name,
create_date, create_by, remark, plm_field, oa_field, field_value,
order_ref1, order_ref2, order_ref3, order_ref4, field_desc, workflow_id)
values
<foreach item="data" index="index" collection="list" separator=",">
(#{data.site}, #{data.bu},#{data.classificationNo},#{data.nodeId},#{data.nodeName},
GETDATE(),#{data.createBy},#{data.remark},#{data.plmField},#{data.oaField},#{data.fieldValue}
,#{data.orderRef1},#{data.orderRef2},#{data.orderRef3},#{data.orderRef4},#{data.fieldDesc},#{data.workflowId})
</foreach>
</insert>
<delete id="deleteRequestNodeDetailByLine">
delete from plm_request_node_detail
where site = #{site} and workflow_id = #{workflowId}
and node_id = #{nodeId}
and classification_no = #{classificationNo}
</delete>
<select id="getRequestNodeData" resultType="com.spring.modules.request.vo.PlmRequestDetailVo">
SELECT
a.nodeid nodeId,
a.nodename nodeName
FROM VIEW_Process_management_OA_PLM a
<where>
<if test = "workflowId != null and workflowId != ''">
AND a.workflowid like #{workflowId}
</if>
</where>
</select>
<insert id="saveRequestNode">
INSERT INTO plm_request_node (site,bu,classification_no,node_id,node_name,node_type,create_date,create_by,remark,workflow_id)
values
<foreach item="data" index="index" collection="list" separator=",">
(#{data.site}, #{data.bu},#{data.classificationNo},#{data.nodeId},#{data.nodeName},#{data.nodeType},#{data.createDate}
,#{data.createBy},#{data.remark},#{data.workflowId})
</foreach>
</insert>
<select id="getNodeInfoByWorkflow" parameterType="com.spring.modules.request.vo.PlmRequestDetailVo" resultType="com.spring.modules.request.vo.PlmRequestDetailVo">
SELECT
a.site,
a.classification_no,
a.workflow_id,
c.workflowname,
a.node_id,
a.node_name,
a.node_type
FROM plm_request_node a
LEFT JOIN plm_request_header b ON a.site = b.site and a.classification_no = b.classification_no and a.workflow_id = b.workflow_id
LEFT JOIN VIEW_Process_management_OA_PLM c ON a.workflow_id = c.workflowid
<where>
<if test = "query.site != null and query.site != ''">
AND a.site like #{query.site}
</if>
<if test = "query.classificationNo != null and query.classificationNo != ''">
AND a.classification_no like #{query.classificationNo}
</if>
<if test = "query.workflowId != null and query.workflowId != ''">
AND a.workflow_id like #{query.workflowId}
</if>
</where>
group by a.site, a.classification_no, a.workflow_id, c.workflowname, a.node_id, a.node_name, a.node_type
</select>
<select id="getNodeDetail" parameterType="com.spring.modules.request.vo.PlmRequestDetailVo" resultType="com.spring.modules.request.vo.PlmRequestDetailVo">
select
site,
bu,
classification_no,
node_id,
node_name,
create_date,
create_by,
update_date,
update_by,
remark,
plm_field,
oa_field,
field_value,
field_desc,
workflow_id,
order_ref1,
order_ref2,
order_ref3,
order_ref4
from
plm_request_node_detail
<where>
<if test = "query.site != null and query.site != ''">
AND site like #{query.site}
</if>
<if test = "query.classificationNo != null and query.classificationNo != ''">
AND classification_no like #{query.classificationNo}
</if>
<if test = "query.workflowId != null and query.workflowId != ''">
AND workflow_id like #{query.workflowId}
</if>
<if test = "query.nodeId != null and query.nodeId != ''">
AND node_id like #{query.nodeId}
</if>
</where>
</select>
</mapper>
Loading…
Cancel
Save