| | |
| | | <el-option label="商户-企业" :value="2"></el-option> |
| | | </el-select> |
| | | </el-form-item> |
| | | <el-form-item label="状态" prop="status"> |
| | | <el-select v-model="searchForm.status" placeholder="请选择" @change="search"> |
| | | <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-form-item label="状态" prop="queryStatus"> |
| | | <el-select v-model="searchForm.queryStatus" placeholder="请选择" @change="search"> |
| | | <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="4"></el-option> |
| | | <el-option label="已关闭" :value="5"></el-option> |
| | | </el-select> |
| | |
| | | </el-form> |
| | | <!-- 表格和分页 --> |
| | | <template v-slot:table-wrap> |
| | | <ul class="toolbar" v-permissions="['business:contract:create']"> |
| | | <li><el-button type="primary" @click="$refs.operaContractWindow.open('新建合同信息表')" icon="el-icon-plus" v-permissions="['business:contract:create']">新建</el-button></li> |
| | | <ul class="toolbar" v-permissions="['business:contract:create']" v-if="[0,2].includes(userInfo.type)"> |
| | | <li><el-button type="primary" @click="$refs.operaContractWindow.open('新建合同信息表', null, userInfo.type)" icon="el-icon-plus" v-permissions="['business:contract:create']">新建</el-button></li> |
| | | </ul> |
| | | <el-table |
| | | v-loading="isWorking.search" |
| | |
| | | <template v-else-if="row.signType === 2">商户-企业</template> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column prop="companyName" label="对方名称" min-width="100px"></el-table-column> |
| | | <el-table-column prop="companyName" label="甲乙方名称" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | {{ row.partyCompanyName }} / {{ row.companyName }} |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column label="合同开始时间" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | {{ row.startTime }} - {{ row.endTime }} |
| | |
| | | </el-table-column> |
| | | <el-table-column label="状态" min-width="100px"> |
| | | <template slot-scope="{row}"> |
| | | <template v-if="row.status === 0">待签章</template> |
| | | <template v-else-if="row.status === 1">我方已签章</template> |
| | | <template v-else-if="row.status === 2">企业商户已签章</template> |
| | | <template v-else-if="row.status === 3">完成</template> |
| | | <template v-else-if="row.status === 4">已取消</template> |
| | | <template v-else-if="row.status === 5">已关闭</template> |
| | | <template v-if="row.queryStatus === 0">待平台签署</template> |
| | | <template v-else-if="row.queryStatus === 1">待商户签署</template> |
| | | <template v-else-if="row.queryStatus === 2">待企业签署</template> |
| | | <template v-else-if="row.queryStatus === 3">已完成</template> |
| | | <template v-else-if="row.queryStatus === 4">已取消</template> |
| | | <template v-else-if="row.queryStatus === 5">已关闭</template> |
| | | </template> |
| | | </el-table-column> |
| | | <el-table-column |
| | | v-if="containPermissions(['business:contract:update', 'business:contract:delete'])" |
| | | label="操作" |
| | | min-width="220" |
| | | min-width="150" |
| | | fixed="right" |
| | | > |
| | | <template slot-scope="{row}"> |
| | | <el-button type="text" @click="$refs.operaContractDescWindow.open('合同详情', row.id)" icon="el-icon-view">查看详情</el-button> |
| | | <el-button type="text" @click="sign(row)" icon="el-icon-document-checked" v-if="row.status !== 1 && row.status !== 4 && row.status !== 3">签署</el-button> |
| | | <template v-if="userInfo.type === 0"> |
| | | <template v-if="(row.signType === 0 && row.status === 0) || (row.signType === 1 && row.status === 0)"> |
| | | <el-button type="text" @click="sign(row)" icon="el-icon-document-checked">签署</el-button> |
| | | </template> |
| | | </template> |
| | | <template v-if="userInfo.type === 1"> |
| | | <template v-if="(row.signType === 1 && row.status === 1) || (row.signType === 2 && row.status === 1)"> |
| | | <el-button type="text" @click="sign(row)" icon="el-icon-document-checked">签署</el-button> |
| | | </template> |
| | | </template> |
| | | <template v-if="userInfo.type === 2"> |
| | | <template v-if="(row.signType === 0 && row.status === 1) || (row.signType === 2 && row.status === 0)"> |
| | | <el-button type="text" @click="sign(row)" icon="el-icon-document-checked">签署</el-button> |
| | | </template> |
| | | </template> |
| | | <el-button type="text" icon="el-icon-document-remove" v-if="row.status === 0" @click="cancelHT(row.id)">取消</el-button> |
| | | <el-button type="text" @click="deleteById(row)" icon="el-icon-delete" v-permissions="['business:contract:delete']" v-if="row.status === 4">删除</el-button> |
| | | </template> |
| | |
| | | import OperaContractWindow from '@/components/business/OperaContractWindow' |
| | | import OperaContractDescWindow from '@/components/business/OperaContractDescWindow' |
| | | import { cancel, getSignLink } from '@/api/business/contract' |
| | | import { mapState } from 'vuex' |
| | | export default { |
| | | name: 'Contract', |
| | | extends: BaseTable, |
| | | components: { TableLayout, Pagination, OperaContractWindow, OperaContractDescWindow }, |
| | | computed: { |
| | | ...mapState(['userInfo']) |
| | | }, |
| | | data () { |
| | | return { |
| | | // 搜索 |
| | | searchForm: { |
| | | name: '', |
| | | signType: '', |
| | | status: '' |
| | | queryStatus: '' |
| | | } |
| | | } |
| | | }, |
| | |
| | | cancelButtonText: '取消', |
| | | type: 'warning' |
| | | }).then(() => { |
| | | cancel({ id }).then(res => { |
| | | cancel(id).then(res => { |
| | | this.search() |
| | | }) |
| | | }).catch(() => { |