| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166 |
- <template>
- <!-- 修改套保品种 -->
- <a-modal class="commonModal fieldsetForm modify-custom"
- title="修改套保品种"
- v-if="visible"
- v-model:visible="visible"
- :loading="loading"
- centered
- :maskClosable="maskClosableFlag"
- @cancel="cancel"
- width="890px">
- <template #footer>
- <a-button key="submit"
- type="primary"
- :loading="loading"
- @click="submit">完成</a-button>
- </template>
- <a-spin :spinning="loading">
- <a-form class="inlineForm"
- ref="formRef"
- :model="formState"
- :rules="rules">
- <fieldset class="formFieldSet">
- <legend>基本信息</legend>
- <a-row :gutter="24">
- <a-col :span="12">
- <a-form-item label="套保品种名称">
- <span class="white">{{selctedMG.mg.middlegoodsname}}</span>
- </a-form-item>
- </a-col>
- <a-col :span="12">
- <a-form-item label="单位">
- <span class="white">{{getGoodsUnitEnumItemName(selctedMG.mg.goodsunitid)}}</span>
- </a-form-item>
- </a-col>
- <a-col :span="12">
- <a-form-item label="当前套保比例">
- <span class="white">{{(selctedMG.mg.needhedgeratio * 100).toFixed(2)}}%</span>
- </a-form-item>
- </a-col>
- <a-col :span="12">
- <a-form-item label="修改后套保比例"
- name="needhedgeratio"
- class="relative">
- <a-input-number class="dialogInput"
- style="width: 200px"
- type="number"
- placeholder="请输入套保比例"
- v-model:value="formState.needhedgeratio" />
- <div class="backUnit">%</div>
- </a-form-item>
- </a-col>
- </a-row>
- </fieldset>
- <fieldset class="formFieldSet">
- <legend>其他信息</legend>
- <a-row :gutter="24">
- <a-col :span="24">
- <a-form-item label="备注">
- <span class="white">{{selctedMG.mg.remark}}</span>
- </a-form-item>
- </a-col>
- </a-row>
- </fieldset>
- </a-form>
- </a-spin>
- </a-modal>
- </template>
- <script lang="ts">
- import { defineComponent, PropType, ref } from 'vue';
- import { closeModal } from '@/common/setup/modal/index';
- import { initData } from '@/common/methods/index';
- import { initMG } from '../../list/hedging-variety/setup';
- import { Ermcp3MiddleGoodsDetail2 } from '@/services/go/ermcp/goodsInfo/interface';
- import { getGoodsUnitEnumItemName } from '@/common/constants/enumsName';
- import { handleForm } from './setup';
- import { ermsMiddelGoodsEdit } from '@/services/proto/delivery';
- import { ErmsMiddelGoodsEditReq } from '@/services/proto/delivery/interface';
- import { requestResultLoadingAndInfo } from '@/common/methods/request/resultInfo';
- import { validateAction } from '@/common/setup/form';
- import { FormState } from './interface';
- export default defineComponent({
- name: 'modify-custom',
- components: {},
- props: {
- selctedMG: {
- default: initMG,
- type: Object as PropType<Ermcp3MiddleGoodsDetail2>,
- },
- },
- setup(props, context) {
- const { visible, cancel } = closeModal('goods_info_hedge_normal_modify');
- const { rules, formState, formRef } = handleForm();
- const loading = ref<boolean>(false);
- function submit() {
- validateAction<FormState>(formRef, formState).then(() => {
- const { middlegoodsid, goodsunitid, relatedgoodsid, evaluateratio, qtydecimalplace, relatedgoodstype, goodsgroupid, remark } = props.selctedMG.mg;
- const param: ErmsMiddelGoodsEditReq = {
- middlegoodsid, // uint64 套保品种ID
- goodsunitid, // int32 单位ID
- relatedgoodsid, // uint64 关联交易商品ID
- evaluateratio, // double 估价系数
- qtydecimalplace, // int32 数量小数位
- // modifierid,// uint64 修改人
- relatedgoodstype, // int32 关联商品类型 - 1:期货合约 2:现货品种
- needhedgeratio: (formState.needhedgeratio as number) / 100, // double 套保比率
- // areauserid?,// uint64 机构用户ID
- goodsgroupid, // uint64 关联期货品种ID
- remark, // string 备注
- };
- requestResultLoadingAndInfo(ermsMiddelGoodsEdit, param, loading, ['修改成功', '修改失败:']).then(() => {
- cancel();
- context.emit('refresh');
- });
- });
- }
- initData(() => {});
- return {
- visible,
- cancel,
- submit,
- loading,
- maskClosableFlag: false,
- getGoodsUnitEnumItemName,
- rules,
- formState,
- formRef,
- };
- },
- });
- </script>
- <style lang="less">
- .modify-custom {
- .upload {
- display: inline-flex;
- .ant-btn.uploadBtn {
- width: 60px;
- height: 30px;
- background: @m-blue0;
- border: 0;
- padding: 0;
- text-align: center;
- font-size: 14px;
- color: @m-white0;
- .rounded-corners(3px);
- &:hover {
- background: rgba(@m-blue0, 0);
- color: rgba(@m-white0, 0.8);
- }
- }
- .look {
- color: @m-blue0;
- font-size: 14px;
- margin-left: 10px;
- cursor: pointer;
- }
- }
- }
- </style
- >;
|