|
|
"use strict";(self.webpackChunk=self.webpackChunk||[]).push([[95125],{43387:function(e,n,t){t.d(n,{Z:function(){return W}});var r=t(87462),l=t(97685),i=t(4942),o=t(45987),a=t(67294),s=t(94184),c=t.n(s),d=t(16397),u=(0,a.createContext)({}),m=t(1413),p=t(71002),x={},f=[];function h(e,n){}function v(e,n){}function j(e,n,t){n||x[t]||(e(!1,t),x[t]=!0)}function g(e,n){j(h,e,n)}g.preMessage=function(e){f.push(e)},g.resetWarned=function(){x={}},g.noteOnce=function(e,n){j(v,e,n)};var b=g;function y(){return!("undefined"==typeof window||!window.document||!window.document.createElement)}var _="data-rc-order",C="rc-util-key",k=new Map;function w(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{},n=e.mark;return n?n.startsWith("data-")?n:"data-".concat(n):C}function N(e){return e.attachTo?e.attachTo:document.querySelector("head")||document.body}function O(e){return"queue"===e?"prependQueue":e?"prepend":"append"}function I(e){return Array.from((k.get(e)||e).children).filter((function(e){return"STYLE"===e.tagName}))}function S(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{};if(!y())return null;var t=n.csp,r=n.prepend,l=document.createElement("style");l.setAttribute(_,O(r)),null!=t&&t.nonce&&(l.nonce=null==t?void 0:t.nonce),l.innerHTML=e;var i=N(n),o=i.firstChild;if(r){if("queue"===r){var a=I(i).filter((function(e){return["prepend","prependQueue"].includes(e.getAttribute(_))}));if(a.length)return i.insertBefore(l,a[a.length-1].nextSibling),l}i.insertBefore(l,o)}else i.appendChild(l);return l}function Z(e){var n=arguments.length>1&&void 0!==arguments[1]?arguments[1]:{},t=N(n);return I(t).find((function(t){return t.getAttribute(w(n))===e}))}function E(e,n){var t=k.get(e);if(!t||!function(e,n){if(!e)return!1;if(e.contains)return e.contains(n);for(var t=n;t;){if(t===e)return!0;t=t.parentNode}return!1}(document,t)){var r=S("",n),l=r.parentNode;k.set(e,l),e.removeChild(r)}}function T(e){var n;return null==e||null===(n=e.getRootNode)||void 0===n?void 0:n.call(e)}function P(e){return function(e){return T(e)!==(null==e?void 0:e.ownerDocument)}(e)?T(e):null}function L(e){return"object"===(0,p.Z)(e)&&"string"==typeof e.name&&"string"==typeof e.theme&&("object"===(0,p.Z)(e.icon)||"function"==typeof e.icon)}function D(){var e=arguments.length>0&&void 0!==arguments[0]?arguments[0]:{};return Object.keys(e).reduce((function(n,t){var r=e[t];if("class"===t)n.className=r,delete n.class;else n[t]=r;return n}),{})}function z(e,n,t){return t?a.createElement(e.tag,(0,m.Z)((0,m.Z)({key:n},D(e.attrs)),t),(e.children||[]).map((function(t,r){return z(t,"".concat(n,"-").concat(e.tag,"-").concat(r))}))):a.createElement(e.tag,(0,m.Z)({key:n},D(e.attrs)),(e.children||[]).map((function(t,r){return z(t,"".concat(n,"-").concat(e.tag,"-").concat(r))})))}function B(e){return(0,d.generate)(e)[0]}function R(e){return e?Array.isArray(e)?e:[e]:[]}var A=function(e){var n=(0,a.useContext)(u),t=n.csp,r=n.prefixCls,l="\n.anticon {\n display: inline-block;\n color: inherit;\n font-style: normal;\n line-height: 0;\n text-align: center;\n text-transform: none;\n vertical-align: -0.125em;\n text-rendering: optimizeLegibility;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.anticon > * {\n line-height: 1;\n}\n\n.anticon svg {\n display: inline-block;\n}\n\n.anticon::before {\n display: none;\n}\n\n.anticon .anticon-icon {\n display: block;\n}\n\n.anticon[tabindex] {\n cursor: pointer;\n}\n\n.anticon-spin::before,\n.anticon-spin {\n display: inline-block;\n -webkit-animation: loadingCircle 1s infinite linear;\n animation: loadingCircle 1s infinite linear;\n}\n\n@-webkit-keyframes loadingCircle {\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n\n@keyframes loadingCircle {\n 100% {\n -webkit-transform: rotate(360deg);\n transform: rotate(360deg);\n }\n}\n";r&&(l=l.replace(/anticon/g,r)),(0,a.useEffect)((function(){var n=P(e.current);!function(e,n){var t=arguments.length>2&&void 0!==arguments[2]?arguments[2]:{};E(N(t),t);var r=Z(n,t);if(r){var l,i,o;return null!==(l=t.csp)&&void 0!==l&&l.nonce&&r.nonce!==(null===(i=t.csp)||void 0===i?void 0:i.nonce)&&(r.nonce=null===(o=t.csp)||void 0===o?void 0:o.nonce),r.innerHTML!==e&&(r.innerHTML=e),r}var a=S(e,t);a.setAttribute(w(t),n)}(l,"@ant-design-icons",{prepend:!0,csp:t,attachTo:n})}),[])},M=["icon","className","onClick","style","primaryColor","secondaryColor"],$={primaryColor:"#333",secondaryColor:"#E6E6E6",calculated:!1};var H=function(e){var n,t,r=e.icon,l=e.className,i=e.onClick,s=e.style,c=e.primaryColor,d=e.secondaryColor,u=(0,o.Z)(e,M),p=a.useRef(),x=$;if(c&&(x={primaryColor:c,secondaryColor:d||B(c)}),A(p),n=L(r),t="icon should be icon definiton, but got ".concat(r),b(n,"[@ant-design/icons] ".concat(t)),!L(r))return null;var f=r;return f&&"function"==typeof f.icon&&(f=(0,m.Z)((0,m.Z)({},f),{},{icon:f.icon(x.primaryColor,x.secondaryColor)})),z(f.icon,"svg-".concat(f.name),(0,m.Z)((0,m.Z)({className:l,onClick:i,style:s,"data-icon":f.name,width:"1em",height:"1em",fill:"currentColor","aria-hidden":"true"},u),{},{ref:p}))};H.displayName="IconReact",H.getTwoToneColors=function(){return(0,m.Z)({},$)},H.setTwoToneColors=function(e){var n=e.primaryColor,t=e.secondaryColor;$.primaryColor=n,$.secondaryColor=t||B(n),$.calculated=!!t};var F=H;function X(e){var n=R(e),t=(0,l.Z)(n,2),r=t[0],i=t[1];return F.setTwoToneColors({primaryColor:r,secondaryColor:i})}var Q=["className","icon","spin","rotate","tabIndex","onClick","twoToneColor"];X(d.blue.primary);var K=a.forwardRef((function(e,n){var t,s=e.className,d=e.icon,m=e.spin,p=e.rotate,x=e.tabIndex,f=e.onClick,h=e.twoToneColor,v=(0,o.Z)(e,Q),j=a.useContext(u),g=j.prefixCls,b=void 0===g?"anticon":g,y=j.rootClassName,_=c()(y,b,(t={},(0,i.Z)(t,"".concat(b,"-").concat(d.name),!!d.name),(0,i.Z)(t,"".concat(b,"-spin"),!!m||"loading"===d.name),t),s),C=x;void 0===C&&f&&(C=-1);var k=p?{msTransform:"rotate(".concat(p,"deg)"),transform:"rotate(".concat(p,"deg)")}:void 0,w=R(h),N=(0,l.Z)(w,2),O=N[0],I=N[1];return a.createElement("span",(0,r.Z)({role:"img","aria-label":d.name},v,{ref:n,tabIndex:C,onClick:f,className:_}),a.createElement(F,{icon:d,primaryColor:O,secondaryColor:I,style:k}))}));K.displayName="AntdIcon",K.getTwoToneColor=function(){var e=F.getTwoToneColors();return e.calculated?[e.primaryColor,e.secondaryColor]:e.primaryColor},K.setTwoToneColor=X;var W=K},82826:function(e,n,t){t.d(n,{Z:function(){return s}});var r=t(87462),l=t(67294),i={icon:{tag:"svg",attrs:{viewBox:"64 64 896 896",focusable:"false"},children:[{tag:"path",attrs:{d:"M872 474H286.9l350.2-304c5.6-4.9 2.2-14-5.2-14h-88.5c-3.9 0-7.6 1.4-10.5 3.9L155 487.8a31.96 31.96 0 000 48.3L535.1 866c1.5 1.3 3.3 2 5.2 2h91.5c7.4 0 10.8-9.2 5.2-14L286.9 550H872c4.4 0 8-3.6 8-8v-60c0-4.4-3.6-8-8-8z"}}]},name:"arrow-left",theme:"outlined"},o=t(43387),a=function(e,n){return l.createElement(o.Z,(0,r.Z)({},e,{ref:n,icon:i}))};var s=l.forwardRef(a)},35951:function(e,n,t){t.r(n),t.d(n,{default:function(){return O}});var r=t(42122),l=t.n(r),i=t(17061),o=t.n(i),a=t(17156),s=t.n(a),c=t(27424),d=t.n(c),u=t(67294),m=t(88275),p=t(71230),x=t(85673),f=t(15746),h=t(36182),v=t(78045),j=t(76661),g=t(14446),b=t(82826),y={flex_box_center:"flex_box_center___Qx5by",flex_space_between:"flex_space_between___Jovvb",flex_box_vertical_center:"flex_box_vertical_center___ZgKxt",flex_box_center_end:"flex_box_center_end___rLoZQ",flex_box_column:"flex_box_column___H7gvw",title:"title___mKlZQ",link:"link____MbLK",wrap:"wrap___M54Mm",info:"info___LS1sD",name:"name___XFTyf",box:"box___MY5TN",tab:"tab___Pts7W",group:"group___KTR8B",modal:"modal___wynb6",head:"head___rpYjK",des:"des___PNfp8",sub:"sub___LF5wd",tags:"tags___tdrDl"},_=t(84519),C=t(27484),k=t.n(C),w=t(59758),N=t(85893),O=(0,m.connect)((function(e){return{exercise:e.exercise,user:e.user}}))((function(e){e.exercise;var n,t,r,i=e.user,a=(e.dispatch,null===(n=window.location.pathname)||void 0===n?void 0:n.includes("exercise")),c=a?"exercise":"shixun_homework",C=(0,m.useParams)(),O=i.userInfo,I=(0,u.useState)({}),S=d()(I,2),Z=S[0],E=S[1],T=(0,u.useState)(),P=d()(T,2),L=P[0],D=P[1],z=(0,u.useState)(0),B=d()(z,2),R=B[0],A=B[1],M=(0,u.useState)([]),$=d()(M,2),H=$[0],F=$[1],X=(0,u.useState)(!0),Q=d()(X,2),K=Q[0],W=Q[1],q=(0,u.useState)(!1),Y=d()(q,2),G=Y[0],J=Y[1],U=(0,u.useState)(0),V=d()(U,2),ee=V[0],ne=V[1],te=(0,u.useState)({type:"2",degree:0,page:1,limit:10,id:C.studentId}),re=d()(te,2),le=re[0],ie=re[1],oe=(null==Z?void 0:Z.analysis_data)||{},ae=oe.bug,se=oe.vulnerability,ce=oe.codeSmall;(0,u.useEffect)((function(){de(),ue(le)}),[]);var de=function(){var e=s()(o()().mark((function e(){var n;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,_.ZP)("/api/code_analyses_detail/analyse_detail.json",{method:"get",params:{id:C.studentId}});case 2:0===(n=e.sent).status&&E(n.data);case 4:case"end":return e.stop()}}),e)})));return function(){return e.apply(this,arguments)}}(),ue=function(){var e=s()(o()().mark((function e(n){var t,r;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return W(!0),e.next=3,(0,_.ZP)("/api/code_analyses_detail/analyse_detail_list.json",{method:"get",params:n});case 3:0===(t=e.sent).status&&(F(t.data.recordList),ne(null===(r=t.data)||void 0===r?void 0:r.recordSum)),W(!1);case 6:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}(),me={"阻断":(0,N.jsx)("i",{style:{color:"#D4333F"},className:"iconfont icon-zuduan font14"}),"严重":(0,N.jsx)("i",{style:{color:"#D4333F"},className:"iconfont icon-yanzhong font14"}),"主要":(0,N.jsx)("i",{style:{color:"#D4333F"},className:"iconfont icon-zhuyao font14"}),"次要":(0,N.jsx)("i",{style:{color:"#B0D513"},className:"iconfont icon-ciyao font14"}),"提示":(0,N.jsx)("i",{style:{color:"#4B9FD5"},className:"iconfont icon-tishi10 font14"}),Bug:(0,N.jsx)("i",{className:"iconfont icon-bug"}),"漏洞":(0,N.jsx)("i",{className:"iconfont icon-loudong1"}),"代码规范":(0,N.jsx)("i",{className:"iconfont icon-yiwei"})},pe=[{title:"序号",dataIndex:"name",align:"left",width:80,render:function(e,n,t){return le.limit*(le.page-1)+t+1}},{title:"".concat("2"===le.type?"Bug":"3"===le.type?"漏洞":"规范异常","名称"),align:"left",ellipsis:!0,dataIndex:"name",render:function(e,n){return(0,N.jsx)("a",{target:"_blank",href:"/classrooms/".concat(C.coursesId,"/").concat(c,"/").concat(C.exerciseId,"/analysis/").concat(C.studentId,"/code?name=").concat(null==Z?void 0:Z.user_name,"&rule_id=").concat(n.ruleId,"&uuid=").concat(n.uuid,"&issueId=").concat(n.issueId,"&language=").concat(n.language,"&rowNumber=").concat(n.rowNumber),className:y.link,children:e})}},{title:"文件路径",align:"left",ellipsis:!0,dataIndex:"filePath"},{title:"严重程度",align:"left",width:90,dataIndex:"level",render:function(e){return(0,N.jsxs)("span",{children:[me[e],(0,N.jsx)("span",{className:"ml5",children:e})]})}},{title:"操作",width:154,align:"left",dataIndex:"action",render:function(e,n){return(0,N.jsxs)(p.Z,{justify:"space-between",align:"middle",children:[(0,N.jsx)("span",{onClick:function(){return xe(n)},className:"current c-light-primary",children:"问题分析"}),(0,N.jsx)("a",{target:"_blank",href:"/classrooms/".concat(C.coursesId,"/").concat(c,"/").concat(C.exerciseId,"/analysis/").concat(C.studentId,"/code?name=").concat(null==Z?void 0:Z.user_name,"&rule_id=").concat(n.ruleId,"&uuid=").concat(n.uuid,"&issueId=").concat(n.issueId,"&language=").concat(n.language,"&rowNumber=").concat(n.rowNumber),className:"current c-light-primary",children:"代码详情"})]})}}],xe=function(){var e=s()(o()().mark((function e(n){var t;return o()().wrap((function(e){for(;;)switch(e.prev=e.next){case 0:return e.next=2,(0,_.ZP)("/api/code_analyses_detail/problem_analysis.json",{method:"get",params:{rule_id:n.ruleId}});case 2:0===(t=e.sent).status&&(D(l()(l()({},t.data),{},{level:n.level,type:"2"===le.type?"Bug":"3"===le.type?"漏洞":"代码规范"})),A(32));case 4:case"end":return e.stop()}}),e)})));return function(n){return e.apply(this,arguments)}}();return(0,N.jsxs)("section",{className:"edu-container",children:[(0,N.jsxs)("section",{className:"animated fadeIn",children:[(0,N.jsx)("aside",{className:"mt10",children:O&&(0,N.jsxs)(x.Z,{separator:">",children:[(0,N.jsx)(x.Z.Item,{children:(0,N.jsx)(m.Link,{to:"/classrooms/".concat(C.coursesId,"/").concat(c),children:null==O||null===(t=O.course)||void 0===t?void 0:t.course_name})}),(0,N.jsx)(x.Z.Item,{children:(0,N.jsxs)(m.Link,{to:"/classrooms/".concat(C.coursesId,"/").concat(c),children:[a?"考试":"实训","列表"]})}),(0,N.jsx)(x.Z.Item,{children:(0,N.jsxs)(m.Link,{to:"/classrooms/".concat(C.coursesId,"/").concat(c,"/").concat(null==C?void 0:C.exerciseId,"/detail"),children:[a?"试卷":"作业","详情"]})}),(0,N.jsx)(x.Z.Item,{children:null==Z?void 0:Z.user_name})]})}),(0,N.jsx)("aside",{className:[y.title,"mt20"].join(" "),children:(0,N.jsx)(p.Z,{style:{width:"100%"},children:(0,N.jsxs)(f.Z,{flex:"1",style:{lineHeight:"24px"},children:[(0,N.jsx)(m.Link,{to:"/classrooms/".concat(C.coursesId,"/").concat(c,"/").concat(null==C?void 0:C.exerciseId,"/detail"),children:(0,N.jsx)(b.Z,{className:"font16 c-black"})}),(0,N.jsx)("strong",{className:"font20 ml5",children:null==Z?void 0:Z.name}),(0,N.jsx)("span",{className:"iconfont icon-a-wenhaobeifen2",onClick:function(){J(!0)},style:{fontWeight:800,color:"#0152d9",float:"right",cursor:"pointer"},children:"规则说明"})]})})})]}),(0,N.jsxs)("section",{className:y.wrap,children:[(0,N.jsxs)("div",{className:y.info,children:[(0,N.jsx)("img",{src:"".concat(w.Z.IMG_SERVER,"/images/").concat(null==Z?void 0:Z.avatar),alt:""}),(0,N.jsxs)("ul",{style:{marginLeft:30},children:[(0,N.jsx)("li",{className:y.name,children:null==Z?void 0:Z.user_name}),(0,N.jsxs)("li",{children:[(0,N.jsx)("span",{children:"学号:"}),null==Z?void 0:Z.student_number]}),(0,N.jsxs)("li",{children:[(0,N.jsx)("span",{children:"代码行数:"}),null==Z?void 0:Z.total_row_number]})]}),(0,N.jsxs)("ul",{style:{marginTop:65},children:[(0,N.jsxs)("li",{children:[(0,N.jsx)("span",{children:"分班:"}),null==Z?void 0:Z.group_course_name]}),(0,N.jsxs)("li",{children:[(0,N.jsx)("span",{children:"复杂代码:"}),null==Z?void 0:Z.complexity]})]}),(0,N.jsxs)("ol",{children:[(0,N.jsx)("li",{children:"质量评分:"}),(0,N.jsx)("li",{children:null==Z?void 0:Z.quality_score})]})]}),(0,N.jsxs)("div",{className:y.box,children:[(0,N.jsxs)("ul",{children:[(0,N.jsxs)("li",{children:[(0,N.jsx)("p",{className:"mb20",children:null==ae?void 0:ae.total}),(0,N.jsx)("div",{children:"缺陷"})]}),(0,N.jsxs)("li",{children:[(0,N.jsxs)("div",{children:["等级:",(0,N.jsx)("b",{children:null==ae?void 0:ae.levelStr})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"阻断"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#A73E38",width:0===(null==ae?void 0:ae.blocker)?0:"".concat((null==ae?void 0:ae.blocker)/(null==ae?void 0:ae.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==ae?void 0:ae.blocker})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"严重"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#DB544D",width:0===(null==ae?void 0:ae.critical)?0:"".concat((null==ae?void 0:ae.critical)/(null==ae?void 0:ae.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==ae?void 0:ae.critical})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"主要"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#F7AB3E",width:0===(null==ae?void 0:ae.major)?0:"".concat((null==ae?void 0:ae.major)/(null==ae?void 0:ae.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==ae?void 0:ae.major})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"次要"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#E7DF37",width:0===(null==ae?void 0:ae.minor)?0:"".concat((null==ae?void 0:ae.minor)/(null==ae?void 0:ae.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==ae?void 0:ae.minor})]})]})]}),(0,N.jsxs)("ul",{children:[(0,N.jsxs)("li",{children:[(0,N.jsx)("p",{className:"mb20",children:null==se?void 0:se.total}),(0,N.jsx)("div",{children:"漏洞"})]}),(0,N.jsxs)("li",{children:[(0,N.jsxs)("div",{children:["等级:",(0,N.jsx)("b",{children:null==se?void 0:se.levelStr})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"阻断"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#A73E38",width:0===(null==se?void 0:se.blocker)?0:"".concat((null==se?void 0:se.blocker)/(null==se?void 0:se.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==se?void 0:se.blocker})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"严重"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#DB544D",width:0===(null==se?void 0:se.critical)?0:"".concat((null==se?void 0:se.critical)/(null==se?void 0:se.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==se?void 0:se.critical})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"主要"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#F7AB3E",width:0===(null==se?void 0:se.major)?0:"".concat((null==se?void 0:se.major)/(null==se?void 0:se.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==se?void 0:se.major})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"次要"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#E7DF37",width:0===(null==se?void 0:se.minor)?0:"".concat((null==se?void 0:se.minor)/(null==se?void 0:se.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==se?void 0:se.minor})]})]})]}),(0,N.jsxs)("ul",{children:[(0,N.jsxs)("li",{children:[(0,N.jsx)("p",{className:"mb20",children:null==ce?void 0:ce.total}),(0,N.jsx)("div",{children:"代码规范"})]}),(0,N.jsxs)("li",{children:[(0,N.jsxs)("div",{children:["等级:",(0,N.jsx)("b",{children:null==ce?void 0:ce.levelStr})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"阻断"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#A73E38",width:0===(null==ce?void 0:ce.blocker)?0:"".concat((null==ce?void 0:ce.blocker)/(null==ce?void 0:ce.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==ce?void 0:ce.blocker})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"严重"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#DB544D",width:0===(null==ce?void 0:ce.critical)?0:"".concat((null==ce?void 0:ce.critical)/(null==ce?void 0:ce.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==ce?void 0:ce.critical})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"主要"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#F7AB3E",width:0===(null==ce?void 0:ce.major)?0:"".concat((null==ce?void 0:ce.major)/(null==ce?void 0:ce.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==ce?void 0:ce.major})]}),(0,N.jsxs)("div",{children:[(0,N.jsx)("span",{children:"次要"}),(0,N.jsx)("div",{children:(0,N.jsx)("aside",{style:{background:"#E7DF37",width:0===(null==ce?void 0:ce.minor)?0:"".concat((null==ce?void 0:ce.minor)/(null==ce?void 0:ce.total)*100,"%")}})}),(0,N.jsx)("span",{children:null==ce?void 0:ce.minor})]})]})]})]}),(0,N.jsxs)(h.Z,{className:y.tab,activeKey:le.type,onChange:function(e){le.page=1,le.type=e,ie(l()({},le)),ue(le)},children:[(0,N.jsx)(h.Z.TabPane,{tab:"Bug (".concat((null==ae?void 0:ae.total)||0,")")},"2"),(0,N.jsx)(h.Z.TabPane,{tab:"漏洞 (".concat((null==se?void 0:se.total)||0,")")},"3"),(0,N.jsx)(h.Z.TabPane,{tab:"代码规范 (".concat((null==ce?void 0:ce.total)||0,")")},"1")]}),(0,N.jsxs)("div",{className:y.group,children:[(0,N.jsx)("span",{className:"mr5",children:"严重程度:"}),(0,N.jsxs)(v.ZP.Group,{value:le.degree,onChange:function(e){le.page=1,le.degree=e.target.value,ie(l()({},le)),ue(le)},children:[(0,N.jsx)(v.ZP,{value:0,children:"全部"}),(0,N.jsx)(v.ZP,{value:1,children:"阻断"}),(0,N.jsx)(v.ZP,{value:2,children:"严重"}),(0,N.jsx)(v.ZP,{value:3,children:"主要"}),(0,N.jsx)(v.ZP,{value:4,children:"次要"})]})]}),(0,N.jsx)(j.Z,{style:{padding:"30px 30px 0 30px"},dataSource:H,columns:pe,onChange:function(e){le.page=null==e?void 0:e.current,le.limit=null==e?void 0:e.pageSize,ie(l()({},le)),ue(le)},loading:K,pagination:{pageSize:le.limit,total:ee,current:le.page,showQuickJumper:!0,hideOnSinglePage:!0,position:["bottomCenter"],showTotal:function(e){return(0,N.jsxs)("span",{className:"mr10",children:["共",(0,N.jsx)("span",{className:"c-orange",children:e}),"条数据"]})}}})]}),(0,N.jsxs)("div",{className:y.modal,style:{height:"".concat(R,"vh")},children:[(0,N.jsxs)("div",{className:y.head,children:[(0,N.jsx)("span",{children:"问题分析"}),(0,N.jsx)("i",{className:"icon-zuixiaohua iconfont mt10",onClick:function(){return A(32)}}),(0,N.jsx)("i",{style:{margin:"0 18px"},className:"icon-fangda iconfont",onClick:function(){return A(80)}}),(0,N.jsx)("i",{className:"icon-guanbi7 iconfont",onClick:function(){return A(0)}})]}),(0,N.jsxs)("div",{className:y.des,children:[(0,N.jsx)("div",{className:y.sub,children:null==L?void 0:L.title}),(0,N.jsxs)("div",{className:y.tags,children:[(0,N.jsxs)("span",{children:[me[null==L?void 0:L.type]," ",null==L?void 0:L.type]}),(0,N.jsxs)("span",{children:[me[null==L?void 0:L.level]," ",null==L?void 0:L.level]}),(0,N.jsxs)("span",{children:[(0,N.jsx)("i",{className:"iconfont icon-biaoqian4 mr5"}),null==L||null===(r=L.tags)||void 0===r?void 0:r.join(",")]}),(0,N.jsxs)("span",{children:["生效时间",k()(null==L?void 0:L.createTime).format("ll")]}),(0,N.jsx)("span",{children:null==L?void 0:L.language}),(0,N.jsxs)("span",{children:["常量/任务:",null==L?void 0:L.constantIssue]})]}),(0,N.jsx)("div",{className:y.example,dangerouslySetInnerHTML:{__html:(null==L?void 0:L.example)||""}})]})]}),(0,N.jsxs)(g.Z,{open:G,title:"规则说明",width:800,footer:null,onCancel:function(){J(!1)},children:[(0,N.jsx)("p",{children:"一、等级规则"}),(0,N.jsx)("p",{style:{marginLeft:"10px"},children:"1. 缺陷等级"}),(0,N.jsx)("p",{style:{marginLeft:"10px"},children:(0,N.jsx)(j.Z,{dataSource:[{live:"A",gz:"0个错误",ld:"0个漏洞",gf:"0 - 5%"},{live:"B",gz:"至少1个次要错误",ld:"至少1个次要漏洞",gf:"6% - 10%"},{live:"C",gz:"至少1个主要错误",ld:"至少1个主要漏洞",gf:"11% - 20%"},{live:"D",gz:"至少1个严重错误",ld:"至少1个严重漏洞",gf:"21% - 50%"},{live:"E",gz:"至少1个阻断错误",ld:"至少1个阻断漏洞",gf:"超过50%"}],columns:[{title:"等级",dataIndex:"live"},{title:"缺陷评估规则",dataIndex:"gz"},{title:"漏洞评估规则",dataIndex:"ld"},{title:"代码规范评估规则",dataIndex:"gf"}],pagination:!1})}),(0,N.jsx)("p",{style:{marginLeft:"10px"},children:"注:代码规范评估规则中数值来源为计算技术债务时间占开发所有代码所需要的时间的比例(Technical Debt Ratio)"}),(0,N.jsx)("p",{style:{marginLeft:"20px"},children:"Technical Debt Ratio = 技术债务时间 / 开发时间"}),(0,N.jsx)("p",{style:{marginLeft:"20px"},children:"技术债务时间为修复所有问题所需要的时间。"}),(0,N.jsx)("p",{children:"二、复杂度规则"}),(0,N.jsx)("p",{style:{marginLeft:"10px"},children:"根据代码路径数计算的数值,每当一个函数的控制流分叉时,复杂度计数器就会自增一。"}),(0,N.jsx)("p",{style:{marginLeft:"10px"},children:"每个程序语言的关键字对应的复杂度数据不同,但每个函数的最小复杂度为1。(特定语言的详细数据略)"}),(0,N.jsx)("p",{children:"三、代码质量分规则"}),(0,N.jsx)("p",{style:{marginLeft:"10px"},children:"代码质量分 = 0.5*缺陷分数 + 0.3*漏洞分数 + 0.2*代码规范性分数"}),(0,N.jsx)("p",{style:{marginLeft:"10px"},children:"其中:"}),(0,N.jsx)("p",{style:{marginLeft:"10px"},children:"缺陷/漏洞/代码规范性分数计算规则为:100 - 100 *((100*阻断数 + 5*严重数 + 3*主要数 + 1*次数)/ 代码行数)"}),(0,N.jsx)("p",{style:{marginLeft:"10px"},children:"注:分数为空的代表不支持的文件格式。"})]})]})}))},85673:function(e,n,t){t.d(n,{Z:function(){return Z}});var r=t(94184),l=t.n(r),i=t(37419),o=t(1337),a=t(67294),s=t(96159),c=t(53124),d=t(15558),u=t(56153);const m=e=>{let{children:n}=e;const{getPrefixCls:t}=a.useContext(c.E_),r=t("breadcrumb");return a.createElement("li",{className:`${r}-separator`,"aria-hidden":"true"},""===n?n:n||"/")};m.__ANT_BREADCRUMB_SEPARATOR=!0;var p=m,x=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var l=0;for(r=Object.getOwnPropertySymbols(e);l<r.length;l++)n.indexOf(r[l])<0&&Object.prototype.propertyIsEnumerable.call(e,r[l])&&(t[r[l]]=e[r[l]])}return t};function f(e,n,t,r){if(null==t)return null;const{className:i,onClick:s}=n,c=x(n,["className","onClick"]),d=Object.assign(Object.assign({},(0,o.Z)(c,{data:!0,aria:!0})),{onClick:s});return void 0!==r?a.createElement("a",Object.assign({},d,{className:l()(`${e}-link`,i),href:r}),t):a.createElement("span",Object.assign({},d,{className:l()(`${e}-link`,i)}),t)}function h(e,n){return(t,r,l,i,o)=>{if(n)return n(t,r,l,i);const a=function(e,n){if(void 0===e.title||null===e.title)return null;const t=Object.keys(n).join("|");return"object"==typeof e.title?e.title:String(e.title).replace(new RegExp(`:(${t})`,"g"),((e,t)=>n[t]||e))}(t,r);return f(e,t,a,o)}}var v=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var l=0;for(r=Object.getOwnPropertySymbols(e);l<r.length;l++)n.indexOf(r[l])<0&&Object.prototype.propertyIsEnumerable.call(e,r[l])&&(t[r[l]]=e[r[l]])}return t};const j=e=>{const{prefixCls:n,separator:t="/",children:r,menu:l,overlay:i,dropdownProps:o,href:s}=e;const c=(e=>{if(l||i){const t=Object.assign({},o);if(l){const e=l||{},{items:n}=e,r=v(e,["items"]);t.menu=Object.assign(Object.assign({},r),{items:null==n?void 0:n.map(((e,n)=>{var{key:t,title:r,label:l,path:i}=e,o=v(e,["key","title","label","path"]);let c=null!=l?l:r;return i&&(c=a.createElement("a",{href:`${s}${i}`},c)),Object.assign(Object.assign({},o),{key:null!=t?t:n,label:c})}))})}else i&&(t.overlay=i);return a.createElement(u.Z,Object.assign({placement:"bottom"},t),a.createElement("span",{className:`${n}-overlay-link`},e,a.createElement(d.Z,null)))}return e})(r);return null!=c?a.createElement(a.Fragment,null,a.createElement("li",null,c),t&&a.createElement(p,null,t)):null},g=e=>{const{prefixCls:n,children:t,href:r}=e,l=v(e,["prefixCls","children","href"]),{getPrefixCls:i}=a.useContext(c.E_),o=i("breadcrumb",n);return a.createElement(j,Object.assign({},l,{prefixCls:o}),f(o,l,t,r))};g.__ANT_BREADCRUMB_ITEM=!0;var b=g,y=t(14747),_=t(67968),C=t(45503);const k=e=>{const{componentCls:n,iconCls:t}=e;return{[n]:Object.assign(Object.assign({},(0,y.Wf)(e)),{color:e.itemColor,fontSize:e.fontSize,[t]:{fontSize:e.iconFontSize},ol:{display:"flex",flexWrap:"wrap",margin:0,padding:0,listStyle:"none"},a:Object.assign({color:e.linkColor,transition:`color ${e.motionDurationMid}`,padding:`0 ${e.paddingXXS}px`,borderRadius:e.borderRadiusSM,height:e.lineHeight*e.fontSize,display:"inline-block",marginInline:-e.marginXXS,"&:hover":{color:e.linkHoverColor,backgroundColor:e.colorBgTextHover}},(0,y.Qy)(e)),"li:last-child":{color:e.lastItemColor},[`${n}-separator`]:{marginInline:e.separatorMargin,color:e.separatorColor},[`${n}-link`]:{[`\n > ${t} + span,\n > ${t} + a\n `]:{marginInlineStart:e.marginXXS}},[`${n}-overlay-link`]:{borderRadius:e.borderRadiusSM,height:e.lineHeight*e.fontSize,display:"inline-block",padding:`0 ${e.paddingXXS}px`,marginInline:-e.marginXXS,[`> ${t}`]:{marginInlineStart:e.marginXXS,fontSize:e.fontSizeIcon},"&:hover":{color:e.linkHoverColor,backgroundColor:e.colorBgTextHover,a:{color:e.linkHoverColor}},a:{"&:hover":{backgroundColor:"transparent"}}},[`&${e.componentCls}-rtl`]:{direction:"rtl"}})}};var w=(0,_.Z)("Breadcrumb",(e=>{const n=(0,C.TS)(e,{});return[k(n)]}),(e=>({itemColor:e.colorTextDescription,lastItemColor:e.colorText,iconFontSize:e.fontSize,linkColor:e.colorTextDescription,linkHoverColor:e.colorText,separatorColor:e.colorTextDescription,separatorMargin:e.marginXS}))),N=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var l=0;for(r=Object.getOwnPropertySymbols(e);l<r.length;l++)n.indexOf(r[l])<0&&Object.prototype.propertyIsEnumerable.call(e,r[l])&&(t[r[l]]=e[r[l]])}return t};function O(e){const{breadcrumbName:n,children:t}=e,r=N(e,["breadcrumbName","children"]),l=Object.assign({title:n},r);return t&&(l.menu={items:t.map((e=>{var{breadcrumbName:n}=e,t=N(e,["breadcrumbName"]);return Object.assign(Object.assign({},t),{title:n})}))}),l}var I=function(e,n){var t={};for(var r in e)Object.prototype.hasOwnProperty.call(e,r)&&n.indexOf(r)<0&&(t[r]=e[r]);if(null!=e&&"function"==typeof Object.getOwnPropertySymbols){var l=0;for(r=Object.getOwnPropertySymbols(e);l<r.length;l++)n.indexOf(r[l])<0&&Object.prototype.propertyIsEnumerable.call(e,r[l])&&(t[r[l]]=e[r[l]])}return t};const S=e=>{const{prefixCls:n,separator:t="/",style:r,className:d,rootClassName:u,routes:m,items:x,children:f,itemRender:v,params:g={}}=e,b=I(e,["prefixCls","separator","style","className","rootClassName","routes","items","children","itemRender","params"]),{getPrefixCls:y,direction:_,breadcrumb:C}=a.useContext(c.E_);let k;const N=y("breadcrumb",n),[S,Z]=w(N),E=function(e,n){return(0,a.useMemo)((()=>e||(n?n.map(O):null)),[e,n])}(x,m);const T=h(N,v);if(E&&E.length>0){const e=[],n=x||m;k=E.map(((r,l)=>{const{path:i,key:s,type:c,menu:d,overlay:u,onClick:m,className:x,separator:f,dropdownProps:h}=r,v=((e,n)=>{if(void 0===n)return n;let t=(n||"").replace(/^\//,"");return Object.keys(e).forEach((n=>{t=t.replace(`:${n}`,e[n])})),t})(g,i);void 0!==v&&e.push(v);const b=null!=s?s:l;if("separator"===c)return a.createElement(p,{key:b},f);const y={},_=l===E.length-1;d?y.menu=d:u&&(y.overlay=u);let{href:C}=r;return e.length&&void 0!==v&&(C=`#/${e.join("/")}`),a.createElement(j,Object.assign({key:b},y,(0,o.Z)(r,{data:!0,aria:!0}),{className:x,dropdownProps:h,href:C,separator:_?"":t,onClick:m,prefixCls:N}),T(r,g,n,e,C))}))}else if(f){const e=(0,i.Z)(f).length;k=(0,i.Z)(f).map(((n,r)=>{if(!n)return n;const l=r===e-1;return(0,s.Tm)(n,{separator:l?"":t,key:r})}))}const P=l()(N,null==C?void 0:C.className,{[`${N}-rtl`]:"rtl"===_},d,u,Z),L=Object.assign(Object.assign({},null==C?void 0:C.style),r);return S(a.createElement("nav",Object.assign({className:P,style:L},b),a.createElement("ol",null,k)))};S.Item=b,S.Separator=p;var Z=S}}]); |