From cee2eca9c3e40b48c40a8fe80f938a777f03d463 Mon Sep 17 00:00:00 2001
From: wwl <xchao828@163.com>
Date: 星期二, 10 六月 2025 17:57:11 +0800
Subject: [PATCH] 1

---
 src/views/team/reportresults/index.vue |  962 ++++++++++++++++++++++++++++++++++++-------------------
 1 files changed, 624 insertions(+), 338 deletions(-)

diff --git a/src/views/team/reportresults/index.vue b/src/views/team/reportresults/index.vue
index 2665cb0..c01ecfb 100644
--- a/src/views/team/reportresults/index.vue
+++ b/src/views/team/reportresults/index.vue
@@ -1,361 +1,647 @@
 <template>
-    <div class="app-container">
-        <el-row :gutter="10" class="mb8">
-            <el-col :span="1.5">
-                <el-form :model="objs" :rules="rules" ref="form" size="small" :inline="true" label-width="80px">
-                    <el-form-item label="鍗曚綅鍚嶇О" prop="drugManufacturerId">
-                        <el-select :remote-method="getRemoteData" v-model="objs.drugManufacturerId" remote filterable
-                            style="width: 200px" placeholder="璇烽�夋嫨鍗曚綅鍚嶇О" clearable @change="idFn">
-                            <el-option v-for="dict in CompanyList" :key="dict.cnName" :label="dict.cnName"
-                                :value="dict.drugManufacturerId" />
-                        </el-select>
-                    </el-form-item>
-                    <el-form-item label="閮ㄩ棬" prop="dwDeptName">
-                        <el-select v-model="objs.dwDeptName" placeholder="璇烽�夋嫨閮ㄩ棬" style="width: 200px" clearable
-                            @change="idBm">
-                            <el-option v-for="dict in deptList" :key="dict.id" :label="dict.dwDeptName" :value="dict.id" />
-                        </el-select>
-                    </el-form-item>
-                    <el-form-item label="鍒嗙粍" prop="payType">
-                        <el-select v-model="objs.payType" placeholder="璇烽�夋嫨缁撶畻鏂瑰紡" style="width: 200px" clearable>
-                            <el-option v-for="dict in groupingList" :key="dict.id" :label="dict.groupingName"
-                                :value="dict.id" />
-                        </el-select>
-                    </el-form-item>
-                    <el-form-item label="鐧昏鏃堕棿" prop="createTimeList">
-                        <el-date-picker v-model="createTimeList" type="datetimerange" align="right"
-                            :picker-options="pickerOptions" style="width: 260px" start-placeholder="寮�濮嬫棩鏈�"
-                            end-placeholder="缁撴潫鏃ユ湡" format="yyyy-MM-dd" value-format="yyyy-MM-dd"
-                            @change="dateChangebirthday1">
-                        </el-date-picker>
-                    </el-form-item>
-                </el-form>
+  <div class="app-container">
+    <el-form
+      :model="queryParams"
+      ref="queryForm"
+      size="small"
+      :inline="true"
+      label-width="68px"
+    >
+      <el-form-item label="鏃堕棿" prop="createTimeList">
+        <el-date-picker
+          clearable
+          v-model="createTimeList"
+          @change="dateChangebirthday1"
+          :default-time="['00:00:00', '23:00:00']"
+              format="yyyy-MM-dd HH:mm:ss"
+              value-format="yyyy-MM-dd HH:mm:ss"
+          type="daterange"
+          range-separator="-"
+          start-placeholder="寮�濮嬫棩鏈�"
+          end-placeholder="缁撴潫鏃ユ湡"
+          :picker-options="pickerOptions"
+        ></el-date-picker>
+      </el-form-item>
+      <el-form-item label="鍗曚綅" prop="compId">
+        <el-select
+          v-model="queryParams.compId"
+          placeholder="璇烽�夋嫨鍗曚綅"
+          clearable
+          style="width: 200px"
+          @change="cmp"
+        >
+          <el-option
+            v-for="dict in compList"
+            :key="dict.drugManufacturerId"
+            :label="dict.cnName"
+            :value="dict.drugManufacturerId"
+          />
+        </el-select>
+        <!-- <el-input v-model="queryParams.compId" placeholder="璇疯緭鍏ュ崟浣�" clearable @keyup.enter.native="handleQuery" style="width: 170px"/> -->
+      </el-form-item>
+      <el-form-item label="閮ㄩ棬" prop="deptName">
+        <el-input
+          v-model="queryParams.deptName"
+          placeholder="璇疯緭鍏ラ儴闂�"
+          clearable
+          @keyup.enter.native="handleQuery"
+          style="width: 200px"
+        />
+      </el-form-item>
+      <el-form-item label="鍗曚綅閮ㄩ棬" prop="dwDeptId">
+        <el-select
+          v-model="queryParams.dwDeptId"
+          placeholder="璇烽�夋嫨鍗曚綅閮ㄩ棬"
+          clearable
+          style="width: 200px"
+          @change="dw"
+        >
+          <el-option
+            v-for="dict in dwList"
+            :key="dict.id"
+            :label="dict.dwDeptName"
+            :value="dict.id"
+          />
+        </el-select>
+        <!-- <el-input v-model="queryParams.dwDeptId" placeholder="璇疯緭鍏ュ崟浣嶉儴闂�" clearable @keyup.enter.native="handleQuery" style="width: 110px"/> -->
+      </el-form-item>
+      <el-form-item label="鍒嗙粍" prop="groupingId">
+        <el-select
+          v-model="queryParams.groupingId"
+          placeholder="璇烽�夋嫨鍒嗙粍"
+          clearable
+          style="width: 200px"
+          @change="dw"
+        >
+          <el-option
+            v-for="dict in gropList"
+            :key="dict.id"
+            :label="dict.groupingName"
+            :value="dict.id"
+          />
+        </el-select>
+        <!-- <el-input v-model="queryParams.groupingId" placeholder="璇疯緭鍏ュ垎缁�" clearable @keyup.enter.native="handleQuery" style="width: 110px"/> -->
+      </el-form-item>
+      <!-- <el-form-item label="鐥呯鍚嶇О" prop="name">
+        <el-input
+          v-model="queryParam.name"
+          placeholder="璇疯緭鍏ラ儴闂�"
+          clearable
+          @keyup.enter.native="handleQuery"
+          style="width: 200px"
+        />
+      </el-form-item> -->
+      <el-form-item>
+        <el-button
+          type="primary"
+          icon="el-icon-search"
+          size="mini"
+          @click="handleQuery"
+          style="margin: 0 15px;"
+          >鏌ヨ</el-button
+        >
+        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
+          >閲嶇疆</el-button
+        >
+      </el-form-item>
+    </el-form>
 
