Dorpame.vue 8.36 KB
<template>
  <div class="eibs">
    <c-col :span="12" style="padding-right: 20px">
      <c-col :span="24">
        <el-form-item label="单据要求" prop="lidgrp.blk.lcrdoc">
          <c-input
            :autosize="{ minRows: 12, maxRows: 800 }"
            :disabled="this.flag1"
            type="textarea"
            v-model="model.lidgrp.blk.lcrdoc"
            maxlength="52000"
            show-word-limit
            placeholder="请输入单据要求"
          ></c-input>
        </el-form-item>
      </c-col>

      <c-col :span="24">
        <el-form-item
          label="添加/删除当前修订中的文本"
          prop="litamep.lcrdocamep.usrblk"
        >
          <c-fullbox>
            <c-input
              type="textarea"
              :disabled="this.flag2"
              v-model="model.litamep.lcrdocamep.usrblk"
              maxlength="52000"
              show-word-limit
              placeholder="请输入添加/删除补充信息"
              :autosize="{ minRows: 22, maxRows: 800 }"
            ></c-input>
            <template slot="footer">
              <c-button
                size="small"
                type="primary"
                icon="el-icon-search"
                :disabled="this.flag2"
                @click="
                  showGridPromptDialog(
                    'litamep.lcrdocame.buttxmsel',
                    null,
                    null,
                    { TXT: 'litamep.lcrdocamep.usrblk' },
                    { TXT: false },
                    'doxpDialog'
                  )
                "
              >
              </c-button>
            </template>
          </c-fullbox>
        </el-form-item>
      </c-col>
    </c-col>

    <c-col :span="12" style="padding-left: 20px">
      <c-col :span="24">
        <el-form-item label="历史概述" prop="lidgrp.blk.lcrdocame">
          <c-input
            :autosize="{ minRows: 12, maxRows: 999 }"
            disabled
            type="textarea"
            v-model="model.lidgrp.blk.lcrdocame"
            maxlength="4950"
            show-word-limit
            placeholder="请输入历史概述"
          ></c-input>
        </el-form-item>
      </c-col>

      <c-col :span="12">
        <el-form-item label=" " prop="litamep.lcrdocamep.modflg">
          <c-checkbox
            @change="open"
            class="checkbox-left"
            v-model="model.litamep.lcrdocamep.modflg"
            >修改要替换的文本</c-checkbox
          >
        </el-form-item>
      </c-col>

      <c-col :span="12">
        <c-checkbox
          @change="open1"
          style="margin: 0px 0 10px 125px"
          v-model="model.litamep.lcrdocamep.modmanflg"
          >内部修改文本</c-checkbox
        >
      </c-col>

      <c-col :span="24">
        <c-button
          style="margin: 0px 0 10px 120px"
          size="small"
          type="primary"
        >
          显示差异
        </c-button>
      </c-col>

      <c-col :span="24">
        <c-button
          style="margin: 0px 0 10px 120px"
          disabled
          size="small"
          type="primary"
        >
          添加文本
        </c-button>
      </c-col>

      <c-col :span="24">
        <c-button
          style="margin: 0px 0 10px 120px"
          disabled
          size="small"
          type="primary"
          icon="el-icon-delete"
        >
          删除文本
        </c-button>
      </c-col>
    </c-col>
  </div>
</template>
<script>
import event from '../event';

