Browse Source

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

Lijy 2 years ago
parent
commit
d8e4664a09

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

@@ -1482,5 +1482,23 @@
   "zheng-shi-xiang-mu-gong-shi": "Official project hours",
   "lai-zi-ri-bao": "From Daily",
   "tian-bao-ren": "Applicant",
-  "xiang-guan-ri-bao": "Related Daily News"
+  "xiang-guan-ri-bao": "Related Daily News",
+  "he-tong-lie-biao": "Contract List",
+  "he-tong-lei-xing": "Contract Type",
+  "he-tong-ming-cheng": "Contract Name",
+  "he-tong": "Contract",
+  "xin-zeng-he-tong": "New contract",
+  "qing-shu-ru-he-tong-bian-hao": "Please enter the contract number",
+  "qing-shu-ru-he-tong-ming-cheng": "Please enter the contract name",
+  "fu-jian": "Enclosure",
+  "xin-zeng-fu-jian": "Add attachments",
+  "cha-kan-he-tong": "View Contract",
+  "he-tong-lei-xing-guan-li": "Contract Type Management",
+  "xin-zeng-he-tong-lei-xing": "New Contract Type",
+  "bian-ji-he-tong-lei-xing": "Edit Contract Type",
+  "dao-ru-he-tong": "Import Contract",
+  "he-tong-dao-chu": "Contract Export",
+  "que-ding-yao-shan-chu-ci-tiao-he-tong-lei-xing-ma": "Are you sure you want to delete this contract type ?",
+  "que-ding-yao-shan-chu-gai-he-tong-ma": "Are you sure you want to delete this contract ?",
+  "que-ding-yao-shan-chu-gai-wen-jian-ma": "Are you sure you want to delete this file ?"
 }

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

@@ -1482,5 +1482,23 @@
   "di": "第",
   "lai-zi-ri-bao": "来自日报",
   "tian-bao-ren": "填报人",
-  "xiang-guan-ri-bao": "相关日报"
+  "xiang-guan-ri-bao": "相关日报",
+  "he-tong-lie-biao": "合同列表",
+  "he-tong-ming-cheng": "合同名称",
+  "he-tong-lei-xing": "合同类型",
+  "he-tong": "合同",
+  "xin-zeng-he-tong": "新增合同",
+  "qing-shu-ru-he-tong-bian-hao": "请输入合同编号",
+  "qing-shu-ru-he-tong-ming-cheng": "请输入合同名称",
+  "fu-jian": "附件",
+  "xin-zeng-fu-jian": "新增附件",
+  "cha-kan-he-tong": "查看合同",
+  "he-tong-lei-xing-guan-li": "合同类型管理",
+  "xin-zeng-he-tong-lei-xing": "新增合同类型",
+  "bian-ji-he-tong-lei-xing": "编辑合同类型",
+  "dao-ru-he-tong": "导入合同",
+  "he-tong-dao-chu": "合同导出",
+  "que-ding-yao-shan-chu-ci-tiao-he-tong-lei-xing-ma": "确定要删除此条合同类型吗?",
+  "que-ding-yao-shan-chu-gai-he-tong-ma": "确定要删除该合同吗?",
+  "que-ding-yao-shan-chu-gai-wen-jian-ma": "确定要删除该文件吗?"
 }

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

