From 7b336b5d570dece2d283d33221874e8dae1a2118 Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期二, 05 三月 2024 14:02:44 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/master'

---
 company/src/components/business/OperaSolutionsDescWindow.vue    |    2 
 company/src/components/enterprise/importEmployees.vue           |   12 +
 company/src/views/business/solutions.vue                        |    1 
 company/src/components/business/detailsPolicyholder.vue         |  229 ++++++++++++++++++++
 company/src/components/enterprise/OperaDispatchUnitWindow.vue   |   18 
 company/src/components/enterprise/OperaInsuranceApplyWindow.vue |  150 +++++++++---
 company/src/components/business/OperaInsuranceApplyWindow.vue   |   22 +
 company/src/views/enterprise/myPolicy.vue                       |   12 
 company/.env                                                    |    7 
 company/src/components/enterprise/renewalInsurance.vue          |   34 +-
 company/.env.production                                         |    6 
 company/vue.config.js                                           |    2 
 company/src/utils/waterMark.js                                  |   56 +++++
 company/src/views/business/insuranceApply.vue                   |    4 
 company/src/assets/style/style.scss                             |    2 
 company/src/components/enterprise/confirmJobType.vue            |    2 
 company/src/components/enterprise/dispatchUnitDetails.vue       |   10 
 company/src/views/enterprise/insuranceApply.vue                 |    6 
 platform/src/layouts/AppLayout.vue                              |   16 +
 company/.env.development                                        |    4 
 company/src/layouts/AppLayout.vue                               |   16 +
 21 files changed, 502 insertions(+), 109 deletions(-)

diff --git a/company/.env b/company/.env
index 4f8ad0a..b8c4aaa 100644
--- a/company/.env
+++ b/company/.env
@@ -4,7 +4,7 @@
 VUE_APP_ROUTER_MODE = 'hash'
 
 # 椤圭洰涓婁笅鏂囪矾寰�
-VUE_APP_CONTEXT_PATH = '/yyb_admin'
+VUE_APP_CONTEXT_PATH = '/yyb_web'
 
 # 鎺ュ彛鍓嶇紑
 VUE_APP_API_PREFIX = '/api'
@@ -12,5 +12,8 @@
 # 宸ョ瀵煎叆妯℃澘
 VUE_APP_TYPEWORK_URL = 'https://doumeetest.oss-cn-beijing.aliyuncs.com/yunyibao_file/typeWork.xlsx'
 
-# 浜哄憳瀵煎叆妯℃澘
+# 浜哄憳瀵煎叆妯℃澘(鍔犲噺淇濇崲鍦�)
 VUE_APP_MEMBER_URL = 'https://doumeetest.oss-cn-beijing.aliyuncs.com/yunyibao_file/member.xlsx'
+
+# 浜哄憳瀵煎叆妯℃澘(鎶曚繚鐢宠)
+VUE_APP_MEMBER1_URL = 'https://doumeetest.oss-cn-beijing.aliyuncs.com/yunyibao_file/personnel.xlsx'
diff --git a/company/.env.development b/company/.env.development
index ddbde5e..49771e1 100644
--- a/company/.env.development
+++ b/company/.env.development
@@ -5,10 +5,10 @@
 # VUE_APP_API_PREFIX = '/yyb_web_api'
 
 # 浼佷笟绔�-浠佸悍
-VUE_APP_API = 'http://192.168.0.129:10031/'
+VUE_APP_API = 'http://192.168.0.186:10031/'
 
 # 骞冲彴绔�-浠佸悍
-# VUE_APP_API = 'http://192.168.0.129:10030/'
+# VUE_APP_API = 'http://192.168.0.186:10030/'
 
 # 骞冲彴绔�-钀嶅
 # VUE_APP_API = 'http://192.168.0.105:10023/'
diff --git a/company/.env.production b/company/.env.production
index 9cf23b3..4ad77c8 100644
--- a/company/.env.production
+++ b/company/.env.production
@@ -1,10 +1,10 @@
 # 鐢熶骇鐜閰嶇疆
 NODE_ENV = 'production'
 
-VUE_APP_API_PREFIX = '/yyb_admin_api'
+VUE_APP_API_PREFIX = '/yyb_web_api'
 
 # 骞冲彴绔�
-VUE_APP_API = 'https://dmtest.ahapp.net/yyb_admin_api/'
+# VUE_APP_API = 'https://dmtest.ahapp.net/yyb_admin_api/'
 
 # 浼佷笟绔�
-# VUE_APP_API = 'https://dmtest.ahapp.net/yyb_web_api/'
+VUE_APP_API = 'https://dmtest.ahapp.net/yyb_web_api/'
diff --git a/company/src/assets/style/style.scss b/company/src/assets/style/style.scss
index 5a90314..44a053b 100644
--- a/company/src/assets/style/style.scss
+++ b/company/src/assets/style/style.scss
@@ -84,7 +84,7 @@
 .du-status0 {
   color: #216EEE  !important;
 }
-  .apply-status1 , .apply-status4, .apply-status6, .apply-status7, .apply-status8,
+  .apply-status1 , .apply-status4, .apply-status6, .apply-status7, .apply-status8, .apply-status11,
 .change-status3,.change-status4,.change-status5,.change-status8,
 .settle-status1,
 .tax-status2,
diff --git a/company/src/components/business/OperaInsuranceApplyWindow.vue b/company/src/components/business/OperaInsuranceApplyWindow.vue
index e1ac5c8..f64ff23 100644
--- a/company/src/components/business/OperaInsuranceApplyWindow.vue
+++ b/company/src/components/business/OperaInsuranceApplyWindow.vue
@@ -39,7 +39,7 @@
                       <el-button v-if="model.status == 5" type="primary" @click="viewBaoxiandan">鏌ョ湅淇濋櫓鍗�</el-button>
                       <el-button v-if="model.status == 10 ||model.status == 2" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('涓婁紶鎶曚繚鍗�',model,2)">涓婁紶鎶曚繚鍗�</el-button>
                       <el-button v-if="model.status == 3" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('涓婁紶淇濋櫓鍗�',model,3)">涓婁紶淇濋櫓鍗�</el-button>
