Pārlūkot izejas kodu

Merge branch 'master' of http://47.100.37.243:10080/wutt/manHourHousekeeper

cs 2 gadi atpakaļ
vecāks
revīzija
f49b5bc818

+ 1 - 0
fhKeeper/formulahousekeeper/octopus/src/views/customer/list.vue

@@ -390,6 +390,7 @@
                 }
                 else if(i == 'H'){
                     this.editDialogH = true
+                    this.roleIdArr = []
                     this.getReoprtFormList(obj)
                     this.getRoleList(obj)
                 }

+ 2 - 1
fhKeeper/formulahousekeeper/timesheet/src/i18n/en.json

@@ -1444,5 +1444,6 @@
   "bumenchanyuqingkuang": "Project information of the departments involved",
   "can-yu-de-xiang-mu-de-shu-liang": "number of projects involved",
   "can-yu-ren-ci": "Number of participants",
-  "chu-cha-de-tian-shu": "Days of business trip"
+  "chu-cha-de-tian-shu": "Days of business trip",
+  "xiang-mu-chuang-jian-shi-jian-duan": "Project Creation Period"
 }

+ 2 - 1
fhKeeper/formulahousekeeper/timesheet/src/i18n/zh.json

@@ -1444,5 +1444,6 @@
   "bumenchanyuqingkuang": "部门参与项目情况表",
   "can-yu-de-xiang-mu-de-shu-liang": "参与的项目的数量",
   "can-yu-ren-ci": "参与人次",
-  "chu-cha-de-tian-shu": "出差的天数"
+  "chu-cha-de-tian-shu": "出差的天数",
+  "xiang-mu-chuang-jian-shi-jian-duan": "项目创建时间段"
 }

+ 6 - 4
fhKeeper/formulahousekeeper/timesheet/src/views/Home.vue

@@ -547,10 +547,12 @@
                                                 console.log(result, '请求微信成功')
                                                 console.log(window, 'window')
                                                 //  wx.agentConfig成功回调后,WWOpenData 才会注入到 window 对象上面
