licp
2024-04-19 e04fbe73f7785155bffe3db30a7ead37f9200f06
对接测试项目统计接口
已修改6个文件
176 ■■■■ 文件已修改
src/assets/api/controller.js 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/a5-laboratory-qualifications.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/a7-standard-method.vue 31 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/b1-sample.vue 1 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/b4-inspection-item-statistics.vue 83 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components/view/enums.vue 59 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/assets/api/controller.js
@@ -222,6 +222,7 @@
  calendarWorkByWeek: "/report/calendarWorkByWeek", //首页-->日历任务图
  addSchedule: "/report/addSchedule", //首页-->添加日程
  ScheduleByMe: "/report/ScheduleByMe", //首页-->我的日程
  testProductByDay: "/report/testProductByDay", //首检测项目统计
}
const certification = {
  getCertificationDetail:"/certification/getCertificationDetail",//查询资质明细列表
src/components/view/a5-laboratory-qualifications.vue
@@ -445,6 +445,7 @@
        const link = document.createElement('a');
        link.href = this.javaApi + '/img/'+ url;
        document.body.appendChild(link);
        link.target = '_blank';
        link.click();
      },
      handleSuccessUpImg(response,name) {
src/components/view/a7-standard-method.vue
@@ -125,6 +125,9 @@
                value: 1,
                label: '是'
              }]
            },
            qualificationId:{
              select: []
            }
          },
          selectField: {
@@ -150,6 +153,9 @@
                value: 1,
                label: '是'
              }]
            },
            qualificationId:{
              select: []
            }
          },
          requiredAdd: ['code', 'name', 'structureTestObjectId', 'isProduct','isUse','nameEn'],
@@ -165,6 +171,7 @@
      this.entityCopy = this.HaveJson(this.componentData.entity)
      this.getPower()
      this.selectTestObjectByName()
      this.getQualificationList()
    },
    methods: {
      refreshTable() {
@@ -215,6 +222,30 @@
          this.componentData.tagField.structureTestObjectId.select = data
        })
      },
      getQualificationList(){
        this.$axios.post(this.$api.certification.getCertificationDetail,{
            page: {
              current: -1,
              size: -1
            },
            entity:{
              name: null,
        }}, {
            headers: {
              'Content-Type': 'application/json'
            }
          }).then(res => {
            if(res.code==200){
              let list = res.data.body.records.map(item => {
                item.label = item.name
                item.value = item.id
                return item
              });
              this.componentData.selectField.qualificationId.select = list
              this.componentData.tagField.qualificationId.select = list
            }
          })
      }
    }
  }
</script>
src/components/view/b1-sample.vue
@@ -34,6 +34,7 @@
    width: calc(100% - 40px);
    height: calc(100% - 60px - 80px - 10px - 40px);
    padding: 20px;
    overflow-y: auto;
  }
  .el-form-item {
src/components/view/b4-inspection-item-statistics.vue
@@ -1,5 +1,5 @@
<template>
  <div class="inspection-main">
  <div class="inspection-main" v-loading="loading">
    <div class="inspection-content" style="height:100%">
      <!-- <p style="font-size: 16px;padding:19.5px 0px">检测项目统计</p> -->
      <el-row :gutter="20">
@@ -7,10 +7,10 @@
          <div class="inspection-card inspection-head">
            <div class="inspection-head-left">
              <h4>今日项目接收</h4>
              <span >2453</span>
              <span >{{ pageData.RECEVICE }}</span>
              <div class="inspection-head-left-info">
                <img src="../../../static/img/daliy-up.svg" alt="">
                <span :class="{active:false}" class="num">&nbsp; 8.5%&nbsp; </span>
                <img :src="`../../../static/img/daliy-${pageData.RECEIVE_RATIO<0?'down':'up'}.svg`" alt="">
                <span :class="{active:pageData.RECEIVE_RATIO<0}" class="num" v-html="`&nbsp; ${handleData(pageData.RECEIVE_RATIO)}%&nbsp; `"></span>
                <span style="font-size: 12px;">较昨天</span>
              </div>
            </div>
@@ -21,10 +21,10 @@
          <div class="inspection-card inspection-head">
            <div class="inspection-head-left">
              <h4>今日项目完成</h4>
              <span >1687</span>
              <span >{{ pageData.FINISHE }}</span>
              <div class="inspection-head-left-info">
                <img src="../../../static/img/daliy-up.svg" alt="">
                <span :class="{active:false}" class="num">&nbsp; 8.5%&nbsp; </span>
                <img :src="`../../../static/img/daliy-${pageData.FINISHE_RATIO<0?'down':'up'}.svg`" alt="">
                <span :class="{active:pageData.FINISHE_RATIO<0}" class="num" v-html="`&nbsp; ${handleData(pageData.FINISHE_RATIO)}%&nbsp; `"></span>
                <span style="font-size: 12px;">较昨天</span>
              </div>
            </div>
@@ -35,10 +35,10 @@
          <div class="inspection-card inspection-head">
            <div class="inspection-head-left">
              <h4>今日项目剩余</h4>
              <span >766</span>
              <span >{{ pageData.SURPLUS }}</span>
              <div class="inspection-head-left-info">
                <img src="../../../static/img/daliy-down.svg" alt="">
                <span :class="{active:true}" class="num">&nbsp; 8.5%&nbsp; </span>
                <img :src="`../../../static/img/daliy-${pageData.SURPLUS_RATIO<0?'down':'up'}.svg`" alt="">
                <span :class="{active:pageData.SURPLUS_RATIO<0}" class="num" v-html="`&nbsp; ${handleData(pageData.SURPLUS_RATIO)}%&nbsp; `"></span>
                <span style="font-size: 12px;">较昨天</span>
              </div>
            </div>
@@ -95,11 +95,11 @@
          type:'line'
        },
        chartData0:{
          xData:['4-11','4-12','4-13','4-14','4-15','4-16','4-17','4-18','4-19','4-20'],
          xData:[],
          yData:[
            {
              title:'项目接收量',
              data:[10,20,10,40,50,20,70,40,90,50]
              data:[]
            }
          ]
        },
