yz3456
2024-05-27 ce09e7d8c54d1868fe9a589caec577ddb0aeaf52
ruoyi-ui/src/views/meeting/meetingInfo.vue
@@ -13,75 +13,91 @@
          <el-row :span="12">
            <el-cow>
              <el-form-item label="会议标题" prop="meetingTitle" label-width="90px"
              <el-form-item label="会议标题" prop="title" label-width="90px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-input v-model="formDat.meetingTitle" placeholder="请输入会议标题" clearable :style="{width: '100%'}">
                </el-input>
                <el-input v-if="!dsb" v-model="formData.title" placeholder="请输入会议标题" clearable :style="{width: '100%'}" :disabled="dsb"></el-input>
                <el-input v-if="dsb" v-model="formData.title" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb"></el-input>
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="开始时间" prop="happenTime" label-width="80px"
              <el-form-item label="开始时间" prop="startTime" label-width="80px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-date-picker v-model="formDat.happenTime" type="datetime" placeholder="选择日期时间" align="right"
                  :picker-options="pickerOptions" :style="{width: '100%'}">
                <el-date-picker v-if="!dsb" v-model="formData.startTime" type="datetime" placeholder="选择日期时间" align="right"
                  :picker-options="pickerOptions" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd HH:mm:ss">
                </el-date-picker>
                <el-date-picker v-if="dsb" v-model="formData.startTime" type="datetime" placeholder="" align="right"
                  :picker-options="pickerOptions" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd HH:mm:ss">
                </el-date-picker>
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="结束时间" prop="endTime" label-width="80px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-date-picker v-model="formDat.endTime" type="datetime" placeholder="选择日期时间" align="right"
                  :picker-options="pickerOptions" :style="{width: '100%'}">
                <el-date-picker v-if="!dsb" v-model="formData.endTime" type="datetime" placeholder="选择日期时间" align="right"
                  :picker-options="pickerOptions" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd HH:mm:ss">
                </el-date-picker>
                <el-date-picker v-if="dsb" v-model="formData.endTime" type="datetime" placeholder="" align="right"
                  :picker-options="pickerOptions" :style="{width: '100%'}" :disabled="dsb" value-format="yyyy-MM-dd HH:mm:ss">
                </el-date-picker>
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="会议地点" prop="address" label-width="90px"
              <el-form-item label="会议地点" prop="place" label-width="90px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-input v-model="formDat.address" placeholder="请输入会议地点" clearable :style="{width: '100%'}">
                <el-input v-if="!dsb" v-model="formData.place" placeholder="请输入会议地点" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
                <el-input v-if="dsb" v-model="formData.place" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
              </el-form-item>
            </el-cow>
            <el-cow>
            <!-- <el-cow>
              <el-form-item label="会议室代码" prop="meetingID" label-width="90px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-input v-model="formDat.meetingID" placeholder="请输入会议室代码" clearable :style="{width: '100%'}">
                <el-input v-model="formData.meetingID" placeholder="请输入会议室代码" clearable :style="{width: '100%'}">
                </el-input>
              </el-form-item>
            </el-cow> -->
            <el-cow>
              <el-form-item label="可容纳人数" prop="conPeople" label-width="100px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-input v-if="!dsb" type="number" v-model="formData.conPeople" placeholder="请输入可容纳人数" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
                <el-input v-if="dsb" type="number" v-model="formData.conPeople" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="可容纳人数" prop="capacity" label-width="90px"
              <el-form-item label="参与人数" prop="partPeople" label-width="90px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-input v-model="formDat.capacity" placeholder="请输入可容纳人数" clearable :style="{width: '100%'}">
                <el-input v-if="!dsb" type="number" v-model="formData.partPeople" placeholder="请输入参与人数" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
                <el-input v-if="dsb" type="number" v-model="formData.partPeople" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="参与人数" prop="attendance" label-width="90px"
              <el-form-item label="申请人" prop="applyPerson" label-width="90px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-input v-model="formDat.attendance" placeholder="请输入参与人数" clearable :style="{width: '100%'}">
                <el-input v-if="!dsb" v-model="formData.applyPerson" placeholder="请输入申请人" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
                <el-input v-if="dsb" v-model="formData.applyPerson" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="申请人" prop="applicant" label-width="90px"
              <el-form-item label="家庭或部门" prop="applyApart" label-width="100px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-input v-model="formDat.applicant" placeholder="请输入申请人" clearable :style="{width: '100%'}">
                <el-input v-if="!dsb" v-model="formData.applyApart" placeholder="请输入申请家庭或部门" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
                <el-input v-if="dsb" v-model="formData.applyApart" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="家庭或部门" prop="familyName" label-width="90px"
              <el-form-item label="是否拜访水牌" prop="isPlacebrand" label-width="120px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-input v-model="formDat.familyName" placeholder="请输入申请家庭或部门" clearable :style="{width: '100%'}">
                </el-input>
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="是否拜访水牌" prop="status" label-width="120px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-select v-model="formDat.status" placeholder="请选择 " clearable :style="{width: '100%'}"
                <el-select v-model="formData.isPlacebrand" placeholder="请选择 " clearable :style="{width: '100%'}"
                  :disabled="dsb">
                  <el-option v-for="(item, index) in typeOptions" :key="index" :label="item.label"
                    :value="item.value"></el-option>
