流程手册代码导出,以及三个属性必填切换功能

This commit is contained in:
yujh 2024-08-09 11:13:06 +08:00
parent 333e05903e
commit 56c39716d5
3 changed files with 693 additions and 276 deletions

View File

@ -11,6 +11,7 @@ import java.util.HashSet;
import java.util.List;
import java.util.Map;
import java.util.Set;
import java.util.stream.Collectors;
import com.actionsoft.apps.coe.pal.constant.CoEConstant;
import com.actionsoft.apps.coe.pal.output.pr.util.PrReportComment;
@ -38,6 +39,7 @@ import com.actionsoft.apps.coe.pal.pal.repository.upfile.model.UpfileModel;
import com.actionsoft.apps.coe.pal.system.property.CoePropertyUtil;
import com.actionsoft.apps.coe.pal.util.HighSecurityUtil;
import com.actionsoft.apps.resource.plugin.profile.DCPluginProfile;
import com.actionsoft.bpms.commons.database.RowMap;
import com.actionsoft.bpms.commons.mvc.view.ResponseObject;
import com.actionsoft.bpms.server.DispatcherRequest;
import com.actionsoft.bpms.server.UserContext;
@ -282,7 +284,9 @@ public class Report1Gener {
}
prReportComment.getCommentContent2(dataMap, repositoryModel);//获取一些公共的数据(手册首页的手册岗位名称部门时间等)
JSONArray repositoryShapeTable = new JSONArray();//流程步骤Table
JSONArray roleMappingPostTable = new JSONArray();
JSONArray roleMappingPostTable = new JSONArray();//角色对应岗位Table
JSONArray criticalControlPointTable = new JSONArray();//关键控制点Table
@ -387,6 +391,7 @@ public class Report1Gener {
}
JSONObject _tr = new JSONObject();
JSONObject _roleMappingPostTr = new JSONObject();
JSONObject _criticalControlPointTr = new JSONObject();
OutputWordUtil.setShapeDefaultValue2(repositoryId, _tr); //设置默认值
@ -510,8 +515,12 @@ public class Report1Gener {
String querySqlRole = " SELECT RELATIONSHAPEID FROM APP_ACT_COE_PAL_SHAPE_RLAT WHERE SHAPEID = ? AND ATTRID = ?";
String relationShapeId = DBSql.getString(querySqlRole, new Object[]{shapeId, "role"});
String querySql = " SELECT RELATIONSHAPETEXT FROM APP_ACT_COE_PAL_SHAPE_RLAT WHERE SHAPEID = ? AND ATTRID = ?";
String postInfo = DBSql.getString(querySql, new Object[]{relationShapeId, "post"});
if(UtilString.isNotEmpty(postInfo)){
//可能存在一个角色对应多个岗位的关系
List<RowMap> maps = DBSql.getMaps(querySql, new Object[]{relationShapeId, "post"});
if(!maps.isEmpty()){
String postInfo = maps.stream()
.map(rowMap -> (String) rowMap.get("RELATIONSHAPETEXT")) // 提取每个Map中的RELATIONSHAPETEXT字段
.collect(Collectors.joining(",")); // 使用逗号拼接字符串
_roleMappingPostTr.put("shape_number",roleMappingPostIndex);
_roleMappingPostTr.put("roleMapping_role",attrValue);
_roleMappingPostTr.put("roleMapping_post",postInfo);
@ -520,12 +529,35 @@ public class Report1Gener {
roleMappingPostIndex++;
}
}
//增加关键控制点table
if("isCriticalControlPoint".equals(attrId) && "".equals(attrValue)){
//遍历
_criticalControlPointTr.put("shapeName",shape.get("name"));
for (int j = 0; j < dataAttributes.size(); j++) {
JSONObject json = dataAttributes.getJSONObject(j);
String jsonAttrId = json.getString("key");
String jsonAttrValue = json.getString("value");
if("controlDesc".equals(jsonAttrId)){
_criticalControlPointTr.put("controlDesc",jsonAttrValue);
}
if("mappingRiskDescription".equals(jsonAttrId)){
_criticalControlPointTr.put("mappingRiskDescription",jsonAttrValue);
}
if("role".equals(jsonAttrId)){
_criticalControlPointTr.put("role",jsonAttrValue);
}
}
}
}
}
repositoryShapeTable.add(_tr);
if(!_roleMappingPostTr.isEmpty()){
roleMappingPostTable.add(_roleMappingPostTr);
}
if(!_criticalControlPointTr.isEmpty()){
criticalControlPointTable.add(_criticalControlPointTr);
}
index++;
}
}
@ -802,6 +834,9 @@ public class Report1Gener {
dataMap.put("roleMappingPostTable", roleMappingPostTable);
dataMap.put("roleMappingPostTableCount", roleMappingPostTable.size());
dataMap.put("criticalControlPointTable", criticalControlPointTable);
dataMap.put("criticalControlPointTableCount", criticalControlPointTable.size());
boolean contains = isNumberAscArray.contains("false");
if(contains) {
fileTable.sort(Comparator.comparing(obj -> ((JSONObject) obj).getString("file_name")));

View File

@ -4942,278 +4942,278 @@ y7fdOgAAAABJRU5ErkJggk==
</w:tr>
</#list>
</w:tbl>
</#if>
<!-- 角色岗位表开始 -->
<#if (roleMappingPostTableCount ==0 )>
<#else>
<w:p wsp:rsidR="00AC2941" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="1"/>
<w:listPr>
<wx:t wx:val=""/>
<wx:font wx:val="宋体"/>
</w:listPr>
</w:pPr>
<aml:annotation aml:id="4" w:type="Word.Bookmark.Start" w:name="_Toc112685144"/>
<w:r>
<w:t>角色岗位对应表</w:t>
</w:r>
<aml:annotation aml:id="4" w:type="Word.Bookmark.End"/>
</w:p>
<w:tbl>
<w:tblPr>
<w:tblW w:w="0" w:type="auto"/>
<w:tblInd w:w="0" w:type="dxa"/>
<w:tblBorders>
<w:top w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:left w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:bottom w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:right w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideH w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideV w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
</w:tblBorders>
<w:tblLayout w:type="Fixed"/>
</w:tblPr>
<w:tblGrid>
<w:gridCol w:w="789"/>
<w:gridCol w:w="6393"/>
<w:gridCol w:w="6393"/>
</w:tblGrid>
<w:tr wsp:rsidR="00AC2941" wsp:rsidRPr="006A6A9A" wsp:rsidTr="007A3F31">
<w:trPr>
<w:tblHeader/>
</w:trPr>
<w:tc>
<w:tcPr>
<w:tcW w:w="789" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:shd w:val="clear" w:color="CCCCCC" w:fill="auto"/>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="TABLEHEAD"/>
<w:spacing w:before="45" w:after="45"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
<w:t>序号</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="1729" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:shd w:val="clear" w:color="CCCCCC" w:fill="auto"/>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="TABLEHEAD"/>
<w:spacing w:before="45" w:after="45"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
<w:t>角色</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="68270" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:shd w:val="clear" w:color="CCCCCC" w:fill="auto"/>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="TABLEHEAD"/>
<w:spacing w:before="45" w:after="45"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
<w:t>岗位</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<#list roleMappingPostTable as table3>
<w:tr wsp:rsidR="00AC2941" wsp:rsidTr="007A3F31">
<w:tc>
<w:tcPr>
<w:tcW w:w="789" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="006A6A9A">
<w:pPr>
<w:pStyle w:val="TABLEITEMCENTER"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table3.shape_number}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="1729" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="006A6A9A">
<w:pPr>
<w:pStyle w:val="TABLEITEM"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:color w:val="auto"/>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table3.roleMapping_role}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="3827" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="006A6A9A">
<w:pPr>
<w:pStyle w:val="TABLEITEM"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table3.roleMapping_post}</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
</#list>
</w:tbl>
</#if>
<!-- 角色岗位表结束 -->
</#if>
<!-- 角色岗位表开始 -->
<#if (roleMappingPostTableCount ==0 )>
<#else>
<w:p wsp:rsidR="00AC2941" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="1"/>
<w:listPr>
<wx:t wx:val=""/>
<wx:font wx:val="宋体"/>
</w:listPr>
</w:pPr>
<aml:annotation aml:id="4" w:type="Word.Bookmark.Start" w:name="_Toc112685144"/>
<w:r>
<w:t>角色岗位对应表</w:t>
</w:r>
<aml:annotation aml:id="4" w:type="Word.Bookmark.End"/>
</w:p>
<w:tbl>
<w:tblPr>
<w:tblW w:w="0" w:type="auto"/>
<w:tblInd w:w="0" w:type="dxa"/>
<w:tblBorders>
<w:top w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:left w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:bottom w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:right w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideH w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideV w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
</w:tblBorders>
<w:tblLayout w:type="Fixed"/>
</w:tblPr>
<w:tblGrid>
<w:gridCol w:w="789"/>
<w:gridCol w:w="6393"/>
<w:gridCol w:w="6393"/>
</w:tblGrid>
<w:tr wsp:rsidR="00AC2941" wsp:rsidRPr="006A6A9A" wsp:rsidTr="007A3F31">
<w:trPr>
<w:tblHeader/>
</w:trPr>
<w:tc>
<w:tcPr>
<w:tcW w:w="789" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:shd w:val="clear" w:color="CCCCCC" w:fill="auto"/>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="TABLEHEAD"/>
<w:spacing w:before="45" w:after="45"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
<w:t>序号</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="1729" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:shd w:val="clear" w:color="CCCCCC" w:fill="auto"/>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="TABLEHEAD"/>
<w:spacing w:before="45" w:after="45"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
<w:t>角色</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="68270" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:shd w:val="clear" w:color="CCCCCC" w:fill="auto"/>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="TABLEHEAD"/>
<w:spacing w:before="45" w:after="45"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
<w:t>岗位</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<#list roleMappingPostTable as table3>
<w:tr wsp:rsidR="00AC2941" wsp:rsidTr="007A3F31">
<w:tc>
<w:tcPr>
<w:tcW w:w="789" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="006A6A9A">
<w:pPr>
<w:pStyle w:val="TABLEITEMCENTER"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table3.shape_number}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="1729" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="006A6A9A">
<w:pPr>
<w:pStyle w:val="TABLEITEM"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:color w:val="auto"/>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table3.roleMapping_role}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="3827" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="006A6A9A">
<w:pPr>
<w:pStyle w:val="TABLEITEM"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table3.roleMapping_post}</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
</#list>
</w:tbl>
</#if>
<!-- 角色岗位表结束 -->
<w:p wsp:rsidR="00751D62" wsp:rsidRDefault="00751D62">
<w:pPr>
<w:pStyle w:val="IDSTYLERDDEFAULT"/>
@ -6215,6 +6215,7 @@ y7fdOgAAAABJRU5ErkJggk==
</w:tbl>
</#if>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00783EFF" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="IDSTYLERDDEFAULT"/>
@ -6450,8 +6451,356 @@ y7fdOgAAAABJRU5ErkJggk==
</w:p>
</wx:sub-section>
</#if>
<!-- 关键控制点风险矩阵开始 -->
<#if (criticalControlPointTableCount ==0 )>
<#else>
<w:p wsp:rsidR="00AC2941" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="1"/>
<w:listPr>
<wx:t wx:val=""/>
<wx:font wx:val="宋体"/>
</w:listPr>
</w:pPr>
<aml:annotation aml:id="4" w:type="Word.Bookmark.Start" w:name="_Toc112685144"/>
<w:r>
<w:t>关键控制点风险矩阵</w:t>
</w:r>
<aml:annotation aml:id="4" w:type="Word.Bookmark.End"/>
</w:p>
<w:tbl>
<w:tblPr>
<w:tblW w:w="0" w:type="auto"/>
<w:tblInd w:w="0" w:type="dxa"/>
<w:tblBorders>
<w:top w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:left w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:bottom w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:right w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideH w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
<w:insideV w:val="single" w:sz="4" wx:bdrwidth="10" w:space="0" w:color="auto"/>
</w:tblBorders>
<w:tblLayout w:type="Fixed"/>
</w:tblPr>
<w:tblGrid>
<w:gridCol w:w="1500"/>
<w:gridCol w:w="2500"/>
<w:gridCol w:w="2500"/>
<w:gridCol w:w="2500"/>
</w:tblGrid>
<w:tr wsp:rsidR="00AC2941" wsp:rsidRPr="006A6A9A" wsp:rsidTr="007A3F31">
<w:trPr>
<w:tblHeader/>
</w:trPr>
<w:tc>
<w:tcPr>
<w:tcW w:w="2000" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:shd w:val="clear" w:color="CCCCCC" w:fill="auto"/>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="TABLEHEAD"/>
<w:spacing w:before="45" w:after="45"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
<w:t>关键控制点</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="5000" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:shd w:val="clear" w:color="CCCCCC" w:fill="auto"/>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="TABLEHEAD"/>
<w:spacing w:before="45" w:after="45"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
<w:t>控制描述</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="5000" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:shd w:val="clear" w:color="CCCCCC" w:fill="auto"/>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="TABLEHEAD"/>
<w:spacing w:before="45" w:after="45"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
<w:t>对应风险描述</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="5000" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:shd w:val="clear" w:color="CCCCCC" w:fill="auto"/>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="TABLEHEAD"/>
<w:spacing w:before="45" w:after="45"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
<w:shd w:val="clear" w:color="auto" w:fill="auto"/>
</w:rPr>
<w:t>角色/岗位</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
<#list criticalControlPointTable as table4>
<w:tr wsp:rsidR="00AC2941" wsp:rsidTr="007A3F31">
<w:tc>
<w:tcPr>
<w:tcW w:w="2000" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="006A6A9A">
<w:pPr>
<w:pStyle w:val="TABLEITEMCENTER"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table4.shapeName}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="5000" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="006A6A9A">
<w:pPr>
<w:pStyle w:val="TABLEITEM"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:color w:val="auto"/>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table4.controlDesc}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="5000" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="006A6A9A">
<w:pPr>
<w:pStyle w:val="TABLEITEM"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table4.mappingRiskDescription}</w:t>
</w:r>
</w:p>
</w:tc>
<w:tc>
<w:tcPr>
<w:tcW w:w="5000" w:type="dxa"/>
<w:tcBorders>
<w:top w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:left w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:bottom w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:right w:val="single" w:sz="6" wx:bdrwidth="15" w:space="0" w:color="000000"/>
<w:tl2br w:val="nil"/>
<w:tr2bl w:val="nil"/>
</w:tcBorders>
<w:tcMar>
<w:top w:w="0" w:type="dxa"/>
<w:left w:w="108" w:type="dxa"/>
<w:right w:w="108" w:type="dxa"/>
</w:tcMar>
<w:vAlign w:val="center"/>
</w:tcPr>
<w:p wsp:rsidR="00AC2941" wsp:rsidRPr="00491D9E" wsp:rsidRDefault="006A6A9A">
<w:pPr>
<w:pStyle w:val="TABLEITEM"/>
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
</w:pPr>
<w:r wsp:rsidRPr="00491D9E">
<w:rPr>
<w:sz w:val="21"/>
<w:sz-cs w:val="21"/>
</w:rPr>
<w:t>${table4.role}</w:t>
</w:r>
</w:p>
</w:tc>
</w:tr>
</#list>
</w:tbl>
</#if>
<!-- 关键控制点风险矩阵结束 -->
<#if (supports_table_count >0 )>
<wx:sub-section>
<w:p wsp:rsidR="00AC2941" wsp:rsidRDefault="00AC2941">
<w:pPr>
<w:pStyle w:val="1"/>

