Kaynağa Gözat

合同优化

baichengfei 5 yıl önce
ebeveyn
işleme
3d174f4f65

+ 151 - 147
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-basis/_opera/baselist.vue

@@ -1,6 +1,7 @@
 <template>
   <div>
-    <el-table highlight-current-row :data="entityListData.entityList" border height="calc(100vh - 243px)" style="width: 100%">
+    <el-table highlight-current-row :data="entityListData.entityList" border height="calc(100vh - 243px)"
+              style="width: 100%">
       <el-table-column
         property="SequenceNo"
         label="序号"
@@ -20,8 +21,12 @@
         align="center"
         width="100">
         <template slot-scope="scope">
-          <el-button size="mini" :disabled="!disabledForm" type="success" v-if="Number(scope.row.Value)>0" @click="entityListData.entityList[scope.$index].Value=0">是</el-button>
-          <el-button size="mini" :disabled="!disabledForm" type="danger" v-else @click="entityListData.entityList[scope.$index].Value=1">否</el-button>
+          <el-button size="mini" :disabled="!disabledForm" type="success" v-if="Number(scope.row.Value)>0"
+                     @click="entityListData.entityList[scope.$index].Value=0">是
+          </el-button>
+          <el-button size="mini" :disabled="!disabledForm" type="danger" v-else
+                     @click="entityListData.entityList[scope.$index].Value=1">否
+          </el-button>
         </template>
       </el-table-column>
     </el-table>
@@ -31,125 +36,126 @@
   </div>
 </template>
 <script>