-                                                window.WWOpenData.bind(document.querySelector('ww-open-data'))
-                                                if (WWOpenData.initCanvas) {
-                                                    WWOpenData.initCanvas()
-                                                    console.log('我企业微信 canvas 应该执行了吧')
+                                                if(window.WWOpenData) {
+                                                    window.WWOpenData.bind(document.querySelector('ww-open-data'))
+                                                    if (WWOpenData.initCanvas) {
+                                                        WWOpenData.initCanvas()
+                                                        console.log('我企业微信 canvas 应该执行了吧')
+                                                    }
                                                 }
                                             },
                                             fail: function (res) {

+ 3 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/corpreport/list.vue

@@ -71,7 +71,9 @@
         <!-- 时间段筛选 -->
           <template v-if="ins == 6 || ins == 8 || ins == 9 || ins == 10 || ins == 11 || ins == 12 || ins == 15">
             <span>
-              <span class="demonstration" style="color:#999;padding:0 10px">{{ $t('message.period') }}</span>
+              <span class="demonstration" style="color:#999;padding:0 10px">
+                {{ ins == 15 ? $t('xiang-mu-chuang-jian-shi-jian-duan') : $t('message.period') }}
+              </span>
               <el-date-picker v-model="rangeDatas" type="daterange" value-format="yyyy-MM-dd" :placeholder="$t('selectstartdate')" @change="picks()" :range-separator="$t('other.to')" :start-placeholder="$t('time.startDate')" :end-placeholder="$t('time.endDate')" style="width:300px" :clearable="ins == 15" size="small"> </el-date-picker>
             </span>
           </template>

+ 8 - 4
fhKeeper/formulahousekeeper/timesheet/src/views/leave/list.vue

@@ -112,7 +112,7 @@
                         </span> 
                     </el-select>
 
-                    <selectCat v-if="user.userNameNeedTranslate == 1" :size="'small'" :subject="users" :subjectId="addForm.ownerId" :distinction="'1'" :disabled="true" @selectCal="selectCal"></selectCat>
+                    <selectCat v-if="user.userNameNeedTranslate == 1" :size="'medium'" :widthStr="'240'" :subject="users" :subjectId="addForm.ownerId" :distinction="'1'" :disabled="true" @selectCal="selectCal"></selectCat>
 
                 </el-form-item>
                 <!-- 电话 -->
@@ -128,7 +128,7 @@
                 </el-form-item>
                 <!-- 选择审批人 -->
                 <el-form-item :label="$t('approver')" style="width:300px" prop="projectAuditorJson">
-                    <el-select style="display:inline-block;width:250px;" multiple v-model="addForm.projectAuditorJson" :placeholder="$t('defaultText.pleaseChoose')">
+                    <el-select style="display:inline-block;width:250px;" multiple v-model="addForm.projectAuditorJson" :placeholder="$t('defaultText.pleaseChoose')" v-if="user.userNameNeedTranslate != 1">
                       <el-option
                       v-for="item in approverList"
                       :key="item.id"
@@ -137,7 +137,7 @@
                       ></el-option>
                     </el-select>
 
-                    <!-- <selectCat v-if="user.userNameNeedTranslate != 1" :size="'small'" :subject="users" :subjectId="addForm.ownerId" :distinction="'1'" :disabled="false" @selectCal="selectCal"></selectCat> -->
+                     <selectCat v-if="user.userNameNeedTranslate == 1" :size="'medium'" :multiSelect="true" :widthStr="'250'" :subject="users" :subjectId="addForm.ownerId" :distinction="'2'" @selectCal="selectCal"></selectCat>
                 </el-form-item>
                 <!-- 时间选择 -->
                 <el-form-item :label="flg ? $t('optiondate') : $t('other.timeSelection')" style="width: 100%;">
@@ -1913,7 +1913,11 @@ export default {
         this.addForm.ownerId = obj.id
         this.txselts(obj.other, obj.id)
       } else if(obj.distinction == '2') {
-
+        let arr = []
+        for(let i in obj.arrUserList) {
+          arr.push(obj.arrUserList[i].id)
+        }
+        this.addForm.projectAuditorJson = arr
       } else if(obj.distinction == '3') {
         this.ownerIds = obj.id
         this.chufas()

+ 3 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/project/info.vue

@@ -711,7 +711,9 @@
                 statusTxt: [this.$t('all'),this.$t('ongoing'),this.$t('state.completed'),this.$t('state.undone')],
                 mileStoneList:[],
                 reverse:false,
-                project:{},
+                project:{
+                    auditorList: []
+                },
                 addFolderDialog: false,
                 upLoading:false,
                 keyword:null,

+ 292 - 290
fhKeeper/formulahousekeeper/timesheet/src/views/project/list.vue

@@ -400,319 +400,321 @@
         </el-col>
 
         <!--新增界面-->
-        <el-dialog :title="title" v-if="addFormVisible" :visible.sync="addFormVisible" :close-on-click-modal="false" customClass="customWidth" width="960px">
-            <el-form ref="form1" :model="addForm" :rules="rules" label-width="120px">
-                <el-form-item :label="$t('Itemno')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
-                    <!-- <el-input v-model="addForm.code" :disabled="!permissions.projectManagement && addForm.creatorId != user.id" placeholder="请输入项目编号" clearable></el-input> -->
-                    <el-input v-model="addForm.code" :placeholder="$t('peaseenterthe')" clearable></el-input>
-                </el-form-item>
-                 <el-form-item :label="$t('zhu-xiang-mu')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" v-if="user.timeType.mainProjectState == '1'">
-                    <!-- <el-select v-model="addForm.projectMainId" clearable :disabled="!permissions.projectManagement && addForm.creatorId != user.id" @change="projectManagementChange"> -->
-                    <el-select v-model="addForm.projectMainId" clearable @change="projectManagementChange">
-                        <el-option v-for="(item) in mainProjectList" :key="item.id" :value="item.id" :label="item.name + '\u3000' + item.code">
-                            <span style="float: left; color: #8492a6; font-size: 13px;">{{ item.code }}</span>
-                            <span style="float: right;margin-left: 20px">{{ item.name }}</span>
-                        </el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item :label="$t('projectclassification')" v-if="user.timeType.mainProjectState != '1'">
-                    <!-- <el-select v-model="addForm.category"  style="width:32%;" clearable :disabled="!permissions.projectManagement && addForm.creatorId != user.id"> -->
-                    <el-select v-model="addForm.category"  style="width:32%;" clearable filterable>
-                        <el-option v-for="(item) in baseClfList" :key="item.id" :value="item.id" :label="item.name"></el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item :label="$t('headerTop.projectName')" prop="name">
-                    <!-- <el-input v-model="addForm.name" :disabled="!permissions.projectManagement && addForm.creatorId != user.id" placeholder="请输入项目名称" clearable></el-input> -->
-                    <el-input v-model="addForm.name" :placeholder="$t('peaseenterthe')" clearable></el-input>
-                </el-form-item>
-                <el-form-item :label="$t('other.projectDescription')" prop="projectDesc">
-                    <!-- <el-input v-model="addForm.projectDesc" :disabled="!permissions.projectManagement && addForm.creatorId != user.id" placeholder="请输入项目描述" clearable maxlength="4000"></el-input> -->
-                    <el-input v-model="addForm.projectDesc" :placeholder="$t('peaseenterthe')" clearable maxlength="4000"></el-input>
-                </el-form-item>
-                <el-form-item :label="$t('projecttype')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" prop="isPublic">
-                    <!-- <el-select v-model="addForm.isPublic" style="width:32%;" @change="selectPublic" :disabled="!permissions.projectManagement && addForm.creatorId != user.id"> -->
-                    <el-select v-model="addForm.isPublic" style="width:32%;" @change="selectPublic">
-                        <el-option :value="0" :label="$t('commonproject')"></el-option>
-                        <el-option :value="1" :label="$t('publicprojects')"></el-option>
-                    </el-select>
-                    <el-tooltip effect="dark" :content="$t('ordinaryprojectsareopen')" placement="top-start">
-                    <i class="el-icon-question"></i>
-                    </el-tooltip>
-                    <div v-if="user.company.packageCustomer == 1" style="display: inline-block;width: 50%">
-                        <span style="margin-left:63px;margin-right:10px;" >{{ $t('ke-hu') }}</span>
-                        <el-select v-model="addForm.customerId" clearable="true" filterable :placeholder="$t('defaultText.pleaseChoose')" style="width:70%;" >
-                            <el-option v-for="item in customerList" :key="item.id" :label="item.customerName" :value="item.id"></el-option>
+        <el-dialog :title="title" v-if="addFormVisible" :visible.sync="addFormVisible" :close-on-click-modal="false" customClass="customWidth" width="960px" :top="'6vh'">
+            <div style="height: 72vh;overflow: auto;">
+                <el-form ref="form1" :model="addForm" :rules="rules" label-width="120px">
+                    <el-form-item :label="$t('Itemno')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
+                        <!-- <el-input v-model="addForm.code" :disabled="!permissions.projectManagement && addForm.creatorId != user.id" placeholder="请输入项目编号" clearable></el-input> -->
+                        <el-input v-model="addForm.code" :placeholder="$t('peaseenterthe')" clearable></el-input>
+                    </el-form-item>
+                    <el-form-item :label="$t('zhu-xiang-mu')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" v-if="user.timeType.mainProjectState == '1'">
+                        <!-- <el-select v-model="addForm.projectMainId" clearable :disabled="!permissions.projectManagement && addForm.creatorId != user.id" @change="projectManagementChange"> -->
+                        <el-select v-model="addForm.projectMainId" clearable @change="projectManagementChange">
+                            <el-option v-for="(item) in mainProjectList" :key="item.id" :value="item.id" :label="item.name + '\u3000' + item.code">
+                                <span style="float: left; color: #8492a6; font-size: 13px;">{{ item.code }}</span>
+                                <span style="float: right;margin-left: 20px">{{ item.name }}</span>
+                            </el-option>
                         </el-select>
-                    </div>
-                </el-form-item>
+                    </el-form-item>
+                    <el-form-item :label="$t('projectclassification')" v-if="user.timeType.mainProjectState != '1'">
+                        <!-- <el-select v-model="addForm.category"  style="width:32%;" clearable :disabled="!permissions.projectManagement && addForm.creatorId != user.id"> -->
+                        <el-select v-model="addForm.category"  style="width:32%;" clearable filterable>
+                            <el-option v-for="(item) in baseClfList" :key="item.id" :value="item.id" :label="item.name"></el-option>
+                        </el-select>
+                    </el-form-item>
+                    <el-form-item :label="$t('headerTop.projectName')" prop="name">
+                        <!-- <el-input v-model="addForm.name" :disabled="!permissions.projectManagement && addForm.creatorId != user.id" placeholder="请输入项目名称" clearable></el-input> -->
+                        <el-input v-model="addForm.name" :placeholder="$t('peaseenterthe')" clearable></el-input>
+                    </el-form-item>
+                    <el-form-item :label="$t('other.projectDescription')" prop="projectDesc">
+                        <!-- <el-input v-model="addForm.projectDesc" :disabled="!permissions.projectManagement && addForm.creatorId != user.id" placeholder="请输入项目描述" clearable maxlength="4000"></el-input> -->
+                        <el-input v-model="addForm.projectDesc" :placeholder="$t('peaseenterthe')" clearable maxlength="4000"></el-input>
+                    </el-form-item>
+                    <el-form-item :label="$t('projecttype')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" prop="isPublic">
+                        <!-- <el-select v-model="addForm.isPublic" style="width:32%;" @change="selectPublic" :disabled="!permissions.projectManagement && addForm.creatorId != user.id"> -->
+                        <el-select v-model="addForm.isPublic" style="width:32%;" @change="selectPublic">
+                            <el-option :value="0" :label="$t('commonproject')"></el-option>
+                            <el-option :value="1" :label="$t('publicprojects')"></el-option>
+                        </el-select>
+                        <el-tooltip effect="dark" :content="$t('ordinaryprojectsareopen')" placement="top-start">
+                        <i class="el-icon-question"></i>
+                        </el-tooltip>
+                        <div v-if="user.company.packageCustomer == 1" style="display: inline-block;width: 50%">
+                            <span style="margin-left:63px;margin-right:10px;" >{{ $t('ke-hu') }}</span>
+                            <el-select v-model="addForm.customerId" clearable="true" filterable :placeholder="$t('defaultText.pleaseChoose')" style="width:70%;" >
+                                <el-option v-for="item in customerList" :key="item.id" :label="item.customerName" :value="item.id"></el-option>
+                            </el-select>
+                        </div>
+                    </el-form-item>
 
-                <el-form-item :label="$t('subordinatedepartments')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" v-if="user.timeType.projectWithDept">
-                    <el-cascader v-model="addForm.deptId" :options="departmentList" :placeholder="$t('defaultText.pleaseChoose')"
-                        :props="{ checkStrictly: true, expandTrigger: 'hover' }" clearable filterable @change="cascaderChange" style="width: 100%"
-                    ></el-cascader>
-                </el-form-item>
+                    <el-form-item :label="$t('subordinatedepartments')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" v-if="user.timeType.projectWithDept">
+                        <el-cascader v-model="addForm.deptId" :options="departmentList" :placeholder="$t('defaultText.pleaseChoose')"
+                            :props="{ checkStrictly: true, expandTrigger: 'hover' }" clearable filterable @change="cascaderChange" style="width: 100%"
+                        ></el-cascader>
+                    </el-form-item>
 
-                <!-- 供应商 -->
-                <!-- <el-form-item label="供应商" v-if="user.company.packageProvider">
-                    <el-select v-model="addForm.supplierId" multiple collapse-tags style="width:32%;" placeholder="请选择供应商">
-                        <el-option v-for="item in supplierList" :key="item.id" :label="item.providerName" :value="item.id">
-                        </el-option>
-                    </el-select>
-                </el-form-item> -->
-                <el-form-item :label="$t('supplier')" v-if="user.company.packageProvider">
-                    <el-select v-model="addForm.supplierId" multiple :placeholder="$t('defaultText.pleaseChoose')" filterable="true" style="width: 100%">
-                        <span v-for="(item, index) in supplierList" :key="index">
-                            <el-option :label="item.providerName" :value="item.id"></el-option>
-                        </span> 
-                    </el-select>
-                </el-form-item>
+                    <!-- 供应商 -->
+                    <!-- <el-form-item label="供应商" v-if="user.company.packageProvider">
+                        <el-select v-model="addForm.supplierId" multiple collapse-tags style="width:32%;" placeholder="请选择供应商">
+                            <el-option v-for="item in supplierList" :key="item.id" :label="item.providerName" :value="item.id">
+                            </el-option>
+                        </el-select>
+                    </el-form-item> -->
+                    <el-form-item :label="$t('supplier')" v-if="user.company.packageProvider">
+                        <el-select v-model="addForm.supplierId" multiple :placeholder="$t('defaultText.pleaseChoose')" filterable="true" style="width: 100%">
+                            <span v-for="(item, index) in supplierList" :key="index">
+                                <el-option :label="item.providerName" :value="item.id"></el-option>
+                            </span> 
+                        </el-select>
+                    </el-form-item>
 
-                <el-form-item :label="yonghuUser.customDegreeName" v-if="yonghuUser.customDegreeActive == 1">
-                    <el-select v-model="auseList" multiple :placeholder="$t('defaultText.pleaseChoose')" filterable="true" style="width: 100%">
-                        <span v-for="(item, index) in ause" :key="index">
-                        <el-option :label="item.name" :value="item.id"></el-option>
-                        </span> 
-                    </el-select>
-                </el-form-item>
-                <!-- <el-form-item label="客户" v-if="user.company.packageCustomer == 1">
-                    <el-select v-model="addForm.customerId" clearable="true" filterable placeholder="请选择客户" style="width:100%;" >
-                        <el-option v-for="item in customerList" :key="item.id" :label="item.customerName" :value="item.id"></el-option>
-                    </el-select>
-                </el-form-item> -->
-                <el-form-item :label="$t('Allparticipants')" v-show="addForm.isPublic == 0" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
-                    <el-tooltip placement="top" effect="light" v-if="user.userNameNeedTranslate != 1">
+                    <el-form-item :label="yonghuUser.customDegreeName" v-if="yonghuUser.customDegreeActive == 1">
+                        <el-select v-model="auseList" multiple :placeholder="$t('defaultText.pleaseChoose')" filterable="true" style="width: 100%">
+                            <span v-for="(item, index) in ause" :key="index">
+                            <el-option :label="item.name" :value="item.id"></el-option>
+                            </span> 
+                        </el-select>
+                    </el-form-item>
+                    <!-- <el-form-item label="客户" v-if="user.company.packageCustomer == 1">
+                        <el-select v-model="addForm.customerId" clearable="true" filterable placeholder="请选择客户" style="width:100%;" >
+                            <el-option v-for="item in customerList" :key="item.id" :label="item.customerName" :value="item.id"></el-option>
+                        </el-select>
+                    </el-form-item> -->
+                    <el-form-item :label="$t('Allparticipants')" v-show="addForm.isPublic == 0" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
+                        <el-tooltip placement="top" effect="light" v-if="user.userNameNeedTranslate != 1">
 
-                        <div slot="content" style="width:780px">{{addForm.userNames}}</div>
-                        <el-input  @focus="showChooseMembTree" v-model="addForm.userNames"></el-input>
-                    </el-tooltip>
-                    <el-tooltip placement="top" effect="light" v-if="user.userNameNeedTranslate == 1">
-                        <div slot="content" style="width:780px">
-                            <span v-for="(item, index) in addFormUserNames" :key="index">
-                                <!-- {{item}} -->
-                                <ww-open-data type='userName' :openid='item'></ww-open-data>
-                                <span v-if="index < addFormUserNames.length - 1">,</span>
-                            </span>
-                        </div>
-                        <div @click="showChooseMembTree" style="width: 800px;overflow:hidden;white-space:nowrap;height:40px;border: 1px solid #DCDFE6;border-radius: 4px;box-sizing: border-box;padding: 0 10px">
-                            <span v-for="(item, index) in addFormUserNames" :key="index">
-                                <!-- {{item}} -->
-                                <ww-open-data type='userName' :openid='item'></ww-open-data>
-                                <span v-if="index < addFormUserNames.length - 1">,</span>
-                            </span>
-                        </div>
-                    </el-tooltip>
-                </el-form-item>
-                <el-form-item :label="$t('projectmanager')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
-                    <!-- <el-select v-model="addForm.inchargerId"  :disabled="(addForm.userId.length==0 && addForm.isPublic == 0) || (!permissions.projectManagement && user.id != addForm.creatorId)" filterable placeholder="请选择项目经理" style="width:32%;" > -->
+                            <div slot="content" style="width:780px">{{addForm.userNames}}</div>
+                            <el-input  @focus="showChooseMembTree" v-model="addForm.userNames"></el-input>
+                        </el-tooltip>
+                        <el-tooltip placement="top" effect="light" v-if="user.userNameNeedTranslate == 1">
+                            <div slot="content" style="width:780px">
+                                <span v-for="(item, index) in addFormUserNames" :key="index">
+                                    <!-- {{item}} -->
+                                    <ww-open-data type='userName' :openid='item'></ww-open-data>
+                                    <span v-if="index < addFormUserNames.length - 1">,</span>
+                                </span>
+                            </div>
+                            <div @click="showChooseMembTree" style="width: 800px;overflow:hidden;white-space:nowrap;height:40px;border: 1px solid #DCDFE6;border-radius: 4px;box-sizing: border-box;padding: 0 10px">
+                                <span v-for="(item, index) in addFormUserNames" :key="index">
+                                    <!-- {{item}} -->
+                                    <ww-open-data type='userName' :openid='item'></ww-open-data>
+                                    <span v-if="index < addFormUserNames.length - 1">,</span>
+                                </span>
+                            </div>
+                        </el-tooltip>
+                    </el-form-item>
+                    <el-form-item :label="$t('projectmanager')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
+                        <!-- <el-select v-model="addForm.inchargerId"  :disabled="(addForm.userId.length==0 && addForm.isPublic == 0) || (!permissions.projectManagement && user.id != addForm.creatorId)" filterable placeholder="请选择项目经理" style="width:32%;" > -->
 
-                    <el-select v-if="user.userNameNeedTranslate != 1" v-model="addForm.inchargerId" filterable :placeholder="$t('defaultText.pleaseChoose')" style="width:32%;" >
-                        <el-option v-for="item in participator" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
+                        <el-select v-if="user.userNameNeedTranslate != 1" v-model="addForm.inchargerId" filterable :placeholder="$t('defaultText.pleaseChoose')" style="width:32%;" >
+                            <el-option v-for="item in participator" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                        </el-select>
 
-                    <selectCat v-if="user.userNameNeedTranslate == 1" :size="'medium'" :subject="participator" :subjectId="addForm.inchargerId" :distinction="'3'" @selectCal="selectCal"></selectCat>
+                        <selectCat v-if="user.userNameNeedTranslate == 1" :size="'medium'" :subject="participator" :subjectId="addForm.inchargerId" :distinction="'3'" @selectCal="selectCal"></selectCat>
 
-                </el-form-item>
-                <el-form-item :label="$t('newspaperauditor')" v-show="user.timeType.reportAuditType==0">
-                    <el-select v-if="user.userNameNeedTranslate != '1'" v-model="addForm.auditUserIds" multiple="true" :disabled=" !(permissions.projectManagement|| user.id == addForm.inchargerId || user.id == addForm.creatorId)" filterable :placeholder="$t('defaultistheprojectleader')" style="width:100%;" >
-                        <el-option v-for="item in participator" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
+                    </el-form-item>
+                    <el-form-item :label="$t('newspaperauditor')" v-show="user.timeType.reportAuditType==0">
+                        <el-select v-if="user.userNameNeedTranslate != '1'" v-model="addForm.auditUserIds" multiple="true" :disabled=" !(permissions.projectManagement|| user.id == addForm.inchargerId || user.id == addForm.creatorId)" filterable :placeholder="$t('defaultistheprojectleader')" style="width:100%;" >
+                            <el-option v-for="item in participator" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                        </el-select>
 
-                    <selectCat v-if="user.userNameNeedTranslate == '1'" :size="'medium'" :tile="true" :widthStr="'800'" :disabled="!(permissions.projectManagement|| user.id == addForm.inchargerId || user.id == addForm.creatorId)" :subjectId="addForm.auditUserIds" :subject="participator" :clearable="false" :distinction="'10'"  :multiSelect="true" @selectCal="selectCal"></selectCat>
+                        <selectCat v-if="user.userNameNeedTranslate == '1'" :size="'medium'" :tile="true" :widthStr="'800'" :disabled="!(permissions.projectManagement|| user.id == addForm.inchargerId || user.id == addForm.creatorId)" :subjectId="addForm.auditUserIds" :subject="participator" :clearable="false" :distinction="'10'"  :multiSelect="true" @selectCal="selectCal"></selectCat>
 
-                </el-form-item>
-                <!--专业项目协作版本功能 -->
-                <el-form-item :label="$t('ji-bie')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" v-if="user.company.packageProject==1">
-                    <el-select v-model="addForm.level"  :placeholder="$t('defaultText.pleaseChoose')" style="width:32%;" v-if="user.timeType.projectLevelState == 1">
-                        <el-option v-for="item in levelList" :key="item.id" :label="item.projectLevelName" :value="item.id"></el-option>
-                    </el-select>
-                    <el-select v-model="addForm.level"  :placeholder="this.$t('defaultText.pleaseChoose')" style="width:32%;" v-else>
-                        <el-option v-for="item in importanceList" :key="item.id" :label="item.label" :value="item.id"></el-option>
-                    </el-select>
-                <!-- 增加合同金额字段 -->
-                        <!-- <span style="margin-left:63px;margin-right:10px;" v-if="user.company.packageProject==1">合同金额</span>
-                        <el-input id="contractAmount" v-model="addForm.contractAmount" style="width:33%;" @blur="contractAmountChange(addForm.contractAmount)"
-                        placeholder="整数" clearable  @keyup.native="restrictNumber('contractAmount')" :disabled="title == '新增项目' ? false : false"></el-input><span style="margin-left:10px;">元</span> -->
-                </el-form-item>
-                <!-- 增加合同金额字段 -->
-                <el-form-item  :label="$t('contractamount')" v-if="user.company.packageProject==1">
-                    <el-input id="contractAmount" v-model="addForm.contractAmount" style="width:32%;" @input="contractAmountChange(addForm.contractAmount)" :placeholder="$t('zheng-shu')" clearable  @keyup.native="restrictNumber('contractAmount')"></el-input><span style="margin-left:10px;position:absolute;">{{ $t('yuan') }}</span>
-                    <template v-if="title == $t('modifytheproject') && contractAmountReasonShow">
-                        <span style="margin-left:63px;margin-right:10px;">{{ $t('modifythereason') }}</span>
-                        <el-input v-model="addForm.changeContractReason" style="width:33%" clearable :placeholder="$t('contractamountasd')"></el-input>
-                    </template>
-                </el-form-item>
+                    </el-form-item>
+                    <!--专业项目协作版本功能 -->
+                    <el-form-item :label="$t('ji-bie')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''" v-if="user.company.packageProject==1">
+                        <el-select v-model="addForm.level"  :placeholder="$t('defaultText.pleaseChoose')" style="width:32%;" v-if="user.timeType.projectLevelState == 1">
+                            <el-option v-for="item in levelList" :key="item.id" :label="item.projectLevelName" :value="item.id"></el-option>
+                        </el-select>
+                        <el-select v-model="addForm.level"  :placeholder="this.$t('defaultText.pleaseChoose')" style="width:32%;" v-else>
+                            <el-option v-for="item in importanceList" :key="item.id" :label="item.label" :value="item.id"></el-option>
+                        </el-select>
+                    <!-- 增加合同金额字段 -->
+                            <!-- <span style="margin-left:63px;margin-right:10px;" v-if="user.company.packageProject==1">合同金额</span>
+                            <el-input id="contractAmount" v-model="addForm.contractAmount" style="width:33%;" @blur="contractAmountChange(addForm.contractAmount)"
+                            placeholder="整数" clearable  @keyup.native="restrictNumber('contractAmount')" :disabled="title == '新增项目' ? false : false"></el-input><span style="margin-left:10px;">元</span> -->
+                    </el-form-item>
+                    <!-- 增加合同金额字段 -->
+                    <el-form-item  :label="$t('contractamount')" v-if="user.company.packageProject==1">
+                        <el-input id="contractAmount" v-model="addForm.contractAmount" style="width:32%;" @input="contractAmountChange(addForm.contractAmount)" :placeholder="$t('zheng-shu')" clearable  @keyup.native="restrictNumber('contractAmount')"></el-input><span style="margin-left:10px;position:absolute;">{{ $t('yuan') }}</span>
+                        <template v-if="title == $t('modifytheproject') && contractAmountReasonShow">
+                            <span style="margin-left:63px;margin-right:10px;">{{ $t('modifythereason') }}</span>
+                            <el-input v-model="addForm.changeContractReason" style="width:33%" clearable :placeholder="$t('contractamountasd')"></el-input>
+                        </template>
+                    </el-form-item>
 
 
-                <el-form-item :label="$t('ommencementDate')" prop="planStartDate"  >
-                    <el-date-picker v-model="addForm.planStartDate" 
-                     :editable="false" style="width:32%;" 
-                     format="yyyy-MM-dd" 
-                     value-format="yyyy-MM-dd"
-                     :clearable="false" type="date" 
-                     :placeholder="$t('optiondate')"></el-date-picker>
+                    <el-form-item :label="$t('ommencementDate')" prop="planStartDate"  >
+                        <el-date-picker v-model="addForm.planStartDate" 
+                        :editable="false" style="width:32%;" 
+                        format="yyyy-MM-dd" 
+                        value-format="yyyy-MM-dd"
+                        :clearable="false" type="date" 
+                        :placeholder="$t('optiondate')"></el-date-picker>
 
-                    <span style="margin-left:63px;margin-right:10px;" >{{ $t('ji-hua-jie-shu-ri-qi') }}</span>
-                    <el-date-picker v-model="addForm.planEndDate" style="width:33%;"
-                     :editable="false" 
-                     format="yyyy-MM-dd" 
-                     value-format="yyyy-MM-dd"
-                     :clearable="false" type="date" 
-                     :placeholder="$t('optiondate')"></el-date-picker>
-                </el-form-item>
-                <el-form-item :label="$t('projectoutput')" prop="outputValue" v-if="user.timeType.outputValueStatus == 1">
-                    <el-input id="outputValue" v-model="addForm.outputValue" style="width:32%;"
-                    placeholder="" clearable  @keyup.native="restrictNumber('outputValue')">
-                    </el-input><span style="margin-left:10px;">{{ $t('yuan') }}</span>
-                </el-form-item>
+                        <span style="margin-left:63px;margin-right:10px;" >{{ $t('ji-hua-jie-shu-ri-qi') }}</span>
+                        <el-date-picker v-model="addForm.planEndDate" style="width:33%;"
+                        :editable="false" 
+                        format="yyyy-MM-dd" 
+                        value-format="yyyy-MM-dd"
+                        :clearable="false" type="date" 
+                        :placeholder="$t('optiondate')"></el-date-picker>
+                    </el-form-item>
+                    <el-form-item :label="$t('projectoutput')" prop="outputValue" v-if="user.timeType.outputValueStatus == 1">
+                        <el-input id="outputValue" v-model="addForm.outputValue" style="width:32%;"
+                        placeholder="" clearable  @keyup.native="restrictNumber('outputValue')">
+                        </el-input><span style="margin-left:10px;">{{ $t('yuan') }}</span>
+                    </el-form-item>
 
-                <!-- 单个公司的固定字段 -->
-                <div v-if="user.companyId == '936'">
-                <el-form-item :label="$t('contractno')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
-                    <el-input v-model="addForm.contractCode" maxlength="50" show-word-limit :placeholder="$t('peaseenterthe')" clearable></el-input>
-                </el-form-item>
-                <el-form-item :label="$t('warrantystartime')">
-                    <el-date-picker v-model="addForm.warrantyStartDate" 
-                     :editable="false" style="width:32%;" 
-                     format="yyyy-MM-dd" 
-                     value-format="yyyy-MM-dd"
-                     :clearable="false" type="date" 
-                     :placeholder="$t('optiondate')"></el-date-picker>
+                    <!-- 单个公司的固定字段 -->
+                    <div v-if="user.companyId == '936'">
+                    <el-form-item :label="$t('contractno')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
+                        <el-input v-model="addForm.contractCode" maxlength="50" show-word-limit :placeholder="$t('peaseenterthe')" clearable></el-input>
+                    </el-form-item>
+                    <el-form-item :label="$t('warrantystartime')">
+                        <el-date-picker v-model="addForm.warrantyStartDate" 
+                        :editable="false" style="width:32%;" 
+                        format="yyyy-MM-dd" 
+                        value-format="yyyy-MM-dd"
+                        :clearable="false" type="date" 
+                        :placeholder="$t('optiondate')"></el-date-picker>
 
-                     <span style="margin-left:63px;margin-right:10px;" >{{ $t('warrantyexpirationtime') }}</span>
-                    <el-date-picker v-model="addForm.warrantyEndDate" style="width:33%;"
-                     :editable="false" 
-                     format="yyyy-MM-dd" 
-                     value-format="yyyy-MM-dd"
-                     :clearable="false" type="date" 
-                     placeholder="$t('optiondate')"></el-date-picker>
-                </el-form-item>
-                <el-form-item :label="$t('IndependentProject')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
-                    <!-- <el-input v-model="addForm.projectCategorySub" placeholder="请输入自主项目类别" clearable></el-input> -->
-                    <el-select v-model="addForm.projectCategorySub" :placeholder="$t('defaultText.pleaseChoose')" clearable>
-                        <el-option :value="$t('softwareproject')" :label="$t('softwareproject')"></el-option>
-                        <el-option :value="$t('hardwareproject')" :label="$t('hardwareproject')"></el-option>
-                        <el-option :value="$t('integrationproject')" :label="$t('integrationproject')"></el-option>
-                        <el-option :value="$t('fu-wu-xiang-mu')" :label="$t('fu-wu-xiang-mu')"></el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item :label="$t('region')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
-                    <el-input v-model="addForm.region" :placeholder="$t('peaseenterthe')" clearable></el-input>
-                </el-form-item>
-                <el-form-item :label="$t('subordinateBU')" >
-                    <el-input v-model="addForm.bu" :placeholder="$t('subordinateBU')" clearable></el-input>
-                </el-form-item>
-                </div>
-                <div v-if="user.companyId == '428'">
-                    <el-form-item :label="$t('projectgroup')" >
-                        <el-input v-model="addForm.projectCategorySub" maxlength="50" show-word-limit :placeholder="$t('peaseenterthe')" clearable></el-input>
+                        <span style="margin-left:63px;margin-right:10px;" >{{ $t('warrantyexpirationtime') }}</span>
+                        <el-date-picker v-model="addForm.warrantyEndDate" style="width:33%;"
+                        :editable="false" 
+                        format="yyyy-MM-dd" 
+                        value-format="yyyy-MM-dd"
+                        :clearable="false" type="date" 
+                        placeholder="$t('optiondate')"></el-date-picker>
                     </el-form-item>
-                </div>
-                <!-- 项目基线 -->
-                <div style="margin: 10px 0 30px 0;min-height:200px;" v-if="user.company.packageProject == 1">
-                    <el-tabs v-model="activeName" @tab-click="handleClick">
-                    <el-tab-pane :label="$t('costbaseline')" name="baseCostPanel"  >
-                        <div style="padding-top:10px;">
-                            <!--新版 -->
-                            <span class="rg_span" v-for="(item, index) in projectBaseCostData" :key="item.id">
-                                <span style="width:120px;display: inline-block;" v-if="user.company.packageProject==1">{{item.baseName}}</span>
-                                <el-input :id="'baseCost'+index" @input="addUpfun()" v-model="item.baseAmount" style="width:200px; margin-bottom: 20px"
-                                :placeholder="$t('zheng-shu')" clearable  @keyup.native="restrictNumber('baseCost'+index)"></el-input><span style="margin-left:10px;">{{ $t('yuan') }}</span>
-                            </span>    
+                    <el-form-item :label="$t('IndependentProject')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
+                        <!-- <el-input v-model="addForm.projectCategorySub" placeholder="请输入自主项目类别" clearable></el-input> -->
+                        <el-select v-model="addForm.projectCategorySub" :placeholder="$t('defaultText.pleaseChoose')" clearable>
+                            <el-option :value="$t('softwareproject')" :label="$t('softwareproject')"></el-option>
+                            <el-option :value="$t('hardwareproject')" :label="$t('hardwareproject')"></el-option>
+                            <el-option :value="$t('integrationproject')" :label="$t('integrationproject')"></el-option>
+                            <el-option :value="$t('fu-wu-xiang-mu')" :label="$t('fu-wu-xiang-mu')"></el-option>
+                        </el-select>
+                    </el-form-item>
+                    <el-form-item :label="$t('region')" :class="title == $t('newproject') && user.companyId == 936 ? 'wpgCssClass' : ''">
+                        <el-input v-model="addForm.region" :placeholder="$t('peaseenterthe')" clearable></el-input>
+                    </el-form-item>
+                    <el-form-item :label="$t('subordinateBU')" >
+                        <el-input v-model="addForm.bu" :placeholder="$t('subordinateBU')" clearable></el-input>
+                    </el-form-item>
+                    </div>
+                    <div v-if="user.companyId == '428'">
+                        <el-form-item :label="$t('projectgroup')" >
+                            <el-input v-model="addForm.projectCategorySub" maxlength="50" show-word-limit :placeholder="$t('peaseenterthe')" clearable></el-input>
+                        </el-form-item>
+                    </div>
+                    <!-- 项目基线 -->
+                    <div style="margin: 10px 0 30px 0;min-height:200px;" v-if="user.company.packageProject == 1">
+                        <el-tabs v-model="activeName" @tab-click="handleClick">
+                        <el-tab-pane :label="$t('costbaseline')" name="baseCostPanel"  >
+                            <div style="padding-top:10px;">
+                                <!--新版 -->
+                                <span class="rg_span" v-for="(item, index) in projectBaseCostData" :key="item.id">
+                                    <span style="width:120px;display: inline-block;" v-if="user.company.packageProject==1">{{item.baseName}}</span>
+                                    <el-input :id="'baseCost'+index" @input="addUpfun()" v-model="item.baseAmount" style="width:200px; margin-bottom: 20px"
+                                    :placeholder="$t('zheng-shu')" clearable  @keyup.native="restrictNumber('baseCost'+index)"></el-input><span style="margin-left:10px;">{{ $t('yuan') }}</span>
+                                </span>    
 
-                            <!-- 合计 -->
-                            <div style="margin-top: 10px;float:right;">
-                                <span style="margin-right:50px;margin-right:10px;" v-if="user.company.packageProject==1">{{ $t('other.totals') }}</span>
-                                <span v-if="addForm.budget <= 0 || addForm.budget == undefined">0</span>
-                                <span v-else>{{addForm.budget | numberToCurrency}}</span>
-                                <span style="margin-right:50px;margin-left:10px;">{{ $t('yuan') }}</span>
-                            </div>
-                        </div>
-                    </el-tab-pane>
-                    <el-tab-pane :label="$t('keynodes')" name="baseCostPanep" v-if="user.companyId == '936'">
-                        <div style="padding-top:10px;">
-                            <!--新版 -->
-                            <div class="keyNodes">
-                                <div class="keyNodesName">{{ $t('nameofthenode') }}</div>
-                                <div class="keyNodesTime">{{ $t('plannedcompletiontime') }}</div>
-                                <div class="keyNodesTime">{{ $t('actualcompletiontime') }}</div>
-                                <div class="keyNodesTime">{{ $t('state.states') }}</div>
-                            </div>
-                            <div class="keyNodes" v-for="item in projectKeyNodesData" :key="item.nodesId">
-                                <div class="keyNodesName">{{item.nodesName}}</div>
-                                <div class="keyNodesTime">
-                                    <el-date-picker v-model="item.planCompleteDate" clearable style="width: 80%" size="small" :editable="false" format="yyyy-MM-dd"  value-format="yyyy-MM-dd" type="date"  :placeholder="$t('optiondate')"></el-date-picker>
+                                <!-- 合计 -->
+                                <div style="margin-top: 10px;float:right;">
+                                    <span style="margin-right:50px;margin-right:10px;" v-if="user.company.packageProject==1">{{ $t('other.totals') }}</span>
+                                    <span v-if="addForm.budget <= 0 || addForm.budget == undefined">0</span>
+                                    <span v-else>{{addForm.budget | numberToCurrency}}</span>
+                                    <span style="margin-right:50px;margin-left:10px;">{{ $t('yuan') }}</span>
                                 </div>
-                                <div class="keyNodesTime">
-                                    <el-date-picker v-model="item.actualCompleteDate" clearable style="width: 80%" size="small" :editable="false" format="yyyy-MM-dd"  value-format="yyyy-MM-dd" type="date"  :placeholder="$t('optiondate')"></el-date-picker>
+                            </div>
+                        </el-tab-pane>
+                        <el-tab-pane :label="$t('keynodes')" name="baseCostPanep" v-if="user.companyId == '936'">
+                            <div style="padding-top:10px;">
+                                <!--新版 -->
+                                <div class="keyNodes">
+                                    <div class="keyNodesName">{{ $t('nameofthenode') }}</div>
+                                    <div class="keyNodesTime">{{ $t('plannedcompletiontime') }}</div>
+                                    <div class="keyNodesTime">{{ $t('actualcompletiontime') }}</div>
+                                    <div class="keyNodesTime">{{ $t('state.states') }}</div>
                                 </div>
-                                <div class="keyNodesTime">
-                                    <el-select v-model="item.states" :placeholder="$t('defaultText.pleaseChoose')" style="width: 80%" size="small">
-                                        <el-option :label="$t('zheng-chang')" value="0"></el-option>
-                                        <el-option :label="$t('yan-qi')" value="1"></el-option>
-                                        <el-option :label="$t('wan-cheng')" value="2"></el-option>
-                                    </el-select>
+                                <div class="keyNodes" v-for="item in projectKeyNodesData" :key="item.nodesId">
+                                    <div class="keyNodesName">{{item.nodesName}}</div>
+                                    <div class="keyNodesTime">
+                                        <el-date-picker v-model="item.planCompleteDate" clearable style="width: 80%" size="small" :editable="false" format="yyyy-MM-dd"  value-format="yyyy-MM-dd" type="date"  :placeholder="$t('optiondate')"></el-date-picker>
+                                    </div>
+                                    <div class="keyNodesTime">
+                                        <el-date-picker v-model="item.actualCompleteDate" clearable style="width: 80%" size="small" :editable="false" format="yyyy-MM-dd"  value-format="yyyy-MM-dd" type="date"  :placeholder="$t('optiondate')"></el-date-picker>
+                                    </div>
+                                    <div class="keyNodesTime">
+                                        <el-select v-model="item.states" :placeholder="$t('defaultText.pleaseChoose')" style="width: 80%" size="small">
+                                            <el-option :label="$t('zheng-chang')" value="0"></el-option>
+                                            <el-option :label="$t('yan-qi')" value="1"></el-option>
+                                            <el-option :label="$t('wan-cheng')" value="2"></el-option>
+                                        </el-select>
+                                    </div>
                                 </div>
                             </div>
-                        </div>
-                    </el-tab-pane>
-                    <el-tab-pane :label="$t('engineering')" name="engineeringProfession" v-if="user.company.packageEngineering == 1">
-                       <div style="padding-top:10px;">
-                           <el-table :data="projectProfessionList" size="small" :key="Math.random()">
-                               <el-table-column prop="professionId" width="200">
-                                   <template slot-scope="scope">
-                                       <el-select v-model="scope.row.professionId" >
-                                           <el-option v-for="item in professionList" :key="item.id" :label="item.name" :value="item.id"/>
-                                       </el-select>
-                                   </template>
-                                   <template slot="header" >
-                                       <span style="font-size:14px;font-weight:normal;">{{ $t('nameprofessional') }}</span>
-                                   </template>
-                               </el-table-column>
-                               <el-table-column prop="percentage" width="120" :label="$t('zhan-bi')">
-                                   <template slot-scope="scope">
-                                       <div><el-input type="number" v-model="scope.row.percentage"></el-input></div>
-                                   </template>
-                               </el-table-column>
-                               
-                               <el-table-column prop="membNames" :label="$t('personnelproportion')">
-                                   <template slot-scope="scope">
-                                       <span style="margin:0 5px;" v-for="item in scope.row.membList" :key="item.membId">
-                                            <span v-if="user.userNameNeedTranslate != 1">{{item.membName}}({{item.percentage}}%)</span>
-                                            <span v-if="user.userNameNeedTranslate == 1"><ww-open-data type='userName' :openid='item.membName'></ww-open-data>({{item.percentage}}%)</span>
-                                        </span>
-                                       <el-link @click="showEditPpMembs(scope.row)">{{(scope.row.membList == null || scope.row.membList.length == 0)?$t('professionalparticipants'):$t('setup')}}</el-link>
-                                   </template>
-                               </el-table-column>
-                               <el-table-column prop="inchargerName" width="120" :label="$t('head')">
-                                   <template slot-scope="scope">
-                                       <el-select v-model="scope.row.inchargerId" v-if="user.userNameNeedTranslate != 1">
-                                           <el-option v-for="item in participator" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                                       </el-select>
+                        </el-tab-pane>
+                        <el-tab-pane :label="$t('engineering')" name="engineeringProfession" v-if="user.company.packageEngineering == 1">
+                        <div style="padding-top:10px;">
+                            <el-table :data="projectProfessionList" size="small" :key="Math.random()">
+                                <el-table-column prop="professionId" width="200">
+                                    <template slot-scope="scope">
+                                        <el-select v-model="scope.row.professionId" >
+                                            <el-option v-for="item in professionList" :key="item.id" :label="item.name" :value="item.id"/>
+                                        </el-select>
+                                    </template>
+                                    <template slot="header" >
+                                        <span style="font-size:14px;font-weight:normal;">{{ $t('nameprofessional') }}</span>
+                                    </template>
+                                </el-table-column>
+                                <el-table-column prop="percentage" width="120" :label="$t('zhan-bi')">
+                                    <template slot-scope="scope">
+                                        <div><el-input type="number" v-model="scope.row.percentage"></el-input></div>
+                                    </template>
+                                </el-table-column>
+                                
+                                <el-table-column prop="membNames" :label="$t('personnelproportion')">
+                                    <template slot-scope="scope">
+                                        <span style="margin:0 5px;" v-for="item in scope.row.membList" :key="item.membId">
+                                                <span v-if="user.userNameNeedTranslate != 1">{{item.membName}}({{item.percentage}}%)</span>
+                                                <span v-if="user.userNameNeedTranslate == 1"><ww-open-data type='userName' :openid='item.membName'></ww-open-data>({{item.percentage}}%)</span>
+                                            </span>
+                                        <el-link @click="showEditPpMembs(scope.row)">{{(scope.row.membList == null || scope.row.membList.length == 0)?$t('professionalparticipants'):$t('setup')}}</el-link>
+                                    </template>
+                                </el-table-column>
+                                <el-table-column prop="inchargerName" width="120" :label="$t('head')">
+                                    <template slot-scope="scope">
+                                        <el-select v-model="scope.row.inchargerId" v-if="user.userNameNeedTranslate != 1">
+                                            <el-option v-for="item in participator" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                                        </el-select>
 
-                                       <!-- <selectCat :size="'mini'" :subject="participator" :subjectId="scope.row.inchargerId" :index="scope.index" :distinction="'4'" style="position: relative;z-index:99999999999 !important;"></selectCat> -->
+                                        <!-- <selectCat :size="'mini'" :subject="participator" :subjectId="scope.row.inchargerId" :index="scope.index" :distinction="'4'" style="position: relative;z-index:99999999999 !important;"></selectCat> -->
 
-                                   </template>
-                               </el-table-column>
-                               <el-table-column  width="80">
-                                   <template slot-scope="scope">
-                                       <el-button icon="el-icon-delete" size="mini" style="margin-left:10px;" @click.stop.native="deleteItem(scope.$index)"></el-button>
-                                   </template>
-                                   <template slot="header" >
-                                       <el-link type="primary" :underline="false" @click="addItem">{{ $t('addTian') }}</el-link>
-                                   </template>
-                               </el-table-column>
-                           </el-table>
-                       </div>
-                    </el-tab-pane>
-                    <!-- <el-tab-pane label="相关领导" name="leaders" >
-                       <div style="padding-top:10px;">
-                           <el-input @focus="showChooseLeaderTree" v-model="addForm.notifyUserNames" placeholder="请选择需要接收审核通知的相关领导"></el-input>
-                       </div>
-                    </el-tab-pane> -->
-                    </el-tabs>
-                </div>
-            
-            </el-form>  
+                                    </template>
+                                </el-table-column>
+                                <el-table-column  width="80">
+                                    <template slot-scope="scope">
+                                        <el-button icon="el-icon-delete" size="mini" style="margin-left:10px;" @click.stop.native="deleteItem(scope.$index)"></el-button>
+                                    </template>
+                                    <template slot="header" >
+                                        <el-link type="primary" :underline="false" @click="addItem">{{ $t('addTian') }}</el-link>
+                                    </template>
+                                </el-table-column>
+                            </el-table>
+                        </div>
+                        </el-tab-pane>
+                        <!-- <el-tab-pane label="相关领导" name="leaders" >
+                        <div style="padding-top:10px;">
+                            <el-input @focus="showChooseLeaderTree" v-model="addForm.notifyUserNames" placeholder="请选择需要接收审核通知的相关领导"></el-input>
+                        </div>
+                        </el-tab-pane> -->
+                        </el-tabs>
+                    </div>
+                
+                </el-form>  
+            </div>
             <div slot="footer" class="dialog-footer;">
                 <el-button @click.native="deletePro(1, addForm)" v-if="(permissions.projectManagement || user.id==deleteVif) && addForm.id" style="float:left">{{ $t('btn.delete') }}</el-button>
                 <el-button @click.native="addFormVisible = false">{{ $t('btn.cancel') }}</el-button>

+ 327 - 327
fhKeeper/formulahousekeeper/timesheet/src/views/project/projectInside.vue

@@ -359,365 +359,365 @@
 
         <!--新增任务界面-->
         <el-dialog :class="addForm.id==null?'':'jm'" :title="title" v-if="addFormVisible" :visible.sync="addFormVisible" 
-        :close-on-click-modal="false" customClass="customWidth" width="800px" ref="addDialog">
+        :close-on-click-modal="false" customClass="customWidth" width="800px" ref="addDialog" :top="'6vh'">
         <!-- <div style="width: 200%;height:80%;position: absolute;right:-100%;top:0;background:#000;opacity: 0;" @click="sss"></div> -->
-
-            <el-form ref="form1" :model="addForm" :rules="taskRules" label-width="100px">
-                <!--子任务需要选择任务列表 -->
-                <el-form-item :label="$t('tasklist')" prop="stages" v-if="addForm.parentTid != null">
-                    <el-select v-model="addForm.stagesId" style="width:100%;" >
-                        <el-option v-for="item in stageList" :key="item.id" :label="item.stagesName" :value="item.id"></el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item :label="$t('types')">
-                    <!-- <el-button @click="test">test</el-button> -->
-                    <!-- 0011 -->
-                    <!-- {{groupResponsibleId == user.id}} -->
-                    <el-select v-model="addForm.taskType" style="width:100%;" :disabled="((this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement) && !(groupResponsibleId == user.id)" @change="selchg()">
-                        <el-option v-for="item in taskTypeList" :key="item.id" :label="item.name" :value="item.id">
-                            <i :class="item.icon" ></i>
-                            <span>{{item.name}}</span>
-                        </el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item :label="$t('taskdefinition')" prop="name">
-                    <el-input v-model="addForm.name" :maxlength="40" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" :placeholder="$t('enterthetaskcontent')" clearable></el-input>
-                </el-form-item>
-                <!-- {{timelabel}}{{mileageCup}} -->
-                <el-form-item :label="!timelabel ? $t('starttimes') : $t('jie-zhi-shi-jian')" prop="startDate">
-                    <el-date-picker v-model="addForm.startDate" type="date" style="width:40%;" value-format="yyyy-MM-dd"  
-                    :placeholder="$t('pleaseselectadate')" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" @change="DateChange()" v-if="!timelabel"></el-date-picker>
-                    <span style="margin-left:30px;margin-right:10px;" v-if="!timelabel">{{ $t('deadline') }}</span>
-                    <el-date-picker style="width:40%;" v-model="addForm.endDate" type="date" value-format="yyyy-MM-dd"  
-                    :placeholder="$t('pleaseselectadate')" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" @change="DateChange()"></el-date-picker>
-
-                    <span style="margin-left:30px;margin-right:10px;" v-if="timelabel && mileageCup">{{ $t('wan-cheng-shi-jian') }}</span>
-                    <el-date-picker style="width:40%;" v-if="timelabel && mileageCup" v-model="addForm.finishDate" type="date" value-format="yyyy-MM-dd"  
-                    :placeholder="$t('pleaseselectadate')" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" @change="DateChange()"></el-date-picker>
+            <div style="height: 72vh;overflow: auto;">
+                <el-form ref="form1" :model="addForm" :rules="taskRules" label-width="100px">
+                    <!--子任务需要选择任务列表 -->
+                    <el-form-item :label="$t('tasklist')" prop="stages" v-if="addForm.parentTid != null">
+                        <el-select v-model="addForm.stagesId" style="width:100%;" >
+                            <el-option v-for="item in stageList" :key="item.id" :label="item.stagesName" :value="item.id"></el-option>
+                        </el-select>
+                    </el-form-item>
+                    <el-form-item :label="$t('types')">
+                        <!-- <el-button @click="test">test</el-button> -->
+                        <!-- 0011 -->
+                        <!-- {{groupResponsibleId == user.id}} -->
+                        <el-select v-model="addForm.taskType" style="width:100%;" :disabled="((this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement) && !(groupResponsibleId == user.id)" @change="selchg()">
+                            <el-option v-for="item in taskTypeList" :key="item.id" :label="item.name" :value="item.id">
+                                <i :class="item.icon" ></i>
+                                <span>{{item.name}}</span>
+                            </el-option>
+                        </el-select>
                     </el-form-item>
+                    <el-form-item :label="$t('taskdefinition')" prop="name">
+                        <el-input v-model="addForm.name" :maxlength="40" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" :placeholder="$t('enterthetaskcontent')" clearable></el-input>
+                    </el-form-item>
+                    <!-- {{timelabel}}{{mileageCup}} -->
+                    <el-form-item :label="!timelabel ? $t('starttimes') : $t('jie-zhi-shi-jian')" prop="startDate">
+                        <el-date-picker v-model="addForm.startDate" type="date" style="width:40%;" value-format="yyyy-MM-dd"  
+                        :placeholder="$t('pleaseselectadate')" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" @change="DateChange()" v-if="!timelabel"></el-date-picker>
+                        <span style="margin-left:30px;margin-right:10px;" v-if="!timelabel">{{ $t('deadline') }}</span>
+                        <el-date-picker style="width:40%;" v-model="addForm.endDate" type="date" value-format="yyyy-MM-dd"  
+                        :placeholder="$t('pleaseselectadate')" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" @change="DateChange()"></el-date-picker>
+
+                        <span style="margin-left:30px;margin-right:10px;" v-if="timelabel && mileageCup">{{ $t('wan-cheng-shi-jian') }}</span>
+                        <el-date-picker style="width:40%;" v-if="timelabel && mileageCup" v-model="addForm.finishDate" type="date" value-format="yyyy-MM-dd"  
+                        :placeholder="$t('pleaseselectadate')" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" @change="DateChange()"></el-date-picker>
+                        </el-form-item>
 
-                <div style="border: 1px solid #ddd;margin:5px 0;padding:5px 0;">
-                <el-form-item :label="$t('zhi-hang-ren') + (index+1)" v-for="(executorItem, index) in addForm.executorListFront" :key="index">
+                    <div style="border: 1px solid #ddd;margin:5px 0;padding:5px 0;">
+                    <el-form-item :label="$t('zhi-hang-ren') + (index+1)" v-for="(executorItem, index) in addForm.executorListFront" :key="index">
 
-                    <el-select v-if="user.userNameNeedTranslate != 1" v-model="executorItem.executorId" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" size="small" filterable clearable :placeholder="$t('pleaseselectanexecutor')" style="width:40%;" @change="$forceUpdate()">
-                        <el-option v-for="item in users" :key="item.id" :label="item.name" :value="item.id">
-                             <span style="float: left">{{ item.name }}</span>
-                             <span style="float: right; color: #8492a6; font-size: 13px;margin-left: 20px" v-if="item.jobNumber">{{ item.jobNumber }}</span>
-                        </el-option>
-                    </el-select>
+                        <el-select v-if="user.userNameNeedTranslate != 1" v-model="executorItem.executorId" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" size="small" filterable clearable :placeholder="$t('pleaseselectanexecutor')" style="width:40%;" @change="$forceUpdate()">
+                            <el-option v-for="item in users" :key="item.id" :label="item.name" :value="item.id">
+                                <span style="float: left">{{ item.name }}</span>
+                                <span style="float: right; color: #8492a6; font-size: 13px;margin-left: 20px" v-if="item.jobNumber">{{ item.jobNumber }}</span>
+                            </el-option>
+                        </el-select>
 
-                    <selectCat v-if="user.userNameNeedTranslate == 1" :size="'mini'" :subject="users" :subjectId="executorItem.executorId" :distinction="'1'" @selectCal="selectCal" :index="index" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)"></selectCat>
+                        <selectCat v-if="user.userNameNeedTranslate == 1" :size="'mini'" :subject="users" :subjectId="executorItem.executorId" :distinction="'1'" @selectCal="selectCal" :index="index" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)"></selectCat>
 
 
-                    <span style="margin-left:30px;margin-right:10px;">{{ $t('plantime') }}</span>
-                    <el-input-number size="small" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" v-model="gstimday[index]" style="width:16%;" :min="1" :max="100"  :placeholder="$t('danweitian')" @change="chggstim(0,index)"></el-input-number ><span style="margin-left:5px;">{{ $t('time.day') }}</span>
-                    <el-input-number size="small" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" v-model="gstimhour[index]" style="width:16%;" :min="1" :max="100"  :placeholder="$t('pleaseentertheplannedworking')" @change="chggstim(1,index)"></el-input-number ><span style="margin-left:5px;">{{ $t('time.hour') }}</span>
-                    <!--移除执行人 -->
-                    <i class="el-icon-delete" v-if="index>0 && (addForm.id == null|| user.id == addForm.createrId || currentProject.inchargerId == user.id|| permissions.projectManagement || groupResponsibleId == user.id)" style="margin-left:5px" @click="removeExecutorLine(index)"></i>
-                </el-form-item>
-                <el-link type="primary" v-if="(((addForm.executorListFront == null || addForm.executorListFront.length<10) && 
-                (addForm.id == null|| user.id == addForm.createrId || currentProject.inchargerId == user.id || permissions.projectManagement)) || 
-                groupResponsibleId == user.id)" 
-                style="margin-left:35px;" @click="addExecutorLine">{{ $t('addinganexecutor') }}</el-link>
-                </div>
-                <el-form-item :label="$t('priority')">
-                    <el-select v-model="addForm.taskLevel" style="width:100%;" >
-                        <el-option v-for="item in importanceList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
-                </el-form-item>
-                <!-- 富文本 -->
-                <el-form-item :label="$t('detaileddescription')" style="height: 200px">
-                    <!-- <Editor id="tinymce" v-model="tinymceHtml" :init="editorInit"></Editor> -->
-                    <!-- <el-input type="textarea" v-model="addForm.taskDesc" :rows="3"></el-input> -->
-                      <!-- <quill-edito v-model="addForm.taskDesc"></quill-edito> -->
-                      <quill-editor style="height: 150px" ref="text" v-model="addForm.taskDesc" class="myQuillEditor" :options="editorOption" @blur="onEditorBlur($event)" @focus="onEditorFocus($event)"/>
-                </el-form-item>
-                <!-- 富文本 -->
-                <div v-if="addForm.id != null">
-                    <el-divider ></el-divider>
-                    <!-- 任务进展 -->
-                    <template v-if="!timelabel || isRelationItem">
-                    
-                    <p ><i class="iconfont firerock-icontree" style="color:#20A0ff;margin-left:10px;">{{ $t('taskprogress') }}</i>
-                        <span ref="addPro" style="display: block; float:right;"><el-link @click="addprogress">{{ $t('addtaskprogress') }}</el-link></span>
-                    </p>
-                    <!-- 任务进展展示 -->
-                    <div style="display: none;" ref="proBox" class="progress">
-                        <!-- <el-form :model="> -->
-                        <el-radio-group v-model="radio">
-                            <el-radio :label="0" class="rala1">{{ $t('normals') }}</el-radio>
-                            <el-radio :label="1" class="rala2">{{ $t('atrisk') }}</el-radio>
-                            <el-radio :label="2" class="rala3">{{ $t('withinthetimelimit') }}</el-radio>
-                        </el-radio-group>
-
-                        <el-input
-                        type="textarea"
-                        border="0"
-                        :autosize="{ minRows: 2, maxRows: 6}"
-                        :placeholder="$t('detailedprogressdescription')"
-                        v-model.trim="text2"
-                        style="margin:10px 0 0 0">
-                        </el-input>
-
-                        <h4 style="font-weight: normal;">{{ $t('tixiang') }}{{checkLists.length}}</h4>
-
-                        <i class="el-icon-circle-plus pron_i" style="font-size: 28px;color: #409EFF;" @click="addI(0)"></i>
-
-                        <div class="remind" ref="addRem" style="display: none">
-                            <el-checkbox-group v-model="checkboxGrounp" v-for="item in users" :key="item.id">
-                                <p>
-                                    <el-checkbox :label="item.name" @change="kkk(item)">
-                                        <span>
-                                            <span v-if="user.userNameNeedTranslate != '1'">
-                                                {{item.name}}
-                                            </span>
-                                            <span v-if="user.userNameNeedTranslate == '1'">
-                                                <ww-open-data type='userName' :openid='item.name'></ww-open-data>
-                                            </span>
-                                        </span>
-                                    </el-checkbox>
-                                </p>
-                            </el-checkbox-group>
-                        </div>
-                        <div class="ssp" @click="sss"></div>
-                        <!-- </el-form> -->
-                        <div class="pro_btn">
-                            <el-button size="mini" @click="shutPro">{{ $t('btn.cancel') }}</el-button>
-                            <el-button size="mini" type="primary" @click="addTaskProgress">{{ $t('fa-bu') }}</el-button>
-                        </div>
-
+                        <span style="margin-left:30px;margin-right:10px;">{{ $t('plantime') }}</span>
+                        <el-input-number size="small" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" v-model="gstimday[index]" style="width:16%;" :min="1" :max="100"  :placeholder="$t('danweitian')" @change="chggstim(0,index)"></el-input-number ><span style="margin-left:5px;">{{ $t('time.day') }}</span>
+                        <el-input-number size="small" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement && !(groupResponsibleId == user.id)" v-model="gstimhour[index]" style="width:16%;" :min="1" :max="100"  :placeholder="$t('pleaseentertheplannedworking')" @change="chggstim(1,index)"></el-input-number ><span style="margin-left:5px;">{{ $t('time.hour') }}</span>
+                        <!--移除执行人 -->
+                        <i class="el-icon-delete" v-if="index>0 && (addForm.id == null|| user.id == addForm.createrId || currentProject.inchargerId == user.id|| permissions.projectManagement || groupResponsibleId == user.id)" style="margin-left:5px" @click="removeExecutorLine(index)"></i>
+                    </el-form-item>
+                    <el-link type="primary" v-if="(((addForm.executorListFront == null || addForm.executorListFront.length<10) && 
+                    (addForm.id == null|| user.id == addForm.createrId || currentProject.inchargerId == user.id || permissions.projectManagement)) || 
+                    groupResponsibleId == user.id)" 
+                    style="margin-left:35px;" @click="addExecutorLine">{{ $t('addinganexecutor') }}</el-link>
                     </div>
