| 
					
				 | 
			
			
				@@ -0,0 +1,604 @@ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  <div class="calendar-dialog"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <el-row :gutter="10"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <!--table数据--> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      <el-col :span="24" :xs="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        <div class="main-right-box"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <!--    搜索条件    --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <div class="main-search-box"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <el-form 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :model="queryParams" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              ref="queryForm" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              size="small" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              :inline="true" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              v-show="showSearch" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <el-form-item label="机构名称"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <org-tree 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  v-model="queryParams.orgId" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  @defaultKey="getDefaultKey" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  @checkChange="changeCheckBox" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  @click="handleNodeClick" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  :showCheckSub='false' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  :defaultCheckSub='false' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  ref="orgTree" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                ></org-tree> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </el-form-item>              
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </el-form>   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          <div style="display:flex;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div style="width:65%"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <el-calendar v-model="calendarDate"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <!-- <template 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  slot="dateCell" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  slot-scope="{date, data}"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <p :class="data.isSelected ? 'is-selected' : ''"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    {{ data.day.split('-').slice(1).join('-') }} {{ data.isSelected ? '✔️' : ''}} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </p> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </template> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <template slot="dateCell" slot-scope="{date, data}"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <div class="card-group" @click="selectedDate(data)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div :class="data.isSelected ? 'is-selected card-calendar-text' : 'card-calendar-text'"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <span>{{ getDate(data.day) }}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-icon class="el-icon-check" v-if="data.isSelected"></el-icon> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-if="isSetedWorkTime(data)" style="height:100%"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <span v-for="(item, index) in tableList" :key="index" class="card"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <div v-if="item.ymdDate === data.day" class="card-flag"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <div :class="getDayClass(data,item)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <span>{{ getDate(data.day) }}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-icon class="el-icon-check" v-if="data.isSelected"></el-icon> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <div :class="'card'+getColorIndexByWorkTime(item)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <div class="visits-val">{{item.isDuty==='1' ?'值班':''}}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <div v-else style="height:100%"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <span class="card"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <div class="card-flag"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <div :class="getDayClass(data,null)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <span>{{ getDate(data.day) }}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-icon class="el-icon-check" v-if="data.isSelected"></el-icon> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <div :class="'card'+getColorIndexByWorkTime(null)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <div class="visits-val">{{''}}</div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </el-calendar> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            <div style="width:35%;background-color: #fff;margin-left: 10px;box-shadow: 2px 2px 8px #ccc;"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              <el-form :model="formData" :rules="formData.isEnable?formDataRules:{}" size="small" ref="form" label-position="right" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                 label-width="120px" label-prefix=":"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                <el-row :gutter="20"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <!-- <el-col :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item prop="orgName" label="机构:" > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <span>{{formData.orgName}}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col> --> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-col :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item label="日期:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <span >{{formData.ymdDate}}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-col :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item label="星期:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <span>{{parseTime(formData.ymdDate,"dddd")}}</span> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-col :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item prop="isEnable" label="状态:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <template > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-radio-group v-model="formData.isEnable" @change="onEnableChange(formData)"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-radio text-color="#48bb78" label="1">营业</el-radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-radio text-color="#f56565" label="0">歇业</el-radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-radio-group> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-col :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item prop="isEnable" label="值班打卡:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <template > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-radio-group v-model="formData.isDuty"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-radio text-color="#48bb78" label="1">是</el-radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          <el-radio text-color="#f56565" label="0">否</el-radio> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        </el-radio-group> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-col v-if="formData.isEnable == '1'" :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item prop="workTime" label="上班时间:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <template > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-time-select 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            :picker-options="pickerOptions" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                            v-model="formData.workTime"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-col v-if="formData.isEnable == '1'" :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item prop="workOffTime" label="下班时间:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <template > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-time-select 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :picker-options="pickerOptions" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          v-model="formData.workOffTime"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-col v-if="formData.isEnable == '1'" :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item prop="openTime" label="营业开始:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <template > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-time-select 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :picker-options="pickerOptions" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          v-model="formData.openTime"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-col v-if="formData.isEnable == '1'" :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item prop="closeTime" label="营业结束:"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <template > 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                        <el-time-select 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          :picker-options="pickerOptions" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                          v-model="formData.closeTime"/> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      </template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-col :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-button type="primary" @click="onSubmit">保存</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col>   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  <el-col :span="24"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                    <el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                      <el-button type="primary" @click="submitCopyMouth">复制到全月并保存</el-button> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-form-item> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                  </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+                </el-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+              </el-form> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            </div>      
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        </div>  
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+         
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      </el-col> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    </el-row> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    <dialog-template ref="modalTemplate" @ok="getList"></dialog-template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  </div> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</template> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import OrgTree from "@/components/orgTree/orgQuerySelector.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { mapGetters } from "vuex"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import { tableList } from "./api"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import DataRangePicker from "@/components/dateTime/daterange.picker.vue"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import dayjs from "dayjs"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import {timeCheck }from '@/utils/ruoyi' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import {editWorkTime,addWorkTimeDay} from "@/views/system/workTimeSet/api"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+import DialogTemplate from './dialog.template' 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+//初始化查询日期 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// let sDate =new Date(dayjs().subtract(1, 'month').startOf('month')); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// let eDate =  new Date(dayjs().add(1, 'month').endOf('month')); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+export default { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  // emits: ['selectedDate'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  /**  得先引入字典才能使用 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  dicts: ["sys_business_type",'sys_org_type'], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  /** 引入基础minxins*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  components: { DataRangePicker, OrgTree,DialogTemplate}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  data() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      nowTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      isLoadedCalendarDate:false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 遮罩层 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      loading: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      calendarDate:new Date(), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      tableList: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 显示搜索条件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      showSearch: true, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // 查询参数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      queryParams: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        checkSub: false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        orgId: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pageNum: 1, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        pageSize: 200, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        range: [new Date(dayjs().subtract(1, 'month').startOf('month')), new Date(dayjs().add(1, 'month').endOf('month'))], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        noWorkTime:false, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      formData: {}, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      formDataRules: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        isEnable: [{ required: true, message: "请选择状态" }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        workTime: [{ required: true, message: "请输入上班时间" }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        workOffTime: [{ required: true, message: "请输入下班时间" }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        openTime: [{ required: true, message: "请输入营业开始时间" }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        closeTime: [{ required: true, message: "请输入营业结束时间" }], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  mounted(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let prevBtn = document.querySelector( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ".el-calendar__button-group .el-button-group>button:nth-child(1)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      prevBtn.addEventListener("click", () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.judgeDate(this.calendarDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let dayBtn = document.querySelector( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ".el-calendar__button-group .el-button-group>button:nth-child(2)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      dayBtn.addEventListener("click", () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.judgeDate(this.calendarDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let nextBtn = document.querySelector( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ".el-calendar__button-group .el-button-group>button:nth-child(3)" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      nextBtn.addEventListener("click", () => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.judgeDate(this.calendarDate); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let parent = document.querySelector( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      ".el-calendar__header .el-calendar__button-group .el-button-group" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     // 创建一个颜色含义图示 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let btnDuty =  this.createButton("营业","#4AAE50","10px"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let btnUnDuty =  this.createButton("歇业","#9E4646","10px"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let btnUnSetWorkTime =  this.createButton("未配置","#B7ACAC","100px"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    let btnTemplate =  this.createButton("模板配置","#008CD6","10px"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    btnTemplate.onclick = function(){ // 触发事件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      showWorkTimeTemp(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    var that = this 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    function showWorkTimeTemp(){ // 事件内容 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      that.showTemplateDailog(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    parent.insertBefore(btnTemplate,parent.firstChild);    
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    parent.insertBefore(btnUnSetWorkTime,parent.firstChild);     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    parent.insertBefore(btnUnDuty,parent.firstChild); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    parent.insertBefore(btnDuty,parent.firstChild); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  computed: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    ...mapGetters(["orgId"]), 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    pickerOptions() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        start: "00:00", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        end: "24:00", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        step: "00:05", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  created() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    this.getNowTime(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  watch:{     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    calendarDate(val, oldVal) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if (val && 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        dayjs(val).format("YYYY-MM") != dayjs(oldVal).format("YYYY-MM")) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        console.log("calendarDate",val); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.judgeDate(val); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  methods: { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    dayjs, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    createButton(btnContent,backgroundColor,marginRight) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let button = document.createElement("button") 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      button.type = 'button' // 类型 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      button.className = 'el-button el-button--plain el-button--mini' // Calendar默认按钮样式 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      button.textContent = btnContent // 文本 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      button.style.cssText = `background-color: ${backgroundColor};color:white;margin-left:auto;margin-right:${marginRight}` // 样式 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return button; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    showTemplateDailog () { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.$refs.modalTemplate.show(this.queryParams.orgId); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    judgeDate(calendarDate){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log("judgeDate calendarDate",dayjs(calendarDate).format("YYYY-MM-DD")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let sDate =new Date(dayjs(calendarDate).subtract(1, 'month').startOf('month')); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let eDate =  new Date(dayjs(calendarDate).add(1, 'month').endOf('month')); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.range=[sDate,eDate]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    selectedDate(data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log('selectedDate--->prefix', data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      loadFormData(data.day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    loadFormData(day) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // console.log('selectedDate--->prefix', data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let selectedData = null 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if(this.tableList && this.tableList.length>0 ){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let index= this.tableList.findIndex(x=>x.ymdDate===day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(index>-1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          selectedData=this.tableList[index] 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.formData = selectedData; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.formData =this.reset(day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      else{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        this.formData =this.reset(day); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log('selectedDate--->suffix', selectedData) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    firstLoadFormData(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if(!this.isLoadedCalendarDate){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.loadFormData(dayjs().format("YYYY-MM-DD")); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.isLoadedCalendarDate=true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    reset(day) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        orgId:this.queryParams.orgId, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        isEnable: "1", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        isDuty:"0", 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        openTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        closeTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        workTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        workOffTime: null, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ymdDate:day, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    isSetedWorkTime(data) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      // console.log("isSetedWorkTime",data,this.tableList) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if(this.tableList && this.tableList.length>0) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        // console.log("isSetedWorkTime indexOf",this.tableList.findIndex(x=>x.ymdDate === data.day)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(this.tableList.findIndex(x=>x.ymdDate === data.day)>-1) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          return true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getDayClass(data,item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let tempColorIndex =this.getColorIndexByWorkTime(item); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return data.isSelected ? 'is-selected' + ' ' + 'card-text' + tempColorIndex : 'card-text' + tempColorIndex 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getColorIndexByWorkTime(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if(item) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return item.isEnable=="1" ? "2":"3" 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      else 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        return "1"; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getDate(day) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return dayjs(day).format('DD') 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getNowTime() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const dateObj = new Date(); // 获取当前时间对象 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const year = dateObj.getFullYear(); // 获取年份 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const month = String(dateObj.getMonth() + 1).padStart(2, "0"); // 获取月份,并补齐两位数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      const day = String(dateObj.getDate()).padStart(2, "0"); // 获取日期,并补齐两位数 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.nowTime = `${year}-${month}-${day}`; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getDefaultKey(key) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.orgId = key;        
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 下穿状态改变*/ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    changeCheckBox() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.checkSub = !this.queryParams.checkSub; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /** 查询列表 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    getList() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.loading = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      console.log(this.queryParams, "pages"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      tableList(this.queryParams) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .then((response) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.tableList = response.rows; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.total = response.total; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.firstLoadFormData(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        .catch((err) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.loading = false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // 节点单击事件 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    handleNodeClick(data) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.orgId = data.id;       
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    onSubmit() { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$refs.form.validate((isValidate) => { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if (!isValidate) return; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if ( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          !timeCheck([ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.formData.workTime, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.formData.openTime, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.formData.closeTime, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            this.formData.workOffTime, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          ]) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        ) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.$message.error( 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+            `请按照(上班时间<营业时间<营业结束<下班时间)顺序配置` 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          ); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          return false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        editWorkTime(this.formData).then(res=>{ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      }); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    /* 重置搜索 */ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    resetForm(name) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.isEnable = null; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.pageNum = 1; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.pageSize = 10; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.orgId = this.orgId; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.checkSub = true; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.noWorkTime=false; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.$refs["orgTree"].setCheckSub(this.queryParams.checkSub) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.queryParams.range = [dayjs().startOf('month'), dayjs().endOf('month')]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    submitCopyMouth(){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if(!this.formData.ymdDate) return this.$message.error('请选择日期'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if(this.formData.isEnable === null) return this.$message.error('请选择营业状态'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      if(this.formData.isEnable == '1'){ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!this.formData.openTime) return this.$message.error('请选择开始时间'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!this.formData.closeTime) return this.$message.error('请选择结束时间'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!this.formData.workTime) return this.$message.error('请选择上班时间'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!this.formData.workOffTime) return this.$message.error('请选择下班时间'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!timeCheck([this.formData.openTime,this.formData.closeTime])) return this.$message.error('开始时间不能大于结束时间'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        if(!timeCheck([this.formData.workTime,this.formData.workOffTime])) return this.$message.error('上班时间不能大于下班时间'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let data = { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          orgIdList:[this.formData.orgId], 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          workTimeList:this.copyDataToMonth() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        console.log("submitCopyMouth",data); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        addWorkTimeDay(data).then(res=>{        
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+          this.getList(); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        }) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    copyDataToMonth() 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    {       
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let startOfMonthDay= dayjs(this.formData.ymdDate).startOf('month'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let endOfMonthDay= dayjs(this.formData.ymdDate).endOf('month'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      let dataList=[]; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      while(startOfMonthDay.isBefore(endOfMonthDay)) 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        let temp={ ...this.formData} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        temp.ymdDate=startOfMonthDay.format("YYYY-MM-DD"); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        dataList.push(temp); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        startOfMonthDay= startOfMonthDay.add(1,'day'); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      return dataList; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }, 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+}; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</script> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<style lang="scss"> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+// 更改elementplus组件的样式 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.calendar-dialog { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  .el-calendar-table .el-calendar-day { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    padding: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  .el-icon { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    height: 8px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  .card-group.card-calendar-text { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    justify-content: space-between; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  .el-calendar { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    box-shadow: 0 0 12px 0 #e4e7ed; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .el-calendar-table { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      thead { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+        background-color: #f5f7fa; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</style> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+<style lang="scss" scoped> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$titleHeight: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$lowColor: #4AAE50; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$middleColor: #B7ACAC; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+$heightColor: #9E4646; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@mixin card-o($bgColor) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  position: relative; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  display: block; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  font-size: 15px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  color: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  background-color: $bgColor; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+@mixin card-text-o($bgColor) { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  display: flex; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  justify-content: space-between; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  height: $titleHeight; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  max-height: $titleHeight; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  min-height: $titleHeight; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  font-size: 20px; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  color: #fff; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  background-color: $bgColor; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+.calendar-dialog { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  .card-group { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    width: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    height: 100%; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .card-calendar-text { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      height: $titleHeight; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      max-height: $titleHeight; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      min-height: $titleHeight; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .card { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      position: relative; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      top: -$titleHeight; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .card-flag { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      height: calc(100% - $titleHeight); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .card1 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      @include card-o($middleColor); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .card-text1 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      @include card-text-o($middleColor); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .card2 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      @include card-o($lowColor); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .card-text2 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      @include card-text-o($lowColor); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .card3 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      @include card-o($heightColor); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .card-text3 { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      @include card-text-o($heightColor); 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // .card1:focus, .card1:hover { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //   background-color:#33a3de 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // .card-text1:focus, .card-text1:hover { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    //   background-color:#33a3de 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    // } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    .visits-val { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      position: absolute; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      right: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      bottom: 0; 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+    } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  }   
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  .card-group:focus, .card-group:hover { 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+      background-color:#33a3de 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+  } 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+     
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+} 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+</style> 
			 | 
		
	
		
			
				 | 
				 | 
			
			
				+ 
			 |