-                      <el-button  v-if="model.status == 6 || model.status == 7|| model.status == 8" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('椹冲洖閫�鍥炵敵璇�',model,5)">椹冲洖閫�鍥炵敵璇�</el-button>
+                      <el-button  v-if="model.status == 6 || model.status == 7|| model.status == 8 || model.status == 11" type="primary" @click="$refs.OperaInsuranceApplyCheckWindow.open('椹冲洖閫�鍥炵敵璇�',model,5)">椹冲洖閫�鍥炵敵璇�</el-button>
                       <el-button v-if="model.status == 0" type="primary" @click="$refs.InsuranceDetails.open('鎶曚繚瀹℃牳',model,1)">鎶曚繚瀹℃牳</el-button>
                       <el-button v-if="model.status != 5 && model.status != 4 && model.status != 1" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('閫�鍥炴姇淇�',model,1)">閫�鍥炴姇淇�</el-button>
                       <el-button v-if="model.status == 5" type="danger" @click="$refs.OperaInsuranceApplyCheckWindow.open('淇敼淇濋櫓鍗�',model,4)">淇敼淇濋櫓鍗�</el-button>
@@ -253,7 +253,7 @@
                             :key="Math.random()"
                             align="center"
                             prop="fee"
-                            label="宸蹭骇鐢熻垂鐢紙鍏冿級">
+                            label="浜х敓璐圭敤">
                         </el-table-column>
                     </el-table>
                     <el-table
@@ -262,14 +262,15 @@
                         ref="table"
                         v-if="activeName === '1'"
                         style="width: 100%">
-                        <el-table-column label="搴忓彿"
-                                         align="center">
+                        <el-table-column
+                            label="搴忓彿"
+                            align="center">
                             <template slot-scope="scope">
                                 <span>{{scope.$index + 1}}</span>
                             </template>
                         </el-table-column>
                         <el-table-column label="淇濆崟鐘舵��" :key="Math.random()"
-                                         align="center">
+                             align="center">
                             <template slot-scope="{row}">
                                 <span :class="'change-status'+row.status" v-if="row.status === 0">寰呯缃�</span>
                                 <span :class="'change-status'+row.status" v-if="row.status === 1">寰呭鏍�</span>
@@ -574,6 +575,9 @@
          } else {
              this.formInline.applyStatus = ''
          }
+         this.formInline.start = ''
+          this.formInline.startTimeE = ''
+          this.formInline.endTimeE = ''
          this.list = []
           this.list1 = []
           this.list2 = []
