Forráskód Böngészése

更改基层值班列表,更改训练器材表格,更改摄像头数据,更改量化统计,更改人员请假归队

sunyanqiang 2 éve
szülő
commit
9d0a1213b3

+ 9 - 0
src/api/combatduty/grassdutyinfo.js

@@ -85,3 +85,12 @@ export function getDept(query) {
     params: query
   })
 }
+
+// 值班要素列表
+export function todaydutyinfo(query) {
+  return request({
+    url: '/combatduty/grassdutyinfo/todaydutyinfo',
+    method: 'get',
+    params: query
+  })
+}

+ 11 - 1
src/api/combatduty/regisdutyinfo.js

@@ -59,4 +59,14 @@ export function getDept(query) {
     method: 'get',
     params: query
   })
-}
+}
+
+// 查询类型统计数量
+export function getNumber(query) {
+  return request({
+    url: '/combatduty/regisdutyinfo/getNumber',
+    method: 'get',
+    params: query
+  })
+}
+

+ 11 - 3
src/components/look_word/bdgldiary.vue

@@ -769,9 +769,17 @@ export default {
           chao =
             Date.parse(new Date(item.returnTime)) -
             Date.parse(new Date(item.endTime));
-          nums = nums / 3600 / 1000;
+          if (nums % 1 != 0) {
+            nums = (nums / 3600 / 1000).toFixed(1);
+          } else {
+            nums = nums / 3600 / 1000;
+          }
           if (chao >= 0) {
-            chao = chao / 3600 / 1000;
+            if (chao % 1 != 0) {
+              chao = (chao / 3600 / 1000).toFixed(1);
+            } else {
+              chao = chao / 3600 / 1000;
+            }
             this.message.bdglLeaveOneList[i].chao = chao;
           }
           this.message.bdglLeaveOneList[i].shiShu = nums;
@@ -797,7 +805,7 @@ export default {
         shouldArrive += item.shouldArrive + "<br/>";
         percentage += item.percentage + "<br/>";
       });
-      console.log({ dateline, contents, realTo, shouldArrive, percentage });
+      // console.log({ dateline, contents, realTo, shouldArrive, percentage });
       return { dateline, contents, realTo, shouldArrive, percentage };
     },
 

+ 0 - 1
src/components/look_word/bdglequip.vue