+                    <el-form-item :label="$t('priority')">
+                        <el-select v-model="addForm.taskLevel" style="width:100%;" >
+                            <el-option v-for="item in importanceList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 富文本 -->
+                    <el-form-item :label="$t('detaileddescription')" style="height: 200px">
+                        <!-- <Editor id="tinymce" v-model="tinymceHtml" :init="editorInit"></Editor> -->
+                        <!-- <el-input type="textarea" v-model="addForm.taskDesc" :rows="3"></el-input> -->
+                        <!-- <quill-edito v-model="addForm.taskDesc"></quill-edito> -->
+                        <quill-editor style="height: 150px" ref="text" v-model="addForm.taskDesc" class="myQuillEditor" :options="editorOption" @blur="onEditorBlur($event)" @focus="onEditorFocus($event)"/>
+                    </el-form-item>
+                    <!-- 富文本 -->
+                    <div v-if="addForm.id != null">
+                        <el-divider ></el-divider>
+                        <!-- 任务进展 -->
+                        <template v-if="!timelabel || isRelationItem">
+                        
+                        <p ><i class="iconfont firerock-icontree" style="color:#20A0ff;margin-left:10px;">{{ $t('taskprogress') }}</i>
+                            <span ref="addPro" style="display: block; float:right;"><el-link @click="addprogress">{{ $t('addtaskprogress') }}</el-link></span>
+                        </p>
+                        <!-- 任务进展展示 -->
+                        <div style="display: none;" ref="proBox" class="progress">
+                            <!-- <el-form :model="> -->
+                            <el-radio-group v-model="radio">
+                                <el-radio :label="0" class="rala1">{{ $t('normals') }}</el-radio>
+                                <el-radio :label="1" class="rala2">{{ $t('atrisk') }}</el-radio>
+                                <el-radio :label="2" class="rala3">{{ $t('withinthetimelimit') }}</el-radio>
+                            </el-radio-group>
+
+                            <el-input
+                            type="textarea"
+                            border="0"
+                            :autosize="{ minRows: 2, maxRows: 6}"
+                            :placeholder="$t('detailedprogressdescription')"
+                            v-model.trim="text2"
+                            style="margin:10px 0 0 0">
+                            </el-input>
+
+                            <h4 style="font-weight: normal;">{{ $t('tixiang') }}{{checkLists.length}}</h4>
+
+                            <i class="el-icon-circle-plus pron_i" style="font-size: 28px;color: #409EFF;" @click="addI(0)"></i>
+
+                            <div class="remind" ref="addRem" style="display: none">
+                                <el-checkbox-group v-model="checkboxGrounp" v-for="item in users" :key="item.id">
+                                    <p>
+                                        <el-checkbox :label="item.name" @change="kkk(item)">
+                                            <span>
+                                                <span v-if="user.userNameNeedTranslate != '1'">
+                                                    {{item.name}}
+                                                </span>
+                                                <span v-if="user.userNameNeedTranslate == '1'">
+                                                    <ww-open-data type='userName' :openid='item.name'></ww-open-data>
+                                                </span>
+                                            </span>
+                                        </el-checkbox>
+                                    </p>
+                                </el-checkbox-group>
+                            </div>
+                            <div class="ssp" @click="sss"></div>
+                            <!-- </el-form> -->
+                            <div class="pro_btn">
+                                <el-button size="mini" @click="shutPro">{{ $t('btn.cancel') }}</el-button>
+                                <el-button size="mini" type="primary" @click="addTaskProgress">{{ $t('fa-bu') }}</el-button>
+                            </div>
 
-                    
+                        </div>
 
-                    <div class="ddl" v-if="recentProgressInfo != null && recentProgressInfo.id != null">
-                        <div class="elCard" style="margin-bottom: 10px; height:" >
-                            <i class="el-icon-success" style="color: #43d14f;" v-if="recentProgressInfo.status == 0"></i>
-                            <i class="el-icon-success" style="color: #fd7624;" v-else-if="recentProgressInfo.status == 1"></i>
-                            <i class="el-icon-success" style="color: #fd4d47;" v-else></i>
-                            <span v-if="recentProgressInfo.status == 0">{{ $t('normals') }}</span>
-                            <span v-else-if="recentProgressInfo.status == 1">{{ $t('normals') }}</span>
-                            <span v-else>{{ $t('withinthetimelimit') }}</span>
-
-                            <el-dropdown trigger="click" style="float:right;cursor:pointer; float: right;">
-                                    <i class="el-icon-more" ></i>
-                                    <el-dropdown-menu slot="dropdown">
+                        
 
-                                        <el-dropdown-item divided>
-                                            <span @click="deleteTaskProgress(recentProgressInfo.id)"><i class="el-icon-delete"></i>{{ $t('deleteList ') }}</span></el-dropdown-item>
-                                    </el-dropdown-menu>
-                            </el-dropdown>
-                            <div class="elCard_qu">{{recentProgressInfo.creatorName}}{{ $t('geng-xin-yu') }}{{recentProgressInfo.indate | relativeTime}}</div>
-                            <p style="padding-left: 20px;">{{recentProgressInfo.content}}</p>
-                            <div class="examine"><el-button type="text" @click="innerVisibless = true" style="color: #8F87A3;">{{ $t('viewingHistory') }}</el-button></div>
+                        <div class="ddl" v-if="recentProgressInfo != null && recentProgressInfo.id != null">
+                            <div class="elCard" style="margin-bottom: 10px; height:" >
+                                <i class="el-icon-success" style="color: #43d14f;" v-if="recentProgressInfo.status == 0"></i>
+                                <i class="el-icon-success" style="color: #fd7624;" v-else-if="recentProgressInfo.status == 1"></i>
+                                <i class="el-icon-success" style="color: #fd4d47;" v-else></i>
+                                <span v-if="recentProgressInfo.status == 0">{{ $t('normals') }}</span>
+                                <span v-else-if="recentProgressInfo.status == 1">{{ $t('normals') }}</span>
+                                <span v-else>{{ $t('withinthetimelimit') }}</span>
+
+                                <el-dropdown trigger="click" style="float:right;cursor:pointer; float: right;">
+                                        <i class="el-icon-more" ></i>
+                                        <el-dropdown-menu slot="dropdown">
+
+                                            <el-dropdown-item divided>
+                                                <span @click="deleteTaskProgress(recentProgressInfo.id)"><i class="el-icon-delete"></i>{{ $t('deleteList ') }}</span></el-dropdown-item>
+                                        </el-dropdown-menu>
+                                </el-dropdown>
+                                <div class="elCard_qu">{{recentProgressInfo.creatorName}}{{ $t('geng-xin-yu') }}{{recentProgressInfo.indate | relativeTime}}</div>
+                                <p style="padding-left: 20px;">{{recentProgressInfo.content}}</p>
+                                <div class="examine"><el-button type="text" @click="innerVisibless = true" style="color: #8F87A3;">{{ $t('viewingHistory') }}</el-button></div>
+                            </div>
                         </div>
-                    </div>
 
-                    <!-- 任务列表没有数据的时候展示 -->
-                    <div class="nones" v-if="ProgressList.length <= 0">
-                        {{ $t('nodata') }} 
-                    </div>
+                        <!-- 任务列表没有数据的时候展示 -->
+                        <div class="nones" v-if="ProgressList.length <= 0">
+                            {{ $t('nodata') }} 
+                        </div>
 
