su
su1124
2024-01-29 8ebaef8428b67433a95b7c93abe229174145b3c4
su
1个文件已修改
1212 ■■■■■ 已修改文件
src/views/hosp/contract/index.vue 1212 ●●●●● 补丁 | 查看 | 原始文档 | blame | 历史
src/views/hosp/contract/index.vue
@@ -1,537 +1,715 @@
<template>
    <div class="app-container">
        <el-form :model="queryParams" ref="queryForm" size="small" :inline="true" v-show="showSearch" label-width="68px">
            <el-form-item label="单位" prop="drugManufacturerId">
                <el-input v-model="queryParams.drugManufacturerId" placeholder="请输入单位id(外键)" clearable
                    @keyup.enter.native="handleQuery" />
            </el-form-item>
            <el-form-item label="合同名称" prop="contractName">
                <el-input v-model="queryParams.contractName" placeholder="请输入合同名称" clearable
                    @keyup.enter.native="handleQuery" />
            </el-form-item>
            <el-form-item label="甲签约人" prop="aSignPerson">
                <el-input v-model="queryParams.aSignPerson" placeholder="请输入甲方签约人" clearable
                    @keyup.enter.native="handleQuery" />
            </el-form-item>
            <el-form-item label="乙签约人" prop="bSignPerson">
                <el-input v-model="queryParams.bSignPerson" placeholder="请输入乙方签约人" clearable
                    @keyup.enter.native="handleQuery" />
            </el-form-item>
            <el-form-item>
                <el-button type="primary" icon="el-icon-search" size="mini" @click="handleQuery">搜索</el-button>
                <el-button icon="el-icon-refresh" size="mini" @click="resetQuery">重置</el-button>
            </el-form-item>
        </el-form>
  <div class="app-container">
    <el-form
      :model="queryParams"
      ref="queryForm"
      size="small"
      :inline="true"
      v-show="showSearch"
      label-width="68px"
    >
      <el-form-item label="单位" prop="drugManufacturerId">
        <el-input
          v-model="queryParams.drugManufacturerId"
          placeholder="请输入单位id(外键)"
          clearable
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="合同名称" prop="contractName">
        <el-input
          v-model="queryParams.contractName"
          placeholder="请输入合同名称"
          clearable
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="甲签约人" prop="aSignPerson">
        <el-input
          v-model="queryParams.aSignPerson"
          placeholder="请输入甲方签约人"
          clearable
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item label="乙签约人" prop="bSignPerson">
        <el-input
          v-model="queryParams.bSignPerson"
          placeholder="请输入乙方签约人"
          clearable
          @keyup.enter.native="handleQuery"
        />
      </el-form-item>
      <el-form-item>
        <el-button
          type="primary"
          icon="el-icon-search"
          size="mini"
          @click="handleQuery"
          >搜索</el-button
        >
        <el-button icon="el-icon-refresh" size="mini" @click="resetQuery"
          >重置</el-button
        >
      </el-form-item>
    </el-form>
        <el-row :gutter="10" class="mb8">
            <el-col :span="1.5">
                <el-button type="primary" plain icon="el-icon-plus" size="mini" @click="handleAdd"
                    v-hasPermi="['hosp:contract:add']">新增
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="success" plain icon="el-icon-edit" size="mini" :disabled="single" @click="handleUpdate"
                    v-hasPermi="['hosp:contract:edit']">修改
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="danger" plain icon="el-icon-delete" size="mini" :disabled="multiple" @click="handleDelete"
                    v-hasPermi="['hosp:contract:remove']">删除
                </el-button>
            </el-col>
            <el-col :span="1.5">
                <el-button type="warning" plain icon="el-icon-download" size="mini" @click="handleExport"
                    v-hasPermi="['hosp:contract:export']">导出
                </el-button>
            </el-col>
            <right-toolbar :showSearch.sync="showSearch" @queryTable="getList"></right-toolbar>
        </el-row>
    <el-row :gutter="10" class="mb8">
      <el-col :span="1.5">
        <el-button
          type="primary"
          plain
          icon="el-icon-plus"
          size="mini"
          @click="handleAdd"
          v-hasPermi="['hosp:contract:add']"
          >新增
        </el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="success"
          plain
          icon="el-icon-edit"
          size="mini"
          :disabled="single"
          @click="handleUpdate"
          v-hasPermi="['hosp:contract:edit']"
          >修改
        </el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="danger"
          plain
          icon="el-icon-delete"
          size="mini"
          :disabled="multiple"
          @click="handleDelete"
          v-hasPermi="['hosp:contract:remove']"
          >删除
        </el-button>
      </el-col>
      <el-col :span="1.5">
        <el-button
          type="warning"
          plain
          icon="el-icon-download"
          size="mini"
          @click="handleExport"
          v-hasPermi="['hosp:contract:export']"
          >导出
        </el-button>
      </el-col>
      <right-toolbar
        :showSearch.sync="showSearch"
        @queryTable="getList"
      ></right-toolbar>
    </el-row>
        <el-table v-loading="loading" :data="contractList" @selection-change="handleSelectionChange">
            <el-table-column type="selection" width="55" align="center" />
            <el-table-column label="主键" align="center" prop="id" />
            <el-table-column label="合同名称" align="center" prop="contractName" />
            <el-table-column label="签约时间" align="center" prop="signTime" width="180">
                <template slot-scope="scope">
                    <span>{{ parseTime(scope.row.signTime, '{y}-{m}-{d}') }}</span>
                </template>
            </el-table-column>
            <el-table-column label="甲方签约人" align="center" prop="aSignPerson" />
            <el-table-column label="甲方联系电话" align="center" prop="aSignPhone" />
            <el-table-column label="乙方签约人" align="center" prop="bSignPerson" />
            <el-table-column label="乙方联系电话" align="center" prop="bSignPhone" />
            <el-table-column label="合同金额" align="center" prop="contractAmount" />
            <el-table-column label="合同有效期" align="center" prop="contractValidTime" width="180">
                <template slot-scope="scope">
                    <span>{{ parseTime(scope.row.contractValidTime, '{y}-{m}-{d}') }}</span>
                </template>
            </el-table-column>
            <el-table-column label="合同回款状态(1需首付2需付尾款3已结清)" align="center" prop="contractStatus" />
            <el-table-column label="备注" align="center" prop="remark" />
            <el-table-column label="操作" align="center" class-name="small-padding fixed-width">
                <template slot-scope="scope">
                    <el-button size="mini" type="text" icon="el-icon-edit" @click="handleUpdate(scope.row)"
                        v-hasPermi="['hosp:contract:edit']">修改
                    </el-button>
                    <el-button size="mini" type="text" icon="el-icon-delete" @click="handleDelete(scope.row)"
                        v-hasPermi="['hosp:contract:remove']">删除
                    </el-button>
                </template>
            </el-table-column>
        </el-table>
        <pagination v-show="total > 0" :total="total" :page.sync="queryParams.pageNum" :limit.sync="queryParams.pageSize"
            @pagination="getList" />
        <!-- 添加或修改合同对话框 -->
        <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
            <el-form ref="form" :model="form" :rules="rules" label-width="80px">
                <el-form-item label="合同名称" prop="contractName">
                    <el-input v-model="form.contractName" placeholder="请输入合同名称" />
                </el-form-item>
                <el-form-item label="签约时间" prop="signTime">
                    <el-date-picker clearable v-model="form.signTime" type="date" value-format="yyyy-MM-dd"
                        placeholder="请选择签约时间">
                    </el-date-picker>
                </el-form-item>
                <el-form-item label="甲方签约人" prop="aSignPerson">
                    <el-input v-model="form.aSignPerson" placeholder="请输入甲方签约人" />
                </el-form-item>
                <el-form-item label="甲方联系电话" prop="aSignPhone">
                    <el-input v-model="form.aSignPhone" placeholder="请输入甲方联系电话" />
                </el-form-item>
                <el-form-item label="乙方签约人" prop="bSignPerson">
                    <el-input v-model="form.bSignPerson" placeholder="请输入乙方签约人" />
                </el-form-item>
                <el-form-item label="乙方联系电话" prop="bSignPhone">
                    <el-input v-model="form.bSignPhone" placeholder="请输入乙方联系电话" />
                </el-form-item>
                <el-form-item label="合同金额" prop="contractAmount">
                    <el-input v-model="form.contractAmount" placeholder="请输入合同金额" />
                </el-form-item>
                <el-form-item label="合同有效期" prop="contractValidTime">
                    <el-date-picker clearable v-model="form.contractValidTime" type="date" value-format="yyyy-MM-dd"
                        placeholder="请选择合同有效期">
                    </el-date-picker>
                </el-form-item>
                <el-form-item label="备注" prop="remark">
                    <el-input v-model="form.remark" placeholder="请输入备注" />
                </el-form-item>
            </el-form>
            <div slot="footer" class="dialog-footer">
                <el-button type="primary" @click="submitForm">确 定</el-button>
                <el-button @click="cancel">取 消</el-button>
            </div>
        </el-dialog>
        <template>
            <el-button style="margin-top: 20px;" type="primary" plain size="mini" icon="el-icon-plus" @click="addmembers()">新增</el-button>
            <el-table v-loading="loading" :data="tjProjectList" @selection-change="handleSelectionChange" border
                style="margin:10px 0">
                <el-table-column label="序号" align="center" type="index" />
                <el-table-column label="分组模式" align="center" prop="proName" width="260px">
                    <template slot-scope="scope">
                        <el-select filterable v-model="scope.row.proName" placeholder="请选择项目名称">
                            <el-option v-for="item in options" :key="item.value" :label="item.label" :value="item.value">
                            </el-option>
                        </el-select>
                    </template>
                </el-table-column>
                <el-table-column label="加项折扣率" align="center" prop="allSonProName" width="260px"
                    :show-overflow-tooltip="true">
                </el-table-column>
                <el-table-column label="优惠上限设置" align="center" prop="proPrice" width="260px" />
                <el-table-column label="操作" fixed="right" align="center" class-name="small-padding fixed-width">
                    <template slot-scope="scope">
                        <el-button size="mini" type="text" icon="el-icon-circle-plus-outline" @click="addmembers(scope.row)"
                            v-hasPermi="['system:package:edit']" title="新增行"></el-button>
                        <el-button size="mini" type="text" icon="el-icon-delete"
                            @click.native.prevent="Delete(scope.$index)" v-hasPermi="['hosp:consumables:remove']"
                            title="删除"></el-button>
                    </template>
                </el-table-column>
            </el-table>
    <el-table
      v-loading="loading"
      :data="contractList"
      @selection-change="handleSelectionChange"
    >
      <el-table-column type="selection" width="55" align="center" />
      <el-table-column label="主键" align="center" prop="id" />
      <el-table-column label="合同名称" align="center" prop="contractName" />
      <el-table-column
        label="签约时间"
        align="center"
        prop="signTime"
        width="180"
      >
        <template slot-scope="scope">
          <span>{{ parseTime(scope.row.signTime, "{y}-{m}-{d}") }}</span>
        </template>
    </div>
      </el-table-column>
      <el-table-column label="甲方签约人" align="center" prop="aSignPerson" />
      <el-table-column label="甲方联系电话" align="center" prop="aSignPhone" />
      <el-table-column label="乙方签约人" align="center" prop="bSignPerson" />
      <el-table-column label="乙方联系电话" align="center" prop="bSignPhone" />
      <el-table-column label="合同金额" align="center" prop="contractAmount" />
      <el-table-column
        label="合同有效期"
        align="center"
        prop="contractValidTime"
        width="180"
      >
        <template slot-scope="scope">
          <span>{{
            parseTime(scope.row.contractValidTime, "{y}-{m}-{d}")
          }}</span>
        </template>
      </el-table-column>
      <el-table-column
        label="合同回款状态(1需首付2需付尾款3已结清)"
        align="center"
        prop="contractStatus"
      />
      <el-table-column label="备注" align="center" prop="remark" />
      <el-table-column
        label="操作"
        align="center"
        class-name="small-padding fixed-width"
      >
        <template slot-scope="scope">
          <el-button
            size="mini"
            type="text"
            icon="el-icon-edit"
            @click="handleUpdate(scope.row)"
            v-hasPermi="['hosp:contract:edit']"
            >修改
          </el-button>
          <el-button
            size="mini"
            type="text"
            icon="el-icon-delete"
            @click="handleDelete(scope.row)"
            v-hasPermi="['hosp:contract:remove']"
            >删除
          </el-button>
        </template>
      </el-table-column>
    </el-table>
    <pagination
      v-show="total > 0"
      :total="total"
      :page.sync="queryParams.pageNum"
      :limit.sync="queryParams.pageSize"
      @pagination="getList"
    />
    <!-- 添加或修改合同对话框 -->
    <el-dialog :title="title" :visible.sync="open" width="500px" append-to-body>
      <el-form ref="form" :model="form" :rules="rules" label-width="80px">
        <el-form-item label="合同名称" prop="contractName">
          <el-input v-model="form.contractName" placeholder="请输入合同名称" />
        </el-form-item>
        <el-form-item label="签约时间" prop="signTime">
          <el-date-picker
            clearable
            v-model="form.signTime"
            type="date"
            value-format="yyyy-MM-dd"
            placeholder="请选择签约时间"
          >
          </el-date-picker>
        </el-form-item>
        <el-form-item label="甲方签约人" prop="aSignPerson">
          <el-input v-model="form.aSignPerson" placeholder="请输入甲方签约人" />
        </el-form-item>
        <el-form-item label="甲方联系电话" prop="aSignPhone">
          <el-input
            v-model="form.aSignPhone"
            placeholder="请输入甲方联系电话"
          />
        </el-form-item>
        <el-form-item label="乙方签约人" prop="bSignPerson">
          <el-input v-model="form.bSignPerson" placeholder="请输入乙方签约人" />
        </el-form-item>
        <el-form-item label="乙方联系电话" prop="bSignPhone">
          <el-input
            v-model="form.bSignPhone"
            placeholder="请输入乙方联系电话"
          />
        </el-form-item>
        <el-form-item label="合同金额" prop="contractAmount">
          <el-input
            v-model="form.contractAmount"
            placeholder="请输入合同金额"
          />
        </el-form-item>
        <el-form-item label="合同有效期" prop="contractValidTime">
          <el-date-picker
            clearable
            v-model="form.contractValidTime"
            type="date"
            value-format="yyyy-MM-dd"
            placeholder="请选择合同有效期"
          >
          </el-date-picker>
        </el-form-item>
        <el-form-item label="备注" prop="remark">
          <el-input v-model="form.remark" placeholder="请输入备注" />
        </el-form-item>
      </el-form>
      <div slot="footer" class="dialog-footer">
        <el-button type="primary" @click="submitForm">确 定</el-button>
        <el-button @click="cancel">取 消</el-button>
      </div>
    </el-dialog>
    <template>
      <el-button
        style="margin-top: 20px"
        type="primary"
        plain
        size="mini"
        icon="el-icon-plus"
        @click="addmembers()"
        >新增</el-button
      >
      <el-table
        v-loading="loading"
        :data="tjProjectList"
        @selection-change="handleSelectionChange"
        border
        style="margin: 10px 0"
      >
        <el-table-column label="序号" align="center" type="index" />
        <el-table-column
          label="分组模式"
          align="center"
          prop="proName"
          width="260px"
        >
          <template slot-scope="scope">
            <el-select
              filterable
              v-model="scope.row.proName"
              placeholder="请选择项目名称"
            >
              <el-option
                v-for="item in options"
                :key="item.value"
                :label="item.label"
                :value="item.value"
              >
              </el-option>
            </el-select>
          </template>
        </el-table-column>
        <el-table-column
          label="加项折扣率"
          align="center"
          prop="allSonProName"
          width="260px"
          :show-overflow-tooltip="true"
        >
        </el-table-column>
        <el-table-column
          label="优惠上限设置"
          align="center"
          prop="proPrice"
          width="260px"
        />
        <el-table-column
          label="操作"
          fixed="right"
          align="center"
          class-name="small-padding fixed-width"
        >
          <template slot-scope="scope">
            <el-button
              size="mini"
              type="text"
              icon="el-icon-circle-plus-outline"
              @click="addmembers(scope.row)"
              v-hasPermi="['system:package:edit']"
              title="新增行"
            ></el-button>
            <el-button
              size="mini"
              type="text"
              icon="el-icon-delete"
              @click.native.prevent="Delete(scope.$index)"
              v-hasPermi="['hosp:consumables:remove']"
              title="删除"
            ></el-button>
          </template>
        </el-table-column>
      </el-table>
    </template>
  </div>
