From 09da100729793848bc01b51f7b05ca3f1e7ec64f Mon Sep 17 00:00:00 2001
From: jiangping <jp@doumee.com>
Date: 星期四, 20 六月 2024 14:05:35 +0800
Subject: [PATCH] 提交一把

---
 company/src/components/business/OperaSolutionsWindow.vue |  144 ++++++++++++++++++++++++++++++++++++-----------
 1 files changed, 109 insertions(+), 35 deletions(-)

diff --git a/company/src/components/business/OperaSolutionsWindow.vue b/company/src/components/business/OperaSolutionsWindow.vue
index 61d2a8d..260c454 100644
--- a/company/src/components/business/OperaSolutionsWindow.vue
+++ b/company/src/components/business/OperaSolutionsWindow.vue
@@ -44,27 +44,29 @@
                     </el-select>
                 </div>
             </el-form-item>
-            <el-form-item label="淇濋櫓璐圭敤" prop="price">
+            <el-form-item label="鏂规璐圭敤" prop="price">
                 <div style="display: flex; align-items: center;">
                     <el-input v-model="form.price" style="flex: 1;" placeholder="璇疯緭鍏�" v-trim/>
                     <span style="margin: 0 30px;">鍏�/浜�</span>
-                    <el-select v-model="form.timeUnit" style="flex: 1;" placeholder="璇烽�夋嫨">
+                    <el-select v-model="form.timeUnit" style="flex: 1;" placeholder="璇烽�夋嫨鍛ㄦ湡鍗曚綅" @change="changeTimeUnit">
                         <el-option label="澶�" :value="0"></el-option>
 <!--                        <el-option label="鍗婃湀" :value="1"></el-option>-->
-                        <el-option label="鏈�" :value="2"></el-option>
-                        <el-option label="骞�" :value="3"></el-option>
+                      <el-option label="鏈�" :value="2"></el-option>
+                      <el-option label="瀛e害" :value="3"></el-option>
+                      <el-option label="鍗婂勾" :value="4"></el-option>
+                      <el-option label="骞�" :value="5"></el-option>
                     </el-select>
                 </div>
             </el-form-item>
-            <el-form-item label="鎶曚繚鍛ㄦ湡" prop="insureCycle">
+            <el-form-item label="鎵规敼璁¤垂瑙勫垯" prop="insureCycleUnit">
                 <div style="display: flex; align-items: center;">
-                    <el-input v-model="form.insureCycle" style="flex: 1;" placeholder="璇疯緭鍏�" v-trim/>
-                    <span style="margin: 0 30px;"></span>
                     <el-select v-model="form.insureCycleUnit" style="flex: 1;" placeholder="璇烽�夋嫨">
-                        <el-option label="澶�" :value="0"></el-option>
-<!--                        <el-option label="鍗婃湀" :value="1"></el-option>-->
-                        <el-option label="鏈�" :value="2"></el-option>
-                        <el-option label="骞�" :value="3"></el-option>
+                        <el-option  label="澶�" :value="0"></el-option>
+                        <el-option v-if="form.timeUnit>=1"  label="鍗婃湀" :value="1"></el-option>
+                        <el-option v-if="form.timeUnit>=2"  label="鏈�" :value="2"></el-option>
+                        <el-option v-if="form.timeUnit>=3"  label="瀛e害" :value="3"></el-option>
+                        <el-option  v-if="form.timeUnit>=4"  label="鍗婂勾" :value="4"></el-option>
+                        <el-option v-if="form.timeUnit>=5" label="骞�" :value="5"></el-option>
                     </el-select>
                 </div>
             </el-form-item>
@@ -76,9 +78,34 @@
                             <el-radio :label="1">娆℃湀鐢熸晥</el-radio>
                         </el-radio-group>
                     </div>
-                    <el-input style="margin-left: 20px;" type="number" v-model="form.validTypeNum" placeholder="璇疯緭鍏ュ欢杩熷ぉ鏁�" v-if="form.validType === 0"></el-input>
+                    <el-input style="margin-left: 20px;" type="number" v-model="form.validTypeNum"   placeholder="璇疯緭鍏ュ欢杩熷ぉ鏁�" v-if="form.validType === 0"></el-input>
                 </div>
             </el-form-item>
