Selaa lähdekoodia

营销0423功能优化;

001295 1 vuosi sitten
vanhempi
commit
747ced821b

+ 9 - 0
src/api/business/ehr/config/config.js

@@ -0,0 +1,9 @@
+import request from '@/utils/request'
+
+// 员工数据权限配置
+export function listPmPerformance(query) {
+  return request({
+    url: '/ehr/pm/config/pmPerformance/list',
+    method: 'get'
+  })
+}

+ 9 - 0
src/api/business/ehr/pm/performance.js

@@ -75,4 +75,13 @@ export function editStage(data) {
     method: 'post',
     data: data
   })
+}
+
+//驳回到上级评分
+export function turnDownSuperiorEstimate(data) {
+  return request({
+    url: '/ehr/pm/performance/turnDownSuperiorEstimate',
+    method: 'post',
+    data: data
+  })
 }

+ 40 - 0
src/views/business/ehr/config/index.vue

@@ -0,0 +1,40 @@
+<template>
+  <div v-loading="loading">
+    <el-tabs tab-position="left" style="height: 200px;">
+      <el-tab-pane label="员工数据权限">
+        <el-input
+          type="textarea"
+          v-model="pmPerformance"
+        />
+      </el-tab-pane>
+      <el-tab-pane label="员工分数调整">员工分数调整</el-tab-pane>
+    </el-tabs>
+  </div>
+</template>
+
+<script>
+import { listPmPerformance} from "@/api/business/ehr/config/config";
+
+export default {
+  name: "PmConfig",
+  data() {
+    return {
+      // 遮罩层
+      loading: false,
+      //员工数据权限
+      pmPerformance: null,
+    };
+  },
+  async created() {
+    let res = await listPmPerformance();
+    this.pmPerformance = res.data;
+  },
+  methods: {
+    
+  }
+};
+</script>
+
+<style lang="scss" scoped>
+
+</style>

+ 32 - 20
src/views/business/ehr/pm/psnrelation/index.vue

@@ -1,29 +1,33 @@
 <template>
-  <div>
+  <div v-loading="loading">
     <div class="app-container" v-if="isList">
       <el-form :model="queryParams" ref="queryForm" size="mini" :inline="true" @submit.native.prevent>
-        <el-row>
-          <el-col :span="18">
-            <el-form-item label="员工" prop="staffName">
-              <el-input
-                v-model="queryParams.params.staffCodeOrName"
-                clearable
-                @keyup.enter.native="btnSearch"
-              />
-            </el-form-item>
-          </el-col>
-          <el-col :span="6">
-            <el-form-item style="float:right">
-              <el-button type="primary" icon="el-icon-search" size="mini" @click="btnSearch">搜索</el-button>
-              <el-button icon="el-icon-refresh" size="mini" @click="btnResetQuery">重置</el-button>
-            </el-form-item>
-          </el-col>
-        </el-row>
+        <el-form-item label="员工" prop="staffName">
+          <el-input
+            v-model="queryParams.params.staffCodeOrName"
+            clearable
+            @keyup.enter.native="btnSearch"
+          />
+        </el-form-item>
+        <el-form-item label="是否双向评估" prop="isTwoEvaluation">
+          <el-select v-model="queryParams.isTwoEvaluation">
+            <el-option
+              v-for="dict in options"
+              :key="dict.value"
+              :label="dict.label"
+              :value="dict.value"
+            ></el-option>
+          </el-select>
+        </el-form-item>
+        <el-form-item style="float:right">
+          <el-button type="primary" icon="el-icon-search" size="mini" @click="btnSearch">搜索</el-button>
+          <el-button icon="el-icon-refresh" size="mini" @click="btnResetQuery">重置</el-button>
+        </el-form-item>
       </el-form>
       <div style="float:right">
-        <el-button  v-loading="loading" type="primary" size="mini" @click="btnGetRelation">同步EHR评估关系</el-button>
+        <el-button type="primary" size="mini" @click="btnGetRelation">同步EHR评估关系</el-button>
       </div>
-      <el-table size="mini" height="500px" v-loading="loading" :data="listData" @row-dblclick="btnDetails">
+      <el-table size="mini" height="500px" :data="listData" @row-dblclick="btnDetails">
         <el-table-column label="员工编号" align="center" prop="staff" />
         <el-table-column label="员工姓名" align="center" prop="staffName" />
         <el-table-column label="是否双向评估" align="center" prop="isTwoEvaluation">
@@ -92,6 +96,14 @@ export default {
       page: '',
       //详情id
       rowId: '',
+      //
+      options: [{
+        label: '是',
+        value: true
+      }, {
+        label: '否',
+        value: false
+      }],
     };
   },
   created() {

+ 20 - 2
src/views/business/ehr/pm/stagecontrol/pmList.vue

@@ -61,11 +61,17 @@
                   icon="el-icon-edit-outline"
                   >驳回到填写</el-dropdown-item
                 >
-                <el-dropdown-item
+                <!-- <el-dropdown-item
                   v-if="scope.row.status == '5'"
                   command="toSelfEstimate"
                   icon="el-icon-location-outline"
                   >驳回到自评</el-dropdown-item
+                > -->
+                <el-dropdown-item
+                  v-if="scope.row.status == '5'"
+                  command="toSuperiorEstimate"
+                  icon="el-icon-location-outline"
+                  >驳回到上级评分</el-dropdown-item
                 >
               </el-dropdown-menu>
           </el-dropdown>
@@ -94,7 +100,7 @@
 </template>
 
 <script>
-import { listPerformance,delPerformance,getPerformance,editStage} from "@/api/business/ehr/pm/performance";
+import { listPerformance,delPerformance,editStage,turnDownSuperiorEstimate} from "@/api/business/ehr/pm/performance";
 import { stageCount} from "@/api/business/ehr/pm/stage";
 import CreatePmDialog from './btnCreatePm.vue'
 export default {
@@ -184,6 +190,9 @@ export default {
         case "toSelfEstimate":
           this.toSelfEstimate(row);
           break;
+        case "toSuperiorEstimate":
+          this.toSuperiorEstimate(row);
+          break;
         default:
           break;
       }
@@ -212,6 +221,15 @@ export default {
         this.$modal.msgSuccess("调整成功");
       }).catch(() => {});
     },