@@ -595,19 +599,19 @@
       changeStart(e) {
             if (e.length > 0) {
                 this.formInline.startTimeS = e[0]
-                this.formInline.endTimeS = e[1]
+                this.formInline.startTimeE = e[1]
             } else {
                 this.formInline.startTimeS = ''
-                this.formInline.endTimeS = ''
+                this.formInline.startTimeE = ''
             }
             this.search()
       },
       changeEnd(e) {
          if (e.length > 0) {
-             this.formInline.startTimeE = e[0]
+             this.formInline.endTimeS = e[0]
              this.formInline.endTimeE = e[1]
          } else {
-             this.formInline.startTimeE = ''
+             this.formInline.endTimeS = ''
              this.formInline.endTimeE = ''
          }
           this.search()
diff --git a/company/src/components/business/OperaSolutionsDescWindow.vue b/company/src/components/business/OperaSolutionsDescWindow.vue
index 1cefecd..c0d9bc0 100644
--- a/company/src/components/business/OperaSolutionsDescWindow.vue
+++ b/company/src/components/business/OperaSolutionsDescWindow.vue
@@ -3,7 +3,7 @@
         :title="title"
         width="50%"
         text="淇敼"
-        :visible="userInfo.type !== 1"
+        :withFooter="userInfo.type !== 1"
         :visible.sync="visible"
         :confirm-working="isWorking"
         @confirm="$refs.operaSolutionsWindow.open('缂栬緫鏂规', form)"
diff --git a/company/src/components/business/detailsPolicyholder.vue b/company/src/components/business/detailsPolicyholder.vue
new file mode 100644
index 0000000..3fe84cd
--- /dev/null
+++ b/company/src/components/business/detailsPolicyholder.vue
@@ -0,0 +1,229 @@
+<template>
+    <GlobalWindow
+        :title="title"
+        width="100%"
+        :visible.sync="visible"
+        :confirm-working="isWorking"
+        @confirm="confirm"
+    >
+        <div class="box">
+            <div class="top">
+                {{title}}
+            </div>
+            <div class="box_table">
+                <div class="box_table_head">
+                    <div class="box_table_head_item">鎶曚繚浼佷笟</div>
+                    <div class="box_table_head_item">淇濋櫓鏂规</div>
+                    <div class="box_table_head_item">淇濋櫓鐢熸晥璧锋湡</div>
+                    <div class="box_table_head_item">淇濋櫓鐢熸晥姝㈡湡</div>
+                    <div class="box_table_head_item">鎶曚繚浜烘暟</div>
+                    <div class="box_table_head_item">鎬昏垂鐢�(鍏�)</div>
+                </div>
+                <div class="box_table_content "  >
+                    <div class="box_table_content_item box_table_content_header">{{ model.companyName }}</div>
+                    <div class="box_table_content_item box_table_content_header">{{ model.solutionName }}</div>
+                    <div class="box_table_content_item box_table_content_header">{{ model.applyStartTime }}</div>
+                    <div class="box_table_content_item box_table_content_header">{{ model.applyEndTime }}</div>
+                    <div class="box_table_content_item box_table_content_header">{{ model.insureNum }}</div>
+                    <div class="box_table_content_item box_table_content_header">{{model.totalPrice}}</div>
+                </div>
+            </div>
+            <div class="box_table" v-if="model">
+                <div class="box_table_head">
+                    <div class="box_table_head_item">搴忓彿</div>
+                    <div class="box_table_head_item">鍛樺伐濮撳悕</div>
+                    <div class="box_table_head_item">韬唤璇佸彿</div>
+                    <div class="box_table_head_item">鎬у埆</div>
+                    <div class="box_table_head_item">娲鹃仯鍗曚綅</div>
+                    <div class="box_table_head_item">鎵�灞炲伐绉�</div>
+                </div>
+                <div class="box_table_content" v-for="(item, index) in model.detailList" :key="index">
+                    <div class="box_table_content_item">{{index + 1}}</div>
+                    <div class="box_table_content_item">{{ item.memberName }}</div>
+                    <div class="box_table_content_item">{{ item.idCard }}</div>
+                    <div class="box_table_content_item">{{ getGender(item.idCard) }}</div>
+                    <div class="box_table_content_item">{{ item.duName }}</div>
+                    <div class="box_table_content_item">{{ item.workTypeName}}</div>
+                </div>
+            </div>
+        </div>
+        <template v-slot:footer>
+            <el-button type="primary" @click="submit">纭畾</el-button>
+            <el-button @click="visible=false">鍙栨秷</el-button>
+        </template>
+    </GlobalWindow>
+</template>
+
+<script>
+    import BaseOpera from '@/components/base/BaseOpera'
+    import GlobalWindow from '@/components/common/GlobalWindow'
+    export default {
+        name: 'InsuranceDetails',
+        extends: BaseOpera,
+        components: { GlobalWindow },
+        data () {
+            return {
+                model:{}
+            }
+        },
+        methods: {
+            open(title, target){
+                this.title = title
+                this.visible = true
+                this.model = target
+            },
+            submit() {
+                this.$emit('success')
+                this.visible = false
+            },
+            getGender(idCardNumber) {
+                // 浣跨敤姝e垯琛ㄨ揪寮忔彁鍙栬韩浠借瘉鍙风爜鐨勭17浣嶆暟瀛�
+                const genderCode = idCardNumber.substr(-2);
+
+                if (genderCode % 2 === 0) {
+                    return '濂�';
+                } else {
+                    return '鐢�';
+                }
+            },
+        }
+    }
+</script>
+
+<style lang="scss" scoped>
+    .box {
+        width: 100%;
+        .top{
+            width: 100%;
+            align-items: center;
+            flex-wrap: wrap;
+            border-top: 1px solid #b4bbc5;
+            border-left: 1px solid #b4bbc5;
+            font-size: 14px;
+            font-weight: bold;
+            text-align: center;
+            padding: 15px;
+            box-sizing: border-box;
+        }
+        .box_header {
+            width: 100%;
+            display: flex;
+            align-items: center;
+            flex-wrap: wrap;
+            border-top: 1px solid #b4bbc5;
+            border-left: 1px solid #b4bbc5;
+            .box_header_item {
+                width: 50%;
+                height: 50px;
+                display: flex;
+                align-items: center;
+                border-right: 1px solid #b4bbc5;
+                border-bottom: 1px solid #b4bbc5;
+                box-sizing: border-box;
+                .box_header_item_label {
+                    flex: 1;
+                    height: 100%;
+                    display: flex;
+                    align-items: center;
+                    justify-content: center;
+                    font-size: 14px;
+                    color: black;
+                    background: #f2f2f2;
+                    border-right: 1px solid #b4bbc5;
+                }
+                .box_header_item_val {
+                    flex: 1;
+                    height: 100%;
+                    display: flex;
+                    align-items: center;
+                    justify-content: center;
+                    font-size: 14px;
+                    color: black;
+                }
+            }
+        }
+        .box_table {
+            width: 100%;
+            border-top: 1px solid #b4bbc5;
+            border-left: 1px solid #b4bbc5;
+            box-sizing: border-box;
+            .box_table_head {
+                width: 100%;
+                display: flex;
+                align-items: center;
+                .box_table_head_item {
+                    flex: 1;
+                    height: 50px;
+                    background: #f2f2f2;
+                    display: flex;
+                    align-items: center;
+                    justify-content: center;
+                    font-size: 14px;
+                    color: black;
+                    border-right: 1px solid #b4bbc5;
+                    border-bottom: 1px solid #b4bbc5;
+                    box-sizing: border-box;
+                    &:nth-child(1) {
+                        //flex: 0.5;
+                    }
+                }
+                .box_table_head_item5 {
+                    flex: 1;
+                    height: 50px;
+                    background: #f2f2f2;
+                    display: flex;
+                    align-items: center;
+                    justify-content: center;
+                    font-size: 14px;
+                    color: black;
+                    border-right: 1px solid #b4bbc5;
+                    border-bottom: 1px solid #b4bbc5;
+                    box-sizing: border-box;
+                    &:nth-child(2) {
+                        flex: 5;
+                    }
+                }
+                .box_form_item {
+                    flex: 1;
+                    height: 50px;
+                    background: #ffffff;
+                    display: flex;
+                    align-items: center;
+                    justify-content: center;
+                    font-size: 14px;
+                    color: black;
+                    border-right: 1px solid #b4bbc5;
+                    border-bottom: 1px solid #b4bbc5;
+                    box-sizing: border-box;
+                    &:nth-child(1) {
+                        //flex: 0.5;
+                    }
+                }
+            }
+            .box_table_content {
+                width: 100%;
+                display: flex;
+                align-items: center;
+                .box_table_content_header{
+                    border-bottom: 0px solid #b4bbc5 !important;
+                }
+                .box_table_content_item {
+                    flex: 1;
+                    height: 50px;
+                    background: #ffffff;
+                    display: flex;
+                    align-items: center;
+                    justify-content: center;
+                    font-size: 14px;
+                    color: black;
+                    border-right: 1px solid #b4bbc5;
+                    border-bottom: 1px solid #b4bbc5;
+                    box-sizing: border-box;
+                    &:nth-child(1) {
+                        // flex: 0.5;
+                    }
+                }
+            }
+        }
+    }
+</style>
diff --git a/company/src/components/enterprise/OperaDispatchUnitWindow.vue b/company/src/components/enterprise/OperaDispatchUnitWindow.vue
index 81e0e66..4f7bda4 100644
--- a/company/src/components/enterprise/OperaDispatchUnitWindow.vue
+++ b/company/src/components/enterprise/OperaDispatchUnitWindow.vue
@@ -10,9 +10,9 @@
             <el-form-item label="娲鹃仯鍗曚綅鍚嶇О" prop="name">
                 <el-input v-model="form.name" placeholder="璇疯緭鍏�" v-trim/>
             </el-form-item>
-            <el-form-item label="娲鹃仯鍗曚綅淇$敤浠g爜" prop="code">
-                <el-input v-model="form.code" placeholder="璇疯緭鍏�" v-trim/>
-            </el-form-item>
+<!--            <el-form-item label="娲鹃仯鍗曚綅淇$敤浠g爜" prop="code">-->
+<!--                <el-input v-model="form.code" placeholder="璇疯緭鍏�" v-trim/>-->
+<!--            </el-form-item>-->
             <el-form-item label="娲鹃仯鍗曚綅鎻忚堪" prop="content">
                 <el-input v-model="form.content" placeholder="璇疯緭鍏�" v-trim/>
             </el-form-item>
@@ -130,12 +130,12 @@
         name: [
           { required: true, message: '璇疯緭鍏ユ淳閬e崟浣嶅悕绉�' }
         ],
-        code: [
-          { required: true, message: '璇疯緭鍏ユ淳閬e崟浣嶄俊鐢ㄤ唬鐮�' }
-        ],
-        content: [
-          { required: true, message: '璇疯緭鍏ユ淳閬e崟浣嶆弿杩�' }
-        ]
+        // code: [
+        //   { required: true, message: '璇疯緭鍏ユ淳閬e崟浣嶄俊鐢ㄤ唬鐮�' }
+        // ],
+        // content: [
+        //   { required: true, message: '璇疯緭鍏ユ淳閬e崟浣嶆弿杩�' }
+        // ]
       },
       insuranceScheme: []
     }
