123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693694695696697698699700701702703704705706707708709710711712713714715716717718719720721722723724725726727728729730731732733734735736737738739740741742743744745746747748749750751752753754755756757758759760761762763764765766767768769770771772773774775776777778779780781782783784785786787788789790791792793794795796797798799800801802803804805806807808809810811812813814815816817818819820821822823824825826827828829830831832833834835836837838839840841842843844845846847848849850851852853854855856857858859860861862863864865866867868869870871872873874875876877878879880881882883884885886887888889890891892893894895896897898899900901902903904905906907908909910911912913914915916917918919920921922923924925926927928929930931932933934935936937938939940941942943944945946947948949950951952953954955956957958959960961962963964965966967968969970971972973974975976977978979980981982983984985986987988989990991992993994995996997998999100010011002100310041005100610071008100910101011101210131014101510161017101810191020102110221023102410251026102710281029103010311032103310341035103610371038103910401041104210431044104510461047104810491050105110521053105410551056105710581059106010611062106310641065106610671068106910701071107210731074107510761077107810791080108110821083108410851086108710881089109010911092109310941095109610971098109911001101110211031104110511061107110811091110111111121113111411151116111711181119112011211122112311241125112611271128112911301131113211331134113511361137113811391140114111421143114411451146114711481149115011511152115311541155115611571158115911601161116211631164116511661167116811691170117111721173117411751176117711781179118011811182118311841185118611871188118911901191119211931194119511961197119811991200120112021203120412051206120712081209121012111212121312141215121612171218121912201221122212231224122512261227122812291230123112321233123412351236123712381239124012411242124312441245124612471248124912501251125212531254125512561257 |
- <template>
- <div class="out">
- <!---lxh-修改密码-->
- <div class="dig_update">
- <el-dialog
- :visible.sync="dialogVisible"
- :close-on-click-modal="false"
- width="80%"
- style="border-radius: 40px"
- >
- <div slot="title">
- <div label-width="150px" class="demo-ruleForm">
- <p v-if="isView" class="dig_title">
- {{ proDataLin.userName }}的{{ proDataLin.planName }}计划
- </p>
- <p v-if="!isView" class="dig_title">编辑计划</p>
- <div slot=""></div>
- <div slot="footer"></div>
- <div class="table-content">
- <el-table
- :data="tableData"
- :row-style="{ height: '0px' }"
- :cell-style="{ padding: '5px' }"
- :header-cell-style="{ background: '#F8F8F8', color: '#606266' }"
- >
- <el-table-column
- show-overflow-tooltip
- prop="planName"
- label="计划名称"
- align="center"
- width=""
- >
- </el-table-column>
- <el-table-column
- show-overflow-tooltip
- prop="planEndTime"
- label="计划结束时间"
- align="center"
- width=""
- >
- </el-table-column>
- <el-table-column label="操作" width="240px" align="center">
- <template slot-scope="scope">
- <div class="detail_button_out">
- <div class="detail_button" @click="radioClickNew(scope.row)">
- <img src="../assets/img/table/search.png" />
- <span> 个人报告查看 </span>
- </div>
- </div>
- <!-- <div
- class="detail_button_out"
- v-if="scope.row.hasOwnProperty('contentEntities')"
- >
- <div v-for="item in scope.row.contentEntities" :key="item.id">
- <div
- v-if="item.isDisplayed == 1"
- style="
- color: #00bf78;
- display: flex;
- justify-content: flex-start;
- align-items: center;
- cursor: pointer;
- "
- @click="radioClick(item, scope.row)"
- >
- <img
- style="width: 15px; margin-left: 10px"
- src="../assets/img/table/search.png"
- />
- {{ item.name }}
- </div>
- </div>
- </div> -->
- </template>
- </el-table-column>
- </el-table>
- </div>
- <!-- <el-pagination
- class="pag_class"
- background
- @size-change="handleSizeChange"
- @current-change="handleCurrentChange"
- :current-page.sync="pageNum"
- layout="total, sizes, prev, pager, next"
- :page-size="pageSize"
- :page-sizes="[10, 20, 50, 100]"
- :total="total"
- >
- </el-pagination> -->
- <div class="dig_button"></div>
- </div>
- </div>
- </el-dialog>
- </div>
- <div>
- <el-dialog
- :visible.sync="topicVisible"
- :close-on-click-modal="false"
- width="40%"
- style="border-radius: 40px"
- >
- <div slot="title">
- <div label-width="150px" class="demo-ruleForm">
- <p v-if="isView" class="dig_title">查看报告</p>
- <div slot=""></div>
- <div slot="footer"></div>
- <div style="margin-bottom: 20px">量表</div>
- <el-button
- type="success"
- style="border-radius: 20px"
- v-for="item in topPicList"
- :key="item.name"
- @click="radioClick(item)"
- >
- {{ item.name }}
- </el-button>
- <div style="margin-bottom: 20px; margin-top: 20px">任务(必选)</div>
- <el-button
- type="success"
- style="border-radius: 20px"
- v-for="item in taskList"
- :key="item.name"
- @click="radioClick(item)"
- >
- {{ item.name }}
- </el-button>
- <div style="margin-bottom: 20px; margin-top: 20px">任务(可选)</div>
- <div v-show="taskOptionalList.length == 0">无</div>
- <el-button
- type="success"
- style="
- border-radius: 20px;
- margin-left: 0px;
- display: flex;
- margin-top: 20px;
- "
- v-for="item in taskOptionalList"
- :key="item.name"
- @click="radioClick(item)"
- >
- {{ item.name }}
- </el-button>
- <div class="dig_button"></div>
- </div>
- </div>
- </el-dialog>
- </div>
- <div class="dig_update">
- <el-dialog
- :visible.sync="userVisible"
- append-to-body
- width="82%"
- style="border-radius: 40px"
- >
- <div slot="title" style="border-radius: 40px">
- <p style="text-align: center; font-weight: 700; font-size: 20px">
- {{ proDataLin.userName }}{{ planObj.planName }}的报告
- </p>
- <div class="kply">
- <div class="kply_inner">
- <div style="padding: 20px 40px">
- <div>
- <div class="report_info_out">
- <img v-show="gender == '1'" src="../assets/report/man1.png" />
- <img v-show="gender == '0'" src="../assets/report/woman1.png" />
- <div class="report_info_user">
- <span class="info">姓名: {{ proDataLin.userName }}</span>
- <span class="info" v-show="proDataLin.planType == '0'"
- >学号: {{ proDataLin.userNo }}</span
- >
- <span class="info" v-show="proDataLin.planType == '1'"
- >编号: {{ proDataLin.userNo }}</span
- >
- <span class="info">测试用时: {{ useTime }}</span>
- <span class="info"
- >所属组织结构: <span style="">{{
- orgName
- }}</span></span
- >
- </div>
- </div>
- <div class="report_totol_score">
- <div class="report_bei">
- <img height="200px !impotent" src="../assets/report/bei.png" />
- <div class="score" v-if="reportData.length > 0">
- {{ reportData[0].dimensionScore }}
- </div>
- </div>
- <div class="totol_result_des" v-if="reportData.length > 0">
- <div
- v-show="
- currentFlag == 'SHAPE_RANDOM' ||
- currentFlag == 'ETB01' ||
- currentFlag == 'FDOT' ||
- currentFlag == 'EMOTION_STROOP'
- "
- class="progress_out"
- :style="{
- width:
- currentFlag == 'SHAPE_RANDOM' ||
- currentFlag == 'ETB01' ||
- currentFlag == 'FDOT' ||
- currentFlag == 'EMOTION_STROOP'
- ? '100%'
- : '50%',
- }"
- style="display: flex; align-items: center"
- v-for="(item, index) in echarts_name_list"
- :key="index"
- >
- <span
- class="progress_out_name"
- style="width: 200px; font-size: 16px; font-weight: 700"
- >
- {{ item.name }}
- </span>
- <el-progress
- :percentage="echarts_data_list[index]"
- style="width: 100%"
- :stroke-width="18"
- :show-text="false"
- :color="colorPro"
- />
- <span class="progress_out_score">
- <span
- style="color: #ff1e00; font-size: 14px; font-weight: 700"
- >{{ echarts_data_list[index] }}</span
- ><span style="color: #000000; font-size: 12px; opacity: 0.4"
- >/100</span
- ></span
- >
- </div>
- 结论:{{ reportData[0].dimensionSymptom }},{{
- reportData[0].dimensionImprovement
- }}
- </div>
- </div>
- <div
- class="out_p"
- v-show="
- !(
- currentFlag == 'SHAPE_RANDOM' ||
- currentFlag == 'ETB01' ||
- currentFlag == 'FDOT' ||
- currentFlag == 'EMOTION_STROOP'
- )
- "
- >
- <div
- v-show="
- !(
- currentFlag == 'SHAPE_RANDOM' ||
- currentFlag == 'ETB01' ||
- currentFlag == 'FDOT' ||
- currentFlag == 'EMOTION_STROOP'
- )
- "
- class="echrts_sty"
- ref="echarts_ld"
- ></div>
- <div class="report_echarts_out">
- <div
- style="
- display: flex;
- flex-direction: row;
- width: 100%;
- flex-wrap: wrap;
- padding-top: 40px;
- padding-bottom: 40px;
- "
- >
- <div
- class="progress_out"
- :style="{
- width: !(
- currentFlag == 'SHAPE_RANDOM' ||
- currentFlag == 'ETB01' ||
- currentFlag == 'FDOT' ||
- currentFlag == 'EMOTION_STROOP'
- )
- ? '100%'
- : '50%',
- }"
- v-for="(item, index) in echarts_name_list"
- :key="index"
- >
- <span class="progress_out_name" style="width: 150px">
- {{ item.name }}
- </span>
- <el-progress
- :percentage="echarts_data_list[index]"
- style="width: 100%"
- :stroke-width="18"
- :show-text="false"
- :color="colorPro"
- />
- <span class="progress_out_score"
- >{{ echarts_data_list[index]
- }}<span style="color: #000000; font-size: 12px; opacity: 0.4"
- >/100</span
- ></span
- >
- </div>
- </div>
- </div>
- </div>
- <!-- **********************************开始1 -->
- <div
- v-show="
- !(
- currentFlag == 'SHAPE_RANDOM' ||
- currentFlag == 'ETB01' ||
- currentFlag == 'FDOT' ||
- currentFlag == 'EMOTION_STROOP'
- )
- "
- v-for="(item, index) in reportDataAll"
- :key="index"
- style="padding-top: 20px"
- >
- <div class="des_zhishu">
- {{ item.dimensionName }}
- </div>
- <div class="report_des_out">
- <div class="score">
- <div class="score_lin">
- <img
- src="../assets/img/report/score.png"
- style="width: 20px; height: 20px"
- alt=""
- />
- <span class="score_tt">分数:</span>
- </div>
- <span
- v-if="
- item.dimensionSymptom == '重度' ||
- item.dimensionSymptom == '高风险'
- "
- style="color: red"
- >
- {{ item.dimensionScore }}</span
- >
- <span
- v-if="
- item.dimensionSymptom == '无症状或轻度' ||
- item.dimensionSymptom == '无或轻风险'
- "
- style="color: #00bf78"
- >
- {{ item.dimensionScore }}</span
- >
- <span
- v-if="
- item.dimensionSymptom == '中度' ||
- item.dimensionSymptom == '中风险'
- "
- style="color: #f0a900"
- >
- {{ item.dimensionScore }}</span
- >
- <span
- style="
- font-size: 16px;
- color: rgb(153, 153, 153);
- letter-spacing: 0px;
- "
- > (满分100)</span
- >
- </div>
- <div class="score">
- <span class="score_tt">
- <div class="score_lin">
- <img
- src="../assets/img/report/result.png"
- style="width: 20px; height: 20px"
- alt=""
- />
- <span class="score_tt">结论:</span>
- </div>
- </span>
- <span
- v-if="
- item.dimensionSymptom == '重度' ||
- item.dimensionSymptom == '高风险'
- "
- style="color: red"
- >
- {{ item.dimensionSymptom }}</span
- >
- <span
- v-if="
- item.dimensionSymptom == '无症状或轻度' ||
- item.dimensionSymptom == '无或轻风险'
- "
- style="color: #00bf78"
- >
- {{ item.dimensionSymptom }}</span
- >
- <span
- v-if="
- item.dimensionSymptom == '中度' ||
- item.dimensionSymptom == '中风险'
- "
- style="color: #f0a900"
- >
- {{ item.dimensionSymptom }}</span
- >
- </div>
- <div class="scoreAsy">
- <span class="scoreAsyTitle">
- <div class="score_lin">
- <img
- src="../assets/img/report/asy.png"
- style="width: 20px; height: 20px"
- alt=""
- />
- <span class="score_tt">分析:</span>
- </div> </span
- ><span class="scoreAsyDes">{{ item.dimensionImprovement }}</span>
- </div>
- <!-- <div class="des">{{ item.dimensionImprovement }}</div> -->
- <div class="scoreAsy">
- <span class="scoreAsyTitle">
- <div class="score_lin">
- <img
- src="../assets/img/report/sm.png"
- style="width: 20px; height: 20px"
- alt=""
- />
- <span class="score_tt">说明:</span>
- </div> </span
- ><span class="scoreAsyDes">{{ item.dimensionDesc }}</span>
- </div>
- <div class="scoreAsy">
- <span class="scoreAsyTitle">
- <div class="score_lin">
- <img
- src="../assets/img/report/sug.png"
- style="width: 20px; height: 20px"
- alt=""
- />
- <span class="score_tt">建议:</span>
- </div> </span
- ><span class="scoreAsyDes">{{ item.dimensionSuggestion }}</span>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </div>
- </el-dialog>
- </div>
- </div>
- </template>
- <script>
- // import { oSessionStorage } from "../../utils/utils";
- import { oSessionStorage } from "../utils/utils";
- import * as echarts from "echarts";
- import md5 from "md5";
- export default {
- data() {
- return {
- topicVisible: false,
- //接收所属组织结构的词语
- orgName: "",
- userVisible: false,
- //编辑返回的值
- userDetailData: {},
- //组织架构名字
- groupName: "",
- disableFlag: false,
- phoneFlag: false,
- flag: 3,
- dialogVisible: false,
- //渠道列表
- isView: true,
- //当前计划ID
- planId: "",
- userInfo: {},
- proDataLin: [],
- total: 0,
- pageSize: 10,
- pageNum: 1,
- tableData: [],
- userTotal: 0,
- userpageSize: 10,
- userPageNum: 1,
- userTableData: [],
- multipleSelection: [],
- //量表题目的选项
- topPicList: [],
- //认知任务必选的选项
- taskList: [],
- //认知任务可选的选项
- taskOptionalList: [],
- //获取报告总数据
- reportData: [],
- //获取不过滤的数据
- reportDataAll: [],
- echarts_des_list: ["", "", "", "", "", ""],
- echarts_data_list: [10, 20, 30, 40, 0, 0],
- echarts_name_list: [
- { name: "阳光指数", max: 100 },
- { name: "情绪稳定指数", max: 100 },
- { name: "社交能力", max: 100 },
- { name: "自律能力", max: 100 },
- { name: "爱情观", max: 100 },
- { name: "人生观", max: 100 },
- ],
- option: {},
- echarts_ld: "",
- colorPro: "linear-gradient(to right,#FF4E00 ,#ffffff)",
- //该用户的需要做的题目的列表
- radio1: "",
- currentFlag: "",
- useTime: "",
- //当前用户选择的测试
- planObj: "",
- gender: "1",
- };
- },
- mounted() {
- this.echarts_ld = this.$refs.echarts_ld;
- this.userInfo = JSON.parse(oSessionStorage.getItem("userInfo"));
- },
- methods: {
- isRadioFun(val) {},
- forMatCom(val) {
- if (val.isComplete == "0") {
- return "未完成";
- } else {
- return "已完成";
- }
- },
- //查询报告 //根据planId 和用户编号
- queryRport(val) {
- //打印计划信息
- //调用接口--根据计划ID查询计划中题目需要显示的个数及名称
- let url = `/planContent/findAllByPlanId?planId=${val.id}&userNo=${val.userNo}`;
- this.$http.get(url, {}, (res) => {
- //查询题目列表
- let list = [];
- list = res.data;
- //过滤一下list
- // 量表过滤
- this.topPicList = list.filter((item) => {
- return (
- item.isDisplayed == "1" &&
- item.contentType == "0" &&
- item.flag != "20210617140713"
- );
- });
- //比作的认知任务
- this.taskList = list.filter((item) => {
- return (
- item.isDisplayed == "1" && item.contentType == "1" && item.isRequired == "1"
- );
- });
- //选做的认知任务
- this.taskOptionalList = list.filter((item) => {
- return (
- item.isDisplayed == "1" && item.contentType == "1" && item.isRequired == "0"
- );
- });
- // topPicList: [],
- // //认知任务必选的选项
- // taskList:[],
- // //认知任务可选的选项
- // taskOptionalList:[],
- });
- //出现选择了几个题目//需要显示--需要出现个弹出框进行选择
- this.topicVisible = true;
- },
- radioClickNew(val) {
- this.planObj = val;
- this.topicVisible = true;
- this.queryRport(val);
- },
- radioClick(val, planObj) {
- //在数组中招待
- let params = {
- planId: val.planId,
- userNo: this.proDataLin.userNo,
- flag: val.flag,
- };
- this.currentFlag = val.flag;
- this.userVisible = true;
- this.reportDetail(params);
- },
- reportDetail(params) {
- let url = `/userRecordScore/findByFlagAndUserNo?planId=${params.planId}&userNo=${params.userNo}&flag=${params.flag}`;
- this.$http.get(url, {}, (res) => {
- if (res.code == 200) {
- // this.reportData = res.data;
- this.gender = res.data.gender;
- let listTmp1 = [];
- listTmp1 = res.data.dimensionScore.filter((item) => {
- return item.dimensionName != "总分";
- });
- let listTmp2 = [];
- listTmp2 = listTmp1.filter((item) => {
- return (
- item.dimensionName == "压力" ||
- item.dimensionName == "焦虑" ||
- item.dimensionName == "抑郁"
- );
- });
- let listTmp3 = [];
- listTmp3 = listTmp1.filter((item) => {
- return !(
- item.dimensionName == "压力" ||
- item.dimensionName == "焦虑" ||
- item.dimensionName == "抑郁"
- );
- });
- this.reportDataAll = listTmp2.concat(listTmp3);
- //将数组中的压力---抑郁---焦虑 取出来
- //然后将数组中的不是焦虑--抑郁 --压力的 取出来 --进行排序
- // this.reportDataAll = res.data.dimensionScore.filter((item) => {
- // return item.dimensionName != "总分";
- // });
- //将三个维度提前
- this.useTime = res.data.usedTime;
- this.orgName = res.data.dimensionScore[0].orgName;
- this.reportData = res.data.dimensionScore;
- // let a =[res.data[0].]
- //修改文本
- let scoreList = [];
- let scoreDes = [];
- let nameList = [];
- for (let i = 0; i < this.reportData.length; i++) {
- //
- if (this.reportData[i].dimensionName != "总分") {
- scoreList.push(parseInt(this.reportData[i].dimensionScore));
- scoreDes.push(this.reportData[i].dimensionImprovement);
- let ob = { name: this.reportData[i].dimensionName, max: 100 };
- nameList.push(ob);
- }
- }
- this.echarts_des_list = scoreDes;
- this.echarts_data_list = scoreList;
- this.echarts_name_list = nameList;
- // currentFlag != 'SHAPE_RANDOM'
- if (
- !(
- this.currentFlag == "SHAPE_RANDOM" ||
- this.currentFlag == "ETB01" ||
- this.currentFlag == "FDOT" ||
- this.currentFlag == "EMOTION_STROOP"
- )
- ) {
- const myChart = echarts.init(this.echarts_ld);
- // this.option.series[0].data[0] = a;
- this.option.series[0].data[0].value = this.echarts_data_list;
- this.option.radar.indicator = this.echarts_name_list; //name
- //当是认知任务时---不执行
- myChart.setOption(this.option);
- }
- } else {
- this.$message({
- type:'error',
- message:res.msg
- })
- }
- });
- },
- deleteUser(val) {
- let data = [val.id];
- //调用接口开始添加
- let url = `/planUser/deletePlanUsers`;
- this.$http.post(url, data, (res) => {
- if (res && res.code == 200) {
- this.searchTarget();
- this.tableData = res.data.content;
- this.total = res.data.totalElements;
- } else {
- // this.$toast.fail(res.msg);
- this.$message.error(res.msg);
- }
- });
- },
- addUser() {
- this.userVisible = true;
- //调用待添加的用户
- this.userSearchTarget();
- },
- isComUser(val, row) {
- //添加已选用户
- let data = [];
- if (val == 1) {
- for (let i = 0; i < this.multipleSelection.length; i++) {
- //
- let obj = {
- orgName: this.multipleSelection[i].orgName,
- orgNo: this.multipleSelection[i].orgNo,
- planId: this.proDataLin.id,
- userName: this.multipleSelection[i].userName,
- userNo: this.multipleSelection[i].userNo,
- };
- data.push(obj);
- }
- } else {
- let obj = {
- orgName: row.orgName,
- orgNo: row.orgNo,
- planId: this.proDataLin.id,
- userName: row.userName,
- userNo: row.userNo,
- };
- data.push(obj);
- }
- //调用接口开始添加
- let url = `/planUser/savePlanUsers`;
- this.$http.post(url, data, (res) => {
- if (res && res.code == 200) {
- this.searchTarget();
- this.userSearchTarget();
- this.tableData = res.data.content;
- this.total = res.data.totalElements;
- } else {
- // this.$toast.fail(res.msg);
- this.$message.error(res.msg);
- }
- });
- },
- searchTarget() {
- this.pageNum = 1;
- this.searchList();
- },
- userSearchTarget() {
- this.userPageNum = 1;
- this.userSearchList();
- },
- //进来调用已选列表接口
- searchList() {
- let url = `/plan/findPlanById?id=${this.proDataLin.planId}`;
- this.$http.get(url, {}, (res) => {
- if (res && res.code == 200) {
- this.tableData = [];
- this.tableData.push(res.data);
- // this.total = res.data.totalElements;
- } else {
- // this.$toast.fail(res.msg);
- this.$message.error(res.msg);
- }
- });
- },
- userSearchList() {
- let url = `/plan/planAddUser?pageSize=${this.userpageSize}&pageNum=${this.userPageNum}&planId=${this.proDataLin.id}&orgNo=${this.proDataLin.planOrgNo}`;
- this.$http.get(url, {}, (res) => {
- if (res && res.code == 200) {
- this.userTableData = res.data.content;
- this.userTotalotal = res.data.totalElements;
- } else {
- // this.$toast.fail(res.msg);
- this.$message.error(res.msg);
- }
- });
- },
- //每页多少条
- handleSizeChange(val) {
- //将首页重置为1时---且总条数变化
- //设置为当前总条数
- },
- handleCurrentChange(val) {
- this.pageNum = val;
- this.searchList();
- },
- //已选选项
- handleSelectionChange(val) {
- this.multipleSelection = val;
- },
- resetForm(val) {
- this.cancle();
- },
- formatterTime(val) {
- let date = new Date(val);
- let year = date.getFullYear();
- let month = date.getMonth() + 1;
- month = this.formatterMon(month);
- let day = date.getDate();
- day = this.formatterMon(day);
- return year + "-" + month + "-" + day;
- },
- formatterMon(val) {
- if (val < 10) {
- return "0" + val;
- } else {
- return val;
- }
- },
- open(val) {
- // debugger;
- this.proDataLin = val;
- this.dialogVisible = true;
- //查询用户下边的计划
- //获取渠道信息
- // this.option.radar.indicator=[] //name
- this.option = {
- title: {
- // text: 'Basic Radar Chart'
- },
- legend: {
- // data: ['Allocated Budget', 'Actual Spending']
- },
- radar: {
- shape: "square", //设置雷达图形状,值有circle、square,默认为方形
- splitNumber: 3, // 雷达图圈数设置
- // shape: 'circle',
- indicator: this.echarts_name_list,
- name: {
- //修改indicator文字的颜色
- textStyle: {
- // color: "#999999",
- },
- },
- },
- series: [
- {
- type: "radar",
- symbolSize: 6,
- data: [
- {
- value: this.echarts_data_list,
- lineStyle: {
- normal: {
- color: "#FF1E00",
- },
- },
- //折线拐点颜色
- itemStyle: {
- normal: {
- color: "#FF1E00",
- borderWidth: 3, //拐点边框大小
- },
- // emphasis: {
- // color: '#000000'//hover拐点颜色定义
- // }
- },
- // name: 'Actual Spending'
- areaStyle: {
- //阴影区域背景
- // color: 'rgba(255, 228, 52, 0.6)'
- color: "#F8B4AB",
- },
- },
- ],
- },
- ],
- };
- this.searchTarget();
- },
- edit(val) {
- this.dialogVisible = true;
- this.isView = false;
- this.userDetailData = val;
- //调用查询详情的接口
- },
- //调用查询详情的接口
- disableFlagStatus() {
- setTimeout(() => {
- this.disableFlag = false;
- }, 1500);
- },
- register() {
- let that = this;
- this.$http.post(`/plan/addOrUpdate`, {}, (res) => {
- this.disableFlagStatus();
- // this.disableFlag = false;
- if (res && res.code == 200) {
- this.dialogVisible = false;
- // this.$toast.success({ message: "成功" });
- //调用父组件的查询方法
- that.$emit("search");
- } else {
- // this.$toast.fail({ message: res.msg });
- this.$message.error(res.msg);
- }
- //清空缓存
- this.cancle();
- });
- },
- },
- };
- </script>
- <style scoped>
- .progress_cla >>> .el-progress-bar__inner {
- background-color: #00bf78;
- }
- </style>
- <style>
- input[aria-hidden="true"] {
- display: none !important;
- }
- .el-radio:focus:not(.is-focus):not(:active):not(.is-disabled) .el-radio__inner {
- box-shadow: none;
- }
- .el-dialog {
- border-radius: 20px !important;
- /* background-color: #f7f7f7 !important; */
- }
- </style>
- <style lang="less" scoped>
- // .out /deep/.el-dialog {
- // border-radius: 20px !important;
- // // background-color: #f7f7f7 !important;
- // }
- // .out/deep/ .el-dialog__header {
- // padding: 0px 0px 0px !important;
- // }
- .progress_out/deep/ .el-progress-bar__inner {
- background-image: linear-gradient(to right, #ff4e00, #ffffff);
- }
- .dig_update /deep/.el-cascader {
- position: relative;
- font-size: 14px;
- line-height: 40px;
- width: 100%;
- }
- // .dig_update /deep/.el-dialog {
- // border-radius: 20px !important;
- // box-shadow: none !important;
- // background: transparent !important;
- // }
- .demo-ruleForm /deep/ .el-form-item {
- // margin-right: 10px;
- vertical-align: top;
- display: flex !important;
- flex-direction: column;
- }
- .demo-ruleForm /deep/.el-form-item__label {
- text-align: left;
- vertical-align: middle;
- float: left;
- font-size: 14px;
- color: #606266;
- line-height: 40px;
- padding: 0 12px 0 0;
- -webkit-box-sizing: border-box;
- box-sizing: border-box;
- }
- .demo-ruleForm /deep/.el-input {
- width: 100% !important;
- }
- .demo-ruleForm /deep/.el-input__inner {
- width: 100% !important;
- background-color: #f7f7f7;
- border: 0px;
- }
- .dig_button {
- display: flex;
- width: 100%;
- justify-content: space-around;
- }
- .demo-ruleForm {
- background-color: #ffffff;
- // border-radius: 20px;
- // margin-right: -10px;
- margin-top: -10px;
- padding-right: 100px;
- padding-left: 100px;
- border-radius: 20px;
- padding-top: 20px;
- padding-bottom: 40px;
- .dig_title {
- font-size: 20px;
- margin-bottom: 30px;
- text-align: center;
- font-weight: 700;
- }
- }
- .kply {
- width: 100%;
- margin-top: 20px;
- // background-color: #FAFAFA;
- .kply_inner {
- // padding: 20px 20px;
- left: 0;
- right: 0;
- margin: auto;
- width: 1200px;
- min-height: 500px;
- background-color: #ffffff;
- border-radius: 40px;
- .report_totol_score {
- margin-top: 20px;
- display: flex;
- flex-direction: row;
- // justify-content: space-between;
- align-items: center;
- .report_bei {
- position: relative;
- img {
- height: 150px !important;
- width: 210px !important;
- }
- // background-color: #111111;
- .score {
- width: 100%;
- height: 40px;
- text-align: center;
- position: absolute;
- left: 0;
- right: 0;
- top: -20px;
- bottom: 0;
- margin: auto;
- color: #ffffff;
- font-size: 30px;
- }
- }
- .totol_result_des {
- font-size: 18px;
- margin-left: 30px;
- letter-spacing: 3px;
- line-height: 30px;
- }
- }
- .des_zhishu {
- color: #222222;
- font-size: 20px;
- background-color: #00bf78;
- letter-spacing: 3px;
- color: #ffffff;
- display: inline-flex;
- border-radius: 26px;
- padding: 5px 20px;
- }
- .report_des_out {
- margin-top: 10px;
- // background-color: #f7f7f7;
- border: 4px solid #f2f2f2;
- padding: 20px 40px;
- border-radius: 40px;
- .score {
- // color: #48d68e;
- font-size: 16px;
- line-height: 30px;
- letter-spacing: 2px;
- margin-bottom: 20px;
- display: flex;
- .score_lin {
- display: flex;
- align-items: center;
- .score_tt {
- font-weight: 700;
- margin-left: 5px;
- }
- }
- }
- .des {
- color: #000000;
- font-size: 18px;
- line-height: 28px;
- letter-spacing: 3px;
- }
- .scoreAsy {
- display: flex;
- flex-direction: row;
- margin-bottom: 20px;
- .scoreAsyTitle {
- // color: #48d68e;
- font-size: 16px;
- line-height: 30px;
- letter-spacing: 2px;
- .score_lin {
- display: flex;
- align-items: center;
- .score_tt {
- font-weight: 700;
- margin-left: 5px;
- }
- }
- }
- .scoreAsyDes {
- flex: 1;
- font-size: 16px;
- line-height: 30px;
- letter-spacing: 2px;
- color: #555555;
- }
- }
- }
- .start_button_out {
- margin-top: 100px;
- margin-bottom: 40px;
- display: flex;
- flex-direction: row;
- justify-content: center;
- .start_button_self {
- cursor: pointer;
- // width: 100px;
- border-radius: 12px;
- border: 3px solid #48d68e;
- color: #ffffff;
- background-color: #000000;
- margin-right: 20px;
- padding: 8px 60px;
- cursor: pointer;
- display: flex;
- align-items: center;
- }
- }
- }
- }
- .report_info_out {
- background-color: #f8f8f8;
- border-radius: 40px;
- padding-top: 40px;
- padding-left: 40px;
- padding-bottom: 40px;
- display: flex;
- align-items: center;
- img {
- width: 100px !important;
- height: 100px !important;
- }
- .report_info_user {
- display: flex;
- flex-direction: column;
- margin-left: 20px;
- justify-content: space-around;
- color: #000000;
- font-size: 20px;
- .info {
- margin-bottom: 10px;
- font-size: 18px;
- color: #333333;
- }
- // font-weight: 700;
- }
- }
- .detail_button_out {
- flex: 1;
- display: flex;
- justify-content: space-around;
- .detail_button {
- display: flex;
- align-items: center;
- cursor: pointer;
- letter-spacing: 2px;
- img {
- width: 15px;
- margin-right: 5px;
- }
- span {
- color: #00bf78;
- // font-weight: 600;
- }
- }
- }
- .out_p {
- display: flex;
- flex: 1;
- width: 100%;
- align-items: center;
- .echrts_sty {
- flex: 6;
- height: 400px;
- }
- .report_echarts_out {
- flex: 4;
- // margin-top: 100px;
- // background-color: #f7f7f7;
- border-radius: 40px;
- display: flex;
- flex-direction: row;
- // justify-content: space-between;
- // height: 200px;
- .progress_out {
- margin-bottom: 40px;
- width: 100%;
- display: flex;
- justify-content: start;
- flex-direction: row;
- // align-items: center;
- // padding-right: 40px;
- .progress_out_name {
- color: #000000;
- font-weight: 600;
- padding-left: 20px;
- }
- .progress_out_score {
- color: #ff1e00;
- font-weight: 600;
- margin-right: 5px;
- margin-left: 15px;
- }
- }
- }
- }
- </style>
|