-                    <!-- 任务进展完整状态 -->
-                    <el-dialog :title="$t('other.prompts')" :visible.sync="innerVisibless" append-to-body width="500px">
-                    <div class="integrity">
-                        <h3 style="font-weight: normal;display: inline-block;margin: 0 0 20px 0;">{{ $t('taskprogress') }} :{{ProgressList.length}}</h3>
-                        <!-- <span class="write"><i class="el-icon-circle-plus"></i>填写进展</span> -->
-                         <el-divider></el-divider>
-
-                         <!--  -->
-                            <div class="block" style="height: 200px;">
-                                <el-timeline style="padding:20px 0 0 0;">
-                                    <el-timeline-item
-                                    v-for="(activity, index) in ProgressList"
-                                    :key="index">
-                                    <div class="tb">
-                                        <span v-if="activity.status == 0" style="color: #43D14F" class="icon"></span>
-                                        <span v-if="activity.status == 1" style="color: #FD7624" class="icon"></span>
-                                        <span v-if="activity.status == 2" style="color: red" class="icon"></span>
-                                        <div>
-                                            <span v-if="activity.status == 0" style="color: #43D14F">{{ $t('normals') }}</span>
-                                            <span v-if="activity.status == 1" style="color: #FD7624">{{ $t('atrisk') }}</span>
-                                            <span v-if="activity.status == 2" style="color: red">{{ $t('withinthetimelimit') }}</span>
-                                            <span style="display: inline-block; float: right; color: #8C8C8C">{{activity.indate | relativeTime}}</span>
+                        <!-- 任务进展完整状态 -->
+                        <el-dialog :title="$t('other.prompts')" :visible.sync="innerVisibless" append-to-body width="500px">
+                        <div class="integrity">
+                            <h3 style="font-weight: normal;display: inline-block;margin: 0 0 20px 0;">{{ $t('taskprogress') }} :{{ProgressList.length}}</h3>
+                            <!-- <span class="write"><i class="el-icon-circle-plus"></i>填写进展</span> -->
+                            <el-divider></el-divider>
+
+                            <!--  -->
+                                <div class="block" style="height: 200px;">
+                                    <el-timeline style="padding:20px 0 0 0;">
+                                        <el-timeline-item
+                                        v-for="(activity, index) in ProgressList"
+                                        :key="index">
+                                        <div class="tb">
+                                            <span v-if="activity.status == 0" style="color: #43D14F" class="icon"></span>
+                                            <span v-if="activity.status == 1" style="color: #FD7624" class="icon"></span>
+                                            <span v-if="activity.status == 2" style="color: red" class="icon"></span>
+                                            <div>
+                                                <span v-if="activity.status == 0" style="color: #43D14F">{{ $t('normals') }}</span>
+                                                <span v-if="activity.status == 1" style="color: #FD7624">{{ $t('atrisk') }}</span>
+                                                <span v-if="activity.status == 2" style="color: red">{{ $t('withinthetimelimit') }}</span>
+                                                <span style="display: inline-block; float: right; color: #8C8C8C">{{activity.indate | relativeTime}}</span>
+                                            </div>
+                                            <p style="color: #8C8C8C">{{activity.content}}</p>
+                                            
                                         </div>
-                                        <p style="color: #8C8C8C">{{activity.content}}</p>
-                                        
-                                    </div>
-                                    </el-timeline-item>
-                                </el-timeline>
-                            </div>
-                         <!--  -->
-                    </div>
-                    <span slot="footer" class="dialog-footer">
-                        <el-button type="primary" @click="innerVisibless = false">{{ $t('Shutdown') }}</el-button>
-                    </span>
-                    </el-dialog>
+                                        </el-timeline-item>
+                                    </el-timeline>
+                                </div>
+                            <!--  -->
+                        </div>
+                        <span slot="footer" class="dialog-footer">
+                            <el-button type="primary" @click="innerVisibless = false">{{ $t('Shutdown') }}</el-button>
+                        </span>
+                        </el-dialog>
 
-                    </template>
+                        </template>
 
-                    <!-- 子任务/关联任务 -->
-                    <p ><i class="iconfont firerock-icontree" style="color:#20A0ff;margin-left:10px;">{{timelabel && !isRelationItem ? $t('guanlian') : $t('zirwu')}}</i>
-                        <el-link style="float:right;" @click="addRelation" v-if="timelabel && !isRelationItem">{{ $t('associatedTask') }}</el-link>
-                        <el-link style="float:right;" @click="addSubTask" v-else>{{ $t('addingsubtask') }}</el-link>
-                    </p>
-                    <!-- 关联任务列表 -->
-                    <el-table key="guanlian" :data="relationSubTaskList" v-if="timelabel && !isRelationItem"
-                    :header-cell-style="{'font-weight':'normal'}"
-                    highlight-current-row
-                    v-loading="listLoading"
-                    style="width: 100%;margin-top:10px;"
-                    @row-click="relationTaskClick">
-                        <el-table-column prop="taskStatus" :label="$t('wan-cheng')" width="50" >
-                            <template slot-scope="scope">
-                                <el-checkbox :disabled="scope.row.taskStatus==2" :checked="scope.row.taskStatus==1?true:false" size="large" class="cb" @change="relationFinishTask(scope.row)" @click.stop.native=""></el-checkbox>
-                            </template>
-                        </el-table-column>
-                        <el-table-column prop="taskName" :label="$t('biao-ti')" >
-                            <template slot-scope="scope">
-                                <el-tooltip class="item" effect="dark" :content="scope.row.taskName" placement="top" style="cursor:pointer;color:#409eff;">
-                                    <span style="overflow: hidden;text-overflow:ellipsis;white-space: nowrap;" > {{scope.row.taskName}}</span>
-                                </el-tooltip>
-                            </template>
-                        </el-table-column>
-                        <el-table-column :label="$t('operation')" width="130" align="left">
-                            <template slot-scope="scope">
-                                <el-button @click.stop.native="deleteRelationItem(scope.row.id)" size="mini">{{ $t('dissociated') }}</el-button>
-                            </template>
-                        </el-table-column>
-                    </el-table>
-                    <!--子任务列表 -->
-                    <el-table key="zi" :data="addForm.subTaskList" v-else
-                            :header-cell-style="{'font-weight':'normal'}"
-                            highlight-current-row v-loading="listLoading" style="width: 100%;margin-top:10px;" @row-click="taskLineClick">
-                                <el-table-column prop="taskStatus" :label="$t('wan-cheng')" width="50" >
+                        <!-- 子任务/关联任务 -->
+                        <p ><i class="iconfont firerock-icontree" style="color:#20A0ff;margin-left:10px;">{{timelabel && !isRelationItem ? $t('guanlian') : $t('zirwu')}}</i>
+                            <el-link style="float:right;" @click="addRelation" v-if="timelabel && !isRelationItem">{{ $t('associatedTask') }}</el-link>
+                            <el-link style="float:right;" @click="addSubTask" v-else>{{ $t('addingsubtask') }}</el-link>
+                        </p>
+                        <!-- 关联任务列表 -->
+                        <el-table key="guanlian" :data="relationSubTaskList" v-if="timelabel && !isRelationItem"
+                        :header-cell-style="{'font-weight':'normal'}"
+                        highlight-current-row
+                        v-loading="listLoading"
+                        style="width: 100%;margin-top:10px;"
+                        @row-click="relationTaskClick">
+                            <el-table-column prop="taskStatus" :label="$t('wan-cheng')" width="50" >
                                 <template slot-scope="scope">
-                                   <el-checkbox :disabled="scope.row.taskStatus==2" :checked="scope.row.taskStatus==1?true:false" size="large" class="cb"  
-                                                @click.stop.native=""
-                                                @change="finishTask(scope.row)"
-                                                ></el-checkbox>
+                                    <el-checkbox :disabled="scope.row.taskStatus==2" :checked="scope.row.taskStatus==1?true:false" size="large" class="cb" @change="relationFinishTask(scope.row)" @click.stop.native=""></el-checkbox>
                                 </template>
                             </el-table-column>
-                            <el-table-column prop="name" :label="$t('biao-ti')" >
+                            <el-table-column prop="taskName" :label="$t('biao-ti')" >
                                 <template slot-scope="scope">
-                                    <el-tooltip class="item" effect="dark" :content="scope.row.name" placement="top">
-                                    <span style="overflow: hidden;text-overflow:ellipsis;white-space: nowrap;" > {{scope.row.name}}</span>
+                                    <el-tooltip class="item" effect="dark" :content="scope.row.taskName" placement="top" style="cursor:pointer;color:#409eff;">
+                                        <span style="overflow: hidden;text-overflow:ellipsis;white-space: nowrap;" > {{scope.row.taskName}}</span>
                                     </el-tooltip>
                                 </template>
                             </el-table-column>
-                            <el-table-column prop="executorName" :label="$t('zhi-hang-ren')" width="100" >
+                            <el-table-column :label="$t('operation')" width="130" align="left">
                                 <template slot-scope="scope">
-                                    <span v-if="user.userNameNeedTranslate != 1">
-                                        {{scope.row.executorName == null?$t('dai-fen-pei'):scope.row.executorName}}
-                                    </span>
-                                    <span v-if="user.userNameNeedTranslate == 1">
-                                        <span v-if="scope.row.executorName == null">
-                                            {{$t('dai-fen-pei')}}
+                                    <el-button @click.stop.native="deleteRelationItem(scope.row.id)" size="mini">{{ $t('dissociated') }}</el-button>
+                                </template>
+                            </el-table-column>
+                        </el-table>
+                        <!--子任务列表 -->
+                        <el-table key="zi" :data="addForm.subTaskList" v-else
+                                :header-cell-style="{'font-weight':'normal'}"
+                                highlight-current-row v-loading="listLoading" style="width: 100%;margin-top:10px;" @row-click="taskLineClick">
+                                    <el-table-column prop="taskStatus" :label="$t('wan-cheng')" width="50" >
+                                    <template slot-scope="scope">
+                                    <el-checkbox :disabled="scope.row.taskStatus==2" :checked="scope.row.taskStatus==1?true:false" size="large" class="cb"  
+                                                    @click.stop.native=""
+                                                    @change="finishTask(scope.row)"
+                                                    ></el-checkbox>
+                                    </template>
+                                </el-table-column>
+                                <el-table-column prop="name" :label="$t('biao-ti')" >
+                                    <template slot-scope="scope">
+                                        <el-tooltip class="item" effect="dark" :content="scope.row.name" placement="top">
+                                        <span style="overflow: hidden;text-overflow:ellipsis;white-space: nowrap;" > {{scope.row.name}}</span>
+                                        </el-tooltip>
+                                    </template>
+                                </el-table-column>
+                                <el-table-column prop="executorName" :label="$t('zhi-hang-ren')" width="100" >
+                                    <template slot-scope="scope">
+                                        <span v-if="user.userNameNeedTranslate != 1">
+                                            {{scope.row.executorName == null?$t('dai-fen-pei'):scope.row.executorName}}
                                         </span>
-                                        <span v-else>
-                                            <ww-open-data type='userName' :openid='scope.row.executorName'></ww-open-data>
+                                        <span v-if="user.userNameNeedTranslate == 1">
+                                            <span v-if="scope.row.executorName == null">
+                                                {{$t('dai-fen-pei')}}
+                                            </span>
+                                            <span v-else>
+                                                <ww-open-data type='userName' :openid='scope.row.executorName'></ww-open-data>
+                                            </span>
                                         </span>
+                                    </template>
+                                </el-table-column>
+                                <el-table-column prop="endDate" :label="$t('deadline')" width="100" >
+                                    <template slot-scope="scope">
+                                        <p v-if="scope.row.endDate >= times">{{scope.row.endDate}}</p>
+                                        <p v-else style="background: #e62412; color: #fff;text-align: center; border-radius: 3px;">{{scope.row.endDate}}</p>
+                                    </template>
+                                </el-table-column>
+                        </el-table>
+                    </div>
+                </el-form>
+
+                <!-- 关联文件列表 -->
+                <template v-if="isEditFile">
+                    <div style="width:100%;margin:1em 0;">
+                        <i class="iconfont firerock-icontree" style="color:#20A0ff;margin-left:10px;">{{ $t('jiafuchengguo') }}</i>
+                        <el-link @click="relationFileClick()" style="float:right;margin-left:10px">{{ $t('associatedfiles') }}</el-link>
+                        <el-upload style="float:right;" action="#" :http-request="uploadFileClick" :show-file-list="false" :multiple="false">
+                            <el-link>{{ $t('uoloadFiles') }}</el-link>
+                        </el-upload>
+                        
+                    </div>
+                    <el-table
+                        v-loading="fileListLoading"
+                        ref="filetable"
+                        :data="taskFileList"
+                        :header-cell-style="{'font-weight':'normal'}"
+                        highlight-current-row
+                        max-height="240"
+                        style="width: 100%;margin-top:10px;margin-bottom:15px">
+                        <el-table-column :label="$t('headerTop.serialNumber')" prop="documentType" min-width="40" align="center">
+                            <template slot-scope="scope">
+                                <div>
+                                    {{scope.$index + 1}}
+                                </div>
+                            </template>
+                        </el-table-column>
+                        <el-table-column :label="$t('filenames')" prop="documentName" min-width="180"></el-table-column>
+                        <el-table-column :label="$t('filesize')" prop="size" min-width="60" align="center"></el-table-column>
+                        <el-table-column :label="$t('founder')" prop="creatorName" min-width="60" align="center">
+                            <template slot-scope="scope">
+                                <div>
+                                    <span v-if="user.userNameNeedTranslate != 1">{{scope.row.creatorName}}</span>
+                                    <span v-if="user.userNameNeedTranslate == 1">
+                                        <ww-open-data type='userName' :openid='scope.row.creatorName'></ww-open-data>
                                     </span>
-                                </template>
-                            </el-table-column>
-                            <el-table-column prop="endDate" :label="$t('deadline')" width="100" >
-                                <template slot-scope="scope">
-                                    <p v-if="scope.row.endDate >= times">{{scope.row.endDate}}</p>
-                                    <p v-else style="background: #e62412; color: #fff;text-align: center; border-radius: 3px;">{{scope.row.endDate}}</p>
-                                </template>
-                            </el-table-column>
+                                </div>
+                            </template>
+                        </el-table-column>
+                        <el-table-column :label="$t('creationtime')" prop="indate" min-width="120" align="center">
+                            <template slot-scope="scope">
+                                <span>{{scope.row.indate[0] + '-' + scope.row.indate[1] + '-' + scope.row.indate[2] + '\u0020\u0020' + scope.row.indate[3] + ':' + scope.row.indate[4] + ':' + scope.row.indate[5]}}</span>
+                            </template>
+                        </el-table-column>
+                        <el-table-column :label="$t('operation')" min-width="90">
+                            <template slot-scope="scope">
+                                <el-link :href="scope.row.url" :download="scope.row.documentName" type="primary" style="margin-right:7px">{{ $t('other.download') }}</el-link>
+                                <el-link @click="taskFileDelete(scope.row.id)">{{ $t('btn.delete') }}</el-link>
+                            </template>
+                        </el-table-column>
                     </el-table>
-                </div>
-            </el-form>
-
-            <!-- 关联文件列表 -->
-            <template v-if="isEditFile">
-                <div style="width:100%;margin:1em 0;">
-                    <i class="iconfont firerock-icontree" style="color:#20A0ff;margin-left:10px;">{{ $t('jiafuchengguo') }}</i>
-                    <el-link @click="relationFileClick()" style="float:right;margin-left:10px">{{ $t('associatedfiles') }}</el-link>
-                    <el-upload style="float:right;" action="#" :http-request="uploadFileClick" :show-file-list="false" :multiple="false">
-                        <el-link>{{ $t('uoloadFiles') }}</el-link>
-                    </el-upload>
-                    
-                </div>
-                <el-table
-                    v-loading="fileListLoading"
-                    ref="filetable"
-                    :data="taskFileList"
-                    :header-cell-style="{'font-weight':'normal'}"
-                    highlight-current-row
-                    max-height="240"
-                    style="width: 100%;margin-top:10px;margin-bottom:15px">
-                    <el-table-column :label="$t('headerTop.serialNumber')" prop="documentType" min-width="40" align="center">
-                        <template slot-scope="scope">
-                            <div>
-                                {{scope.$index + 1}}
-                            </div>
-                        </template>
-                    </el-table-column>
-                    <el-table-column :label="$t('filenames')" prop="documentName" min-width="180"></el-table-column>
-                    <el-table-column :label="$t('filesize')" prop="size" min-width="60" align="center"></el-table-column>
-                    <el-table-column :label="$t('founder')" prop="creatorName" min-width="60" align="center">
-                        <template slot-scope="scope">
-                            <div>
-                                <span v-if="user.userNameNeedTranslate != 1">{{scope.row.creatorName}}</span>
-                                <span v-if="user.userNameNeedTranslate == 1">
-                                    <ww-open-data type='userName' :openid='scope.row.creatorName'></ww-open-data>
-                                </span>
-                            </div>
-                        </template>
-                    </el-table-column>
-                    <el-table-column :label="$t('creationtime')" prop="indate" min-width="120" align="center">
-                        <template slot-scope="scope">
-                            <span>{{scope.row.indate[0] + '-' + scope.row.indate[1] + '-' + scope.row.indate[2] + '\u0020\u0020' + scope.row.indate[3] + ':' + scope.row.indate[4] + ':' + scope.row.indate[5]}}</span>
-                        </template>
-                    </el-table-column>
-                    <el-table-column :label="$t('operation')" min-width="90">
-                        <template slot-scope="scope">
-                            <el-link :href="scope.row.url" :download="scope.row.documentName" type="primary" style="margin-right:7px">{{ $t('other.download') }}</el-link>
-                            <el-link @click="taskFileDelete(scope.row.id)">{{ $t('btn.delete') }}</el-link>
-                        </template>
-                    </el-table-column>
-                </el-table>
-            </template>
-
-            <!-- 关联文件dialog -->
-            <el-dialog v-if="relationFileDialog" :visible.sync="relationFileDialog" :title="$t('associatedfiles')" append-to-body>
-                <span>{{ $t('wenjian1guanli') }}</span>
-                <div>
-                    <span>{{ $t('xuanzwenjian') }}</span>
-                    <el-select v-model="addFileId">
-                        <el-option
-                            v-for="item in projectFileList"
-                            :key="item.id"
-                            :label="item.documentName"
-                            :value="item.id"
-                        ></el-option>
-                    </el-select>
-                    <el-button @click="addTaskFile()">{{ $t('btn.determine') }}</el-button>
-                    <!-- <el-button @click="relationFileDialog = false">取消</el-button> -->
-                </div>
-            </el-dialog>
+                </template>
 
-            <el-dialog v-if="isRelationTab" :visible.sync="isRelationTab" :title="$t('associatedTask')" width="800px" append-to-body>
-                <el-form ref="relationItemForm" label-width="100px">
-                    <el-form-item :label="$t('selecttask')" prop="taskType">
-                        <el-select v-model="relationvalue" multiple style="width:80%">
+                <!-- 关联文件dialog -->
+                <el-dialog v-if="relationFileDialog" :visible.sync="relationFileDialog" :title="$t('associatedfiles')" append-to-body>
+                    <span>{{ $t('wenjian1guanli') }}</span>
+                    <div>
+                        <span>{{ $t('xuanzwenjian') }}</span>
+                        <el-select v-model="addFileId">
                             <el-option
-                            v-for="item in relationdata"
-                            :key="item.id"
-                            :label="item.name"
-                            :value="item.id"
+                                v-for="item in projectFileList"
+                                :key="item.id"
+                                :label="item.documentName"
+                                :value="item.id"
                             ></el-option>
                         </el-select>
-                    </el-form-item>
-                </el-form>
-                <div slot="footer" class="dialog-footer">
-                    <el-button @click="isRelationTab = false">{{ $t('btn.cancel') }}</el-button>
-                    <el-button type="primary" @click="addRelationTask()">{{ $t('btn.determine') }}</el-button>
-                </div>
-            </el-dialog>
-
+                        <el-button @click="addTaskFile()">{{ $t('btn.determine') }}</el-button>
+                        <!-- <el-button @click="relationFileDialog = false">取消</el-button> -->
+                    </div>
+                </el-dialog>
+
+                <el-dialog v-if="isRelationTab" :visible.sync="isRelationTab" :title="$t('associatedTask')" width="800px" append-to-body>
+                    <el-form ref="relationItemForm" label-width="100px">
+                        <el-form-item :label="$t('selecttask')" prop="taskType">
+                            <el-select v-model="relationvalue" multiple style="width:80%">
+                                <el-option
+                                v-for="item in relationdata"
+                                :key="item.id"
+                                :label="item.name"
+                                :value="item.id"
+                                ></el-option>
+                            </el-select>
+                        </el-form-item>
+                    </el-form>
+                    <div slot="footer" class="dialog-footer">
+                        <el-button @click="isRelationTab = false">{{ $t('btn.cancel') }}</el-button>
+                        <el-button type="primary" @click="addRelationTask()">{{ $t('btn.determine') }}</el-button>
+                    </div>
+                </el-dialog>
+            </div>
 
             <div slot="footer" class="dialog-footer">
                 <el-button v-if="(user.id == addForm.createrId || currentProject.inchargerId == user.id || currentProject.creatorId == user.id || permissions.projectManagement) && canAddTask" @click.native="deleteTask()" style="float:left;">{{ $t('btn.delete') }}</el-button>