@@ -617,7 +617,6 @@ export default {
         html += `<td width="63" rowspan = '${this.message[i].rowspan}'>${this.message[i].type}</td>`;
       }
       html += `
-      
       <td
               width="82"
               valign="center"

+ 67 - 77
src/views/combatduty/Quantitative/index.vue

@@ -8,13 +8,19 @@
           <div style="width: 100%; display: flex">
             <div class="wrap-top-left-top-item">
               <div class="wrap-top-left-top-item-left">值 班 首 长</div>
-              <div class="wrap-top-left-top-item-right">
+              <div
+                class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+                :title="BaseOnDuty.chiefDutyName"
+              >
                 {{ this.BaseOnDuty.chiefDutyName }}
               </div>
             </div>
             <div class="wrap-top-left-top-item">
               <div class="wrap-top-left-top-item-left">总 值 班 员</div>
-              <div class="wrap-top-left-top-item-right">
+              <div
+                class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+                :title="BaseOnDuty.dutyOffierName"
+              >
                 {{ this.BaseOnDuty.dutyOffierName }}
               </div>
             </div>
@@ -22,7 +28,10 @@
               <div class="wrap-top-left-top-item-left zuozhan">
                 作 战 值 班 员
               </div>
-              <div class="wrap-top-left-top-item-right">
+              <div
+                class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+                :title="BaseOnDuty.combatDutyName"
+              >
                 {{ this.BaseOnDuty.combatDutyName }}
               </div>
             </div>
@@ -30,13 +39,19 @@
           <div style="width: 100%; display: flex">
             <div class="wrap-top-left-top-item">
               <div class="wrap-top-left-top-item-left">值 班 分 队 一</div>
-              <div class="wrap-top-left-top-item-right">
+              <div
+                class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+                :title="BaseOnDuty.detachmentoneName"
+              >
                 {{ this.BaseOnDuty.detachmentoneName }}
               </div>
             </div>
             <div class="wrap-top-left-top-item">
               <div class="wrap-top-left-top-item-left">一分队指挥员</div>
-              <div class="wrap-top-left-top-item-right">
+              <div
+                class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+                :title="BaseOnDuty.detachmentonePeopleName"
+              >
                 {{ this.BaseOnDuty.detachmentonePeopleName }}
               </div>
             </div>
@@ -53,13 +68,19 @@
           <div style="width: 100%; display: flex">
             <div class="wrap-top-left-top-item">
               <div class="wrap-top-left-top-item-left">值 班 分 队 二</div>
-              <div class="wrap-top-left-top-item-right">
+              <div
+                class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+                :title="BaseOnDuty.detachmentwoName"
+              >
                 {{ this.BaseOnDuty.detachmentwoName }}
               </div>
             </div>
             <div class="wrap-top-left-top-item">
               <div class="wrap-top-left-top-item-left">二分队指挥员</div>
-              <div class="wrap-top-left-top-item-right">
+              <div
+                class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+                :title="BaseOnDuty.detachmentwoPeopleName"
+              >
                 {{ this.BaseOnDuty.detachmentwoPeopleName }}
               </div>
             </div>
@@ -81,7 +102,10 @@
         <div style="width: 100%; display: flex">
           <div class="wrap-top-left-top-item">
             <div class="wrap-top-left-top-item-left">值 班 首 长</div>
-            <div class="wrap-top-left-top-item-right">
+            <div
+              class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+              :title="GreatDuty1.chiefDutyName"
+            >
               {{ this.GreatDuty1.chiefDutyName }}
             </div>
           </div>
@@ -90,14 +114,20 @@
             <div class="wrap-top-left-top-item-left zuozhan">
               作 战 值 班 员
             </div>
-            <div class="wrap-top-left-top-item-right">
+            <div
+              class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+              :title="GreatDuty1.combatDutyName"
+            >
               {{ this.GreatDuty1.combatDutyName }}
             </div>
           </div>
 
           <div class="wrap-top-left-top-item">
             <div class="wrap-top-left-top-item-left">值 班 通 信 员</div>
-            <div class="wrap-top-left-top-item-right">
+            <div
+              class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+              :title="GreatDuty1.messengerName"
+            >
               {{ this.GreatDuty1.messengerName }}
             </div>
           </div>
@@ -105,14 +135,21 @@
         <div style="width: 100%; display: flex">
           <div class="wrap-top-left-top-item">
             <div class="wrap-top-left-top-item-left">机要值班员</div>
-            <div class="wrap-top-left-top-item-right" style="margin-left: 22px">
+            <div
+              class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+              style="margin-left: 22px"
+              :title="GreatDuty1.confidentialName"
+            >
               {{ this.GreatDuty1.confidentialName }}
             </div>
           </div>
 
           <div class="wrap-top-left-top-item">
             <div class="wrap-top-left-top-item-left">通 信 值 班 员</div>
-            <div class="wrap-top-left-top-item-right">
+            <div
+              class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+              :title="GreatDuty1.dutyOffierName"
+            >
               {{ this.GreatDuty1.dutyOffierName }}
             </div>
           </div>
@@ -136,7 +173,10 @@
             <div class="wrap-top-left-top-item-left" style="width: 120px">
               政治工作部值班员
             </div>
-            <div class="wrap-top-left-top-item-right">
+            <div
+              class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+              :title="GreatDuty1.politicalName"
+            >
               {{ this.GreatDuty1.politicalName }}
             </div>
           </div>
@@ -144,7 +184,10 @@
             <div class="wrap-top-left-top-item-left" style="width: 110px">
               保 障 部 值 班 员
             </div>
-            <div class="wrap-top-left-top-item-right">
+            <div
+              class="wrap-top-left-top-item-right wrap-top-left-top-item-name"
+              :title="GreatDuty1.guaranteeName"
+            >
               {{ this.GreatDuty1.guaranteeName }}
             </div>
           </div>
@@ -161,65 +204,6 @@
             </div>
           </div>
         </div>
-        <!-- <div class="wrap-top-left-top-item">
-          <div class="wrap-top-left-top-item-left">值 班 首 长</div>
-          <div class="wrap-top-left-top-item-right" style="padding-left: 25px">
-            {{ this.GreatDuty1.chiefDutyName }}李晓明
-          </div>
-        </div>
-        <div class="wrap-top-left-top-item">
-          <div class="wrap-top-left-top-item-left" style="">机 要 值 班 员</div>
-          <div class="wrap-top-left-top-item-right1">
-            {{ this.GreatDuty1.confidentialName }}李潇潇明明
-          </div>
-        </div>
-
-        <div class="wrap-top-left-top-item">
-          <div class="wrap-top-left-top-item-left zuozhan">通 信 值 班 员</div>
-          <div class="wrap-top-left-top-item-right">
-            {{ this.GreatDuty1.dutyOffierName }}龙宫彭
-          </div>
-        </div>
-        <div class="wrap-top-left-top-item">
-          <div class="wrap-top-left-top-item-left zuozhan">作 战 值 班 员</div>
-          <div class="wrap-top-left-top-item-right" style="padding-left: 20px">
-            {{ this.GreatDuty1.combatDutyName }}黎明
-          </div>
-        </div>
-
-        <div class="wrap-top-left-top-item">
-          <div class="wrap-top-left-top-item-left" style="width: 120px">
-            政治工作部值班员
-          </div>
-          <div class="wrap-top-left-top-item-right">
-            {{ this.GreatDuty1.politicalName }}保障部
-          </div>
-        </div>
-        
-        <div class="wrap-top-left-top-item">
-          <div class="wrap-top-left-top-item-left">值 班 分 队</div>
-          <div class="wrap-top-left-top-item-right1">
-            {{ this.GreatDuty1.confidentialName }}李潇潇明明
-          </div>
-        </div>
-        <div class="wrap-top-left-top-item">
-          <div class="wrap-top-left-top-item-left">值 班 通 信 员</div>
-          <div class="wrap-top-left-top-item-right">
-            {{ this.GreatDuty1.dutyOffierName }}
-          </div>
-        </div>
-         <div class="wrap-top-left-top-item">
-          <div class="wrap-top-left-top-item-left" style="width:120px">保 障 部 值 班 员</div>
-          <div class="wrap-top-left-top-item-right">
-            {{ this.GreatDuty1.dutyOffierName }}龙宫彭
-          </div>
-        </div>
-         <div class="wrap-top-left-top-item">
-          <div class="wrap-top-left-top-item-left" style="margin-left:-5px">指 挥 员</div>
-          <div class="wrap-top-left-top-item-right1">
-            {{ this.GreatDuty1.dutyOffierName }}支援保障部
-          </div>
-        </div> -->
       </div>
     </div>
     <div class="wrap-footer">
@@ -777,6 +761,9 @@ body {
   letter-spacing: 1em; /*如果需要y个字两端对齐,则为(x-y)/(y-1),这里是(4-2)/(2-1)=2em */
   margin-right: -1em;
 }
+.wrap-top-left-top-item-right:hover {
+  cursor: pointer;
+}
 .wrap-top-left-top-item-right1 {
   width: 60%;
   height: 100%;
@@ -981,13 +968,9 @@ table tr td {
 
 .wrap-footer-right {
   width: 99%;
-
-  /* flex: 2; */
-
   height: 100%;
   display: flex;
   flex-wrap: wrap;
-  /* background-image: url("../../../images/底-装备值班.png"); */
   background-size: 100% 100%;
   background-repeat: no-repeat;
   margin-left: 10px;
@@ -1051,4 +1034,11 @@ table tr td {
   width: 30px;
   height: 30px;
 }
+.wrap-top-left-top-item-name {
+  display: -webkit-box;
+  -webkit-box-orient: vertical;
+  -webkit-line-clamp: 1;
+  overflow: hidden;
+  font-size: 16px;
+}
 </style>

+ 197 - 300
src/views/combatduty/grassdutyinfo/index.vue

@@ -77,8 +77,11 @@
           >导出</el-button
         >
       </el-col>
-
-      <el-col :span="1.5"> </el-col>
+      <el-col :span="1.5">
+        <el-button type="primary" plain size="mini" @click="handlelie"
+          >值班要素</el-button
+        >
+      </el-col>
       <el-col :span="20" :xs="24">
         <el-table
           v-loading="loading"
@@ -103,14 +106,6 @@
             prop="unitName"
             width="150"
           />
-          <!-- <el-table-column label="单位" align="center" prop="unitId" :formatter="unitIdFormat" /> -->
-          <!-- <el-table-column label="值班首长" align="center" prop="chiefDutyName" /> -->
-          <!-- <el-table-column
-            label="值班首长"
-            align="center"
-            prop="chiefDutyId"
-            :formatter="chiefDutyIdFormat"
-          /> -->
           <el-table-column
             label="值班首长"
             align="center"
@@ -228,251 +223,12 @@
         />
       </el-col>
     </el-row>
-    <!-- <el-form
-      :model="queryParams"
-      ref="queryForm"
-      :inline="true"
-      v-show="showSearch"
-      label-width="auto"
-    > -->
-    <!-- <el-form-item label="值班时间" prop="attendedTime">
-        <el-date-picker
-          clearable
-          size="small"
-          v-model="queryParams.attendedTime"
-          type="date"
-          value-format="yyyy-MM-dd"
-          placeholder="选择值班时间"
-        >
-        </el-date-picker>
-      </el-form-item>-->
-    <!-- <el-form-item prop="attendedTime">
-        <el-date-picker
-          clearable
-          size="small"
-          v-model="queryParams.attendedTime"
-          type="date"
-          value-format="yyyy-MM-dd"
-          placeholder="请选择值班时间"
-          @change="handleQuery"
-        ></el-date-picker>
-      </el-form-item>
-      <el-form-item prop="chiefDutyName">
-        <el-select
-          placeholder="请选择值班首长"
-          v-model="queryParams.chiefDutyId"
-          filterable
-          clearable
-          @change="handleQuery"
-        >
-          <el-option
-            v-for="item in rylist"
-            :key="item.id"
-            :label="item.name"
-            :value="item.id"
-          ></el-option>
-        </el-select>
-      </el-form-item> -->
-    <!-- <el-form-item label="单位名称" prop="unitName">
-        <el-select
-          v-model="queryParams.unitName"
-          placeholder="请选择单位名称"
-          clearable
-          size="small"
-        >
-          <el-option label="请选择字典生成" value="" />
-        </el-select>
-      </el-form-item>-->
-    <!-- <el-form-item label="单位ID" prop="unitId">
-        <el-input
-          v-model="queryParams.unitId"
-          placeholder="请输入单位ID"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>-->
-    <!-- <el-form-item label="值班首长" prop="chiefDutyName">
-        <el-input
-          v-model="queryParams.chiefDutyName"
-          placeholder="请输入值班首长"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>-->
-    <!-- <el-form-item label="值班首长ID" prop="chiefDutyId">
-        <el-select
-          v-model="queryParams.chiefDutyId"
-          placeholder="请选择值班首长ID"
-          clearable
-          size="small"
-        >
-          <el-option label="请选择字典生成" value="" />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="值班首长职务" prop="chiefDutyZhiwu">
-        <el-select
-          v-model="queryParams.chiefDutyZhiwu"
-          placeholder="请选择值班首长职务"
-          clearable
-          size="small"
-        >
-          <el-option
-            v-for="dict in dict.type.sys_duty_hief"
-            :key="dict.value"
-            :label="dict.label"
-            :value="dict.value"
-          />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="办公电话" prop="telephoneBg">
-        <el-input
-          v-model="queryParams.telephoneBg"
-          placeholder="请输入办公电话"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="宿舍电话" prop="telephoneSs">
-        <el-input
-          v-model="queryParams.telephoneSs"
-          placeholder="请输入宿舍电话"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="值班首长手机" prop="chiefDutyPhone">
-        <el-input
-          v-model="queryParams.chiefDutyPhone"
-          placeholder="请输入值班首长手机"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>-->
-    <!-- <el-form-item prop="dutyOffierId">
-        <el-select
-          v-model="queryParams.dutyOffierId"
-          placeholder="请选择值班员"
-          clearable
-          size="small"
-          @change="handleQuery"
-        >
-          <el-option
-            v-for="item in rylist"
-            :key="item.id"
-            :label="item.name"
-            :value="item.id"
-          ></el-option>
-        </el-select>
-      </el-form-item> -->
-    <!-- <el-form-item label="值班员ID" prop="dutyOffierId">
-        <el-input
-          v-model="queryParams.dutyOffierId"
-          placeholder="请输入值班员ID"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="值班员职务" prop="dutyOffierZw">
-        <el-select
-          v-model="queryParams.dutyOffierZw"
-          placeholder="请选择值班员职务"
-          clearable
-          size="small"
-        >
-          <el-option
-            v-for="dict in dict.type.sys_duty_hief"
-            :key="dict.value"
-            :label="dict.label"
-            :value="dict.value"
-          />
-        </el-select>
-      </el-form-item>
-      <el-form-item label="值班员手机" prop="dutyOffierPhone">
-        <el-input
-          v-model="queryParams.dutyOffierPhone"
-          placeholder="请输入值班员手机"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="值班电话" prop="dutyPhone">
-        <el-input
-          v-model="queryParams.dutyPhone"
-          placeholder="请输入值班电话"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="值班岗位" prop="dutyGangwei">
-        <el-select
-          v-model="queryParams.dutyGangwei"
-          placeholder="请选择值班岗位"
-          clearable
-          size="small"
-        >
-          <el-option label="请选择字典生成" value="" />
-        </el-select>
-      </el-form-item>-->
-    <!-- <el-form-item>
-        <el-button type="primary" size="btn" @click="handleQuery"
-          >搜索</el-button
-        >
-        <el-button size="btr" @click="resetQuery">重置</el-button>
-      </el-form-item> -->
-    <!-- </el-form> -->
-
-    <!-- <el-row :gutter="10" class="mb8">
-      <el-col :span="1.5">
-        <el-button
-          type="primary"
-          plain
-          icon="el-icon-plus"
-          size="mini"
-          @click="handleAdd"
-          v-hasPermi="['combatduty:grassdutyinfo:add']"
-          >新增</el-button
-        >
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="success"
-          plain
-          icon="el-icon-edit"
-          size="mini"
-          :disabled="single"
-          @click="handleUpdate"
-          v-hasPermi="['combatduty:grassdutyinfo:edit']"
-          >修改</el-button
-        >
-      </el-col>
-      <el-col :span="1.5">
-        <el-button
-          type="danger"
-          plain
-          icon="el-icon-delete"
-          size="mini"
-          :disabled="multiple"
-          @click="handleDelete"
-          v-hasPermi="['combatduty:grassdutyinfo:remove']"
-          >删除</el-button
-        >
-      </el-col>
-      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
-    </el-row> -->
 
     <!-- 添加或修改基层值班对话框 -->
     <el-dialog
       :title="title"
       :visible.sync="open"
-      width="1016px"
+      width="1037px"
       append-to-body
       :close-on-click-modal="false"
     >
@@ -484,17 +240,6 @@
         :inline="true"
       >
         <div class="jiben">基本信息</div>
-        <!-- <el-form-item label="值班时间" prop="attendedTime">
-          <el-date-picker
-            clearable
-            size="small"
-            v-model="form.attendedTime"
-            type="date"
-            value-format="yyyy-MM-dd"
-            placeholder="选择值班时间"
-          >
-          </el-date-picker>
-        </el-form-item>-->
         <el-form-item label="值班时间" prop="attendedTime">
           <el-date-picker
             clearable
@@ -517,32 +262,8 @@
         </el-form-item>
         <el-form-item label="单位名称" prop="unitName">
           <el-input v-model="form.unitName" placeholder="" disabled />
-          <!-- <el-select
-            v-model="form.unitName"
-            @change="unitNamechange"
-            clearable
-            placeholder=""
-          >
-            <el-option
-              v-for="dict in deptOptions"
-              :key="dict.deptId"
-              :label="dict.deptName"
-              :value="dict"
-            ></el-option>
-          </el-select> -->
         </el-form-item>
-        <!-- <el-form-item label="单位" prop="unitId">
-          <el-select v-model="form.unitId" ref="deptId" clearable placeholder="请选择单位名称">
-            <el-option
-              v-for="dict in deptOptions"
-              :key="dict.deptId"
-              :label="dict.deptName"
-              :value="dict.deptId"
-            ></el-option>
-          </el-select>
-        </el-form-item>-->
         <el-form-item label="值班首长" prop="chiefDutyName">
-          <!-- <el-input v-model="form.chiefDutyName" placeholder="请输入值班首长" /> -->
           <el-select
             v-model="form.chiefDutyName"
             @change="chiefDutyNamefun"
@@ -558,16 +279,11 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <!-- <el-form-item label="值班首长" prop="chiefDutyId">
-          <el-select v-model="form.chiefDutyId" filterable clearable placeholder="请选择值班首长">
-            <el-option v-for="item in rylist" :key="item.id" :label="item.name" :value="item.id"></el-option>
-          </el-select>
-        </el-form-item>-->
         <el-form-item label="值班首长电话" prop="chiefDutyPhone">
           <el-input v-model="form.chiefDutyPhone" placeholder="" />
         </el-form-item>
         <el-form-item label="值班首长职务" prop="chiefDutyZhiwu">
-          <el-select v-model="form.chiefDutyZhiwu" placeholder=""  clearable>
+          <el-select v-model="form.chiefDutyZhiwu" placeholder="" clearable>
             <el-option
               v-for="dict in dict.type.sys_duty_hief"
               :key="dict.value"
@@ -599,16 +315,11 @@
             ></el-option>
           </el-select>
         </el-form-item>
-        <!-- <el-form-item label="值班员" prop="dutyOffierId">
-          <el-select v-model="form.dutyOffierId" filterable clearable placeholder="请选择值班员">
-            <el-option v-for="item in rylist" :key="item.id" :label="item.name" :value="item.id"></el-option>
-          </el-select>
-        </el-form-item>-->
         <el-form-item label="值班员电话" prop="dutyOffierPhone">
           <el-input v-model="form.dutyOffierPhone" placeholder="" />
         </el-form-item>
         <el-form-item label="值班员职务" prop="dutyOffierZw">
-          <el-select v-model="form.dutyOffierZw" placeholder=""  clearable>
+          <el-select v-model="form.dutyOffierZw" placeholder="" clearable>
             <el-option
               v-for="dict in dict.type.sys_zhiban"
               :key="dict.value"
@@ -636,6 +347,118 @@
         <el-button @click="cancel" size="btn">取 消</el-button>
       </div>
     </el-dialog>
+
+    <!-- 列表的展示 -->
+    <el-dialog
+      :title="title"
+      :visible.sync="open1"
+      width="1700px"
+      append-to-body
+      :close-on-click-modal="false"
+      custom-class="box1"
+    >
+      <table
+        border="1"
+        style="
+          border-collapse: collapse;
+          border: none;
+          mso-border-left-alt: 0.5pt solid windowtext;
+          mso-border-top-alt: 0.5pt solid windowtext;
+          mso-border-right-alt: 0.5pt solid windowtext;
+          mso-border-bottom-alt: 0.5pt solid windowtext;
+          mso-border-insideh: 0.5pt solid windowtext;
+          mso-border-insidev: 0.5pt solid windowtext;
+          mso-padding-alt: 0pt 0pt 0pt 0pt;
+          display: inline-block;
+          color: #fff;
+        "
+        width="650px"
+        v-if="table1.length > 0"
+      >
+        <tbody style="border-bottom: 1px solid">
+          <tr align="center" class="tr">
+            <td width="220" height="40">类别</td>
+            <td width="220" height="40">值班首长</td>
+            <td width="220" height="40">电话</td>
+          </tr>
+          <tr align="center" class="tr" v-for="(item, i) in table1" :key="i">
+            <td width="220" height="40">{{ item.unitName }}</td>
+            <td width="220" height="40">{{ item.dutyOffierName }}</td>
+            <td width="220" height="40">{{ item.telephoneBg }}</td>
+          </tr>
+        </tbody>
+      </table>
+      <table
+        border="1"
+        style="
+          border-collapse: collapse;
+          border: none;
+          mso-border-left-alt: 0.5pt solid windowtext;
+          mso-border-top-alt: 0.5pt solid windowtext;
+          mso-border-right-alt: 0.5pt solid windowtext;
+          mso-border-bottom-alt: 0.5pt solid windowtext;
+          mso-border-insideh: 0.5pt solid windowtext;
+          mso-border-insidev: 0.5pt solid windowtext;
+          mso-padding-alt: 0pt 0pt 0pt 0pt;
+          display: inline-block;
+          color: #fff;
+        "
+        width="700px"
+        v-if="table2.length > 0"
+      >
+        <tbody
+          style="border-bottom: 1px solid; border-left: 1px solid transparent"
+        >
+          <tr align="center" class="tr">
+            <td width="220" height="40">类别</td>
+            <td width="220" height="40">值班首长</td>
+            <td width="220" height="40">电话</td>
+          </tr>
+          <tr align="center" class="tr" v-for="(item, i) in table2" :key="i">
+            <td width="220" height="40">{{ item.unitName }}</td>
+            <td width="220" height="40">{{ item.dutyOffierName }}</td>
+            <td width="220" height="40">{{ item.telephoneBg }}</td>
+          </tr>
+        </tbody>
+      </table>
+      <table
+        border="1"
+        style="
+          border-collapse: collapse;
+          border: none;
+          mso-border-left-alt: 0.5pt solid windowtext;
+          mso-border-top-alt: 0.5pt solid windowtext;
+          mso-border-right-alt: 0.5pt solid windowtext;
+          mso-border-bottom-alt: 0.5pt solid windowtext;
+          mso-border-insideh: 0.5pt solid windowtext;
+          mso-border-insidev: 0.5pt solid windowtext;
+          mso-padding-alt: 0pt 0pt 0pt 0pt;
+          display: inline-block;
+          color: #fff;
+        "
+        width="700px"
+        v-if="table3.length > 0"
+      >
+        <tbody
+          style="border-bottom: 1px solid; border-left: 1px solid transparent"
+        >
+          <tr align="center" class="tr">
+            <td width="220" height="40">类别</td>
+            <td width="220" height="40">值班首长</td>
+            <td width="220" height="40">电话</td>
+          </tr>
+          <tr align="center" class="tr" v-for="(item, i) in table3" :key="i">
+            <td width="220" height="40">{{ item.unitName }}</td>
+            <td width="220" height="40">{{ item.dutyOffierName }}</td>
+            <td width="220" height="40">{{ item.telephoneBg }}</td>
+          </tr>
+        </tbody>
+      </table>
+
+      <div slot="footer" class="dialog-footer">
+        <el-button @click="open1 = false" size="btn">取 消</el-button>
+      </div>
+    </el-dialog>
   </div>
 </template>
 
@@ -650,13 +473,14 @@ import {
   listPeople,
   getDept,
   listPeoples,
+  todaydutyinfo
 } from "@/api/combatduty/grassdutyinfo";
 import { getWeiShu } from "@/api/grassrootsregistration/bdglmeeting";
 import { getUserProfile } from "@/api/system/user";
 
 export default {
   name: "Grassdutyinfo",
-  dicts: ["sys_duty_hief", "sys_duty_hief","sys_zhiban"],
+  dicts: ["sys_duty_hief", "sys_duty_hief", "sys_zhiban"],
   data() {
     return {
       // 遮罩层
@@ -703,7 +527,41 @@ export default {
       // 表单参数
       form: {},
       // 表单校验
-      rules: {},
+      rules: {
+        attendedTime: [
+          { required: true, message: "值班时间不能为空", trigger: "blur" },
+        ],
+        chiefDutyName: [
+          { required: true, message: "值班首长不能为空", trigger: "blur" },
+        ],
+        chiefDutyPhone: [
+          { required: true, message: "值班首长电话不能为空", trigger: "blur" },
+        ],
+        chiefDutyZhiwu: [
+          { required: true, message: "值班首长职务不能为空", trigger: "blur" },
+        ],
+        telephoneBg: [
+          { required: true, message: "办公电话不能为空", trigger: "blur" },
+        ],
+        telephoneSs: [
+          { required: true, message: "宿舍电话不能为空", trigger: "blur" },
+        ],
+        dutyOffierName: [
+          { required: true, message: "值班员不能为空", trigger: "blur" },
+        ],
+        dutyOffierPhone: [
+          { required: true, message: "值班员电话不能为空", trigger: "blur" },
+        ],
+        dutyOffierZw: [
+          { required: true, message: "值班员职务不能为空", trigger: "blur" },
+        ],
+        dutyPhone: [
+          { required: true, message: "值班电话不能为空", trigger: "blur" },
+        ],
+        dutyGangwei: [
+          { required: true, message: "值班岗位不能为空", trigger: "blur" },
+        ],
+      },
       //人员数据
       rylist: [],
       //单位数据
@@ -720,6 +578,12 @@ export default {
       deptId: null,
       // 获取全部人员列表
       QuanRenList: [],
+      open1: false,
+      // 获取今日值班数据列表
+      dayList: [],
+      table1: [],
+      table2: [],
+      table3: [],
     };
   },
   created() {
@@ -728,8 +592,35 @@ export default {
     this.gettreeselect();
     this.treeselect();
     this.getQuanRen();
+    this.getAllDay();
   },
   methods: {
+    // 获取今日列表所有单位
+    getAllDay() {
+      todaydutyinfo().then((res) => {
+        this.dayList = res.data;
+        this.getJi();
+      });
+    },
+    getJi() {
+     if(this.dayList.length>0){
+      this.dayList.forEach((element, i) => {
+        if (i >= 0 && i <= 7) {
+          this.table1.push(element);
+        } else if (i > 7 && i <= 15) {
+          this.table2.push(element);
+        } else if (i > 15 && i <= 33) {
+          this.table3.push(element);
+        }
+      });
+     }
+      // console.log(this.table1);
+    },
+    // 列表展示
+    handlelie() {
+      this.open1 = true;
+      this.title = "值班要素";
+    },
     // 获取全部人员列表
     getQuanRen() {
       listPeoples().then((res) => {});
@@ -992,7 +883,7 @@ export default {
 ::v-deep .el-form-item__label {
   font: 16px;
   color: #fff;
-  width: 100px !important;
+  width: 108px !important;
 }
 ::v-deep .el-input__inner {
   /* width: 200px !important;
@@ -1259,4 +1150,10 @@ hr {
 ::v-deep .data .el-icon-date:before {
   content: none;
 }
+::v-deep .box1 .el-dialog__body {
+  display: flex;
+  margin-top: 43px;
+  font-size: 16px;
+  margin-right: 31px;
+}
 </style>

+ 78 - 65
src/views/combatduty/info/index.vue

@@ -7,7 +7,7 @@
       v-show="showSearch"
       label-width="68px"
     >
-      <el-form-item label="文件名称" prop="fileName">
+      <el-form-item label="" prop="fileName">
         <el-input
           v-model="queryParams.fileName"
           placeholder="请输入文件名称"
@@ -35,7 +35,7 @@
           @keyup.enter.native="handleQuery"
         />
       </el-form-item> -->
-      <el-form-item label="上传人" prop="createUser">
+      <el-form-item label="" prop="createUser">
         <el-input
           v-model="queryParams.createUser"
           placeholder="请输入上传人"
@@ -147,18 +147,6 @@
             @click="upload"
             >上传</el-button>
       </el-col>
-      <!-- <el-col :span="1.5">
-        <el-button
-          type="warning"
-          plain
-          icon="el-icon-download"
-          size="mini"
-          :loading="exportLoading"
-          @click="handleExport"
-          v-hasPermi="['system:info:export']"
-        >导出</el-button> -->
-      </el-col>
-      <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
     </el-row>
 
     <el-table
@@ -168,7 +156,7 @@
       :header-cell-style="{ background: '#003C69', color: 'white' }"
     >
       <el-table-column type="selection" width="55" align="center" />
-      <el-table-column label="序号" type="index" width="80"/>
+      <el-table-column label="序号" type="index" width="80" />
       <el-table-column label="" align="center" width="90" >
           <template slot-scope="scope">
             <div style="display: flex; flex-warp: warp; margin-top: 10px">
@@ -197,7 +185,7 @@
         </el-table-column>
       <!-- <el-table-column label="主键ID" align="center" prop="id" /> -->
       <el-table-column label="文件名称" align="center" prop="fileName" />
-      <el-table-column label="阅读量" align="center" prop="readVolume" />
+      <!-- <el-table-column label="阅读量" align="center" prop="readVolume" /> -->
       <!-- <el-table-column label="页数" align="center" prop="theNumberPages" /> -->
       <el-table-column label="上传人" align="center" prop="createUser" />
       <!-- <el-table-column label="上传人ID" align="center" prop="createUserid" />
@@ -509,7 +497,7 @@ export default {
         directoryName: null,
         parentDirId: null,
         parentDirName: null,
-        fileSize: null
+        fileSize: null,
       },
       // 表单参数
       form: {},
@@ -518,11 +506,11 @@ export default {
       previewDialog: false,
       open33: false,
       title3: "预览文件",
-       // 下载文件路径
+      // 下载文件路径
       downurl: process.env.VUE_APP_BASE_API,
       pageRotate: 0,
       gopage: true,
-       previewDialog: false,
+      previewDialog: false,
       pdfurl: "",
       pageNum: 1,
       pageTotalNum: 1,
@@ -537,13 +525,13 @@ export default {
       // 点击右侧一级分类进去
       Ids: null,
       last: null,
-      uploadopen:false,
+      uploadopen: false,
       // 多文件上传列表
       moreFile: [],
     };
   },
   components: {
-    PDF
+    PDF,
   },
   created() {
     this.getList();
@@ -552,7 +540,7 @@ export default {
     /** 查询战备情况列表 */
     getList() {
       this.loading = true;
-      listInfo(this.queryParams).then(response => {
+      listInfo(this.queryParams).then((response) => {
         this.infoList = response.rows;
         this.total = response.total;
         this.loading = false;
@@ -577,7 +565,7 @@ export default {
         directoryName: null,
         parentDirId: null,
         parentDirName: null,
-        fileSize: null
+        fileSize: null,
       };
       this.resetForm("form");
     },
@@ -593,7 +581,7 @@ export default {
     },
     // 多选框选中数据
     handleSelectionChange(selection) {
-      this.ids = selection.map(item => item.id);
+      this.ids = selection.map((item) => item.id);
       this.single = selection.length !== 1;
       this.multiple = !selection.length;
     },
@@ -607,7 +595,7 @@ export default {
     handleUpdate(row) {
       this.reset();
       const id = row.id || this.ids;
-      getInfo(id).then(response => {
+      getInfo(id).then((response) => {
         this.form = response.data;
         this.open = true;
         this.title = "修改战备情况";
@@ -615,16 +603,16 @@ export default {
     },
     /** 提交按钮 */
     submitForm() {
-      this.$refs["form"].validate(valid => {
+      this.$refs["form"].validate((valid) => {
         if (valid) {
           if (this.form.id != null) {
-            updateInfo(this.form).then(response => {
+            updateInfo(this.form).then((response) => {
               this.$modal.msgSuccess("修改成功");
               this.open = false;
               this.getList();
             });
           } else {
-            addInfo(this.form).then(response => {
+            addInfo(this.form).then((response) => {
               this.$modal.msgSuccess("新增成功");
               this.open = false;
               this.getList();
@@ -637,8 +625,8 @@ export default {
     handleDelete(row) {
       const ids = row.id || this.ids;
       this.$modal
-        .confirm('是否确认删除战备情况编号为"' + ids + '"的数据项?')
-        .then(function() {
+        .confirm('是否确认删除战备情况的数据项?')
+        .then(function () {
           return delInfo(ids);
         })
         .then(() => {
@@ -656,13 +644,13 @@ export default {
           this.exportLoading = true;
           return exportInfo(queryParams);
         })
-        .then(response => {
+        .then((response) => {
           this.$download.name(response.msg);
           this.exportLoading = false;
         })
         .catch(() => {});
     },
-     // 阅读按钮操作
+    // 阅读按钮操作
     ViewRead(row) {
       if (row.parentDirId == ".docx" || row.parentDirId == ".doc") {
         this.open33 = true;
@@ -678,43 +666,42 @@ export default {
       } else if (row.parentDirId == ".pdf") {
         this.previewDialog = true;
         this.pdfurl = process.env.VUE_APP_BASE_API + row.parentDirName;
-         console.log(this.pdfurl,row.parentDirName,123)
+        console.log(this.pdfurl, row.parentDirName, 123);
         this.pageNum = 1;
       } else {
         this.$message.error("只能阅读Word跟pdf文件");
       }
-      row.common = "1";
-      updateFileinfo(row).then((res) => {
-        this.getList();
-      });
+      // row.common = "1";
+      // updateFileinfo(row).then((res) => {
+      //   this.getList();
+      // });
       // window.open("www.baidu.com","_self");
     },
-    UploadsubmitForm(){
-          // this.form.bdglFileInfos = this.moreFile;
-          let bdglFileInfos={};
-          this.moreFile.forEach(item=>{
-               bdglFileInfos={
-                  fileSize:item.fileLength,
-                  parentDirName:item.url,
-                  parentDirId: item.houZUI,
-                  theNumberPages: item.pageCount,
-                  fileName: item.name
-               }
-          })
-          console.log(bdglFileInfos)
-          if(bdglFileInfos.fileSize=='0.0KB'){
-             this.$modal.msgSuccess("您好!上传文件不能为空文件。");
-          }else{
-                 // 上传文件接口
-                addFileinfo(bdglFileInfos).then((response) => {
-                    this.$modal.msgSuccess("上传成功");
-                    this.uploadopen = false;
-                    this.getList();
-                });
-          }
-
+    UploadsubmitForm() {
+      // this.form.bdglFileInfos = this.moreFile;
+      let bdglFileInfos = {};
+      this.moreFile.forEach((item) => {
+        bdglFileInfos = {
+          fileSize: item.fileLength,
+          parentDirName: item.url,
+          parentDirId: item.houZUI,
+          theNumberPages: item.pageCount,
+          fileName: item.name,
+        };
+      });
+      console.log(bdglFileInfos);
+      if (bdglFileInfos.fileSize == "0.0KB") {
+        this.$modal.msgSuccess("您好!上传文件不能为空文件。");
+      } else {
+        // 上传文件接口
+        addFileinfo(bdglFileInfos).then((response) => {
+          this.$modal.msgSuccess("上传成功");
+          this.uploadopen = false;
+          this.getList();
+        });
+      }
     },
-        // 上传
+    // 上传
     upload() {
       // this.getList()
       this.reset();
@@ -742,7 +729,7 @@ export default {
       page = page < this.pageTotalNum ? page + 1 : 1;
       this.pageNum = page;
     },
-  }
+  },
 };
 </script>
 <style scoped>
@@ -827,7 +814,7 @@ export default {
 }
 /* 计划附件 */
 ::v-deep .el-upload__tip {
-   margin-left: 2px;
+  margin-left: 2px;
 }
 /*定义滚动条宽高及背景,宽高分别对应横竖滚动条的尺寸*/
 .el-dialog__body::-webkit-scrollbar {
@@ -865,7 +852,33 @@ export default {
 ::v-deep .el-table__row .el-table__cell {
   text-align: center !important;
 }
-::v-deep .el-input--small .el-input__inner{
+::v-deep .el-input--small .el-input__inner {
   color: #ffffff;
 }
+::v-deep .el-table_2_column_9{
+  text-align: center;
+}
+::v-deep .el-dialog{
+  background-color: #004d86;
+}
+::v-deep .el-dialog__header{
+  border-bottom: 1px solid #fff;
+}
+::v-deep .el-dialog__title{
+  color: #fff;
+}
+::v-deep .el-upload__tip{
+  color: #fff;
+}
+::v-deep .el-link--inner{
+  color: #fff;
+}
+::v-deep .el-form-item .el-input__inner {
+  width: 200px;
+  height: 36px;
+  background: transparent;
+  color: #fff !important;
+  border: 1px solid #fff !important;
+}
+
 </style>

+ 47 - 73
src/views/combatduty/regisdutyinfo/index.vue

@@ -7,52 +7,6 @@
       v-show="showSearch"
       label-width="68px"
     >
-      <!-- <el-form-item prop="unitName">
-        <el-select
-          v-model="queryParams.unitName"
-          placeholder="请选择单位名称"
-          clearable
-          size="small"
-        >
-          <el-option label="请选择字典生成" value="" />
-        </el-select>
-      </el-form-item> -->
-      <!-- <el-form-item label="单位ID" prop="unitId">
-        <el-input
-          v-model="queryParams.unitId"
-          placeholder="请输入单位ID"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item> -->
-      <!-- <el-form-item label="装备名称" prop="equipmentName">
-        <el-input
-          v-model="queryParams.equipmentName"
-          placeholder="请输入装备名称"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="装备ID" prop="equipmentId">
-        <el-input
-          v-model="queryParams.equipmentId"
-          placeholder="请输入装备ID"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item>
-      <el-form-item label="装备数量" prop="equipmentNumber">
-        <el-input
-          v-model="queryParams.equipmentNumber"
-          placeholder="请输入装备数量"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item> -->
       <el-form-item prop="type">
         <el-select
           v-model="queryParams.type"
@@ -69,30 +23,6 @@
           />
         </el-select>
       </el-form-item>
-      <!-- <el-form-item label="装备状态" prop="equipmentStates">
-        <el-select
-          v-model="queryParams.equipmentStates"
-          placeholder="请选择装备状态"
-          clearable
-          size="small"
-        >
-          <el-option
-            v-for="dict in dict.type.equipment_status"
-            :key="dict.value"
-            :label="dict.label"
-            :value="dict.value"
-          />
-        </el-select>
-      </el-form-item> -->
-      <!-- <el-form-item label="待命位置" prop="standbyPosition">
-        <el-input
-          v-model="queryParams.standbyPosition"
-          placeholder="请输入待命位置"
-          clearable
-          size="small"
-          @keyup.enter.native="handleQuery"
-        />
-      </el-form-item> -->
       <el-form-item prop="attendedTime">
         <el-date-picker
           clearable
@@ -106,9 +36,6 @@
         </el-date-picker>
       </el-form-item>
       <el-form-item>
-        <!-- <el-button type="primary" size="btn" @click="handleQuery"
-          >搜索</el-button
-        > -->
         <el-button size="btr" @click="resetQuery">重置</el-button>
       </el-form-item>
     </el-form>
@@ -166,6 +93,17 @@
         @queryTable="getList"
       ></right-toolbar> -->
     </el-row>
+    <div class="biao_ti">
+      <div class="tji">装备分类统计</div>
+      <div style="margin-right: 23%">
+        <span style="font-size: 24px">试验</span>
+        <span style="margin-left: 20px; font-size: 24px">{{ number1 }}</span>
+      </div>
+      <div>
+        <span style="font-size: 24px">通用</span>
+        <span style="margin-left: 20px; font-size: 24px">{{ number2 }}</span>
+      </div>
+    </div>
 
     <el-table
       v-loading="loading"
@@ -495,6 +433,7 @@ import {
   updateRegisdutyinfo,
   exportRegisdutyinfo,
   getDept,
+  getNumber,
 } from "@/api/combatduty/regisdutyinfo";
 
 export default {
@@ -569,13 +508,25 @@ export default {
       ],
       // 修改弹出层显示与隐藏
       open1: false,
+      // 统计数量
+      number1: null,
+      number2: null,
     };
   },
   created() {
     this.getList();
     this.gettreeselect();
+    this.getNumberAll();
   },
   methods: {
+    // 获取数量统计
+    getNumberAll() {
+      getNumber().then((res) => {
+        console.log(res);
+        this.number1 = res.data[0].typenumber;
+        this.number2 = res.data[1].typenumber;
+      });
+    },
     // 单位提交
     unitNameClick(date, i) {
       this.relatives[i].unitName = date.deptName;
@@ -857,4 +808,27 @@ export default {
   border: none !important;
   color: #cccccc;
 }
+.biao_ti {
+  display: flex;
+  margin: 0 auto;
+  justify-content: center;
+  height: 100px;
+  align-items: center;
+  color: #fff;
+  background: rgb(0, 60, 105);
+  margin-bottom: 30px;
+}
+.tji {
+  width: 176px;
+  height: 36px;
+  text-align: center;
+  line-height: 36px;
+  position: absolute;
+  top: 111px;
+  right: 171px;
+  color: #fff;
+  font-size: 18px;
+  font-weight: 600;
+  background: #004d86;
+}
 </style>

+ 82 - 5
src/views/grassrootsregistration/bdglequip/index.vue

@@ -265,7 +265,11 @@
           ></el-input-number>
         </el-form-item>
         <el-form-item label="入库经手人" prop="peopleId">
-          <el-select v-model="form.peopleId" placeholder="请选择入库经手人"  clearable>
+          <el-select
+            v-model="form.peopleId"
+            placeholder="请选择入库经手人"
+            clearable
+          >
             <el-option
               v-for="item in renYuan"
               :key="item.id"
@@ -299,7 +303,11 @@
           ></el-input-number>
         </el-form-item>
         <el-form-item label="出库经手人" prop="peopleId1">
-          <el-select v-model="form.peopleId1" placeholder="请选择出库经手人"  clearable>
+          <el-select
+            v-model="form.peopleId1"
+            placeholder="请选择出库经手人"
+            clearable
+          >
             <el-option
               v-for="item in renYuan"
               :key="item.id"
@@ -437,6 +445,9 @@ export default {
         unitId: [
           { required: true, message: "配发单位不能为空", trigger: "blur" },
         ],
+        title:[
+          { required: true, message: "物品名称不能为空", trigger: "blur" },
+        ]
       },
       roleOptions: [],
       //人员
@@ -465,16 +476,34 @@ export default {
         children: "children",
         label: "deptName",
       },
+      // 时间默认
+      times: null,
     };
   },
   created() {
     this.getList();
     this.getBumen();
+    this.getTiem();
   },
   methods: {
+    // 获取当前日期
+    getTiem() {
+      var today = new Date();
+      var y = today.getFullYear();
+      var M = today.getMonth() + 1;
+      var d = today.getDate();
+      if (M < 10) {
+        M = "0" + M;
+      }
+      if (d < 10) {
+        d = "0" + d;
+      }
+      this.times = y + "-" + M + "-" + d;
+    },
     // 重置表单人员
     ChongZhiRen() {
-      (this.form.peopleId = null), (this.form.peopleId1 = null);
+      this.form.peopleId = null;
+      this.form.peopleId1 = null;
     },
     // 获取主持人
     getZhuChi(id) {
@@ -602,7 +631,8 @@ export default {
     /** 新增按钮操作 */
     handleAdd() {
       //人员
-      (this.renYuan = []), this.getTreeselect();
+      this.renYuan = [];
+      this.getTreeselect();
       this.getTreeselect2();
       this.getPaiFa();
       this.getdict();
@@ -647,12 +677,60 @@ export default {
       this.$refs["form"].validate((valid) => {
         if (valid) {
           if (this.form.id != null) {
+            // 配发时间
+            if (this.form.granttime == null) {
+              this.form.granttime = this.times;
+            }
+            // 入库时间
+            if (this.form.intime == null) {
+              this.form.intime = this.times;
+            }
+            // 入库经手人
+            if (this.form.peopleId == null) {
+              this.form.peopleName = "无";
+            }
+            // 出库时间
+            if (this.form.outtime == null) {
+              this.form.outtime = this.times;
+            }
+            // 出库经手人
+            if (this.form.peopleId1 == null) {
+              this.form.people1Name = "无";
+            }
+            // 质量情况
+            if (this.form.quality == null) {
+              this.form.quality = "无";
+            }
             updateBdglequip(this.form).then((response) => {
               this.$modal.msgSuccess("修改成功");
               this.open = false;
               this.getList();
             });
           } else {
+            // 配发时间
+            if (this.form.granttime == null) {
+              this.form.granttime = this.times;
+            }
+            // 入库时间
+            if (this.form.intime == null) {
+              this.form.intime = this.times;
+            }
+            // 入库经手人
+            if (this.form.peopleId == null) {
+              this.form.peopleName = "无";
+            }
+            // 出库时间
+            if (this.form.outtime == null) {
+              this.form.outtime = this.times;
+            }
+            // 出库经手人
+            if (this.form.peopleId1 == null) {
+              this.form.people1Name = "无";
+            }
+            // 质量情况
+            if (this.form.quality == null) {
+              this.form.quality = "无";
+            }
             addBdglequip(this.form).then((response) => {
               this.$modal.msgSuccess("新增成功");
               this.open = false;
@@ -666,7 +744,6 @@ export default {
     handleDelete(row) {
       const ids = row.id || this.ids;
       this.$modal
-        // .confirm('是否确认删除训练器材/教材登记薄编号为"' + ids + '"的数据项?')
         .confirm("是否确认删除该数据?")
         .then(function () {
           return delBdglequip(ids);

+ 76 - 9
src/views/militaryvehicleManagement/thebusApply/index.vue

@@ -112,7 +112,8 @@
         prop="unitName"
         width="200"
       />
-      <el-table-column label="带车人" align="center" prop="peopleName" />
+      <el-table-column label="申请人" align="center" prop="peopleName" />
+      <el-table-column label="带车人" align="center" prop="pepelonamed" />
       <!-- <el-table-column
         label="联系方式"
         align="center"
@@ -520,10 +521,10 @@
             :disabled="dislable"
           />
         </el-form-item>
-        <el-form-item label="人员名称" prop="peopleId">
+        <el-form-item label="申请人员" prop="peopleId">
           <el-select
             v-model="form.peopleId"
-            placeholder="请选择人员名称"
+            placeholder="请选择申请人员"
             filterable
             :disabled="dislable"
             clearable
@@ -539,6 +540,24 @@
             </el-option>
           </el-select>
         </el-form-item>
+        <el-form-item label="带车人员" prop="pepelonamed">
+          <el-select
+            v-model="form.pepelonamed"
+            placeholder="请选择带车人员"
+            filterable
+            :disabled="dislable"
+            clearable
+          >
+            <el-option
+              v-for="(item, i) in daiList"
+              :key="i"
+              :label="item.name"
+              :value="item.name"
+              class="input_xiala"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
         <el-form-item label="联系方式" prop="contact">
           <el-input
             v-model="form.contact"
@@ -691,10 +710,10 @@
             :disabled="dislable"
           />
         </el-form-item>
-        <el-form-item label="人员名称" prop="peopleId" >
+        <el-form-item label="申请人员" prop="peopleId">
           <el-select
             v-model="form.peopleId"
-            placeholder="请选择人员名称"
+            placeholder="请选择申请人员"
             filterable
             :disabled="dislable"
             clearable
@@ -709,6 +728,24 @@
             </el-option>
           </el-select>
         </el-form-item>
+        <el-form-item label="带车人员" prop="pepelonamed">
+          <el-select
+            v-model="form.pepelonamed"
+            placeholder="请选择带车人员"
+            filterable
+            :disabled="dislable"
+            clearable
+          >
+            <el-option
+              v-for="(item, i) in daiList"
+              :key="i"
+              :label="item.name"
+              :value="item.name"
+              class="input_xiala"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
         <el-form-item label="联系方式" prop="contact">
           <el-input
             v-model="form.contact"
@@ -857,10 +894,10 @@
             :disabled="dislable"
           />
         </el-form-item>
-        <el-form-item label="人员名称" prop="peopleId">
+        <el-form-item label="申请人员" prop="peopleId">
           <el-select
             v-model="form.peopleId"
-            placeholder="请选择人员名称"
+            placeholder="请选择申请人员"
             filterable
             :disabled="dislable"
             clearable
@@ -875,6 +912,24 @@
             </el-option>
           </el-select>
         </el-form-item>
+        <el-form-item label="带车人员" prop="pepelonamed">
+          <el-select
+            v-model="form.pepelonamed"
+            placeholder="请选择带车人员"
+            filterable
+            :disabled="dislable"
+            clearable
+          >
+            <el-option
+              v-for="(item, i) in daiList"
+              :key="i"
+              :label="item.name"
+              :value="item.name"
+              class="input_xiala"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
         <el-form-item label="联系方式" prop="contact">
           <el-input
             v-model="form.contact"
@@ -1022,6 +1077,7 @@ import {
   getThebusUser,
 } from "@/api/militaryvehicleManagement/thebusConfig";
 import { getAll, getUser } from "@/api/grassrootsregistration/bdglmeeting";
+// import { getAll } from "@/api/peopleChuRu/bdglLeave";
 
 export default {
   name: "ThebusApply",
@@ -1133,6 +1189,8 @@ export default {
       dislable: false,
       // 批量审批数组
       examine: [],
+      // 带车人员列表
+      daiList: [],
     };
   },
   created() {
@@ -1141,10 +1199,15 @@ export default {
   },
   mounted() {},
   methods: {
+    // 获取带车人信息
+    getDaiAll() {
+      getAll().then((res) => {
+        this.daiList = res.data;
+      });
+    },
     // 获取搜索所有人
     getSuo() {
       getAll().then((res) => {
-        // console.log(res);
         this.renYuan = res.data;
       });
     },
@@ -1265,6 +1328,7 @@ export default {
       this.getYingJi();
       this.getShenPi();
       this.getSuo();
+      this.getDaiAll();
       const id = row.id || this.ids;
       if (row.shenpijiedian != "1") {
         this.dislable = true;
@@ -1374,6 +1438,7 @@ export default {
       this.getTreeList();
       this.getYingJi();
       this.getShenPi();
+      this.getDaiAll();
       const id = row.id || this.ids;
       this.dislable = true;
       getThebusApply(id).then((response) => {
@@ -1428,7 +1493,7 @@ export default {
     // 选择部门单位触发
     selectPeo(data) {
       this.form.unitName = data.label;
-      this.form.peopleId="";
+      this.form.peopleId = "";
       this.getRen(data.id);
     },
     getSuozaiRen(id) {
@@ -1518,6 +1583,7 @@ export default {
       this.getYingJi();
       this.getShenPi();
       this.getTreeList();
+      this.getDaiAll();
       this.open = true;
       this.title = "添加用车申请";
       var today = new Date();
@@ -1554,6 +1620,7 @@ export default {
       this.getYingJi();
       this.getShenPi();
       this.getSuo();
+      this.getDaiAll();
       const id = row.id || this.ids;
       if (row.shenpijiedian != "1") {
         this.dislable = true;

+ 44 - 6
src/views/militaryvehicleManagement/thebusList/index.vue

@@ -193,11 +193,12 @@
         <el-form-item label="人数" prop="peopleCount">
           <el-input v-model="fomr1.peopleCount" placeholder="请输入人数" />
         </el-form-item>
-        <el-form-item label="人员名称" prop="peopleId">
+        <el-form-item label="申请人员" prop="peopleId">
           <el-select
             v-model="fomr1.peopleId"
-            placeholder="请选择人员名称"
+            placeholder="请选择申请人员"
             filterable
+            clearable
           >
             <el-option
               v-for="(item, i) in renYuan"
@@ -210,6 +211,23 @@
             </el-option>
           </el-select>
         </el-form-item>
+        <el-form-item label="带车人员" prop="pepelonamed">
+          <el-select
+            v-model="fomr1.pepelonamed"
+            placeholder="请选择带车人员"
+            filterable
+            clearable
+          >
+            <el-option
+              v-for="(item, i) in daiList"
+              :key="i"
+              :label="item.name"
+              :value="item.name"
+              class="input_xiala"
+            >
+            </el-option>
+          </el-select>
+        </el-form-item>
         <el-form-item label="联系方式" prop="contact">
           <el-input v-model="fomr1.contact" placeholder="请输入联系方式" />
         </el-form-item>
@@ -334,13 +352,20 @@
             readonly
           ></el-input>
         </el-form-item>
-        <el-form-item label="人员名称" prop="peopleId">
+        <el-form-item label="申请人员" prop="peopleId">
           <el-input
-            placeholder="请选择人员名称"
+            placeholder="请选择申请人员"
             v-model="form.peopleName"
             readonly
           ></el-input>
         </el-form-item>
+        <el-form-item label="带车人员" prop="pepelonamed">
+          <el-input
+            placeholder=""
+            v-model="form.pepelonamed"
+            readonly
+          ></el-input>
+        </el-form-item>
 
         <el-form-item label="人数" prop="peopleCount">
           <el-input
@@ -507,9 +532,12 @@
         <el-form-item label="单位" prop="unitId">
           <el-input v-model="forms.unitName" disabled></el-input>
         </el-form-item>
-        <el-form-item label="人员名称" prop="peopleId">
+        <el-form-item label="申请人员" prop="peopleId">
           <el-input v-model="forms.peopleName" disabled></el-input>
         </el-form-item>
+        <el-form-item label="带车人员" prop="peopleId">
+          <el-input v-model="forms.pepelonamed" disabled></el-input>
+        </el-form-item>
         <el-form-item label="人数" prop="peopleCount">
           <el-input v-model="forms.peopleCount" disabled />
         </el-form-item>
@@ -592,6 +620,7 @@ import {
 import { getDicts } from "@/api/system/dict/data";
 import { listDriver } from "@/api/militaryvehicleManagement/driver";
 import { getAll } from "@/api/grassrootsregistration/bdglmeeting";
+import { getAllDept } from "@/api/peopleChuRu/bdglLeave";
 
 // 导入树形结构
 import Treeselect from "@riophae/vue-treeselect";
@@ -692,6 +721,8 @@ export default {
       driverLists: [],
       // 出车获取车辆列表
       chePaiList: [],
+      // 带车人员列表
+      daiList: [],
     };
   },
   created() {
@@ -705,6 +736,12 @@ export default {
     this.chePai();
   },
   methods: {
+    // 获取带车人信息
+    getDaiAll() {
+      getAll().then((res) => {
+        this.daiList = res.data;
+      });
+    },
     // 获取车牌号翻译
     chePai() {
       listThebus().then((res) => {
@@ -756,7 +793,7 @@ export default {
     },
     //  获取单位列表
     getTreeList() {
-      getDept().then((res) => {
+      getAllDept().then((res) => {
         this.treeList = res.data;
       });
     },
@@ -916,6 +953,7 @@ export default {
       this.reset();
       this.getCar();
       this.getSi();
+      this.getDaiAll();
       this.openes = true;
       var today = new Date();
       var y = today.getFullYear();

+ 9 - 3
src/views/monitoring/brigadecamera/index.vue

@@ -23,7 +23,7 @@
           >
             <div class="title">{{ item.cameraname }}</div>
           </div>
-          <div style="margin-top: 8px; margin-left: -14px;">
+          <div style="margin-top: 8px; margin-left: -14px">
             <el-button
               size="btcks"
               @click.prevent="handleUpdate(item)"
@@ -36,7 +36,13 @@
     </div>
 
     <!-- 添加或修改摄像头管理对话框 -->
-    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
+    <el-dialog
+      :title="title"
+      :visible.sync="open"
+      width="500px"
+      append-to-body
+      :close-on-click-modal="false"
+    >
       <el-form
         ref="form"
         :model="form"
@@ -131,7 +137,7 @@ export default {
   },
   methods: {
     opens(url) {
-     window.open(url) 
+      window.open(url);
       console.log(url);
     },
     /** 查询摄像头管理列表 */

+ 1 - 1
src/views/peopleChuRu/bdglLeave/index.vue

@@ -377,7 +377,7 @@
             size="btc"
             type="text"
             @click="handleGuiDui(scope.row)"
-            v-hasPermi="['peopleChuRu:bdglLeave:edit']"
+            v-hasPermi="['peopleChuRu:bdglLeave:guidui']"
             >归队</el-button
           >
         </template>

+ 30 - 9
src/views/peopleChuRu/leaveOne/index.vue

@@ -67,10 +67,10 @@
       :data="leaveOneList"
       :header-cell-style="{ background: '#003C69', color: 'white' }"
       @selection-change="handleSelectionChange"
-      :cell-class-name="row=>row.row.statusun==1?'baccolor':''"
+      :cell-class-name="(row) => (row.row.statusun == 1 ? 'baccolor' : '')"
     >
-      <el-table-column type="selection" width="55" align="center"/>
-      <el-table-column label="序号" align="center" type="index"  />
+      <el-table-column type="selection" width="55" align="center" />
+      <el-table-column label="序号" align="center" type="index" />
       <el-table-column label="请假人员" align="center" prop="peopleId" />
       <el-table-column
         label="单位"
@@ -325,10 +325,10 @@
           </el-select>
         </el-form-item>
         <el-form-item label="批准部门" prop="approvalDepartment">
-          <treeselect
+          <el-input
             v-model="form1.approvalDepartment"
-            :options="deptOptions"
-            placeholder="请选择批准部门"
+            type="text"
+            placeholder="请输入批准部门人"
           />
         </el-form-item>
         <el-form-item label="请假类型" prop="leaveType">
@@ -502,7 +502,18 @@ export default {
       // 表单参数
       form: {},
       // 表单校验
-      rules: {},
+      rules: {
+        startTime: [
+          { required: true, message: "开始不能为空", trigger: "blur" },
+        ],
+        unitId: [{ required: true, message: "单位不能为空", trigger: "blur" }],
+        peopleId: [
+          { required: true, message: "请假人员不能为空", trigger: "blur" },
+        ],
+        approvalDepartment: [
+          { required: true, message: "批准部门人不能为空", trigger: "blur" },
+        ],
+      },
       // 树形结构列表
       deptOptions: [],
       renYuan: [],
@@ -520,6 +531,16 @@ export default {
         returnTime: [
           { required: true, message: "归队时间不能为空", trigger: "blur" },
         ],
+        startTime: [
+          { required: true, message: "开始不能为空", trigger: "blur" },
+        ],
+        unitId: [{ required: true, message: "单位不能为空", trigger: "blur" }],
+        peopleId: [
+          { required: true, message: "请假人员不能为空", trigger: "blur" },
+        ],
+        approvalDepartment: [
+          { required: true, message: "批准部门人不能为空", trigger: "blur" },
+        ],
       },
       open1: false,
     };
@@ -799,7 +820,7 @@ export default {
 ::v-deep .el-form-item__label {
   font: 16px;
   color: #fff;
-  width: 100px !important;
+  width: 108px !important;
 }
 ::v-deep .el-input__inner {
   /* width: 200px !important;
@@ -942,7 +963,7 @@ export default {
   background: transparent !important;
 }
 
-::v-deep .baccolor{
+::v-deep .baccolor {
   color: rgb(255, 73, 73) !important;
 }
 </style>

+ 1 - 1
src/views/peopleChuRu/peopleBorrow/index.vue

@@ -149,7 +149,7 @@
             v-if="scope.row.common == '1'"
             size="btu"
             type="text"
-            v-hasPermi="['peopleChuRu:peopleBorrow:edit']"
+            v-hasPermi="['peopleChuRu:bdglLeave:guidui']"
             @click="handle(scope.row)"
             >归队</el-button
           >

+ 0 - 1
src/views/pt.vue

@@ -838,7 +838,6 @@ export default {
     // 获取提示信息
     getTiXing() {
       remindPrint().then((res) => {
-        console.log(res);
         this.opentitel = res.msg;
         if (res.num == 0) {
           this.open6 = false;