From 3c4d54bcb66d7cec4a35defc999250e200b4fdd2 Mon Sep 17 00:00:00 2001
From: baizonghao <1719256278@qq.com>
Date: 星期四, 25 五月 2023 15:39:37 +0800
Subject: [PATCH] 不予立案

---
 src/views/cause/Entry.vue | 1556 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 files changed, 1,521 insertions(+), 35 deletions(-)

diff --git a/src/views/cause/Entry.vue b/src/views/cause/Entry.vue
index a98f71b..4c050a3 100644
--- a/src/views/cause/Entry.vue
+++ b/src/views/cause/Entry.vue
@@ -4,10 +4,10 @@
       <template slot="header">
         <el-form :inline="true" :model="queryInfo" class="demo-form-inline">
           <el-form-item label="妗堜欢锛�">
-            <el-input placeholder="璇疯緭鍏ユ浠剁紪鍙锋垨鍚嶇О" v-model="queryInfo.title"></el-input>
+            <el-input placeholder="璇疯緭鍏ユ浠剁紪鍙锋垨鍚嶇О" v-model="queryInfo.cause"></el-input>
           </el-form-item>
           <el-form-item label="妗堜欢鐘舵�侊細">
-            <el-select v-model="queryInfo.status" placeholder="璇烽�夋嫨">
+            <el-select v-model="queryInfo.status" placeholder="璇烽�夋嫨" :style="{ width: '120px' }">
               <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
               </el-option>
             </el-select>
@@ -16,10 +16,14 @@
             <el-button type="primary" @click="search">鏌ヨ</el-button>
           </el-form-item>
           <el-form-item>
-            <el-button type="primary" @click="addDialogOpen">娣诲姞</el-button>
+            <el-button type="primary" @click="addAduitAnJian">娣诲姞</el-button>
           </el-form-item>
+
           <el-form-item>
-            <el-button type="primary" @click="exportExcel">瀵煎叆</el-button>
+            <el-upload name="multipartFile" class="upload-demo" action="/api/cause/upload " :show-file-list="false"
+              :before-upload="beforeAvatarUpload" :on-success="respond" :limit="1">
+<!--              <el-button type="primary">瀵煎叆</el-button>-->
+            </el-upload>
           </el-form-item>
         </el-form>
       </template>
@@ -31,80 +35,1490 @@
           </el-table-column>
           <el-table-column prop="reportNumber" label="鎶ユ浜烘暟" width="100" header-align="center" align="center">
           </el-table-column>
-          <el-table-column prop="firstTime" label="鏈�鏃╁彂妗堟棩鏈�" width="150" header-align="center" align="center">
+          <el-table-column prop="totalMoney" label="棰勪及鎬婚噾棰�" width="100" header-align="center" align="center">
           </el-table-column>
-          <el-table-column prop="status" label="妗堜欢鐘舵��" width="110" header-align="center">
+          <el-table-column prop="firstTime" label="鏈�鏃╁彂妗堟棩鏈�" width="160" header-align="center" align="center">
+          </el-table-column>
+          <el-table-column prop="status" label="妗堜欢鐘舵��" width="110" header-align="center" align="center">
+            <template slot-scope="scope">
+              <span v-if="scope.row.status == 5">涓嶄簣绔嬫</span>
+              <span v-if="scope.row.status == 0">绔嬫</span>
+              <span v-if="scope.row.status == 1">鍒濇煡</span>
+              <span v-if="scope.row.status == 2">鍙楃悊</span>
+              <span v-if="scope.row.status == 3">绉婚�佽捣璇�</span>
+              <span v-if="scope.row.status == 4">缁撴</span>
+            </template>
           </el-table-column>
           <el-table-column prop="userName" label="璐熻矗浜�" width="130" header-align="center" align="center">
           </el-table-column>
           <el-table-column prop="ctime" label="鍒涘缓鏃ユ湡" width="160" header-align="center" align="center">
           </el-table-column>
           <el-table-column label="鎿嶄綔" width="240" header-align="center" align="center">
-            <el-button type="text" size="medium" @click="handleAudit(scope.row)">缂栬緫</el-button>
-            <el-button type="text" size="medium" @click="handleAudit(scope.row)">鎶ユ浜哄憳</el-button>
-            <el-button type="text" size="medium" @click="handleAudit(scope.row)">缇ゅ叕鍛�</el-button>
-            <el-button type="text" size="medium" @click="handleAudit(scope.row)" style="color:#ff0000" >鍒犻櫎</el-button>
+            <template slot-scope="scope">
+              <el-button type="text" size="medium" @click="updateCauseDialogVisible(scope.row)">缂栬緫</el-button>
+              <el-button type="text" size="medium" @click="reporterVisibleBefore(scope.row.id)">鎶ユ浜哄憳</el-button>
+              <el-button type="text" size="medium" @click="groupAn(scope.row.groupId)">缇ゅ叕鍛�</el-button>
+              <el-button type="text" size="medium" @click="removeCause(scope.row.id)" style="color:#ff0000">鍒犻櫎
+              </el-button>
+            </template>
           </el-table-column>
         </el-table>
       </template>
-
-
       <el-pagination @current-change="handleCurrentChange" :current-page="queryInfo.current" :page-size="queryInfo.size"
         layout="prev, pager, next" :total="total"></el-pagination>
-      </el-pagination>
     </el-card>