@@ -109,15 +109,15 @@
          type:'bar'
        },
        chartData1:{
          xData:['4-11','4-12','4-13','4-14','4-15','4-16','4-17','4-18','4-19','4-20'],
          xData:[],
          yData:[
            {
              title:'今日接收',
              data:[10,20,10,40,50,20,70,40,90,50]
              data:[]
            },
            {
              title:'今日完成',
              data:[15,10,6,33,66,44,56,77,44,55]
              data:[]
            },
          ]
        },
@@ -134,11 +134,11 @@
          data:[
            {
              name:'合格',
              value:'68'
              value:'0'
            },
            {
              name:'不合格',
              value:'32'
              value:'0'
            },
          ]
        },
@@ -184,6 +184,55 @@
            },
          ]
        },
        loading:false,
        pageData:{}
      }
    },
    mounted(){
      this.init()
    },
    methods:{
      init(){
      this.chartConfig0.isLoading = false
      this.chartConfig1.isLoading = false
      this.chartConfig2.isLoading = false
      this.chartConfig3.isLoading = false
      this.chartConfig4.isLoading = false
      this.loading = true;
      this.$axios.get(this.$api.report.testProductByDay).then(res => {
        if (res.code == 201) return
        this.pageData = this.HaveJson(res.data)
        let xData = res.data.DAYS.map(m=>{
          return `${m[1]}-${m[2]}`
        })
        this.chartData0.xData = xData
        this.chartData1.xData = xData
        this.chartData0.yData[0].data = this.pageData.RECETENDAYS
        this.chartData1.yData[0].data = this.pageData.RECETENDAYS
        this.chartData1.yData[1].data = this.pageData.FINISHTENDAYS
        this.chartData2.percentage = this.pageData.ACCEPT_RATE_TODAY*100+'%'
        this.chartData3.percentage = this.pageData.FINISH_RATE_TODAY*100+'%'
        this.chartData4.percentage = this.pageData.DELAY_RATE_TODAY*100+'%'
        this.chartData2.data[0].value = this.pageData.ACCEPT
        this.chartData2.data[1].value = this.pageData.FINISHE - this.pageData.ACCEPT
        this.loading = false;
        this.chartData3.data[0].value = this.pageData.FINISHE
        this.chartData3.data[1].value = this.pageData.RECEVICE - this.pageData.FINISHE
        this.chartData4.data[0].value = this.pageData.SURPLUS
        this.chartData4.data[1].value = this.pageData.RECEVICE - this.pageData.SURPLUS
        this.chartConfig0.isLoading = true
        this.chartConfig1.isLoading = true
        this.chartConfig2.isLoading = true
        this.chartConfig3.isLoading = true
        this.chartConfig4.isLoading = true
      })
    },
      handleData(val){
        if(val){
          return Math.abs(val)*100;
        }else{
          return '0'
        }
      }
    }
  }
src/components/view/enums.vue
@@ -100,8 +100,63 @@
                        type: 'text',
                        method: 'doDiy'
                    }],
                    tagField: {},
                    selectField: {},
                    tagField: {
            type:{
              select:[
                {
                  value:'',
                  label:'默认',
                  type:''
                },
                {
                  value:'success',
                  label:'success',
                  type:'success'
                },
                {
                  value:'info',
                  label:'info',
                  type:'info'
                },
                {
                  value:'warning',
                  label:'warning',
                  type:'warning'
                },
                {
                  value:'danger',
                  label:'danger',
                  type:'danger'
                },
              ]
            }
          },
                    selectField: {
            type:{
              select:[
                {
                  value:'',
                  label:'默认'
                },
                {
                  value:'success',
                  label:'success'
                },
                {
                  value:'info',
                  label:'info'
                },
                {
                  value:'warning',
                  label:'warning'
                },
                {
                  value:'danger',
                  label:'danger'
                },
              ]
            }
          },
          spanConfig:{
            rows:[
              {