@@ -495,7 +495,7 @@
                 res => {
                     if (res.code == "ok") {
                         this.loadNotice();
-                        if (type == 0 || type == 3) {
+                        if (type == 0) {
                             //审批未通过的消息, 也包括审批通过的通知
                             sessionStorage.msg = date;
                             sessionStorage.from = 1;
@@ -528,8 +528,13 @@
                             //5- 出差消息
                             this.$router.push("/awayOffice");
                             this.drawer = false;
+                        } else if (type == 6 || type == 7) {
+                            // 6、7 合同通过、驳回
+                            this.$router.push("/contract");
+                            this.drawer = false;
                         }
                         
+                        
                     } else {
                         this.$message({
                             message: res.msg,

+ 42 - 42
fhKeeper/formulahousekeeper/timesheet/src/views/contract/index.vue

@@ -2,14 +2,14 @@
   <section>
     <el-col :span="24" class="toolbar" style="padding-bottom: 0px;">
       <el-form :inline="true">
-        <el-form-item label="合同列表" class="toolbar_formitem_n1"></el-form-item>
+        <el-form-item :label="$t('he-tong-lie-biao')" class="toolbar_formitem_n1"></el-form-item>
         <!-- 合同编号/名称 -->
         <el-form-item>
           <div style="display: flex;align-items: center;height: 40px;">
-            <el-input v-model="keyword" class="input-with-select" placeholder="请输入" clearable size="small">
+            <el-input v-model="keyword" class="input-with-select" :placeholder="keyword == 1 ? $t('qing-shu-ru-he-tong-bian-hao') : $t('qing-shu-ru-he-tong-ming-cheng')" clearable size="small">
               <el-select slot="prepend" v-model="searchField" :placeholder="$t('defaultText.pleaseChoose')" style="width:120px">
-                <el-option label="合同名称" :value="0"></el-option>
-                <el-option label="合同编号" :value="1"></el-option>
+                <el-option :label="$t('he-tong-ming-cheng')" :value="0"></el-option>
+                <el-option :label="$t('contractno')" :value="1"></el-option>
               </el-select>
               <el-button slot="append" @click="searchFilter" icon="el-icon-search"></el-button>
             </el-input>
@@ -17,7 +17,7 @@
         </el-form-item>
         <!-- 合同类型 -->
         <el-form-item>
-          <span style="margin-left:5px;margin-right:5px;color:#606266;">合同类型</span>
+          <span style="margin-left:5px;margin-right:5px;color:#606266;">{{ $t('he-tong-lei-xing') }}</span>
           <el-select v-model="typeName" style="width:120px;" :placeholder="$t('defaultText.pleaseChoose')" @change="searchFilter" size="small" clearable>
             <el-option v-for="item in typeList" :key="item.id" :label="item.typeName" :value="item.id"></el-option>
           </el-select>
@@ -57,16 +57,16 @@
           </el-dropdown>
         </el-form-item>
         <el-form-item style="float:right;" v-if="permissions.contractNew">
-          <el-link type="primary" :underline="false" @click="newlyAdd()">新增合同</el-link>
+          <el-link type="primary" :underline="false" @click="newlyAdd()">{{ $t('xin-zeng-he-tong') }}</el-link>
         </el-form-item>
       </el-form>
     </el-col>
 
     <el-table :data="contractList" v-loading="listLoading" :height="tableHeight" border highlight-current-row>
-      <el-table-column prop="number" label="合同编号" min-width="150"></el-table-column>
-      <el-table-column prop="name" label="合同名称" min-width="150"></el-table-column>
-      <el-table-column prop="amounts" label="合同金额" min-width="150"></el-table-column>
-      <el-table-column prop="typeName" label="合同类型" min-width="150"></el-table-column>
+      <el-table-column prop="number" :label="$t('contractno')" min-width="150"></el-table-column>
+      <el-table-column prop="name" :label="$t('he-tong-ming-cheng')" min-width="150"></el-table-column>
+      <el-table-column prop="amounts" :label="$t('contractamount')" min-width="150"></el-table-column>
+      <el-table-column prop="typeName" :label="$t('he-tong-lei-xing')" min-width="150"></el-table-column>
       <el-table-column prop="status" :label="$t('state.states')" min-width="150">
         <template slot-scope="scope">
           <span :style="statusList[scope.row.status].color">{{statusList[scope.row.status].label}}</span>
@@ -95,20 +95,20 @@
       ></el-pagination>
     </el-col>
 
-    <el-dialog :title="dialogTitle + '合同'" :visible.sync="addDialog" v-if="addDialog" :close-on-click-modal="false" customClass="customWidth" width="900px">
+    <el-dialog :title="dialogTitle + $t('he-tong')" :visible.sync="addDialog" v-if="addDialog" :close-on-click-modal="false" customClass="customWidth" width="900px">
       <div style="height: 72vh;overflow-y: auto;overflow-x: hidden;">
         <el-form ref="contractForm" :model="contractForm" :rules="rules" label-width="120px" class="contractForm">
-          <el-form-item label="合同编号">
-            <el-input v-model="contractForm.number" placeholder="请输入" clearable></el-input>
+          <el-form-item :label="$t('contractno')">
+            <el-input v-model="contractForm.number" :placeholder="$t('peaseenterthe')" clearable></el-input>
           </el-form-item>
-          <el-form-item label="合同名称" prop='name'>
-            <el-input v-model="contractForm.name" placeholder="请输入" clearable></el-input>
+          <el-form-item :label="$t('he-tong-ming-cheng')" prop='name'>
+            <el-input v-model="contractForm.name" :placeholder="$t('peaseenterthe')" clearable></el-input>
           </el-form-item>
-          <el-form-item label="合同金额">
-            <el-input v-model="contractForm.amounts" placeholder="请输入" clearable></el-input>
+          <el-form-item :label="$t('contractamount')">
+            <el-input v-model="contractForm.amounts" :placeholder="$t('peaseenterthe')" clearable></el-input>
           </el-form-item>
-          <el-form-item label="合同类型">
-            <el-select v-model="contractForm.typeId" placeholder="请选择" style="width:100%">
+          <el-form-item :label="$t('he-tong-lei-xing')">
+            <el-select v-model="contractForm.typeId" :placeholder="$t('defaultText.pleaseChoose')" style="width:100%">
               <el-option v-for="item in typeList" :key="item.id" :label="item.typeName" :value="item.id"></el-option>
             </el-select>
           </el-form-item>
@@ -130,23 +130,23 @@
             </span>
           </el-form-item>
           <el-form-item :label="$t('bei-zhu')">
-            <el-input v-model="contractForm.remarks" placeholder="请输入" type="textarea" :rows="3" clearable></el-input>
+            <el-input v-model="contractForm.remarks" :placeholder="$t('peaseenterthe')" type="textarea" :rows="3" clearable></el-input>
           </el-form-item>
           <el-form-item label-width="0" class="contractFiles">
-            <div class="contractFiles_title">附件
+            <div class="contractFiles_title">{{ $t('fu-jian') }}
               <el-upload style="float:right;margin-right:5%;" ref="uploadFile" action="#" :http-request="httpRequest" :on-change="fileChange" :auto-upload="false" :show-file-list="false">
-                <el-link type="primary">新增附件</el-link>
+                <el-link type="primary">{{ $t('xin-zeng-fu-jian') }}</el-link>
               </el-upload>
             </div>
             
             <el-table :data="fileList" :header-cell-style="{'font-weight':'normal'}" highlight-current-row
               max-height="240" style="width: 100%;margin-top:10px;margin-bottom:15px">
-              <el-table-column label="序号" min-width="40" align="center">
+              <el-table-column :label="$t('headerTop.serialNumber')" min-width="40" align="center">
                 <template slot-scope="scope">
                   <div>{{scope.$index + 1}}</div>
                 </template>
               </el-table-column>
-              <el-table-column label="文件名称" prop="name" min-width="140"></el-table-column>
+              <el-table-column :label="$t('filenames')" prop="name" min-width="140"></el-table-column>
               <!-- <el-table-column label="文件大小" min-width="60">
                 <template slot-scope="scope">
                   <div>{{scope.$index + 1}}</div>
@@ -168,19 +168,19 @@
       </div>
     </el-dialog>
 
-    <el-dialog title="查看合同" :visible.sync="lookoverDialog" v-if="lookoverDialog" :close-on-click-modal="false" customClass="customWidth" width="900px">
+    <el-dialog :title="$t('cha-kan-he-tong')" :visible.sync="lookoverDialog" v-if="lookoverDialog" :close-on-click-modal="false" customClass="customWidth" width="900px">
       <div style="height: 72vh;overflow-y: auto;overflow-x: hidden;">
         <el-form label-width="100px" class="lookoverContract clearfix">
-          <el-form-item label="合同编号">
+          <el-form-item :label="$t('contractno')">
             {{contractForm.number}}
           </el-form-item>
-          <el-form-item label="合同名称">
+          <el-form-item :label="$t('he-tong-ming-cheng')">
             {{contractForm.name}}
           </el-form-item>
-          <el-form-item label="合同金额">
+          <el-form-item :label="$t('contractamount')">
             {{contractForm.amounts}}
           </el-form-item>
-          <el-form-item label="合同类型">
+          <el-form-item :label="$t('he-tong-lei-xing')">
             {{contractForm.typeName}}
           </el-form-item>
           <el-form-item :label="$t('state.states')">
@@ -206,7 +206,7 @@
             {{contractForm.remarks}}
           </el-form-item>
           <el-form-item label-width="0" class="contractFiles">
-            <div class="contractFiles_title">附件</div>
+            <div class="contractFiles_title">{{ $t('fu-jian') }}</div>
             <el-table :data="fileList" :header-cell-style="{'font-weight':'normal'}" highlight-current-row
               max-height="240" style="width: 100%;margin-top:10px;margin-bottom:30px">
               <el-table-column :label="$t('headerTop.serialNumber')" min-width="40" align="center">
@@ -231,7 +231,7 @@
       </div>
     </el-dialog>
 
-    <el-dialog title="合同类型管理" :visible.sync="typeDialog" v-if="typeDialog" customClass="customWidth" width="500px">
+    <el-dialog :title="$t('he-tong-lei-xing-guan-li')" :visible.sync="typeDialog" v-if="typeDialog" customClass="customWidth" width="500px">
       <el-table :data="typeList" highlight-current-row  height="400" style="width: 100%;">
         <el-table-column type="index" width="60" :label="$t('headerTop.serialNumber')">
           <template slot-scope="scope">{{ scope.$index + 1 }}</template>
@@ -246,9 +246,9 @@
       </el-table>
       <div slot="footer" class="dialog-footer;">
         <el-button type="primary" @click="typeDialog = false">{{$t('Shutdown')}}</el-button>
-        <el-button type="primary" @click="typeItemAdd()">新增合同类型</el-button>
+        <el-button type="primary" @click="typeItemAdd()">{{ $t('xin-zeng-he-tong-lei-xing') }}</el-button>
       </div>
-      <el-dialog :title="typeTitle + '合同类型'" :visible.sync="typeItemDialog" v-if="typeItemDialog" append-to-body width="400px">
+      <el-dialog :title="typeTitle == this.$t('add') ? $t('xin-zeng-he-tong-lei-xing') : $t('bian-ji-he-tong-lei-xing')" :visible.sync="typeItemDialog" v-if="typeItemDialog" append-to-body width="400px">
         <div style="height: 12vh;overflow-y: auto;overflow-x: hidden;">
           <el-input v-model="typeItemForm.typeName"></el-input>
         </div>
@@ -259,18 +259,18 @@
       </el-dialog>
     </el-dialog>
 
-    <el-dialog title="导入合同" :visible.sync="importDialog" v-if="importDialog" width="30%">
+    <el-dialog :title="$t('dao-ru-he-tong')" :visible.sync="importDialog" v-if="importDialog" width="30%">
       <!-- 模板? -->
       <div slot="footer" class="dialog-footer" style="text-algin:center;">
         <el-upload ref="upload" action="#" :limit="1" :http-request="importContract" :show-file-list="false">
-          <el-button type="primary" size="small" :loading="importLoading">导入合同</el-button>
+          <el-button type="primary" size="small" :loading="importLoading">{{ $t('dao-ru-he-tong') }}</el-button>
         </el-upload>
       </div>
     </el-dialog>
     
     <el-dialog :title="$t('defaultText.pleaseEnterTheReason')"  v-if="denyReasonDialog" :visible.sync="denyReasonDialog" :close-on-click-modal="false" customClass="customWidth" width="500px">
             <div>
-                <el-input type="textarea" v-model="denyReason" rows="2" placeholder="请输入驳回原因" />
+                <el-input type="textarea" v-model="denyReason" rows="2" :placeholder="$t('reasonforyourdecisiontoreject')" />
             </div>
             <div slot="footer" class="dialog-footer">
                 <el-button  @click="denyReasonDialog = false" >{{$t('btn.cancel')}}</el-button>
@@ -375,7 +375,7 @@ export default {
       let format = str[str.length - 1];
       if(format != "xls" && format != "xlsx"){
         this.$message({
-          message: '请选择.xls或.xlsx文件',
+          message: this.$t('other.PleaseselecttheXLSorXLSXfile'),
           type: 'error'
         })
       }else{
@@ -433,7 +433,7 @@ export default {
         if(res.code == 'ok'){
           let filePath = res.data;
           const a = document.createElement('a'); // 创建a标签
-          a.setAttribute('download', '合同导出' + '.xls');// download属性
+          a.setAttribute('download', this.$t('he-tong-dao-chu') + '.xls');// download属性
           a.setAttribute('href', filePath);// href链接
           a.click(); //自执行点击事件
           a.remove();
@@ -465,7 +465,7 @@ export default {
       this.typeItemDialog = true
     },
     typeItemDelete(row){
-      this.$confirm('确定要删除此条合同类型吗?', this.$t('other.prompts'), {
+      this.$confirm(this.$t('que-ding-yao-shan-chu-ci-tiao-he-tong-lei-xing-ma'), this.$t('other.prompts'), {
         confirmButtonText: this.$t('btn.determine'),
         cancelButtonText: this.$t('btn.cancel'),
         type: 'warning'
@@ -539,7 +539,7 @@ export default {
       this.addDialog = true
     },
     editContract(row){
-      this.dialogTitle = $t('bian-ji')
+      this.dialogTitle = this.$t('bian-ji')
       this.contractForm = JSON.parse(JSON.stringify(row))
       this.fileList = this.contractForm.files ? this.contractForm.files : []
       for(let i in this.fileList){
@@ -548,7 +548,7 @@ export default {
       this.addDialog = true
     },
     deleteContract(){
-      this.$confirm('确定要删除该合同吗?', this.$t('other.prompts'), {
+      this.$confirm(this.$t('que-ding-yao-shan-chu-gai-he-tong-ma'), this.$t('other.prompts'), {
         confirmButtonText: this.$t('btn.determine'),
         cancelButtonText: this.$t('btn.cancel'),
         type: 'warning'
@@ -675,7 +675,7 @@ export default {
     },
     fileDelete(row){
       console.log(row,this.fileList);
-      this.$confirm('确定要删除该文件吗?', this.$t('other.prompts'), {
+      this.$confirm(this.$t('que-ding-yao-shan-chu-gai-wen-jian-ma'), this.$t('other.prompts'), {
         confirmButtonText: this.$t('btn.determine'),
         cancelButtonText: this.$t('btn.cancel'),
         type: 'warning'