</template>
<script>
import {
    listContract,
    getContract,
    delContract,
    addContract,
    updateContract
  listContract,
  getContract,
  delContract,
  addContract,
  updateContract,
} from "@/api/hosp/contract";
export default {
    name: "Contract",
    data() {
        let checkPhoneNum = (rule, value, callback) => {
         console.log( value)
  name: "Contract",
  data() {
    let checkPhoneNum = (rule, value, callback) => {
      console.log(value);
      let patter = new RegExp(/^1\s*[3456789]\s*(\d\s*){9}$/);
      if (value == "" && value == undefined && !value) {
        return callback('');
      }  else if(value != undefined && value != ""){
        return callback("");
      } else if (value != undefined && value != "") {
        return callback();
      }else if (!patter.test(value)) {
        return callback('');
      } else if (!patter.test(value)) {
        return callback("");
      }
    };
        return {
            options: [{
                value: '选项1',
                label: '婚姻'
            }, {
                value: '选项2',
                label: '性别'
            }, {
                value: '选项3',
                label: '年龄'
            }],
            tjProjectList: [{
                proName: "婚姻",
                allSonProName: "1",
                proPrice: "1",
            }],
            // 遮罩层
            loading: true,
            // 选中数组
            ids: [],
            // 非单个禁用
            single: true,
            // 非多个禁用
            multiple: true,
            // 显示搜索条件
            showSearch: true,
            // 总条数
            total: 0,
            // 合同表格数据
            contractList: [],
            // 弹出层标题
            title: "",
            // 是否显示弹出层
            open: false,
            // 查询参数
            queryParams: {
                pageNum: 1,
                pageSize: 10,
                drugManufacturerId: null,
                contractName: null,
                aSignPerson: null,
                bSignPerson: null,
                contractStatus: null,
            },
            // 表单参数
            form: {},
            // 表单校验
            rules: {
                deleted: [
                    {
                        required: true, validator: checkPhoneNum,  trigger: "blur"
                    }
                ],
                createTime: [
                    {
                        required: true, validator: checkPhoneNum,  trigger: "blur"
                    }
                ],
            }
        };
    return {
      options: [
        {
          value: "选项1",
          label: "婚姻",
        },
        {
          value: "选项2",
          label: "性别",
        },
        {
          value: "选项3",
          label: "年龄",
        },
      ],
      tjProjectList: [
        {
          proName: "婚姻",
          allSonProName: "1",
          proPrice: "1",
        },
      ],
      // 遮罩层
      loading: true,
      // 选中数组
      ids: [],
      // 非单个禁用
      single: true,
      // 非多个禁用
      multiple: true,
      // 显示搜索条件
      showSearch: true,
      // 总条数
      total: 0,
      // 合同表格数据
      contractList: [],
      // 弹出层标题
      title: "",
      // 是否显示弹出层
      open: false,
      // 查询参数
      queryParams: {
        pageNum: 1,
        pageSize: 10,
        drugManufacturerId: null,
        contractName: null,
        aSignPerson: null,
        bSignPerson: null,
        contractStatus: null,
      },
      // 表单参数
      form: {},
      // 表单校验
      rules: {
        deleted: [
          {
            required: true,
            validator: checkPhoneNum,
            trigger: "blur",
          },
        ],
        createTime: [
          {
            required: true,
            validator: checkPhoneNum,
            trigger: "blur",
          },
        ],
      },
    };
  },
  created() {
    this.getList();
  },
  methods: {
    /** 查询合同列表 */
    getList() {
      this.loading = true;
      listContract(this.queryParams).then((response) => {
        this.contractList = response.rows;
        this.total = response.total;
        this.loading = false;
      });
    },
    created() {
        this.getList();
    // 取消按钮
    cancel() {
      this.open = false;
      this.reset();
    },
    methods: {
        /** 查询合同列表 */
        getList() {
            this.loading = true;
            listContract(this.queryParams).then(response => {
                this.contractList = response.rows;
                this.total = response.total;
                this.loading = false;
            });
        },
        // 取消按钮
        cancel() {
            this.open = false;
            this.reset();
        },
        // 表单重置
        reset() {
            this.form = {
                id: null,
                drugManufacturerId: null,
                contractName: null,
                signTime: null,
                aSignPerson: null,
                aSignPhone: null,
                bSignPerson: null,
                bSignPhone: null,
                contractAmount: null,
                contractValidTime: null,
                contractStatus: null,
                remark: null,
                deleted: null,
                createBy: null,
                createTime: null,
                updateBy: null,
                updateTime: null
            };
            this.resetForm("form");
        },
        /** 搜索按钮操作 */
        handleQuery() {
            this.queryParams.pageNum = 1;
            this.getList();
        },
        /** 重置按钮操作 */
        resetQuery() {
            this.resetForm("queryForm");
            this.handleQuery();
        },
        // 多选框选中数据
        handleSelectionChange(selection) {
            this.ids = selection.map(item => item.id)
            this.single = selection.length !== 1
            this.multiple = !selection.length
        },
        /** 新增按钮操作 */
        handleAdd() {
            this.reset();
            this.open = true;
            this.title = "添加合同";
        },
        /** 修改按钮操作 */
        handleUpdate(row) {
            this.reset();
            const id = row.id || this.ids
            getContract(id).then(response => {
                this.form = response.data;
                this.open = true;
                this.title = "修改合同";
            });
        },
        // 新增行
        addmembers() {
    // 表单重置
    reset() {
      this.form = {
        id: null,
        drugManufacturerId: null,
        contractName: null,
        signTime: null,
        aSignPerson: null,
        aSignPhone: null,
        bSignPerson: null,
        bSignPhone: null,
        contractAmount: null,
        contractValidTime: null,
        contractStatus: null,
        remark: null,
        deleted: null,
        createBy: null,
        createTime: null,
        updateBy: null,
        updateTime: null,
      };
      this.resetForm("form");
    },
    /** 搜索按钮操作 */
    handleQuery() {
      this.queryParams.pageNum = 1;
      this.getList();
    },
    /** 重置按钮操作 */
    resetQuery() {
      this.resetForm("queryForm");
      this.handleQuery();
    },
    // 多选框选中数据
    handleSelectionChange(selection) {
      this.ids = selection.map((item) => item.id);
      this.single = selection.length !== 1;
      this.multiple = !selection.length;
    },
    /** 新增按钮操作 */
    handleAdd() {
      this.reset();
      this.open = true;
      this.title = "添加合同";
    },
    /** 修改按钮操作 */
    handleUpdate(row) {
      this.reset();
      const id = row.id || this.ids;
      getContract(id).then((response) => {
        this.form = response.data;
        this.open = true;
        this.title = "修改合同";
      });
    },
    // 新增行
    addmembers() {
      if (!this.tjProjectList) {
        this.tjProjectList = [];
        this.tjProjectList.push({
          id: parseInt(length),
          proName: "",
          allSonProName: "",
          proPrice: "",
          Selection,
        });
      } else {
        this.tjProjectList.push({
          id: parseInt(length),
          proName: "",
          allSonProName: "",
          proPrice: "",
          Selection,
        });
      }
      this.$forceUpdate();
    },
            if (!this.tjProjectList) {
                this.tjProjectList = []
                this.tjProjectList.push({
                    id: parseInt(length),
                    proName: "",
                    allSonProName: "",
                    proPrice: "",
                    Selection,
                });
            }
            else {
                this.tjProjectList.push({
                    id: parseInt(length),
                    proName: "",
                    allSonProName: "",
                    proPrice: "",
                    Selection,
                });
            }
            this.$forceUpdate()
        },
        // 删除行
        Delete(index) {
            if (this.tjProjectList.length == 0) {
                this.$alert("请先选择要删除的数据", "提示", {
                    confirmButtonText: "确定",
                });
            } else {
                this.tjProjectList.splice(index, 1);
            }
        },
        /** 提交按钮 */
        //         submitForm() {
        //             this.$]]
        //             #refs["form"].validate(valid => {
        //                 if (valid) {
        //                     #foreach($column in $columns)
        //                     #if($column.htmlType == "checkbox")
        //                     this.form.$column.javaField = this.form.$
        //                     {
        //                         column.javaField
        //                     }
        //                     .
        //                 join(",");
        //             #end
        //             #end
        //             #if($table.sub)
        //             this.form.$
        //             {
        //                 subclassName
        //             }
        //             List = this.$
        //             {
        //                 subclassName
        //             }
        //             List;
        //             #end
        //             if (this.form.${
        //                 pkColumn.javaField
        //             }
        //                     !=
        //                 null
        //                     )
        //             {
        //                 update$
        //                 {
        //                     BusinessName
        //                 }
        //                 (this.form).then(response => {
        //                     this.#[[$modal]]
        //                                 #.msgSuccess("修改成功");
        //                     this.open = false;
        //                     this.getList();
        //                 });
        //             }
        //                     else
        //                         {
        //             add$
        //                             {
        //     BusinessName
        // }
        // (this.form).then(response => {
        //     this.#[[$modal]]
        //                                 #.msgSuccess("新增成功");
        //     this.open = false;
        //     this.getList();
        // });
        //                         }
        //                     }
        //                 });
        //             },
        // /** 删除按钮操作 */
        // handleDelete(row) {
        //     const ${ pkColumn.javaField }s = row.$
        //     {
        //         pkColumn.javaField
        //     }
        //             ||
        //         this.ids;
        //     this.#[[$modal]]
        //                 #.confirm('是否确认删除${functionName}编号为"' + ${ pkColumn.javaField }s + '"的数据项?').then(function () {
        //         return del$
        //         {
        //             BusinessName
        //         }
        //         (${ pkColumn.javaField }s);
        // }).then(() => {
        //     this.getList();
        //     this.#[[$modal]]
        //                     #.msgSuccess("删除成功");
        // }).catch(() => {
        // });
        //             },
        // #if($table.sub)
        // /** ${subTable.functionName}序号 */
        // row$
        // {
        //     subClassName
        // }
        // Index({ row, rowIndex })
        // {
        //     row.index = rowIndex + 1;
        // }
        //     ,
        // /** ${subTable.functionName}添加按钮操作 */
        // handleAdd$
        // {
        //     subClassName
        // }
        // ()
        //     {
        //     let obj = {};
        //     #foreach($column in $subTable.columns)
        //     #if($column.pk || $column.javaField == ${ subTableFkclassName })
        //     #elseif($column.list && "" != $javaField)
        //     obj.$column.javaField = "";
        //     #end
        //     #end
        //     this.$
        //     {
        //         subclassName
        //     }
        //     List.push(obj);
        // }
        //     ,
        //     /** ${subTable.functionName}删除按钮操作 */
        //     handleDelete$
        // {
        //     subClassName
        // }
        // ()
        //     {
        //     if (this.checked${
        //         subClassName
        //     }
        //     .
        //     length == 0
        //     )
        //     {
        //         this.#[[$modal]]
        //             #.msgError("请先选择要删除的${subTable.functionName}数据");
        //     }
        //     else
        //     {
        //         const ${ subclassName }List = this.$
        //         {
        //             subclassName
        //         }
        //         List;
        //         const checked$
        //         {
        //             subClassName
        //         }
        //             = this.checked$
        //         {
        //             subClassName
        //         }
        //         ;
        //         this.$
        //         {
        //             subclassName
        //         }
        //         List = ${ subclassName } List.filter(function (item) {
        //             return checked$
        //             {
        //                 subClassName
        //             }
        //             .
        //             indexOf(item.index) == -1
        //         });
        //     }
        // }
        //     ,
        //     /** 复选框选中数据 */
        //     handle$
        // {
        //     subClassName
        // }
        // SelectionChange(selection)
        // {
        //     this.checked$
        //     {
        //         subClassName
        //     }
        //         = selection.map(item => item.index)
        // }
        //     ,
        // #end
        // /** 导出按钮操作 */
        // handleExport()
        // {
        //     this.download('${moduleName}/${businessName}/export', {
        //         ...this.queryParams
        //     }, `${businessName}_#[[${new Date().getTime()}.xlsx`)
        // }
    }
}
    // 删除行
    Delete(index) {
      if (this.tjProjectList.length == 0) {
        this.$alert("请先选择要删除的数据", "提示", {
          confirmButtonText: "确定",
        });
      } else {
        this.tjProjectList.splice(index, 1);
      }
    },
    /** 提交按钮 */
    //         submitForm() {
    //             this.$]]
    //             #refs["form"].validate(valid => {
    //                 if (valid) {
    //                     #foreach($column in $columns)
    //                     #if($column.htmlType == "checkbox")
    //                     this.form.$column.javaField = this.form.$
    //                     {
    //                         column.javaField
    //                     }
    //                     .
    //                 join(",");
    //             #end
    //             #end
    //             #if($table.sub)
    //             this.form.$
    //             {
    //                 subclassName
    //             }
    //             List = this.$
    //             {
    //                 subclassName
    //             }
    //             List;
    //             #end
    //             if (this.form.${
    //                 pkColumn.javaField
    //             }
    //                     !=
    //                 null
    //                     )
    //             {
    //                 update$
    //                 {
    //                     BusinessName
    //                 }
    //                 (this.form).then(response => {
    //                     this.#[[$modal]]
    //                                 #.msgSuccess("修改成功");
    //                     this.open = false;
    //                     this.getList();
    //                 });
    //             }
    //                     else
    //                         {
    //             add$
    //                             {
    //     BusinessName
    // }
    // (this.form).then(response => {
    //     this.#[[$modal]]
    //                                 #.msgSuccess("新增成功");
    //     this.open = false;
    //     this.getList();
    // });
    //                         }
    //                     }
    //                 });
    //             },
    // /** 删除按钮操作 */
    // handleDelete(row) {
    //     const ${ pkColumn.javaField }s = row.$
    //     {
    //         pkColumn.javaField
    //     }
    //             ||
    //         this.ids;
    //     this.#[[$modal]]
    //                 #.confirm('是否确认删除${functionName}编号为"' + ${ pkColumn.javaField }s + '"的数据项?').then(function () {
    //         return del$
    //         {
    //             BusinessName
    //         }
    //         (${ pkColumn.javaField }s);
    // }).then(() => {
    //     this.getList();
    //     this.#[[$modal]]
    //                     #.msgSuccess("删除成功");
    // }).catch(() => {
    // });
    //             },
    // #if($table.sub)
    // /** ${subTable.functionName}序号 */
    // row$
    // {
    //     subClassName
    // }
    // Index({ row, rowIndex })
    // {
    //     row.index = rowIndex + 1;
    // }
    //     ,
    // /** ${subTable.functionName}添加按钮操作 */
    // handleAdd$
    // {
    //     subClassName
    // }
    // ()
    //     {
    //     let obj = {};
    //     #foreach($column in $subTable.columns)
    //     #if($column.pk || $column.javaField == ${ subTableFkclassName })
    //     #elseif($column.list && "" != $javaField)
    //     obj.$column.javaField = "";
    //     #end
    //     #end
    //     this.$
    //     {
    //         subclassName
    //     }
    //     List.push(obj);
    // }
    //     ,
    //     /** ${subTable.functionName}删除按钮操作 */
    //     handleDelete$
    // {
    //     subClassName
    // }
    // ()
    //     {
    //     if (this.checked${
    //         subClassName
    //     }
    //     .
    //     length == 0
    //     )
    //     {
    //         this.#[[$modal]]
    //             #.msgError("请先选择要删除的${subTable.functionName}数据");
    //     }
    //     else
    //     {
    //         const ${ subclassName }List = this.$
    //         {
    //             subclassName
    //         }
    //         List;
    //         const checked$
    //         {
    //             subClassName
    //         }
    //             = this.checked$
    //         {
    //             subClassName
    //         }
    //         ;
    //         this.$
    //         {
    //             subclassName
    //         }
    //         List = ${ subclassName } List.filter(function (item) {
    //             return checked$
    //             {
    //                 subClassName
    //             }
    //             .
    //             indexOf(item.index) == -1
    //         });
    //     }
    // }
    //     ,
    //     /** 复选框选中数据 */
    //     handle$
    // {
    //     subClassName
    // }
    // SelectionChange(selection)
    // {
    //     this.checked$
    //     {
    //         subClassName
    //     }
    //         = selection.map(item => item.index)
    // }
    //     ,
    // #end
    // /** 导出按钮操作 */
    // handleExport()
    // {
    //     this.download('${moduleName}/${businessName}/export', {
    //         ...this.queryParams
    //     }, `${businessName}_#[[${new Date().getTime()}.xlsx`)
    // }
  },
};
</script>