+    //驳回到上级评分
+    toSuperiorEstimate(data){
+      this.$modal.confirm('确定要将' + data.staffName + '【' + data.staff + '】的绩效调整为上级评分状态吗?').then(function() {
+        return turnDownSuperiorEstimate(data);
+      }).then(() => {
+        this.getList();
+        this.$modal.msgSuccess("调整成功");
+      }).catch(() => {});
+    },
     //导出全部
     btnExportAll(){
       this.download('/ehr/pm/performance/export', {pageNum: 1,pageSize: 9999999,sourceId:this.queryParams.sourceId}, `performance_${new Date().getTime()}.xlsx`)

+ 4 - 22
src/views/business/spd/bo/basic/details.vue

@@ -84,9 +84,12 @@
       <el-descriptions-item :label="winningStateTitle + '日期'">
         {{new Date(form.basic.winningStateDate).Format("yyyy-MM-dd")}}
       </el-descriptions-item>
-      <el-descriptions-item :label="winningStateTitle + '金额'">
+      <el-descriptions-item :label="winningStateTitle + '金额'" v-if="form.basic.winningState != '1'">
         {{ form.basic.winningStateMoney }}
       </el-descriptions-item>
+      <el-descriptions-item :label="winningStateTitle + '操作人'">
+        {{ form.basic.winningStateOperatorName }}
+      </el-descriptions-item>
     </el-descriptions>
     <!-- 主多页签 -->
     <el-tabs v-model="masterTabs" @tab-click="tabsSwitch">
@@ -125,12 +128,6 @@
       <dev style="width: 50px; height: 40px; font-size: 18px">其它信息</dev>
     </el-divider>
     <el-descriptions :column="4">
-      <el-descriptions-item label="销售组织">
-        {{ form.basic.marketingOrganizingName }}
-      </el-descriptions-item>
-      <el-descriptions-item label="销售区域">
-        {{ form.basic.marketingAreaName }}
-      </el-descriptions-item>
       <el-descriptions-item label="部门">
         {{ form.basic.deptName }}
       </el-descriptions-item>
@@ -148,11 +145,6 @@
     <el-dialog :title="winningStateTitle" :visible.sync="winningStateOpen" width="500px" append-to-body>
       <el-form ref="wsform" :model="winningStateData" :rules="winningStateDataRules" label-width="140px">
         <!-- 赢单 -->
-        <el-form-item label="赢单日期" prop="winningStateDate" v-if="this.winningStateData.winningState == '3'">
-          <el-date-picker clearable v-model="winningStateData.winningStateDate" type="date" value-format="yyyy-MM-dd"
-            placeholder="请选择赢单日期" style="width:220px">
-          </el-date-picker>
-        </el-form-item>
         <el-form-item label="赢单金额(万元)" prop="winningStateMoney" v-if="this.winningStateData.winningState == '3'">
           <el-input type="number" v-model="winningStateData.winningStateMoney" style="width:220px" placeholder="赢单金额" />
         </el-form-item>
@@ -166,11 +158,6 @@
           <el-input v-model="winningStateData.winningStateRemark" style="width:220px" placeholder="请输入赢单备注" />
         </el-form-item>
         <!-- 丢单 -->
-        <el-form-item label="丢单日期" prop="winningStateDate" v-if="this.winningStateData.winningState == '2'">
-          <el-date-picker clearable v-model="winningStateData.winningStateDate" type="date" value-format="yyyy-MM-dd"
-            placeholder="丢单日期" style="width:220px">
-          </el-date-picker>
-        </el-form-item>
         <el-form-item label="丢单金额(万元)" prop="winningStateMoney" v-if="this.winningStateData.winningState == '2'">
           <el-input type="number" v-model="winningStateData.winningStateMoney" style="width:220px" placeholder="丢单金额" />
         </el-form-item>
@@ -269,9 +256,6 @@ export default {
         winningStateCause: [
           { required: true, message: "原因不能为空", trigger: "blur" }
         ],
-        winningStateDate: [
-          { required: true, message: "日期不能为空", trigger: "blur" }
-        ],
         winningStateMoney: [
           { required: true, message: "金额不能为空", trigger: "blur" }
         ],
@@ -387,7 +371,6 @@ export default {
       this.winningStateTitle = title;
       this.winningStateData.winningState = winningState;
       this.winningStateData.boId = this.form.basic.id;
-      this.winningStateData.winningStateDate = new Date();
     },
     resetWinningStateData() {
       this.winningStateData = {
@@ -395,7 +378,6 @@ export default {
         winningState: null,
         winningStateCause: null,
         winningStateRemark: null,
-        winningStateDate: null,
         winningStateMoney: null,
       }
     },