MrShi
2024-12-03 5b98b8b9d95713c20874632a7924e7507202b175
开发
已修改5个文件
108 ■■■■ 文件已修改
admin/src/api/customer.js 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/client/components/OperaYwCustomerWindow.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/client/components/staffEdit.vue 6 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/contract/components/config.js 2 ●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/views/contract/components/contractEdit.vue 88 ●●●● 补丁 | 查看 | 原始文档 | blame | 历史
admin/src/api/customer.js
@@ -11,3 +11,9 @@
export function list (data) {
  return request.post('/visitsAdmin/cloudService/business/ywCustomer/list', data)
}
// 阜宁运维 - 查询联系人列表
export function ywList (data) {
  return request.post('/visitsAdmin/cloudService/business/member/ywList', data)
}
admin/src/views/client/components/OperaYwCustomerWindow.vue
@@ -45,7 +45,9 @@
          <el-form-item label="证件号码" prop="member.idcardNo">
            <el-input v-model="form.member.idcardNo" placeholder="请输入" v-trim />
          </el-form-item>
          <el-form-item label="邮箱" prop="email">
          <el-form-item label="邮箱" prop="member.email" :rules="[
            { required: false, type: 'email', message: '请输入正确的邮箱格式'}
          ]">
            <el-input v-model="form.member.email" placeholder="请输入邮箱" v-trim />
          </el-form-item>
        </template>
@@ -264,4 +266,4 @@
    }
  }
}
</style>
</style>
admin/src/views/client/components/staffEdit.vue
@@ -32,7 +32,9 @@
        <el-form-item label="证件号码" prop="member.idcardNo">
          <el-input v-model="form.idcardNo" placeholder="请输入" v-trim />
        </el-form-item>
        <el-form-item label="邮箱" prop="email">
        <el-form-item label="邮箱" prop="email" :rules="[
          { required: false, type: 'email', message: '请输入正确的邮箱格式'}
        ]">
          <el-input v-model="form.email" placeholder="请输入邮箱" v-trim />
        </el-form-item>
        <el-form-item label="性别">
@@ -213,4 +215,4 @@
    }
  }
}
</style>
</style>
admin/src/views/contract/components/config.js
@@ -9,7 +9,7 @@
  roundedUp: [{ required: true, message: '请选择' }],
  companyId: [{ required: true, message: '请选择' }],
  renterName: [{ required: true, message: '请选择' }],
  memberName: [{ required: true, message: '请选择' }],
  memberId: [{ required: true, message: '请选择' }],
  zlDeposit: [{ required: true, message: '请输入' }],
  zlPayType: [{ required: true, message: '请选择' }],
  wyDeposit: [{ required: true, message: '请输入' }],
admin/src/views/contract/components/contractEdit.vue
@@ -1,6 +1,4 @@
<template>
<!--  :text="activeTabs === 0 ? '下一步' : '提交'"-->
<!--  :backText="activeTabs === 0 ? '返回' : '上一步'"-->
  <GlobalWindow
    width="100%"
    :title="title"
@@ -42,7 +40,7 @@
                <el-date-picker type="date" v-model="form.endDate" @change="getHouseData" :clearable="false" value-format="yyyy-MM-dd" placeholder="请选择" />
              </el-form-item>
              <el-form-item label="归属项目" prop="projectId">
                <el-select v-model="form.projectId" placeholder="请选择">
                <el-select v-model="form.projectId" @change="getHouseTree" placeholder="请选择">
                  <el-option v-for="(item, index) in projectList" :key="index" :value="item.id" :label="item.name"></el-option>
                </el-select>
              </el-form-item>
@@ -65,8 +63,11 @@
                  <el-input v-model="form.renterName" readonly placeholder="请点击选择租客" />
                </div>
              </el-form-item>
              <el-form-item label="联系人" prop="memberName">
                <el-input v-model="form.memberName" readonly placeholder="请点击选择租客" />
              <el-form-item label="联系人" prop="memberId">
                <el-select v-model="form.memberId" placeholder="请选择">
                  <el-option v-for="(item, index) in contactsList" :key="index" :value="item.id" :label="item.name"></el-option>
                </el-select>
<!--                <el-input v-model="form.memberName" readonly placeholder="请点击选择租客" />-->
              </el-form-item>
            </div>
          </el-form>