export default {
  inject: ['root'],
  props: ['model', 'codes'],
  mixins: [event],
  data() {
    return {
      flag1: true,
      flag2: false,
    };
  },
  watch: {
    'model.litamep.lcrdocamep.modflg': {
      immediate: true,
      handler(val, oldval) {
        if (
          this.model.litamep.lcrdocamep.modflg == 'X' &&
          this.model.litamep.lcrdocamep.modmanflg == ''
        ) {
          this.flag1 = false;
          this.flag2 = true;
          this.model.litamep.lcrdocamep.usrblk = '';
        } else if (
          this.model.litamep.lcrdocamep.modflg == 'X' &&
          this.model.litamep.lcrdocamep.modmanflg == 'X'
        ) {
          this.flag1 = false;
          this.flag2 = true;
        } else if (
          this.model.litamep.lcrdocamep.modflg == '' &&
          this.model.litamep.lcrdocamep.modmanflg == ''
        ) {
          this.flag1 = true;
          this.flag2 = false;
        } else if (
          this.model.litamep.lcrdocamep.modflg == '' &&
          this.model.litamep.lcrdocamep.modmanflg == 'X'
        ) {
          this.flag1 = false;
          this.flag2 = true;
          this.model.litamep.lcrdocamep.usrblk = '';
        }
      },
    },
    'model.litamep.lcrdocamep.modmanflg': {
      immediate: true,
      handler(val, oldval) {
        if (
          this.model.litamep.lcrdocamep.modflg == 'X' &&
          this.model.litamep.lcrdocamep.modmanflg == ''
        ) {
          this.flag1 = false;
          this.flag2 = true;
          this.model.litamep.lcrdocamep.usrblk = '';
        } else if (
          this.model.litamep.lcrdocamep.modflg == 'X' &&
          this.model.litamep.lcrdocamep.modmanflg == 'X'
        ) {
          this.flag1 = false;
          this.flag2 = true;
        } else if (
          this.model.litamep.lcrdocamep.modflg == '' &&
          this.model.litamep.lcrdocamep.modmanflg == ''
        ) {
          this.flag1 = true;
          this.flag2 = false;
        } else if (
          this.model.litamep.lcrdocamep.modflg == '' &&
          this.model.litamep.lcrdocamep.modmanflg == 'X'
        ) {
          this.flag1 = false;
          this.flag2 = true;
          this.model.litamep.lcrdocamep.usrblk = '';
        }
      },
    },
  },
  methods: {
    ...Event,
    open(val) {
      if (val === '' && !(this.model.lidgrp.blk.lcrdoc == '')) {
        this.$confirm(
          '是否确定要重置手动修改?',
          '提示',
          {
            cancelButtonText: '撤销',
            confirmButtonText: '确定',
            type: 'warning',
            showClose: false,
          }
        )
          .then(() => {
            //yes的执行在这里写
            this.model.lidgrp.blk.lcrdoc = '';
            this.$message({
              type: 'success',
              message: '删除成功!',
            });
          })
          .catch(() => {
            //No的功能在这里写
            this.model.litamep.lcrdocamep.modflg = 'X';
            this.$message({
              type: 'info',
              message: '已取消',
            });
          });
      } else if (val == 'X' && this.model.litamep.lcrdocamep.modmanflg == 'X') {
        this.$confirm('请先重置内部修改', '提示', {
          confirmButtonText: '确定',
          showCancelButton: false,
          type: 'warning',
          showClose: false,
        }).then(() => {
          //yes的执行在这里写
          this.model.litamep.lcrdocamep.modflg = '';
          this.flag1 = true;
          this.flag2 = false;
        });
      }
    },
    open1(val) {
      if (val === '' && !(this.model.lidgrp.blk.lcrdoc == '')) {
        this.$confirm(
          '是否确定要重置手动修改?',
          '提示',
          {
            cancelButtonText: '撤销',
            confirmButtonText: '确定',
            type: 'warning',
            showClose: false,
          }
        )
          .then(() => {
            //yes的执行在这里写
            this.model.lidgrp.blk.lcrdoc = '';
            this.$message({
              type: 'success',
              message: '删除成功!',
            });
          })
          .catch(() => {
            //No的功能在这里写
            this.model.litamep.lcrdocamep.modmanflg = 'X';
            this.$message({
              type: 'info',
              message: '已取消',
            });
          });
      } else if (
        this.model.litamep.lcrdocamep.modflg == 'X' &&
        this.model.litamep.lcrdocamep.modmanflg == 'X'
      ) {
        this.$confirm('请先重置修改以替换', '提示', {
          confirmButtonText: '确定',
          cancelButtonText: '',
          showCancelButton: false,
          type: 'warning',
          showClose: false,
        }).then(() => {
          //yes的执行在这里写
          this.model.litamep.lcrdocamep.modmanflg = '';
          this.flag1 = true;
          this.flag2 = false;
        });
      }
    },
  },
  created: function () {},
};
</script>
<style>
</style>