@@ -3531,7 +3531,7 @@ overflow: auto;
 }
 .sub-details {
     width: 100%;
-    height: 87%;
+    height: 38vh;
     padding-right: 15px;
     box-sizing: border-box;
     overflow: hidden;

+ 0 - 1
fhKeeper/formulahousekeeper/timesheet/src/views/quanx/quanx.vue

@@ -178,7 +178,6 @@ export default {
     this.tableHeight = height - 125;
   },
   mounted() {
-    console.log(this.tableHeight, '高度')
     this.getRole()
     // this.shisha()
   },

+ 163 - 161
fhKeeper/formulahousekeeper/timesheet/src/views/task/list.vue

@@ -216,185 +216,187 @@
 
         <!-- 任务详情信息弹出框 -->
         <el-dialog :class="addForm.id==null?'':'jm'" :title="title" v-if="addFormVisible" :visible.sync="addFormVisible" 
-        :close-on-click-modal="false" customClass="customWidth" width="800px">
+        :close-on-click-modal="false" customClass="customWidth" width="800px" :top="'6vh'">
         <!-- <div style="width: 200%;height:80%;position: absolute;right:-100%;top:0;background:#000;opacity: 0;" @click="sss"></div> -->
-            <el-form ref="form1" :model="addForm" :rules="taskRules" label-width="100px">
-                <!--子任务需要选择任务列表 -->
-                <el-form-item :label="$t('tasklist')" prop="stages" v-if="addForm.parentTid != null">
-                    <el-select v-model="addForm.stagesId" style="width:100%;" >
-                        <el-option v-for="item in stageList" :key="item.id" :label="item.stagesName" :value="item.id"></el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item :label="$t('types')">
-                    <el-select v-model="addForm.taskType" style="width:100%;" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement">
-                        <el-option v-for="item in taskTypeList" :key="item.id" :label="item.name" :value="item.id">
-                            <i :class="item.icon" ></i>
-                            <span>{{item.name}}</span>
-                        </el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item :label="$t('taskdefinition')" prop="name">
-                    <el-input v-model="addForm.name" :maxlength="40" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement" :placeholder="$t('enterthetaskcontent')" clearable></el-input>
-                </el-form-item>
-                
-                <el-form-item :label="addForm.taskType == 1 ? $t('deadline') : $t('starttimes')" :prop="addForm.taskType == 1 ? 'endDate' : 'startDate'">
-                    <el-date-picker v-model="addForm.startDate" type="date" style="width:40%;" value-format="yyyy-MM-dd"  
-                    :placeholder="$t('pleaseselectadate')" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement" v-if="addForm.taskType != 1"></el-date-picker>
-                    <span style="margin-left:30px;margin-right:10px;" v-if="addForm.taskType != 1">{{ $t('deadline') }}</span>
-                    <el-date-picker v-model="addForm.endDate" type="date" value-format="yyyy-MM-dd"  
-                    :placeholder="$t('pleaseselectadate')" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement"></el-date-picker>
+            <div style="height: 72vh;overflow: auto;">
+                <el-form ref="form1" :model="addForm" :rules="taskRules" label-width="100px">
+                    <!--子任务需要选择任务列表 -->
+                    <el-form-item :label="$t('tasklist')" prop="stages" v-if="addForm.parentTid != null">
+                        <el-select v-model="addForm.stagesId" style="width:100%;" >
+                            <el-option v-for="item in stageList" :key="item.id" :label="item.stagesName" :value="item.id"></el-option>
+                        </el-select>
+                    </el-form-item>
+                    <el-form-item :label="$t('types')">
+                        <el-select v-model="addForm.taskType" style="width:100%;" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement">
+                            <el-option v-for="item in taskTypeList" :key="item.id" :label="item.name" :value="item.id">
+                                <i :class="item.icon" ></i>
+                                <span>{{item.name}}</span>
+                            </el-option>
+                        </el-select>
+                    </el-form-item>
+                    <el-form-item :label="$t('taskdefinition')" prop="name">
+                        <el-input v-model="addForm.name" :maxlength="40" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement" :placeholder="$t('enterthetaskcontent')" clearable></el-input>
                     </el-form-item>
-                <div style="border: 1px solid #ddd;margin:5px 0;padding:5px 0;">
-                <el-form-item :label="$t('zhi-hang-ren')+(index+1)" v-for="(executorItem, index) in addForm.executorListFront" :key="index">
-
-                    <el-select v-if="user.userNameNeedTranslate != '1'" v-model="executorItem.executorId" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement" size="small" filterable clearable :placeholder="$t('pleaseselectanexecutor')" style="width:40%;" @change="$forceUpdate()">
-                        <el-option v-for="item in users" :key="item.id" :label="item.name" :value="item.id">
-                            <span style="float: left">{{ item.name }}</span>
-                            <span style="float: right; color: #8492a6; font-size: 13px;margin-left: 20px" v-if="item.jobNumber">{{ item.jobNumber }}</span>
-                        </el-option>
-                    </el-select>
                     
-                    <selectCat :subject="users" :subjectId="executorItem.executorId" :index="index" @selectCal="selectCal" :size="'mini'" v-if="user.userNameNeedTranslate == '1'"></selectCat>
+                    <el-form-item :label="addForm.taskType == 1 ? $t('deadline') : $t('starttimes')" :prop="addForm.taskType == 1 ? 'endDate' : 'startDate'">
+                        <el-date-picker v-model="addForm.startDate" type="date" style="width:40%;" value-format="yyyy-MM-dd"  
+                        :placeholder="$t('pleaseselectadate')" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement" v-if="addForm.taskType != 1"></el-date-picker>
+                        <span style="margin-left:30px;margin-right:10px;" v-if="addForm.taskType != 1">{{ $t('deadline') }}</span>
+                        <el-date-picker v-model="addForm.endDate" type="date" value-format="yyyy-MM-dd"  
+                        :placeholder="$t('pleaseselectadate')" :disabled="(this.addForm.id != null && user.id != this.addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement"></el-date-picker>
+                        </el-form-item>
+                    <div style="border: 1px solid #ddd;margin:5px 0;padding:5px 0;">
+                    <el-form-item :label="$t('zhi-hang-ren')+(index+1)" v-for="(executorItem, index) in addForm.executorListFront" :key="index">
 
-                    <span style="margin-left:30px;margin-right:10px;">{{ $t('plantime') }}</span>
-                    <el-input-number size="small" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement" v-model="executorItem.planHours" style="width:30%;" :min="1" :max="100"  :placeholder="$t('pleaseentertheplannedworking')" ></el-input-number ><span style="margin-left:10px;">{{ $t('time.hour') }}</span>
-                    <!--移除执行人 -->
-                    <i class="el-icon-delete" v-if="index>0 && (addForm.id == null|| user.id == addForm.createrId || currentProject.inchargerId == user.id|| permissions.projectManagement)" style="margin-left:5px" @click="removeExecutorLine(index)"></i>
-                </el-form-item>
-                <el-link type="primary" v-if="(addForm.executorListFront == null || addForm.executorListFront.length<10)&& (addForm.id == null|| user.id == addForm.createrId || currentProject.inchargerId == user.id || permissions.projectManagement)" style="margin-left:35px;" @click="addExecutorLine">{{ $t('addinganexecutor') }}</el-link>
-                </div>
-                
-                <el-form-item :label="$t('priority')">
-                    <el-select v-model="addForm.taskLevel" style="width:100%;" >
-                        <el-option v-for="item in importanceList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                    </el-select>
-                </el-form-item>
-                <!-- 富文本 -->
-                <el-form-item :label="$t('detaileddescription')" style="height: 200px">
-                    <!-- <Editor id="tinymce" v-model="tinymceHtml" :init="editorInit"></Editor> -->
-                    <!-- <el-input type="textarea" v-model="addForm.taskDesc" :rows="3"></el-input> -->
-                      <!-- <quill-edito v-model="addForm.taskDesc"></quill-edito> -->
-                      <quill-editor style="height: 150px" ref="text" v-model="addForm.taskDesc" class="myQuillEditor" :options="editorOption" @blur="onEditorBlur($event)" @focus="onEditorFocus($event)"/>
-                </el-form-item>
-                <!-- 富文本 -->
-                <div v-if="addForm.id != null">
-                    <el-divider ></el-divider>
-                    <!-- 任务进展 -->
-                    <p ><i class="iconfont firerock-icontree" style="color:#20A0ff;margin-left:10px;">{{ $t('taskprogress') }}</i>
-                        <span ref="addPro" style="display: block; float:right;"><el-link @click="addprogress">{{ $t('addtaskprogress') }}</el-link></span>
-                    </p>
-                    <!-- 任务进展展示 -->
-                    <div style="display: none;" ref="proBox" class="progress">
-                        <!-- <el-form :model="> -->
-                        <el-radio-group v-model="radio">
-                            <el-radio :label="0" class="rala1">{{ $t('normals') }}</el-radio>
-                            <el-radio :label="1" class="rala2">{{ $t('atrisk') }}</el-radio>
-                            <el-radio :label="2" class="rala3">{{ $t('withinthetimelimit') }}</el-radio>
-                        </el-radio-group>
+                        <el-select v-if="user.userNameNeedTranslate != '1'" v-model="executorItem.executorId" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement" size="small" filterable clearable :placeholder="$t('pleaseselectanexecutor')" style="width:40%;" @change="$forceUpdate()">
+                            <el-option v-for="item in users" :key="item.id" :label="item.name" :value="item.id">
+                                <span style="float: left">{{ item.name }}</span>
+                                <span style="float: right; color: #8492a6; font-size: 13px;margin-left: 20px" v-if="item.jobNumber">{{ item.jobNumber }}</span>
+                            </el-option>
+                        </el-select>
+                        
+                        <selectCat :subject="users" :subjectId="executorItem.executorId" :index="index" @selectCal="selectCal" :size="'mini'" v-if="user.userNameNeedTranslate == '1'"></selectCat>
+
+                        <span style="margin-left:30px;margin-right:10px;">{{ $t('plantime') }}</span>
+                        <el-input-number size="small" :disabled="(addForm.id != null && user.id != addForm.createrId && currentProject.inchargerId != user.id) && !permissions.projectManagement" v-model="executorItem.planHours" style="width:30%;" :min="1" :max="100"  :placeholder="$t('pleaseentertheplannedworking')" ></el-input-number ><span style="margin-left:10px;">{{ $t('time.hour') }}</span>
+                        <!--移除执行人 -->
+                        <i class="el-icon-delete" v-if="index>0 && (addForm.id == null|| user.id == addForm.createrId || currentProject.inchargerId == user.id|| permissions.projectManagement)" style="margin-left:5px" @click="removeExecutorLine(index)"></i>
+                    </el-form-item>
+                    <el-link type="primary" v-if="(addForm.executorListFront == null || addForm.executorListFront.length<10)&& (addForm.id == null|| user.id == addForm.createrId || currentProject.inchargerId == user.id || permissions.projectManagement)" style="margin-left:35px;" @click="addExecutorLine">{{ $t('addinganexecutor') }}</el-link>
+                    </div>
+                    
+                    <el-form-item :label="$t('priority')">
+                        <el-select v-model="addForm.taskLevel" style="width:100%;" >
+                            <el-option v-for="item in importanceList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                        </el-select>
+                    </el-form-item>
+                    <!-- 富文本 -->
+                    <el-form-item :label="$t('detaileddescription')" style="height: 200px">
+                        <!-- <Editor id="tinymce" v-model="tinymceHtml" :init="editorInit"></Editor> -->
+                        <!-- <el-input type="textarea" v-model="addForm.taskDesc" :rows="3"></el-input> -->
+                        <!-- <quill-edito v-model="addForm.taskDesc"></quill-edito> -->
+                        <quill-editor style="height: 150px" ref="text" v-model="addForm.taskDesc" class="myQuillEditor" :options="editorOption" @blur="onEditorBlur($event)" @focus="onEditorFocus($event)"/>
+                    </el-form-item>
+                    <!-- 富文本 -->
+                    <div v-if="addForm.id != null">
+                        <el-divider ></el-divider>
+                        <!-- 任务进展 -->
+                        <p ><i class="iconfont firerock-icontree" style="color:#20A0ff;margin-left:10px;">{{ $t('taskprogress') }}</i>
+                            <span ref="addPro" style="display: block; float:right;"><el-link @click="addprogress">{{ $t('addtaskprogress') }}</el-link></span>
+                        </p>
+                        <!-- 任务进展展示 -->
+                        <div style="display: none;" ref="proBox" class="progress">
+                            <!-- <el-form :model="> -->
+                            <el-radio-group v-model="radio">
+                                <el-radio :label="0" class="rala1">{{ $t('normals') }}</el-radio>
+                                <el-radio :label="1" class="rala2">{{ $t('atrisk') }}</el-radio>
+                                <el-radio :label="2" class="rala3">{{ $t('withinthetimelimit') }}</el-radio>
+                            </el-radio-group>
 
-                        <el-input
-                        type="textarea"
-                        border="0"
-                        :autosize="{ minRows: 2, maxRows: 6}"
-                        :placeholder="$t('detailedprogressdescription')"
-                        v-model.trim="text2"
-                        style="margin:10px 0 0 0">
-                        </el-input>
+                            <el-input
+                            type="textarea"
+                            border="0"
+                            :autosize="{ minRows: 2, maxRows: 6}"
+                            :placeholder="$t('detailedprogressdescription')"
+                            v-model.trim="text2"
+                            style="margin:10px 0 0 0">
+                            </el-input>
 
-                        <h4 style="font-weight: normal;">{{ $t('whotoremindtocheck') +':'}}{{checkLists.length}}</h4>
+                            <h4 style="font-weight: normal;">{{ $t('whotoremindtocheck') +':'}}{{checkLists.length}}</h4>
 
-                        <i class="el-icon-circle-plus pron_i" style="font-size: 28px;color: #409EFF;" @click="addI(0)"></i>
+                            <i class="el-icon-circle-plus pron_i" style="font-size: 28px;color: #409EFF;" @click="addI(0)"></i>
 
-                        <div class="remind" ref="addRem" style="display: none">
-                            <el-checkbox-group v-model="checkboxGrounp" v-for="item in users" :key="item.id">
-                                <p>
-                                    <el-checkbox :label="item.name" @change="kkk(item)">
-                                        <span>
-                                            <span v-if="user.userNameNeedTranslate != '1'">
-                                                {{item.name}}
-                                            </span>
-                                            <span v-if="user.userNameNeedTranslate == '1'">
-                                                <ww-open-data type='userName' :openid='item.name'></ww-open-data>
+                            <div class="remind" ref="addRem" style="display: none">
+                                <el-checkbox-group v-model="checkboxGrounp" v-for="item in users" :key="item.id">
+                                    <p>
+                                        <el-checkbox :label="item.name" @change="kkk(item)">
+                                            <span>
+                                                <span v-if="user.userNameNeedTranslate != '1'">
+                                                    {{item.name}}
+                                                </span>
+                                                <span v-if="user.userNameNeedTranslate == '1'">
+                                                    <ww-open-data type='userName' :openid='item.name'></ww-open-data>
+                                                </span>
                                             </span>
-                                        </span>
-                                    </el-checkbox>
-                                </p>
-                            </el-checkbox-group>
-                        </div>
-                        <div class="ssp" @click="sss"></div>
-                        <!-- </el-form> -->
-                        <div class="pro_btn">
-                            <el-button size="mini" @click="shutPro">{{ $t('btn.cancel') }}</el-button>
-                            <el-button size="mini" type="primary" @click="addTaskProgress">{{ $t('fa-bu') }}</el-button>
-                        </div>
+                                        </el-checkbox>
+                                    </p>
+                                </el-checkbox-group>
+                            </div>
+                            <div class="ssp" @click="sss"></div>
+                            <!-- </el-form> -->
+                            <div class="pro_btn">
+                                <el-button size="mini" @click="shutPro">{{ $t('btn.cancel') }}</el-button>
+                                <el-button size="mini" type="primary" @click="addTaskProgress">{{ $t('fa-bu') }}</el-button>
+                            </div>
 
-                    </div>
+                        </div>
 
-                    <div class="ddl" v-if="recentProgressInfo != null && recentProgressInfo.id != null">
-                        <div class="elCard" style="margin-bottom: 10px; height:" >
-                            <i class="el-icon-success" style="color: #43d14f;" v-if="recentProgressInfo.status == 0"></i>
-                            <i class="el-icon-success" style="color: #fd7624;" v-else-if="recentProgressInfo.status == 1"></i>
-                            <i class="el-icon-success" style="color: #fd4d47;" v-else></i>
-                            <span v-if="recentProgressInfo.status == 0">{{ $t('normals') }}</span>
-                            <span v-else-if="recentProgressInfo.status == 1">{{ $t('normals') }}</span>
-                            <span v-else>{{ $t('withinthetimelimit') }}</span>
+                        <div class="ddl" v-if="recentProgressInfo != null && recentProgressInfo.id != null">
+                            <div class="elCard" style="margin-bottom: 10px; height:" >
+                                <i class="el-icon-success" style="color: #43d14f;" v-if="recentProgressInfo.status == 0"></i>
+                                <i class="el-icon-success" style="color: #fd7624;" v-else-if="recentProgressInfo.status == 1"></i>
+                                <i class="el-icon-success" style="color: #fd4d47;" v-else></i>
+                                <span v-if="recentProgressInfo.status == 0">{{ $t('normals') }}</span>
+                                <span v-else-if="recentProgressInfo.status == 1">{{ $t('normals') }}</span>
+                                <span v-else>{{ $t('withinthetimelimit') }}</span>
 
-                            <el-dropdown trigger="click" style="float:right;cursor:pointer; float: right;">
-                                    <i class="el-icon-more" ></i>
-                                    <el-dropdown-menu slot="dropdown">
+                                <el-dropdown trigger="click" style="float:right;cursor:pointer; float: right;">
+                                        <i class="el-icon-more" ></i>
+                                        <el-dropdown-menu slot="dropdown">
 
-                                        <el-dropdown-item divided>
-                                            <span @click="deleteTaskProgress(recentProgressInfo.id)"><i class="el-icon-delete"></i>{{ $t('deleteList ') }}</span></el-dropdown-item>
-                                    </el-dropdown-menu>
-                            </el-dropdown>
-                            <div class="elCard_qu">{{recentProgressInfo.creatorName}}{{ $t('geng-xin-yu') }}{{recentProgressInfo.indate | relativeTime}}</div>
-                            <p style="padding-left: 20px;">{{recentProgressInfo.content}}</p>
-                            <div class="examine"><el-button type="text" @click="innerVisibless = true" style="color: #8F87A3;">{{ $t('viewingHistory') }}</el-button></div>
+                                            <el-dropdown-item divided>
+                                                <span @click="deleteTaskProgress(recentProgressInfo.id)"><i class="el-icon-delete"></i>{{ $t('deleteList ') }}</span></el-dropdown-item>
+                                        </el-dropdown-menu>
+                                </el-dropdown>
+                                <div class="elCard_qu">{{recentProgressInfo.creatorName}}{{ $t('geng-xin-yu') }}{{recentProgressInfo.indate | relativeTime}}</div>
+                                <p style="padding-left: 20px;">{{recentProgressInfo.content}}</p>
+                                <div class="examine"><el-button type="text" @click="innerVisibless = true" style="color: #8F87A3;">{{ $t('viewingHistory') }}</el-button></div>
+                            </div>
                         </div>
-                    </div>
 
-                    <!-- 任务列表没有数据的时候展示 -->
-                    <div class="nones" v-if="ProgressList.length <= 0">
-                        {{ $t('nodata') }} 
-                    </div>
+                        <!-- 任务列表没有数据的时候展示 -->
+                        <div class="nones" v-if="ProgressList.length <= 0">
+                            {{ $t('nodata') }} 
+                        </div>
 
-                    <!-- 任务进展完整状态 -->
-                    <el-dialog :title="$t('other.prompts')" :visible.sync="innerVisibless" append-to-body width="500px">
-                    <div class="integrity">
-                        <h3 style="font-weight: normal;display: inline-block;margin: 0 0 20px 0;">{{ $t('taskprogress') }}:{{ProgressList.length}}</h3>
-                        <!-- <span class="write"><i class="el-icon-circle-plus"></i>填写进展</span> -->
-                         <el-divider></el-divider>
+                        <!-- 任务进展完整状态 -->
+                        <el-dialog :title="$t('other.prompts')" :visible.sync="innerVisibless" append-to-body width="500px">
+                        <div class="integrity">
+                            <h3 style="font-weight: normal;display: inline-block;margin: 0 0 20px 0;">{{ $t('taskprogress') }}:{{ProgressList.length}}</h3>
+                            <!-- <span class="write"><i class="el-icon-circle-plus"></i>填写进展</span> -->
+                            <el-divider></el-divider>
 
-                         <!--  -->
-                            <div class="block" style="height: 200px;">
-                                <el-timeline style="padding:20px 0 0 0;">
-                                    <el-timeline-item
-                                    v-for="(activity, index) in ProgressList"
-                                    :key="index">
-                                    <div class="tb">
-                                        <span v-if="activity.status == 0" style="color: #43D14F" class="icon"></span>
-                                        <span v-if="activity.status == 1" style="color: #FD7624" class="icon"></span>
-                                        <span v-if="activity.status == 2" style="color: red" class="icon"></span>
-                                        <div>
-                                            <span v-if="activity.status == 0" style="color: #43D14F">{{ $t('normals') }}</span>
-                                            <span v-if="activity.status == 1" style="color: #FD7624">{{ $t('atrisk') }}</span>
-                                            <span v-if="activity.status == 2" style="color: red">{{ $t('withinthetimelimit') }}</span>
-                                            <span style="display: inline-block; float: right; color: #8C8C8C">{{activity.indate | relativeTime}}</span>
+                            <!--  -->
+                                <div class="block" style="height: 200px;">
+                                    <el-timeline style="padding:20px 0 0 0;">
+                                        <el-timeline-item
+                                        v-for="(activity, index) in ProgressList"
+                                        :key="index">
+                                        <div class="tb">
+                                            <span v-if="activity.status == 0" style="color: #43D14F" class="icon"></span>
+                                            <span v-if="activity.status == 1" style="color: #FD7624" class="icon"></span>
+                                            <span v-if="activity.status == 2" style="color: red" class="icon"></span>
+                                            <div>
+                                                <span v-if="activity.status == 0" style="color: #43D14F">{{ $t('normals') }}</span>
+                                                <span v-if="activity.status == 1" style="color: #FD7624">{{ $t('atrisk') }}</span>
+                                                <span v-if="activity.status == 2" style="color: red">{{ $t('withinthetimelimit') }}</span>
+                                                <span style="display: inline-block; float: right; color: #8C8C8C">{{activity.indate | relativeTime}}</span>
+                                            </div>
+                                            <p style="color: #8C8C8C">{{activity.content}}</p>
+                                            
                                         </div>
-                                        <p style="color: #8C8C8C">{{activity.content}}</p>
-                                        
-                                    </div>
-                                    </el-timeline-item>
-                                </el-timeline>
-                            </div>
-                         <!--  -->
-                    </div>
-                    <span slot="footer" class="dialog-footer">
-                        <el-button type="primary" @click="innerVisibless = false">{{ $t('Shutdown') }}</el-button>
-                    </span>
-                    </el-dialog>
-                    </div>
-            </el-form>
+                                        </el-timeline-item>
+                                    </el-timeline>
+                                </div>
+                            <!--  -->
+                        </div>
+                        <span slot="footer" class="dialog-footer">
+                            <el-button type="primary" @click="innerVisibless = false">{{ $t('Shutdown') }}</el-button>
+                        </span>
+                        </el-dialog>
+                        </div>
+                </el-form>
+            </div>
             <div slot="footer" class="dialog-footer">
                 <el-button v-if="user.id == addForm.createrId || currentProject.inchargerId == user.id || currentProject.creatorId == user.id || permissions.projectManagement" @click.native="deleteTask" style="float:left;">{{ $t('btn.delete') }}</el-button>
                 <el-button @click.native="addFormVisible = false">{{ $t('btn.cancel') }}</el-button>

+ 84 - 82
fhKeeper/formulahousekeeper/timesheet/src/views/team/index.vue

@@ -324,89 +324,91 @@
         </el-dialog>
 
         <!-- 新增/编辑人员的Dialog -->
-        <el-dialog :title="title" :visible.sync="dialogVisible" width="550px" >
-            <el-form ref="form12" :model="insertForm" :rules="rules" label-width="80px">
-                <el-form-item :label="$t('lable.name')" prop="name">
-                    <el-input v-model="insertForm.name" :placeholder="$t('peaseenterthe')" clearable :disabled="user.userNameNeedTranslate == '1'"></el-input>
-                </el-form-item>
-                <el-form-item :label="$t('phone')" prop="phone">
-                    <el-input v-model="insertForm.phone" :placeholder="$t('peaseenterthe')" clearable></el-input>
-                </el-form-item>
-                <el-form-item :label="$t('Worknumber')" prop="jobNumber">
-                    <el-input v-model="insertForm.jobNumber" :placeholder="$t('peaseenterthe')" clearable></el-input>
-                </el-form-item>
-                <el-form-item :label="$t('payway')" prop="salaryType" v-if="permissions.structurePersonnel&&user.timeType.isSecretSalary==0">
-                    <el-radio-group v-model="insertForm.salaryType" @change="onSalaryTypeChange">
-                    <el-radio  :label="0" >{{ $t('fixedmonthlycost') }}</el-radio>
-                    <el-radio  :label="1">{{ $t('hourlywages') }}</el-radio>
-                    </el-radio-group>
-                </el-form-item>
-                <el-form-item :label="$t('monthcost')" prop="monthCost" v-if="insertForm.salaryType == 0 && permissions.structurePersonnel&&user.timeType.isSecretSalary==0">
-                    <el-input v-model="insertForm.monthCost" id="mc" @input="oninput" :placeholder="$t('yuechengben')" clearable @keyup.native="restrictNumber('mc')"></el-input>
-                    <span style="color:orange;font-size:12px;">{{ $t('yuegongzuoo') }}{{timeType.monthDays}}{{ $t('time.day') }},{{$t('meitian')}}{{timeType.allday}}{{ $t('xiaoshi') }}</span>
-                    <el-link :underline="false" style="color:blue;font-size:12px;margin-left:7px;" href="#/timetype">{{ $t('modifyworkinghours') }}</el-link>
-                </el-form-item>
-                <el-form-item :label="$t('hourlywage')" prop="cost" v-if="permissions.structurePersonnel&&user.timeType.isSecretSalary==0">
-                    <el-input v-model="insertForm.cost" :disabled="insertForm.salaryType == 0" id="cc" style="width:120px;" @keyup.native="restrictNumber4('cc')"
-                     :placeholder="$t('yuechengbenxiaoshi')" clearable></el-input>
-                    <span style="margin-left:25px;">{{ $t('effectivedate') }}</span>
-                    <el-date-picker v-model="insertForm.costApplyDate" value-format="yyyy-MM-dd"></el-date-picker>
-                </el-form-item>
-                <el-form-item :label="$t('lable.department')" prop="departmentId">
-                    <!-- <el-cascader v-model="insertForm.departmentId" placeholder="请选择部门" style="width: 100%"
-                    :options="option" :props="{ checkStrictly: false,expandTrigger: 'hover' }" :show-all-levels="false" clearable></el-cascader> -->
-                    <el-cascader v-model="insertForm.departmentId" :placeholder="$t('qing-xuan-ze-bu-men')" style="width: 100%"
-                    :options="option" :props="{ checkStrictly: true,expandTrigger: 'hover' }" :show-all-levels="false"  clearable v-if="user.userNameNeedTranslate != 1"></el-cascader>
-
-                    <vueCascader :size="'medium'" :widthStr="'430'" :clearable="true" :subject="option" :subjectId="insertForm.departmentId" :radios="true" :distinction="'2'" @vueCasader="vueCasader" v-if="user.userNameNeedTranslate == 1"></vueCascader>
-
-                </el-form-item>
-                <!-- <el-form-item :label="$t('immediatesuperior')">
-                    <el-select v-model="insertForm.superiorId" :placeholder="$t('defaultText.pleaseChoose')" style="width: 100%" filterable clearable>
-                        <el-option v-for="item in users" :label="item.name" :value="item.id" :key="item.id" :disabled="item.id == insertForm.id">
-                            <span style="float: left">{{item.name}}</span>
-                            <span style="float: right; color: #8492a6; font-size: 13px">{{item.departmentName}}</span>
-                        </el-option>
-                    </el-select>
-                </el-form-item> -->
-                <el-form-item :label="$t('jiao-se')" prop="roleId">
-                    <el-select v-model="insertForm.roleId" :placeholder="$t('defaultText.pleaseChoose')" style="width: 100%">
-                        <el-option v-for="item in acquireRoleList" :label="item.rolename" :value="item.id" :key="item.name">
-                            <span style="float: left">{{item.rolename}}</span>
-                            <span style="float: right; color: #8492a6; font-size: 13px">{{item.roleDescribe}}</span>
-                        </el-option>
-                    </el-select>
-                </el-form-item>
-                <el-form-item :label="item.name" v-for="item,index in userCustomConfig" :key="item.id">
-                    <el-select v-if="item.type == 0" v-model="insertForm[suoying[index]]" :placeholder="$t('defaultText.pleaseChoose')" clearable style="width: 100%">
-                        <el-option v-for="option in item.itemList" :label="option.name" :value="option.name" :key="option.id">
-                        </el-option>
-                    </el-select>
-                    <el-input v-else v-model="insertForm[suoying[index]]" :placeholder="$t('peaseenterthe')" clearable></el-input>
-                </el-form-item>
-                <el-form-item :label="$t('entrytime')" prop="phone">
-                    <el-date-picker v-model="insertForm.inductionDate" value-format="yyyy-MM-dd"></el-date-picker>
-                </el-form-item>
-                <el-form-item :label="$t('postrank')" prop="phone">
-                    <el-input v-model="insertForm.position" :placeholder="$t('joblevel')" clearable></el-input>
-                </el-form-item>
-
-                <div class="zhaunye"><p>{{ $t('professionalcertificate') }}</p><p><el-link type="primary" @click="addCertificateList()">{{ $t('addprofessionalcertificate') }}</el-link><el-link v-if="permissions.structureCertificate" type="primary" @click="managementDiolog = true" style="margin-left: 20px">{{ $t('professionalCertificate inManagement') }}</el-link></p></div>
-                <div class="certificateList">
-                    <div class="moreList">
-                        <div class="moreLiList" v-for="(item,index) in insertForm.certJson" :key="index">
-                            <div style="margin-right: 10px;width: 160px;">
-                                <el-select v-model="item.certId" :placeholder="$t('defaultText.pleaseChoose')" size="mini" @change="changeManagement(index)">
-                                    <el-option v-for="item in managementTableData" :key="item.id" :label="item.name" :value="item.id"> </el-option>
-                                </el-select>
-                            </div>
-                            <div><span>{{ $t('certificate') }}</span><el-date-picker size="mini" v-model="item.certDate" type="date" value-format="yyyy-MM-dd" :placeholder="$t('certificatedate')" style="width: 180px"></el-date-picker></div>
-                            <div style="color: red;margin-left: 15px;cursor:pointer;" @click="deteFrames(index)"><i class="el-icon-delete"></i></div>
-                        </div>
-                    </div>
-                </div>
+        <el-dialog :title="title" :visible.sync="dialogVisible" width="550px" :top="'7.5vh'">
+            <div style="height: 62vh;overflow: auto;">
+              <el-form ref="form12" :model="insertForm" :rules="rules" label-width="80px">
+                  <el-form-item :label="$t('lable.name')" prop="name">
+                      <el-input v-model="insertForm.name" :placeholder="$t('peaseenterthe')" clearable :disabled="user.userNameNeedTranslate == '1'"></el-input>
+                  </el-form-item>
+                  <el-form-item :label="$t('phone')" prop="phone">
+                      <el-input v-model="insertForm.phone" :placeholder="$t('peaseenterthe')" clearable></el-input>
+                  </el-form-item>
+                  <el-form-item :label="$t('Worknumber')" prop="jobNumber">
+                      <el-input v-model="insertForm.jobNumber" :placeholder="$t('peaseenterthe')" clearable></el-input>
+                  </el-form-item>
+                  <el-form-item :label="$t('payway')" prop="salaryType" v-if="permissions.structurePersonnel&&user.timeType.isSecretSalary==0">
+                      <el-radio-group v-model="insertForm.salaryType" @change="onSalaryTypeChange">
+                      <el-radio  :label="0" >{{ $t('fixedmonthlycost') }}</el-radio>
+                      <el-radio  :label="1">{{ $t('hourlywages') }}</el-radio>
+                      </el-radio-group>
+                  </el-form-item>
+                  <el-form-item :label="$t('monthcost')" prop="monthCost" v-if="insertForm.salaryType == 0 && permissions.structurePersonnel&&user.timeType.isSecretSalary==0">
+                      <el-input v-model="insertForm.monthCost" id="mc" @input="oninput" :placeholder="$t('yuechengben')" clearable @keyup.native="restrictNumber('mc')"></el-input>
+                      <span style="color:orange;font-size:12px;">{{ $t('yuegongzuoo') }}{{timeType.monthDays}}{{ $t('time.day') }},{{$t('meitian')}}{{timeType.allday}}{{ $t('xiaoshi') }}</span>
+                      <el-link :underline="false" style="color:blue;font-size:12px;margin-left:7px;" href="#/timetype">{{ $t('modifyworkinghours') }}</el-link>
+                  </el-form-item>
+                  <el-form-item :label="$t('hourlywage')" prop="cost" v-if="permissions.structurePersonnel&&user.timeType.isSecretSalary==0">
+                      <el-input v-model="insertForm.cost" :disabled="insertForm.salaryType == 0" id="cc" style="width:120px;" @keyup.native="restrictNumber4('cc')"
+                      :placeholder="$t('yuechengbenxiaoshi')" clearable></el-input>
+                      <span style="margin-left:25px;">{{ $t('effectivedate') }}</span>
+                      <el-date-picker v-model="insertForm.costApplyDate" value-format="yyyy-MM-dd"></el-date-picker>
+                  </el-form-item>
+                  <el-form-item :label="$t('lable.department')" prop="departmentId">
+                      <!-- <el-cascader v-model="insertForm.departmentId" placeholder="请选择部门" style="width: 100%"
+                      :options="option" :props="{ checkStrictly: false,expandTrigger: 'hover' }" :show-all-levels="false" clearable></el-cascader> -->
+                      <el-cascader v-model="insertForm.departmentId" :placeholder="$t('qing-xuan-ze-bu-men')" style="width: 100%"
+                      :options="option" :props="{ checkStrictly: true,expandTrigger: 'hover' }" :show-all-levels="false"  clearable v-if="user.userNameNeedTranslate != 1"></el-cascader>
+
+                      <vueCascader :size="'medium'" :widthStr="'430'" :clearable="true" :subject="option" :subjectId="insertForm.departmentId" :radios="true" :distinction="'2'" @vueCasader="vueCasader" v-if="user.userNameNeedTranslate == 1"></vueCascader>
+
+                  </el-form-item>
+                  <!-- <el-form-item :label="$t('immediatesuperior')">
+                      <el-select v-model="insertForm.superiorId" :placeholder="$t('defaultText.pleaseChoose')" style="width: 100%" filterable clearable>
+                          <el-option v-for="item in users" :label="item.name" :value="item.id" :key="item.id" :disabled="item.id == insertForm.id">
+                              <span style="float: left">{{item.name}}</span>
+                              <span style="float: right; color: #8492a6; font-size: 13px">{{item.departmentName}}</span>
+                          </el-option>
+                      </el-select>
+                  </el-form-item> -->
+                  <el-form-item :label="$t('jiao-se')" prop="roleId">
+                      <el-select v-model="insertForm.roleId" :placeholder="$t('defaultText.pleaseChoose')" style="width: 100%">
+                          <el-option v-for="item in acquireRoleList" :label="item.rolename" :value="item.id" :key="item.name">
+                              <span style="float: left">{{item.rolename}}</span>
+                              <span style="float: right; color: #8492a6; font-size: 13px">{{item.roleDescribe}}</span>
+                          </el-option>
+                      </el-select>
+                  </el-form-item>
+                  <el-form-item :label="item.name" v-for="item,index in userCustomConfig" :key="item.id">
+                      <el-select v-if="item.type == 0" v-model="insertForm[suoying[index]]" :placeholder="$t('defaultText.pleaseChoose')" clearable style="width: 100%">
+                          <el-option v-for="option in item.itemList" :label="option.name" :value="option.name" :key="option.id">
+                          </el-option>
+                      </el-select>
+                      <el-input v-else v-model="insertForm[suoying[index]]" :placeholder="$t('peaseenterthe')" clearable></el-input>
+                  </el-form-item>
+                  <el-form-item :label="$t('entrytime')" prop="phone">
+                      <el-date-picker v-model="insertForm.inductionDate" value-format="yyyy-MM-dd"></el-date-picker>
+                  </el-form-item>
+                  <el-form-item :label="$t('postrank')" prop="phone">
+                      <el-input v-model="insertForm.position" :placeholder="$t('joblevel')" clearable></el-input>
+                  </el-form-item>
+
+                  <div class="zhaunye"><p>{{ $t('professionalcertificate') }}</p><p><el-link type="primary" @click="addCertificateList()">{{ $t('addprofessionalcertificate') }}</el-link><el-link v-if="permissions.structureCertificate" type="primary" @click="managementDiolog = true" style="margin-left: 20px">{{ $t('professionalCertificate inManagement') }}</el-link></p></div>
+                  <div class="certificateList">
+                      <div class="moreList">
+                          <div class="moreLiList" v-for="(item,index) in insertForm.certJson" :key="index">
+                              <div style="margin-right: 10px;width: 160px;">
+                                  <el-select v-model="item.certId" :placeholder="$t('defaultText.pleaseChoose')" size="mini" @change="changeManagement(index)">
+                                      <el-option v-for="item in managementTableData" :key="item.id" :label="item.name" :value="item.id"> </el-option>
+                                  </el-select>
+                              </div>
+                              <div><span>{{ $t('certificate') }}</span><el-date-picker size="mini" v-model="item.certDate" type="date" value-format="yyyy-MM-dd" :placeholder="$t('certificatedate')" style="width: 180px"></el-date-picker></div>
+                              <div style="color: red;margin-left: 15px;cursor:pointer;" @click="deteFrames(index)"><i class="el-icon-delete"></i></div>
+                          </div>
+                      </div>
+                  </div>
 
-            </el-form>
+              </el-form>
+            </div>
             <span slot="footer" class="dialog-footer">
                 <el-button type="danger" @click="deleteUser(insertForm)" style="float:left;">{{ $t('btn.delete') }}</el-button>
                 <el-button @click="dialogVisible=false">{{ $t('btn.cancel') }}</el-button>

+ 330 - 328
fhKeeper/formulahousekeeper/timesheet/src/views/workReport/daily.vue

@@ -323,285 +323,140 @@
         </div>
 
         <!-- 填写日报的dialog -->
-        <el-dialog :title="editTitle[isBatch]" :visible.sync="dialogVisible" width="60%" style="height:95%" :close-on-click-modal="false" @closed="guanbi()" custom-class="editReportDialog" ref="editReportDialog">
-            <el-form ref="workForm" :model="workForm" :rules="workRules" label-width="120px">
-                <el-form-item :label="$t('screening.selectPeople')" v-if="isSubstitude">
-                    <el-input v-if="user.userNameNeedTranslate != 1" @focus="showChooseMembTree" v-model="workForm.userNames"
-                    :placeholder="$t('defaultText.pleaseSelectAsubstitute')" ></el-input>
-                    <div class="daitianrbao"  @click="showChooseMembTree" v-if="user.userNameNeedTranslate == 1">
-                        <span class="spnn" v-if="workForm.userNames">
-                            <span v-for="(item, index) in workForm.userNames" :key="index">
-                                <span><ww-open-data type='userName' :openid='item'></ww-open-data></span>
-                                <span v-if="index < workForm.userNames.length - 1">,</span>
+        <el-dialog :title="editTitle[isBatch]" :visible.sync="dialogVisible" width="60%" :close-on-click-modal="false" @closed="guanbi()" :top="'5.5vh'" custom-class="editReportDialog" ref="editReportDialog">
+            <div style="height: 65vh;overflow: auto;">
+                <el-form ref="workForm" :model="workForm" :rules="workRules" label-width="120px">
+                    <el-form-item :label="$t('screening.selectPeople')" v-if="isSubstitude">
+                        <el-input v-if="user.userNameNeedTranslate != 1" @focus="showChooseMembTree" v-model="workForm.userNames"
+                        :placeholder="$t('defaultText.pleaseSelectAsubstitute')" ></el-input>
+                        <div class="daitianrbao"  @click="showChooseMembTree" v-if="user.userNameNeedTranslate == 1">
+                            <span class="spnn" v-if="workForm.userNames">
+                                <span v-for="(item, index) in workForm.userNames" :key="index">
+                                    <span><ww-open-data type='userName' :openid='item'></ww-open-data></span>
+                                    <span v-if="index < workForm.userNames.length - 1">,</span>
+                                </span>
+                            </span>
+                            <span class="spnn hover" v-else>
+                                {{$t('defaultText.pleaseSelectAsubstitute')}}
                             </span>
-                        </span>
-                        <span class="spnn hover" v-else>
-                            {{$t('defaultText.pleaseSelectAsubstitute')}}
-                        </span>
-                    </div>
-                </el-form-item>
-                <el-form-item :label="$t('screening.workingDate')" prop="createDate">
-                    <el-date-picker v-model="workForm.createDate" :editable="false" format="yyyy-MM-dd" value-format="yyyy-MM-dd" 
-                    :style="'width:'+(isBatch==0?'200':'280')+'px;'" :type="isBatch==0?'date':'daterange'"
-                    @change="changeMonth()" @blur="iptBlur(reportTimeType.type)" :clearable="false" :placeholder="$t('defaultText.selectWorkDate')" :disabled="isDisable"></el-date-picker>
-                    <div v-if="falsss" style="display: inline-block;margin-left:10px">{{jsDay}} {{$t('time.day')}}, {{jsTime}} {{$t('time.hour')}}</div>
-                    <div v-if="isBatch!=0" style="display: inline-block;margin-left:10px">{{jsDay}} {{$t('time.day')}}, {{$t('other.fillInTheTotal')}} {{jsTime}} {{$t('time.hour')}}</div>
-                    <span v-if="reportTimeType.type == 3" style="margin-left:30px;">{{isBatch==0? $t('other.total'):$t('weekDay.daily')}}{{$t('time.duration')}}:</span>
-                    <el-input-number :disabled="(!canEdit || user.timeType.lockWorktime) && !isWeekend" v-if="reportTimeType.type == 3" style="margin-left:10px;" @change="changeAllTime"
-                        v-model="reportTimeType.allday" :precision="1" :step="0.5" :max="12" :min="0.5"></el-input-number>
-                    <span v-if="reportTimeType.type == 3">{{$t('time.hour')}}</span>
-
-                    <span v-if="workForm.time">{{$t('other.attendancePunch')}}: {{workForm.time.startTime}}-{{workForm.time.endTime}}, {{workForm.time.workHours}}{{$t('time.hour')}}</span>
-                    <!--批量填报和批量代填不显示考勤记录-->
-                    <span v-if="!isBatch && (user.timeType.syncDingding==1 || user.timeType.syncCorpwxTime==1)&&!workForm.time" >{{$t('other.noAttendanceRecord')}}</span>
-                    <el-button type="default" style="margin-left:5px;" size="mini" :loading="syncTimeLoading" 
-                    v-if="!isBatch && user.timeType.syncCorpwxTime==1 && (workForm.createDate == today || !workForm.time || workForm.time.workHours == 0)" icon="el-icon-refresh" 
-                            @click="refreshWXCardTime(workForm.createDate)"></el-button>
-                </el-form-item>
-                <!-- 000000 -->
-                <div v-for="(domain, index) in workForm.domains" :key="domain.id" :style="index>0?'margin-top:10px;':''">
-                    <div v-if="reportTimeType.multiWorktime==0">
-                    <el-form-item v-if="reportTimeType.type != 3" :label="reportTimeType.type ==2?$t('screening.workHours'):$t('screening.workTime')" :prop="'domains.' + index + '.'+timeFields[reportTimeType.type]"
-                        :rules="{ required: true, message: $t('defaultText.pleaseSelectWorkingHours'), trigger: 'blur' }">
-                        <el-select v-model="domain.timeType" style="width:200px;"
-                            v-if="reportTimeType.type == 0"
-                            :placeholder="$t('defaultText.pleaseSelectWorkingHours')" 
-                            :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
-                            @change="onTimeTypeChange(domain.timeType)">
-                            <el-option
-                                v-for="item in timeType"
-                                :key="item.value"
-                                :label="item.label"
-                                :value="item.value">
-                            </el-option>
-                        </el-select>
-                        <!-- 数字时长选择 -->
-                        <el-select v-model="domain.workingTime" style="width:200px;"
-                        v-if="reportTimeType.type == 1"
-                        :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
-                        :placeholder="$t('defaultText.pleaseSelectWorkingHours') + domain.workingTime"
-                        @change="seleChn(0,domain)">
-                        <el-option v-for="item in timeRange" :key="item" :value="item.toFixed(1)">{{item.toFixed(1)}}</el-option>
-                        </el-select>
-                        <span v-if="reportTimeType.type == 1">{{$t('time.hour')}}</span>
-
-                        <span v-if="reportTimeType.type == 2">
-                        <!--时间范围选择 -->
-                        <el-time-picker 
-                        :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
-                            v-model="domain.startTime"
-                            :placeholder="$t('time.startTime')"
-                            style="width:120px;"
-                            format="HH:mm"
-                            value-format="HH:mm"
-                            :picker-options="{
-                            start: '08:00',
-                            end: '23:30'
-                            }"
-                            @change="iptChang()">
-                        </el-time-picker> - <el-time-picker 
-                        :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
-                            v-model="domain.endTime"
-                            :placeholder="$t('time.endTime')"
-                            style="width:120px;"
-                            format="HH:mm"
-                            value-format="HH:mm"
-                            :picker-options="{
-                            start: '08:00',
-                            end: '23:30',
-                            minTime: domain.startTime
-                            }"
-                            @change="iptChang()">
-                        </el-time-picker>
-                        </span>
-                        <div class="overtime" v-if="user.timeType.fillOvertime || (isWeekend && user.timeType.lockWorktime != 1)">
-                            <el-checkbox :disabled="!domain.canEdit" v-model="domain.isOvertime">{{$t('other.IncludingOvertime')}}</el-checkbox>
-                            <el-input :disabled="!domain.canEdit || domain.isOvertime==null || domain.isOvertime==0 || !domain.isOvertime" v-model="domain.overtimeHours" @blur="triggerCalculateOT(index)" @input="domain.overtimeHours=domain.overtimeHours.replace(/[^\d.]/g,'')" style="width: 100px;"></el-input><span style="margin-left:5px">{{$t('time.hour')}}</span>
                         </div>
                     </el-form-item>