-            </el-col>
-            <el-col :span="1.5">
-                <el-button type="primary" size="mini" @click="handlequery"
-                    v-hasPermi="['system:user:import']">鏌ヨ</el-button>
-            </el-col>
+    <el-row :gutter="10" class="mb8">
+      <el-col :span="1.5">
+        <el-button type="primary" size="mini" @click="tongji"  style="margin: 0 15px;"
+          >缁熻缁撴灉</el-button
+        >
+      </el-col>
+      <!-- <el-col :span="1.5">
+        <el-button type="primary" size="mini" @click="clear"
+          >娓呯┖宸查�夎緭鍑哄垪</el-button
+        >
+      </el-col> -->
+    </el-row>
 
-        </el-row>
+    <div style="width: 100%; margin-left: 10px; display: flex">
+      <div style="width: 40%; margin-right: 30px">
+        <el-table
+          border
+          :data="tableData"
+          style="width: 100%"
+          @selection-change="handleSelectionChanges"
+        >
+          <el-table-column type="selection" width="40" align="center" />
+          <el-table-column
+            prop="tjNumber"
+            label="浣撴鍙�"
+            width="160"
+            align="center"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="name"
+            label="濮撳悕"
+            align="center"
+            :show-overflow-tooltip="true"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="sex"
+            label="鎬у埆"
+            align="center"
+            width="70px"
+            :show-overflow-tooltip="true"
+          >
+            <template slot-scope="scope">{{
+              scope.row.sex === 0 ? "鐢�" : "濂�"
+            }}</template>
+          </el-table-column>
+          <el-table-column
+            prop="age"
+            label="骞撮緞"
+            align="center"
+            width="70"
+            :show-overflow-tooltip="true"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="company"
+            label="鍗曚綅"
+            align="center"
+            width="170px"
+            :show-overflow-tooltip="true"
+          >
+          </el-table-column>
+          <el-table-column
+            prop="department"
+            label="閮ㄩ棬"
+            align="center"
+            :show-overflow-tooltip="true"
+          >
+          </el-table-column>
+        </el-table>
+      </div>
 
