"use strict";(self.webpackChunkant_design_pro=self.webpackChunkant_design_pro||[]).push([[7760,6084],{49843:function(U,B,u){var j=u(49486),E=(0,j.i)("Radar");B.Z=E},93158:function(U,B,u){u.r(B);var j=u(15009),E=u.n(j),K=u(97857),C=u.n(K),N=u(99289),A=u.n(N),g=u(5574),D=u.n(g),v=u(67294),f=u(76772),P=u(60960),o=u(2453),T=u(4393),G=u(71230),L=u(15746),y=u(78957),Q=u(83622),le=u(66309),te=u(68997),H=u(96074),oe=u(34447),de=u(49647),_e=u(33862),me=u(24019),ce=u(87547),Ee=u(35108),pe=u(49843),ve=u(93983),xe=u(46084),Fe=u(74177),z=u(15791),V=u(16560),b=u(65359),e=u(85893),w=P.Z.Title,M=P.Z.Text,he=P.Z.Paragraph,Ce={1:"\u5927\u4E13",2:"\u672C\u79D1",3:"\u7855\u58EB",4:"\u535A\u58EB",0:"\u4E0D\u9650"},De={1:"1\u5E74\u4EE5\u4E0B",2:"1-3\u5E74",3:"3-5\u5E74",4:"5-10\u5E74",5:"10\u5E74\u4EE5\u4E0A",0:"\u4E0D\u9650"},J=function(){try{var r=localStorage.getItem("userInfo");if(r){var d=JSON.parse(r);return(d==null?void 0:d.userId)||null}}catch(S){console.error("\u8BFB\u53D6\u7F13\u5B58\u7528\u6237\u4FE1\u606F\u5931\u8D25:",S)}return null},Be=function(r,d){return r&&d?"".concat((r/1e3).toFixed(0),"k-").concat((d/1e3).toFixed(0),"k"):r?"".concat((r/1e3).toFixed(0),"k+"):d?"\u9762\u8BAE-".concat((d/1e3).toFixed(0),"k"):"\u9762\u8BAE"},fe=function(r){var d;return{id:r.jobId||r.id,title:r.jobTitle||r.title,company:r.companyName||r.company,companyLogo:r.companyLogo||"https://via.placeholder.com/80",salary:r.minSalary&&r.maxSalary?Be(r.minSalary,r.maxSalary):r.salary||"\u9762\u8BAE",location:r.jobLocation||r.location,experience:r.experience?De[r.experience]||r.experience:"\u4E0D\u9650",education:r.education?Ce[r.education]||r.education:"\u4E0D\u9650",tags:r.tags||["\u4E94\u9669\u4E00\u91D1","\u5E26\u85AA\u5E74\u5047","\u5E74\u7EC8\u5956"],publishTime:r.publishTime||new Date().toISOString().split("T")[0],description:r.description||`
1. \u8D1F\u8D23\u76F8\u5173\u4E1A\u52A1\u7CFB\u7EDF\u7684\u8BBE\u8BA1\u4E0E\u5F00\u53D1\uFF1B
2. \u53C2\u4E0E\u7CFB\u7EDF\u67B6\u6784\u8BBE\u8BA1\u548C\u6280\u672F\u9009\u578B\uFF1B
3. \u4E0E\u56E2\u961F\u534F\u4F5C\u5B8C\u6210\u9879\u76EE\u5F00\u53D1\uFF1B
1. \u5177\u5907\u76F8\u5173\u5DE5\u4F5C\u7ECF\u9A8C\uFF1B
2. \u719F\u6089\u76F8\u5173\u6280\u672F\u6808\uFF1B
3. \u5177\u5907\u826F\u597D\u7684\u56E2\u961F\u534F\u4F5C\u80FD\u529B\uFF1B
`,companyInfo:{name:r.companyName||r.company,type:r.industry||"\u4E92\u8054\u7F51/\u7535\u5B50\u5546\u52A1",scale:r.scale||"100-499\u4EBA",industry:r.industry||"\u8BA1\u7B97\u673A/\u4E92\u8054\u7F51",description:((d=r.companyVo)===null||d===void 0?void 0:d.companyDescription)||r.companyDescription||"\u6682\u65E0\u516C\u53F8\u63CF\u8FF0\u4FE1\u606F"},competitiveness:{overall:75,requirements:70,salary:80,company:75,benefits:80},marketTrend:[{name:"Java",demand:85,salary:90},{name:"Spring Boot",demand:75,salary:85},{name:"MySQL",demand:70,salary:75},{name:"Redis",demand:75,salary:80}]}},Pe={id:1,title:"Java\u9AD8\u7EA7\u5F00\u53D1\u5DE5\u7A0B\u5E08",company:"\u9752\u5C9B\u79D1\u6280\u53D1\u5C55\u6709\u9650\u516C\u53F8",companyLogo:"https://via.placeholder.com/80",salary:"15k-25k",location:"\u9752\u5C9B\xB7\u674E\u6CA7\u533A",experience:"3-5\u5E74",education:"\u672C\u79D1",tags:["\u4E94\u9669\u4E00\u91D1","\u5E26\u85AA\u5E74\u5047","\u5E74\u7EC8\u5956","\u5B9A\u671F\u4F53\u68C0"],publishTime:"2024-03-15",description:`1. \u8D1F\u8D23\u540E\u7AEF\u7CFB\u7EDF\u67B6\u6784\u8BBE\u8BA1\u4E0E\u4F18\u5316\uFF0C\u63D0\u5347\u7CFB\u7EDF\u6027\u80FD\u548C\u7A33\u5B9A\u6027\uFF1B
2. \u53C2\u4E0E\u6838\u5FC3\u4E1A\u52A1\u6A21\u5757\u7684\u8BBE\u8BA1\u4E0E\u5F00\u53D1\uFF0C\u4F7F\u7528Java\u3001Spring Boot\u7B49\u6846\u67B6\uFF1B
3. \u534F\u4F5C\u5B8C\u6210\u5FAE\u670D\u52A1\u67B6\u6784\uFF0C\u89E3\u51B3\u5206\u5E03\u5F0F\u7CFB\u7EDF\u76F8\u5173\u95EE\u9898\uFF1B
4. \u8FDB\u884C\u4EE3\u7801\u5BA1\u67E5\uFF0C\u786E\u4FDD\u4EE3\u7801\u8D28\u91CF\u548C\u89C4\u8303\u6027\uFF1B
5. \u4E0E\u524D\u7AEF\u3001\u4EA7\u54C1\u3001\u6D4B\u8BD5\u7B49\u56E2\u961F\u534F\u4F5C\uFF0C\u63A8\u52A8\u9879\u76EE\u5FEB\u901F\u8FED\u4EE3\uFF1B
1. \u672C\u79D1\u53CA\u4EE5\u4E0A\u5B66\u5386\uFF0C\u8BA1\u7B97\u673A\u76F8\u5173\u4E13\u4E1A\uFF0C3\u5E74\u4EE5\u4E0AJava\u5F00\u53D1\u7ECF\u9A8C\uFF1B
2. \u624E\u5B9E\u7684Java\u57FA\u7840\uFF0C\u719F\u6089Spring\u3001Spring Boot\u3001MyBatis\u7B49\u6846\u67B6\uFF1B
3. \u719F\u6089MySQL\u3001Redis\u7B49\u6570\u636E\u5E93\uFF0C\u5177\u5907SQL\u4F18\u5316\u80FD\u529B\uFF1B
4. \u4E86\u89E3\u5206\u5E03\u5F0F\u7CFB\u7EDF\u8BBE\u8BA1\uFF0C\u6709\u5FAE\u670D\u52A1\u5F00\u53D1\u7ECF\u9A8C\uFF1B
5. \u5177\u5907\u826F\u597D\u7684\u56E2\u961F\u534F\u4F5C\u80FD\u529B\u548C\u5B66\u4E60\u80FD\u529B\uFF1B
`,companyInfo:{name:"\u9752\u5C9B\u79D1\u6280\u53D1\u5C55\u6709\u9650\u516C\u53F8",type:"\u4E92\u8054\u7F51/\u7535\u5B50\u5546\u52A1",scale:"500-999\u4EBA",industry:"\u8BA1\u7B97\u673A/\u4E92\u8054\u7F51",description:"\u9752\u5C9B\u79D1\u6280\u53D1\u5C55\u6709\u9650\u516C\u53F8\u662F\u4E00\u5BB6\u4E13\u6CE8\u4E8E\u8F6F\u4EF6\u5F00\u53D1\u3001\u6280\u672F\u670D\u52A1\u7684\u79D1\u6280\u4F01\u4E1A\u3002\u516C\u53F8\u81F4\u529B\u4E8E\u4E3A\u5BA2\u6237\u63D0\u4F9B\u4F18\u8D28\u7684IT\u89E3\u51B3\u65B9\u6848\uFF0C\u4E1A\u52A1\u6DB5\u76D6\u4F01\u4E1A\u4FE1\u606F\u5316\u3001\u79FB\u52A8\u5E94\u7528\u5F00\u53D1\u7B49\u9886\u57DF\u3002\u6211\u4EEC\u62E5\u6709\u4E00\u652F\u5E74\u8F7B\u3001\u4E13\u4E1A\u7684\u56E2\u961F\uFF0C\u6CE8\u91CD\u6280\u672F\u521B\u65B0\u548C\u4EBA\u624D\u57F9\u517B\uFF0C\u4E3A\u5458\u5DE5\u63D0\u4F9B\u826F\u597D\u7684\u53D1\u5C55\u5E73\u53F0\u3002"},competitiveness:{overall:75,requirements:70,salary:80,company:75,benefits:80},marketTrend:[{name:"Java",demand:85,salary:90},{name:"Spring Boot",demand:75,salary:85},{name:"MySQL",demand:70,salary:75},{name:"Redis",demand:75,salary:80}]},Ie=function(){var r=(0,f.useParams)(),d=r.id,S=(0,f.useLocation)(),ye=(0,v.useState)(Pe),X=D()(ye,2),a=X[0],Me=X[1],Oe=(0,v.useState)(!1),Y=D()(Oe,2),We=Y[0],Ue=Y[1],je=(0,v.useState)(!1),q=D()(je,2),Z=q[0],R=q[1],Ae=(0,v.useState)(null),ee=D()(Ae,2),l=ee[0],x=ee[1],ge=(0,v.useState)(0),ue=D()(ge,2),be=ue[0],re=ue[1],Ze=(0,v.useState)([{item:"\u6280\u80FD",score:0},{item:"\u5DE5\u4F5C\u7ECF\u9A8C",score:0},{item:"\u5B66\u5386",score:0},{item:"\u85AA\u8D44",score:0},{item:"\u5E74\u9F84",score:0},{item:"\u5DE5\u4F5C\u5730",score:0}]),se=D()(Ze,2),Te=se[0],ae=se[1];(0,v.useEffect)(function(){var _,i=(_=S.state)===null||_===void 0?void 0:_.jobData;if(i){x(i);var F=fe(i);Me(F),R((i==null?void 0:i.isCollection)!==null&&(i==null?void 0:i.isCollection)!==0&&(i==null?void 0:i.isCollection)!==void 0)}else x(null),R(!1)},[d,S.state]),(0,v.useEffect)(function(){var _=Number(a==null?void 0:a.id);!Number.isNaN(_)&&_&&Le(_)},[a==null?void 0:a.id]);var Le=function(){var _=A()(E()().mark(function i(F){var h,m,t,I,n,p,W,s,$,O,ne;return E()().wrap(function(c){for(;;)switch(c.prev=c.next){case 0:return c.prev=0,c.next=3,(0,Fe.c)(F);case 3:if(h=c.sent,m=h,m){c.next=7;break}return c.abrupt("return");case 7:typeof m.matchScore=="number"?(t=Math.max(0,Math.min(100,m.matchScore)),re(t)):re(0),m.radarChart?(O=m.radarChart,ne=[{item:"\u6280\u80FD",score:(I=O.skill)!==null&&I!==void 0?I:0},{item:"\u5DE5\u4F5C\u7ECF\u9A8C",score:(n=O.experience)!==null&&n!==void 0?n:0},{item:"\u5B66\u5386",score:(p=O.education)!==null&&p!==void 0?p:0},{item:"\u85AA\u8D44",score:(W=O.salary)!==null&&W!==void 0?W:0},{item:"\u5E74\u9F84",score:(s=O.age)!==null&&s!==void 0?s:0},{item:"\u5DE5\u4F5C\u5730",score:($=O.location)!==null&&$!==void 0?$:0}].map(function(ie){return C()(C()({},ie),{},{score:Math.max(0,Math.min(100,ie.score))})}),ae(ne)):ae([{item:"\u6280\u80FD",score:0},{item:"\u5DE5\u4F5C\u7ECF\u9A8C",score:0},{item:"\u5B66\u5386",score:0},{item:"\u85AA\u8D44",score:0},{item:"\u5E74\u9F84",score:0},{item:"\u5DE5\u4F5C\u5730",score:0}]),c.next=13;break;case 11:c.prev=11,c.t0=c.catch(0);case 13:case"end":return c.stop()}},i,null,[[0,11]])}));return function(F){return _.apply(this,arguments)}}(),Se=function(){var _=A()(E()().mark(function i(){var F,h,m,t,I,n,p;return E()().wrap(function(s){for(;;)switch(s.prev=s.next){case 0:if(F=(0,V.hP)(),F){s.next=5;break}return o.ZP.warning("\u8BF7\u5148\u767B\u5F55"),f.history.push(b.d.LOGIN),s.abrupt("return");case 5:if(!Z){s.next=27;break}if(h=J(),h){s.next=11;break}return o.ZP.warning("\u65E0\u6CD5\u83B7\u53D6\u7528\u6237\u4FE1\u606F\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55"),f.history.push(b.d.LOGIN),s.abrupt("return");case 11:if(m=(l==null?void 0:l.jobId)||(l==null?void 0:l.id)||(a==null?void 0:a.id)||d,m){s.next=15;break}return o.ZP.error("\u804C\u4F4D\u4FE1\u606F\u4E0D\u5B8C\u6574\uFF0C\u65E0\u6CD5\u53D6\u6D88\u6536\u85CF"),s.abrupt("return");case 15:return s.prev=15,s.next=18,(0,z.Zn)({jobId:Number(m),userId:h});case 18:t=s.sent,(t==null?void 0:t.code)===200?(R(!1),l&&x(C()(C()({},l),{},{isCollection:0})),o.ZP.success("\u53D6\u6D88\u6536\u85CF\u6210\u529F")):o.ZP.error((t==null?void 0:t.msg)||"\u53D6\u6D88\u6536\u85CF\u5931\u8D25"),s.next=26;break;case 22:s.prev=22,s.t0=s.catch(15),console.error("\u53D6\u6D88\u6536\u85CF\u5931\u8D25:",s.t0),o.ZP.error("\u53D6\u6D88\u6536\u85CF\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5");case 26:return s.abrupt("return");case 27:if(I=J(),I){s.next=32;break}return o.ZP.warning("\u65E0\u6CD5\u83B7\u53D6\u7528\u6237\u4FE1\u606F\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55"),f.history.push(b.d.LOGIN),s.abrupt("return");case 32:if(n=(l==null?void 0:l.jobId)||(l==null?void 0:l.id)||(a==null?void 0:a.id)||d,n){s.next=36;break}return o.ZP.error("\u804C\u4F4D\u4FE1\u606F\u4E0D\u5B8C\u6574"),s.abrupt("return");case 36:return s.prev=36,s.next=39,(0,z.M7)({jobId:Number(n),userId:I});case 39:p=s.sent,(p==null?void 0:p.code)===200?(R(!0),l&&x(C()(C()({},l),{},{isCollection:1})),o.ZP.success("\u6536\u85CF\u6210\u529F")):o.ZP.error((p==null?void 0:p.msg)||"\u6536\u85CF\u5931\u8D25"),s.next=47;break;case 43:s.prev=43,s.t1=s.catch(36),console.error("\u6536\u85CF\u64CD\u4F5C\u5931\u8D25:",s.t1),o.ZP.error("\u6536\u85CF\u64CD\u4F5C\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5");case 47:case"end":return s.stop()}},i,null,[[15,22],[36,43]])}));return function(){return _.apply(this,arguments)}}(),Re=function(){var _=A()(E()().mark(function i(){var F,h,m,t;return E()().wrap(function(n){for(;;)switch(n.prev=n.next){case 0:if(F=(0,V.hP)(),F){n.next=5;break}return o.ZP.warning("\u8BF7\u5148\u767B\u5F55"),f.history.push(b.d.LOGIN),n.abrupt("return");case 5:if(h=J(),h){n.next=10;break}return o.ZP.warning("\u65E0\u6CD5\u83B7\u53D6\u7528\u6237\u4FE1\u606F\uFF0C\u8BF7\u91CD\u65B0\u767B\u5F55"),f.history.push(b.d.LOGIN),n.abrupt("return");case 10:if(m=(l==null?void 0:l.jobId)||(l==null?void 0:l.id)||(a==null?void 0:a.id)||d,m){n.next=14;break}return o.ZP.error("\u804C\u4F4D\u4FE1\u606F\u4E0D\u5B8C\u6574\uFF0C\u65E0\u6CD5\u7533\u8BF7"),n.abrupt("return");case 14:return n.prev=14,n.next=17,(0,z.S1)({jobId:String(m),userId:String(h)});case 17:t=n.sent,(t==null?void 0:t.code)===200?o.ZP.success("\u7533\u8BF7\u6210\u529F"):o.ZP.error((t==null?void 0:t.msg)||"\u7533\u8BF7\u5931\u8D25"),n.next=25;break;case 21:n.prev=21,n.t0=n.catch(14),console.error("\u7533\u8BF7\u5931\u8D25:",n.t0),o.ZP.error("\u7533\u8BF7\u5931\u8D25\uFF0C\u8BF7\u91CD\u8BD5");case 25:case"end":return n.stop()}},i,null,[[14,21]])}));return function(){return _.apply(this,arguments)}}();return(0,e.jsxs)("div",{className:"job-detail-page",children:[(0,e.jsx)(ve.Z,{showSearch:!1,showHotJobs:!1}),(0,e.jsxs)("div",{className:"job-detail-container",children:[(0,e.jsx)(T.Z,{className:"job-header-card",children:(0,e.jsxs)(G.Z,{gutter:24,children:[(0,e.jsx)(L.Z,{span:18,children:(0,e.jsx)("div",{className:"job-title-section",children:(0,e.jsxs)(y.Z,{direction:"vertical",size:8,children:[(0,e.jsxs)("div",{style:{display:"flex",alignItems:"center",justifyContent:"space-between",gap:"16px",flexWrap:"wrap"},children:[(0,e.jsxs)(y.Z,{align:"baseline",size:16,children:[(0,e.jsx)(w,{level:2,className:"job-title",style:{marginBottom:0},children:a.title}),(0,e.jsx)(M,{className:"job-salary-display",children:a.salary})]}),(0,e.jsx)(Q.ZP,{icon:Z?(0,e.jsx)(oe.Z,{}):(0,e.jsx)(de.Z,{}),danger:Z,onClick:Se,size:"middle",style:C()({borderRadius:"6px",fontWeight:500,height:"32px",padding:"0 12px",fontSize:"14px"},Z?{}:{borderColor:"#1890ff",color:"#1890ff"}),children:Z?"\u5DF2\u6536\u85CF":"\u6536\u85CF"})]}),(0,e.jsxs)(y.Z,{size:16,children:[(0,e.jsxs)(M,{className:"job-meta",children:[(0,e.jsx)(_e.Z,{})," ",a.location]}),(0,e.jsxs)(M,{className:"job-meta",children:[(0,e.jsx)(me.Z,{})," ",a.experience]}),(0,e.jsxs)(M,{className:"job-meta",children:[(0,e.jsx)(ce.Z,{})," ",a.education]})]}),(0,e.jsx)(y.Z,{wrap:!0,children:a.tags.map(function(_,i){return(0,e.jsx)(le.Z,{color:"blue",children:_},i)})})]})})}),(0,e.jsx)(L.Z,{span:6,children:(0,e.jsx)("div",{className:"job-actions",children:(0,e.jsx)(Q.ZP,{type:"primary",size:"large",block:!0,onClick:Re,children:"\u7ACB\u5373\u7533\u8BF7"})})})]})}),(0,e.jsxs)(G.Z,{gutter:16,children:[(0,e.jsxs)(L.Z,{span:16,children:[(0,e.jsx)(T.Z,{title:"\u804C\u4F4D\u63CF\u8FF0",className:"info-card",children:(0,e.jsx)("div",{dangerouslySetInnerHTML:{__html:a.description}})}),(0,e.jsx)(T.Z,{title:"\u516C\u53F8\u4FE1\u606F",className:"info-card",children:(0,e.jsxs)("div",{className:"company-intro",children:[(0,e.jsxs)(y.Z,{size:16,children:[(0,e.jsx)(te.Z,{size:64,src:a.companyLogo}),(0,e.jsxs)("div",{children:[(0,e.jsx)(w,{level:4,style:{margin:0},children:a.companyInfo.name}),(0,e.jsxs)(y.Z,{className:"company-meta",children:[(0,e.jsx)(M,{children:a.companyInfo.type}),(0,e.jsx)(H.Z,{type:"vertical"}),(0,e.jsx)(M,{children:a.companyInfo.scale}),(0,e.jsx)(H.Z,{type:"vertical"}),(0,e.jsx)(M,{children:a.companyInfo.industry})]})]})]}),(0,e.jsx)(H.Z,{}),(0,e.jsx)(he,{children:a.companyInfo.description})]})})]}),(0,e.jsx)(L.Z,{span:8,children:(0,e.jsx)(T.Z,{title:(0,e.jsxs)(y.Z,{children:[(0,e.jsx)(Ee.Z,{}),"\u7ADE\u4E89\u529B\u5206\u6790"]}),className:"competitiveness-card",children:(0,e.jsxs)("div",{className:"radar-chart-container",children:[(0,e.jsx)(pe.Z,{data:Te,xField:"item",yField:"score",area:{style:{fill:"rgba(24, 144, 255, 0.25)",fillOpacity:.5}},point:{size:3,style:{fill:"#1890ff",stroke:"#1890ff"}},line:{style:{stroke:"#1890ff",lineWidth:2}},meta:{score:{alias:"\u8BC4\u5206",min:0,max:100,nice:!0}},yAxis:{label:!1,tickLine:null,line:null,grid:null},height:300}),(0,e.jsx)("div",{className:"radar-summary",children:(0,e.jsxs)("div",{className:"summary-score",children:[(0,e.jsx)("div",{className:"score-value",children:be}),(0,e.jsx)("div",{className:"score-label",children:"\u7EFC\u5408\u8BC4\u5206"})]})})]})})})]})]})]})};B.default=Ie},74177:function(U,B,u){u.d(B,{c:function(){return A}});var j=u(15009),E=u.n(j),K=u(99289),C=u.n(K),N=u(76772);function A(D){return g.apply(this,arguments)}function g(){return g=C()(E()().mark(function D(v){return E()().wrap(function(P){for(;;)switch(P.prev=P.next){case 0:return P.abrupt("return",(0,N.request)("/app/job/competitiveness/".concat(v),{method:"GET"}));case 1:case"end":return P.stop()}},D)})),g.apply(this,arguments)}},46084:function(U,B,u){u.r(B)}}]);