-  import { mapGetters } from 'vuex';
-  // import api from '@/api/oilcontract/contractEvaluationItems';
-  import api from '@/api/oilcontract/contract'
-
-  export default {
-    computed: {
-      ...mapGetters({
-        authUser: 'authUser'
-      })
+import {mapGetters} from 'vuex';
+// import api from '@/api/oilcontract/contractEvaluationItems';
+import api from '@/api/oilcontract/contract'
+
+export default {
+  computed: {
+    ...mapGetters({
+      authUser: 'authUser'
+    })
+  },
+  name: 'oilcontractevaluationitems',
+  props: {
+    // 评价id
+    evaluateId: {
+      type: null,
+      default: '',
     },
-    name: 'oilcontractevaluationitems',
-    props: {
-      // 评价id
-      evaluateId: {
-        type: null,
-        default:'',
-      },
-      // 类型 0 二级部门创建 1 专业处创建
-      category: {
-        type: null,
-        default:'',
-      },
-      //项目类型
-      ContractClass: {
-        type: null,
-        default:'',
-      },
-      //是否禁用
-      disabledForm: {
-        type: null,
-        default:false,
-      },
-
+    // 类型 0 二级部门创建 1 专业处创建
+    category: {
+      type: null,
+      default: '',
     },
-    data() {
-      return {
-        dialogVisible: false,
-        //列表数据
-        entityListData:{
-          entityList: [],
-        },
-        //分页参数
-        size: 10,
-        currentPage: 1,
-        currentItemCount: 0,
-        //列表排序
-        Column: {
-          Order: '',
-          Prop: ''
-        },
-        //查询时间new Date(new Date().getTime() - 30 * 24 * 60 * 60 * 1000), new Date()
-        CreateOn: [],
-        //查询项
-        searchFormReset: {},
-
-      }
+    //项目类型
+    ContractClass: {
+      type: null,
+      default: '',
+    },
+    //是否禁用
+    disabledForm: {
+      type: null,
+      default: false,
     },
-    created() {
-      //查询条件初始值备份
-      Object.assign(this.searchFormReset, this.searchForm);
-      //查询列表
-      //this.initDatas();
-      //this.getDictOptions()
 
-        // 判断是编辑状态还是新增状态
-        if(this.evaluateId==0){
-          this.initDatas();
-        }else{
-          this.editDatas();
-        }
+  },
+  data() {
+    return {
+      dialogVisible: false,
+      //列表数据
+      entityListData: {
+        entityList: [],
+      },
+      //分页参数
+      size: 10,
+      currentPage: 1,
+      currentItemCount: 0,
+      //列表排序
+      Column: {
+        Order: '',
+        Prop: ''
+      },
+      //查询时间new Date(new Date().getTime() - 30 * 24 * 60 * 60 * 1000), new Date()
+      CreateOn: [],
+      //查询项
+      searchFormReset: {},
 
+    }
+  },
+  created() {
+    //查询条件初始值备份
+    Object.assign(this.searchFormReset, this.searchForm);
+    //查询列表
+    //this.initDatas();
+    //this.getDictOptions()
+
+    // 判断是编辑状态还是新增状态
+    if (this.evaluateId == 0) {
+      this.initDatas();
+    } else {
+      this.editDatas();
+    }
 
-    },
-    methods: {
-      initDatas() {
-        var data = {
-          Category:2,
-        }
-        api.evaluationItemsOnelist(data,this.ContractClass,this.$axios).then(res => {
-          console.log('上级节点内容',res)
-          var data = res.data.items
-          var list = []
-          for(var index = 0 ; index < data.length ; index++){
-            data[index].typeStatus = index
-            data[index].Value = 1
-            data[index].Score = '0'
-            // this.$set(data[index],'NormalScore','0')
-            list.push(data[index])
 
-            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
-                data[index].Son[k].Value = 1
-                data[index].Son[k].Score = '0'
-                // data[index].Son[k].NormalScore = '0'
-                list.push(data[index].Son[k])
-              }
+  },
+  methods: {
+    initDatas() {
+      var data = {
+        Category: 2,
+      }
+      api.evaluationItemsOnelist(data, this.ContractClass, this.$axios).then(res => {
+        console.log('上级节点内容', res)
+        var data = res.data.items
+        var list = []
+        for (var index = 0; index < data.length; index++) {
+          data[index].typeStatus = index
+          data[index].Value = 1
+          data[index].Score = '0'
+          // this.$set(data[index],'NormalScore','0')
+          list.push(data[index])
+
+          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
+              data[index].Son[k].Value = 1
+              data[index].Son[k].Score = '0'
+              // data[index].Son[k].NormalScore = '0'
+              list.push(data[index].Son[k])
             }
           }
-          this.entityListData.entityList = list
-          console.log('处理完的数据',list)
-        }).catch(err => {
-          console.error(err)
-        })
-
-      },
-      //初始数据
-      editDatas() {
-        var data = {
-          ContentReviewId:this.evaluateId,
-          Category:this.category,
-          Type:2,
         }
-        api.contractEvaluationTree(data,this.$axios).then(res => {
-          var data = res.data.items
-          var list = []
-          for(var index = 0 ; index < data.length ; index++){
+        this.entityListData.entityList = list
+        console.log('处理完的数据', list)
+      }).catch(err => {
+        console.error(err)
+      })
+
+    },
+    //初始数据
+    editDatas() {
+      var data = {
+        ContentReviewId: this.evaluateId,
+        Category: this.category,
+        Type: 2,
+      }
+      api.contractEvaluationTree(data, this.$axios).then(res => {
+        let data = res.data.items
+        let list = []
+        if (data) {
+          for (let index = 0; index < data.length; index++) {
             data[index].typeStatus = index
-            data[index].Value = data[index].Value==undefined||data[index].Value==''?'0':data[index].Value
+            data[index].Value = data[index].Value === undefined || data[index].Value === '' ? '0' : data[index].Value
             list.push(data[index])
             // if(data[index].Son!=null&&data[index].Son!=undefined){
             //   for(var k = 0 ; k < data[index].Son.length ; k++){
@@ -159,49 +165,47 @@
             //   }
             // }
           }
-          this.entityListData.entityList = list
-          console.log('处理完的数据',list)
-        }).catch(err => {
-          console.error(err)
-        })
-      },
-
-
-
-
-
-      jstimehandle(val) {
-        if (val === '') {
-          return '----'
-        } else if (val === '0001-01-01T08:00:00+08:00') {
-          return '----'
-        } else if (val === '5000-01-01T23:59:59+08:00') {
-          return '永久'
-        } else {
-          val = val.replace('T', ' ')
-          return val.substring(0, 10)
         }
-      },
+        this.entityListData.entityList = list
+        console.log('处理完的数据', list)
+      }).catch(err => {
+        console.error(err)
+      })
+    },
 
-      formatDateTime(date) {
-        var y = date.getFullYear();
-        var m = date.getMonth() + 1;
-        m = m < 10 ? ('0' + m) : m;
-        var d = date.getDate();
-        d = d < 10 ? ('0' + d) : d;
-        var h = date.getHours();
-        var minute = date.getMinutes();
-        minute = minute < 10 ? ('0' + minute) : minute;
-        return y + '-' + m + '-' + d + ' ' + h + ':' + minute;
+
+    jstimehandle(val) {
+      if (val === '') {
+        return '----'
+      } else if (val === '0001-01-01T08:00:00+08:00') {
+        return '----'
+      } else if (val === '5000-01-01T23:59:59+08:00') {
+        return '永久'
+      } else {
+        val = val.replace('T', ' ')
+        return val.substring(0, 10)
       }
+    },
+
+    formatDateTime(date) {
+      var y = date.getFullYear();
+      var m = date.getMonth() + 1;
+      m = m < 10 ? ('0' + m) : m;
+      var d = date.getDate();
+      d = d < 10 ? ('0' + d) : d;
+      var h = date.getHours();
+      var minute = date.getMinutes();
+      minute = minute < 10 ? ('0' + minute) : minute;
+      return y + '-' + m + '-' + d + ' ' + h + ':' + minute;
     }
   }
+}
 
 </script>
 
 <style lang="scss">
-  .el-pagination {
-    margin: 1rem 0 2rem;
-    text-align: right;
-  }
+.el-pagination {
+  margin: 1rem 0 2rem;
+  text-align: right;
+}
 </style>

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

@@ -202,7 +202,6 @@
         auditBtn:false,
         auditBtnBoolean:true,
         auditBtnBooleanZhuan:true,
-        auditstepcode:'',
 
         departmentBoolean:false,
         checkBUtton:false,//提交审核按钮
@@ -503,6 +502,7 @@
           auditstepcode: this.auditstepcode,
           processkey: this.formData.ProcessKey
         }
+        console.log('params', params)
         apiCert.isAccess(params, this.$axios).then(res => {
           this.auditBtn = res.data
           if(this.formData.Status=='4'&&res.data){

+ 376 - 374
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-basis/_opera/evaluationlist.vue

@@ -2,15 +2,16 @@
   <div>
     <el-form ref="formEvaluation" :model="entityListData" label-width="0px" :rules="rules">
 
-      <el-table highlight-current-row :data="entityListData.entityList" border height="calc(100vh - 243px)" style="width: 100%" @sort-change="orderby">
+      <el-table highlight-current-row :data="entityListData.entityList" border height="calc(100vh - 243px)"
+                style="width: 100%" @sort-change="orderby">
         <el-table-column
           property="SequenceNo"
           label="序号"
           header-align="center"
           width="80">
           <template slot-scope="scope">
-            <span v-if="scope.row.LevelCode==1" style="font-weight: bold">{{scope.row.SequenceNo}}</span>
-            <span v-else>{{scope.row.SequenceNo}}</span>
+            <span v-if="scope.row.LevelCode==1" style="font-weight: bold">{{ scope.row.SequenceNo }}</span>
+            <span v-else>{{ scope.row.SequenceNo }}</span>
           </template>
         </el-table-column>
         <el-table-column
@@ -18,8 +19,8 @@
           header-align="center"
           label="评价内容">
           <template slot-scope="scope">
-            <span v-if="scope.row.LevelCode==1" style="font-weight: bold">{{scope.row.Content}}</span>
-            <span v-else>{{scope.row.Content}}</span>
+            <span v-if="scope.row.LevelCode==1" style="font-weight: bold">{{ scope.row.Content }}</span>
+            <span v-else>{{ scope.row.Content }}</span>
           </template>
         </el-table-column>
         <el-table-column
@@ -28,9 +29,9 @@
           header-align="center"
           width="120">
           <template slot-scope="scope">
-            <span v-if="scope.row.LevelCode==1" style="font-weight: bold">{{scope.row.NormalScore}}</span>
+            <span v-if="scope.row.LevelCode==1" style="font-weight: bold">{{ scope.row.NormalScore }}</span>
             <span v-else-if="scope.row.NormalScore==0" style="font-weight: bold"></span>
-            <span v-else>{{scope.row.NormalScore}}</span>
+            <span v-else>{{ scope.row.NormalScore }}</span>
           </template>
         </el-table-column>
         <el-table-column
@@ -39,9 +40,13 @@
           header-align="center"
           width="120">
           <template slot-scope="scope">
-            <el-form-item  style="margin-bottom: 0px;" :prop="'entityList.' + scope.$index + '.Score'" :rules="rules.relation">
-              <span v-if="scope.row.LevelCode==1" style="font-weight: bold">{{scoreFun(scope.row.typeStatus,scope.$index)}}</span>
-              <el-input v-else size="mini" :min="0" :max="scope.row.NormalScore" type="number" placeholder="实得分数" :disabled="!disabledForm" v-model="scope.row.Score" @input="onInputFen(scope.$index,scope.row.NormalScore)"></el-input>
+            <el-form-item style="margin-bottom: 0px;" :prop="'entityList.' + scope.$index + '.Score'"
+                          :rules="rules.relation">
+              <span v-if="scope.row.LevelCode==1"
+                    style="font-weight: bold">{{ scoreFun(scope.row.typeStatus, scope.$index) }}</span>
+              <el-input v-else size="mini" :min="0" :max="scope.row.NormalScore" type="number" placeholder="实得分数"
+                        :disabled="!disabledForm" v-model="scope.row.Score"
+                        @input="onInputFen(scope.$index,scope.row.NormalScore)"></el-input>
             </el-form-item>
           </template>
         </el-table-column>
@@ -52,29 +57,31 @@
           width="120"
           align="center">
           <template slot-scope="scope">
-             <el-popover
-                placement="top-start"
-                title="原因"
-                width="200"
-                trigger="hover"
-                :content="scope.row.Remark==''||scope.row.Remark==null?'空':scope.row.Remark">
-                <el-button slot="reference" v-if="scope.row.LevelCode!=1"  type="primary" icon="el-icon-edit" size="mini" @click="!disabledForm?'':onDialogVisible(scope.row,scope.$index)">编辑</el-button>
-             </el-popover>
+            <el-popover
+              placement="top-start"
+              title="原因"
+              width="200"
+              trigger="hover"
+              :content="scope.row.Remark==''||scope.row.Remark==null?'空':scope.row.Remark">
+              <el-button slot="reference" v-if="scope.row.LevelCode!=1" type="primary" icon="el-icon-edit" size="mini"
+                         @click="!disabledForm?'':onDialogVisible(scope.row,scope.$index)">编辑
+              </el-button>
+            </el-popover>
           </template>
         </el-table-column>
       </el-table>
       <div class="" style="display: flex;align-items: center;justify-content: flex-end;margin: 18px 0;">
-        <div>标准总分:{{standardNum}}分</div>
-        <div style="margin-left: 18px;margin-right: 140px;">实得总分:{{getNumFun()}}分</div>
+        <div>标准总分:{{ standardNum }}分</div>
+        <div style="margin-left: 18px;margin-right: 140px;">实得总分:{{ getNumFun() }}分</div>
       </div>
 
 
     </el-form>
 
-   <!-- <div style="display: flex;justify-content: flex-end; margin: 20px 0;">
-      <el-button type="primary" size="mini"   @click="activeName = '1'">上一步<i class="el-icon-arrow-right el-icon--right"></i></el-button>
-      <el-button type="primary" size="mini"   @click="activeName = '3'">下一步<i class="el-icon-arrow-right el-icon--right"></i></el-button>
-    </div> -->
+    <!-- <div style="display: flex;justify-content: flex-end; margin: 20px 0;">
+       <el-button type="primary" size="mini"   @click="activeName = '1'">上一步<i class="el-icon-arrow-right el-icon--right"></i></el-button>
+       <el-button type="primary" size="mini"   @click="activeName = '3'">下一步<i class="el-icon-arrow-right el-icon--right"></i></el-button>
+     </div> -->
 
     <!-- <el-pagination @size-change="handleSizeChange" @current-change="handleCurrentChange" :current-page="currentPage"
                    :page-sizes="[10, 15, 20, 25]" :page-size="size" layout="total, sizes, prev, pager, next, jumper" :total="currentItemCount">
@@ -84,400 +91,395 @@
       title="不合格原因"
       :visible.sync="dialogBoolean"
       width="60%"
-      >
-      <el-input   type="textarea" placeholder="请输入" v-model="textareaValue" ></el-input>
+    >
+      <el-input type="textarea" placeholder="请输入" v-model="textareaValue"></el-input>
       <span slot="footer" class="dialog-footer">
-        <el-button @click="dialogBoolean = false" size="small" >取 消</el-button>
+        <el-button @click="dialogBoolean = false" size="small">取 消</el-button>
         <el-button type="primary" @click="onTrueDialog" size="small">确 定</el-button>
       </span>
     </el-dialog>
 
 
-
-
-
   </div>
 </template>
 <script>
-  import { mapGetters } from 'vuex';
-  import api from '@/api/oilcontract/contract'
-  // import api from '@/api/oilcontract/contractEvaluationItems';
+import {mapGetters} from 'vuex';
+import api from '@/api/oilcontract/contract'
+// import api from '@/api/oilcontract/contractEvaluationItems';
 
-  export default {
-    computed: {
-      ...mapGetters({
-        authUser: 'authUser'
-      })
+export default {
+  computed: {
+    ...mapGetters({
+      authUser: 'authUser'
+    })
+  },
+  name: 'oilcontractevaluationitems',
+  props: {
+    // 评价id
+    evaluateId: {
+      type: null,
+      default: '',
     },
-    name: 'oilcontractevaluationitems',
-    props: {
-      // 评价id
-      evaluateId: {
-        type: null,
-        default:'',
-      },
-      // 类型 0 二级部门创建 1 专业处创建
-      category: {
-        type: null,
-        default:'',
-      },
-      //项目类型
-      ContractClass: {
-        type: null,
-        default:'',
-      },
-      //是否禁用
-      disabledForm: {
-        type: null,
-        default:false,
-      },
-
+    // 类型 0 二级部门创建 1 专业处创建
+    category: {
+      type: null,
+      default: '',
     },
-    computed:{
-      scoreFun:function(){
-        return function(type,k){
-          var num = 0;
-          var list = this.entityListData.entityList
-          console.log('33333333333333333333333')
-          for(var index = 0 ; index < list.length ; index++){
-            var code = Number(list[index].LevelCode)
-            if(type == list[index].typeStatus&&code==2){
-              num = num + Number(list[index].Score)
-            }
-          }
-          if(this.entityListData.entityList[k].Score != String(num)){
-            // this.getNum = this.getNum + Number(num)
-            this.entityListData.entityList[k].Score = String(num)
+    //项目类型
+    ContractClass: {
+      type: null,
+      default: '',
+    },
+    //是否禁用
+    disabledForm: {
+      type: null,
+      default: false,
+    },
+
+  },
+  computed: {
+    scoreFun: function () {
+      return function (type, k) {
+        var num = 0;
+        var list = this.entityListData.entityList
+        console.log('没得规范', list)
+        for (var index = 0; index < list.length; index++) {
+          var code = Number(list[index].LevelCode)
+          if (type == list[index].typeStatus && code == 2) {
+            num = num + Number(list[index].Score)
           }
-          return num
         }
-      },
-      getNumFun:function(){
-        return function(){
-          var num = 0;
-          var list = this.entityListData.entityList
-          console.log('444444444444444444444444444')
-          for(var index = 0 ; index < list.length ; index++){
-            var code = Number(list[index].LevelCode)
-            if(list[index].LevelCode == 1){
-              num = num + Number(list[index].Score)
-            }
-          }
-          return num
+        if (this.entityListData.entityList[k].Score != String(num)) {
+          // this.getNum = this.getNum + Number(num)
+          this.entityListData.entityList[k].Score = String(num)
         }
+        return num
       }
     },
-    data() {
-      var validatePass = (rule, value, callback) => {
-        var num = Number(value)
-        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 < 0) {
-          this.fractionBoolean = false
-          callback(new Error('不能为负数'));
-          return
+    getNumFun: function () {
+      return function () {
+        var num = 0
+        var list = this.entityListData.entityList
+        console.log('没得2规范', list)
+        for (var index = 0; index < list.length; index++) {
+          // var code = Number(list[index].LevelCode)
+          if (list[index].LevelCode == 1) {
+            num = num + Number(list[index].Score)
+          }
         }
-        this.fractionBoolean = true
-        callback();
-      };
-      return {
-        fractionBoolean:true,
-        dialogVisibleCom: false,
-        loading: false,
-        UnitOrgOptions: [],
-        textareaValue:'',//不合格原因
-        dialogBoolean:false,
-        rules:{
-          relation: [
-            { validator: validatePass, trigger: 'blur' }
-          ],
-        },
-        dialogVisible: false,
-        //列表数据
-        entityListData:{
-          entityList:[],
-        },
-
-        //分页参数
-        size: 10,
-        currentPage: 1,
-        currentItemCount: 0,
-        //列表排序
-        Column: {
-          Order: '',
-          Prop: ''
-        },
-        //查询时间new Date(new Date().getTime() - 30 * 24 * 60 * 60 * 1000), new Date()
-        CreateOn: [],
-        //查询项
-        searchFormReset: {},
-        searchForm: {
-          Id: '',
-          ContractId: '',
-          ParentId: '',
-          SequenceNo: '',
-          Content: '',
-          NormalScore: '',
-          Score: '',
-          LevelCode: '',
-          Remark: '',
-          ModifiedOn: '',
-          ModifiedUserId: '',
-          ModifiedBy: '',
-
-        },
-        auditform: {
-          FirstAuditName: '',
-          SecondAudit: '',
-          ThirdAudit: '',
-          CertId: '',
-          AuditRemark: '',
-          TypeCode: '03'
-        },
-        entityListItemIndex:'',
-        standardNum:0,//标准分数
-        getNum:0,//实得总分
-
+        return num
       }
-    },
-    created() {
-      //数据列表
-      // 判断是编辑状态还是新增状态
-      if(this.evaluateId==0){
-        this.initDatas();
-      }else{
-        this.editDatas();
+    }
+  },
+  data() {
+    var validatePass = (rule, value, callback) => {
+      var num = Number(value)
+      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 < 0) {
+        this.fractionBoolean = false
+        callback(new Error('不能为负数'));
+        return
+      }
+      this.fractionBoolean = true
+      callback();
+    };
+    return {
+      fractionBoolean: true,
+      dialogVisibleCom: false,
+      loading: false,
+      UnitOrgOptions: [],
+      textareaValue: '',//不合格原因
+      dialogBoolean: false,
+      rules: {
+        relation: [
+          {validator: validatePass, trigger: 'blur'}
+        ],
+      },
+      dialogVisible: false,
+      //列表数据
+      entityListData: {
+        entityList: [],
+      },
 
+      //分页参数
+      size: 10,
+      currentPage: 1,
+      currentItemCount: 0,
+      //列表排序
+      Column: {
+        Order: '',
+        Prop: ''
+      },
+      //查询时间new Date(new Date().getTime() - 30 * 24 * 60 * 60 * 1000), new Date()
+      CreateOn: [],
+      //查询项
+      searchFormReset: {},
+      searchForm: {
+        Id: '',
+        ContractId: '',
+        ParentId: '',
+        SequenceNo: '',
+        Content: '',
+        NormalScore: '',
+        Score: '',
+        LevelCode: '',
+        Remark: '',
+        ModifiedOn: '',
+        ModifiedUserId: '',
+        ModifiedBy: '',
+
+      },
+      auditform: {
+        FirstAuditName: '',
+        SecondAudit: '',
+        ThirdAudit: '',
+        CertId: '',
+        AuditRemark: '',
+        TypeCode: '03'
+      },
+      entityListItemIndex: '',
+      standardNum: 0,//标准分数
+      getNum: 0,//实得总分
 
-      //this.getDictOptions()
+    }
+  },
+  created() {
+    // 数据列表
+    // 判断是编辑状态还是新增状态
+    console.log(this.evaluateId, '2323232')
+    if (this.evaluateId == 0) {
+      this.initDatas()
+    } else {
+      this.editDatas()
+    }
+    //this.getDictOptions()
+  },
+  methods: {
+    // 初始数据
+    initDatas() {
+      // 普通的传1,条件评价穿2
+      var data = {
+        Category: 1
+      }
+      this.standardNum = 0
+      api.evaluationItemsOnelist(data, this.ContractClass, this.$axios).then(res => {
+        console.log('上级节点内容', res)
+        let data = res.data.items
+        let list = []
+        console.log('普通的传1,条件评价穿2', data)
+        for (let index = 0; index < data.length; index++) {
+          data[index].typeStatus = index
+          data[index].Score = '0'
+          list.push(data[index])
 
-    },
-    methods: {
-      //初始数据
-      initDatas() {
-        // 普通的传1,条件评价穿2
-        var data = {
-          Category:1,
+          this.standardNum = this.standardNum + parseInt(data[index].NormalScore)
+          if (data[index].Son != null && data[index].Son != undefined) {
+            console.log('普通的传1,条件评价穿2', data[index].Son)
+            for (let k = 0; k < data[index].Son.length; k++) {
+              data[index].Son[k].typeStatus = index
+              data[index].Son[k].Score = data[index].Son[k].NormalScore
+              list.push(data[index].Son[k])
+              // parseInt(data[index].Son[k].NormalScore)
+            }
+          }
         }
-        this.standardNum = 0
-        api.evaluationItemsOnelist(data,this.ContractClass,this.$axios).then(res => {
-          console.log('上级节点内容',res)
-          var data = res.data.items
-          var list = []
-          console.log('5555555555555555555555555')
-          for(var index = 0 ; index < data.length ; index++){
+        this.entityListData.entityList = list
+        console.log('处理完的数据', list)
+      }).catch(err => {
+        console.error(err)
+      })
+    },
+    // 编辑初始数据
+    editDatas() {
+      let data = {
+        ContentReviewId: this.evaluateId,
+        Category: this.category,
+        Type: 1
+      }
+      this.standardNum = 0
+      api.contractEvaluationTree(data, this.$axios).then(res => {
+        console.log('编辑后的内容', this.category, res)
+        let data = res.data.items
+        let list = []
+        if (data) {
+          console.log('evaluation111文件', data)
+          for (let index = 0; index < data.length; index++) {
             data[index].typeStatus = index
-            data[index].Score = '0'
+            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){
-              console.log('6666666666666666666666666666')
-              for(var k = 0 ; k < data[index].Son.length ; k++){
+            console.log('evaluation文件', data[index].Son)
+            if (data[index].Son != null && data[index].Son !== undefined) {
+              for (let k = 0; k < data[index].Son.length; k++) {
                 data[index].Son[k].typeStatus = index
-                data[index].Son[k].Score = data[index].Son[k].NormalScore
+                data[index].Son[k].Score = data[index].Son[k].Score === undefined || data[index].Son[k].Score === '' ? '0' : data[index].Son[k].Score
                 list.push(data[index].Son[k])
-                // parseInt(data[index].Son[k].NormalScore)
               }
             }
           }
           this.entityListData.entityList = list
-          console.log('处理完的数据',list)
-        }).catch(err => {
-          console.error(err)
-        })
-      },
-      //编辑初始数据
-      editDatas() {
-        var data = {
-          ContentReviewId:this.evaluateId,
-          Category:this.category,
-          Type:1,
+          console.log('处理完的数据', list)
         }
-        this.standardNum = 0
-        api.contractEvaluationTree(data,this.$axios).then(res => {
-          console.log('编辑后的内容',this.category,res)
-          var data = res.data.items
-          var list = []
-          if (data) {
-            console.log('77777777777777777777')
-            for(var index = 0 ; index < data.length ; index++){
-              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){
-                console.log('8888888888888888888888888888')
-                for(var k = 0 ; k < data[index].Son.length ; k++){
-                  data[index].Son[k].typeStatus = index
-                  data[index].Son[k].Score = data[index].Son[k].Score==undefined||data[index].Son[k].Score==''?'0':data[index].Son[k].Score
-                  list.push(data[index].Son[k])
-                }
-              }
-            }
-            this.entityListData.entityList = list
-            console.log('处理完的数据',list)
-          }
-        }).catch(err => {
-          console.error(err)
-        })
-      },
-      // 弹窗
-      onDialogVisible(item,index){
-        console.log(item)
-        this.entityListItemIndex = index
-        this.textareaValue = item.Remark
-        this.dialogBoolean = true
-      },
-      //确认编辑内容
-      onTrueDialog(){
-        this.entityListData.entityList[this.entityListItemIndex].Remark = this.textareaValue
-        this.dialogBoolean = false
-      },
-      // 分数校验
-      onInputFen(index,fen){
-        this.branchNum = fen
-        // this.entityListData.entityList[index].Score = fen
-      },
-
-      getDictOptions() {
-        api.getDictList(this.$axios).then(res => {
-          //this.dictOptions.customerList = res.data.items['customerList']
-          //this.dictOptions.projectList = res.data.items['projectList']
+      }).catch(err => {
+        console.error(err)
+      })
+    },
+    // 弹窗
+    onDialogVisible(item, index) {
+      console.log(item)
+      this.entityListItemIndex = index
+      this.textareaValue = item.Remark
+      this.dialogBoolean = true
+    },
+    //确认编辑内容
+    onTrueDialog() {
+      this.entityListData.entityList[this.entityListItemIndex].Remark = this.textareaValue
+      this.dialogBoolean = false
+    },
+    // 分数校验
+    onInputFen(index, fen) {
+      this.branchNum = fen
+      // this.entityListData.entityList[index].Score = fen
+    },
 
-        }).catch(err => {
-          console.error(err)
-        })
-      },
+    getDictOptions() {
+      api.getDictList(this.$axios).then(res => {
+        //this.dictOptions.customerList = res.data.items['customerList']
+        //this.dictOptions.projectList = res.data.items['projectList']
 
-      searchCommand(command) {
-        if (command == 'search') {
-          this.dialogVisible = true
-        } else if (command == 'clear') {
-          this.clearSearch()
-        }
-      },
-      //列表排序功能
-      orderby(column) {
-        if (column.order == 'ascending') {
-          this.Column.Order = 'asc'
-        } else if (column.order == 'descending') {
-          this.Column.Order = 'desc'
-        }
-        this.Column.Prop = column.prop
-        this.initDatas()
-      },
-      clearSearch() {
-        Object.assign(this.searchForm, this.searchFormReset);
-        //this.searchForm = this.searchFormReset;
-        this.CreateOn = ''
-        this.initDatas()
-      },
-      handleSearch() {
-        this.currentPage = 1;
-        this.dialogVisible = false;
-        this.initDatas();
-      },
-      handleCurrentChange(value) {
-        this.currentPage = value
-        this.initDatas()
-      },
-      handleSizeChange(value) {
-        this.size = value
-        this.currentPage = 1
-        this.initDatas()
-      },
-      deleteEntity(row) {
-        row.deleteConfirmFlag = false;
-        api.deleteEntity(row.Id, this.$axios).then(res => {
-          if (res.data.code === 0) {
-            this.initDatas();
-            this.$message({
-              type: 'success',
-              message: res.data.message
-            });
+      }).catch(err => {
+        console.error(err)
+      })
+    },
 
-          } else {
-            this.$message({
-              type: 'warning',
-              message: res.data.message
-            });
-          }
-        }).catch(err => {
-          console.error(err)
-        });
-      },
+    searchCommand(command) {
+      if (command == 'search') {
+        this.dialogVisible = true
+      } else if (command == 'clear') {
+        this.clearSearch()
+      }
+    },
+    //列表排序功能
+    orderby(column) {
+      if (column.order == 'ascending') {
+        this.Column.Order = 'asc'
+      } else if (column.order == 'descending') {
+        this.Column.Order = 'desc'
+      }
+      this.Column.Prop = column.prop
+      this.initDatas()
+    },
+    clearSearch() {
+      Object.assign(this.searchForm, this.searchFormReset);
+      //this.searchForm = this.searchFormReset;
+      this.CreateOn = ''
+      this.initDatas()
+    },
+    handleSearch() {
+      this.currentPage = 1;
+      this.dialogVisible = false;
+      this.initDatas();
+    },
+    handleCurrentChange(value) {
+      this.currentPage = value
+      this.initDatas()
+    },
+    handleSizeChange(value) {
+      this.size = value
+      this.currentPage = 1
+      this.initDatas()
+    },
+    deleteEntity(row) {
+      row.deleteConfirmFlag = false;
+      api.deleteEntity(row.Id, this.$axios).then(res => {
+        if (res.data.code === 0) {
+          this.initDatas();
+          this.$message({
+            type: 'success',
+            message: res.data.message
+          });
 
-      jstimehandle(val) {
-        if (val === '') {
-          return '----'
-        } else if (val === '0001-01-01T08:00:00+08:00') {
-          return '----'
-        } else if (val === '5000-01-01T23:59:59+08:00') {
-          return '永久'
         } else {
-          val = val.replace('T', ' ')
-          return val.substring(0, 10)
+          this.$message({
+            type: 'warning',
+            message: res.data.message
+          });
         }
-      },
+      }).catch(err => {
+        console.error(err)
+      });
+    },
 
-      formatDateTime(date) {
-        var y = date.getFullYear();
-        var m = date.getMonth() + 1;
-        m = m < 10 ? ('0' + m) : m;
-        var d = date.getDate();
-        d = d < 10 ? ('0' + d) : d;
-        var h = date.getHours();
-        var minute = date.getMinutes();
-        minute = minute < 10 ? ('0' + minute) : minute;
-        return y + '-' + m + '-' + d + ' ' + h + ':' + minute;
-      },
-      orgunitChange (val) {
-        let deptid = val
-        let auditstepcode = 'SUB_OFFICE_JF'
-        api.getAuditerByDept(deptid, auditstepcode, this.$axios).then(res => {
-          this.orgauditOptions = res.data.item
-        }).catch(err => {
-          console.error(err)
-        })
-      },
-      getDictOptions () {
-        let params = {
-          status: this.formData.Status,
-          majorAduit: this.formData.ThirdAudit
-        }
-        api.getDictListByStatus(params, this.$axios).then(res => {
-          this.dictData = res.data.items
-          this.organizeOption = res.data.items['Organizes']
-          this.orgtreelist = window.toolfun_gettreejson(res.data.items['ProOrgList'], 'id', 'pId', 'id,name')
-          this.UnitOrgOptions = res.data.items['UnitOrgList']
-          this.UnitOrg = res.data.items['Register'].CheckUnitId
-          this.allorgunitOptions = res.data.items['Allunitorglist']
-          this.orgunitChange(this.UnitOrg)
-          /* this.UnitRelationOptions = res.data.items['UnitRelation']
-          this.getCityList(res.data.items['GaodeMapChinaAreas'])
-          this.CompanyTypeOptions = res.data.items['CompanyType'] */
-        }).catch(err => {
-          console.error(err)
-        })
-      },
-    }
+    jstimehandle(val) {
+      if (val === '') {
+        return '----'
+      } else if (val === '0001-01-01T08:00:00+08:00') {
+        return '----'
+      } else if (val === '5000-01-01T23:59:59+08:00') {
+        return '永久'
+      } else {
+        val = val.replace('T', ' ')
+        return val.substring(0, 10)
+      }
+    },
+
+    formatDateTime(date) {
+      var y = date.getFullYear();
+      var m = date.getMonth() + 1;
+      m = m < 10 ? ('0' + m) : m;
+      var d = date.getDate();
+      d = d < 10 ? ('0' + d) : d;
+      var h = date.getHours();
+      var minute = date.getMinutes();
+      minute = minute < 10 ? ('0' + minute) : minute;
+      return y + '-' + m + '-' + d + ' ' + h + ':' + minute;
+    },
+    orgunitChange(val) {
+      let deptid = val
+      let auditstepcode = 'SUB_OFFICE_JF'
+      api.getAuditerByDept(deptid, auditstepcode, this.$axios).then(res => {
+        this.orgauditOptions = res.data.item
+      }).catch(err => {
+        console.error(err)
+      })
+    },
+    getDictOptions() {
+      let params = {
+        status: this.formData.Status,
+        majorAduit: this.formData.ThirdAudit
+      }
+      api.getDictListByStatus(params, this.$axios).then(res => {
+        this.dictData = res.data.items
+        this.organizeOption = res.data.items['Organizes']
+        this.orgtreelist = window.toolfun_gettreejson(res.data.items['ProOrgList'], 'id', 'pId', 'id,name')
+        this.UnitOrgOptions = res.data.items['UnitOrgList']
+        this.UnitOrg = res.data.items['Register'].CheckUnitId
+        this.allorgunitOptions = res.data.items['Allunitorglist']
+        this.orgunitChange(this.UnitOrg)
+        /* this.UnitRelationOptions = res.data.items['UnitRelation']
+        this.getCityList(res.data.items['GaodeMapChinaAreas'])
+        this.CompanyTypeOptions = res.data.items['CompanyType'] */
+      }).catch(err => {
+        console.error(err)
+      })
+    },
   }
+}
 
 </script>
 
 <style lang="scss">
-  .el-pagination {
-    margin: 1rem 0 2rem;
-    text-align: right;
-  }
+.el-pagination {
+  margin: 1rem 0 2rem;
+  text-align: right;
+}
 </style>

+ 0 - 2
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-import/_opera/evaluationlist.vue

@@ -244,8 +244,6 @@
             }
           }
           this.entityListData.entityList = list
-
-
           console.log('处理完的数据',list)
         }).catch(err => {
           console.error(err)

+ 671 - 609
src/dashoo.cn/frontend_web/src/pages/oilcontract/contract-import/_opera/operation.vue

@@ -1,34 +1,33 @@
-
-
 <template>
   <div>
     <el-breadcrumb class="heading">
       <el-breadcrumb-item :to="{ path: '/' }">平台首页</el-breadcrumb-item>
       <el-breadcrumb-item :to="{ path: '/oilsupplier/oilcontract' }">合同表</el-breadcrumb-item>
-      <el-breadcrumb-item>{{formData.Id==0?'新增':'编辑'}}</el-breadcrumb-item>
+      <el-breadcrumb-item>{{ formData.Id == 0 ? '新增' : '编辑' }}</el-breadcrumb-item>
     </el-breadcrumb>
 
     <el-card class="box-card" style="mini-height: calc(100vh - 113px);">
       <div slot="header">
         <span>
-          <i class="icon icon-table2"></i> {{formData.Id==0?'新增':'编辑'}}
+          <i class="icon icon-table2"></i> {{ formData.Id == 0 ? '新增' : '编辑' }}
         </span>
         <span style="float: right;">
           <!--  v-if="issueVisibleButton" -->
           <el-button type="primary" size="mini" v-if="issueVisibleButton" @click="issueVisible=true">下发</el-button>
           <el-button type="primary" size="mini" v-if="succseButton&&formData.Id!=0" @click="onFinish">完结</el-button>
-          <el-button type="primary" size="mini" v-if="successBoolean"  @click="exportExcel">导出</el-button>
+          <el-button type="primary" size="mini" v-if="successBoolean" @click="exportExcel">导出</el-button>
           <el-button type="primary" size="mini" :loading="addloading" @click="saveEntity">保存</el-button>
           <router-link :to="'/oilcontract/contract-import'">
             <el-button type="primary" size="mini" plain style="margin-left: 8px">返回</el-button>
           </router-link>
         </span>
       </div>
-      <el-form id="rebateSetTable" label-width="110px" ref="EntityForm" :rules="rules" :model="formData" class="fromClass web_fromclass">
+      <el-form id="rebateSetTable" label-width="110px" ref="EntityForm" :rules="rules" :model="formData"
+               class="fromClass web_fromclass">
         <el-row>
           <el-col :span="8">
             <el-form-item label="合同分类" prop="ContractClass">
-              <el-select  v-model="formData.ContractClass" placeholder="请选择" style="width: 100%" @change="onSelectType">
+              <el-select v-model="formData.ContractClass" placeholder="请选择" style="width: 100%" @change="onSelectType">
                 <el-option label="供应商" value="01" key="01"></el-option>
                 <el-option label="承包商" value="02" key="02"></el-option>
                 <el-option label="服务商" value="03" key="03"></el-option>
@@ -37,56 +36,62 @@
           </el-col>
           <el-col :span="8">
             <el-form-item label="企业名称" prop="SupplierId">
-              <el-select :disabled="ContractClassDisabled" filterable ref="SupplierSelect" v-model="formData.SupplierId" placeholder="请选择" style="width: 100%" @change="supplierChangeHandler">
-                <el-option  :label="item.SupplierName" :value="item.Id" v-for="(item,index) of SupplierSelectList" :key="index"></el-option>
+              <el-select :disabled="ContractClassDisabled" filterable ref="SupplierSelect" v-model="formData.SupplierId"
+                         placeholder="请选择" style="width: 100%" @change="supplierChangeHandler">
+                <el-option :label="item.SupplierName" :value="item.Id" v-for="(item,index) of SupplierSelectList"
+                           :key="index"></el-option>
               </el-select>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="项目名称" prop="ProjectName">
-              <el-input v-model="formData.ProjectName" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ProjectName" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
-
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="合同编号" prop="ContractNo">
-              <el-input v-model="formData.ContractNo" placeholder="请输入"   style="width: 100%"></el-input>
+              <el-input v-model="formData.ContractNo" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="工程地点" prop="ProjectPlace">
-              <el-input v-model="formData.ProjectPlace" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ProjectPlace" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="项目负责人" prop="ProjectOwner">
-              <el-input v-model="formData.ProjectOwner" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ProjectOwner" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
-
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="联系人电话" prop="Telephone">
-              <el-input v-model="formData.Telephone" placeholder="请输入"  maxlength="11" style="width: 100%"></el-input>
+              <el-input v-model="formData.Telephone" placeholder="请输入" maxlength="11" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="项目类别" prop="ProjectType">
               <el-select v-model="formData.ProjectType" placeholder="请选择" style="width: 100%">
-                <el-option :label="item.Key" :value="item.Key" v-for="(item,index) of dictionary.ProjectType" :key="index"></el-option>
+                <el-option :label="item.Key" :value="item.Key" v-for="(item,index) of dictionary.ProjectType"
+                           :key="index"></el-option>
               </el-select>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="合同模式" prop="ContractMode">
-              <el-input v-model="formData.ContractMode" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ContractMode" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
-
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="是否分包" prop="SubPackage">
               <el-select placeholder="请选择" v-model="formData.SubPackage" style="width: 100%">
@@ -98,7 +103,7 @@
 
           <el-col :span="8">
             <el-form-item label="合同总金额" prop="Amount">
-              <el-input v-model="formData.Amount" placeholder="请输入"   style="width: 100%">
+              <el-input v-model="formData.Amount" placeholder="请输入" style="width: 100%">
                 <template slot="append">(万元)</template>
               </el-input>
             </el-form-item>
@@ -106,7 +111,7 @@
 
           <el-col :span="8">
             <el-form-item label="合同总工期" prop="ContractPeriod">
-              <el-input v-model="formData.ContractPeriod" placeholder="请输入" @change="dateChange"  style="width: 100%">
+              <el-input v-model="formData.ContractPeriod" placeholder="请输入" @change="dateChange" style="width: 100%">
                 <template slot="append">(天)</template>
               </el-input>
             </el-form-item>
@@ -136,17 +141,19 @@
           <!-- 新加的 -->
           <el-col :span="8">
             <el-form-item label="合同名称" prop="ContractName">
-              <el-input v-model="formData.ContractName" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ContractName" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="合同子类" prop="ContractSonClass">
-              <el-input v-model="formData.ContractSonClass" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ContractSonClass" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="相应小类" prop="SmallClass">
-              <el-input v-model="formData.SmallClass" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.SmallClass" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
@@ -158,28 +165,32 @@
               </el-date-picker>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="相对人" prop="People">
-              <el-input v-model="formData.People" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.People" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="报审序号" prop="Number">
-              <el-input v-model="formData.Number" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.Number" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="选商方式" prop="ChooseWay">
-              <el-input v-model="formData.ChooseWay" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ChooseWay" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="合同标的" prop="ContractMark">
-              <el-input v-model="formData.ContractMark" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ContractMark" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
-            <el-form-item label="币种">
+            <el-form-item label="币种" prop="Currency">
               <el-select v-model="formData.Currency"
                          placeholder="请选择"
                          style="width: 100%;">
@@ -193,12 +204,14 @@
           </el-col>
           <el-col :span="8">
             <el-form-item label="预算金额" prop="BudgetAmount">
-              <el-input v-model="formData.BudgetAmount" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.BudgetAmount" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="履行金额" prop="PerformAmount">
-              <el-input v-model="formData.PerformAmount" placeholder="请输入"   style="width: 100%">
+              <el-input v-model="formData.PerformAmount" placeholder="请输入" style="width: 100%">
                 <template slot="append">(万元)</template>
               </el-input>
             </el-form-item>
@@ -219,6 +232,8 @@
               </el-select>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="是否关联交易" prop="IsDeal">
               <el-select placeholder="请选择" v-model="formData.IsDeal" style="width: 100%">
@@ -229,37 +244,41 @@
           </el-col>
           <el-col :span="8">
             <el-form-item label="资金流向" prop="MoneyFlows">
-              <el-input v-model="formData.MoneyFlows" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.MoneyFlows" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="资金渠道" prop="MoneyChannel">
-              <el-input v-model="formData.MoneyChannel" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.MoneyChannel" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="资金渠道子类" prop="MoneyChannelSon">
-              <el-input v-model="formData.MoneyChannelSon" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.MoneyChannelSon" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="资金渠道小类" prop="MoneyChannelSmall">
-              <el-input v-model="formData.MoneyChannelSmall" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.MoneyChannelSmall" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="签约单位" prop="SingUnit">
-              <el-input v-model="formData.SingUnit" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.SingUnit" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="履行地点" prop="Place">
-              <el-input v-model="formData.Place" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.Place" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="纠纷解决方式" prop="DisputeResolution">
-              <el-input v-model="formData.DisputeResolution" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.DisputeResolution" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
@@ -271,98 +290,105 @@
               </el-date-picker>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
           <el-col :span="8">
             <el-form-item label="用章名称" prop="SealName">
-              <el-input v-model="formData.SealName" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.SealName" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
           <el-col :span="8">
             <el-form-item label="PO编码" prop="PoNumber">
-              <el-input v-model="formData.PoNumber" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.PoNumber" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
 
-
-
-
         </el-row>
         <el-row>
           <el-col :span="8">
             <el-form-item label="建设单位" prop="ConstructionUnit">
-              <el-input v-model="formData.ConstructionUnit" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ConstructionUnit" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="建设负责人">
-              <el-input v-model="formData.ConstructionOwner" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ConstructionOwner" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="手机号" prop="ConstructionTelphone">
-              <el-input  v-model="formData.ConstructionTelphone" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.ConstructionTelphone" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
 
           <el-col :span="8">
             <el-form-item label="施工单位">
-              <el-input v-model="formData.BuildUnit" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.BuildUnit" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="施工负责人">
-              <el-input v-model="formData.BuildOwner" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.BuildOwner" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="手机号" prop="BuildTelphone">
-              <el-input  v-model="formData.BuildTelphone" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.BuildTelphone" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
 
           <el-col :span="8">
             <el-form-item label="监理单位">
-              <el-input v-model="formData.SuperviseUnit" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.SuperviseUnit" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="监理负责人">
-              <el-input v-model="formData.SuperviseOwner" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.SuperviseOwner" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="手机号" prop="SuperviseTelphone">
-              <el-input  v-model="formData.SuperviseTelphone" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.SuperviseTelphone" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
 
           <el-col :span="8">
             <el-form-item label="质量监督单位">
-              <el-input v-model="formData.QualityUnit" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.QualityUnit" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="质量监督负责人">
-              <el-input v-model="formData.QualityOwner" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.QualityOwner" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
 
           <el-col :span="8">
             <el-form-item label="手机号" prop="QualityTelphone">
-              <el-input  v-model="formData.QualityTelphone" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input v-model="formData.QualityTelphone" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
+        </el-row>
+        <el-row>
 
           <el-col :span="24">
             <el-form-item label="备注">
-              <el-input type="textarea" v-model="formData.Remark" placeholder="请输入"  style="width: 100%"></el-input>
+              <el-input type="textarea" v-model="formData.Remark" placeholder="请输入" style="width: 100%"></el-input>
             </el-form-item>
           </el-col>
         </el-row>
@@ -374,19 +400,21 @@
       title="下发工单"
       :visible.sync="issueVisible"
       width="50%">
-        <div style="width: 100%;display: flex;justify-content: center;height: ;">
-          <el-form :inline="true" ref="issueFrom" :model="issueFrom" class="demo-form-inline " :rules="issueRules">
+      <div style="width: 100%;display: flex;justify-content: center;height: ;">
+        <el-form :inline="true" ref="issueFrom" :model="issueFrom" class="demo-form-inline " :rules="issueRules">
 
-            <el-form-item label="选择部门"  prop="region">
-              <!-- @change="orgChange" -->
-              <el-select filterable ref="issueFromSelect" v-model="issueFrom.region" class="select_form" placeholder="请选择下发单位"  style="width: 100%;">
-                <el-option v-for="item in orgOptions" :key="item.Id" :label="item.Fullname" :value="item.Id" style="width: 100%;"></el-option>
-              </el-select>
-            </el-form-item>
-          </el-form>
-        </div>
+          <el-form-item label="选择部门" prop="region">
+            <!-- @change="orgChange" -->
+            <el-select filterable ref="issueFromSelect" v-model="issueFrom.region" class="select_form"
+                       placeholder="请选择下发单位" style="width: 100%;">
+              <el-option v-for="item in orgOptions" :key="item.Id" :label="item.Fullname" :value="item.Id"
+                         style="width: 100%;"></el-option>
+            </el-select>
+          </el-form-item>
+        </el-form>
+      </div>
 
-        <span slot="footer" class="dialog-footer">
+      <span slot="footer" class="dialog-footer">
           <el-button @click="issueVisible = false" size="small">取 消</el-button>
           <el-button type="primary" @click="onIssueFromSubmit" size="small">确 定</el-button>
         </span>
@@ -397,590 +425,624 @@
 </template>
 
 <script>
-  import {
-    mapGetters
-  } from 'vuex'
-  import api from '@/api/oilcontract/contract'
-  import oilsupplierApi from '@/api/oilsupplier/annualaudit'
-
-  import evaluationList from './evaluationlist'
-  import util from '@/utils/util'
-  import apiType from '@/api/oilsupplier/suppliercert'
-  import permissionApi from '@/api/oilcontract/permission';
-  import dataapi from '@/api/oilsupplier/dataentry'
-
-  import FileSaver from 'file-saver'
-  import XLSX from 'xlsx'
-
-  export default {
-    computed: {
-      ...mapGetters({
-        authUser: 'authUser'
-      })
-    },
-    name: 'oilcontractEdit',
-    components: {
-      evaluationList,
-    },
+import {
+  mapGetters
+} from 'vuex'
+import api from '@/api/oilcontract/contract'
+import oilsupplierApi from '@/api/oilsupplier/annualaudit'
 
-    data() {
-      var OpenDateVar = (rule, value, callback) => {
-        if((this.formData.PlanFinishDate!=''&&this.formData.PlanFinishDate!=null)&&(value!=''&&value!=null)){
-          if(this.formData.PlanFinishDate < value){
-            callback(new Error('开工日期不能大于竣工日期'));
-          }else{
-            callback();
-          }
-        }else{
+import evaluationList from './evaluationlist'
+import util from '@/utils/util'
+import apiType from '@/api/oilsupplier/suppliercert'
+import permissionApi from '@/api/oilcontract/permission';
+import dataapi from '@/api/oilsupplier/dataentry'
+
+import FileSaver from 'file-saver'
+import XLSX from 'xlsx'
+
+export default {
+  computed: {
+    ...mapGetters({
+      authUser: 'authUser'
+    })
+  },
+  name: 'oilcontractEdit',
+  components: {
+    evaluationList,
+  },
+
+  data() {
+    var OpenDateVar = (rule, value, callback) => {
+      if ((this.formData.PlanFinishDate != '' && this.formData.PlanFinishDate != null) && (value != '' && value != null)) {
+        if (this.formData.PlanFinishDate < value) {
+          callback(new Error('开工日期不能大于竣工日期'));
+        } else {
           callback();
         }
-      };
-      var PlanFinishDateVar = (rule, value, callback) => {
-        if((this.formData.OpenDate!=''&&this.formData.OpenDate!=null)&&(value!=''&&value!=null)){
-          if(this.formData.OpenDate > value){
-            callback(new Error('竣工日期不能小于开工日期'));
-          }else{
-            callback();
-          }
-        }else{
+      } else {
+        callback();
+      }
+    };
+    var PlanFinishDateVar = (rule, value, callback) => {
+      if ((this.formData.OpenDate != '' && this.formData.OpenDate != null) && (value != '' && value != null)) {
+        if (this.formData.OpenDate > value) {
+          callback(new Error('竣工日期不能小于开工日期'));
+        } else {
           callback();
         }
-      };
-      var ContractPeriod = (rule, value, callback) => {
-        console.log(value)
-          if(value%1 === 0){
-            callback();
-          }else{
-            callback(new Error('不能为小数'));
-          }
-      };
-      return {
-        issueFrom:{
-          region:'',
-        },
-        orgOptions:[],
-        issueVisible:false,//下发弹窗
-        issueRules:{
-          region: [
-              { required: true, message: '请选择审核单位', trigger: 'change' }
-          ],
-        },
-        addloading:false,//添加londing
-        rules:{
-          ContractClass:[
-            { required: true, message: '请选择合同分类', trigger: 'change' },
-          ],
-          SupplierId:[
-            { required: true, message: '请选择企业名称', trigger: 'change' },
-          ],
-          ProjectName:[
-            { required: true, message: '请输入项目名称', trigger: 'blur' },
-          ],
-          ContractNo:[
-            { required: true, message: '请输入合同编号', trigger: 'blur' },
-          ],
-          // ProjectPlace:[
-          //   { required: true, message: '请输入工程地点', trigger: 'blur' },
-          // ],
-          // ProjectOwner:[
-          //   { required: true, message: '请输入项目负责人', trigger: 'blur' },
-          // ],
-          // Telephone:[
-          //   { required: true, message: '请输入联系人电话', trigger: 'blur' },
-          //   { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
-          // ],
-          // ProjectType:[
-          //   { required: true, message: '请选择项目类别', trigger: 'change' },
-          // ],
-          // ContractMode:[
-          //   { required: true, message: '请输入合同模式', trigger: 'blur' },
-          // ],
-          SubPackage:[
-            { required: true, message: '请选择是否分包', trigger: 'change' },
-          ],
-
-          OpenDate: [
-            { required: true, message: '请选择时间', trigger: 'change' },
-            { validator: OpenDateVar, trigger: 'change' }
-          ],
-          PlanFinishDate: [
-            { required: true, message: '请选择时间', trigger: 'change' },
-            { validator: PlanFinishDateVar, trigger: 'change' }
-          ],
-          Amount:[
-            { required: true, message: '请输入', trigger: 'blur' },
-            {pattern: /^\+?((0|([1-9]+\d*))|((0\.\d+)|([1-9]+\d*\.\d+)))$/,  message: '输入格式不正确', trigger: 'blur'},
-          ],
-          ContractPeriod:[
-            {  message: '请输入', trigger: 'blur' },
-            {pattern: /^\+?((0|([1-9]+\d*))|((0\.\d+)|([1-9]+\d*\.\d+)))$/,  message: '输入格式不正确', trigger: 'blur'},
-            { validator: ContractPeriod, trigger: 'blur' }
-          ],
-          ContractSonClass:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          SmallClass:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          SignedDate:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          People:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          Number:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          ChooseWay:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          Currency:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          BudgetAmount:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          PerformAmount:[
-            { required: true, message: '请输入', trigger: 'blur' },
-            {pattern: /^\+?((0|([1-9]+\d*))|((0\.\d+)|([1-9]+\d*\.\d+)))$/,  message: '输入格式不正确', trigger: 'blur'},
-          ],
-          IsInternal:[
-            { required: true, message: '请输入', trigger: 'change' },
-          ],
-          IsForeign:[
-            { required: true, message: '请输入', trigger: 'change' },
-          ],
-          IsDeal:[
-            { required: true, message: '请输入', trigger: 'change' },
-          ],
-          MoneyFlows:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          MoneyChannel:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          MoneyChannelSon:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          MoneyChannelSmall:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          SingUnit:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          Place:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          DisputeResolution:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          SubmitDate:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          SealName:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          PoNumber:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          ContractMark:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          ContractName:[
-            { required: true, message: '请输入', trigger: 'blur' },
-          ],
-          Telephone:[
-            // { required: true, message: '请输入联系人电话', trigger: 'blur' },
-            { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
-          ],
-          ConstructionTelphone:[
-            { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
-          ],
-          BuildTelphone:[
-            { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
-          ],
-          SuperviseTelphone:[
-            { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
-          ],
-          QualityTelphone:[
-            { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
-          ],
-        },
-        ContractClassDisabled:true,
-        activeName: '1',
-        serviceId: '',
-        CurrencyOptions: [],
-        formData: {
-          Id: '',
-          SupplierId: '',
-          SupplierName: '',
-          ProjectName: '',
-          ContractNo: '',
-          ProjectPlace: '',
-          ProjectOwner: '',
-          Telephone: '',
-          ProjectType: '',
-          ContractMode: '',
-          Amount: '',
-          ContractPeriod: '',
-          OpenDate: '',
-          PlanFinishDate: '',
-          ConstructionUnit: '',
-          ConstructionOwner: '',
-          ConstructionTelphone: '',
-          BuildUnit: '',
-          BuildOwner: '',
-          BuildTelphone: '',
-          SuperviseUnit: '',
-          SuperviseOwner: '',
-          SuperviseTelphone: '',
-          QualityUnit: '',
-          QualityOwner: '',
-          QualityTelphone: '',
-          Remark: '',
-          // IsDelete: '',
-          // CreateOn: '',
-          // CreateUserId: '',
-          // CreateBy: '',
-          // ModifiedOn: '',
-          // ModifiedUserId: '',
-          // ModifiedBy: '',
-          //缺少
-          SubPackage: 0,
-          ContractClass: '',
-          ContractSonClass:'',
-          SmallClass:'',
-          SignedDate:'',
-          People:'',
-          Number:'',
-          ChooseWay:'',
-          ContractMark:'',
-          Currency:'',
-          BudgetAmount:'',
-          PerformAmount:'',
-          IsInternal:0,
-          IsForeign:0,
-          IsDeal:0,
-          MoneyFlows:'',
-          MoneyChannel:'',
-          MoneyChannelSon:'',
-          MoneyChannelSmall:'',
-          SingUnit:'',
-          Place:'',
-          DisputeResolution:'',
-          SubmitDate:'',
-          SealName:'',
-          PoNumber:'',
-        },
-        SupplierSelectList:[],//企业名称列表
-        dictionary:'',//数据字典
-
-        //下拉选择项
-        //wellNoOptions: [],
-        //supervisersOptions: [],
-        successBoolean:false,
-        issueVisibleButton:false,
-        succseButton:false,
+      } else {
+        callback();
+      }
+    };
+    var ContractPeriod = (rule, value, callback) => {
+      console.log(value)
+      if (value % 1 === 0) {
+        callback();
+      } else {
+        callback(new Error('不能为小数'));
+      }
+    };
+    return {
+      issueFrom: {
+        region: '',
+      },
+      orgOptions: [],
+      issueVisible: false,//下发弹窗
+      issueRules: {
+        region: [
+          {required: true, message: '请选择审核单位', trigger: 'change'}
+        ],
+      },
+      addloading: false,//添加londing
+      rules: {
+        ContractClass: [
+          {required: true, message: '请选择合同分类', trigger: 'change'},
+        ],
+        SupplierId: [
+          {required: true, message: '请选择企业名称', trigger: 'change'},
+        ],
+        ProjectName: [
+          {required: true, message: '请输入项目名称', trigger: 'blur'},
+        ],
+        ContractNo: [
+          {required: true, message: '请输入合同编号', trigger: 'blur'},
+        ],
+        // ProjectPlace:[
+        //   { required: true, message: '请输入工程地点', trigger: 'blur' },
+        // ],
+        // ProjectOwner:[
+        //   { required: true, message: '请输入项目负责人', trigger: 'blur' },
+        // ],
+        // Telephone:[
+        //   { required: true, message: '请输入联系人电话', trigger: 'blur' },
+        //   { pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对' }
+        // ],
+        // ProjectType:[
+        //   { required: true, message: '请选择项目类别', trigger: 'change' },
+        // ],
+        // ContractMode:[
+        //   { required: true, message: '请输入合同模式', trigger: 'blur' },
+        // ],
+        SubPackage: [
+          {required: true, message: '请选择是否分包', trigger: 'change'},
+        ],
 
+        OpenDate: [
+          {required: true, message: '请选择时间', trigger: 'change'},
+          {validator: OpenDateVar, trigger: 'change'}
+        ],
+        PlanFinishDate: [
+          {required: true, message: '请选择时间', trigger: 'change'},
+          {validator: PlanFinishDateVar, trigger: 'change'}
+        ],
+        Amount: [
+          {required: true, message: '请输入', trigger: 'blur'},
+          {pattern: /^\+?((0|([1-9]+\d*))|((0\.\d+)|([1-9]+\d*\.\d+)))$/, message: '输入格式不正确', trigger: 'blur'},
+        ],
+        ContractPeriod: [
+          {message: '请输入', trigger: 'blur'},
+          {pattern: /^\+?((0|([1-9]+\d*))|((0\.\d+)|([1-9]+\d*\.\d+)))$/, message: '输入格式不正确', trigger: 'blur'},
+          {validator: ContractPeriod, trigger: 'blur'}
+        ],
+        ContractSonClass: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        SmallClass: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        SignedDate: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        People: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        Number: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        ChooseWay: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        Currency: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        BudgetAmount: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        PerformAmount: [
+          {required: true, message: '请输入', trigger: 'blur'},
+          {pattern: /^\+?((0|([1-9]+\d*))|((0\.\d+)|([1-9]+\d*\.\d+)))$/, message: '输入格式不正确', trigger: 'blur'},
+        ],
+        IsInternal: [
+          {required: true, message: '请输入', trigger: 'change'},
+        ],
+        IsForeign: [
+          {required: true, message: '请输入', trigger: 'change'},
+        ],
+        IsDeal: [
+          {required: true, message: '请输入', trigger: 'change'},
+        ],
+        MoneyFlows: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        MoneyChannel: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        MoneyChannelSon: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        MoneyChannelSmall: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        SingUnit: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        Place: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        DisputeResolution: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        SubmitDate: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        SealName: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        PoNumber: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        ContractMark: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        ContractName: [
+          {required: true, message: '请输入', trigger: 'blur'},
+        ],
+        Telephone: [
+          // { required: true, message: '请输入联系人电话', trigger: 'blur' },
+          {pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对'}
+        ],
+        ConstructionTelphone: [
+          {pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对'}
+        ],
+        BuildTelphone: [
+          {pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对'}
+        ],
+        SuperviseTelphone: [
+          {pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对'}
+        ],
+        QualityTelphone: [
+          {pattern: /^1[3456789]\d{9}$/, message: '手机号码格式不对'}
+        ],
+      },
+      ContractClassDisabled: true,
+      activeName: '1',
+      serviceId: '',
+      CurrencyOptions: [],
+      formData: {
+        Id: '',
+        SupplierId: '',
+        SupplierName: '',
+        ProjectName: '',
+        ContractNo: '',
+        ProjectPlace: '',
+        ProjectOwner: '',
+        Telephone: '',
+        ProjectType: '',
+        ContractMode: '',
+        Amount: '',
+        ContractPeriod: '',
+        OpenDate: '',
+        PlanFinishDate: '',
+        ConstructionUnit: '',
+        ConstructionOwner: '',
+        ConstructionTelphone: '',
+        BuildUnit: '',
+        BuildOwner: '',
+        BuildTelphone: '',
+        SuperviseUnit: '',
+        SuperviseOwner: '',
+        SuperviseTelphone: '',
+        QualityUnit: '',
+        QualityOwner: '',
+        QualityTelphone: '',
+        Remark: '',
+        // IsDelete: '',
+        // CreateOn: '',
+        // CreateUserId: '',
+        // CreateBy: '',
+        // ModifiedOn: '',
+        // ModifiedUserId: '',
+        // ModifiedBy: '',
+        //缺少
+        SubPackage: 0,
+        ContractClass: '',
+        ContractSonClass: '',
+        SmallClass: '',
+        SignedDate: '',
+        People: '',
+        Number: '',
+        ChooseWay: '',
+        ContractMark: '',
+        Currency: '',
+        BudgetAmount: '',
+        PerformAmount: '',
+        IsInternal: 0,
+        IsForeign: 0,
+        IsDeal: 0,
+        MoneyFlows: '',
+        MoneyChannel: '',
+        MoneyChannelSon: '',
+        MoneyChannelSmall: '',
+        SingUnit: '',
+        Place: '',
+        DisputeResolution: '',
+        SubmitDate: '',
+        SealName: '',
+        PoNumber: '',
+      },
+      SupplierSelectList: [],//企业名称列表
+      dictionary: '',//数据字典
+
+      //下拉选择项
+      //wellNoOptions: [],
+      //supervisersOptions: [],
+      successBoolean: false,
+      issueVisibleButton: false,
+      succseButton: false,
+
+    }
+  },
+  created() {
+    this.GetorgOptions()
+    api.getDictList(this.$axios).then(res => {
+      console.log('数据字典', res)
+      this.dictionary = res.data.items
+    }).catch(err => {
+      console.error(err)
+    })
+
+    this.serviceId = this.$route.params.opera;
+    this.getDictOptions();
+    if (this.serviceId != 'add' && this.serviceId > 0) {
+      this.formData.Id = this.serviceId;
+      this.initDatas();
+      this.successBoolean = true
+    } else {
+      this.formData.Id = 0;
+    }
+    this.statusFun()
+  },
+  methods: {
+    dateChange() {
+      if (this.formData.OpenDate && this.formData.ContractPeriod) {
+        var d = new Date(this.formData.OpenDate)
+        var dd = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate()
+        var ddd = new Date(dd)
+        console.log(ddd, this.formData.ContractPeriod, ddd.getDate() + parseInt(this.formData.ContractPeriod), '2222')
+        this.formData.PlanFinishDate = ddd.setDate(ddd.getDate() + parseInt(this.formData.ContractPeriod))
       }
     },
-    created() {
-      this.GetorgOptions()
-      api.getDictList(this.$axios).then(res => {
-        console.log('数据字典',res)
-        this.dictionary = res.data.items
+    // 状态判断
+    statusFun() {
+      var data = {
+        percode: 'oil_contract_order',
+      }
+      permissionApi.permissionIsauth(data, this.$axios).then(res => {
+        console.log('权限', res.data)
+        if (res.data.code == 0) {
+          if (res.data.message == '有权限') {
+            this.issueVisibleButton = true
+          }
+        }
       }).catch(err => {
         console.error(err)
       })
-
-      this.serviceId = this.$route.params.opera;
-      this.getDictOptions();
-      if(this.serviceId != 'add' && this.serviceId>0) {
-        this.formData.Id = this.serviceId;
-        this.initDatas();
-        this.successBoolean = true
-      } else {
-        this.formData.Id = 0;
+      var data = {
+        percode: 'oil_contract_finish',
       }
-      this.statusFun()
-    },
-    methods: {
-      dateChange () {
-        if (this.formData.OpenDate && this.formData.ContractPeriod) {
-          var d = new Date(this.formData.OpenDate)
-          var dd = d.getFullYear() + '-' + (d.getMonth() + 1) + '-' + d.getDate()
-          var ddd = new Date(dd)
-          console.log(ddd, this.formData.ContractPeriod, ddd.getDate() + parseInt(this.formData.ContractPeriod), '2222')
-          this.formData.PlanFinishDate = ddd.setDate(ddd.getDate() + parseInt(this.formData.ContractPeriod))
-        }
-      },
-      // 状态判断
-      statusFun(){
-        var data = {
-          percode:'oil_contract_order',
-        }
-        permissionApi.permissionIsauth(data, this.$axios).then(res => {
-          console.log('权限',res.data)
-          if(res.data.code==0){
-            if(res.data.message=='有权限'){
-              this.issueVisibleButton = true
-            }
+      permissionApi.permissionIsauth(data, this.$axios).then(res => {
+        console.log('权限', res.data)
+        if (res.data.code == 0) {
+          if (res.data.message == '有权限') {
+            this.succseButton = true
           }
-        }).catch(err => {
-          console.error(err)
-        })
-        var data = {
-          percode:'oil_contract_finish',
         }
-        permissionApi.permissionIsauth(data, this.$axios).then(res => {
-          console.log('权限',res.data)
-          if(res.data.code==0){
-            if(res.data.message=='有权限'){
-              this.succseButton = true
-            }
+      }).catch(err => {
+        console.error(err)
+      })
+    },
+    //合同完结
+    onFinish() {
+      var index = (this.formData.ContractClass)
+      var name = ''
+      switch (index) {
+        case "01":
+          name = 'contract-goods'
+          break;
+        case "02":
+          name = 'contract-basis'
+          break;
+        case "03":
+          name = 'contract-service'
+          break;
+      }
+      this.$router.push({
+        path: '/oilcontract/' + name + '/add/evaluate',
+        query: {
+          item: this.formData,
+          IsFinal: 1
+          // type:1,
+        }
+      })
+    },
+    //合同下发确定
+    onIssueFromSubmit() {
+      this.$refs['issueFrom'].validate((valid) => {
+        if (valid) {
+          console.log(this.$refs['issueFromSelect'].selectedLabel)
+          var data = {
+            ContractId: this.formData.Id,
+            UnitId: this.issueFrom.region,
+            UnitBy: this.$refs['issueFromSelect'].selectedLabel,
           }
-        }).catch(err => {
-          console.error(err)
-        })
-      },
-      //合同完结
-      onFinish(){
-        var index = (this.formData.ContractClass)
-            var name = ''
-            switch(index){
-              case "01":
-                name = 'contract-goods'
-              break;
-              case "02":
-                name = 'contract-basis'
-              break;
-              case "03":
-                name = 'contract-service'
-              break;
-            }
-            this.$router.push({
-              path:'/oilcontract/' + name + '/add/evaluate',
-              query:{
-                item:this.formData,
-                IsFinal:1
-                // type:1,
-              }
-            })
-      },
-      //合同下发确定
-      onIssueFromSubmit(){
-        this.$refs['issueFrom'].validate((valid) => {
-          if (valid) {
-            console.log(this.$refs['issueFromSelect'].selectedLabel)
-            var data = {
-              ContractId:this.formData.Id,
-              UnitId:this.issueFrom.region,
-              UnitBy:this.$refs['issueFromSelect'].selectedLabel,
+          api.contractOrderAdd(data, this.$axios).then(res => {
+            console.log('下发成功', res)
+            if (res.data.code == 0) {
+              this.$message({message: res.data.message, type: 'success'});
+            } else {
+              this.$message({message: res.data.message, type: 'error'});
             }
-            api.contractOrderAdd(data, this.$axios).then(res => {
-              console.log('下发成功',res)
-              if(res.data.code==0){
-                this.$message({message: res.data.message,type: 'success'});
-              }else{
-                this.$message({message: res.data.message,type: 'error'});
-              }
-            }).catch(err => {
-              console.error(err)
-            })
-            this.issueVisible = false
-          } else {
-            console.log('error submit!!');
-            return false;
-          }
-        });
-
-      },
-
-      //选择合同分类
-      onSelectType(e,index){
-        console.log(e)
-        oilsupplierApi.getSupList(e, this.$axios).then(res => {
-          console.log('数据',res)
-          if(index!=1){
-            this.formData.SupplierId = ''
-          }
-          this.ContractClassDisabled = false
-          this.SupplierSelectList = res.data.items
-        }).catch(err => {
-          console.error(err)
-        })
-      },
-      //编辑的初始数据
-      initDatas() {
-        if(this.formData.Id) {
-          api.getEntity(this.formData.Id, this.$axios).then(res => {
-            console.log('返给我的数据',res.data)
-            this.formData = res.data;
-            this.successBoolean = true
-            this.onSelectType(this.formData.ContractClass,1)
           }).catch(err => {
             console.error(err)
-          });
+          })
+          this.issueVisible = false
+        } else {
+          console.log('error submit!!');
+          return false;
         }
-      },
+      });
+
+    },
 
-      getDictOptions() {
-        api.getDictList(this.$axios).then(res => {
-          //this.wellNoOptions = res.data.items['WellNo']
-          //this.supervisersOptions = res.data.items['Supervisers']
+    //选择合同分类
+    onSelectType(e, index) {
+      console.log(e)
+      oilsupplierApi.getSupList(e, this.$axios).then(res => {
+        console.log('数据', res)
+        if (index != 1) {
+          this.formData.SupplierId = ''
+        }
+        this.ContractClassDisabled = false
+        this.SupplierSelectList = res.data.items
+      }).catch(err => {
+        console.error(err)
+      })
+    },
+    //编辑的初始数据
+    initDatas() {
+      if (this.formData.Id) {
+        api.getEntity(this.formData.Id, this.$axios).then(res => {
+          console.log('返给我的数据', res.data)
+          this.formData = res.data;
+          this.successBoolean = true
+          this.onSelectType(this.formData.ContractClass, 1)
         }).catch(err => {
           console.error(err)
-        })
-      },
+        });
+      }
+    },
 
-      //保存信息
-      saveEntity() {
-        this.$refs['EntityForm'].validate((valid) => {
-          if (valid) {
-            //this.formData.WellNo = this.$refs.selectWellNo.selectedLabel + '';
+    getDictOptions() {
+      api.getDictList(this.$axios).then(res => {
+        //this.wellNoOptions = res.data.items['WellNo']
+        //this.supervisersOptions = res.data.items['Supervisers']
+      }).catch(err => {
+        console.error(err)
+      })
+    },
 
-            if (!this.formData.Id) {
-              this.addEntity();
-            } else {
-              this.updateEntity();
-            }
+    //保存信息
+    saveEntity() {
+      this.$refs['EntityForm'].validate((valid) => {
+        if (valid) {
+          //this.formData.WellNo = this.$refs.selectWellNo.selectedLabel + '';
 
+          if (!this.formData.Id) {
+            this.addEntity();
           } else {
-            return false
+            this.updateEntity();
           }
-        })
-      },
 
-      addEntity() {
-        this.addloading = true
-        console.log('提交数据',this.formData)
-        // this.formData.ContractClass = '02'
-        // var data = {
-        //   ContractClass:'02'
-        // }
-        api.addEntity(this.formData, this.$axios).then(res => {
-          console.log('保存数据',res)
-          this.addloading = false
-          if (res.data.code === 0) {
-            //保存成功后,初始化数据,变成修改
-            this.formData.Id = res.data.item;
-            this.initDatas();
-            this.$message({
-              type: 'success',
-              message: res.data.message
-            });
+        } else {
+          return false
+        }
+      })
+    },
+    msToDate (msec) {
+      let datetime = new Date(msec);
+      let year = datetime.getFullYear();
+      let month = datetime.getMonth();
+      let date = datetime.getDate();
+      let hour = datetime.getHours();
+      let minute = datetime.getMinutes();
+      let second = datetime.getSeconds();
 
-          } else {
-            this.$message({
-              type: 'warning',
-              message: res.data.message
-            });
-          }
-        }).catch(err => {
-          this.addloading = false
-          console.error(err)
-        });
-      },
+      let result1 = year +
+        '-' +
+        ((month + 1) >= 10 ? (month + 1) : '0' + (month + 1)) +
+        '-' +
+        ((date + 1) < 10 ? '0' + date : date) +
+        ' ' +
+        ((hour + 1) < 10 ? '0' + hour : hour) +
+        ':' +
+        ((minute + 1) < 10 ? '0' + minute : minute) +
+        ':' +
+        ((second + 1) < 10 ? '0' + second : second);
 
-      updateEntity() {
-        console.log('编辑前的数据',this.formData)
-        api.updateEntity(this.formData.Id, this.formData, this.$axios).then(res => {
-          if (res.data.code === 0) {
-            //保存成功后,初始化数据,变成修改
-            this.initDatas();
-            this.$message({
-              type: 'success',
-              message: res.data.message
-            });
+      // let result2 = year +
+      //   '-' +
+      //   ((month + 1) >= 10 ? (month + 1) : '0' + (month + 1)) +
+      //   '-' +
+      //   ((date + 1) < 10 ? '0' + date : date);
 
-          } else {
-            this.$message({
-              type: 'warning',
-              message: res.data.message
-            });
-          }
-        }).catch(err => {
-          console.error(err)
-        });
-      },
-      //下发单位
-      GetorgOptions () {
-        let _this = this
-        this.$axios.get('/register/orgloginlist').then(res => {
-          _this.orgOptions = res.data.items
-        }).catch(err => {
-          console.log(err)
-        })
-      },
+      // let result = {
+      //   hasTime: result1,
+      //   withoutTime: result2
+      // }
+      return result1
+    },
+    addEntity () {
+      this.addloading = true
+      this.formData.PlanFinishDate = new Date(this.msToDate(this.formData.PlanFinishDate))
+      console.log('提交数据', this.formData)
+      // this.formData.ContractClass = '02'
+      // var data = {
+      //   ContractClass:'02'
+      // }
+      api.addEntity(this.formData, this.$axios).then(res => {
+        console.log('保存数据', res)
+        this.addloading = false
+        if (res.data.code === 0) {
+          // 保存成功后,初始化数据,变成修改
+          this.formData.Id = res.data.item
+          this.initDatas()
+          this.$message({
+            type: 'success',
+            message: res.data.message
+          })
+        } else {
+          this.$message({
+            type: 'warning',
+            message: res.data.message
+          })
+        }
+      }).catch(err => {
+        this.addloading = false
+        console.error(err)
+      })
+    },
 
-      supplierChangeHandler(e) {
-        var that = this;
-        setTimeout(function() {
-          that.formData.SupplierName = that.$refs['SupplierSelect'].selectedLabel
-        }, 100);
-      },
+    updateEntity() {
+      console.log('编辑前的数据', this.formData)
+      api.updateEntity(this.formData.Id, this.formData, this.$axios).then(res => {
+        if (res.data.code === 0) {
+          //保存成功后,初始化数据,变成修改
+          this.initDatas();
+          this.$message({
+            type: 'success',
+            message: res.data.message
+          });
 
-      jstimehandle(val) {
-        if (val === '') {
-          return '----'
-        } else if (val === '0001-01-01T08:00:00+08:00') {
-          return '----'
-        } else if (val === '5000-01-01T23:59:59+08:00') {
-          return '永久'
         } else {
-          val = val.replace('T', ' ')
-          return val.substring(0, 10)
+          this.$message({
+            type: 'warning',
+            message: res.data.message
+          });
         }
-      },
-      exportExcel () {
-        api.docexport(this.formData.Id, this.$axios)
-          .then(res => {
-            // response
-            if (res.data.code === 0) {
-              // this.$message({
-              //    type: 'success'
-              //    message: res.data.message
-              // })
-              let docurl = res.data.item
-              // 内网服务器专用
-              if (process.client && docurl.indexOf('upfile') === 0) {
-                const myDomain = window.location.host
-                location.href = 'http://' + myDomain + '/' + docurl
-              } else {
-                location.href = 'http://' + docurl
-              }
-            }
-          }).catch(err => {
-            console.error(err)
-          })
-      },
-      formatDateTime(date) {
-        var y = date.getFullYear();
-        var m = date.getMonth() + 1;
-        m = m < 10 ? ('0' + m) : m;
-        var d = date.getDate();
-        d = d < 10 ? ('0' + d) : d;
-        var h = date.getHours();
-        var minute = date.getMinutes();
-        minute = minute < 10 ? ('0' + minute) : minute;
-        return y + '-' + m + '-' + d + ' ' + h + ':' + minute;
+      }).catch(err => {
+        console.error(err)
+      });
+    },
+    //下发单位
+    GetorgOptions() {
+      let _this = this
+      this.$axios.get('/register/orgloginlist').then(res => {
+        _this.orgOptions = res.data.items
+      }).catch(err => {
+        console.log(err)
+      })
+    },
+
+    supplierChangeHandler(e) {
+      var that = this;
+      setTimeout(function () {
+        that.formData.SupplierName = that.$refs['SupplierSelect'].selectedLabel
+      }, 100);
+    },
+
+    jstimehandle(val) {
+      if (val === '') {
+        return '----'
+      } else if (val === '0001-01-01T08:00:00+08:00') {
+        return '----'
+      } else if (val === '5000-01-01T23:59:59+08:00') {
+        return '永久'
+      } else {
+        val = val.replace('T', ' ')
+        return val.substring(0, 10)
       }
+    },
+    exportExcel() {
+      api.docexport(this.formData.Id, this.$axios)
+        .then(res => {
+          // response
+          if (res.data.code === 0) {
+            // this.$message({
+            //    type: 'success'
+            //    message: res.data.message
+            // })
+            let docurl = res.data.item
+            // 内网服务器专用
+            if (process.client && docurl.indexOf('upfile') === 0) {
+              const myDomain = window.location.host
+              location.href = 'http://' + myDomain + '/' + docurl
+            } else {
+              location.href = 'http://' + docurl
+            }
+          }
+        }).catch(err => {
+        console.error(err)
+      })
+    },
+    formatDateTime(date) {
+      var y = date.getFullYear();
+      var m = date.getMonth() + 1;
+      m = m < 10 ? ('0' + m) : m;
+      var d = date.getDate();
+      d = d < 10 ? ('0' + d) : d;
+      var h = date.getHours();
+      var minute = date.getMinutes();
+      minute = minute < 10 ? ('0' + minute) : minute;
+      return y + '-' + m + '-' + d + ' ' + h + ':' + minute;
     }
   }
+}
 
 </script>
 
 <style scoped>
-  .fromClass /deep/ .el-input{
-    width: 100% !important;
-  }
-  .select_form /deep/ .el-select-dropdown{
-    height: 120px;
-    overflow: hidden;
-  }
-  .select_form /deep/ .el-scrollbar{
-    height: 120px;
-  }
+.fromClass /deep/ .el-input {
+  width: 100% !important;
+}
+
+.select_form /deep/ .el-select-dropdown {
+  height: 120px;
+  overflow: hidden;
+}
+
+.select_form /deep/ .el-scrollbar {
+  height: 120px;
+}
 
 
 </style>