-        <div style="margin: 5px 20px;width: 94%">
-            <el-row :gutter="10" class="mb8">
-                <el-col :span="1.5">
-                    <el-button type="primary" size="mini" :disabled="single" @click="handlesetup">娣诲姞鍏ㄩ儴鍩虹椤圭洰</el-button>
-                </el-col>
-                <el-col :span="1.5">
-                    <el-button type="primary" size="mini" :disabled="single" @click="handleAll">缁熻缁撴灉</el-button>
-                </el-col>
-
-            </el-row>
-            <el-row :gutter="20">
-                <!--閮ㄩ棬鏁版嵁-->
-                <el-col :span="7" :xs="24">
-                    <el-table v-loading="loading" ref="tree" :data="userList" border height="500"
-                        @selection-change="handleSelectionChange">
-                        <el-table-column type="selection" width="55">
-                        </el-table-column>
-                        <el-table-column label="浣撴鍙�" align="center" prop="name"  />
-                        <el-table-column label="濮撳悕" align="center" prop="name" width="75" />
-                        <el-table-column label="鎬у埆" align="center" prop="sex" width="75">
-                            <template slot-scope="scope">
-                                <dict-tag :options="dict.type.sys_user_sex" :value="scope.row.sex" />
-                            </template>
-                        </el-table-column>
-                        <el-table-column label="骞撮緞" align="center" prop="age" width="120" />
-                    </el-table>
-                </el-col>
-                <el-col :span="8" :xs="24">
-                    <el-table v-loading="loading" ref="tree" :data="userList" border height="500"
-                        @selection-change="handleSelectionChange">
-                        <el-table-column label="鏀惰垂椤圭洰鍚嶇О" align="center" prop="name" />
-                    </el-table>
-                </el-col>
-                <el-col :span="8" :xs="24">
-                    <el-table v-loading="loading" ref="tree" :data="userList" border height="500"
-                        @selection-change="handleSelectionChange">
-                        <el-table-column label="宸查�夐」鐩悕绉�" align="center" prop="name"  />
-                    </el-table>
-                </el-col>
-            </el-row>
-
+      <div style="width: 60%; display: flex">
+        <div class="outside1">
+          <el-input placeholder="杈撳叆鍏抽敭瀛楄繘琛岃繃婊�" v-model="filterText">
+          </el-input>
+          <el-tree
+            ref="tree"
+            v-loading="loading"
+            :data="Treedata"
+            show-checkbox
+            node-key="proId"
+            :props="defaultProps"
+            @check-change="handleCurrentChecked"
+            :filter-node-method="filterNode"
+          >
+          </el-tree>
         </div>
-
-
-        <!-- 璁剧疆瀵硅瘽妗� -->
-        <div class="dia">
-            <el-dialog :title="title1" :visible.sync="open1" width="960px" append-to-body>
-                <div style="text-align: center;">
-                    <el-transfer style="text-align: left; display: inline-block;" v-model="value" filterable
-                        :left-default-checked="[2, 3]" :right-default-checked="[1]" :render-content="renderFunc"
-                        :titles="['鏄剧ず鐥呯', '闅愯棌鐥呯']" :button-texts="['鏄剧ず', '闅愯棌']" :format="{
-                            noChecked: '${total}',
-                            hasChecked: '${checked}/${total}'
-                        }" @change="handleChange1" :data="datalist">
-                    </el-transfer>
-                </div>
-                <div slot="footer" class="dialog-footer2">
-                    <el-button type="primary" @click="submitFormS">淇濆瓨璁剧疆</el-button>
-                </div>
-            </el-dialog>
+        <div>
+          <el-table
+            :data="DataList"
+            style="width: 400px; margin-left: 40px"
+            border
+          >
+            <el-table-column prop="proName" label="宸查�夐」鐩垪琛�" align="center">
+            </el-table-column>
+          </el-table>
         </div>