diff --git a/company/src/components/enterprise/OperaInsuranceApplyWindow.vue b/company/src/components/enterprise/OperaInsuranceApplyWindow.vue
index 9dbd1e4..6295d2b 100644
--- a/company/src/components/enterprise/OperaInsuranceApplyWindow.vue
+++ b/company/src/components/enterprise/OperaInsuranceApplyWindow.vue
@@ -138,6 +138,8 @@
         <importEmployees ref="importEmployees" @result="getValue" />
         <!--    纭宸ョ    -->
         <confirmJobType ref="confirmJobType" @result="getUser" />
+        <!--    鏌ョ湅璇﹀崟    -->
+        <detailsPolicyholder ref="detailsPolicyholder" @success="successEvent" />
     </GlobalWindow>
 </template>
 
@@ -148,12 +150,14 @@
 import addEmployee from '@/components/enterprise/addEmployee'
 import importEmployees from '@/components/enterprise/importEmployees'
 import confirmJobType from '@/components/enterprise/confirmJobType'
+import detailsPolicyholder from '@/components/business/detailsPolicyholder'
 import { all, getNewVersion } from '@/api/business/solutions'
+import { mapState } from 'vuex'
 import { create, getCountCyclePriceVO, getDetail, findList, updateData } from '@/api/business/insuranceApply'
 export default {
   name: 'OperaInsuranceApplyWindow2',
   extends: BaseOpera,
-  components: { GlobalWindow, selectEmployees, addEmployee, importEmployees, confirmJobType },
+  components: { GlobalWindow, selectEmployees, addEmployee, importEmployees, confirmJobType, detailsPolicyholder },
   data () {
     return {
       form: {
@@ -163,6 +167,7 @@
           applyStartTime: '',
           applyEndTime: ''
       },
+      solutionName: '',
       type: '',
       pickerOptions: {}, // 瀛樻斁picker options鐨勫彉閲�
       price: '',
@@ -187,7 +192,52 @@
           'field.id': 'id'
       })
   },
