| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182 |
- <template>
- <!--选择履约模板-->
- <Drawer :title="'选择履约模板'"
- :placement="'right'"
- :visible="visible"
- @cancel="cancel"
- :class="[position === 'top' ? 'top486' : 'delistingBottom']">
- <span class="add-permance"
- @click="open">
- <svg class="icon svg-icon"
- aria-hidden="true">
- <use xlink:href="#icon-xinjianzengjiaxinzeng-20" />
- </svg>
- </span>
- <a-spin :spinning="loading">
- <div class="moduleContent">
- <div class="itemBar"
- v-for="item in tableList"
- :key="item.autoid"
- @click="chooseTemp(item)">
- <div class="itemName">{{item.templatename}}</div>
- <div class="rulesCont">
- <a-row>
- <a-col :span="24"
- class="ruleCol">
- <div class="line"
- v-for="sub in item.LstStep"
- :key="sub.autoid">
- <div class="name">{{sub.steptypename}}</div>
- <div class="time">{{sub.stepdate}}</div>
- </div>
- </a-col>
- </a-row>
- </div>
- </div>
- </div>
- </a-spin>
- </Drawer>
- <Add v-if="show"
- :position="position"
- @cancel="closeAddTemp" />
- </template>
- <script lang="ts">
- import { defineComponent, PropType, ref } from 'vue';
- import { Des } from '@/common/components/commonDes';
- import { _closeModal } from '@/common/setup/modal/modal';
- import Drawer from '@/common/components/drawer/index.vue';
- import { QueryPermancePlanTmpReq, QueryPermancePlanTmpRsp } from '@/services/go/wrtrade/interface';
- import { queryQueryPermancePlanTmp } from '@/services/go/wrtrade';
- import { getUsrId } from '@/services/bus/user';
- import { queryTableList } from '@/common/setup/table';
- import Add from '@/common/components/permanceTemp/addPermanceTemp.vue';
- function hanldeOpenAndCloseComponent<T>() {
- const show = ref<boolean>(false);
- const selected = ref<T>(); // 选中的朋友 id 列表
- function close(value: any) {
- if (value) {
- selected.value = value;
- }
- show.value = false;
- }
- function open() {
- show.value = true;
- }
- return { show, selected, close, open };
- }
- export default defineComponent({
- emits: ['cancel', 'update'],
- name: 'queryQueryPermancePlanTmp',
- components: { Des, Drawer, Add },
- props: {
- position: {
- type: String,
- default: 'top',
- },
- // 新版本仓单贸易挂牌时,都需要选择履约模板,查询时增加marketID参数
- marketid: {
- type: Number,
- default: undefined,
- }
- },
- setup(props, context) {
- const { visible, cancel } = _closeModal(context);
- // 新增模板
- const { show, close, open } = hanldeOpenAndCloseComponent();
- const param: QueryPermancePlanTmpReq = {
- // userid: getUsrId(), // 新版本不用传userid
- tmptype: '0,2',
- };
- if (props.marketid) { param.marketid = props.marketid }
- const { loading, tableList, queryTable } = queryTableList<QueryPermancePlanTmpRsp>();
- queryTable(queryQueryPermancePlanTmp, param);
- function closeAddTemp(isRefresh: boolean) {
- if (isRefresh) {
- queryTable(queryQueryPermancePlanTmp, param);
- }
- close(null);
- }
- // 选择履约模板
- function chooseTemp(item: QueryPermancePlanTmpRsp) {
- context.emit('update', item);
- cancel();
- }
- return {
- loading,
- cancel,
- visible,
- tableList,
- show,
- close,
- open,
- chooseTemp,
- closeAddTemp,
- };
- },
- });
- </script>
- <style lang="less" scoped>
- .add-permance {
- position: absolute;
- top: 10px;
- right: 20px;
- .icon {
- font-size: 20px;
- color: @m-blue25;
- }
- }
- .moduleContent {
- padding: 10px 20px 0;
- width: 470px;
- height: 100%;
- overflow-y: auto;
- .itemBar {
- width: 100%;
- padding: 0 14px 6px;
- margin-bottom: 10px;
- .flex;
- flex-direction: column;
- background: @m-blue34;
- .rounded-corners(5px);
- .itemName {
- width: 100%;
- height: 40px;
- line-height: 40px;
- border-bottom: 1px solid @m-blue20;
- color: @m-white11;
- font-size: 16px;
- }
- }
- }
- /*滚动条样式*/
- ::-webkit-scrollbar {
- //width: 10px;
- height: 4px;
- }
- /* 滚动的滑块 */
- ::-webkit-scrollbar-thumb {
- border-radius: 2px;
- background-color: @m-blue35;
- }
- /* 滚动条两端的按钮 */
- ::-webkit-scrollbar-button {
- background-color: transparent;
- display: none;
- }
- /* 内层滚动槽 */
- ::-webkit-scrollbar-track-piece {
- background-color: transparent;
- }
- /* 边角 */
- ::-webkit-scrollbar-corner,
- .el-input::-webkit-scrollbar-corner {
- background-color: @m-blue35;
- }
- </style>
|