@@ -89,16 +105,29 @@
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="联系人" prop="name" label-width="90px"
              <el-form-item label="联系人" prop="connPerson" label-width="90px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-input v-model="formDat.name" placeholder="请输入联系人" clearable :style="{width: '100%'}">
                <el-input v-if="!dsb" v-model="formData.connPerson" placeholder="请输入联系人" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
                <el-input v-if="dsb" v-model="formData.connPerson" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb">
                </el-input>
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="联系电话" prop="phone" label-width="90px"
              <el-form-item label="联系电话" prop="connPhone" label-width="90px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-input v-model="formDat.phone" placeholder="请输入联系电话" clearable :style="{width: '100%'}"></el-input>
                <el-input v-if="!dsb" v-model="formData.connPhone" placeholder="请输入联系电话" clearable :style="{width: '100%'}" :disabled="dsb"></el-input>
                <el-input v-if="dsb" v-model="formData.connPhone" placeholder="" clearable :style="{width: '100%'}" :disabled="dsb"></el-input>
              </el-form-item>
            </el-cow>
            <el-cow>
              <el-form-item label="状态" prop="statu" label-width="120px"
                style="background: #FAD1E0;border-radius: 7px 7px 7px 7px;opacity: 1;">
                <el-select v-model="formData.statu" placeholder="请选择 " clearable :style="{width: '100%'}"
                  :disabled="true">
                  <el-option v-for="(item, index) in typeOptions2" :key="index" :label="item.label"
                    :value="item.value"></el-option>
                </el-select>
              </el-form-item>
            </el-cow>
          </el-row>
@@ -109,6 +138,11 @@
          <el-button v-if="isShow" type="primary" @click="submitForm" :disabled="dsb">重新申请</el-button>
        </el-form-item>
      </el-form>
      <el-dialog  :visible.sync="dialogVisible">
        <img w-full :src="dialogImageUrl"    style="width: 100%; height: 100%" alt="Preview Image" />
      </el-dialog>
    </div>