View File

@ -1446,6 +1446,8 @@ function getPrivateAttributeHtml(attributesJsonArray, tbodyId, shape) {
mouseout = "";
}
$("#" + tbodyId).empty();
//判断是否涉及关键控制点,修改属性必填项
updateArrayByControlPoint(attributesJsonArray);
for (var index = 0; index < attributesJsonArray.length; index++) {
var obj = attributesJsonArray[index];
if (obj != null && obj != undefined && obj.value != undefined) {
@ -1464,7 +1466,6 @@ function getPrivateAttributeHtml(attributesJsonArray, tbodyId, shape) {
if (obj.isRequired !== null && obj.isRequired) {
requiredSpan = '<span style="color: #f04134;float:right">*</span>'
}
var isdesc = obj.desc == undefined ? "" : obj.desc;
var constr = '<tr ' + mouseout + mouseover + ' objid="' + obj.id + '" class="tagContentTableTr">'
+ ' <td>' + objName + requiredSpan + '</td>'
@ -2250,6 +2251,34 @@ function updateAttributeById(objId, va, shapeId) {
}
}
function updateArrayByControlPoint(attributesJsonArray){
//如果关键控制位是,则更新更新为必填
var isCriticalControlPoint="否";
attributesJsonArray.forEach(obj => {
// 检查id是否匹配
if (obj.id === 'isCriticalControlPoint') {
isCriticalControlPoint = obj.value;
}
});
attributesJsonArray.forEach(obj => {
if(isCriticalControlPoint === "是"){
if(obj.id ==="controlDesc"){
obj.isRequired = true;
}
if(obj.id ==="mappingRiskDescription"){
obj.isRequired = true;
}
}else{
if(obj.id ==="controlDesc"){
obj.isRequired = false;
}
if(obj.id ==="mappingRiskDescription"){
obj.isRequired = false;
}
}
});
}
// 删除行上的属性
function removeTrAttribute(obj) {
var options = {
@ -4009,6 +4038,9 @@ function getBooleanSelectOptions(booleanValues, shapeId) {
if (selectedData != null && selectedData != '') {
$("#attribute_name_input_" + objId).val(selectedData[0]).trigger("change");
}
$obj.on("select2:select", function (e) {
alert(1);
});
$obj.off("select2:close").on("select2:close", function (e) {
// var type = this.id.substring(this.id.lastIndexOf('_')+1);
var type = this.id.substr('attribute_name_input_'.length);
@ -4020,6 +4052,7 @@ function getBooleanSelectOptions(booleanValues, shapeId) {
booleanComboboxs[type] = selectValue.join(',');
saveSelectContent(type, booleanComboboxs[type], shapeId);
});
$("#attribute_name_input_" + objId + "_Tip").css({"float": "left", "border": "0"});
}
}