Ver Fonte

提交代码

Lijy há 1 ano atrás
pai
commit
303c2c8fce

+ 173 - 131
fhKeeper/formulahousekeeper/timesheet-workshop/src/views/plan/planComponent.vue

@@ -9,8 +9,9 @@
         <div class="OutSide_center">
           <div class="block">
             <span class="demonstration">查询{{ titleLeftText }}{{ titleText }}</span>
-            <el-date-picker v-model="planDate" type="date" value-format="yyyy-MM-dd" :clearable="false" @change="getTableData(hasChooseDept)"
-              placeholder="选择日期" size="small" :picker-options="planType == 1 ? toMPickerOptions : todayPickerOptions">
+            <el-date-picker v-model="planDate" type="date" value-format="yyyy-MM-dd" :clearable="false"
+              @change="getTableData(hasChooseDept)" placeholder="选择日期" size="small"
+              :picker-options="planType == 1 ? toMPickerOptions : todayPickerOptions">
             </el-date-picker>
           </div>
           <div class="OutSide" style="padding-bottom: 0;">
@@ -24,7 +25,7 @@
           <el-link type="primary" :underline="false" @click="addPlan()">{{
             `新增${titleText}`
           }}</el-link>
-          <el-link type="primary" :underline="false" @click="importDataDialog=true">{{ "导入" }}</el-link>
+          <el-link type="primary" :underline="false" @click="importDataDialog = true">{{ "导入" }}</el-link>
           <el-link type="primary" :underline="false" @click="exportData()"
             :download="this.planType == 0 ? '今日计划' : this.planType == 1 ? '明日计划' : this.planType == 2 ? '插单计划' : '' + '.xlsx'">{{
               "导出"
@@ -45,7 +46,7 @@
           <el-button type="primary" size="mini" @click="(deptSetDialog = true), getPlanDeptSet()">部门设置</el-button>
         </div>
       </div>
-      
+
 
       <!-- 各部分数据列表 -->
       <el-table :data="tableData" style="width: 100%;" height="0" v-loading="tableDataLoading"
@@ -70,7 +71,7 @@
         <el-table-column prop="foremanName" label="工长" width="180">
           <template slot-scope="scope">
             <div @click="getFormenDetail(scope.row)" class="colorText">
-              {{ scope.row.foremanName}}
+              {{ scope.row.foremanName }}
             </div>
           </template>
         </el-table-column>
@@ -78,10 +79,11 @@
         </el-table-column>
         <el-table-column prop="endDate" label="完工时间" width="180">
         </el-table-column>
-        <el-table-column label="操作" :fixed="'right'" >
+        <el-table-column label="操作" :fixed="'right'">
           <template slot-scope="scope">
             <div @click="editPlan(scope.row)" class="colorText">编辑</div>
-            <div v-if="jisuanDate(scope.row.startDate)>30" @click="hidePlan(scope.row.id,scope.row.hideState)" class="colorText">{{scope.row.hideState==0?'隐藏':'取消隐藏'}}</div>
+            <div v-if="jisuanDate(scope.row.startDate) > 30" @click="hidePlan(scope.row.id, scope.row.hideState)"
+              class="colorText">{{ scope.row.hideState == 0 ? '隐藏' : '取消隐藏' }}</div>
           </template>
         </el-table-column>
       </el-table>
@@ -110,23 +112,35 @@
           <el-form-item label="项目代码" style="width: 100%" prop="projectCode">
             <el-input v-model="todayPlanForm.projectCode" maxlength="50" readonly></el-input>
           </el-form-item>
-          <el-form-item label="钢印号" v-for="(item,index) in todayPlanForm.steelStampNumberList" :key="index" style="width: 100%" prop="steelStampNumberStart">
-            <el-input class="w45" v-model="item.steelStampNumberStart" maxlength="20"></el-input>
-            {{ "-" }}
-            <el-input class="w45" v-model="item.steelStampNumberEnd" maxlength="20"></el-input>
-            <i class="el-icon-delete" style="color:red" @click="deleteInput(index)"></i>
-          </el-form-item>
+
+          <div v-for="(item, index) in todayPlanForm.steelStampNumberList" style="width: 100%;margin-bottom: 10px;">
+            <el-form-item label="钢印号" :key="index" style="width: 100%" prop="steelStampNumberStart">
+              <el-input class="w45" v-model="item.steelStampNumberStart" maxlength="20"></el-input>
+              {{ "-" }}
+              <el-input class="w45" v-model="item.steelStampNumberEnd" maxlength="20"></el-input>
+            </el-form-item>
+
+            <el-form-item label="编码起始位置" :key="index" style="width: 100%" prop="steelStampNumberStart">
+              <el-input-number v-model="item.ruleIndexStart" :min="1" :controls="false" step-strictly
+                :step="1"></el-input-number>
+              {{ "-" }}
+              <el-input-number v-model="item.ruleIndexEnd" :min="item.ruleIndexStart" :controls="false" step-strictly
+                :step="1"></el-input-number>
+            </el-form-item>
+
+            <i class="el-icon-delete" style="color:red; float: right;" @click="deleteInput(index)" v-if="index != 0"></i>
+          </div>
           <i class="el-icon-circle-plus" style="color:#409EFF" @click="addInput"></i>
-          <el-form-item label="计划总工价" v-if="this.titleName==='编辑今日计划'"  prop="planTotalWages">
+          <el-form-item label="计划总工价" v-if="this.titleName === '编辑今日计划'" prop="planTotalWages">
             <el-input v-model="todayPlanForm.planTotalWages" type="number"></el-input>
           </el-form-item>
           <!-- <el-form-item label="进度"  :style="this.titleName==='编辑今日计划'?'':'width: 100%'" prop="progress">
             <el-input v-model="todayPlanForm.progress" maxlength="20"></el-input>
           </el-form-item> -->
           <el-form-item label="车辆序号" style="width: 100%" prop="steelStampNumberStart">
-          <el-input-number class="w45" v-model="todayPlanForm.vehicleNumStart" maxlength="20"></el-input-number>
-          {{ "-" }}
-          <el-input-number class="w45" v-model="todayPlanForm.vehicleNumEnd" maxlength="20"></el-input-number>
+            <el-input-number class="w45" v-model="todayPlanForm.vehicleNumStart" maxlength="20"></el-input-number>
+            {{ "-" }}
+            <el-input-number class="w45" v-model="todayPlanForm.vehicleNumEnd" maxlength="20"></el-input-number>
           </el-form-item>
           <el-form-item label="数量" prop="num">
             <el-input v-model="todayPlanForm.num" maxlength="10" type="number"></el-input>
@@ -169,7 +183,7 @@
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="
-//          (editPlanDiaLog = false), $refs['todayPlanForm'].resetFields()
+          //          (editPlanDiaLog = false), $refs['todayPlanForm'].resetFields()
           (editPlanDiaLog = false)
           ">取 消</el-button>
         <el-button type="primary" @click="addPlanData('todayPlanForm')">确 定</el-button>
@@ -201,13 +215,13 @@
     <!-- 工长弹框 -->
     <el-dialog title="工长信息" :visible.sync="foremanDetailDialog" width="30%" :before-close="handleClose">
       <div>
-        <span>姓名:{{this.foremanDetail.name}}</span>
+        <span>姓名:{{ this.foremanDetail.name }}</span>
       </div>
       <div>
-        <span>工种:{{this.foremanDetail.workType}}</span>
+        <span>工种:{{ this.foremanDetail.workType }}</span>
       </div>
       <div>
-        <span>工号:{{this.foremanDetail.jobNumber}}</span>
+        <span>工号:{{ this.foremanDetail.jobNumber }}</span>
       </div>
       <span slot="footer" class="dialog-footer">
         <el-button @click="foremanDetailDialog = false">关闭</el-button>
@@ -215,15 +229,18 @@
     </el-dialog>
 
     <!--导入计划 -->
-    <el-dialog :title="this.titleText+'导入'" :visible.sync="importDataDialog"  width="500px">
-        <p>1. 下载
-        <el-link type="primary" style="margin-left:5px;" :underline="false" :href="'./upload/'+this.titleText+'导入模板.xlsx'" :download="this.titleText+'导入模板.xlsx'">{{this.titleText+'导入模板.xlsx'}}</el-link>
-        </p>
-        <p style="display: flex;justify-content: center;">
-            <el-upload ref="upload"  action="#" :limit="1" :http-request="importData" :show-file-list="false">
-              <el-button type="primary" :underline="false" :loading="importingData">{{$t("other.startImporting")}}</el-button>
-            </el-upload>
-        </p>
+    <el-dialog :title="this.titleText + '导入'" :visible.sync="importDataDialog" width="500px">
+      <p>1. 下载
+        <el-link type="primary" style="margin-left:5px;" :underline="false"
+          :href="'./upload/' + this.titleText + '导入模板.xlsx'" :download="this.titleText + '导入模板.xlsx'">{{ this.titleText +
+            '导入模板.xlsx' }}</el-link>
+      </p>
+      <p style="display: flex;justify-content: center;">
+        <el-upload ref="upload" action="#" :limit="1" :http-request="importData" :show-file-list="false">
+          <el-button type="primary" :underline="false" :loading="importingData">{{ $t("other.startImporting")
+          }}</el-button>
+        </el-upload>
+      </p>
     </el-dialog>
   </div>
 </template>
@@ -258,8 +275,8 @@ export default {
           return v.getTime() < Date.now();
         }
       },
-      importDataDialog:false,
-      importingData:false,
+      importDataDialog: false,
+      importingData: false,
       steelStampNumber: "",
       planDate: this.todayDate,
       deptSetDialog: false,
@@ -276,8 +293,8 @@ export default {
         projectCode: "",
         // steelStampNumberStart: "",
         // steelStampNumberEnd: "",
-        vehicleNumStart:"",
-        vehicleNumEnd:"",
+        vehicleNumStart: "",
+        vehicleNumEnd: "",
         num: "",
         mainProcess: "",
         progress: "",
@@ -288,18 +305,20 @@ export default {
         endDate: "",
         describtion: "",
         versionNumber: "",
-        planTotalWages:0,
-        steelStampNumberList:[
-        {
-          id:null,
-          steelStampNumberStart:'',
-          steelStampNumberEnd:''
-        }
+        planTotalWages: 0,
+        steelStampNumberList: [
+          {
+            id: null,
+            steelStampNumberStart: '',
+            steelStampNumberEnd: '',
+            ruleIndexStart: '',
+            ruleIndexEnd: '',
+          }
         ],
       },
       user: JSON.parse(sessionStorage.getItem("user")),
-      foremanDetailDialog:false,
-      foremanDetail:{},
+      foremanDetailDialog: false,
+      foremanDetail: {},
       todayTabIndex: 0,
       tableDataLoading: false,
       tableData: [],
@@ -343,33 +362,35 @@ export default {
       this.getProductList();
   },
   methods: {
-    addInput(){
-      console.log('===========',this.todayPlanForm.steelStampNumberList)
-      console.log('===========',this.todayPlanForm)
-      if(this.todayPlanForm.steelStampNumberList.length>=9){
+    addInput() {
+      console.log('===========', this.todayPlanForm.steelStampNumberList)
+      console.log('===========', this.todayPlanForm)
+      if (this.todayPlanForm.steelStampNumberList.length >= 9) {
         this.$message({
-              message: '超过最大条数(9)',
-              type: "error",
-            });
+          message: '超过最大条数(9)',
+          type: "error",
+        });
         return
       }
       this.todayPlanForm.steelStampNumberList.push({
-        id:null,
-        steelStampNumberStart:'',
-        steelStampNumberEnd:'',
+        id: null,
+        steelStampNumberStart: '',
+        steelStampNumberEnd: '',
+        ruleIndexStart: '',
+        ruleIndexEnd: '',
       });   // 在数组中添加一个空对象
     },
-    deleteInput(index){
-      this.todayPlanForm.steelStampNumberList.splice(index,1)
+    deleteInput(index) {
+      this.todayPlanForm.steelStampNumberList.splice(index, 1)
     },
-    getFormenDetail(item){
-      this.foremanDetailDialog=true;
+    getFormenDetail(item) {
+      this.foremanDetailDialog = true;
       this.http.post(
         "/user/getUserInfo",
-        {userId:item.foremanId},
+        { userId: item.foremanId },
         (res) => {
           if (res.code == "ok") {
-            this.foremanDetail=res.data
+            this.foremanDetail = res.data
           } else {
             this.$message({
               message: res.msg,
@@ -386,7 +407,7 @@ export default {
       );
     },
     setProductCode() {
-      let arrList = this.productList.filter(item => item.id == this.todayPlanForm.productId) 
+      let arrList = this.productList.filter(item => item.id == this.todayPlanForm.productId)
       console.log('====>', arrList)
       this.todayPlanForm.projectCode = arrList[0].code
     },
@@ -617,7 +638,7 @@ export default {
       this.getTableData(this.hasChooseDept);
     },
     addPlan() {
-      console.log('===========',this.todayPlanForm)
+      console.log('===========', this.todayPlanForm)
       this.titleName = `新增${this.titleText}`;
       this.initTodayPlanForm()
       this.editPlanDiaLog = true;
@@ -644,56 +665,56 @@ export default {
         endDate: "",
         describtion: "",
         versionNumber: "",
-        steelStampNumberList:[
-        {
-          id:null,
-          steelStampNumberStart:'',
-          steelStampNumberEnd:''
-        }
+        steelStampNumberList: [
+          {
+            id: null,
+            steelStampNumberStart: '',
+            steelStampNumberEnd: ''
+          }
         ],
       }
     },
     addPlanData(formName) {
       console.log(this.todayPlanForm);
-      if(!this.todayPlanForm.steelStampNumberList){
-        for(item in this.todayPlanForm.steelStampNumberList){
-          if(!item.steelStampNumberStart){
-            if(item.steelStampNumberEnd){
-                this.$message({
-                    message:"钢印号区间填写不完整",
-                    type: "error",
-                });
-                return  
-          }
-      }
-      if(!item.steelStampNumberEnd){
-          if(item.steelStampNumberStart){
+      if (!this.todayPlanForm.steelStampNumberList) {
+        for (item in this.todayPlanForm.steelStampNumberList) {
+          if (!item.steelStampNumberStart) {
+            if (item.steelStampNumberEnd) {
               this.$message({
-                  message:"钢印号区间填写不完整",
-                  type: "error",
+                message: "钢印号区间填写不完整",
+                type: "error",
               });
               return
+            }
           }
-      }
-        }
-      }
-      if(!this.todayPlanForm.vehicleNumStart){
-          if(this.todayPlanForm.vehicleNumStart){
-              this.$message({
-                  message:"车辆序号区间填写不完整",
-                  type: "error",
-              });
-              return  
-          }
-      }
-      if(!this.todayPlanForm.vehicleNumEnd){
-          if(this.todayPlanForm.vehicleNumEnd){
+          if (!item.steelStampNumberEnd) {
+            if (item.steelStampNumberStart) {
               this.$message({
-                  message:"车辆序号区间填写不完整",
-                  type: "error",
+                message: "钢印号区间填写不完整",
+                type: "error",
               });
               return
+            }
           }
+        }
+      }
+      if (!this.todayPlanForm.vehicleNumStart) {
+        if (this.todayPlanForm.vehicleNumStart) {
+          this.$message({
+            message: "车辆序号区间填写不完整",
+            type: "error",
+          });
+          return
+        }
+      }
+      if (!this.todayPlanForm.vehicleNumEnd) {
+        if (this.todayPlanForm.vehicleNumEnd) {
+          this.$message({
+            message: "车辆序号区间填写不完整",
+            type: "error",
+          });
+          return
+        }
       }
       // if(this.todayPlanForm.endDate<this.todayPlanForm.startDate){
       //   this.$message({
@@ -702,6 +723,21 @@ export default {
       //         });
       //         return
       // }
+
+      // 判断校验规则
+
+      const { steelStampNumberList } = this.todayPlanForm;
+
+      for (const [i, { steelStampNumberStart, steelStampNumberEnd, ruleIndexEnd, ruleIndexStart }] of steelStampNumberList.entries()) {
+        if (steelStampNumberStart && steelStampNumberEnd && (!ruleIndexEnd || !ruleIndexStart)) {
+          this.$message({
+            message: `第${i}条钢印号校验规则填写不完整`,
+            type: "error",
+          });
+          return;
+        }
+      }
+
       this.$refs[formName].validate((valid) => {
         if (valid) {
           console.log(this.todayPlanForm, "传给后端的值");
@@ -709,7 +745,7 @@ export default {
             this.todayPlanForm.stationId[
             this.todayPlanForm.stationId.length - 1
             ];
-          let steelStampNumberListArr= this.todayPlanForm.steelStampNumberList  
+          let steelStampNumberListArr = this.todayPlanForm.steelStampNumberList
           this.$delete(this.todayPlanForm, 'product')
           this.$delete(this.todayPlanForm, 'planProcedureTotals')
           this.$delete(this.todayPlanForm, 'steelStampNumberList')
@@ -719,7 +755,7 @@ export default {
               ...this.todayPlanForm,
               stationId,
               planType: this.planType,
-              steelStampNumber:JSON.stringify(steelStampNumberListArr)
+              steelStampNumber: JSON.stringify(steelStampNumberListArr)
             },
             (res) => {
               if (res.code == "ok") {
@@ -750,6 +786,12 @@ export default {
         }
       });
     },
+    // 输入长度
+    inputLength(str) {
+      const strNum = str.length;
+      const lng = '9'.repeat(strNum);
+      return +lng;
+    },
     editPlan(item) {
       (this.titleName = `编辑${this.titleText}`), (this.editPlanDiaLog = true);
       this.todayPlanForm = item;
@@ -929,7 +971,7 @@ export default {
         }
       );
     },
-    jisuanDate(startDate){
+    jisuanDate(startDate) {
       let date1 = new Date(startDate);
       let date2 = new Date();
       date1 = new Date(date1.getFullYear(), date1.getMonth(), date1.getDate());
@@ -939,51 +981,51 @@ export default {
       return diffDate;
     },
     //隐藏计划
-    hidePlan(id,state){
-      this.$alert(state==0?'隐藏计划在移动端将无法展示':'取消隐藏计划将在移动端将展示',state==0?'是否隐藏计划':'是否取消隐藏计划', {
-          confirmButtonText: '确定',
-          callback: action => {
-            this.http.post(
-              "/plan/hidePlan",
-              {
-                id:id,
-                state:state==0?1:0
-              },
-              (res) => {
-                if (res.code == "ok") {
-                  this.$message({
-                    message: '隐藏成功',
-                    type: "success",
-                  });
-                } else {
-                  this.$message({
-                    message: res.msg,
-                    type: "error",
-                  });
-                }
-                this.getTableData()
-              },
-              (error) => {
+    hidePlan(id, state) {
+      this.$alert(state == 0 ? '隐藏计划在移动端将无法展示' : '取消隐藏计划将在移动端将展示', state == 0 ? '是否隐藏计划' : '是否取消隐藏计划', {
+        confirmButtonText: '确定',
+        callback: action => {
+          this.http.post(
+            "/plan/hidePlan",
+            {
+              id: id,
+              state: state == 0 ? 1 : 0
+            },
+            (res) => {
+              if (res.code == "ok") {
+                this.$message({
+                  message: '隐藏成功',
+                  type: "success",
+                });
+              } else {
                 this.$message({
-                  message: error,
+                  message: res.msg,
                   type: "error",
                 });
               }
-            );
-          }
+              this.getTableData()
+            },
+            (error) => {
+              this.$message({
+                message: error,
+                type: "error",
+              });
+            }
+          );
+        }
       });
     }
   },
 };
 </script>
 <style scoped lang='scss'>
-
 .today-tab-btn {
   width: 100%;
   display: flex;
   align-items: center;
   margin-bottom: 10px;
 }
+
 .colorText {
   color: #02a7f0;
   cursor: pointer;
@@ -1084,7 +1126,7 @@ export default {
     div {
       font-size: 16px;
       margin-left: 15px;
-      min-width: fit-content;      
+      min-width: fit-content;
       cursor: pointer;
     }
 

+ 26 - 19
fhKeeper/formulahousekeeper/timesheet-workshop/src/views/workReport/daily.vue

@@ -116,7 +116,7 @@
                                     <!-- <el-link type="primary" style="margin-right:10px;" :underline="false" @click="isSubstitude=false;fillInReport(-1,0)">{{$t('textLink.fillInTheWork')}}</el-link> -->
                                     <el-link type="primary" v-if="permissions.reportsFillOut" style="margin-right:10px;" :underline="false" @click="isSubstitude=true; fillInReport(-1,2)">{{$t('textLink.helpToFillIn')}}</el-link>
                                     <!-- <el-link type="primary" v-if="permissions.reportSettings" style="margin-right:10px;" :underline="false" @click="fillInReport(-1,2)">补报设置</el-link> -->
-                                    <!-- <el-link type="primary" style="margin-right:10px;" :underline="false" @click="showExportDialog" v-if="permissions.reportExport">{{$t('textLink.exportWork')}}</el-link> -->
+                                    <el-link type="primary" style="margin-right:10px;" :underline="false" @click="showExportDialog" v-if="permissions.reportExport">{{$t('textLink.exportWork')}}</el-link>
                                     <el-link type="primary" style="margin-right:10px;" :underline="false" @click="showWorkTime" >查看报工记录</el-link>
                                     <!--部门负责人给个导出工时的功能 -->
                                     <!-- <el-link type="primary" v-if="user.manageDeptId != 0" style="margin-right:10px;" :underline="false" @click="showExportTimeDialog">{{$t('textLink.exportingTimeStatistics')}}</el-link> -->
@@ -658,12 +658,12 @@
         <!--导出报表条件选择 -->
         <el-dialog :title="$t('textLink.exportWork')" v-if="exportDialog" :visible.sync="exportDialog" customClass="customWidth" width="500px">
             <el-form ref="form3" :model="exportParam" >
-                <el-form-item prop="projectId" :label="$t('defaultText.selectProject')">
-                    <el-select v-model="exportParam.projectId" :placeholder="$t('other.allProject')"  clearable filterable style="width:350px;">
-                        <el-option v-for="item in projectList"  :key="item.id" :label="item.projectName" :value="item.id"></el-option>
+                <!-- <el-form-item prop="projectId" :label="'导出计划'">
+                    <el-select v-model="exportParam.projectId" :placeholder="'全部计划'"  clearable filterable style="width:350px;">
+                        <el-option v-for="item in allPlanList"  :key="item.id" :label="item.productName" :value="item.id"></el-option>
                     </el-select>
-                </el-form-item>
-                <el-form-item prop="departmentId" :label="$t('other.selectdepartment')" v-if="permissions.reportsCompany">
+                </el-form-item> -->
+                <el-form-item prop="departmentId" :label="'选择工位'" v-if="permissions.reportsCompany">
 
                     <el-cascader v-if="user.userNameNeedTranslate != 1" v-model="exportParam.departmentId" :placeholder="$t('other.allDepartments')" :options="departmentList" :props="{ checkStrictly: true, value: 'id' }" clearable style="width: 350px;"></el-cascader>
 
@@ -681,13 +681,13 @@
                         :end-placeholder="$t('time.endDate')"
                     ></el-date-picker>
                 </el-form-item>
-                <el-form-item prop="stateKey" :label="$t('other.doesItContain')">
+                <!-- <el-form-item prop="stateKey" :label="$t('other.doesItContain')">
                     <el-select v-model="stateKey" :placeholder="$t('defaultText.pleaseChoose')" filterable style="width:350px;">
                         <el-option :label="$t('state.alreadyPassed')" value="0"></el-option>
                         <el-option :label="$t('state.WaitingAudit')" value="2"></el-option>
                         <el-option :label="$t('state.alreadyPassedAndWaitingAudit')" value="1"></el-option>
                     </el-select>
-                </el-form-item>
+                </el-form-item> -->
             </el-form>
             <div slot="footer" class="dialog-footer">
                 <el-button type="primary" @click="exportReport" style="width:100%;" :loading="listLoading">{{$t('export.export')}}</el-button>
@@ -1645,6 +1645,8 @@
                 integrationProjectList: [],
 
                 totalReportHours: 0, // 合计的工时
+
+                allPlanList: [], // 所有计划
             };
         },
         watch: {
@@ -1694,6 +1696,7 @@
             // this.getTimeType();
             this.getDepartment();
             this.scrollFunction()
+            this.getAllPlanList()
             // this.userssHu();
             if(this.user.timeType.reportAuditType == 3){
                 this.getAllUsersList()
@@ -1714,6 +1717,14 @@
         },
         methods: {
             ...mapMutations(['upDataLoading']),
+            // 获取所有计划
+            getAllPlanList() {
+                this.http.post('/plan/allPlanList', {}, res => {
+                    if(res.code == 'ok') {
+                        this.allPlanList = res.data
+                    }
+                })
+            },
             openModImportTime(row) {
                 this.showModImportTimeDialog = true;
                 this.modItemDataId = row.id;
@@ -4259,18 +4270,14 @@
             exportReport() {
                 this.listLoading = true;
                 var param = {};
-                if (this.exportParam.dateRange != null) {
-                    param = {startDate:this.exportParam.dateRange[0], endDate: this.exportParam.dateRange[1]};
-                }
-                if (this.exportParam.projectId != null) {
-                    param.projectId = this.exportParam.projectId;
-                }
-                if (this.exportParam.departmentId != null) {
-                    param.departmentId = this.exportParam.departmentId[this.exportParam.departmentId.length - 1]
+                const { dateRange, departmentId } = this.exportParam
+                param.startDate = dateRange[0]
+                param.endDate = dateRange[1]
+                console.log(departmentId)
+                if(departmentId && departmentId.length > 0) {
+                    param.departmentId = departmentId[departmentId.length - 1]
                 }
-                param.stateKey = this.stateKey
-                // param.departmentId = this.user.departmentId
-                this.http.post( this.port.report.export, param,
+                this.http.post('/report/exportReport', param,
                 res => {
                     this.listLoading = false;
                     if (res.code == "ok") {