-                    
-                    <el-form-item :label="user.companyId==781? $t('screening.workTasks') : $t('screening.inputProject')" :prop="'domains.' + index + '.projectId'"
-                        :rules="{ required: true, message: user.companyId==781? $t('defaultText.pleaseSelectaJob'): $t('defaultText.pleaseSelectSnItem'), trigger: ['change','blur'] }">
-                        <el-select v-model="domain.projectId" :placeholder="user.companyId==781?$t('defaultText.pleaseSelectaJob'): $t('defaultText.pleaseSelectSnItem')" style="width:200px;" clearable="true"  filterable="true" value-key="id"
-                        @change="selectProject(domain, index)"
-                        :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)" popper-class="projectSelectPopperClass">
-                            <!-- <el-option v-for="item in projectList" :disabled="item.status>=2" :key="item.id" :label="item.projectName" :value="item.id"></el-option> -->
-                            <el-option v-for="item in fillProjectList" :disabled="item.status!=1 && item.status!=4" :key="item.id" :label="item.projectName + '\u3000' + item.projectCode" :value="item.id">
-                                <span style="float: left; color: #8492a6; font-size: 13px;">{{ item.projectCode }}</span>
-                                <span style="float: right;">{{ item.projectName }}</span>
-                            </el-option>
-                        </el-select>
-                        <template v-if="user.timeType.mainProjectState != 1">
-                        <span v-if="domain.subProjectList != null && domain.subProjectList.length> 0 && domain.projectId != ''"
-                            style="margin-left:45px;">{{$t('lable.subproject')}}</span>
-
-                        <!--子项目 -->
-                        <el-select v-model="domain.subProjectId" :placeholder="$t('defaultText.PleaseSelectaSub-item')" style="width:200px;margin-left:10px;" clearable="true"
-                            v-if="domain.subProjectList != null && domain.subProjectList.length> 0 && domain.projectId != ''"
-                        :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)" @change="updateSubProject">
-                            <el-option v-for="item in domain.subProjectList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                        </el-select>
-                        </template>
-                        
-                        <el-link v-if="index >= 1&&domain.canEdit" type="primary" :underline="false" @click="delDomain(index)" style="float:right;margin-right:10px;"
-                            :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)">
-                            <i class="fa fa-trash" style="color: red;;font-size:18px;"></i>
-                        </el-link>
-                        <!-- <el-link type="primary" v-if="canEdit"
-                            :underline="false" style="margin-left:10px;" @click="copyProject(index)">复制</el-link> -->
-                    </el-form-item>
-                    <el-form-item :label="user.companyId==781? $t('other.describe'):$t('other.projectDescription')" v-if="user.company.packageProject==0&&domain.projectId&&projectList.filter(p=>p.id == domain.projectId)[0].projectDesc">
-                        <span>{{projectList.filter(p=>p.id == domain.projectId)[0].projectDesc}}</span>
-                    </el-form-item>
-                    <!--如果设置了工时成本预警的预算成本项-->
-                    <el-form-item :label="$t('lable.budgetSource')" v-if="user.company.packageProject==1&&timeBasecostList &&timeBasecostList.length>0">
-                        <el-select v-model="domain.basecostId" :disabled="!domain.canEdit" @change="$forceUpdate()" style="width:200px;">
-                            <el-option v-for="item in timeBasecostList" :label="item.name" :value="item.id" :key="item.id"></el-option>
-                        </el-select>
+                    <el-form-item :label="$t('screening.workingDate')" prop="createDate">
+                        <el-date-picker v-model="workForm.createDate" :editable="false" format="yyyy-MM-dd" value-format="yyyy-MM-dd" 
+                        :style="'width:'+(isBatch==0?'200':'280')+'px;'" :type="isBatch==0?'date':'daterange'"
+                        @change="changeMonth()" @blur="iptBlur(reportTimeType.type)" :clearable="false" :placeholder="$t('defaultText.selectWorkDate')" :disabled="isDisable"></el-date-picker>
+                        <div v-if="falsss" style="display: inline-block;margin-left:10px">{{jsDay}} {{$t('time.day')}}, {{jsTime}} {{$t('time.hour')}}</div>
+                        <div v-if="isBatch!=0" style="display: inline-block;margin-left:10px">{{jsDay}} {{$t('time.day')}}, {{$t('other.fillInTheTotal')}} {{jsTime}} {{$t('time.hour')}}</div>
+                        <span v-if="reportTimeType.type == 3" style="margin-left:30px;">{{isBatch==0? $t('other.total'):$t('weekDay.daily')}}{{$t('time.duration')}}:</span>
+                        <el-input-number :disabled="(!canEdit || user.timeType.lockWorktime) && !isWeekend" v-if="reportTimeType.type == 3" style="margin-left:10px;" @change="changeAllTime"
+                            v-model="reportTimeType.allday" :precision="1" :step="0.5" :max="12" :min="0.5"></el-input-number>
+                        <span v-if="reportTimeType.type == 3">{{$t('time.hour')}}</span>
+
+                        <span v-if="workForm.time">{{$t('other.attendancePunch')}}: {{workForm.time.startTime}}-{{workForm.time.endTime}}, {{workForm.time.workHours}}{{$t('time.hour')}}</span>
+                        <!--批量填报和批量代填不显示考勤记录-->
+                        <span v-if="!isBatch && (user.timeType.syncDingding==1 || user.timeType.syncCorpwxTime==1)&&!workForm.time" >{{$t('other.noAttendanceRecord')}}</span>
+                        <el-button type="default" style="margin-left:5px;" size="mini" :loading="syncTimeLoading" 
+                        v-if="!isBatch && user.timeType.syncCorpwxTime==1 && (workForm.createDate == today || !workForm.time || workForm.time.workHours == 0)" icon="el-icon-refresh" 
+                                @click="refreshWXCardTime(workForm.createDate)"></el-button>
                     </el-form-item>
