riku
2023-07-14 023dd7fafa5d1a39d6f62ba88b6c4ec590aa20cd
Merge branch 'feature-001' of ssh://114.215.109.124:29418/grid-management-vue into feature-001
已修改4个文件
210 ■■■■■ 文件已修改
src/components.d.ts 6 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/HistoryMode.vue 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/overlay-clue/ClueLayout.vue 4 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/overlay-clue/components/ClueReport.vue 198 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/components.d.ts
@@ -14,16 +14,20 @@
    ElDatePicker: typeof import('element-plus/es')['ElDatePicker']
    ElDescriptions: typeof import('element-plus/es')['ElDescriptions']
    ElDescriptionsItem: typeof import('element-plus/es')['ElDescriptionsItem']
    ElDescrrptions: typeof import('element-plus/es')['ElDescrrptions']
    ElDescrrptionsItem: typeof import('element-plus/es')['ElDescrrptionsItem']
    ElDiag: typeof import('element-plus/es')['ElDiag']
    ElDialog: typeof import('element-plus/es')['ElDialog']
    ElForm: typeof import('element-plus/es')['ElForm']
    ElFormItem: typeof import('element-plus/es')['ElFormItem']
    ElIcon: typeof import('element-plus/es')['ElIcon']
    ElInput: typeof import('element-plus/es')['ElInput']
    ElOption: typeof import('element-plus/es')['ElOption']
    ElRadio: typeof import('element-plus/es')['ElRadio']
    ElRadioGroup: typeof import('element-plus/es')['ElRadioGroup']
    ElRow: typeof import('element-plus/es')['ElRow']
    ElScrollbar: typeof import('element-plus/es')['ElScrollbar']
    ElSelect: typeof import('element-plus/es')['ElSelect']
    ElSwitch: typeof import('element-plus/es')['ElSwitch']
    ElTag: typeof import('element-plus/es')['ElTag']
    OptionTime: typeof import('./components/search-option/OptionTime.vue')['default']
    RouterLink: typeof import('vue-router')['RouterLink']
src/views/HistoryMode.vue
@@ -4,6 +4,6 @@
<script>
export default {
  name: 'HomePage',
  name: 'HistoryPage',
};
</script>
src/views/overlay-clue/ClueLayout.vue
@@ -54,7 +54,7 @@
 * 选择线索事件
 */