+    computed: {
+      ...mapState(['userInfo'])
+    },
     methods: {
+      successEvent() {
+          let arr = JSON.parse(JSON.stringify(this.tableData))
+          arr.forEach(item => {
+              item.idcardNo = item.idCard
+          })
+          this.isWorking = true
+          // if (!this.form.id) {
+              create({
+                  applyDetailList: arr,
+                  applyStartTime: this.form.applyStartTime,
+                  applyEndTime: this.form.applyEndTime,
+                  solutionId: this.form.solutionId
+              }).then(() => {
+                  this.visible = false
+                  this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
+                  this.$emit('success')
+              })
+                  .catch(e => {
+                      this.$tip.apiFailed(e)
+                  })
+                  .finally(() => {
+                      this.isWorking = false
+                  })
+          // } else {
+          //     updateData({
+          //         id: this.form.id,
+          //         applyDetailList: arr,
+          //         applyStartTime: this.form.applyStartTime,
+          //         applyEndTime: this.form.applyEndTime,
+          //         solutionId: this.form.solutionId
+          //     }).then(() => {
+          //         this.visible = false
+          //         this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
+          //         this.$emit('success')
+          //     }).catch(e => {
+          //         this.$tip.apiFailed(e)
+          //     })
+          //         .finally(() => {
+          //             this.isWorking = false
+          //         })
+          // }
+      },
       open (title, target) {
           this.title = title
           this.tableData = []
@@ -277,52 +327,68 @@
                         return
                     }
                     for (let i = 0; i < this.tableData.length; i++) {
-                        console.log(this.tableData[i].worktypeId, this.tableData[i].duId)
+                        console.log(this.tableData[i].worktypeId)
+                        console.log(this.tableData[i].duId)
                         if (!this.tableData[i].worktypeId || !this.tableData[i].duId) {
                             this.$message.warning('璇峰畬鍠勬淳閬e崟浣嶅拰宸ョ淇℃伅')
                             return
                         }
                     }
-                    let arr = JSON.parse(JSON.stringify(this.tableData))
-                    arr.forEach(item => {
-                        item.idcardNo = item.idCard
+
+                    let price = 0
+                    this.tableData.forEach(item => {
+                        price = price + item.fee
                     })
-                    this.isWorking = true
-                    if (!this.form.id) {
-                        create({
-                            applyDetailList: arr,
-                            applyStartTime: this.form.applyStartTime,
-                            applyEndTime: this.form.applyEndTime,
-                            solutionId: this.form.solutionId
-                        }).then(() => {
-                            this.visible = false
-                            this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
-                            this.$emit('success')
-                        })
-                            .catch(e => {
-                                this.$tip.apiFailed(e)
-                            })
-                            .finally(() => {
-                                this.isWorking = false
-                            })
-                    } else {
-                        updateData({
-                            id: this.form.id,
-                            applyDetailList: arr,
-                            applyStartTime: this.form.applyStartTime,
-                            applyEndTime: this.form.applyEndTime,
-                            solutionId: this.form.solutionId
-                        }).then(() => {
-                            this.visible = false
-                            this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
-                            this.$emit('success')
-                        }).catch(e => {
-                            this.$tip.apiFailed(e)
-                        })
-                        .finally(() => {
-                            this.isWorking = false
-                        })
-                    }
+                    this.$refs.detailsPolicyholder.open('鎶曚繚璇︽儏鍗�', {
+                        companyName: this.userInfo.company.name,
+                        solutionName: this.item.name,
+                        applyStartTime: this.form.applyStartTime,
+                        applyEndTime: this.form.applyEndTime,
+                        insureNum: this.tableData.length,
+                        totalPrice: price,
+                        detailList: this.tableData
+                    })
+
+                    // let arr = JSON.parse(JSON.stringify(this.tableData))
+                    // arr.forEach(item => {
+                    //     item.idcardNo = item.idCard
+                    // })
+                    // this.isWorking = true
+                    // if (!this.form.id) {
+                    //     create({
+                    //         applyDetailList: arr,
+                    //         applyStartTime: this.form.applyStartTime,
+                    //         applyEndTime: this.form.applyEndTime,
+                    //         solutionId: this.form.solutionId
+                    //     }).then(() => {
+                    //         this.visible = false
+                    //         this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
+                    //         this.$emit('success')
+                    //     })
+                    //         .catch(e => {
+                    //             this.$tip.apiFailed(e)
+                    //         })
+                    //         .finally(() => {
+                    //             this.isWorking = false
+                    //         })
+                    // } else {
+                    //     updateData({
+                    //         id: this.form.id,
+                    //         applyDetailList: arr,
+                    //         applyStartTime: this.form.applyStartTime,
+                    //         applyEndTime: this.form.applyEndTime,
+                    //         solutionId: this.form.solutionId
+                    //     }).then(() => {
+                    //         this.visible = false
+                    //         this.$tip.apiSuccess('鎿嶄綔鎴愬姛')
+                    //         this.$emit('success')
+                    //     }).catch(e => {
+                    //         this.$tip.apiFailed(e)
+                    //     })
+                    //     .finally(() => {
+                    //         this.isWorking = false
+                    //     })
+                    // }
 
                 }
             })
@@ -386,7 +452,7 @@
               this.$message.warning('璇峰厛閫夋嫨淇濋櫓鏂规')
               return
           }