-                    <el-form-item :label="$t('lable.taskGrouping')" v-if="user.company.packageProject == 1">
-                        <!-- 任务分组 -->
-                        <el-select v-model="domain.groupId" :placeholder="$t('defaultText.pleaseSelectaTaskGroup')" style="width:200px;" clearable="true" 
-                        :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)" @change="getGroupStages(domain, index)">
-                            <el-option v-for="item in domain.taskGroups" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                        </el-select>
-                        <!-- 项目的阶段 -->
-                        <span v-if="domain.stages != null && domain.stages.length> 0" 
-                            style="margin-left:30px;">{{$t('other.inputStage')}}</span>
-                        <el-select v-model="domain.stage" :placeholder="$t('defaultText.pleaseChoose')" style="width:200px;margin-left:10px;" 
-                        clearable="true" v-if="domain.stages != null && domain.stages.length> 0"
-                        @change="changeStages(domain, index)"
-                        :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)">
-                            <el-option v-for="item in domain.stages" :key="item.id" :label="item.stagesName" :value="item.stagesName"></el-option>
-                        </el-select>
-                    </el-form-item>
-                    <el-form-item :label="user.companyId==781? $t('other.reviewer') : $t('other.projectAuditor')" v-if="user.timeType.reportAuditType != 3">
-
-                        <el-select v-model="domain.projectAuditorId" :disabled="!domain.canEdit" @change="$forceUpdate()" v-if="user.userNameNeedTranslate != '1'" style="width:200px;">
-                            <el-option v-for="item in domain.auditUserList" :label="item.auditorName" :value="item.auditorId" :key="item.id">
-                                <span style="float: left" v-if="user.userNameNeedTranslate == '1'"><ww-open-data type='userName' :openid='item.auditorName'></ww-open-data></span>
-                                <span style="float: left" v-if="user.userNameNeedTranslate != '1'">{{item.auditorName}}</span>
-                            </el-option>
-                        </el-select>
-
-                        <selectCat v-if="user.userNameNeedTranslate == '1'" :size="'medium'" :subject="domain.auditUserList" :idx="index" :subjectId="domain.projectAuditorId" ref="selectCat" :flg="domain.projectAuditorId ? true : false" :flgs="true" @selectCatCli="selectCatCli"></selectCat>
-
-                    </el-form-item>
-                    <!-- 111111 -->
-                    <el-form-item :label="$t('other.reviewer')" v-if="user.timeType.reportAuditType == 3">
-                        <el-select v-model="domain.auditorFirst" :placeholder="$t('di-yi-shen-he-ren')" :disabled="!domain.canEdit" style="width:200px;">
-                            <el-option v-for="item in allUsersList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                        </el-select>
-
-                        <template v-if="user.timeType.auditLevel > 1">
-                            <i class="el-icon-right"></i>
-                            <el-select v-model="domain.auditorSec" :placeholder="$t('di-er-shen-he-ren')" :disabled="!domain.canEdit" style="width:200px;">
-                                <el-option v-for="item in allUsersList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                    <!-- 000000 -->
+                    <div v-for="(domain, index) in workForm.domains" :key="domain.id" :style="index>0?'margin-top:10px;':''">
+                        <div v-if="reportTimeType.multiWorktime==0">
+                        <el-form-item v-if="reportTimeType.type != 3" :label="reportTimeType.type ==2?$t('screening.workHours'):$t('screening.workTime')" :prop="'domains.' + index + '.'+timeFields[reportTimeType.type]"
+                            :rules="{ required: true, message: $t('defaultText.pleaseSelectWorkingHours'), trigger: 'blur' }">
+                            <el-select v-model="domain.timeType" style="width:200px;"
+                                v-if="reportTimeType.type == 0"
+                                :placeholder="$t('defaultText.pleaseSelectWorkingHours')" 
+                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
+                                @change="onTimeTypeChange(domain.timeType)">
+                                <el-option
+                                    v-for="item in timeType"
+                                    :key="item.value"
+                                    :label="item.label"
+                                    :value="item.value">
+                                </el-option>
                             </el-select>
-                        </template>
-
-                        <template v-if="user.timeType.auditLevel > 2">
-                            <i class="el-icon-right"></i>
-                            <el-select v-model="domain.auditorThird" :placeholder="$t('di-san-shen-he-ren')" :disabled="!domain.canEdit" style="width:200px;">
-                                <el-option v-for="item in allUsersList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                            <!-- 数字时长选择 -->
+                            <el-select v-model="domain.workingTime" style="width:200px;"
+                            v-if="reportTimeType.type == 1"
+                            :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
+                            :placeholder="$t('defaultText.pleaseSelectWorkingHours') + domain.workingTime"
+                            @change="seleChn(0,domain)">
+                            <el-option v-for="item in timeRange" :key="item" :value="item.toFixed(1)">{{item.toFixed(1)}}</el-option>
                             </el-select>
-                        </template>
-                    </el-form-item>
-                    <el-form-item :label="$t('chao-song-ren')" v-if="user.timeType.reportAuditType == 3">
-                        <el-select v-model="domain.ccUserid" clearable :disabled="!domain.canEdit" style="width:200px;">
-                            <el-option v-for="item in allUsersList" :key="item.id" :label="item.name" :value="item.id"></el-option>
-                        </el-select>
-                    </el-form-item>
+                            <span v-if="reportTimeType.type == 1">{{$t('time.hour')}}</span>
 
-                    <!-- 相关维度/自定义维度 -->
-                    <el-form-item :label="yonghuUser.customDegreeName" v-if="domain.projectId && yonghuUser.customDegreeActive == 1" :rules="user.timeType.customDegreeStatus == 1 && domain.wuduList != undefined && domain.wuduList.length != 0 ? { required: true, message: $t('defaultText.pleaseChoose') + yonghuUser.customDegreeName, trigger: ['change','blur'] } : null" :prop="'domains.' + index + '.degreeId'">
-                        <el-select v-model="domain.degreeId" clearable :placeholder="$t('defaultText.pleaseChoose')" :disabled="!domain.canEdit" style="width:200px;">
-                            <el-option v-for="item in domain.wuduList" :key="item.value" :label="item.name" :value="item.id">
-                            </el-option>
-                        </el-select>
-                    </el-form-item>
-                    <!-- 相关数值 -->
-                    <el-form-item :label="yonghuUser.customDataName" v-if="yonghuUser.customDataActive == 1" :prop="'domains.' + index + '.customData'" :rules="user.timeType.customDataStatus == 1 ? { type: 'number', required: true, message: $t('defaultText.pleaseFillOut') + yonghuUser.customDataName, trigger: ['change','blur'] } : null">
-                        <el-input-number :id="'numberData_'+index" :disabled="!domain.canEdit" v-model="domain.customData" style="width:200px;" @keyup.native="restrictNumber('numberData_'+index)" :max="user.timeType.customDataMaxStatus == 1 ? user.timeType.customDataMaxValue : 'infinity'"></el-input-number>
-                    </el-form-item>
-                    <!-- 自定义文本 -->
-                    <el-form-item :label="yonghuUser.customTextName" v-if="yonghuUser.customTextActive == 1" :prop="'domains.' + index + '.customText'" :rules="user.timeType.customTextStatus == 1 ? { required: true, message: $t('defaultText.pleaseFillOut') + yonghuUser.customTextName, trigger: ['change','blur'] } : null">
-                        <el-input :disabled="!domain.canEdit" v-model="domain.customText" type="textarea" :rows="1" style="width:75%;margin-right:7%" maxlength="1000" show-word-limit></el-input>
-                    </el-form-item>
-                    <el-form-item v-if="reportTimeType.type == 3" :label="$t('lable.percentageOfTime')" :prop="'domains.' + index + '.'+timeFields[reportTimeType.type]"
-                        :rules="{ required: true, message: $t('defaultText.pleaseSetTheTimeRatio'), trigger: 'blur' }">
-                        <div style="width:300px;">
-                            <el-col span="14"><el-slider :disabled="!domain.canEdit" v-model="domain.progress" :min="5" :show-tooltip="false" :step="5" style="width:180px;" @input="domain.workingTime = (reportTimeType.allday*domain.progress/100).toFixed(1)" @change="seleChn(0)"></el-slider></el-col>
-                            <el-col span="10"><span style="margin-left:10px;float:right;"><span style="margin-right:10px;">{{domain.progress}}%</span>{{domain.workingTime}}{{$t('time.hour')}}</span></el-col>
-                        </div>
-                        <div class="overtime" v-if="user.timeType.fillOvertime || isWeekend"><el-checkbox :disabled="!domain.canEdit" v-model="domain.isOvertime">{{$t('other.WorkOvertime')}}</el-checkbox>
-                        <el-input :disabled="!domain.canEdit || domain.isOvertime==null || domain.isOvertime==0 || !domain.isOvertime" v-model="domain.overtimeHours"  @blur="triggerCalculateOT(index)" @input="domain.overtimeHours=domain.overtimeHours.replace(/[^\d.]/g,'')" style="width: 100px;"></el-input><span style="margin-left:5px">{{$t('time.hour')}}</span>
-                        </div>
-                    </el-form-item>
-                    <!--工程专业版本模式下, 各个专业的进度填报 -->
-                    <el-form-item :label="$t('other.professionalProgress')" :prop="'domains.' + index + '.professionProgress'" v-if="user.company.packageEngineering==1">
-                        <span v-for="item in domain.professionProgress" :key="item.professionId" style="margin-right:10px;">
-                            <span>{{item.professionName}}</span> / {{$t('other.schedule')}}:
-                            <el-input size="mini" style="width:60px;" v-model="item.progress"
-                            @keyup.native="onProgressChange" 
-                            :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"></el-input>%
-                        </span>
-                    </el-form-item>
-                    <!--项目管理专业版模式下,项目下的近期执行的任务 -->
-                    <el-form-item :label="$t('other.task')+' / '+$t('other.milestone')" :prop="'domains.' + index + '.taskId'" v-if="user.company.packageProject==1" >
-                        <el-select v-model="domain.taskId" :placeholder="$t('defaultText.pleaseChoose')" style="width:75%;margin-right:7%" filterable="true" 
-                        :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)">
-                            <el-option v-for="item in domain.taskList" :key="item.taskId" :label="item.taskName" :value="item.taskId"></el-option>
-                        </el-select>
-                        <el-checkbox v-model="domain.taskFinish" v-if="domain.taskId != undefined">{{$t('state.completed')}}</el-checkbox>
-                    </el-form-item>
-                    <el-form-item :label="user.companyId==781? $t('other.specificContentAndResults') : $t('other.workMatters') " :prop="'domains.' + index + '.content'" 
-                    :rules="user.timeType.workContentState == 1 ? { required: true, message: user.companyId==781? $t('other.tianspecificContentAndResults'):$t('other.tianworkMatters'), trigger: 'blur' } : null">
-                        <el-input v-model="domain.content" type="textarea" :rows="4" :placeholder="$t('defaultText.pleaseFillOut')" clearable
-                         :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"></el-input>
-                    </el-form-item>
-                    </div>
-                    <!--多个工作事项填报的情况 -->
-                    <div v-if="reportTimeType.multiWorktime==1">
-                        <el-form-item :label="$t('screening.inputProject')" :prop="'domains.' + index + '.projectId'"
-                            :rules="{ required: true, message: $t('defaultText.pleaseSelectSnItem'), trigger: ['change','blur'] }">
-                            <el-select v-model="domain.projectId" :placeholder="$t('defaultText.pleaseSelectSnItem')" style="width:200px;" clearable="true"  filterable="true" value-key="id"
+                            <span v-if="reportTimeType.type == 2">
+                            <!--时间范围选择 -->
+                            <el-time-picker 
+                            :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
+                                v-model="domain.startTime"
+                                :placeholder="$t('time.startTime')"
+                                style="width:120px;"
+                                format="HH:mm"
+                                value-format="HH:mm"
+                                :picker-options="{
+                                start: '08:00',
+                                end: '23:30'
+                                }"
+                                @change="iptChang()">
+                            </el-time-picker> - <el-time-picker 
+                            :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
+                                v-model="domain.endTime"
+                                :placeholder="$t('time.endTime')"
+                                style="width:120px;"
+                                format="HH:mm"
+                                value-format="HH:mm"
+                                :picker-options="{
+                                start: '08:00',
+                                end: '23:30',
+                                minTime: domain.startTime
+                                }"
+                                @change="iptChang()">
+                            </el-time-picker>
+                            </span>
+                            <div class="overtime" v-if="user.timeType.fillOvertime || (isWeekend && user.timeType.lockWorktime != 1)">
+                                <el-checkbox :disabled="!domain.canEdit" v-model="domain.isOvertime">{{$t('other.IncludingOvertime')}}</el-checkbox>
+                                <el-input :disabled="!domain.canEdit || domain.isOvertime==null || domain.isOvertime==0 || !domain.isOvertime" v-model="domain.overtimeHours" @blur="triggerCalculateOT(index)" @input="domain.overtimeHours=domain.overtimeHours.replace(/[^\d.]/g,'')" style="width: 100px;"></el-input><span style="margin-left:5px">{{$t('time.hour')}}</span>
+                            </div>
+                        </el-form-item>
+                        
+                        <el-form-item :label="user.companyId==781? $t('screening.workTasks') : $t('screening.inputProject')" :prop="'domains.' + index + '.projectId'"
+                            :rules="{ required: true, message: user.companyId==781? $t('defaultText.pleaseSelectaJob'): $t('defaultText.pleaseSelectSnItem'), trigger: ['change','blur'] }">
+                            <el-select v-model="domain.projectId" :placeholder="user.companyId==781?$t('defaultText.pleaseSelectaJob'): $t('defaultText.pleaseSelectSnItem')" style="width:200px;" clearable="true"  filterable="true" value-key="id"
                             @change="selectProject(domain, index)"
                             :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)" popper-class="projectSelectPopperClass">
+                                <!-- <el-option v-for="item in projectList" :disabled="item.status>=2" :key="item.id" :label="item.projectName" :value="item.id"></el-option> -->
                                 <el-option v-for="item in fillProjectList" :disabled="item.status!=1 && item.status!=4" :key="item.id" :label="item.projectName + '\u3000' + item.projectCode" :value="item.id">
                                     <span style="float: left; color: #8492a6; font-size: 13px;">{{ item.projectCode }}</span>
                                     <span style="float: right;">{{ item.projectName }}</span>
                                 </el-option>
                             </el-select>
                             <template v-if="user.timeType.mainProjectState != 1">
-                            <span  v-if="domain.subProjectList != null && domain.subProjectList.length> 0 && domain.projectId != ''"
+                            <span v-if="domain.subProjectList != null && domain.subProjectList.length> 0 && domain.projectId != ''"
                                 style="margin-left:45px;">{{$t('lable.subproject')}}</span>
+
                             <!--子项目 -->
                             <el-select v-model="domain.subProjectId" :placeholder="$t('defaultText.PleaseSelectaSub-item')" style="width:200px;margin-left:10px;" clearable="true"
-                            v-if="domain.subProjectList != null && domain.subProjectList.length> 0 && domain.projectId != ''"
+                                v-if="domain.subProjectList != null && domain.subProjectList.length> 0 && domain.projectId != ''"
                             :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)" @change="updateSubProject">
                                 <el-option v-for="item in domain.subProjectList" :key="item.id" :label="item.name" :value="item.id"></el-option>
                             </el-select>
                             </template>
-
+                            
                             <el-link v-if="index >= 1&&domain.canEdit" type="primary" :underline="false" @click="delDomain(index)" style="float:right;margin-right:10px;"
                                 :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)">
                                 <i class="fa fa-trash" style="color: red;;font-size:18px;"></i>
                             </el-link>
-
-                            <div class="overtime" v-if="user.timeType.fillOvertime"><el-checkbox :disabled="!domain.canEdit" v-model="domain.isOvertime">{{$t('other.IncludingOvertime')}}</el-checkbox>
-                            <el-input :disabled="!domain.canEdit || domain.isOvertime==null || domain.isOvertime==0 || !domain.isOvertime" v-model="domain.overtimeHours" @blur="triggerCalculateOT(index)" @input="domain.overtimeHours=domain.overtimeHours.replace(/[^\d.]/g,'')" style="width: 100px;"></el-input><span style="margin-left:5px">{{$t('time.hour')}}</span>
-                            </div>
-                            
                             <!-- <el-link type="primary" v-if="canEdit"
                                 :underline="false" style="margin-left:10px;" @click="copyProject(index)">复制</el-link> -->
                         </el-form-item>
-                        <el-form-item :label="user.companyId==781?$t('other.describe'):$t('other.projectDescription')" v-if="user.company.packageProject==0&&domain.projectId&&projectList.filter(p=>p.id == domain.projectId)[0].projectDesc">
+                        <el-form-item :label="user.companyId==781? $t('other.describe'):$t('other.projectDescription')" v-if="user.company.packageProject==0&&domain.projectId&&projectList.filter(p=>p.id == domain.projectId)[0].projectDesc">
                             <span>{{projectList.filter(p=>p.id == domain.projectId)[0].projectDesc}}</span>
                         </el-form-item>
                         <!--如果设置了工时成本预警的预算成本项-->
                         <el-form-item :label="$t('lable.budgetSource')" v-if="user.company.packageProject==1&&timeBasecostList &&timeBasecostList.length>0">
-                            <el-select v-model="domain.basecostId" :disabled="!domain.canEdit" @change="$forceUpdate()">
+                            <el-select v-model="domain.basecostId" :disabled="!domain.canEdit" @change="$forceUpdate()" style="width:200px;">
                                 <el-option v-for="item in timeBasecostList" :label="item.name" :value="item.id" :key="item.id"></el-option>
                             </el-select>
                         </el-form-item>
@@ -621,41 +476,77 @@
                                 <el-option v-for="item in domain.stages" :key="item.id" :label="item.stagesName" :value="item.stagesName"></el-option>
                             </el-select>
                         </el-form-item>
-                        <el-form-item :label="$t('other.projectAuditor')" >
-                            <el-select v-model="domain.projectAuditorId" :disabled="!domain.canEdit" @change="$forceUpdate()" v-if="user.userNameNeedTranslate != '1'">
+                        <el-form-item :label="user.companyId==781? $t('other.reviewer') : $t('other.projectAuditor')" v-if="user.timeType.reportAuditType != 3">
+
+                            <el-select v-model="domain.projectAuditorId" :disabled="!domain.canEdit" @change="$forceUpdate()" v-if="user.userNameNeedTranslate != '1'" style="width:200px;">
                                 <el-option v-for="item in domain.auditUserList" :label="item.auditorName" :value="item.auditorId" :key="item.id">
                                     <span style="float: left" v-if="user.userNameNeedTranslate == '1'"><ww-open-data type='userName' :openid='item.auditorName'></ww-open-data></span>
                                     <span style="float: left" v-if="user.userNameNeedTranslate != '1'">{{item.auditorName}}</span>
                                 </el-option>
                             </el-select>
 
-                            <selectCat v-if="user.userNameNeedTranslate == '1'" :size="'small'" :subject="domain.auditUserList" :idx="index" :subjectId="domain.projectAuditorId" ref="selectCat" :flg="true" :flgs="true" @selectCatCli="selectCatCli"></selectCat>
+                            <selectCat v-if="user.userNameNeedTranslate == '1'" :size="'medium'" :subject="domain.auditUserList" :idx="index" :subjectId="domain.projectAuditorId" ref="selectCat" :flg="domain.projectAuditorId ? true : false" :flgs="true" @selectCatCli="selectCatCli"></selectCat>
+
                         </el-form-item>
-                        
+                        <!-- 111111 -->
+                        <el-form-item :label="$t('other.reviewer')" v-if="user.timeType.reportAuditType == 3">
+                            <el-select v-model="domain.auditorFirst" :placeholder="$t('di-yi-shen-he-ren')" :disabled="!domain.canEdit" style="width:200px;">
+                                <el-option v-for="item in allUsersList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                            </el-select>
 
-                        <!--工程专业版本模式下, 各个专业的进度填报 -->
-                        <el-form-item :label="$t('other.professionalProgress')" :prop="'domains.' + index + '.professionProgress'" v-if="user.company.packageEngineering==1">
-                            <span v-for="item in domain.professionProgress" :key="item.professionId" style="margin-right:10px;">
-                                <span>{{item.professionName}}</span> / {{$t('other.schedule')}}:
-                                <el-input size="mini" style="width:60px;" v-model="item.progress"
-                                @keyup.native="onProgressChange" 
-                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"></el-input>%
-                            </span>
+                            <template v-if="user.timeType.auditLevel > 1">
+                                <i class="el-icon-right"></i>
+                                <el-select v-model="domain.auditorSec" :placeholder="$t('di-er-shen-he-ren')" :disabled="!domain.canEdit" style="width:200px;">
+                                    <el-option v-for="item in allUsersList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                                </el-select>
+                            </template>
+
+                            <template v-if="user.timeType.auditLevel > 2">
+                                <i class="el-icon-right"></i>
+                                <el-select v-model="domain.auditorThird" :placeholder="$t('di-san-shen-he-ren')" :disabled="!domain.canEdit" style="width:200px;">
+                                    <el-option v-for="item in allUsersList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                                </el-select>
+                            </template>
                         </el-form-item>
-                        <!-- 相关维度 -->
-                        <el-form-item :label="yonghuUser.customDegreeName" v-if="domain.projectId && yonghuUser.customDegreeActive == 1" :rules="user.timeType.customDegreeStatus == 1 && domain.wuduList.length != 0 ? { required: true, message: $t('defaultText.pleaseChoose') + yonghuUser.customDegreeName, trigger: ['change','blur'] } : null" :prop="'domains.' + index + '.degreeId'">
-                            <el-select v-model="domain.degreeId" :disabled="!domain.canEdit" clearable :placeholder="$t('defaultText.pleaseChoose')">
+                        <el-form-item :label="$t('chao-song-ren')" v-if="user.timeType.reportAuditType == 3">
+                            <el-select v-model="domain.ccUserid" clearable :disabled="!domain.canEdit" style="width:200px;">
+                                <el-option v-for="item in allUsersList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                            </el-select>
+                        </el-form-item>
+
+                        <!-- 相关维度/自定义维度 -->
+                        <el-form-item :label="yonghuUser.customDegreeName" v-if="domain.projectId && yonghuUser.customDegreeActive == 1" :rules="user.timeType.customDegreeStatus == 1 && domain.wuduList != undefined && domain.wuduList.length != 0 ? { required: true, message: $t('defaultText.pleaseChoose') + yonghuUser.customDegreeName, trigger: ['change','blur'] } : null" :prop="'domains.' + index + '.degreeId'">
+                            <el-select v-model="domain.degreeId" clearable :placeholder="$t('defaultText.pleaseChoose')" :disabled="!domain.canEdit" style="width:200px;">
                                 <el-option v-for="item in domain.wuduList" :key="item.value" :label="item.name" :value="item.id">
                                 </el-option>
                             </el-select>
                         </el-form-item>
                         <!-- 相关数值 -->