-
+      </div>
     </div>
+    <div style="margin-right: 64%">
+      <pagination
+        v-show="total > 0"
+        :total="total"
+        :page.sync="queryParams.page"
+        :limit.sync="queryParams.pageSize"
+        @pagination="getList"
+      />
+    </div>
+
+    <!-- <div style="width: 100%; display: flex">
+      <el-pagination
+        v-show="totals > 0"
+        @size-change="handleSizeChange"
+        @current-change="handleCurrentChange"
+        :current-page="currentPage4"
+        :page-sizes="[10, 20, 30, 40]"
+        :page-size="10"
+        layout="total, sizes, prev, pager, next, jumper"
+        :total="totals"
+      >
+      </el-pagination>
+    </div> -->
+    <!-- 鏌ョ湅缁熻鍥� -->
+    <div class="dia">
+      <el-dialog
+        :title="title2"
+        :visible.sync="open"
+        width="1000px"
+        append-to-body
+      >
+        <!-- <div style="height: 620px; margin-top: 10px">
+          <div id="main" style="width: 95%; height: 400px"></div>
+        </div> -->
+        <!-- <el-card
+          class="box-card"
+          v-for="(item, index) in rongjiList"
+          :key="index"
+        >
+          <div slot="header" class="clearfix">
+            <span>{{ item.project.proName }}</span>
+          </div>
+          <div>
+            <el-table :data="item.zhengchang" style="width: 100%">
+               <el-table-column prop="orderDetailId" label="浣撴鍙�" width="180">
+              </el-table-column>
+              <el-table-column prop="createBy" label="濮撳悕" width="180">
+              </el-table-column>
+            </el-table>
+             <el-table :data="item.yichang" style="width: 100%">
+              <el-table-column prop="orderDetailId" label="浣撴鍙�" width="180">
+              </el-table-column>
+              <el-table-column prop="createBy" label="濮撳悕" width="180">
+              </el-table-column>
+            </el-table>
+          </div>
+        </el-card> -->
+        <el-collapse v-model="activeNames">
+          <el-collapse-item v-for="(item, index) in rongjiList" :key="index">
+            <template slot="title">
+              {{ item.project.proName }}
+            </template>
+            <div style="display: flex">
+              <div style="display: flex;flex-direction: column;width:50%" >
+                <span>姝e父</span>
+                <el-table border :data="item.zhengchang" style="width: 100%">
+                  <el-table-column
+                    prop="tjNumber"
+                    label="浣撴鍙�"
+                  >
+                  </el-table-column>
+                  <el-table-column prop="cusName" label="濮撳悕" >
+                  </el-table-column>
+                </el-table>
+              </div>
+              <div style="display: flex;flex-direction: column;width:50%">
+                <span>寮傚父</span>
+                <el-table border :data="item.yichang" style="width: 100%">
+                <el-table-column
+                  prop="tjNumber"
+                  label="浣撴鍙�"
+                >
+                </el-table-column>
+                <el-table-column prop="cusName" label="濮撳悕" >
+                </el-table-column>
+              </el-table>
+              </div><br>
+              
+            </div>
+          </el-collapse-item>
+        </el-collapse>
+      </el-dialog>
+    </div>
+  </div>
 </template>
-  
+
 <script>
