updateCookies.vue 3.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109
  1. <template>
  2. <div class="container">
  3. <Breadcrumb :items="['menu.jd', 'menu.jd.updateCookies']" />
  4. <a-card class="general-card" :title="$t('menu.jd.updateCookies')">
  5. <a-row class="wrapper">
  6. <a-col :span="24">
  7. <a-form ref="formRef" :model="formData" class="form" :label-col-props="{ span: 4 }"
  8. :wrapper-col-props="{ span: 19 }">
  9. <a-form-item field="cookie" :label="$t('taobao.cookies.label')" :rules="[{ required: true }]"
  10. row-class="keep-margin">
  11. <a-textarea v-model="formData.cookie" :auto-size="{ minRows: 10 }" class="cookie"
  12. :placeholder="$t('taobao.cookies.placeholder')" />
  13. </a-form-item>
  14. <a-form-item field="cookie" label="联盟cookie" :rules="[{ required: true }]"
  15. row-class="keep-margin">
  16. <a-textarea v-model="formData.union_cookies" :auto-size="{ minRows: 10 }" class="cookie"
  17. placeholder="联盟cookie,用来查询收益和订单" />
  18. </a-form-item>
  19. <a-form-item field="user_agent" label="User Agent" row-class="keep-margin">
  20. <a-textarea v-model="formData.user_agent" auto-size placeholder="留空的话,忽略更新" />
  21. </a-form-item>
  22. <a-form-item field="h5st" label="h5st" row-class="keep-margin">
  23. <a-textarea v-model="formData.h5st" :auto-size="{ minRows: 5 }" placeholder="留空的话,忽略更新" />
  24. </a-form-item>
  25. <a-form-item>
  26. <a-space>
  27. <a-button type="primary" @click="validate">
  28. {{ $t('form.save') }}
  29. </a-button>
  30. <a-button type="secondary" @click="reset">
  31. {{ $t('form.reset') }}
  32. </a-button>
  33. </a-space>
  34. </a-form-item>
  35. </a-form>
  36. </a-col>
  37. </a-row>
  38. </a-card>
  39. </div>
  40. </template>
  41. <script lang="ts" setup>
  42. import { ref } from 'vue';
  43. import { useRouter } from 'vue-router';
  44. import { Message } from '@arco-design/web-vue';
  45. import { FormInstance } from '@arco-design/web-vue/es/form';
  46. import { UpdateCookieModel, updateCookies } from '@/api/jd';
  47. const router = useRouter();
  48. const formRef = ref<FormInstance>();
  49. const formData = ref<UpdateCookieModel>({
  50. cookie: '',
  51. union_cookies: '',
  52. user_agent: '',
  53. h5st: '',
  54. });
  55. const validate = async () => {
  56. const res = await formRef.value?.validate();
  57. if (!res) {
  58. try {
  59. const { data } = await updateCookies(formData.value);
  60. console.log(data, data.msg);
  61. const msg = data.msg || '更新成功!';
  62. if (data.success) {
  63. Message.success(msg);
  64. router.push('./list');
  65. } else {
  66. Message.error(data.msg);
  67. }
  68. } catch (err) {
  69. console.error(err)
  70. }
  71. }
  72. };
  73. const reset = async () => {
  74. await formRef.value?.resetFields();
  75. };
  76. </script>
  77. <style scoped lang="less">
  78. .container {
  79. padding: 0 20px 20px 20px;
  80. }
  81. .wrapper {
  82. padding: 20px 0 0 20px;
  83. min-height: 580px;
  84. background-color: var(--color-bg-2);
  85. border-radius: 4px;
  86. }
  87. :deep(.section-title) {
  88. margin-top: 0;
  89. margin-bottom: 16px;
  90. font-size: 14px;
  91. }
  92. .form {
  93. margin: 0 auto;
  94. }
  95. .form .cookie {
  96. height: 100%;
  97. min-height: 500px;
  98. }
  99. </style>