Blame view

src/views/resume/femalestaff.vue 11.7 KB
76f8396d   yangzhi   简历分析页面(女)
1
  <template>
cbff938b   yangzhi   超哥牛批
2
3
4
5
6
7
8
9
10
11
12
13
14
15
    <div class="page">
      <div class="top-panel flex1">
        <div class="top-panel-content">
          <img class="user-head" src="/static/resume/head.png" alt="" />
          <div>
            <div class="user-info">
              <h2>{{ userDetail.fullName }}</h2>
              <img
                style="height: 30px; margin: 0 20px"
                src="/static/resume/female/resume13.png"
                alt=""
              />
              <div class="star-progress">
                <div style="width: 50%" class="star-progress-bar"></div>
76f8396d   yangzhi   简历分析页面(女)
16
              </div>
76f8396d   yangzhi   简历分析页面(女)
17
            </div>
cbff938b   yangzhi   超哥牛批
18
19
20
21
22
23
            <ul class="user-items">
              <li v-for="item in infoListComputed" :key="item.title">
                <img :src="'/static/resume/female/' + item.icon" alt="" />
                <span>{{ item.title }}:{{ item.value || '未知' }}</span>
              </li>
            </ul>
76f8396d   yangzhi   简历分析页面(女)
24
          </div>
cbff938b   yangzhi   超哥牛批
25
26
27
28
29
30
        </div>
        <div style="display: flex">
          <div style="flex: 1; margin-right: 30px">
            <div class="info-panel">
              <div class="info-title">
                <span>技能优势</span>
76f8396d   yangzhi   简历分析页面(女)
31
              </div>
cbff938b   yangzhi   超哥牛批
32
33
34
35
36
37
              <div class="info-content">
                  <ul v-if="userDetail.skillAdvantages && userDetail.skillAdvantages.length">
                      <li v-for="item in userDetail.skillAdvantages" :key="item.title">
                      <h3>{{item.title}}</h3>
                      <p class="text-overflow2">{{item.desc}}</p>
                      </li>
76f8396d   yangzhi   简历分析页面(女)
38
                  </ul>
cbff938b   yangzhi   超哥牛批
39
                  <div v-else>暂无信息</div>
76f8396d   yangzhi   简历分析页面(女)
40
41
              </div>
            </div>
cbff938b   yangzhi   超哥牛批
42
            <div class="info-panel">
76f8396d   yangzhi   简历分析页面(女)
43
              <div class="info-title">
cbff938b   yangzhi   超哥牛批
44
                <span>教育经历</span>
76f8396d   yangzhi   简历分析页面(女)
45
46
              </div>
              <div class="info-content">
cbff938b   yangzhi   超哥牛批
47
48
49
50
51
52
53
54
55
56
57
58
59
                  <ul v-if="userDetail.workExperience && userDetail.workExperience.length">
                      <li v-for="item in userDetail.workExperience" :key="item.date">
                      <h3 class="flex flex-between">
                          <span>{{ item.school }}</span>
                          <span style="font-size: 16px">{{item.date}}</span>
                      </h3>
                      <p class="flex flex-between">
                          <span>{{item.major}}</span>
                          <span>{{item.degree}}</span>
                      </p>
                      </li>
                  </ul>
                  <div v-else>暂无信息</div>
76f8396d   yangzhi   简历分析页面(女)
60
61
62
              </div>
            </div>
          </div>
cbff938b   yangzhi   超哥牛批
63
64
65
          <div class="info-panel" style="flex: 1">
            <div class="info-title">
              <span>工作经历</span>
76f8396d   yangzhi   简历分析页面(女)
66
            </div>
cbff938b   yangzhi   超哥牛批
67
68
69
70
71
72
73
74
75
76
77
78
79
80
            <div class="info-content">
              <ul v-if="userDetail.educationalExperience && userDetail.educationalExperience.length">
                <li v-for="item in userDetail.educationalExperience" :key="item.date">
                  <h3 class="flex flex-between">
                    <span>{{item.company}}</span>
                    <span>{{item.position}}</span>
                    <span style="font-size: 16px">{{item.date}}</span>
                  </h3>
                  <p class="text-overflow2">
                    {{item.desc}}
                  </p>
                </li>
              </ul>
              <div v-else>暂无信息</div>
76f8396d   yangzhi   简历分析页面(女)
81
82
            </div>
          </div>
cbff938b   yangzhi   超哥牛批
83
84
85
86
87
88
89
        </div>
      </div>
      <div class="bottom-panel flex1">
        <div class="panel">
          <div class="panel-title">
            <span>能力统计图</span>
            <img src="/static/resume/female/resume11.png" alt="" />
76f8396d   yangzhi   简历分析页面(女)
90
          </div>
cbff938b   yangzhi   超哥牛批
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
          <div class="panel-body">
            <div id="echarts1"></div>
          </div>
        </div>
        <div class="panel">
          <div class="panel-title">
            <span>能力统计图</span>
            <img src="/static/resume/female/resume11.png" alt="" />
          </div>
          <div class="panel-body">
            <div id="echarts2"></div>
          </div>
        </div>
        <div class="panel">
          <div class="panel-title">
            <span>性格统计图</span>
            <img src="/static/resume/female/resume12.png" alt="" />
          </div>
          <div class="panel-body">
            <div id="echarts3"></div>