-import { Deptlist, getDwAndDwDept } from "@/api/system/comp";
-import { getCompany, queryCompany } from "@/api/team/tuanti";
-
+const echarts = require("echarts/lib/echarts");
+require("echarts/lib/component/title");
+require("echarts/lib/component/tooltip");
+require("echarts/lib/component/legend");
+require("echarts/lib/chart/pie");
+import { getNewDateList } from "@/api/hosp/order";
+import moment from "moment";
+import VTreeTransfer from "../../system/tijian/TreeTransfer.vue";
+import { projectGetList } from "@/api/system/tijian";
+import {
+  getPeopleList,
+  getDeptAndDwDeptByComp,
+  getDwGroupingByDwDeptId,
+  getTjRules,
+  getStatist,
+} from "@/api/team/disease";
+import { listComp } from "@/api/system/comp";
+import { getJieGuoFenXi } from "@/api/team/reportresults";
 export default {
-    name: "Tijian",
-
-    data() {
-        const generateData = _ => {
-            const data = [];
-            for (let i = 1; i <= 15; i++) {
-                data.push({
-                    key: i,
-                    label: `澶囬�夐」 ${i}`,
-                    disabled: i % 4 === 0
-                });
-            }
-            return data;
-        };
-        return {
-            datalist: generateData(),
-            value: [1],
-            value4: [1],
-            renderFunc(h, option) {
-                return <span>{option.key} - {option.label}</span>;
+  components: {
+    VTreeTransfer,
+  },
+  data() {
+    return {
+      activeNames: ["1"],
+      proIds: [],
+      filterText: "",
+      DataList: [],
+      loading: false,
+      defaultProps: {
+        children: "tjProjectList",
+        label: "proName",
+      },
+      Treedata: [],
+      rongjiList: [],
+      aids: [],
+      tjNums: [],
+      title2: "",
+      open: false,
+      currentPage4: 1,
+      gropList: [],
+      dwList: [],
+      compList: [],
+      total: 0,
+      totals: 0,
+      tableData: [],
+      tableData2: [],
+      createTimeList: [],
+      queryParam: {
+        name: null,
+        page: 1,
+        pageSize: 10,
+        groupingId: null,
+      },
+      queryParams: {
+        page: 1,
+        pageSize: 10,
+        compId: null,
+        deptName: null,
+        groupingId: null,
+        beginTime: null,
+        endTime: null,
+        dwDeptId: null,
+      },
+      pickerOptions: {
+        shortcuts: [
+          {
+            text: "鏈�杩戜竴鍛�",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
+              picker.$emit("pick", [start, end]);
             },
-            objs: {
-                drugManufacturerId: "",
-                dwDeptName: "",
-                reservationTime: "",
+          },
+          {
+            text: "鏈�杩戜竴涓湀",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
+              picker.$emit("pick", [start, end]);
             },
-            data: {
-                dwId: "",
-                deptId: "",
+          },
+          {
+            text: "鏈�杩戜笁涓湀",
+            onClick(picker) {
+              const end = new Date();
+              const start = new Date();
+              start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
+              picker.$emit("pick", [start, end]);
             },
-            // 寮瑰嚭灞傛爣棰�
-            title1: "",
-            deptList: [],
-            CompanyList: [],
-            groupingList: [],
-            userList: [],
-            menuIds: [],
-            proIds: [],
-            open1: false,
-            // 闈炲崟涓鐢�
-            single: false,
-            // 琛ㄥ崟鍙傛暟
-            form: {},
-            pickerOptions: {
-                shortcuts: [
-                    {
-                        text: "鏈�杩戜竴鍛�",
-                        onClick(picker) {
-                            const end = new Date();
-                            const start = new Date(new Date().setHours(0, 0, 0, 0));
-                            start.setTime(start.getTime() - 3600 * 1000 * 24 * 7);
-                            picker.$emit("pick", [start, end]);
-                        },
-                    },
-                    {
-                        text: "鏈�杩戜竴涓湀",
-                        onClick(picker) {
-                            const end = new Date();
-                            const start = new Date(new Date().setHours(0, 0, 0, 0));
-                            start.setTime(start.getTime() - 3600 * 1000 * 24 * 30);
-                            picker.$emit("pick", [start, end]);
-                        },
-                    },
-                    {
-                        text: "鏈�杩戜笁涓湀",
-                        onClick(picker) {
-                            const end = new Date();
-                            const start = new Date(new Date().setHours(0, 0, 0, 0));
-                            start.setTime(start.getTime() - 3600 * 1000 * 24 * 90);
-                            picker.$emit("pick", [start, end]);
-                        },
-                    },
-                ],
-            },
-            // 琛ㄥ崟鏍¢獙
-            rules: {
-                drugManufacturerId: [
-                    { required: true, message: "", trigger: "change" },
-                ],
-                reservationTime: [
-                    { required: true, message: "", trigger: "blur" },
-                ],
-                dwDeptName: [
-                    { required: true, message: "", trigger: "change" },
-                ],
-            },
-        };
+          },
+        ],
+      },
+    };
+  },
+  created() {
+    this.getdate();
+    this.getNowTime();
+    
+    this.getcomp();
+    this.getData();
+    this.datekey = Date.now();
+  },
+  watch: {
+    filterText(val) {
+      this.$refs.tree.filter(val);
     },
-    created() {
-        this.getNowTime()
+  },
+  methods: {
+    getdate() {
+      getNewDateList().then((res) => {
+        this.createTimeList = [
+          moment(res.data).format("YYYY-MM-DD 00:00:00"),
+          moment(res.data).format("YYYY-MM-DD 23:59:00"),
+        ];
         this.getList();
+      });
     },
-
-    methods: {
-        getList() {
-            this.loading = true;
-            getCompany(this.queryParam).then((response) => {
-                this.CompanyList = response.data;
-                this.total = response.total;
-                this.loading = false;
-            });
-        },
-        handlequery() {
-
-        },
-        handleQuery() {
-            console.log(1111)
-        },
-        // 澶氶�夋閫変腑鏁版嵁
-        handleSelectionChange(selection) {
-            // this.ids = selection.map((item) => item.id);
-            this.single = selection.length !== 1;
-        },
-        // 琛ㄥ崟閲嶇疆
-        reset() {
-            this.form = {
-                company: null,
-                payType: null,
-                name: null,
-                phoe: null,
-                signingPic: null,
-                pacStatus: "鍚敤"
-            };
-            this.resetForm("form");
-        },
-        idFn(value) {
-            this.data.dwId = value
-            Deptlist(value).then((response) => {
-                this.deptList = response.data;
-            });
-        },
-        idBm(value) {
-            this.data.deptId = value
-            console.log(this.data)
-            getDwAndDwDept(this.data).then((response) => {
-                this.groupingList = response.data;
-            });
-        },
-
-        // 鎼滅储
-        getRemoteData(query) {
-            if (query) {
-                let compName = query;
-                queryCompany(compName).then((response) => {
-                    this.CompanyList = response.data;
-                    this.CompanyList.forEach((item) => {
-                        this.objs = item;
-                    });
-                });
-            }
-        },
-        // / 澶勭悊榛樿閫変腑褰撳墠鏃ユ湡
-        getNowTime() {
-            var curDate = new Date().getTime();
-            var dayNum = 7 * 24 * 3600 * 1000;
-            var threeDays = curDate - dayNum;
-            var sDay = this.getLocalTime(threeDays);
-            var end = this.getLocalTime(curDate);
-            this.createTimeList = [sDay, end];
-        },
-        add0(m) {
-            return m < 10 ? "0" + m : m;
-        },
-        getLocalTime(nS) {
-            var time = new Date(nS);
-            var y = time.getFullYear();
-            var m = time.getMonth() + 1;
-            var d = time.getDate();
-            // var h = time.getHours();
-            // var mm = time.getMinutes();
-            return (
-                y +
-                "-" +
-                this.add0(m) +
-                "-" +
-                this.add0(d)
-            );
-        },
-        //鑾峰彇鏃堕棿
-        dateChangebirthday1(val) {
-            if (val == null) {
-                this.createTimeList = []
-            } else {
-                this.createTimeList = val;
-            }
-        },
-        // 鍙栨秷鎸夐挳
-        cancel() {
-            this.open = false;
-            this.reset();
-        },
-        /** 鏌ョ湅璇︾粏淇℃伅鎸夐挳鎿嶄綔 */
-        handleAll() {
-            this.open = true;
-            this.title = "鍥㈡妫�鍑虹巼";
-        },
-        handleChange(selection) {
-            // this.ids = selection.map((item) => item.id);
-            this.single = selection.length !== 1;
-        },
-        handlecan() {
-
-        },
-
-
-        handlesetup() {
-            this.open1 = true;
-            this.title1 = "缁熻鍥捐缃�";
-        },
-        handleChange1(value, direction, movedKeys) {
-            console.log(value, direction, movedKeys);
-        },
-        submitFormS() {
-
+    filterNode(value, data) {
+      if (!value) return true;
+      return data.proName.indexOf(value) !== -1;
+    },
+    getData() {
+      /** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */
+      this.loading = true;
+      /** 鏌ヨ閮ㄩ棬涓嬫媺鏍戠粨鏋� */
+      projectGetList().then((response) => {
+        this.Treedata = response.data.list;
+        this.Treedata.forEach(item => {
+          if(item.proParentId == "0"){
+            item.disabled = true
+          }
+        })
+        this.loading = false;
+      });
+    },
+    // 鐐瑰嚮鑾峰彇姣忎釜鏍戣妭鐐�
+    handleCurrentChecked(data, checked, checkedNodes) {
+      // if (!data.tjProjectList) {
+      //   return;
+      // }
+      if (data.proParentId != "0") {
+        if (checked === true) {
+          this.DataList.push(data);
+        } else {
+          this.DataList.pop(data);
+          this.list1 = true;
         }
+      }
+
+      // this.TotalPrice1 = 0;
+      // this.proIds = [];
+      // if (this.DataList.length != 0) {
+      //   this.list1 = false;
+      //   this.DataList.forEach((item) => {
+      //     this.TotalPrice1 = item.proPrice + this.TotalPrice1;
+      //     item.tjProjectList.forEach((item1) => {
+      //       this.proIds.push(item1.proId);
+      //     });
+      //   });
+      // }
     },
+    // / 澶勭悊榛樿閫変腑褰撳墠鏃ユ湡
+    getNowTime() {
+      var curDate = new Date().getTime();
+      var dayNum = 7 * 24 * 3600 * 1000;
+      var threeDays = curDate - dayNum;
+      var sDay = this.getLocalTime(threeDays);
+      var end = this.getLocalTime(curDate);
+      this.createTimeList = [sDay, end];
+    },
+    add0(m) {
+      return m < 10 ? "0" + m : m;
+    },
+    getLocalTime(nS) {
+      var time = new Date(nS);
+      var y = time.getFullYear();
+      var m = time.getMonth() + 1;
+      var d = time.getDate();
+      return y + "-" + this.add0(m) + "-" + this.add0(d);
+    },
+    // 鍥㈡鐥呯椤甸潰鏌ヨ浜哄憳鍒楄〃
+    getList() {
+      if(this.createTimeList){
+        this.queryParams.beginTime = this.createTimeList[0];
+      this.queryParams.endTime = this.createTimeList[1];
+      }else if(this.createTimeList == null){
+        this.queryParams.beginTime = null;
+      this.queryParams.endTime = null;
+      }
+     
+      getPeopleList(this.queryParams).then((res) => {
+        this.tableData = res.data.voList;
+        this.total = res.data.total;
+      });
+    },
+
+    handleSizeChange(val) {
+      this.queryParam.pageSize = val;
+      // this.geticd();
+    },
+    handleCurrentChange(val) {
+      this.queryParam.page = val;
+      // this.geticd();
+    },
+    /** 鏌ヨ浣撴鍗曚綅淇℃伅缁存姢鍒楄〃 */
+    getcomp() {
+      listComp().then((response) => {
+        this.compList = response.rows;
+      });
+    },
+    // 鏍规嵁鍗曚綅鏌ヨ閮ㄩ棬鍜屽崟浣嶉儴闂ㄤ俊鎭�
+    cmp(val) {
+      let compId = val;
+      getDeptAndDwDeptByComp(compId).then((res) => {
+        this.dwList = res.data;
+      });
+    },
+    // 鏍规嵁鍗曚綅閮ㄩ棬鏌ヨ鍗曚綅鍒嗙粍淇℃伅淇℃伅
+    dw(vals) {
+      let dwDeptId = vals;
+      getDwGroupingByDwDeptId(dwDeptId).then((res) => {
+        this.gropList = res.data;
+      });
+    },
+    handleSelectionChanges(selection) {
+      this.tjNums = selection.map((item) => item.tjNumber);
+    },
+    handleSelectionChange(selection) {
+      this.tableData2 = selection;
+      this.aids = selection.map((item) => item.aid);
+    },
+    clear() {
+      this.tableData2 = [];
+    },
+    /** 鎼滅储鎸夐挳鎿嶄綔 */
+    handleQuery() {
+      this.queryParams.page = 1;
+      this.getList();
+      // this.queryParam.page = 1;
+      // this.geticd();
+    },
+    /** 閲嶇疆鎸夐挳鎿嶄綔 */
+    resetQuery() {
+      this.createTimeList = []
+      this.resetForm("queryForm");
+      this.handleQuery();
+      this.loading = true;
+    },
+    dateChangebirthday1(val) {
+      this.createTimeList = val;
+    },
+    tongji() {
+      this.title2 = "缁熻鍥捐〃";
+      if (this.tjNums.length === 0 || this.DataList === 0) {
+        this.$message.warning("璇烽�夋嫨浜哄憳鍜岀梾绉嶏紒");
+      } else {
+        this.DataList.forEach((item) => {
+          this.proIds.push(item.proId);
+        });
+        let dto = {
+          proIds: this.proIds,
+          tjNums: this.tjNums,
+        };
+
+        this.open = true;
+        getJieGuoFenXi(dto).then((res) => {
+          this.rongjiList = res.data;
+          // this.$nextTick(() => {
+          //   var chartDom = document.getElementById("main");
+          //   var myChart = echarts.init(chartDom);
+          //   var option;
+
+          //   option = {
+          //     title: {
+          //       text: "鐥呯缁熻",
+          //       left: "center",
+          //     },
+          //     tooltip: {
+          //       trigger: "item",
+          //       formatter: "{a} <br/>{b} : {c} ({d}%)",
+          //     },
+          //     legend: {
+          //       // type: 'scroll',
+          //       orient: "vertical",
+          //       right: 10,
+          //       top: 80,
+          //       bottom: 20,
+          //       data: this.rongjiList,
+          //     },
+          //     series: [
+          //       {
+          //         name: "鐥呯鍚嶇О",
+          //         type: "pie",
+          //         radius: "55%",
+          //         center: ["25%", "60%"],
+
+          //         data: this.rongjiList,
+          //         emphasis: {
+          //           itemStyle: {
+          //             shadowBlur: 10,
+          //             shadowOffsetX: 0,
+          //             shadowColor: "rgba(0, 0, 0, 0.5)",
+          //           },
+          //         },
+          //       },
+          //     ],
+          //   };
+
+          //   option && myChart.setOption(option);
+          //   let sizeFun = function () {
+          //     myChart.resize();
+          //   };
+          //   window.addEventListener("resize", sizeFun);
+          // });
+        });
+      }
+    },
+  },
 };
 </script>
-  
-<style>
-.el-transfer-panel {
-    width: 360px;
-    height: 480px;
+
+<style lang="scss" scoped>
+.el-pagination {
+  margin-left: 47%;
 }
-
-.el-transfer-panel__body {
-    /* border: 1px solid red; */
-    height: 480px;
-}
-
-.el-transfer-panel__list.is-filterable {
-    height: 352px;
-}
-
-.el-button--primary.el-transfer__button {
-    display: flex;
-    justify-content: center;
-    align-items: center;
-
-}
-
-.el-transfer__button:first-child {
-    width: 82px;
-    margin-bottom: 10px;
-}
-
-.el-button+.el-button {
-    margin-left: 0px;
+// .tab3 {
+//   width: 100%;
+//   display: flex;
+// }
+.outside1 {
+  width: 500px;
+  max-height: 500px;
+  overflow-y:auto;
+  display: flex;
+  margin-top: 8px;
+  flex-direction: column;
 }
 </style>
\ No newline at end of file

--
Gitblit v1.8.0