@@ -116,13 +150,18 @@
</template>
<script>
import {addRole, updateRole} from "@/api/system/role";
import {blobValidate} from "@/utils/ruoyi";
import errorCode from "@/utils/errorCode";
import {Message} from "element-ui";
  import {listMeeting,getMeetingInfo,addMeeting,enload,uploadPic,download,delMeeting,updateMeeting} from "@/api/meeting/index";
  export default {
    components: {},
    props: [],
    data() {
      return {
        cdi: "个人财产详细信息",
        udi: "个人财产信息详情",
        cdi: "会议详细信息",
        udi: "会议信息详情",
        // 数据范围选项
        fot: ['.bmp', '.jpg', '.jpeg', '.png', '.tif', '.gif', '.pcx', '.tga', '.exif', '.fpx',
          '.svg', '.psd', '.cdr', '.pcd', '.dxf', '.ufo', '.eps', '.ai', '.aw', '.WMF', '.webp', '.apng'
@@ -137,105 +176,115 @@
        btn: false,
        isShow: true,
        uploading: false,
        formDat: {
        formData:{
          id: undefined,
          happenTime: undefined,
          title: undefined,
          place: undefined,
          conPeople: undefined,
          partPeople: undefined,
          applyPerson: undefined,
          applyApart: undefined,
          startTime: undefined,
          endTime: undefined,
          timeSpan: undefined,
          meetingTitle: undefined,
          address: undefined,
          meetingID: undefined,
          capacity: undefined,
          attendance: undefined,
          applicant: undefined,
          familyName: undefined,
          name: undefined,
          phone: undefined,
          url: "",
          status: undefined
          happenStartTime: undefined,
          happenEndTime: undefined,
          isPlacebrand: undefined,
          connPerson: undefined,
          connPhone: undefined,
          statu: undefined,
          createTime: undefined
        },
        dialogImageUrl: '',
        dialogVisible: false,
        disabled: false,
        // 表单校验
        rules: {
          meetingTitle: [{
          startTime: [{
            required: true,
            message: '请输入会议标题',
            trigger: 'blur'
          }],
          happenTime: [{
            required: true,
            message: '请选择开始时间',
            message: '请输入开始时间',
            trigger: 'blur'
          }],
          endTime: [{
            required: true,
            message: '请选择结束时间',
            message: '请输入结束时间',
            trigger: 'blur'
          }],
          status: [{
          title: [{
            required: true,
            message: '请输入是否注销',
            message: '请输入标题',
            trigger: 'blur'
          }],
          isChange: [{
          place: [{
            required: true,
            message: '请输入变更/注销',
            message: '请输入地点',
            trigger: 'blur'
          }],
          price: [{
          conPeople: [{
            required: true,
            message: '请输入金额',
            message: '请输入可容纳人数',
            trigger: 'blur'
          }],
          incomeName: [{
          partPeople: [{
            required: true,
            message: '请输入收支类别',
            message: '请输入参与人数',
            trigger: 'blur'
          }],
          timeLimit: [{
          applyPerson: [{
            required: true,
            message: '请输入期限',
            message: '请输入申请人',
            trigger: 'blur'
          }],
          location: [{
          applyApart: [{
            required: true,
            message: '请输入存放位置',
            message: '请输入申请家庭或部门',
            trigger: 'blur'
          }],
          propertyRight: [{
          isPlacebrand: [{
            required: true,
            message: '请输入实现难度',
            message: '请选择是否拜访水牌',
            trigger: 'blur'
          }],
          connPerson: [{
            required: true,
            message: '请输入联系人',
            trigger: 'blur'
          }],
          connPhone: [{
            required: true,
            message: '请输入联系电话',
            trigger: 'blur'
          }],
          statu: [{
            // required: true,
            message: '请选择状态',
            trigger: 'blur'
          }],
          remark: [{
            // required: true,
            message: '请输入备注',
            trigger: 'blur'
          }],
        },
        typeOptions: [{
            value: 1,
            label: '是',
        typeOptions: [
          {
          value: 1,
          label: '是',
          },
          {
            value: 0,
            label: '否',
          }
        ],
        typeOptions1: [{
            value: '变更',
            label: '变更',
          },
          {
            value: '注销',
            label: '注销',
          }
        ],
          ],
          typeOptions2: [
            {
            value: 1,
            label: '同意',
            },
            {
              value: 0,
              label: '拒绝',
            },
            {
              value: 3 ,
              label: '待审批',
            }
            ],
      }
    },
    created() {
@@ -245,47 +294,102 @@
        jd = this.$route.query.detail
        this.btn = jd
        this.dsb = !jd
        //    document.title = "修改个人财产详细信息";
        this.$route.meta.title = "会议详细信息"; //列表的名称
      } else {
        //   document.title = "个人财产详细信息";
        this.$route.meta.title = "会议详细信息"; //列表的名称
        this.btn = false;
        this.isShow = false
      }
      let _this = this
      if (id) {
        this.loading = true;
        getMeetingInfo(id).then((response) => {
          console.log(response.data,'123123123')
          this.formData = response.data;
          // let paths = this.formData.url.split(",");
       //    for(let i = 0; i < paths.length; i++)
       //    {
       //      if(paths[i]!="") {
       //        let pth = paths[i].substr(paths[i].length - 4, paths[i].length)
       //        if (_this.fot.includes(pth) === true)
         // {
         //    if(paths[i][0]=="/")
       //          _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i].substr(1),res:false})
         //   else
         //      _this.fileList.push({name:paths[i],url: process.env.VUE_APP_BASE_TRUE_API+paths[i],res:false})
         //   }
       //        else {
       //          let nms = paths[i].split("\/")
       //          let nm = nms[nms.length - 1]
         //   if(paths[i][0]=="/")
       //          _this.fileListOther.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i].substr(1),res:false})
         //    else
         //    _this.fileListOther.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i],res:false})
         // }
       //      }
       //    }
          this.loading = false;
        });
      }
    },
    mounted() {},
    methods: {
      submitForm() {
        let ul = this.fileList.map(function(elem) {
          return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API, "")
        }).join(",")
        let uls = this.fileListOther.map(function(elem) {
          return elem.url.replace(process.env.VUE_APP_BASE_TRUE_API, "")
        }).join(",")
        this.formData.url = ul + "," + uls
      // getData(){
      //       const id = this.$route.params && this.$route.params.id;
      //       let _this = this
      //       if (id) {
      //         this.loading = true;
      //         getMeetingInfo(id).then((response) => {
      //           // console.log(response,'666666666')
      //           this.formData = response.data;
      //           let paths = this.formData.url.split(",");
      //           for(let i = 0; i < paths.length; i++)
      //           {
      //             if(paths[i]!="") {
      //               let pth = paths[i].substr(paths[i].length - 4, paths[i].length)
      //       //   alert(pth)
      //               if (_this.fot.includes(pth) === true)
      //          {
      //           console.log()
      //            }
      //               else {
      //                 let nms = paths[i].split("\/")
      //                 let nm = nms[nms.length - 1]
      //            if(paths[i][0]=="/")
      //                 _this.fileListOther1.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i].substr(1),res:false})
      //             else
      //             _this.fileListOther1.push({name:nm, url: process.env.VUE_APP_BASE_TRUE_API+paths[i],res:false})
      //          }
      //             }
      //           }
      //           _this.fileListOther = _this.fileListOther1
      //           this.loading = false;
      //         });
      //       }
      // },
      submitForm() {
        this.$refs['elForm'].validate(valid => {
          alert(this.formData.status)
          if (valid) {
            if (this.formData.id != undefined) {
              updateSelfEconomy(this.formData).then(response => {
              updateMeeting(this.formData).then(response => {
                this.$modal.msgSuccess("修改成功");
                // this.open = false;
                if (this.formData.status == 1)
                  this.formData.status = '是'
                else
                  this.formData.status = '否'
                // if (this.formData.status == 1)
                //   this.formData.status = '是'
                // else
                //   this.formData.status = '否'
                this.btn = false
              });
            } else {
              this.$modal.msgSuccess("修改失败");
              if (this.formData.status == '是')
                this.formData.status = 1
              else
                this.formData.status = 0
              // if (this.formData.status == '是')
              //   this.formData.status = 1
              // else
              //   this.formData.status = 0
            }
          }
        })