const selectClue = function (clue) {
};
</script>
@@ -84,6 +84,8 @@
}
.bg-content-1 {
  height: 90vh;
  background: white;
}
.search-wrap {
src/views/overlay-clue/components/ClueReport.vue
@@ -20,6 +20,7 @@
      </template>
      kooriookami
    </el-descriptions-item>
    <el-descriptions-item>
      <template #label>
        <div class="cell-item">
@@ -65,10 +66,205 @@
      No.1188, Wuzhong Avenue, Wuzhong District, Suzhou, Jiangsu Province
    </el-descriptions-item>
  </el-descriptions>
  <!-- 清单详情 -->
<el-descriptions
class=""
    title="线索清单详情"
    :column="1"
    :size="size"
    border
    >
    <!-- <el-descriptions-item class="inventory-descriptions-item"  v-for="item in 10" :key="item" >
      <template #label>
          <span>{{ item }}</span>
      </template>
      {{ item }}
    </el-descriptions-item> -->
    <el-descriptions-item>
      <template #label>
        <div class="cell-item">
          主键
        </div>
      </template>
      {{ clueData.id }}
    </el-descriptions-item>
    <el-descriptions-item>
      <template #label>
        <div class="cell-item">
          线索名称
        </div>
      </template>
      {{ clueData.clueName }}
    </el-descriptions-item>
    <el-descriptions-item>
      <template #label>
        <div class="cell-item">
          线索结论
        </div>
      </template>
      {{ clueData.conclusion }}
    </el-descriptions-item>
    <el-descriptions-item>
      <template #label>
        <div class="cell-item">
          创建时间
        </div>
      </template>
      {{ clueData.createTime }}
    </el-descriptions-item>
    <el-descriptions-item>
      <template #label>
        <div class="cell-item">
          报警站点名称
        </div>
      </template>
      {{ clueData.siteName }}
    </el-descriptions-item>
    <el-descriptions-item>
      <template #label>
        <div class="cell-item">
          站点类型
        </div>
      </template>
      {{ clueData.sitetype }}
    </el-descriptions-item>
    <el-descriptions-item>
      <template #label>
        <div class="cell-item">
          下发时间
        </div>
      </template>
      {{ clueData.xfsj }}
    </el-descriptions-item>
    <el-descriptions-item>
      <template #label>
        <div class="cell-item">
          站点类型
        </div>
      </template>
      {{ clueData.airCheckedOptions }}
    </el-descriptions-item>
</el-descriptions>
<el-button type="primary" @click="reportButton">反馈上报</el-button>
<el-dialog  v-if="!this.isClueHave" v-model="isShow" width="50%"  :before-close="handleClose">
  <template #title>
    <span> 反馈上报</span>
  </template>
   <el-form label-width="120px" label-position="left">
    <el-form-item label="问题类型" >
      <el-radio-group v-model="form.radio">
          <el-radio label="有问题">有问题</el-radio>
          <el-radio label="无问题">无问题</el-radio>
          <el-radio label="已解决">已解决</el-radio>
      </el-radio-group>
    </el-form-item>
    <el-form-item label="线索id">
        <el-input v-model.number="form.id"></el-input>
    </el-form-item>
    <el-form-item label="线索结论">
        <el-input v-model="form.conclusion"></el-input>
    </el-form-item>
    <el-form-item label="详细描述">
      <el-input v-model="form.details" type="textarea" placeholder="请输入详情"></el-input>
    </el-form-item>
  </el-form>
    <template #footer>
      <el-button type="" @click="isShow=false">取消</el-button>
      <el-button @click="report">确定</el-button>
    </template>
</el-dialog>
<el-button type="primary" @click="reportPhoto">图片上传</el-button>
<el-dialog v-model="isShowReportPhoto">
<el-form>
    <el-form-item label="线索id">
      <el-input v-model=""></el-input>
    </el-form-item>
</el-form>
</el-dialog>
</template>
<script>
import axios from 'axios'
export default {
  // 布尔类型 控制反馈上报的样式
  // fasle代表无数据 true代表有数据
  props:{
    isClueHave:{
      type:Boolean,
      default:false
    }
  },
  name: 'HomePage',
};
  data(){
    return{
      // 保存下发线索查询后返回的数组数据
      // 或者是点击的展示结果对应的对象数据
      clueData:{},
      // 上报弹出框
      isShow:false,
      // 图片上传的弹出框
      isShowReportPhoto:false,
      // 表单中
      form:{
        // 问题类型 单选按钮的值
        radio:'',
        // 线索id
        id:0,
        // 线索结论
        conclusion:'',
        // 详细描述
        details:'',
        // 保存提交后的返回结果
        result:''
      },
      photoForm:{
        clueId:0,
        questionDescription:'',
      }
    }
  },
  methods:{
    // 点击上报按钮
    reportButton(){
      // 当该线索id已经有结论了
      if(this.isClueHave === true){
        alert('该线索已经有结论了,不可重复上报')
      }
      else if(this.isClueHave === false){
        this.isShow = !this.isShow
      }
    },
// 点击反馈上报时
report(){
  //发出请求
  axios.post('').then(response =>{
      // 获取结果
      this.result = response.data.data
      if(this.result =='上报成功'){
        ElMessage.success(this.result);
        // 只有上传成功时才关闭对话框
        this.isShow = false
      }
      else if(this.result =='上报失败'){
        ElMessage.error(this.result);
        // 否则暂时不关闭对话框
      }
  })
},
reportPhoto(){
}
  }
}
</script>
<style>
</style>