+
+    <!--娣诲姞妗堜欢寮圭獥-->
+    <el-dialog title="娣诲姞妗堜欢" :visible.sync="addAduitDialogVisible" :before-close="addAduitClose">
+      <el-row :gutter="15">
+        <el-form ref="causeForm" :model="causeForm" :rules="addCauseRules" size="medium" label-width="140px">
+          <el-col :span="12">
+            <el-form-item label="妗堜欢缂栧彿 " prop="number">
+              <el-input v-model="causeForm.number" clearable :style="{ width: '100%' }" placeholder="杈撳叆妗堜欢缂栧彿">
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="妗堜欢鍚嶇О" prop="name">
+              <el-input v-model="causeForm.name" clearable :style="{ width: '100%' }" placeholder="杈撳叆妗堜欢鍚嶇О">
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="棰勪及鎬婚噾棰�" prop="totalMoney">
+              <el-input v-model="causeForm.totalMoney" clearable :style="{ width: '100%' }"
+                placeholder="杈撳叆棰勪及鎬婚噾棰�"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="24">
+            <el-form-item label="鏈�鏃╁彂妗堟椂闂�" prop="firstTime">
+              <el-date-picker v-model="causeForm.firstTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿" clearable
+                :style="{ width: '40%' }" value-format="yyyy-MM-dd HH:mm:ss">
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="妗堜欢鐘舵��" prop="status">
+              <el-select v-model="causeForm.status" placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" clearable :style="{ width: '100%' }">
+                <el-option v-for="item in causeOptions" :key="item.value" :label="item.label" :value="item.value">
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="璐熻矗浜�" prop="userId">
+              <el-select v-model="causeForm.userId" placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" clearable :style="{ width: '100%' }">
+                <el-option v-for="item in user" :key="item.userId" :label="item.userName" :value="item.userId"
+                  :disabled="item.disabled"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+
+          <el-col :span="24">
+            <el-form-item label="妗堜欢鎻忚堪" prop="description">
+              <el-input v-model="causeForm.description" type="textarea" placeholder="璇疯緭鍏ュ琛屾枃鏈�"
+                :autosize="{ minRows: 4, maxRows: 8 }" :style="{ width: '100%' }">
+              </el-input>
+            </el-form-item>
+          </el-col>
+        </el-form>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="addAduitDialogVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="createCause">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+
+    <!--淇敼妗堜欢寮圭獥-->
+    <el-dialog title="淇敼妗堜欢" :visible.sync="updateAduitDialogVisible" width="50%" :before-close="updateAduitClose">
+      <el-row :gutter="15">
+        <el-form ref="addAduitForm" :model="updataCauseForm" size="medium" label-width="100px">
+          <el-col :span="12">
+            <el-form-item label="妗堜欢缂栧彿 " prop="number">
+              <el-input v-model="updataCauseForm.number" clearable :style="{ width: '100%' }">
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="妗堜欢鍚嶇О" prop="name">
+              <el-input v-model="updataCauseForm.name" clearable :style="{ width: '100%' }">
+              </el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="棰勪及鎬婚噾棰�" prop="totalMoney">
+              <el-input v-model="updataCauseForm.totalMoney" clearable :style="{ width: '100%' }"></el-input>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="鏈�鏃╁彂妗堟椂闂�" prop="firstTime">
+              <el-date-picker v-model="updataCauseForm.firstTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿"
+                :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+              </el-date-picker>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="妗堜欢鐘舵��" prop="status">
+              <el-select v-model="updataCauseForm.status" clearable :style="{ width: '100%' }">
+                <el-option v-for="item in causeOptions" :key="item.value" :label="item.label" :value="item.value">
+                </el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="12">
+            <el-form-item label="璐熻矗浜�" prop="userId">
+              <el-select v-model="updataCauseForm.userName" clearable :style="{ width: '100%' }">
+                <el-option v-for="item in user" :key="item.userId" :label="item.userName" :value="item.userId"
+                  :disabled="item.disabled"></el-option>
+              </el-select>
+            </el-form-item>
+          </el-col>
+          <el-col :span="24">
+            <el-form-item label="妗堜欢鎻忚堪" prop="description">
+              <el-input v-model="updataCauseForm.description" type="textarea" placeholder="璇疯緭鍏ュ琛屾枃鏈�"
+                :autosize="{ minRows: 4, maxRows: 8 }" :style="{ width: '100%' }">
+              </el-input>
+            </el-form-item>
+          </el-col>
+        </el-form>
+      </el-row>
+      <span slot="footer" class="dialog-footer">
+        <el-button @click="updateAduitDialogVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="updateCause">纭� 瀹�</el-button>
+      </span>
+    </el-dialog>
+
+    <!--妗堜欢浜哄憳寮圭獥-->
+    <el-dialog title="鎶ユ浜哄憳" :visible.sync="reporterVisible" width="85%" :before-close="reporterVisibleClose">
+      <el-row :gutter="15">
+        <el-card style="height: 100%">
+          <template slot="header">
+            <el-form :inline="true" :model="queryInfoReport" class="demo-form-inline">
+              <el-form-item label="鎶ユ浜�:">
+                <el-input placeholder="璇疯緭鍏ュ鍚�" v-model="queryInfoReport.people" :style="{ width: '180px' }">
+                </el-input>
+              </el-form-item>
+              <el-form-item label="鎵嬫満鍙风爜:">
+                <el-input placeholder="璇疯緭鍏�" v-model="queryInfoReport.phoneNumber" :style="{ width: '120px' }">
+                </el-input>
+              </el-form-item>
+              <el-form-item label="鏄惁宸茶繘缇�:">
+                <el-select v-model="queryInfoReport.isInGroup" :style="{ width: '100px' }">
+                  <el-option v-for="item in optionsGroup" :key="item.value" :label="item.label" :value="item.value">
+                  </el-option>
+                </el-select>
+<!--              </el-form-item>-->
+
+<!--              <el-form-item label="鎶ユ鏉愭枡:">-->
+<!--                <el-select v-model="queryInfoReport.HavaMaterial" :style="{ width: '100px' }">-->
+<!--                  <el-option v-for="item in optionsMate" :key="item.value" :label="item.label" :value="item.value">-->
+<!--                  </el-option>-->
+<!--                </el-select>-->
+<!--              </el-form-item>-->
+
+<!--              <el-form-item>-->
+                <el-button type="primary" @click="searchByCondition">鏌ヨ</el-button>
+              </el-form-item>
+              <el-form-item>
+                <el-button type="primary" @click="addVisibelReport">娣诲姞</el-button>
+                <el-button type="primary" @click="exportExcel">瀵煎嚭</el-button>
+              </el-form-item>
+              <el-form-item>
+                <el-upload name="multipartFile" class="upload-demo" action="/api/cause/reporterUpload"
+                  :show-file-list="false" :data="{ causeId: this.reportCauseId }" :before-upload="beforeAvatarUpload"
+                  :on-success="reporterRespond" :limit="1">
+<!--                  <el-button type="primary">瀵煎叆</el-button>-->
+                </el-upload>
+              </el-form-item>
+              <el-form-item>
+<!--                <el-button type="primary" @click="exportExcel">鎶ユ鏉愭枡瀵煎嚭</el-button>-->
+              </el-form-item>
+
+            </el-form>
+          </template>
+          <el-table :data="reportList">
+            <el-table-column width="80" prop="pic" label="澶村儚">
+              <template slot-scope="scope">
+                <img :src="scope.row.pic" style="width: 40px;height: 40px; border-radius: 50%;">
+              </template>
+            </el-table-column>
+            <el-table-column width="80" prop="reporterName" label="鎶ユ浜�"></el-table-column>
+            <el-table-column width="120" prop="mobile" label="鎵嬫満鍙�"></el-table-column>
+            <el-table-column width="180" prop="idcard" label="璇佷欢鍙风爜"></el-table-column>
+            <el-table-column width="100" prop="isCommission" label="鏄惁浠e姙">
+              <template slot-scope="scope">
+                <span v-if="scope.row.isCommission == 1">鏄�</span>
+                <span v-else>鍚�</span>
+              </template>
+            </el-table-column>
+            <el-table-column width="100" prop="isInGroup" label="鏄惁杩涚兢">
+              <template slot-scope="scope">
+                <span v-if="scope.row.isInGroup == 1">鏄�</span>
+                <span v-else>鍚�</span>
+              </template>
+            </el-table-column>
+            <el-table-column width="100" prop="amountInvolved" label="娑夋閲戦">
+              <template slot-scope="scope">
+                <span>{{ scope.row.amountInvolved === null ? 0 : scope.row.amountInvolved }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column width="100" prop="reportMaterials" label="鎶ユ鏉愭枡">
+              <template slot-scope="scope">
+                <span>{{ scope.row.reportMaterials === null || scope.row.reportMaterials === '' ? "鏈彁浜�" : "宸叉彁浜�"
+}}</span>
+              </template>
+            </el-table-column>
+            <el-table-column width="200" prop="reportTime" label="鎶ユ鏃堕棿">
+              <template slot-scope="scope">
+                <span>{{ scope.row.reportTime === null ? "2022-07-12 10:32:56" : scope.row.reportTime }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column label="鎿嶄綔">
+              <template slot-scope="scope">
+<!--                <el-button type="text" size="medium" @click="updataReport(scope.row)">缂栬緫</el-button>-->
+<!--                <el-button type="text" size="medium"-->
+<!--                  @click="leaveReport(scope.row.id, scope.row.causeId, scope.row.groupId)" style="color:#ff0000"-->
+<!--                  :disabled="scope.row.isInGroup == 0">閫�缇� </el-button>-->
+<!--                <el-button type="text" size="medium" @click="removeReport(scope.row.id, scope.row.causeId)"-->
+<!--                  style="color:#ff0000" :disabled="scope.row.isInGroup == 1">鍒犻櫎 </el-button>-->
+                <el-button type="text" size="medium" @click="removeReport(scope.row.id, scope.row.causeId)"
+                           style="color:#ff0000" >鍒犻櫎 </el-button>
+              </template>
+            </el-table-column>
+          </el-table>
+          <el-pagination @current-change="pageReport" :current-page="queryInfoReport.current"
+            :page-size="queryInfoReport.size" layout="prev, pager, next" :total="reportTotal"></el-pagination>
+        </el-card>
+
+        <!--娣诲姞浜哄憳寮圭獥-->
+        <el-dialog title="娣诲姞浜哄憳" :visible.sync="addReportVisible" width="50%" :append-to-body="true"
+          :before-close="addReportVisibleClose">
+          <el-row :gutter="15">
+            <el-form ref="auditFrom" :model="auditFrom" :rules="addReportRules" size="medium" label-width="100px">
+              <el-col :span="12">
+                <el-form-item label="澶村儚" prop="pic" required>
+                  <el-upload ref="pic" action="/api/minio/upload" :show-file-list="false"
+                    :on-success="handleAvatarSuccess" list-type="picture-card" accept="image/*">
+                    <img v-if="picShow" :src="picShow" style="width: 145px;height: 145px">
+                    <i v-else class="el-icon-plus"></i>
+                  </el-upload>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="鎶ユ浜� " prop="reporterName">
+                  <el-input v-model="auditFrom.reporterName" placeholder="璇疯緭鍏ユ姤妗堜汉 " clearable :style="{ width: '100%' }">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="鎵嬫満鍙风爜" prop="mobile">
+                  <el-input v-model="auditFrom.mobile" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" clearable :style="{ width: '100%' }">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="韬唤璇佸彿" prop="idcard">
+                  <el-input v-model="auditFrom.idcard" placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�" clearable :style="{ width: '100%' }">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="琚獥鏃堕棿" prop="cheatTime">
+                  <el-date-picker v-model="auditFrom.cheatTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿" clearable
+                    :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="娑夋閲戦" prop="amountInvolved">
+                  <el-input v-model="auditFrom.amountInvolved" placeholder="璇疯緭鍏ユ秹妗堥噾棰�" clearable
+                    :style="{ width: '100%' }">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="妗堜欢鎻忚堪" prop="reportDescription">
+                  <el-input v-model="auditFrom.reportDescription" placeholder="璇疯緭鍏ユ浠舵弿杩�" clearable
+                    :style="{ width: '100%' }"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="24">
+                <el-form-item label="琛ュ厖淇℃伅" prop="information">
+                  <el-input v-model="auditFrom.information" type="textarea" placeholder="璇疯緭鍏ヨˉ鍏呬俊鎭�" clearable
+                    :autosize="{ minRows: 4, maxRows: 4 }" :style="{ width: '100%' }"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="24">
+                <el-form-item label="涓婁紶" prop="fileList">
+                  <el-upload ref="reportMaterials" :file-list="auditFrom.fileList" action="/api/minio/upload"
+                    list-type="picture" :on-success="handleMaterialSuccess">
+                    <el-button size="small" type="primary" icon="el-icon-upload">鐐瑰嚮涓婁紶</el-button>
+                  </el-upload>
+                </el-form-item>
+              </el-col>
+            </el-form>
+          </el-row>
+          <span slot="footer" class="dialog-footer">
+            <el-button @click="addReportVisible = false">鍙� 娑�</el-button>
+            <el-button type="primary" @click="addAduit">纭� 瀹�</el-button>
+          </span>
+        </el-dialog>
+
+        <!--淇敼妗堜欢浜哄憳寮圭獥-->
+        <el-dialog title="淇敼浜哄憳" :visible.sync="updateReportVisible" width="50%" :append-to-body="true"
+          :before-close="updateReportVisibleclose">
+          <el-row :gutter="20">
+            <el-form ref="updateReportForm" :model="updateReportForm" size="medium" label-width="100px">
+              <el-col :span="12">
+                <el-form-item label="澶村儚" prop="pic" required>
+                  <el-upload ref="pic" action="/api/minio/upload" :show-file-list="false"
+                    :on-success="handleAvatarSuccess" list-type="picture-card" accept="image/*">
+                    <img v-if="updateReportForm.pic!=null||updateReportForm!=''" :src="updateReportForm.pic" style="width: 145px;height: 145px">
+                    <i v-else class="el-icon-plus"></i>
+                  </el-upload>
+                </el-form-item>
+              </el-col>
+
+              <el-col :span="12">
+                <el-form-item label="鎶ユ浜� " prop="reporterName">
+                  <el-input v-model="updateReportForm.reporterName" placeholder="璇疯緭鍏ユ姤妗堜汉 " clearable :style="{ width: '100%' }">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="鎵嬫満鍙风爜" prop="mobile">
+                  <el-input v-model="updateReportForm.mobile" placeholder="璇疯緭鍏ユ墜鏈哄彿鐮�" clearable :style="{ width: '100%' }">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="韬唤璇佸彿" prop="idcard">
+                  <el-input v-model="updateReportForm.idcard" placeholder="璇疯緭鍏ヨ韩浠借瘉鍙�" clearable :style="{ width: '100%' }">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+
+              <!-- <el-col :span="12">
+                <el-form-item prop="reportTime" label="鎶ユ鏃堕棿">
+                  <el-date-picker v-model="updateReportForm.reportTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿" clearable
+                    :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+                  </el-date-picker>
+                </el-form-item>
+              </el-col> -->
+              <el-col :span="12">
+                <el-form-item label="琚獥鏃堕棿" prop="cheatTime">
+                  <el-date-picker v-model="updateReportForm.cheatTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿" clearable
+                    :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss"></el-date-picker>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="娑夋閲戦" prop="amountInvolved">
+                  <el-input v-model="updateReportForm.amountInvolved" placeholder="璇疯緭鍏ユ秹妗堥噾棰�" clearable
+                    :style="{ width: '100%' }">
+                  </el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="24">
+                <el-form-item label="妗堜欢鎻忚堪" prop="reportDescription">
+                  <el-input v-model="updateReportForm.reportDescription" placeholder="璇疯緭鍏ユ浠舵弿杩�" clearable
+                    :style="{ width: '100%' }"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="24">
+                <el-form-item label="琛ュ厖淇℃伅" prop="information">
+                  <el-input v-model="updateReportForm.information" type="textarea" placeholder="璇疯緭鍏ヨˉ鍏呬俊鎭�" clearable
+                    :autosize="{ minRows: 4, maxRows: 4 }" :style="{ width: '100%' }"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="24">
+                <el-form-item label="涓婁紶" prop="fileList" required>
+                  <el-upload ref="reportMaterials" :file-list="updateReportForm.fileList" action="/api/minio/upload"
+                    list-type="picture" :on-success="handleReporterMaterialSuccess">
+                    <img v-if="updateReportForm.reportMaterials!=''" :src="'/minio/img/'+updateReportForm.reportMaterials" style="width: 145px;height: 145px">
+                    <el-button size="small" type="primary" icon="el-icon-upload">鐐瑰嚮涓婁紶</el-button>
+                  </el-upload>
+                </el-form-item>
+              </el-col>
+              <!-- <el-col :span="24">
+                <el-form-item label="涓婁紶" prop="fileList" required>
+                  <el-upload ref="reportMaterials" :file-list="auditFrom.fileList" action="/api/minio/upload"
+                    list-type="picture" :on-success="handleMaterialSuccess">
+                    <el-button size="small" type="primary" icon="el-icon-upload">鐐瑰嚮涓婁紶</el-button>
+                  </el-upload>
+                </el-form-item>
+              </el-col> -->
+
+            </el-form>
+          </el-row>
+          <span slot="footer" class="dialog-footer">
+            <el-button @click="updateReportVisible = false">鍙� 娑�</el-button>
+            <el-button type="primary" @click="updateReportInCasue">纭� 瀹�</el-button>
+          </span>
+        </el-dialog>
+
+
+
+      </el-row>
+      <!-- <span slot="footer" class="dialog-footer">
+        <el-button @click="reporterVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="updateCause">纭� 瀹�</el-button>
+      </span> -->
+    </el-dialog>
+
+
+    <!--缇ゅ叕鍛婂脊绐�-->
+    <el-dialog title="缇ゅ叕鍛�" :visible.sync="groupAnVisible" width="85%" :before-close="groupAnVisibleClose">
+      <el-row :gutter="15">
+        <el-card style="height: 100%">
+          <template slot="header">
+            <el-form :inline="true" :model="queryInfoGroupAn" class="demo-form-inline">
+              <el-form-item label="缇ゅ叕鍛婏細">
+                <el-input placeholder="璇疯緭鍏�" v-model="queryInfoGroupAn.content"></el-input>
+              </el-form-item>
+              <el-form-item label="鐘舵��">
+                <el-select v-model="queryInfoGroupAn.status" placeholder="璇烽�夋嫨" :style="{ width: '100px' }">
+                  <el-option v-for="item in statusMate" :key="item.value" :label="item.label" :value="item.value">
+                  </el-option>
+                </el-select>
+              </el-form-item>
+
+              <el-form-item>
+                <el-button type="primary" @click="groupAnSearch">鏌ヨ</el-button>
+              </el-form-item>
+              <el-form-item>
+                <el-button type="primary" @click="openGroupAn">娣诲姞</el-button>
+              </el-form-item>
+
+            </el-form>
+          </template>
+          <el-table :data="groupAnFrom">
+            <el-table-column label="搴忓彿" type="index" width="120" align="center">
+              <template slot-scope="scope">
+                <span>{{ (current - 1) * size + scope.$index + 1 }}</span>
+              </template>
+            </el-table-column>
+            <el-table-column width="180" prop="text" label="缇ょ粍鍏憡"></el-table-column>
+            <el-table-column width="120" prop="status" label="鐘舵��">
+              <template slot-scope="scope">
+                <span v-if="scope.row.status === 1">宸插彂甯�</span>
+                <span v-else-if="scope.row.status === 0">鏈彂甯�</span>
+                <span v-else="scope.row.status=== 2">宸蹭笅鏋�</span>
+              </template>
+            </el-table-column>
+            <el-table-column width="100" prop="createName" label="鍒涘缓浜�"></el-table-column>
+            <el-table-column width="180" prop="publishTime" label="鍙戝竷鏃堕棿">
+            </el-table-column>
+            <el-table-column label="鎿嶄綔" align="conter">
+              <template slot-scope="scope">
+                <el-button type="text" size="medium" @click="details(scope.row.id)">璇︽儏</el-button>
+                <el-button type="text" size="medium" @click="punlishOrUnshelve(scope.row.id, scope.row.status)"
+                  :disabled="scope.row.status == 2">
+                  <span v-if="scope.row.status === 1" style="color:#ff0000">涓嬫灦</span>
+                  <span v-else>鍙戝竷</span>
+                </el-button>
+                <el-button type="text" size="medium" @click="removeGroupAn(scope.row.id)" style="color:#ff0000"
+                  :disabled="scope.row.status == 1">鍒犻櫎
+                </el-button>
+              </template>
+            </el-table-column>
+          </el-table>
+          <el-pagination @current-change="pageGroupAn" :current-page="queryInfoGroupAn.current"
+            :page-size="queryInfoGroupAn.size" layout="prev, pager, next" :total="groupAnTotal"></el-pagination>
+        </el-card>
+
+        <!--娣诲姞缇ゅ叕鍛婂脊绐�-->
+        <el-dialog title="缇ょ粍鍏憡娣诲姞" :visible.sync="addGroupAnVisibel" width="50%" :before-close="addGroupAnClose"
+          :append-to-body="true">
+          <el-row :gutter="15">
+            <el-form ref="addGroupForm" :model="addGroupForm" :rules="rules" size="medium" label-width="100px">
+              <el-col :span="24">
+                <el-form-item label="鍏憡鍐呭 " prop="text">
+                  <el-input v-model="addGroupForm.text" type="textarea" placeholder="璇疯緭鍏ュ叕鍛婂唴瀹�" clearable
+                    :autosize="{ minRows: 4, maxRows: 4 }" :style="{ width: '100%' }"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="鍏憡鏈夋晥鏈�" prop="effectiveStime">
+                  <el-date-picker v-model="addGroupForm.effectiveStime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿" clearable
+                    :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+                  </el-date-picker>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="鑷�" prop="effectiveEtime">
+                  <el-date-picker v-model="addGroupForm.effectiveEtime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿" clearable
+                    :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+                  </el-date-picker>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+
+                <el-form-item label="绔嬪嵆鍙戝竷" prop="status">
+                  <el-select v-model="addGroupForm.status" clearable placeholder="璇烽�夋嫨涓嬫媺閫夋嫨" :style="{ width: '100%' }">
+                    <el-option v-for="item in groupStatusMate" :key="item.value" :label="item.label" :value="item.value"
+                      :disabled="item.disabled"></el-option>
+                  </el-select>
+                </el-form-item>
+              </el-col>
+
+            </el-form>
+          </el-row>
+          <span slot="footer" class="dialog-footer">
+            <el-button @click="addGroupAnVisibel = false">鍙� 娑�</el-button>
+            <el-button type="primary" @click="addGroupAn">纭� 瀹�</el-button>
+          </span>
+        </el-dialog>
+
+        <!--缇ゅ叕鍛婅鎯呭脊绐�-->
+        <el-dialog title="缇ょ粍鍏憡璇︽儏" :visible.sync="detailsVisible" width="50%" :append-to-body="true"
+          :before-close="detailsVisibleclose">
+
+          <el-row :gutter="15">
+            <el-form ref="addGroupForm" :model="addGroupForm" size="medium" label-width="100px">
+              <el-col :span="24">
+                <el-form-item label="鍏憡鍐呭 " prop="text">
+                  <el-input v-model="detailsGroupAn.text" type="textarea" placeholder="璇疯緭鍏ュ叕鍛婂唴瀹�" disabled
+                    :autosize="{ minRows: 4, maxRows: 4 }" :style="{ width: '100%' }"></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="鍏憡鏈夋晥鏈�" prop="effectiveStime">
+                  <el-date-picker v-model="detailsGroupAn.effectiveStime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿" disabled
+                    :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+                  </el-date-picker>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="鑷�" prop="effectiveEtime">
+                  <el-date-picker v-model="detailsGroupAn.effectiveEtime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿" disabled
+                    :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+                  </el-date-picker>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="鍙戝竷鏃堕棿" prop="effectiveEtime">
+                  <el-date-picker v-model="detailsGroupAn.publishTime" type="datetime" placeholder="閫夋嫨鏃ユ湡鏃堕棿" disabled
+                    :style="{ width: '100%' }" value-format="yyyy-MM-dd HH:mm:ss">
+                  </el-date-picker>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="鍒涘缓浜�" prop="effectiveEtime">
+                  <el-input v-model="detailsGroupAn.createName" disabled></el-input>
+                </el-form-item>
+              </el-col>
+              <el-col :span="12">
+                <el-form-item label="鐘舵��" prop="status">
+                  <span v-if="detailsGroupAn.status === 1">宸插彂甯�</span>
+                  <span v-else-if="detailsGroupAn.status === 0">鏈彂甯�</span>
+                  <span v-else="detailsGroupAn.status === 2">宸蹭笅鏋�</span>
+                </el-form-item>
+              </el-col>
+            </el-form>
+          </el-row>
+
+
+          <!-- <div style="display:flex; width:180;">
+            <div style="display:flex; width:180;">
+              <h4>缇ょ粍鍏憡</h4>
+              <p>{{ detailsGroupAn.text }}</p>
+            </div>
+            <div style="display:flex; width:180;">
+              <h4>鐘舵��</h4>
+              <p>{{ detailsGroupAn.status }}</p>
+            </div>
+            <div style="display:flex; width:180;">
+              <h4>鍒涘缓浜�</h4>
+              <p>{{ detailsGroupAn. }}</p>
+            </div>
+            <div style="display:flex; width:180;">
+              <h4>鍙戝竷鏃堕棿</h4>
+              <p>{{ detailsGroupAn.publishTime }}</p>
+            </div>
+            <div style="display:flex; width:180;">
+              <h4>缇ょ粍鍏憡</h4>
+              <p>{{ detailsGroupAn.text }}</p>
+            </div>
+          </div> -->
+
+          <!-- <el-table-column width="180" prop="effectiveStime" label="缇ょ粍鍏憡"></el-table-column>
+            <el-table-column width="120" prop="status" label="鐘舵��">
+              <template slot-scope="scope">
+                <span v-if="scope.row.status === 1">宸插彂甯�</span>
+                <span v-else-if="scope.row.status === 0">鏈彂甯�</span>
+                <span v-else="scope.row.status=== 2">宸蹭笅鏋�</span>
+              </template>
+            </el-table-column>
+            <el-table-column width="100" prop="createName" label="鍒涘缓浜�"></el-table-column>
+            <el-table-column width="180" prop="publishTime" label="鍙戝竷鏃堕棿">
+            </el-table-column> -->
+
+        </el-dialog>
+
+
+
+      </el-row>
+      <!-- <span slot="footer" class="dialog-footer">
+        <el-button @click="reporterVisible = false">鍙� 娑�</el-button>
+        <el-button type="primary" @click="updateCause">纭� 瀹�</el-button>
+      </span> -->
+    </el-dialog>
+
   </div>
 </template>
 
 <script>
 import {
-  casueList
+  casueList,
+  remove,
+  removeReport,
+  leaveReport,
+  user,
+  updataReportCasue,
+  GroupLits,
+  GroupListBycondition,
+  pOrUGroupAn,
+  deleteGroupAn,
+  detailsGroupAn,
+  report
+  //saveSubject
 } from '@/api/cause'
+
+import { getImgUrl, getReportById } from '@/api/common'
+
 
 export default {
   name: "Entry",
   data() {
     return {
-      casueList: [],
-      queryInfo: {
-        title: '',
-        status: '5',
-        current: 1,
-        size: 10
+
+      //娣诲姞妗堜欢浜哄憳寮圭獥鎺у埗
+      addReportVisible: false,
+      //缇ゅ叕鍛婅缁嗗唴瀹�
+      detailsGroupAn: [],
+      // {
+      //   text: '',
+      //   groupId: '',
+      //   id: '',
+      //   ctime: '',
+      //   effectiveStime: '',
+      //   effectiveEtime: '',
+      //   createName: '',
+      //   status: null,
+      //   publishTime: null
+      // },
+      //缇ゅ叕鍛婅鎯呭脊妗�
+      detailsVisible: false,
+      //缇ゅ叕鍛婃坊鍔犺〃鍗�
+      addGroupForm: {
+        text: '',
+        status: '',
+        effectiveStime: '',
+        effectiveEtime: '',
       },
-      options: [
+      //缇ゅ叕鍛婄兢娣诲姞寮规
+      addGroupAnVisibel: false,
+      //缇ゅ叕鍛婃煡璇�
+      queryInfoGroupAn: {
+        status: '',
+        content: '',
+        groupId: '',
+        current: 1,
+        size: 10,
+      },
+      groupAnTotal: null,
+      //缇ゅ叕鍛婂簭鍙风浉鍏�
+      current: 1,
+      size: 10,
+      //妗堜欢id
+      causeId: '',
+      //妗堜欢浜哄憳瀵煎嚭id
+      exportReportId: '',
+      //缇ゅ叕鍛婃煡璇㈣繑鍥炲��
+      groupAnFrom: [],
+      //妗堜欢浜哄憳鏌ヨ鍙傛暟
+      queryInfoReport: {
+        causeId: null,
+        people: '',
+        phoneNumber: '',
+        isInGroup: null,
+        current: 1,
+        HavaMaterial: null,
+        size: 10,
+      },
+      auditFrom: {
+        pic: '',
+        reporterName: '',
+        mobile: '',
+        idcard: '',
+        cheatTime: '',
+        amountInvolved: '',
+        reportDescription: '',
+        information: '',
+        reportMaterials: "",
+        fileList: [],
+        tmpTime: '',
+        causeId: null,
+      },
+      auditInfo: {},
+      picShow: "",
+      optionsGroup: [
         {
-          value: '5',
+          value: null,
+          label: '鍏ㄩ儴'
+        },
+        {
+          value: '1',
+          label: '鏄�'
+        },
+        {
+          value: '0',
+          label: '鍚�'
+        }
+      ],
+      optionsMate: [
+        {
+          value: null,
           label: '鍏ㄩ儴'
         },
         {
           value: '0',
-          label: '鏈鏍�'
+          label: '鏈彁浜�'
         },
         {
           value: '1',
+          label: '宸叉彁浜�'
+        }
+      ],
+      groupStatusMate: [
+        {
+          value: '0',
+          label: '鍚�'
+        },
+        {
+          value: '1',
+          label: '鏄�'
+        }
+      ],
+      statusMate: [
+        {
+          value: '',
+          label: '鍏ㄩ儴'
+        },
+        {
+          value: '0',
+          label: '鏈彂甯�'
+        },
+        {
+          value: '1',
+          label: '宸插彂甯�'
+        }
+      ],
+      //鎶ユ浜哄憳涓垎椤电殑妗堜欢id
+      reportCauseId: null,
+      reportTotal: 0,
+      reportList: [],
+      infoAduitDialogVisible: false,
+      groupAnVisible: false,
+      addCauseRules: {
+        number: [{
+          required: true,
+          message: '璇疯緭鍏ユ浠剁紪鍙� ',
+          trigger: 'blur'
+        }],
+        name: [{
+          required: true,
+          message: '璇疯緭鍏ユ浠跺悕绉� ',
+          trigger: 'blur'
+        }],
+        firstTime: [{
+          required: true,
+          message: '璇烽�夋嫨鏈�鏃╂鍙戞椂闂� ',
+          trigger: 'blur'
+        }],
+        status: [{
+          required: true,
+          message: '璇烽�夋嫨妗堜欢鐘舵�� ',
+          trigger: 'blur'
+        }],
+        totalMoney: [{
+          required: true,
+          message: '璇疯緭鍏ラ浼版�婚噾棰� ',
+          trigger: 'blur'
+        }],
+        userId: [{
+          required: true,
+          message: '璐熻矗浜洪�夋嫨 ',
+          trigger: 'blur'
+        }],
+        description: [{
+          required: true,
+          message: '璇疯緭鍏ユ浠舵弿杩� ',
+          trigger: 'blur'
+        }]
+      }
+      ,
+      reportRules: {
+        reporterName: [{
+          required: true,
+          message: '璇疯緭鍏ユ姤妗堜汉 ',
+          trigger: 'blur'
+        }],
+        mobile: [{
+          required: true,
+          message: '璇疯緭鍏ユ墜鏈哄彿鐮� ',
+          trigger: 'blur'
+        }],
+        idcard: [{
+          required: true,
+          message: '璇疯緭鍏ヨ韩浠借瘉鍙� ',
+          trigger: 'blur'
+        }],
+        tmpTime: [{
+          required: true,
+          message: '璇疯緭鍏ヨ楠楁椂闂� ',
+          trigger: 'blur'
+        }],
+        amountInvolved: [{
+          required: true,
+          message: '璇疯緭鍏ユ秹妗堥噾棰� ',
+          trigger: 'blur'
+        }],
+        reportDescription: [{
+          required: true,
+          message: '璇疯緭鍏ユ浠舵弿杩� ',
+          trigger: 'blur'
+        }],
+        information: [{
+          required: true,
+          message: '璇疯緭鍏ヨˉ鍏呬俊鎭� ',
+          trigger: 'blur'
+        }],
+        causeId: [{
+          required: true,
+          message: '璇烽�夋嫨涓嬫媺閫夋嫨 ',
+          trigger: 'change'
+        }],
+      },
+      fileList: [{
+        name: '',
+        url: '',
+        data: ''
+      }
+      ],
+      updateReportForm: {
+        pic: '',
+        reporterName: '',
+        mobile: '',
+        idcard: '',
+        cheatTime: '',
+        amountInvolved: '',
+        reportDescription: '',
+        information: '',
+        reportMaterials: "",
+        ctime: '',
+        causeId: null,
+        groupId: null,
+      },
+      //妗堜欢浜哄憳琛ㄦ牸鏁版嵁
+      updateReportPrams: {
+        id: '',
+        pic:'',
+        reporterName: '',
+        mobile: '',
+        idcard: '',
+        cheatTime: '',
+        amountInvolved: '',
+        reportDescription: '',
+        information: '',
+        reportMaterials: "",
+        ctime: '',
+        causeId: null,
+        groupId: null,
+        fileList: [],
+      },
+
+      //妗堜欢琛ㄦ牸鏁版嵁
+      causeForm: {
+        name: '',
+        number: '',
+        firstTime: '',
+        userId: '',
+        status: '',
+        description: '',
+      },
+      updataCauseForm: {
+        id: '',
+        pic:'',
+        name: '',
+        number: '',
+        firstTime: '',
+        userName: '',
+        status: '',
+        userId: '',
+        description: '',
+      },
+      casueList: [],
+      queryInfo: {
+        cause: '',
+        status: null,
+        current: 1,
+        size: 10
+      },
+      user: [],
+      updateUser: [],
+      options: [
+        {
+          value: null,
+          label: '鍏ㄩ儴'
+        },
+        {
+          value: '5',
           label: '涓嶄簣绔嬫'
         },
         {
+          value: '0',
+          label: '绔嬫'
+        },
+        {
+          value: '1',
+          label: '鍒濇煡'
+        },
+        {
           value: '2',
-          label: '鍙楃悊涓�'
+          label: '鍙楃悊'
         },
         {
           value: '3',
-          label: '宸茬粨妗�'
+          label: '绉婚�佽捣璇�'
         },
         {
           value: '4',
-          label: '宸茬粨妗�'
+          label: '缁撴'
         }
       ],
-      total: 0,
+      causeOptions: [
+        {
+          value: '5',
+          label: '涓嶄簣绔嬫'
+        },
+        {
+          value: 0,
+          label: '绔嬫'
+        },
+        {
+          value: 1,
+          label: '鍒濇煡'
+        },
+        {
+          value: 2,
+          label: '鍙楃悊'
+        },
+        {
+          value: 3,
+          label: '绉婚�佽捣璇�'
+        },
+        {
+          value: 4,
+          label: '缁撴'
+        }
+      ],
+      total: null,
+      addAduitDialogVisible: false,
+      updateAduitDialogVisible: false,
+      reporterVisible: false,
+      updateReportVisible: false,
+      addReportRules: {
+        reporterName: [{
+          required: true,
+          message: '璇疯緭鍏ユ姤妗堜汉 ',
+          trigger: 'blur'
+        }],
+        mobile:
+          [{ required: true, message: '璇疯緭鍏ユ墜鏈哄彿鐮� ', trigger: 'blur' },
+          {
+            validator: function (rule, value, callback) {
+              if (/^1[34578]\d{9}$/.test(value) == false) {
+                callback(new Error("璇疯緭鍏ユ纭殑鎵嬫満鍙�"));
+              } else {
+                callback();
+              }
+            }, trigger: 'blur'
+          }],
+        idcard: [{ required: true, message: '璇疯緭鍏ヨ韩浠借瘉ID ', trigger: 'blur' },
+        { pattern: /(^\d{15}$)|(^\d{18}$)|(^\d{17}(\d|X|x)$)/, message: '浣犵殑韬唤璇佹牸寮忎笉姝g‘' }],
+        cheatTime: [{
+          required: true,
+          message: '璇疯緭鍏ヨ楠楁椂闂� ',
+          trigger: 'blur'
+        }],
+        amountInvolved: [{
+          required: true,
+          message: '璇疯緭鍏ユ秹妗堥噾棰� ',
+          trigger: 'blur'
+        }],
+        reportDescription: [{
+          required: true,
+          message: '璇疯緭鍏ユ浠舵弿杩� ',
+          trigger: 'blur'
+        }],
+        information: [{
+          required: true,
+          message: '璇疯緭鍏ヨˉ鍏呬俊鎭� ',
+          trigger: 'blur'
+        }],
+      },
+      rules: {
+        text: [{
+          required: true,
+          message: '璇疯緭鍏ュ叕鍛婂唴瀹� ',
+          trigger: 'blur'
+        }],
+        effectiveStime: [{
+          required: true,
+          message: '閫夋嫨鍏憡鏈夋晥鏈� ',
+          trigger: 'blur'
+        }],
+        effectiveEtime: [{
+          required: true,
+          message: '閫夋嫨鍏憡鏈夋晥鏈� ',
+          trigger: 'blur'
+        }],
+        status: [{
+          required: true,
+          message: '璇疯緭鍏ヨ楠楁椂闂� ',
+          trigger: 'blur'
+        }]
+      },
     }
   },
   created() {
-    this.init()
+    this.init();
+    this.userList();
+
   },
-  methods: {
+  methods:
+  {
+    expExcel(){
+
+    },
+    addAduitAnJian(){
+      let date=(new Date()).valueOf();//鑾峰彇鏃堕棿鎴�
+      let txt = '1234567890';//鐢熸垚鐨勯殢鏈烘満鍣ㄧ爜
+      let len =13;//鏈哄櫒鐮佹湁澶氬皯浣�
+      let pwd = '';//瀹氫箟绌哄彉閲忕敤鏉ユ帴鏀舵満鍣ㄧ爜
+      for (let i = 0; i < len; i++) {
+        pwd += txt.charAt(Math.floor(Math.random() * txt.length));//寰幆鏈哄櫒鐮佷綅鏁伴殢鏈哄~鍏�
+      }
+      let id= date+pwd;
+      this.causeForm.number=id;
+      this.addAduitDialogVisible=true;
+    },
+
+    //鍏抽棴妗堜欢鐨勬浠朵汉鍛樻坊鍔�
+    addReportVisibleClose() {
+      this.addReportVisible = false;
+    },
+    //妗堜欢娣诲姞
+    addVisibelReport() {
+      this.addReportVisible = true;
+    },
+
+    detailsVisibleclose() {
+      this.detailsVisible = false;
+    },
+    //缇ゅ叕鍛婅鎯�
+    details(val) {
+
+      detailsGroupAn(val).then(res =>
+        this.detailsGroupAn = res
+      );
+      console.log(this.detailsGroupAn);
+      this.detailsVisible = true;
+    },
+    //缇ゅ叕鍛婂垹闄�
+    removeGroupAn(val) {
+      deleteGroupAn(val).then(res => this.$message({
+        message: '鎿嶄綔鎴愬姛',
+        type: 'success'
+      }));
+      this.groupAnSearch();
+    },
+    //鍒嗛〉
+    pageGroupAn(val) {
+      this.queryInfoGroupAn.current = val;
+      this.groupAnSearch();
+    },
+    //鍙戝竷鍜屼笅鏋�
+    punlishOrUnshelve(val, val2) {
+      pOrUGroupAn(val, val2).then(res => {
+        this.$message({
+          message: '鎿嶄綔鎴愬姛',
+          type: 'success'
+        });
+        this.groupAnSearch();
+      })
+    },
+    //鎵撳紑寮规
+    openGroupAn() { this.addGroupAnVisibel = true; },
+    //娣诲姞缇ゅ叕鍛�
+    addGroupAn() {
+      this.$refs.addGroupForm.validate(async (vaild) => {
+        if (!vaild) return this.$message.error('杈撳叆鏈夎')
+        let from = null;
+        from = this.addGroupForm;
+        const data = from;
+        this.$http.post('/api/announcement/add?groupId=' + this.queryInfoGroupAn.groupId,
+          data
+        ).then(res => {
+          this.$message({
+            message: '娣诲姞鎴愬姛',
+            type: 'success'
+          });
+          this.addGroupForm = {}
+          this.addGroupAnVisibel = false;
+          this.groupAnSearch();
+        });
+      })
+    },
+    //琛屼负 缇ゅ叕鍛�
+    addGroupAnClose() {
+      this.addGroupAnVisibel = false;
+    },
+    groupAnVisibleClose() {
+      this.groupAnVisible = false
+    },
+    //缇ゅ叕鍛婃煡璇�
+    groupAnSearch() {
+      let params = null;
+      params = this.queryInfoGroupAn;
+      GroupListBycondition(params).then(res => {
+        this.queryInfoGroupAn.current = res.current;
+        this.queryInfoGroupAn.size = res.size;
+        this.groupAnFrom = res.records;
+        this.current = res.current;
+        this.size = res.size;
+        this.groupAnTotal = res.total;
+      })
+    },
+    //缇ゅ叕鍛�
+    //鎵撳紑 缇ゅ叕鍛婂脊绐�
+    groupAn(val) {
+      this.groupAnVisible = true;
+      this.getGroupAn(val);
+    },
+    getGroupAn(val) {
+      let params = null;
+      this.queryInfoGroupAn.groupId = val;
+      params = this.queryInfoGroupAn;
+      GroupLits(params).then(res => {
+        this.queryInfoGroupAn.current = res.current;
+        this.queryInfoGroupAn.size = res.size;
+        this.groupAnFrom = res.records;
+        this.current = res.current;
+        this.size = res.size;
+        this.groupAnTotal = res.total;
+      })
+    },
+    //妗堜欢浜哄憳
+    //瀵煎嚭鏂囦欢
+    exportExcel() {
+      this.$http.post('/api//cause/exp?causeId=' + this.exportReportId, {}, { responseType: 'blob' })
+        .then(res => {
+          const fileName = decodeURI(res.headers['content-disposition'].split(';')[1].split('=')[1])
+          const blob = new Blob([res.data], { type: 'application/vnd.openxmlformats-officedocument.spreadsheetml.sheet' })
+          const elink = document.createElement('a')
+          elink.download = fileName
+          elink.href = URL.createObjectURL(blob)
+          document.body.appendChild(elink)
+          elink.click()
+          document.body.removeChild(elink)
+
+        })
+
+    },
+
+    //妗堜欢浜哄憳缂栬緫琛ㄥ崟鎻愪氦
+    updateReportInCasue() {
+      this.updateReportPrams.reporterName = this.updateReportForm.reporterName
+      this.updateReportPrams.mobile = this.updateReportForm.mobile
+      this.updateReportPrams.idcard = this.updateReportForm.idcard
+      this.updateReportPrams.cheatTime = this.updateReportForm.cheatTime
+      this.updateReportPrams.amountInvolved = this.updateReportForm.amountInvolved
+      this.updateReportPrams.reportDescription = this.updateReportForm.reportDescription
+      this.updateReportPrams.information = this.updateReportForm.information
+      this.updateReportPrams.reportMaterials = this.updateReportForm.reportMaterials
+      this.updateReportPrams.ctime = this.updateReportForm.ctime
+      this.updateReportPrams.causeId = this.updateReportForm.causeId
+      this.updateReportPrams.groupId = this.updateReportForm.groupId
+      this.updateReportPrams.id = this.updateReportForm.id
+      this.updateReportPrams.reportMaterials = this.updateReportPrams.fileList.map(i => i.data).join(',')
+
+      this.updateReportPrams.pic=this.updateReportForm.pic
+      let form = null;
+      form = this.updateReportPrams;
+      const data = form;
+      updataReportCasue(data).then(
+        res => {
+          this.$message({
+            message: '淇敼鎴愬姛',
+            type: 'success'
+          });
+          this.searchByCondition();
+        }
+      );
+      this.updateReportVisible = false;
+    },
+
+    //缂栬緫妗堜欢浜哄憳
+    updataReport(val) {
+      this.updateReportVisible = true;
+      this.updateReportForm = Object.assign({}, val);
+      this.causeId = val.causeId;
+    },
+    //琛屼负鍏抽棴淇敼妗堜欢浜哄憳
+    updateReportVisibleclose() {
+      this.updateReportVisible = false;
+    },
+    //鎶ユ浜哄憳
+    reporterVisibleBefore(row) {
+      this.reporterVisible = true;
+      this.exportReportId = row;
+      this.reportCauseId = row;
+      this.get(row);
+    },
+    //鎶ユ浜哄憳鏌ヨ
+    get(param) {
+      this.$http.get('/api/cause/getReporterList?causeId=' + param).then(res => {
+
+        this.reportTotal = res.data.data.total
+        this.reportList = res.data.data.records
+        this.reportList.forEach(x => {
+          if (x.pic === '' || x.pic === null) {
+            x.pic = './logo.jpg';
+          } else {
+            getImgUrl(x.pic).then(res => {
+              x.pic = res
+            })
+          }
+        })
+      })
+    }
+    ,
+    infoAduitClose() {
+      this.infoAduitDialogVisible = false
+      this.$refs.infoAduitForm.resetFields()
+    },
+    //娣诲姞妗堜欢涓殑妗堜欢浜哄憳
+    addAduit() {
+      this.$refs.auditFrom.validate(async (vaild) => {
+        if (!vaild) return this.$message.error('杈撳叆鏈夎')
+        this.auditFrom.reportMaterials = this.auditFrom.fileList.map(i => i.data).join(',');
+        this.auditFrom.causeId = this.reportCauseId;
+        // console.log(this.reportCauseId);
+        report(this.auditFrom).then(res => {
+          this.$message.success('鎻愪氦鎴愬姛')
+          this.auditFrom = {}
+          this.addReportVisible = false
+          this.get(this.reportCauseId)
+          this.init()
+        }).catch(err => {
+          this.addReportVisibleClose()
+        })
+      })
+    },
+    async getCauseOptions() {
+      const { data: data } = await this.$http.get('/api/cause/getCauseIdAndName');
+      this.causeOptions = data.data;
+    },
+    handleAvatarSuccess(res, file) {
+      this.auditFrom.pic = res.data
+      getImgUrl(res.data).then(res => {
+        this.picShow = res
+        this.updateReportForm.pic = res
+      })
+    },
+    async handleMaterialSuccess(res, file) {
+      this.auditFrom.fileList.push({
+        name: file.name,
+        url: await getImgUrl(res.data),
+        data: res.data
+      })
+    },
+
+    async handleReporterMaterialSuccess(res, file) {
+      this.updateReportPrams.fileList.push({
+        name: file.name,
+        url: await getImgUrl(res.data),
+        data: res.data
+      })
+    },
+
+    //妗堜欢褰曞叆鐩稿叧
+
+    updateCauseDialogVisible(row) {
+      this.updateAduitDialogVisible = true;
+      this.updataCauseForm = Object.assign({}, row);
+
+      // if (this.updataCauseForm.status == 0) {
+      //   this.updataCauseForm.status = '鏈鏍�';
+      // };
+      // if (this.updataCauseForm.status == 1) {
+      //   this.updataCauseForm.status = '涓嶄簣绔嬫';
+      // };
+      // if (this.updataCauseForm.status == 2) {
+      //   this.updataCauseForm.status = '鍙楃悊涓�';
+      // };
+      // if (this.updataCauseForm.status == 3) {
+      //   this.updataCauseForm.status = '宸茬粨妗�';
+      // };
+      // if (this.updataCauseForm.status == 4) {
+      //   this.updataCauseForm.status = '宸叉挙妗�';
+      // };
+    },
+    addAduitClose() {
+      this.addAduitDialogVisible = false
+    },
+    updateAduitClose() {
+      this.updateAduitDialogVisible = false
+    },
+    reporterVisibleClose() {
+      this.reporterVisible = false
+    },
+    async createCause() {
+      this.$refs.causeForm.validate(async (vaild) => {
+        if (!vaild) return this.$message.error('杈撳叆鏈夎')
+        let form = null;
+        form = this.causeForm;
+        const data = form;
+        this.$http.post('/api/cause/addCause',
+          data
+        ).then(res => {
+          if (res.data.code == 200) {
+            this.$message({
+              type: "success",
+              message: "娣诲姞鎴愬姛"
+            });
+            this.causeForm = {}
+            this.addAduitDialogVisible = false;
+            this.getList();
+          } else {
+            this.$message({
+              type: "error",
+              message: res.data.msg
+            })
+          }
+        }
+        )
+      })
+    },
+
+    userList() {
+      user().then(
+        res => this.user = res
+      )
+    },
+    async updateCause() {
+      let form = null;
+      form = this.updataCauseForm;
+      const data = form;
+      //saveSubject(params);
+      data.userId = data.userName;
+      for (let key in this.user) {
+        if (data.userId == this.user[key].userName) {
+          data.userId = this.user[key].userId;
+        }
+      }
+      // if (data.status == '鏈鏍�') {
+      //   data.status = 0;
+      // }
+      // if (data.status == '涓嶄簣绔嬫') {
+      //   data.status = 1;
+      // }
+      // if (data.status == '鍙楃悊涓�') {
+      //   data.status = 2;
+      // }
+      // if (data.status == '宸茬粨妗�') {
+      //   data.status = 3;
+      // }
+      // if (data.status == '宸叉挙妗�') {
+      //   data.status = 4;
+      // }
+      this.$http.put('/api/cause/updateCause?id=' + data.id,
+        data
+      ).then(res => {
+        if (res.data.code == 200) {
+          this.$message({
+            type: "success",
+            message: "淇敼鎴愬姛"
+          });
+          // if (this.updataCauseForm.status == 0) {
+          //   this.updataCauseForm.status = '鏈鏍�';
+          // };
+          // if (this.updataCauseForm.status == 1) {
+          //   this.updataCauseForm.status = '涓嶄簣绔嬫';
+          // };
+          // if (this.updataCauseForm.status == 2) {
+          //   this.updataCauseForm.status = '鍙楃悊涓�';
+          // };
+          // if (this.updataCauseForm.status == 3) {
+          //   this.updataCauseForm.status = '宸茬粨妗�';
+          // };
+          // if (this.updataCauseForm.status == 4) {
+          //   this.updataCauseForm.status = '宸叉挙妗�';
+          // };
+          this.updateAduitDialogVisible = false;
+          // location.reload();
+          this.getList();
+        } else {
+          this.$message({
+            type: "error",
+            message: "琛ㄥ崟涓嶈兘涓虹┖"
+          })
+        }
+      })
+
+    },
+    respond(res) {
+      if (res.code == 200) {
+        this.$message({
+          message: '涓婁紶鎴愬姛',
+          type: 'success'
+        }
+        )
+      } else {
+        this.$message({
+          message: res.msg,
+          type: 'error'
+        })
+      }
+      location.reload();
+    },
+    //妗堜欢浜哄憳瀵煎叆鎴愬姛鍚�
+    reporterRespond(res) {
+      if (res.code == 200) {
+        this.$message({
+          message: '涓婁紶鎴愬姛',
+          type: 'success'
+        }
+        )
+      } else {
+        this.$message({
+          message: res.msg,
+          type: 'error'
+        })
+      }
+      this.get(this.reportCauseId);
+    },
+
+    beforeAvatarUpload(file) {
+      let Xls = file.name.split('.');
+      if (Xls[1] === 'xls' || Xls[1] === 'xlsx') {
+        return file
+      } else {
+        this.$message.error('涓婁紶鏂囦欢鍙兘鏄� xls/xlsx 鏍煎紡!')
+        return false
+      }
+    },
     init() {
       casueList().then(
         res => {
@@ -114,23 +1528,95 @@
       )
     },
     getList() {
-      this.$http.get('/api/entry/list', {
+      this.$http.get('/api/cause/getCauseList', {
         params: this.queryInfo
       }).then(res => {
-        this.total = res.data.total
-        this.list = res.data.list
+        this.total = res.data.data.total
+        this.casueList = res.data.data.records
       })
     },
     search() {
+      this.$http.get('/api/cause/getCauseList', {
+        params: this.queryInfo
+      }).then(
+        res => {
+          this.total = res.data.data.total
+          this.casueList = res.data.data.records
+        }
+      )
+
     },
+    //妗堜欢浜哄憳寮圭獥涓殑鏌ヨ
+    searchByCondition() {
+      this.queryInfoReport.causeId = this.reportCauseId;
+      this.$http.get('/api/cause/getAllReportList', {
+        params: this.queryInfoReport
+      }).then(
+        res => {
+          this.reportTotal = res.data.data.total
+          this.reportList = res.data.data.records
+          this.reportList.forEach(x => {
+            if (x.pic === '' || x.pic === null) {
+              x.pic = './logo.jpg';
+            } else {
+              getImgUrl(x.pic).then(res => {
+                x.pic = res
+              })
+            }
+          })
+        }
+      )
+
+    }
+    ,
     addDialogOpen() {
     },
-    exportExcel() {
-    },
+
     handleCurrentChange(val) {
       this.queryInfo.current = val;
       this.getList();
     },
+    pageReport(val) {
+      this.queryInfoReport.current = val;
+      this.searchByCondition();
+    },
+    removeCause(val) {
+      remove(val).then(
+        res => {
+          this.$message({
+            message: '鍒犻櫎鎴愬姛',
+            type: 'success'
+          });
+          this.getList();
+        }
+      )
+    },
+
+    removeReport(val, row) {
+      removeReport(val).then(
+        res => {
+          this.$message({
+            message: '鍒犻櫎鎴愬姛',
+            type: 'success'
+          });
+          this.searchByCondition();
+        }
+      )
+    },
+
+
+    leaveReport(val, row, value) {
+      leaveReport(val, value).then(
+        res => {
+          this.$message({
+            message: '閫�缇ゆ垚鍔�',
+            type: 'success'
+          });
+          this.searchByCondition();
+        }
+      )
+    },
+
   }
 }
 </script>
@@ -143,4 +1629,4 @@
 ::v-deep(.el-table thead) {
   color: #000000;
 }
-</style>
\ No newline at end of file
+</style>

--
Gitblit v1.8.0