+          <el-form-item label="鎵规敼鏀寔" >
+            <div style="width: 100%; display: flex; align-items: center;">
+              <el-checkbox :true-label="1" :false-label="0"   v-model="form.canAdd">鍔犱繚</el-checkbox>
+              <el-checkbox :true-label="1" :false-label="0"   v-model="form.canReduce">鍑忎繚</el-checkbox>
+              <el-checkbox :true-label="1" :false-label="0"   v-model="form.canChangeUnit">鏇存崲娲鹃仯鍗曚綅</el-checkbox>
+            </div>
+          </el-form-item>
+          <el-form-item label="鎵瑰噺鍙敮鎸佹浛鎹紙鍑忎繚鎵规敼浠呮敮鎸佹浛鎹汉鍛�,鍗冲噺淇濅汉鍛樹笉灏戜簬鍔犱繚浜哄憳鏁伴噺锛�"  prop="delOnlyReplace" v-if="form.insureCycleUnit===0 || (form.insureCycleUnit===form.timeUnit)">
+            <div style="width: 100%; display: flex; align-items: center;">
+              <el-radio-group v-model="form.delOnlyReplace">
+              <el-radio :label="1">鏄�</el-radio>
+              <el-radio :label="0">鍚�</el-radio>
+              </el-radio-group>
+            </div>
+          </el-form-item>
+          <el-form-item label="鎵瑰鐢熸晥锛堝ぉ鏁帮級" prop="addValidDays" v-if="form.delOnlyReplace != 1">
+            <div style="width: 100%; display: flex; align-items: center;">
+              <el-input style="margin-left: 0px;" type="number" v-model="form.addValidDays"   placeholder="璇疯緭鍏ユ壒澧炵敓鏁堟椂闂达紙澶╂暟锛�" ></el-input>
+            </div>
+          </el-form-item>
+          <el-form-item label="鎵瑰噺鐢熸晥锛堝ぉ鏁帮級" prop="delValidDays">
+            <div style="width: 100%; display: flex; align-items: center;">
+              <el-input style="margin-left: 0px;" type="number" v-model="form.delValidDays"   placeholder="璇疯緭鍏ユ壒鍑忕敓鏁堟椂闂达紙澶╂暟锛�" ></el-input>
+            </div>
+          </el-form-item>
             <el-form-item label="鎶曚繚绫诲瀷" prop="type">
                 <el-radio-group v-model="form.type" :disabled="form.id!=null">
                     <el-radio :label="0" >鐩翠繚</el-radio>
@@ -141,13 +168,13 @@
                 </el-table-column>
             </el-table>
             <el-form-item label="鐗瑰埆绾﹀畾" prop="specialAgreement">
-                <el-input type="textarea" v-model="form.specialAgreement" placeholder="璇疯緭鍏ョ壒鍒害瀹�" v-trim/>
+                <RichEditor   :richData="form.specialAgreement" :styleEditor="'border: 1px solid #ccc;display: inline-block;'" @getWangedditor="getWangedditor" :readonly="false"/>
             </el-form-item>
             <el-form-item label="鐗瑰埆璇存槑" prop="specialInfo">
-                <el-input type="textarea" v-model="form.specialInfo" placeholder="璇疯緭鍏ョ壒鍒鏄�" v-trim/>
+              <RichEditor   :richData="form.specialInfo" :styleEditor="'border: 1px solid #ccc;display: inline-block;'" @getWangedditor="getWangedditor1" :readonly="false"/>
             </el-form-item>
-            <el-form-item label="鍏朵粬璇存槑" prop="ortherInfo">
-                <el-input type="textarea" v-model="form.ortherInfo" placeholder="璇疯緭鍏ュ叾浠栬鏄�" v-trim/>
+          <el-form-item label="鍏朵粬璇存槑" prop="ortherInfo">
+               <RichEditor   :richData="form.ortherInfo" :styleEditor="'border: 1px solid #ccc;display: inline-block;'" @getWangedditor="getWangedditor2" :readonly="false"/>
             </el-form-item>
         </el-form>
     </GlobalWindow>
@@ -160,11 +187,13 @@
 import { all as allWorktype } from '@/api/business/worktype'
 import { solutionsId } from '@/api/business/solutions'
 import { pageAll as shopList } from '@/api/business/company'