76f8396d   yangzhi   简历分析页面(女)
111
112
113
          </div>
        </div>
      </div>
cbff938b   yangzhi   超哥牛批
114
115
    </div>
  </template>
76f8396d   yangzhi   简历分析页面(女)
116
    <script>
cbff938b   yangzhi   超哥牛批
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
  import * as echarts from "echarts";
  import { getOuterUserInfo } from "@/api/user";
  export default {
    data() {
      return {
        id: "",
        infoList: [
          { title: "性别", value: "女", icon: "resume17.png" },
          { title: "体重", value: "", icon: "resume1.png" },
          { title: "身高", value: "", icon: "resume2.png" },
          { title: "血型", value: "", icon: "resume3.png" },
          { title: "年龄", value: "", icon: "resume8.png" },
          { title: "婚否", value: "未婚", icon: "resume14.png" },
          { title: "民族", value: "汉族", icon: "resume4.png" },
          { title: "政治面貌", value: "", icon: "resume5.png" },
          { title: "户籍所在地", value: "", icon: "resume9.png" },
        ],
        echartOption1: {
          grid: {
            top: 30,
            bottom: 20,
            right: 20,
            left: 20,
          },
          yAxis: {
            type: "value",
            splitLine: {
              lineStyle: {
                type: "dashed",
76f8396d   yangzhi   简历分析页面(女)
146
              },
cbff938b   yangzhi   超哥牛批
147
148
149
150
151
152
153
154
155
            },
            axisLabel: {
              show: false,
              color: "#EAEBEB",
            },
          },
          xAxis: [
            {
              type: "category",
76f8396d   yangzhi   简历分析页面(女)
156
              axisLabel: {
cbff938b   yangzhi   超哥牛批
157
158
159
                color: "#eaeaea",
                interval: 0,
                fontSize: 14,
76f8396d   yangzhi   简历分析页面(女)
160
              },
cbff938b   yangzhi   超哥牛批
161
              data: [],
76f8396d   yangzhi   简历分析页面(女)
162
            },
cbff938b   yangzhi   超哥牛批
163
164
165
166
167
168
169
170
171
          ],
          series: [
            {
              type: "bar",
              barWidth: 25,
              label: {
                show: true,
                color: "#e9a6ff",
                position: "top",
76f8396d   yangzhi   简历分析页面(女)
172
              },
cbff938b   yangzhi   超哥牛批
173
174
175
176
177
178
179
              itemStyle: {
                normal: {
                  color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
                    { offset: 0, color: "#e9a6ffff" },
                    { offset: 1, color: "#e9a6ff00" },
                  ]),
                  barBorderRadius: [10, 10, 0, 0],
76f8396d   yangzhi   简历分析页面(女)
180
                },
76f8396d   yangzhi   简历分析页面(女)
181
              },
cbff938b   yangzhi   超哥牛批
182
              data: [],
76f8396d   yangzhi   简历分析页面(女)
183
            },
cbff938b   yangzhi   超哥牛批
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
            {
              type: "line",
              color: "#e9a6ff",
              data: [],
            },
          ],
        },
        echartOption2: {
          grid: {
            top: 30,
            bottom: 20,
            right: 20,
            left: 20,
          },
          yAxis: {
            type: "value",
            splitLine: {
              lineStyle: {
                type: "dashed",
76f8396d   yangzhi   简历分析页面(女)
203
              },
cbff938b   yangzhi   超哥牛批
204
205
206
207
208
209
210
211
212
            },
            axisLabel: {
              show: false,
              color: "#EAEBEB",
            },
          },
          xAxis: [
            {
              type: "category",
76f8396d   yangzhi   简历分析页面(女)
213
              axisLabel: {
cbff938b   yangzhi   超哥牛批
214
215
216
                color: "#eaeaea",
                interval: 0,
                fontSize: 14,
76f8396d   yangzhi   简历分析页面(女)
217
              },
cbff938b   yangzhi   超哥牛批
218
              data: [],
76f8396d   yangzhi   简历分析页面(女)
219
            },
cbff938b   yangzhi   超哥牛批
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
          ],
          series: [
            {
              type: "bar",
              barWidth: 25,
              label: {
                show: true,
                color: "#e9a6ff",
                position: "top",
              },
              itemStyle: {
                normal: {
                  color: new echarts.graphic.LinearGradient(0, 0, 0, 1, [
                    { offset: 0, color: "#e9a6ffff" },
                    { offset: 1, color: "#e9a6ff00" },
                  ]),
                  barBorderRadius: [10, 10, 0, 0],
76f8396d   yangzhi   简历分析页面(女)
237
                },
76f8396d   yangzhi   简历分析页面(女)
238
              },
cbff938b   yangzhi   超哥牛批
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
              data: [],
            },
            {
              type: "line",
              color: "#e9a6ff",
              data: [],
            },
          ],
        },
        echartOption3: {
          radar: {
            indicator: [
              { name: "Sales", max: 6500 },
              { name: "Administration", max: 16000 },
              { name: "Information Technology", max: 30000 },
              { name: "Customer Support", max: 38000 },
              { name: "Development", max: 52000 },
              { name: "Marketing", max: 25000 },
76f8396d   yangzhi   简历分析页面(女)
257
            ],
cbff938b   yangzhi   超哥牛批
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
          },
          series: [
            {
              type: "radar",
              data: [
                {
                  name: "",
                  value: [],
                  label: {
                    show: true,
                    formatter: function (params) {
                      return params.value;
                    },
                  },
                  areaStyle: {
                    color: new echarts.graphic.RadialGradient(0.1, 0.6, 1, [
                      {
                        color: "#e9a6ff52",
                        offset: 0,
                      },
                      {
                        color: "#e9a6ff00",
                        offset: 1,
                      },
76f8396d   yangzhi   简历分析页面(女)
282
                    ]),
76f8396d   yangzhi   简历分析页面(女)
283
284
                  },
                },
76f8396d   yangzhi   简历分析页面(女)
285
286
              ],
            },
cbff938b   yangzhi   超哥牛批
287
          ],
76f8396d   yangzhi   简历分析页面(女)
288
        },
cbff938b   yangzhi   超哥牛批
289
290
291
292
293
294
295
296
        natureList: {},
        abilityList: [],
        user: {},
      };
    },
    computed: {
      userDetail() {
        return this.user;
76f8396d   yangzhi   简历分析页面(女)
297
      },
cbff938b   yangzhi   超哥牛批
298
299
300
301
302
303
304
305
306
307
308
309
310
      infoListComputed() {
        let user = { ...this.user };
        let infoList = [...this.infoList];
        infoList.find((t) => t.title == "民族").value = user.minzu;
        infoList.find((t) => t.title == "体重").value = user.Weight;
        infoList.find((t) => t.title == "身高").value = user.Height;
        infoList.find((t) => t.title == "血型").value = user.BloodType;
        infoList.find((t) => t.title == "年龄").value = user.age;
        infoList.find((t) => t.title == "婚否").value = user.Marriage;
        infoList.find((t) => t.title == "政治面貌").value = user.PoliticalOutlook;
        infoList.find((t) => t.title == "户籍所在地").value =
          user.RegisteredResidence;
        return infoList;
76f8396d   yangzhi   简历分析页面(女)
311
      },
cbff938b   yangzhi   超哥牛批
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
    },
    created() {
      this.id = this.$route.query.id;
    },
    mounted() {
      this.init();
    },
    methods: {
      init() {
        getOuterUserInfo(this.id).then((res) => {
          let { nature, ability, user } = res.data;
          let natureList = [];
  
          nature = nature[0];
          ability = ability[0];
  
          for (const key in nature) {
            const val = nature[key];
            natureList.push({
              title: key,
              value: val,
76f8396d   yangzhi   简历分析页面(女)
333
            });
76f8396d   yangzhi   简历分析页面(女)
334
          }
cbff938b   yangzhi   超哥牛批
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
          let abilityList = [];
          for (const key in ability) {
            const val = ability[key];
            abilityList.push({
              title: key,
              value: val,
            });
          }
  
          this.natureList = natureList;
          this.abilityList = this.abilityList;
          this.user = user;
          this.$nextTick(() => {
            this.initNengliEchart(natureList);
            this.initXinggeEchart(abilityList);
          });
        });
      },
      initEchart() {
        this.initNengliEchart();
      },
      initXinggeEchart(list) {
        let myChart = echarts.init(document.getElementById("echarts3"));
        this.echartOption3.radar.indicator = list.map((t) => {
          return { name: t.title, max: 100 };
        });
        this.echartOption3.series[0].data[0].value = list.map((t) => t.value);
        myChart.setOption(this.echartOption3);
        console.log("this.echartOption3", this.echartOption3);
      },
      initNengliEchart(list) {
        //第一个echart图
        let myChart = echarts.init(document.getElementById("echarts1"));
        let list1 = list.slice(0, 6);
        this.echartOption1.xAxis[0].data = list1.map((t) => t.title);
        this.echartOption1.series[0].data = list1.map((t) => t.value);
        this.echartOption1.series[1].data = list1.map((t) => t.value);
        myChart.setOption(this.echartOption1);
  
        //第二个图
        if (list.length > 6) {
          let myChart2 = echarts.init(document.getElementById("echarts2"));
          let list2 = list.slice(6);
          this.echartOption2.xAxis[0].data = list2.map((t) => t.title);
          this.echartOption2.series[0].data = list2.map((t) => t.value);
          this.echartOption2.series[1].data = list2.map((t) => t.value);
          myChart2.setOption(this.echartOption2);
        }
76f8396d   yangzhi   简历分析页面(女)
383
      },
cbff938b   yangzhi   超哥牛批
384
385
386
    },
  };
  </script>
76f8396d   yangzhi   简历分析页面(女)
387
    <style lang="scss" scoped>
cbff938b   yangzhi   超哥牛批
388
389
390
  @import "style/style.scss";
  @import "style/style_famale.scss";
  </style>