王宇昕 5 éve
szülő
commit
a600b95ca7

+ 16 - 2
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-basis/_opera/evaluate.vue

@@ -217,7 +217,7 @@
       // this.getDictOptions();
 
       this.IsFinal   = this.$route.query.IsFinal;
-      
+
       if(this.IsFinal==undefined || this.IsFinal == "") this.IsFinal = 0;
 
       if(this.serviceId != 'add' && this.serviceId>0) {
@@ -327,7 +327,13 @@
             this.evaluation_list = this.evaluation_list.concat(this.$refs.evaluation_listType_one.entityListData.entityList)
           }
           // 获取第一列评价格式
-          // var fractionBoolean_1 = this.$refs.evaluation_list_one.fractionBoolean
+          var list = this.evaluation_list
+          for(var i = 0; i < list.length ; i++){
+            if(Number(list[i].Score) > Number(list[i].NormalScore)){
+              this.$message.error('业绩评价填写的分数不能大于标准分值');
+              return
+            }
+          }
           this.$refs.evaluation_list_one.$refs.formEvaluation.validate((valid) => {
             if (valid) {
               if(this.formData.Id == 0||this.formData.Id == undefined||this.formData.Id == null){
@@ -341,6 +347,14 @@
           })
         }else{//专业处室评价
           this.evaluation_list = this.$refs.evaluation_list_two.entityListData.entityList
+          var list = this.evaluation_list
+          for(var i = 0; i < list.length ; i++){
+            console.log(Number(list[i].Score) ,Number(list[i].NormalScore))
+            if(Number(list[i].Score) > Number(list[i].NormalScore)){
+              this.$message.error('业绩评价填写的分数不能大于标准分值');
+              return
+            }
+          }
           if(this.contractData.ContractClass=='02'){
             this.evaluation_list = this.evaluation_list.concat(this.$refs.evaluation_listType_two.entityListData.entityList)
           }

+ 8 - 7
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-basis/_opera/evaluationlist.vue

@@ -168,17 +168,16 @@
     data() {
       var validatePass = (rule, value, callback) => {
         var num = Number(value)
-        console.log(99999,num,num == '',num > Number(this.branchNum))
         if (num == ''&&num != 0) {
           this.fractionBoolean = false
           callback(new Error('请输入分值'));
           return
         }
-        if (num > Number(this.branchNum)) {
-          this.fractionBoolean = false
-          callback(new Error('不能大于规定的分值'));
-          return
-        }
+        // if (num > Number(this.branchNum)) {
+        //   this.fractionBoolean = false
+        //   callback(new Error('不能大于规定的分值'));
+        //   return
+        // }
         if ( num < 0) {
           this.fractionBoolean = false
           callback(new Error('不能为负数'));
@@ -267,7 +266,7 @@
         var data = {
           Category:1,
         }
-        this.standardNum = 0,
+        this.standardNum = 0
         api.evaluationItemsOnelist(data,this.ContractClass,this.$axios).then(res => {
           console.log('上级节点内容',res)
           var data = res.data.items
@@ -300,6 +299,7 @@
           Category:this.category,
           Type:1,
         }
+        this.standardNum = 0
         api.contractEvaluationTree(data,this.$axios).then(res => {
           console.log('编辑后的内容',res)
           var data = res.data.items
@@ -308,6 +308,7 @@
             data[index].typeStatus = index
             data[index].Score = data[index].Score==undefined||data[index].Score==''?'0':data[index].Score
             list.push(data[index])
+            this.standardNum = this.standardNum + parseInt(data[index].NormalScore)
             if(data[index].Son!=null&&data[index].Son!=undefined){
               for(var k = 0 ; k < data[index].Son.length ; k++){
                 data[index].Son[k].typeStatus = index

+ 2 - 1
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-basis/index.vue

@@ -35,7 +35,7 @@
         </el-form>
       </div>
       <el-table size="mini" stripe id="rebateSetTable" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby">
-        <el-table-column label="操作" min-width="160" align="center" fixed>
+        <el-table-column label="操作" min-width="210" align="center" fixed>
           <template slot-scope="scope">
             <el-button v-if="editeBoolean" type="text" title="编辑" size="small" icon="el-icon-edit" @click="onNavigateEvaluate(scope.row)">编辑</el-button>
             <el-button  type="text" title="编辑" size="small" icon="el-icon-edit" @click="onNavigateEvaluate(scope.row)">查看</el-button>
@@ -52,6 +52,7 @@
               </div>
               <el-button slot="reference" v-if="deleteBoolean" type="text" style="margin-left:3px" icon="el-icon-delete" size="small" >删除</el-button>
             </el-popover>
+            
           </template>
         </el-table-column>
 

+ 47 - 38
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-goods/_opera/evaluate.vue

@@ -40,61 +40,56 @@
                 <el-button type="primary" size="mini" @click="saveEntity">保存</el-button>
               </span> -->
             </div>
-            <el-form label-width="160px" ref="EntityForm" :model="evaluateData" :rules="rules">
+            <el-form label-width="110px" ref="EntityForm" :model="formData">
               <el-row>
                 <el-col :span="8">
                   <el-form-item label="供应商名称">
-                    <el-input disabled="disabled" v-model="evaluateData.SupplierName"  style="width: 100%"></el-input>
+                    <el-select ref="SupplierSelect" v-model="contractData.SupplierName" :disabled="true" placeholder="请选择" style="width: 100%" ></el-select>
                   </el-form-item>
                 </el-col>
-            
+
                 <el-col :span="8">
-                  <el-form-item label="评价得分" prop="SumScore">
-                    <el-input-number :disabled="!auditBtnBoolean" v-model="evaluateData.SumScore" ::max="100" :min="0" placeholder="请输入"  style="width: 100%" />
-                  </el-form-item>
-                </el-col>
-            
-                <el-col :span="8" >
-                  <el-form-item label="产品质量(30分)" prop="SumScore1">
-                    <el-input-number :disabled="!auditBtnBoolean" v-model="evaluateData.SumScore1" :max="10" :min="0" placeholder="请输入"  style="width: 100%" />
-                  </el-form-item>
-                </el-col>
-            
-                <el-col :span="8" >
-                  <el-form-item label="合同履行(20分)" prop="SumScore2">
-                    <el-input-number :disabled="!auditBtnBoolean" v-model="evaluateData.SumScore2" :max="20" :min="0" placeholder="请输入"  style="width: 100%" />
+                  <el-form-item label="供应项目名称">
+                    <el-input :disabled="disabled" v-model="contractData.ProjectName" placeholder="请输入"  style="width: 100%"></el-input>
                   </el-form-item>
                 </el-col>
-            
-                <el-col :span="8" >
-                  <el-form-item label="售后服务(15分)" prop="SumScore3">
-                    <el-input-number :disabled="!auditBtnBoolean" v-model="evaluateData.SumScore3" :max="20" :min="0" placeholder="请输入"  style="width: 100%" />
+
+                <el-col :span="8">
+                  <el-form-item label="工程地点" >
+                    <el-input :disabled="disabled" v-model="contractData.ProjectPlace" placeholder="请输入"  style="width: 100%"></el-input>
                   </el-form-item>
                 </el-col>
-            
-                <el-col :span="8" >
-                  <el-form-item label="诚信经营(15分)" prop="SumScore4">
-                    <el-input-number :disabled="!auditBtnBoolean" v-model="evaluateData.SumScore4" :max="5" :min="0" placeholder="请输入"  style="width: 100%" />
+
+                <el-col :span="8">
+                  <el-form-item label="合同编号">
+                    <el-input :disabled="disabled" v-model="contractData.ContractNo" placeholder="请输入"  style="width: 100%"></el-input>
                   </el-form-item>
                 </el-col>
-            
-                <el-col :span="8" >
-                  <el-form-item label="协同响应(20分)" prop="SumScore5">
-                    <el-input-number :disabled="!auditBtnBoolean" v-model="evaluateData.SumScore5" :max="10" :min="0" placeholder="请输入"  style="width: 100%" />
+
+                <el-col :span="8">
+                  <el-form-item label="项目负责人" >
+                    <el-input :disabled="disabled" v-model="contractData.ProjectOwner" placeholder="请输入"  style="width: 100%"></el-input>
                   </el-form-item>
                 </el-col>
-                <el-col :span="8" >
-                  <el-form-item label="评价结果" prop="Conclusion">
-                    <el-select :disabled="!auditBtnBoolean" v-model="evaluateData.Conclusion" placeholder="请选择" style="width: 100%">
-                      <el-option :key="1" label="优秀" :value="1"></el-option>
-                      <el-option :key="2" label="合格" :value="2"></el-option>
-                      <el-option :key="3" label="不合格" :value="3"></el-option>
+
+                <el-col :span="8">
+                  <el-form-item  label="项目类别">
+                    <el-select :disabled="disabled" v-model="contractData.ProjectType" placeholder="请选择" style="width: 100%">
+                      <el-option key="1" label="咨询" value="1"></el-option>
+                      <el-option key="2" label="勘探" value="2"></el-option>
+                      <el-option key="3" label="设计" value="3"></el-option>
+                      <el-option key="4" label="施工" value="4"></el-option>
                     </el-select>
                   </el-form-item>
                 </el-col>
-                <el-col :span="24">
-                  <el-form-item label="备注">
-                    <el-input type="textarea" :disabled="!auditBtnBoolean" v-model="evaluateData.Note" placeholder="请输入"  style="width: 100%"></el-input>
+
+                <el-col :span="8">
+                  <el-form-item  label="是否分包">
+                    <!-- SubPackage -->
+                    <el-select :disabled="disabled" placeholder="请选择" v-model="contractData.SubPackage" style="width: 100%">
+                      <el-option :key="1" label="是" :value="1"></el-option>
+                      <el-option :key="2" label="否" :value="2"></el-option>
+                    </el-select>
                   </el-form-item>
                 </el-col>
               </el-row>
@@ -333,6 +328,13 @@
           }
           // 获取第一列评价格式
           // var fractionBoolean_1 = this.$refs.evaluation_list_one.fractionBoolean
+          var list = this.evaluation_list
+          for(var i = 0; i < list.length ; i++){
+            if(Number(list[i].Score) > Number(list[i].NormalScore)){
+              this.$message.error('业绩评价填写的分数不能大于标准分值');
+              return
+            }
+          }
           this.$refs.evaluation_list_one.$refs.formEvaluation.validate((valid) => {
             if (valid) {
               if(this.formData.Id == 0||this.formData.Id == undefined||this.formData.Id == null){
@@ -346,6 +348,13 @@
           })
         }else{//专业处室评价
           this.evaluation_list = this.$refs.evaluation_list_two.entityListData.entityList
+          var list = this.evaluation_list
+          for(var i = 0; i < list.length ; i++){
+            if(Number(list[i].Score) > Number(list[i].NormalScore)){
+              this.$message.error('业绩评价填写的分数不能大于标准分值');
+              return
+            }
+          }
           if(this.contractData.ContractClass=='02'){
             this.evaluation_list = this.evaluation_list.concat(this.$refs.evaluation_listType_two.entityListData.entityList)
           }

+ 8 - 7
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-goods/_opera/evaluationlist.vue

@@ -168,17 +168,16 @@
     data() {
       var validatePass = (rule, value, callback) => {
         var num = Number(value)
-        console.log(99999,num,num == '',num > Number(this.branchNum))
         if (num == ''&&num != 0) {
           this.fractionBoolean = false
           callback(new Error('请输入分值'));
           return
         }
-        if (num > Number(this.branchNum)) {
-          this.fractionBoolean = false
-          callback(new Error('不能大于规定的分值'));
-          return
-        }
+        // if (num > Number(this.branchNum)) {
+        //   this.fractionBoolean = false
+        //   callback(new Error('不能大于规定的分值'));
+        //   return
+        // }
         if ( num < 0) {
           this.fractionBoolean = false
           callback(new Error('不能为负数'));
@@ -267,7 +266,7 @@
         var data = {
           Category:1,
         }
-        this.standardNum = 0,
+        this.standardNum = 0
         api.evaluationItemsOnelist(data,this.ContractClass,this.$axios).then(res => {
           console.log('上级节点内容',res)
           var data = res.data.items
@@ -300,6 +299,7 @@
           Category:this.category,
           Type:1,
         }
+        this.standardNum = 0
         api.contractEvaluationTree(data,this.$axios).then(res => {
           console.log('编辑后的内容',res)
           var data = res.data.items
@@ -308,6 +308,7 @@
             data[index].typeStatus = index
             data[index].Score = data[index].Score==undefined||data[index].Score==''?'0':data[index].Score
             list.push(data[index])
+            this.standardNum = this.standardNum + parseInt(data[index].NormalScore)
             if(data[index].Son!=null&&data[index].Son!=undefined){
               for(var k = 0 ; k < data[index].Son.length ; k++){
                 data[index].Son[k].typeStatus = index

+ 4 - 4
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-goods/index.vue

@@ -35,10 +35,10 @@
         </el-form>
       </div>
       <el-table size="mini" stripe id="rebateSetTable" :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby">
-        <el-table-column label="操作" min-width="160" align="center" fixed>
+        <el-table-column label="操作" min-width="210" align="center" fixed>
           <template slot-scope="scope">
             <el-button type="text" v-if="editeBoolean" title="编辑" size="small" icon="el-icon-edit" @click="onNavigateEvaluate(scope.row)">编辑</el-button>
-            <el-button  type="text" title="编辑" size="small" icon="el-icon-edit" @click="onNavigateEvaluate(scope.row)">查看</el-button>
+            <el-button  type="text"  size="small" icon="el-icon-edit" @click="onNavigateEvaluate(scope.row)">查看</el-button>
 
             <el-popover placement="top" title="提示" :ref="'popover-' + `${scope.$index}`">
               <el-alert
@@ -413,13 +413,13 @@
       //状态判断
       statusFun(){
         var data = {
-          percode:'oil_contract.Review.Delete',
+          percode:'oil_contract.Review.Edit',
         }
         permissionApi.permissionIsauth(data, this.$axios).then(res => {
           console.log('权限',res.data)
           if(res.data.code==0){
             if(res.data.message=='有权限'){
-              this.deleteBoolean = true
+              this.editeBoolean = true
             }
           }
         }).catch(err => {

+ 15 - 1
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-service/_opera/evaluate.vue

@@ -217,7 +217,7 @@
       // this.getDictOptions();
 
       this.IsFinal   = this.$route.query.IsFinal;
-      
+
       if(this.IsFinal==undefined || this.IsFinal == "") this.IsFinal = 0;
 
       if(this.serviceId != 'add' && this.serviceId>0) {
@@ -328,6 +328,13 @@
           }
           // 获取第一列评价格式
           // var fractionBoolean_1 = this.$refs.evaluation_list_one.fractionBoolean
+          var list = this.evaluation_list
+          for(var i = 0; i < list.length ; i++){
+            if(Number(list[i].Score) > Number(list[i].NormalScore)){
+              this.$message.error('业绩评价填写的分数不能大于标准分值');
+              return
+            }
+          }
           this.$refs.evaluation_list_one.$refs.formEvaluation.validate((valid) => {
             if (valid) {
               if(this.formData.Id == 0||this.formData.Id == undefined||this.formData.Id == null){
@@ -341,6 +348,13 @@
           })
         }else{//专业处室评价
           this.evaluation_list = this.$refs.evaluation_list_two.entityListData.entityList
+          var list = this.evaluation_list
+          for(var i = 0; i < list.length ; i++){
+            if(Number(list[i].Score) > Number(list[i].NormalScore)){
+              this.$message.error('业绩评价填写的分数不能大于标准分值');
+              return
+            }
+          }
           if(this.contractData.ContractClass=='02'){
             this.evaluation_list = this.evaluation_list.concat(this.$refs.evaluation_listType_two.entityListData.entityList)
           }

+ 8 - 7
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-service/_opera/evaluationlist.vue

@@ -168,17 +168,16 @@
     data() {
       var validatePass = (rule, value, callback) => {
         var num = Number(value)
-        console.log(99999,num,num == '',num > Number(this.branchNum))
         if (num == ''&&num != 0) {
           this.fractionBoolean = false
           callback(new Error('请输入分值'));
           return
         }
-        if (num > Number(this.branchNum)) {
-          this.fractionBoolean = false
-          callback(new Error('不能大于规定的分值'));
-          return
-        }
+        // if (num > Number(this.branchNum)) {
+        //   this.fractionBoolean = false
+        //   callback(new Error('不能大于规定的分值'));
+        //   return
+        // }
         if ( num < 0) {
           this.fractionBoolean = false
           callback(new Error('不能为负数'));
@@ -267,7 +266,7 @@
         var data = {
           Category:1,
         }
-        this.standardNum = 0,
+        this.standardNum = 0
         api.evaluationItemsOnelist(data,this.ContractClass,this.$axios).then(res => {
           console.log('上级节点内容',res)
           var data = res.data.items
@@ -300,6 +299,7 @@
           Category:this.category,
           Type:1,
         }
+        this.standardNum = 0
         api.contractEvaluationTree(data,this.$axios).then(res => {
           console.log('编辑后的内容',res)
           var data = res.data.items
@@ -308,6 +308,7 @@
             data[index].typeStatus = index
             data[index].Score = data[index].Score==undefined||data[index].Score==''?'0':data[index].Score
             list.push(data[index])
+            this.standardNum = this.standardNum + parseInt(data[index].NormalScore)
             if(data[index].Son!=null&&data[index].Son!=undefined){
               for(var k = 0 ; k < data[index].Son.length ; k++){
                 data[index].Son[k].typeStatus = index

+ 4 - 3
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-service/index.vue

@@ -35,7 +35,7 @@
         </el-form>
       </div>
       <el-table size="mini" id="rebateSetTable" stripe :data="entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby">
-        <el-table-column label="操作" min-width="160" align="center" fixed>
+        <el-table-column label="操作" min-width="210" align="center" fixed>
           <template slot-scope="scope">
             <el-button v-if="editeBoolean" type="text" title="编辑" size="small" icon="el-icon-edit" @click="onNavigateEvaluate(scope.row)">编辑</el-button>
             <el-button  type="text" title="编辑" size="small" icon="el-icon-edit" @click="onNavigateEvaluate(scope.row)">查看</el-button>
@@ -407,6 +407,7 @@
       //查询列表
       this.initDatas();
       //this.getDictOptions()
+      this.statusFun()
     },
     methods: {
       //状态判断
@@ -424,7 +425,7 @@
         }).catch(err => {
           console.error(err)
         })
-      
+
         var data = {
           percode:'oil_contract.Review.Edit',
         }
@@ -438,7 +439,7 @@
         }).catch(err => {
           console.error(err)
         })
-      
+
       },
       //跳转评价
       onNavigateEvaluate(item){