-                        <el-form-item :label="yonghuUser.customDataName" v-if="domain.projectId && yonghuUser.customDataActive == 1" :prop="'domains.' + index + '.customData'" :rules="user.timeType.customDataStatus == 1 ? { type: 'number', required: true, message: $t('defaultText.pleaseFillOut') + yonghuUser.customDataName, trigger: ['change','blur'] } : null">
+                        <el-form-item :label="yonghuUser.customDataName" v-if="yonghuUser.customDataActive == 1" :prop="'domains.' + index + '.customData'" :rules="user.timeType.customDataStatus == 1 ? { type: 'number', required: true, message: $t('defaultText.pleaseFillOut') + yonghuUser.customDataName, trigger: ['change','blur'] } : null">
                             <el-input-number :id="'numberData_'+index" :disabled="!domain.canEdit" v-model="domain.customData" style="width:200px;" @keyup.native="restrictNumber('numberData_'+index)" :max="user.timeType.customDataMaxStatus == 1 ? user.timeType.customDataMaxValue : 'infinity'"></el-input-number>
                         </el-form-item>
                         <!-- 自定义文本 -->
                         <el-form-item :label="yonghuUser.customTextName" v-if="yonghuUser.customTextActive == 1" :prop="'domains.' + index + '.customText'" :rules="user.timeType.customTextStatus == 1 ? { required: true, message: $t('defaultText.pleaseFillOut') + yonghuUser.customTextName, trigger: ['change','blur'] } : null">
-                            <el-input :disabled="!domain.canEdit" v-model="domain.customText" style="width:75%;margin-right:7%" type="textarea" :rows="1" maxlength="1000"></el-input>
+                            <el-input :disabled="!domain.canEdit" v-model="domain.customText" type="textarea" :rows="1" style="width:75%;margin-right:7%" maxlength="1000" show-word-limit></el-input>
+                        </el-form-item>
+                        <el-form-item v-if="reportTimeType.type == 3" :label="$t('lable.percentageOfTime')" :prop="'domains.' + index + '.'+timeFields[reportTimeType.type]"
+                            :rules="{ required: true, message: $t('defaultText.pleaseSetTheTimeRatio'), trigger: 'blur' }">
+                            <div style="width:300px;">
+                                <el-col span="14"><el-slider :disabled="!domain.canEdit" v-model="domain.progress" :min="5" :show-tooltip="false" :step="5" style="width:180px;" @input="domain.workingTime = (reportTimeType.allday*domain.progress/100).toFixed(1)" @change="seleChn(0)"></el-slider></el-col>
+                                <el-col span="10"><span style="margin-left:10px;float:right;"><span style="margin-right:10px;">{{domain.progress}}%</span>{{domain.workingTime}}{{$t('time.hour')}}</span></el-col>
+                            </div>
+                            <div class="overtime" v-if="user.timeType.fillOvertime || isWeekend"><el-checkbox :disabled="!domain.canEdit" v-model="domain.isOvertime">{{$t('other.WorkOvertime')}}</el-checkbox>
+                            <el-input :disabled="!domain.canEdit || domain.isOvertime==null || domain.isOvertime==0 || !domain.isOvertime" v-model="domain.overtimeHours"  @blur="triggerCalculateOT(index)" @input="domain.overtimeHours=domain.overtimeHours.replace(/[^\d.]/g,'')" style="width: 100px;"></el-input><span style="margin-left:5px">{{$t('time.hour')}}</span>
+                            </div>
+                        </el-form-item>
+                        <!--工程专业版本模式下, 各个专业的进度填报 -->
+                        <el-form-item :label="$t('other.professionalProgress')" :prop="'domains.' + index + '.professionProgress'" v-if="user.company.packageEngineering==1">
+                            <span v-for="item in domain.professionProgress" :key="item.professionId" style="margin-right:10px;">
+                                <span>{{item.professionName}}</span> / {{$t('other.schedule')}}:
+                                <el-input size="mini" style="width:60px;" v-model="item.progress"
+                                @keyup.native="onProgressChange" 
+                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"></el-input>%
+                            </span>
                         </el-form-item>
                         <!--项目管理专业版模式下,项目下的近期执行的任务 -->
                         <el-form-item :label="$t('other.task')+' / '+$t('other.milestone')" :prop="'domains.' + index + '.taskId'" v-if="user.company.packageProject==1" >
@@ -665,66 +556,177 @@
                             </el-select>
                             <el-checkbox v-model="domain.taskFinish" v-if="domain.taskId != undefined">{{$t('state.completed')}}</el-checkbox>
                         </el-form-item>
-                        <div v-for="(timeItem,tIndex) in domain.worktimeList" :key="tIndex" 
-                            style="border: 0.5px #ddd solid;padding:5px;margin-bottom:15px;position:relative;">
-                        <i v-if="tIndex>0&&workForm.domains[index].state>=2" @click="removeTimeItem(domain,tIndex)"  class="el-icon-delete" style="position:absolute;right:-7px;top:-7px;font-size:16px;"></i>
-                        <el-form-item :label="$t('screening.workHours')" :prop="'domains.' + index + '.worktimeList.'+tIndex+'.'+timeFields[reportTimeType.type]"
-                            :rules="{ required: true, message: $t('defaultText.pleaseSelectWorkingHourss'), trigger: 'blur' }">
-                            
-                            <span v-if="reportTimeType.type == 2">
-                            <!-- <span> -->
-                            <!--时间范围选择 -->
-                            <el-time-picker 
-                            :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
-                                v-model="timeItem.startTime"
-                                :placeholder="$t('time.startTime')"
-                                style="width:120px;"
-                                format="HH:mm"
-                                value-format="HH:mm"
-                                :picker-options="{
-                                start: '00:00',
-                                end: '23:59',
-                                }"
-                                @change="iptChangs()">
-                            </el-time-picker> - <el-time-picker 
-                            :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
-                                v-model="timeItem.endTime"
-                                :placeholder="$t('time.endTime')"
-                                style="width:120px;"
-                                format="HH:mm"
-                                value-format="HH:mm"
-                                :picker-options="{
-                                start: '00:00',
-                                end: '23:59',
-                                minTime: timeItem.startTime
-                                }"
-                                @change="iptChangs()">
-                            </el-time-picker>
-                            </span>
-                        </el-form-item>
-                        <el-form-item :label="$t('other.workMatters')" :prop="'domains.' + index + '.worktimeList.'+tIndex+'.content'" 
-                        :rules="user.timeType.workContentState == 1 ? { required: true, message: $t('other.tianworkMatters'), trigger: 'blur' } : null">
-                            <el-input v-model="timeItem.content" type="textarea" :rows="2" :placeholder="$t('other.tianworkMatters')" clearable
-                            :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
-                            ></el-input>
+                        <el-form-item :label="user.companyId==781? $t('other.specificContentAndResults') : $t('other.workMatters') " :prop="'domains.' + index + '.content'" 
+                        :rules="user.timeType.workContentState == 1 ? { required: true, message: user.companyId==781? $t('other.tianspecificContentAndResults'):$t('other.tianworkMatters'), trigger: 'blur' } : null">
+                            <el-input v-model="domain.content" type="textarea" :rows="4" :placeholder="$t('defaultText.pleaseFillOut')" clearable
+                            :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"></el-input>
                         </el-form-item>
                         </div>
-                        <el-link size="small" @click="addNewWorktime(index, domain)" style="margin-left:15px;margin-top:5px;margin-bottom:5px;">{{$t('other.AddWorkTime')}}</el-link>
-                    </div>
+                        <!--多个工作事项填报的情况 -->
+                        <div v-if="reportTimeType.multiWorktime==1">
+                            <el-form-item :label="$t('screening.inputProject')" :prop="'domains.' + index + '.projectId'"
+                                :rules="{ required: true, message: $t('defaultText.pleaseSelectSnItem'), trigger: ['change','blur'] }">
+                                <el-select v-model="domain.projectId" :placeholder="$t('defaultText.pleaseSelectSnItem')" style="width:200px;" clearable="true"  filterable="true" value-key="id"
+                                @change="selectProject(domain, index)"
+                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)" popper-class="projectSelectPopperClass">
+                                    <el-option v-for="item in fillProjectList" :disabled="item.status!=1 && item.status!=4" :key="item.id" :label="item.projectName + '\u3000' + item.projectCode" :value="item.id">
+                                        <span style="float: left; color: #8492a6; font-size: 13px;">{{ item.projectCode }}</span>
+                                        <span style="float: right;">{{ item.projectName }}</span>
+                                    </el-option>
+                                </el-select>
+                                <template v-if="user.timeType.mainProjectState != 1">
+                                <span  v-if="domain.subProjectList != null && domain.subProjectList.length> 0 && domain.projectId != ''"
+                                    style="margin-left:45px;">{{$t('lable.subproject')}}</span>
+                                <!--子项目 -->
+                                <el-select v-model="domain.subProjectId" :placeholder="$t('defaultText.PleaseSelectaSub-item')" style="width:200px;margin-left:10px;" clearable="true"
+                                v-if="domain.subProjectList != null && domain.subProjectList.length> 0 && domain.projectId != ''"
+                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)" @change="updateSubProject">
+                                    <el-option v-for="item in domain.subProjectList" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                                </el-select>
+                                </template>
 
-                    <!--照片的显示 -->
-                    <p v-if="domain.pics != null && domain.pics.length > 0" style="text-align:center;"> 
-                        <el-image v-for="(pic, index) in domain.pics" :key="index"
-                            style="width: 100px; height: 100px; margin-right:10px;"
-                            :src="pic" 
-                            :preview-src-list="domain.pics">
-                        </el-image>
-                    </p>
-                    <el-divider v-if="workForm.domains.length>1" style="margin-bottom:10px;"></el-divider>
-                </div>
-                <span id="workFormsItemBottom"></span>
-                <el-link v-if="showAddMore" type="primary" :underline="false" @click="addDomain(reportTimeType.type)" style="margin-left:40px;position:sticky;bottom:70px;background:#fff;z-index:1010">{{$t('other.addMore')}}</el-link>
-            </el-form>
+                                <el-link v-if="index >= 1&&domain.canEdit" type="primary" :underline="false" @click="delDomain(index)" style="float:right;margin-right:10px;"
+                                    :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)">
+                                    <i class="fa fa-trash" style="color: red;;font-size:18px;"></i>
+                                </el-link>
+
+                                <div class="overtime" v-if="user.timeType.fillOvertime"><el-checkbox :disabled="!domain.canEdit" v-model="domain.isOvertime">{{$t('other.IncludingOvertime')}}</el-checkbox>
+                                <el-input :disabled="!domain.canEdit || domain.isOvertime==null || domain.isOvertime==0 || !domain.isOvertime" v-model="domain.overtimeHours" @blur="triggerCalculateOT(index)" @input="domain.overtimeHours=domain.overtimeHours.replace(/[^\d.]/g,'')" style="width: 100px;"></el-input><span style="margin-left:5px">{{$t('time.hour')}}</span>
+                                </div>
+                                
+                                <!-- <el-link type="primary" v-if="canEdit"
+                                    :underline="false" style="margin-left:10px;" @click="copyProject(index)">复制</el-link> -->
+                            </el-form-item>
+                            <el-form-item :label="user.companyId==781?$t('other.describe'):$t('other.projectDescription')" v-if="user.company.packageProject==0&&domain.projectId&&projectList.filter(p=>p.id == domain.projectId)[0].projectDesc">
+                                <span>{{projectList.filter(p=>p.id == domain.projectId)[0].projectDesc}}</span>
+                            </el-form-item>
+                            <!--如果设置了工时成本预警的预算成本项-->
+                            <el-form-item :label="$t('lable.budgetSource')" v-if="user.company.packageProject==1&&timeBasecostList &&timeBasecostList.length>0">
+                                <el-select v-model="domain.basecostId" :disabled="!domain.canEdit" @change="$forceUpdate()">
+                                    <el-option v-for="item in timeBasecostList" :label="item.name" :value="item.id" :key="item.id"></el-option>
+                                </el-select>
+                            </el-form-item>
+                            <el-form-item :label="$t('lable.taskGrouping')" v-if="user.company.packageProject == 1">
+                                <!-- 任务分组 -->
+                                <el-select v-model="domain.groupId" :placeholder="$t('defaultText.pleaseSelectaTaskGroup')" style="width:200px;" clearable="true" 
+                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)" @change="getGroupStages(domain, index)">
+                                    <el-option v-for="item in domain.taskGroups" :key="item.id" :label="item.name" :value="item.id"></el-option>
+                                </el-select>
+                                <!-- 项目的阶段 -->
+                                <span v-if="domain.stages != null && domain.stages.length> 0" 
+                                    style="margin-left:30px;">{{$t('other.inputStage')}}</span>
+                                <el-select v-model="domain.stage" :placeholder="$t('defaultText.pleaseChoose')" style="width:200px;margin-left:10px;" 
+                                clearable="true" v-if="domain.stages != null && domain.stages.length> 0"
+                                @change="changeStages(domain, index)"
+                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)">
+                                    <el-option v-for="item in domain.stages" :key="item.id" :label="item.stagesName" :value="item.stagesName"></el-option>
+                                </el-select>
+                            </el-form-item>
+                            <el-form-item :label="$t('other.projectAuditor')" >
+                                <el-select v-model="domain.projectAuditorId" :disabled="!domain.canEdit" @change="$forceUpdate()" v-if="user.userNameNeedTranslate != '1'">
+                                    <el-option v-for="item in domain.auditUserList" :label="item.auditorName" :value="item.auditorId" :key="item.id">
+                                        <span style="float: left" v-if="user.userNameNeedTranslate == '1'"><ww-open-data type='userName' :openid='item.auditorName'></ww-open-data></span>
+                                        <span style="float: left" v-if="user.userNameNeedTranslate != '1'">{{item.auditorName}}</span>
+                                    </el-option>
+                                </el-select>
+
+                                <selectCat v-if="user.userNameNeedTranslate == '1'" :size="'small'" :subject="domain.auditUserList" :idx="index" :subjectId="domain.projectAuditorId" ref="selectCat" :flg="true" :flgs="true" @selectCatCli="selectCatCli"></selectCat>
+                            </el-form-item>
+                            
+
+                            <!--工程专业版本模式下, 各个专业的进度填报 -->
+                            <el-form-item :label="$t('other.professionalProgress')" :prop="'domains.' + index + '.professionProgress'" v-if="user.company.packageEngineering==1">
+                                <span v-for="item in domain.professionProgress" :key="item.professionId" style="margin-right:10px;">
+                                    <span>{{item.professionName}}</span> / {{$t('other.schedule')}}:
+                                    <el-input size="mini" style="width:60px;" v-model="item.progress"
+                                    @keyup.native="onProgressChange" 
+                                    :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"></el-input>%
+                                </span>
+                            </el-form-item>
+                            <!-- 相关维度 -->
+                            <el-form-item :label="yonghuUser.customDegreeName" v-if="domain.projectId && yonghuUser.customDegreeActive == 1" :rules="user.timeType.customDegreeStatus == 1 && domain.wuduList.length != 0 ? { required: true, message: $t('defaultText.pleaseChoose') + yonghuUser.customDegreeName, trigger: ['change','blur'] } : null" :prop="'domains.' + index + '.degreeId'">
+                                <el-select v-model="domain.degreeId" :disabled="!domain.canEdit" clearable :placeholder="$t('defaultText.pleaseChoose')">
+                                    <el-option v-for="item in domain.wuduList" :key="item.value" :label="item.name" :value="item.id">
+                                    </el-option>
+                                </el-select>
+                            </el-form-item>
+                            <!-- 相关数值 -->
+                            <el-form-item :label="yonghuUser.customDataName" v-if="domain.projectId && yonghuUser.customDataActive == 1" :prop="'domains.' + index + '.customData'" :rules="user.timeType.customDataStatus == 1 ? { type: 'number', required: true, message: $t('defaultText.pleaseFillOut') + yonghuUser.customDataName, trigger: ['change','blur'] } : null">
+                                <el-input-number :id="'numberData_'+index" :disabled="!domain.canEdit" v-model="domain.customData" style="width:200px;" @keyup.native="restrictNumber('numberData_'+index)" :max="user.timeType.customDataMaxStatus == 1 ? user.timeType.customDataMaxValue : 'infinity'"></el-input-number>
+                            </el-form-item>
+                            <!-- 自定义文本 -->
+                            <el-form-item :label="yonghuUser.customTextName" v-if="yonghuUser.customTextActive == 1" :prop="'domains.' + index + '.customText'" :rules="user.timeType.customTextStatus == 1 ? { required: true, message: $t('defaultText.pleaseFillOut') + yonghuUser.customTextName, trigger: ['change','blur'] } : null">
+                                <el-input :disabled="!domain.canEdit" v-model="domain.customText" style="width:75%;margin-right:7%" type="textarea" :rows="1" maxlength="1000"></el-input>
+                            </el-form-item>
+                            <!--项目管理专业版模式下,项目下的近期执行的任务 -->
+                            <el-form-item :label="$t('other.task')+' / '+$t('other.milestone')" :prop="'domains.' + index + '.taskId'" v-if="user.company.packageProject==1" >
+                                <el-select v-model="domain.taskId" :placeholder="$t('defaultText.pleaseChoose')" style="width:75%;margin-right:7%" filterable="true" 
+                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)">
+                                    <el-option v-for="item in domain.taskList" :key="item.taskId" :label="item.taskName" :value="item.taskId"></el-option>
+                                </el-select>
+                                <el-checkbox v-model="domain.taskFinish" v-if="domain.taskId != undefined">{{$t('state.completed')}}</el-checkbox>
+                            </el-form-item>
+                            <div v-for="(timeItem,tIndex) in domain.worktimeList" :key="tIndex" 
+                                style="border: 0.5px #ddd solid;padding:5px;margin-bottom:15px;position:relative;">
+                            <i v-if="tIndex>0&&workForm.domains[index].state>=2" @click="removeTimeItem(domain,tIndex)"  class="el-icon-delete" style="position:absolute;right:-7px;top:-7px;font-size:16px;"></i>
+                            <el-form-item :label="$t('screening.workHours')" :prop="'domains.' + index + '.worktimeList.'+tIndex+'.'+timeFields[reportTimeType.type]"
+                                :rules="{ required: true, message: $t('defaultText.pleaseSelectWorkingHourss'), trigger: 'blur' }">
+                                
+                                <span v-if="reportTimeType.type == 2">
+                                <!-- <span> -->
+                                <!--时间范围选择 -->
+                                <el-time-picker 
+                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
+                                    v-model="timeItem.startTime"
+                                    :placeholder="$t('time.startTime')"
+                                    style="width:120px;"
+                                    format="HH:mm"
+                                    value-format="HH:mm"
+                                    :picker-options="{
+                                    start: '00:00',
+                                    end: '23:59',
+                                    }"
+                                    @change="iptChangs()">
+                                </el-time-picker> - <el-time-picker 
+                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
+                                    v-model="timeItem.endTime"
+                                    :placeholder="$t('time.endTime')"
+                                    style="width:120px;"
+                                    format="HH:mm"
+                                    value-format="HH:mm"
+                                    :picker-options="{
+                                    start: '00:00',
+                                    end: '23:59',
+                                    minTime: timeItem.startTime
+                                    }"
+                                    @change="iptChangs()">
+                                </el-time-picker>
+                                </span>
+                            </el-form-item>
+                            <el-form-item :label="$t('other.workMatters')" :prop="'domains.' + index + '.worktimeList.'+tIndex+'.content'" 
+                            :rules="user.timeType.workContentState == 1 ? { required: true, message: $t('other.tianworkMatters'), trigger: 'blur' } : null">
+                                <el-input v-model="timeItem.content" type="textarea" :rows="2" :placeholder="$t('other.tianworkMatters')" clearable
+                                :disabled="workForm.domains.length==0?true:(workForm.domains[index].state>=2?false:true)"
+                                ></el-input>
+                            </el-form-item>
+                            </div>
+                            <el-link size="small" @click="addNewWorktime(index, domain)" style="margin-left:15px;margin-top:5px;margin-bottom:5px;">{{$t('other.AddWorkTime')}}</el-link>
+                        </div>
+
+                        <!--照片的显示 -->
+                        <p v-if="domain.pics != null && domain.pics.length > 0" style="text-align:center;"> 
+                            <el-image v-for="(pic, index) in domain.pics" :key="index"
+                                style="width: 100px; height: 100px; margin-right:10px;"
+                                :src="pic" 
+                                :preview-src-list="domain.pics">
+                            </el-image>
+                        </p>
+                        <el-divider v-if="workForm.domains.length>1" style="margin-bottom:10px;"></el-divider>
+                    </div>
+                    <span id="workFormsItemBottom"></span>
+                    <el-link v-if="showAddMore" type="primary" :underline="false" @click="addDomain(reportTimeType.type)" style="margin-left:40px;">{{$t('other.addMore')}}</el-link>
+                </el-form>
+            </div>
             <span slot="footer" class="dialog-footer">
                 <el-button @click="cancel(workForm.domains,true)" v-if="canCancelInDialog" style="float:left;">{{$t('btn.withdraw')}}</el-button>
                 <el-button @click="deleteReport"  v-if="workForm.domains[0].id != null && canEdit && reportCanDelete">{{$t('btn.delete')}}</el-button>
@@ -763,7 +765,7 @@
                      <el-button @click="getCurrentWeek()">{{$t('time.thisWeek')}}</el-button>
                      <el-button @click="newDates()">{{$t('time.addedDate')}}</el-button>
                 </el-form-item>
-                <el-table :data="zhoData" style="width: 100%" v-loading="zhoLoading">
+                <el-table :data="zhoData" style="width: 100%" v-loading="zhoLoading" max-height="400">
                     <el-table-column fixed="left" prop="zhoDataTime" :label="$t('weekDay.date')" width="160">
                         <template slot-scope="scope">
                             {{scope.row.zhoDataTime}}({{scope.row.zhoDataTime | zhoData(weekDay)}})
@@ -6359,13 +6361,13 @@
             padding-top: 10px;
         }
     }
-    .editReportDialog .el-dialog__footer{
-        position: sticky;
-        bottom: 0;
-        background: #fff;
-        height: 70px;
-        z-index: 1010;
-    }
+    // .editReportDialog .el-dialog__footer{
+    //     position: sticky;
+    //     bottom: 0;
+    //     background: #fff;
+    //     height: 70px;
+    //     z-index: 1010;
+    // }
     .touruxiangmu{
         max-width: 1000px;
     }

+ 2 - 2
fhKeeper/formulahousekeeper/timesheet_h5/src/views/edit/index.vue

@@ -1646,8 +1646,8 @@ import timetoolVue from '../timetool/timetool.vue';
                             formData.append("taskFinish", 0);
                         }
                         formData.append("createDate", this.form.createDate);
-                        formData.append("isOvertime", this.form.domains[i].isOvertime?1:0);
-                        if (this.form.domains[i].overtimeHours && this.form.domains[i].isOvertime == 1) {
+                        formData.append("isOvertime", this.form.domains[i].isOvertime && this.user.timeType.fillOvertime?1:0);
+                        if (this.form.domains[i].overtimeHours && this.form.domains[i].isOvertime == 1 && this.user.timeType.fillOvertime) {
                             formData.append("overtimeHours", this.form.domains[i].overtimeHours);
                         } else {
                             formData.append("overtimeHours", 0);