-          this.$refs.importEmployees.open('涓婁紶鍚嶅崟', { arr: this.tableData, price: this.price })
+          this.$refs.importEmployees.open('涓婁紶鍚嶅崟', { arr: this.tableData, solutionId: this.form.solutionId, type: 1, price: this.price })
       },
       // 鍒囨崲鏂规
       changeSolution(e) {
diff --git a/company/src/components/enterprise/confirmJobType.vue b/company/src/components/enterprise/confirmJobType.vue
index f0f79ce..09b1325 100644
--- a/company/src/components/enterprise/confirmJobType.vue
+++ b/company/src/components/enterprise/confirmJobType.vue
@@ -65,7 +65,7 @@
             getFindListByDTO () {
                 findListByDTO({
                     solutionId: this.form.solutionId,
-                    dataType: 0
+                    // dataType: 0
                 }).then(res => {
                     this.dispatching = res
                 })
diff --git a/company/src/components/enterprise/dispatchUnitDetails.vue b/company/src/components/enterprise/dispatchUnitDetails.vue
index fab9807..ddeb6c6 100644
--- a/company/src/components/enterprise/dispatchUnitDetails.vue
+++ b/company/src/components/enterprise/dispatchUnitDetails.vue
@@ -12,10 +12,10 @@
                     <div class="info_list_item_label">娲鹃仯鍗曚綅锛�</div>
                     <div class="info_list_item_val">{{form.name}}</div>
                 </div>
-                <div class="info_list_item">
-                    <div class="info_list_item_label">娲鹃仯鍗曚綅淇$敤浠g爜锛�</div>
-                    <div class="info_list_item_val">{{form.code}}</div>
-                </div>
+<!--                <div class="info_list_item">-->
+<!--                    <div class="info_list_item_label">娲鹃仯鍗曚綅淇$敤浠g爜锛�</div>-->
+<!--                    <div class="info_list_item_val">{{form.code}}</div>-->
+<!--                </div>-->
                 <div class="info_list_item">
                     <div class="info_list_item_label">娲鹃仯鍗曚綅鐘舵�侊細</div>
                     <div class="info_list_item_val" style="color:#2E68EC;" v-if="form.unitStatus === 0">寰呭鏍�</div>
@@ -236,7 +236,7 @@
                 margin-bottom: 15px;
                 .info_list_item_label {
                     flex-shrink: 0;
-                    width: 150px;
+                    /*width: 150px;*/
                     font-size: 14px;
                     color: black;
                 }
diff --git a/company/src/components/enterprise/importEmployees.vue b/company/src/components/enterprise/importEmployees.vue
index c06e9a6..72e8cb1 100644
--- a/company/src/components/enterprise/importEmployees.vue
+++ b/company/src/components/enterprise/importEmployees.vue
@@ -31,6 +31,8 @@
             return {
                 list: [],
                 price: 0,
+                type: null,
+                solutionId: null,
                 addList: [],
                 fileName: ''
             }
@@ -40,13 +42,20 @@
                 this.title = title
                 this.addList = []
                 this.fileName = ''
+                this.type = obj.type
                 this.visible = true
+                this.solutionId = obj.solutionId
                 this.list = obj.arr
                 this.price = obj.price
             },
             // 瀵煎嚭妯℃澘
             exportTemplate () {
-                window.open(process.env.VUE_APP_MEMBER_URL)
+                // 鎶曚繚鐢宠
+                if (this.type === 1) {
+                    window.open(process.env.VUE_APP_MEMBER1_URL)
+                } else {
+                    window.open(process.env.VUE_APP_MEMBER_URL)
+                }
             },
             clickRef () {
                 this.$refs.fileExcel.click()
@@ -54,6 +63,7 @@
             result (e) {
                 const data = new FormData()
                 data.append('file', e.target.files[0])
+                data.append('solutionId', this.solutionId)
                 importExcel(data)
                     .then(res => {
                         res.forEach(item => {
diff --git a/company/src/components/enterprise/renewalInsurance.vue b/company/src/components/enterprise/renewalInsurance.vue
index bad4d11..6d7f44d 100644
--- a/company/src/components/enterprise/renewalInsurance.vue
+++ b/company/src/components/enterprise/renewalInsurance.vue
@@ -27,18 +27,25 @@
                 </template>
             </el-table-column>
             <el-table-column prop="insureNum" label="鎶曚繚浜烘暟"></el-table-column>
-            <el-table-column prop="serviceDays" label="鎶曚繚鏃堕暱锛堝ぉ锛�"></el-table-column>
+            <el-table-column label="鎶曚繚鏃堕暱锛堝ぉ锛�">
+                <template slot-scope="{row}">
+                    <span>{{row.serviceDays < 0 ? `-` : row.serviceDays}}</span>
+                </template>
+            </el-table-column>
             <el-table-column prop="currentFee" label="宸蹭骇鐢熻垂鐢�"></el-table-column>
             <el-table-column prop="fee" label="鎬昏垂鐢紙鍏冿級"></el-table-column>
-            <el-table-column prop="checkDate" label="鎻愪氦鏃ユ湡"></el-table-column>
-            <el-table-column prop="startTime" label="鎶曚繚鐢熸晥鏃ユ湡"></el-table-column>
-            <el-table-column prop="endTime" label="鎶曚繚澶辨晥鏃ユ湡"></el-table-column>
+            <el-table-column prop="endTime" label="淇濋櫓鐢熸晥姝㈡湡"></el-table-column>
+            <el-table-column label="澶辨晥鍓╀綑锛堝ぉ锛�">
+                <template slot-scope="{row}">
+                    <span style="color: #F95601;">{{row.loseEfficacyDays}}</span>
+                </template>
+            </el-table-column>
             <el-table-column
-                min-width="150"
+                min-width="100"
                 label="鎿嶄綔">
                 <template slot-scope="{row}">
                     <el-button type="text" @click="$refs.OperaInsuranceApply.open('缁繚', { id: row.id, type: 1 })">涓�浠剁画淇�</el-button>
-                    <el-button type="text" @click="dele(row)">鍒犻櫎鎻愰啋</el-button>
+<!--                    <el-button type="text" @click="dele(row)">鍒犻櫎鎻愰啋</el-button>-->
                 </template>
             </el-table-column>
         </el-table>
@@ -94,24 +101,13 @@
                     capacity: 10,
                     page: this.currentPage,
                     model: {
-                        loseEfficacy: 1
+                        loseEfficacy: 1,
+                        status: 5
                     }
                 }).then(res => {
                     this.tableData = res.records
                     this.total = res.total
                 })
-            },
-            dele(row) {
-                this.$confirm('纭畾鍏抽棴姝ゆ彁绀哄悧?', '鎻愮ず', {
-                    confirmButtonText: '纭畾',
-                    cancelButtonText: '鍙栨秷',
-                    type: 'warning'
-                }).then(() => {
-
-                }).catch(() => {
-
-                });
-                console.log(row)
             },
             successEvent(){
                 this.$emit('success')
diff --git a/company/src/layouts/AppLayout.vue b/company/src/layouts/AppLayout.vue
index f073fc6..43e3677 100644
--- a/company/src/layouts/AppLayout.vue
+++ b/company/src/layouts/AppLayout.vue
@@ -11,7 +11,7 @@
           <AppHeader/>
         </header>
         <div style="height:10px;"></div>
-        <main>
+        <main ref="containerS">
           <transition name="fade">
 <!--            <keep-alive>-->
               <router-view></router-view>
@@ -29,19 +29,28 @@
 import Header from '@/components/common/Header'
 import CommonHeader from '@/components/common/CommonHeader'
 import Menu from '@/components/common/Menu'
+import Watermark from "@/utils/waterMark";
 export default {
   name: 'DefaultLayout',
   components: { AppHeader: Header, Menu, CommonHeader },
   data() {
     return {
-      isFinishData: false
+      isFinishData: false,
+        orgBackground: ''
     }
   },
   computed: {
     ...mapState(['menuData', 'userInfo'])
   },
 
-  methods: {
+    mounted() {
+      // 浼佷笟绔敤鎴疯缃按鍗�
+      if (this.userInfo.type === 1) {
+          Watermark.set(this.userInfo.company.name, this.$refs.containerS);
+      }
+    },
+
+    methods: {
 
   },
 }
@@ -99,6 +108,7 @@
     }
     & > main {
       height: 100%;
+        box-sizing: border-box;
       overflow-y: auto;
     }
   }
diff --git a/company/src/utils/waterMark.js b/company/src/utils/waterMark.js
new file mode 100644
index 0000000..a16cf6e
--- /dev/null
+++ b/company/src/utils/waterMark.js
@@ -0,0 +1,56 @@
+'use strict'
+const watermark = {}
+const setWatermark = (str, container) => {
+    const id = '1.23452384164.123412415'
+    if (container === undefined) {
+        return
+    }
+
+    // 鏌ョ湅椤甸潰涓婃湁娌℃湁锛屽鏋滄湁鍒欏垹闄�
+    if (document.getElementById(id) !== null) {
+        const childelement = document.getElementById(id)
+        childelement.parentNode.removeChild(childelement)
+    }
+    var containerWidth = container.offsetWidth // 鑾峰彇鐖跺鍣ㄥ
+    var containerHeight = container.offsetHeight // 鑾峰彇鐖跺鍣ㄩ珮
+    container.style.position = 'relative' // 璁剧疆甯冨眬涓虹浉瀵瑰竷灞�
+    // 鍒涘缓canvas鍏冪礌(鍏堝埗浣滀竴鍧楄儗鏅浘)
+    const can = document.createElement('canvas')
+    can.width = 300 // 璁剧疆姣忎竴鍧楃殑瀹藉害
+    can.height = 260 // 楂樺害
+    const cans = can.getContext('2d') // 鑾峰彇canvas鐢诲竷
+    cans.rotate(-20 * Math.PI / 180) // 閫嗘椂閽堟棆杞�/9
+    cans.font = '24px Vedana' // 璁剧疆瀛椾綋
+    cans.fillStyle = 'rgba(0, 0, 0, 0.1)' // 璁剧疆瀛椾綋鐨勯鑹�
+    cans.textAlign = 'left' // 鏂囨湰瀵归綈鏂瑰紡
+    cans.textBaseline = 'Middle' // 鏂囨湰鍩虹嚎
+    cans.fillText(str, 0, 4 * can.height / 5) // 缁樺埗鏂囧瓧
+    // 鍒涘缓涓�涓猟iv鍏冪礌
+    const div = document.createElement('div')
+    div.id = id // 璁剧疆id
+    div.style.pointerEvents = 'none' // 鍙栨秷鎵�鏈変簨浠�
+    div.style.top = '0px'
+    div.style.left = '0px'
+    div.style.position = 'absolute'
+    div.style.zIndex = '100000'
+    div.style.width = '100%'
+    // div.style.width = containerWidth + 'px'
+    div.style.height = containerHeight + 'px'
+    div.style.background = 'url(' + can.toDataURL('image/png') + ') left top repeat'
+    container.appendChild(div) // 杩藉姞鍒伴〉闈�
+    return id
+}
+// 璇ユ柟娉曞彧鍏佽璋冪敤涓�娆�
+watermark.set = (str, container) => {
+    let id = setWatermark(str, container)
+    setInterval(() => {
+        if (document.getElementById(id) === null) {
+            id = setWatermark(str, container)
+        }
+    }, 500)
+    // 鐩戝惉椤甸潰澶у皬鐨勫彉鍖�
+    window.onresize = () => {
+        setWatermark(str, container)
+    }
+}
+export default watermark
diff --git a/company/src/views/business/insuranceApply.vue b/company/src/views/business/insuranceApply.vue
index ac5716b..361228f 100644
--- a/company/src/views/business/insuranceApply.vue
+++ b/company/src/views/business/insuranceApply.vue
@@ -18,9 +18,9 @@
                 <el-select v-model="searchForm.companyId" placeholder="璇烽�夋嫨" @change="search">
                     <el-option
                         v-for="item in companyList"
-                        :key="item.baseId"
+                        :key="item.id"
                         :label="item.name"
-                        :value="item.baseId">
+                        :value="item.id">
                     </el-option>
                 </el-select>
             </el-form-item>
diff --git a/company/src/views/business/solutions.vue b/company/src/views/business/solutions.vue
index e8fbcc0..03873fc 100644
--- a/company/src/views/business/solutions.vue
+++ b/company/src/views/business/solutions.vue
@@ -67,6 +67,7 @@
                         </el-switch>
                     </template>
                 </el-table-column>
+                <el-table-column prop="createDate" label="鏂规鏃ユ湡" min-width="100px"></el-table-column>
                 <el-table-column
                     v-if="containPermissions(['business:solutions:update', 'business:solutions:delete'])"
                     label="鎿嶄綔"
diff --git a/company/src/views/enterprise/insuranceApply.vue b/company/src/views/enterprise/insuranceApply.vue
index 617c916..f2df5a6 100644
--- a/company/src/views/enterprise/insuranceApply.vue
+++ b/company/src/views/enterprise/insuranceApply.vue
@@ -62,7 +62,11 @@
                 </el-table-column>
                 <el-table-column prop="solutionsName" label="淇濋櫓鏂规"></el-table-column>
                 <el-table-column prop="insureNum" label="鎶曚繚浜烘暟"></el-table-column>
-                <el-table-column prop="serviceDays" label="鎶曚繚鏃堕暱锛堝ぉ锛�"></el-table-column>
+                <el-table-column label="鎶曚繚鏃堕暱锛堝ぉ锛�">
+                    <template slot-scope="{row}">
+                        <span>{{(row.serviceDays - row.loseEfficacyDays) < 0 ? `-` : row.serviceDays - row.loseEfficacyDays}}</span>
+                    </template>
+                </el-table-column>
                 <el-table-column prop="fee" label="鎬昏垂鐢紙鍏冿級"></el-table-column>
                 <el-table-column prop="checkDate" label="鎻愪氦鏃ユ湡"></el-table-column>
                 <el-table-column prop="startTime" label="鎶曚繚鐢熸晥鏃ユ湡"></el-table-column>
diff --git a/company/src/views/enterprise/myPolicy.vue b/company/src/views/enterprise/myPolicy.vue
index c87b329..887b8c7 100644
--- a/company/src/views/enterprise/myPolicy.vue
+++ b/company/src/views/enterprise/myPolicy.vue
@@ -93,7 +93,11 @@
                     </template>
                 </el-table-column>
                 <el-table-column prop="insureNum" label="鎶曚繚浜烘暟"></el-table-column>
-                <el-table-column prop="serviceDays" label="鎶曚繚鏃堕暱锛堝ぉ锛�"></el-table-column>
+                <el-table-column label="鎶曚繚鏃堕暱锛堝ぉ锛�">
+                    <template slot-scope="{row}">
+                        <span>{{(row.serviceDays - row.loseEfficacyDays) < 0 ? `-` : row.serviceDays - row.loseEfficacyDays}}</span>
+                    </template>
+                </el-table-column>
                 <el-table-column prop="currentFee" label="宸蹭骇鐢熻垂鐢�"></el-table-column>
                 <el-table-column prop="fee" label="鎬昏垂鐢紙鍏冿級"></el-table-column>
                 <el-table-column prop="checkDate" label="鎻愪氦鏃ユ湡"></el-table-column>
@@ -107,9 +111,9 @@
                 >
                     <template slot-scope="{row}">
                         <el-button type="text" @click="$refs.OperaInsuranceApplyDetails.open('鎶曚繚璇︽儏', { id: row.id })" v-permissions="['business:insuranceapply:update']">鏌ョ湅璇︽儏</el-button>
-                        <template v-if="row.statusCollect === 2">
-                            <el-button type="text" @click="$refs.additionSubtractionApplication.open('鍔犲噺淇濈敵璇�', { id: row.id })">鍔犲噺淇濈敵璇�</el-button>
-                        </template>
+<!--                        <template v-if="row.statusCollect === 2">-->
+<!--                            <el-button type="text" @click="$refs.additionSubtractionApplication.open('鍔犲噺淇濈敵璇�', { id: row.id })">鍔犲噺淇濈敵璇�</el-button>-->
+<!--                        </template>-->
                     </template>
                 </el-table-column>
             </el-table>
diff --git a/company/vue.config.js b/company/vue.config.js
index f283dfd..c8c48d1 100644
--- a/company/vue.config.js
+++ b/company/vue.config.js
@@ -3,7 +3,7 @@
 // const outputDir = process.env.VUE_APP_CONTEXT_PATH.substring(1, process.env.VUE_APP_CONTEXT_PATH.length)
 module.exports = {
   publicPath: './',
-  outputDir: 'yyb_admin',
+  outputDir: 'yyb_web',
   assetsDir: 'static',
   lintOnSave: false,
   devServer: {
diff --git a/platform/src/layouts/AppLayout.vue b/platform/src/layouts/AppLayout.vue
index f073fc6..43e3677 100644
--- a/platform/src/layouts/AppLayout.vue
+++ b/platform/src/layouts/AppLayout.vue
@@ -11,7 +11,7 @@
           <AppHeader/>
         </header>
         <div style="height:10px;"></div>
-        <main>
+        <main ref="containerS">
           <transition name="fade">
 <!--            <keep-alive>-->
               <router-view></router-view>
@@ -29,19 +29,28 @@
 import Header from '@/components/common/Header'
 import CommonHeader from '@/components/common/CommonHeader'
 import Menu from '@/components/common/Menu'
+import Watermark from "@/utils/waterMark";
 export default {
   name: 'DefaultLayout',
   components: { AppHeader: Header, Menu, CommonHeader },
   data() {
     return {
-      isFinishData: false
+      isFinishData: false,
+        orgBackground: ''
     }
   },
   computed: {
     ...mapState(['menuData', 'userInfo'])
   },
 
-  methods: {
+    mounted() {
+      // 浼佷笟绔敤鎴疯缃按鍗�
+      if (this.userInfo.type === 1) {
+          Watermark.set(this.userInfo.company.name, this.$refs.containerS);
+      }
+    },
+
+    methods: {
 
   },
 }
@@ -99,6 +108,7 @@
     }
     & > main {
       height: 100%;
+        box-sizing: border-box;
       overflow-y: auto;
     }
   }

--
Gitblit v1.9.3