@@ -294,6 +295,7 @@
import MemberSearch from '@/components/common/MemberSearch'
import { rules } from './config'
import { create, getBillList } from '@/api/contract'
import { ywList } from '@/api/customer'
import { getUserList } from '@/api/system/user'
import { getProjectList, tree } from '@/api/project/ywProject'
import { companyList } from '@/api/company'
@@ -335,6 +337,7 @@
        zlDate: [],
        zlDetailList: [
          {
            circleType: 0,
            startDate: '',
            endDate: '',
            time: [],
@@ -350,6 +353,7 @@
        wyDate: [],
        wyDetailList: [
          {
            circleType: 0,
            startDate: '',
            endDate: '',
            time: [],
@@ -367,6 +371,8 @@
      wyList: [],
      
      rules,
      contactsList: [],
      loadingInstance: null,
      uploadImgUrl: process.env.VUE_APP_API_PREFIX + '/visitsAdmin/cloudService/public/uploadBatch',
@@ -407,6 +413,7 @@
    open (title, target) {
      this.title = title
      this.ids = []
      this.houseList = []
      this.getUser()
      this.getProject()
      this.getCompany()
@@ -422,18 +429,20 @@
        }
        this.form.zlDetailList = [
          {
            startDate: '',
            endDate: '',
            time: [],
            circleType: 0,
            startDate: this.form.startDate,
            endDate: this.form.endDate,
            time: [this.form.startDate, this.form.endDate],
            price: '',
            advanceDays: ''
          }
        ]
        this.form.wyDetailList = [
          {
            startDate: '',
            endDate: '',
            time: [],
            circleType: 0,
            startDate: this.form.startDate,
            endDate: this.form.endDate,
            time: [this.form.startDate, this.form.endDate],
            price: '',
            advanceDays: ''
          }
@@ -444,7 +453,15 @@
        this.form.signDate = this.getDayTime()
        this.form.startDate = this.getDayTime()
        this.form.endDate = this.getDayTime(1)
        this.getHouseTree()
        // this.getHouseTree()
      })
    },
    // 获取联系人
    getYwList () {
      ywList({
        customerId: this.form.renterId
      }).then(res => {
        this.contactsList = res
      })
    },
    getHouseData () {
@@ -470,10 +487,34 @@
        return `${year + 1}-${month < 10 ? '0' + month : month}-${day < 10 ? '0' + day : day}`;
      }
    },
    clearData () {
      this.form.zlDetailList = [
        {
          circleType: 0,
          startDate: this.form.startDate,
          endDate: this.form.endDate,
          time: [this.form.startDate, this.form.endDate],
          price: '',
          advanceDays: ''
        }
      ]
      this.form.wyDetailList = [
        {
          circleType: 0,
          startDate: this.form.startDate,
          endDate: this.form.endDate,
          time: [this.form.startDate, this.form.endDate],
          price: '',
          advanceDays: ''
        }
      ]
    },
    confirm () {
      if (this.activeTabs === 0) {
        this.$refs.form.validate((valid) => {
          if (!valid) return
          if (this.form.roomIds.length === 0) return this.$message.warning('请选择房源!')
          this.clearData()
          this.activeTabs = 1
        })
      } else if (this.activeTabs === 1) {
@@ -539,7 +580,8 @@
    getHouseTree () {
      tree({
        startDate: this.form.startDate,
        endDate: this.form.endDate
        endDate: this.form.endDate,
        projectId: this.form.projectId
      })
        .then(res => {
          res.forEach(item => {
@@ -590,18 +632,20 @@
    },
    addZl () {
      this.form.zlDetailList.push({
        startDate: '',
        endDate: '',
        time: [],
        circleType: 0,
        startDate: this.form.startDate,
        endDate: this.form.endDate,
        time: [this.form.startDate, this.form.endDate],
        price: '',
        advanceDays: ''
      })
    },
    addWy () {
      this.form.wyDetailList.push({
        startDate: '',
        endDate: '',
        time: [],
        circleType: 0,
        startDate: this.form.startDate,
        endDate: this.form.endDate,
        time: [this.form.startDate, this.form.endDate],
        price: '',
        advanceDays: ''
      })
@@ -625,8 +669,9 @@
    getTenant (row) {
      this.form.renterId = row.id
      this.form.renterName = row.name
      this.form.memberId = row.memberId
      this.form.memberName = row.memberName
      this.form.memberId = ''
      this.form.memberName = ''
      this.getYwList()
    },
    dele (imgaddr) {
      this.form.fileList.forEach((item, index) => {
@@ -718,6 +763,7 @@
  position: sticky;
  top: 0;
  left: 0;
  z-index: 999;
}
.tabs {
  border-bottom: 1px solid #DFE2E8;