-import UploadFile from "@/components/common/UploadFile";
+import UploadFile from '@/components/common/UploadFile'
+import { checkMobile, numRule } from '@/utils/form'
+import RichEditor from '@/components/common/RichEditor'
 export default {
   name: 'OperaSolutionsWindow',
   extends: BaseOpera,
-  components: { GlobalWindow ,UploadFile},
+  components: { GlobalWindow, UploadFile, RichEditor },
   data () {
     var validType = (rule, value, callback) => {
       if (this.form.validType === 0 && !value) {
@@ -196,14 +225,29 @@
         ortherInfo: '',
         signKeyword: '',
         validTypeNum: '',
-        fileList1:[],
-        fanganFile:null,
+        canReduce: 0,
+        canChangeUnit: 0,
+        addValidDays: 0,
+        delValidDays: 0,
+        delOnlyReplace: 0,
+        canAdd: 0,
+        fileList1: [],
+        fanganFile: null,
         worktypeIdList: [{ worktypeId: '' }]
       },
       // 楠岃瘉瑙勫垯
       rules: {
         name: [
           { required: true, message: '璇疯緭鍏ユ柟妗堝悕绉�' }
+        ],
+        delOnlyReplace: [
+          { required: true, message: '璇烽�夋嫨' }
+        ],
+        addValidDays: [
+          { validator: numRule }
+        ],
+        delValidDays: [
+          { validator: numRule }
         ],
         insuranceId: [
           { required: true, message: '璇烽�夋嫨淇濋櫓鍏徃' }
@@ -215,10 +259,10 @@
           { required: true, message: '璇烽�夋嫨鎶曚繚骞撮緞' }
         ],
         price: [
-          { required: true, message: '璇疯緭鍏ヤ繚闄╄垂鐢�' }
+          { required: true, message: '璇疯緭鍏ユ柟妗堣垂鐢�' }
         ],
-        insureCycle: [
-          { required: true, message: '璇疯緭鍏ユ姇淇濆懆鏈�' }
+        insureCycleUnit: [
+          { required: true, message: '璇疯緭鍏ユ壒鏀硅璐瑰崟浣�' }
         ],
         validTypeNum: [
           { required: true, validator: validType }
@@ -242,8 +286,32 @@
     })
   },
   methods: {
-    editFanganFile(data){
-      this.form.fanganFile=data
+    getWangedditor(val){
+      this.form.specialAgreement = val;
+    },
+    getWangedditor1(val){
+      this.form.specialInfo = val;
+    },
+    getWangedditor2(val){
+      this.form.ortherInfo = val;
+    },
+
+    handNumberInput (value) {
+      const regex = /^[-+]?\d*$/
+      if (!regex.test(value)) {
+        // 濡傛灉杈撳叆鐨勪笉鏄暣鏁帮紝鍒欒缃负涓婁竴涓湁鏁堢殑鏁存暟鍊�
+        this.form.addValidDays = value.replace(/[^0-9]/g, '')
+        this.form.addValidDays = value.replace(/[^0-9]/g, '')
+        this.form.delValidDays = value.replace(/[^0-9]/g, '')
+      }
+    },
+    changeTimeUnit () {
+      if (this.form.timeUnit < this.form.insureCycleUnit) {
+        this.form.insureCycleUnit = null
+      }
+    },
+    editFanganFile (data) {
+      this.form.fanganFile = data
     },
     // 鍒囨崲鍏徃
     getAllWorktype1 () {
@@ -258,9 +326,9 @@
         if (!valid) {
           return
         }
-        if(data.type===1 &&  (!data.fanganFile || !data.fanganFile.fileurl)){
+        if (data.type === 1 && (!data.fanganFile || !data.fanganFile.fileurl)) {
           this.$message.error('璇蜂笂浼犳柟妗堢‘璁や功锛�')
-          return;
+          return
         }
         // 璋冪敤鏂板缓鎺ュ彛
         this.isWorking = true
@@ -293,8 +361,8 @@
         }
       })
     },
-    deleFile(){
-      this.form.fanganFile={}
+    deleFile () {
+      this.form.fanganFile = {}
     },
     open (title, target) {
       this.title = title
@@ -303,8 +371,14 @@
       this.form.timeUnit = ''
       this.form.insureCycleUnit = ''
       this.form.validTypeNum = ''
-      this.form.fanganFile=null
-      this.form.fileList1= new Array();
+      this.form.fanganFile = null
+      this.form.canReduce = 0
+      this.form.canChangeUnit = 0
+      this.form.addValidDays = 0
+      this.form.delOnlyReplace = 0
+      this.form.delValidDays = 0
+      this.form.canAdd = 0
+      this.form.fileList1 = []
       this.form.worktypeIdList = [{ worktypeId: '' }]
       // this.$refs['$upload'].clearFiles()//鍒濆鍖栧鍏ョ粍浠�
       this.allCompany()
@@ -317,8 +391,8 @@
           this.form.timeUnit = ''
           this.form.insureCycleUnit = ''
           this.form.validTypeNum = ''
-          this.form.fanganFile=null
-          this.form.fileList1= new Array();
+          this.form.fanganFile = null
+          this.form.fileList1 = []
           this.form.worktypeIdList = [{ worktypeId: '' }]
           this.form[this.configData['field.id']] = null
         })
@@ -331,8 +405,8 @@
             for (const key in this.form) {
               this.form[key] = res[key]
             }
-            if(this.form.fanganFile && this.form.fanganFile.fileurl){
-              this.form.fileList1= [{url: this.form.fanganFile.fileurlFull, name:this.form.fanganFile.name}];
+            if (this.form.fanganFile && this.form.fanganFile.fileurl) {
+              this.form.fileList1 = [{ url: this.form.fanganFile.fileurlFull, name: this.form.fanganFile.name }]
             }
             console.log(this.form.fileList1)
             this.form.worktypeIdList = res.worktypeList.map(item => {

--
Gitblit v1.9.3