new
zzzz
2024-04-07 a9546154c39b7850746317af561573ed8ee503d1
new
9 files modified
1 files added
2 files deleted
296 ■■■■ changed files
config/index.js 2 ●●● patch | view | raw | blame | history
src/axios/api.url.js 4 ●●●● patch | view | raw | blame | history
src/main.js 5 ●●●●● patch | view | raw | blame | history
src/page/authentication/index.vue 20 ●●●●● patch | view | raw | blame | history
src/page/newUser/c.vue 21 ●●●●● patch | view | raw | blame | history
src/page/newUser/index.vue 6 ●●●● patch | view | raw | blame | history
src/page/newUser/s.ue patch | view | raw | blame | history
src/page/user/Warehouse.vue 37 ●●●● patch | view | raw | blame | history
src/page/user/Warehouse/card.vue 35 ●●●● patch | view | raw | blame | history
src/page/user/Warehouse/data.list.vue 140 ●●●● patch | view | raw | blame | history
src/page/user/Warehouse/item.card.vue 25 ●●●● patch | view | raw | blame | history
src/utils/allocation.js 1 ●●●● patch | view | raw | blame | history
config/index.js
@@ -40,7 +40,7 @@
    },
    // Various Dev Server settings
    host: "127.0.0.1", // can be overwritten by process.env.HOST
    host: "192.168.0.102", // can be overwritten by process.env.HOST
    port: 80, // can be overwritten by process.env.PORT, if port is in use, a free one will be determined
    autoOpenBrowser: true,
    errorOverlay: true,
src/axios/api.url.js
@@ -7,9 +7,9 @@
  // baseURL: '/',
  // baseURL: 'http://www.jumptalk.net:8091',
  // 0311
  baseURL: "https://api.3falcon.com/",
  // baseURL: "https://api.3falcon.com/",
  // 本地
  // baseURL: "http://192.168.0.113:8091/",
  baseURL: "http://192.168.0.106:8091/",
  // baseURL: "http://192.168.0.104:8091/",
  // baseURL: 'http://121.43.237.202:8091/',
  // baseURL: 'http://192.168.0.103:8091/',
src/main.js
@@ -33,6 +33,7 @@
import "lib-flexible";
// import md5 from 'js-md5'
import * as filters from "@/utils/utils";
import * as allocation from "@/utils/allocation";
import animated from "animate.css"; // npm install animate.css --save安装,在引入
import "../static/css/public2.css";
@@ -70,6 +71,10 @@
Object.keys(filters).forEach(key => {
  Vue.filter(key, filters[key]);
});
Object.keys(allocation).forEach(key => {
  console.log(allocation, "====");
  Vue.prototype[key] = allocation[key];
});
Vue.prototype.$state = state;
Vue.prototype.$setgoindex = function() {
  if (window.history.length <= 1) {
src/page/authentication/index.vue
@@ -214,7 +214,6 @@
    },
    beforeAvatarUpload2(file) {
      this.imgStatus2 = true;
      // const _that = this
      const isLt10M = file.size / 1024 / 1024 < 10;
      if (!isLt10M) {
        this.$message.error(this.$t("hj205"));
@@ -247,7 +246,6 @@
          this.form.name = this.$store.state.userInfo.realName;
          this.form.img1key = this.$store.state.userInfo.img1Key;
          this.form.img2key = this.$store.state.userInfo.img2Key;
          //   this.form.img3key = this.$store.state.userInfo.img3Key
          this.showBtn = false;
        }
      } else {
@@ -268,43 +266,37 @@
      if (i) {
        Toast(this.$t("hj206"));
      } else {
        // Indicator.open('Loading...')
        this.img1Key = file;
        // this.$refs.formDate.submit()
        // this.uploadIdImg({upload_file:file})
        var reader = new FileReader();
        reader.onload = (data) => {
          let res = data.target || data.srcElement;
          this.form.img1Key = res.result;
          // Indicator.close()
        };
        // reader.onloadend = () => {
        //   Indicator.close()
        // }
        reader.readAsDataURL(file);
      }
    },
    toSure() {
      // 实名认证弹框
      if (isNull(this.form.name)) {
        // if (isNull(this.form.name) || !isName(this.form.name)) {
        Toast(this.$t("hj207"));
      } else if (isNull(this.form.idCard)) {
        Toast(this.$t("hj208"));
      }
      // else if (isNull(this.form.img1key) || isNull(this.form.img2key)) {
      //   Toast(this.$t('hj209'));
      // }
      else {
      } else {
        // 显示确认弹窗
        this.toAuthentication();
      }
    },
    async toAuthentication() {
      // console.log(this.form);
      // return;
      let opts = {
        realName: this.form.name,
        idCard: this.form.idCard,
        vaildNumber: this.form.vaildNumber,
        img1key: this.form.img1key,
        img2key: this.form.img2key,
        img3key: this.form.img3key,
      };
src/page/newUser/c.vue
File was deleted
src/page/newUser/index.vue
@@ -33,7 +33,7 @@
              <i @click="xy = !xy" class="iconfont xy">&#xe8c7;</i>
            </div>
            <div class="number-all">
              <showHide :text="userInfo.totalAssets" :flg="xy" />
              <showHide :text="asstesAll" :flg="xy" />
            </div>
          </van-col>
        </van-row>
@@ -185,6 +185,7 @@
      userInfo: [],
      onlineService: "",
      moneyList: [],
      asstesAll: "0.00",
    };
  },
  created() {
@@ -211,6 +212,9 @@
            }
          });
        });
        const arr = data.data.filter((item) => item.accectType === "ALL");
        this.asstesAll = arr[0].totalMoneyUSD;
        console.log(this.listAsstes);
      }
    },
src/page/newUser/s.ue
src/page/user/Warehouse.vue
@@ -20,10 +20,18 @@
        </div>
      </template>
      <template v-else>
        <itemCard :activeObj="activeObj" :itemClick="itemClick" />
        <itemCard
          @closingPosition="closingPosition"
          :activeObj="activeObj"
          :itemClick="itemClick"
        />
      </template>
      <div v-show="active !== '1'">
        <dataList ref="dataListref" :activeObj="activeObj" />
        <dataList
          ref="dataListref"
          :activeObj="activeObj"
          @closingPosition="closingPosition"
        />
      </div>
    </div>
  </div>
@@ -45,7 +53,6 @@
      tabsArr: [
        {
          title: this.$t("hometips"),
          name: "1",
          bgc: "rgb(8, 82, 196)",
          laber: "ALL",
@@ -86,18 +93,23 @@
  created() {
    this.getMoneys();
  },
  mounted(){
    if(this.$route.query.index=='0'){
      this.onClick({name:4})
    }else if(this.$route.query.index=='1'){
      this.onClick({name:2})
    }else{
  mounted() {
    if (this.$route.query.index == "0") {
      let arr = this.tabsArr.filter((item) => item.name == 4)[0];
      this.onClick(arr);
    } else if (this.$route.query.index == "1") {
      let arr = this.tabsArr.filter((item) => item.name == 2)[0];
      this.onClick(arr);
    } else {
    }
  },
  methods: {
    closingPosition() {
      this.getMoneys();
    },
    itemClick() {
      this.$refs.dataListref.getList(this.activeObj.laber);
      this.getMoneys();
    },
    async getMoneys() {
      const res = await getMoney();
@@ -111,12 +123,15 @@
            }
          });
        });
        let obj = arr.filter((item) => item.name == this.active)[0];
        this.activeObj = obj;
        console.log(obj, "0000000", res.data);
        this.tabsArr = arr;
        this.$forceUpdate(); // 强制Vue重新渲染
      }
    },
    onClick(e) {
      console.log(e);
      console.log(e, "====");
      this.active = e.name;
      this.activeObj = e;
      this.getMoneys();
src/page/user/Warehouse/card.vue
@@ -4,29 +4,23 @@
      <div class="item">
        <div class="name">{{ $t("總資產") }} ({{ item.symbolCode }})</div>
        <div class="data">{{ item.totalMoney || "0.0000" }}</div>
        <div class="symbolCode" v-if="item.symbolCode !== 'USD'">
          ≈ {{ item.symbol }} {{ item.totalMoneyUSD || "0.0000" }}
        <div class="symbolCode" v-if="item.symbolCode !== $USD">
          ≈ {{ $USD }} {{ item.totalMoneyUSD || "0.0000" }}
        </div>
      </div>
      <div class="item">
        <div class="name">{{ $t("可用資產") }} ({{ item.symbolCode }})</div>
        <div class="data">{{ item.availableBalance || "0.0000" }}</div>
        <div class="symbolCode" v-if="item.symbolCode !== 'USD'">
          ≈ {{ item.symbol }} {{ item.availableBalanceUSD || "0.0000" }}
        <div class="symbolCode" v-if="item.symbolCode !== $USD">
          ≈ {{ $USD }} {{ item.availableBalanceUSD || "0.0000" }}
        </div>
        <!-- totleAssets  总资产 -->
        <!-- availableBalance  可用 -->
        <!-- cumulativeProfitAndLoss  累计盈亏 -->
        <!-- profitAndLoss  浮动盈亏 -->
        <!-- handlingCharge  总手续费 -->
        <!-- freezeMoney  冻结 -->
      </div>
    </div>
    <div class="text-box text-box1">
      <div class="item">
        <div class="data data1">{{ item.profitAndLoss }}</div>
        <div class="symbolCode" v-if="item.symbolCode !== 'USD'">
          ≈ {{ item.symbol }} {{ item.profitAndLossUSD || "0.0000" }}
        <div class="symbolCode" v-if="item.symbolCode !== $USD">
          ≈ {{ $USD }} {{ item.profitAndLossUSD || "0.0000" }}
        </div>
        <div class="name name1">
          {{ $t("總浮動盈虧") }} ({{ item.symbolCode }})
@@ -36,8 +30,8 @@
        <div class="data data1">
          {{ item.cumulativeProfitAndLoss || "0.0000" }}
        </div>
        <div class="symbolCode" v-if="item.symbolCode !== 'USD'">
          ≈ {{ item.symbol }} {{ item.cumulativeProfitAndLossUSD || "0.0000" }}
        <div class="symbolCode" v-if="item.symbolCode !== $USD">
          ≈ {{ $USD }} {{ item.cumulativeProfitAndLossUSD || "0.0000" }}
        </div>
        <div class="name name1">
          {{ $t("累計盈虧") }} ({{ item.symbolCode }})
@@ -47,8 +41,8 @@
    <div class="text-box text-box1">
      <div class="item">
        <div class="data data1">{{ item.freezeMoney }}</div>
        <div class="symbolCode" v-if="item.symbolCode !== 'USD'">
          ≈ {{ item.symbol }} {{ item.freezeMoneyUSD || "0.0000" }}
        <div class="symbolCode" v-if="item.symbolCode !== $USD">
          ≈ {{ $USD }} {{ item.freezeMoneyUSD || "0.0000" }}
        </div>
        <div class="name name1">
          {{ $t("凍結資產") }} ({{ item.symbolCode }})
@@ -56,8 +50,8 @@
      </div>
      <div class="item">
        <div class="data data1">{{ item.handlingCharge || "0.0000" }}</div>
        <div class="symbolCode" v-if="item.symbolCode !== 'USD'">
          ≈ {{ item.symbol }} {{ item.handlingChargeUSD || "0.0000" }}
        <div class="symbolCode" v-if="item.symbolCode !== $USD">
          ≈ {{ $USD }} {{ item.handlingChargeUSD || "0.0000" }}
        </div>
        <div class="name name1">
          {{ $t("總手續費") }} ({{ item.symbolCode }})
@@ -75,6 +69,11 @@
      default: {},
    },
  },
  watch: {
    item(v) {
      console.log(v, "-------");
    },
  },
};
</script>
src/page/user/Warehouse/data.list.vue
@@ -34,7 +34,9 @@
        <van-row>
          <van-col span="8">
            <div style="text-align: left">
              <div class="sport-content-title2">{{ $t("盈虧") }} (USD)</div>
              <div class="sport-content-title2">
                {{ $t("盈虧") }} ({{ item.stockGid }})
              </div>
              <div class="sport-content-text" style="color: #d04b64">
                {{ item.profitAndLose }}
              </div>
@@ -42,7 +44,9 @@
          </van-col>
          <van-col span="8">
            <div style="text-align: center">
              <div class="sport-content-title2">{{ $t("hj141") }} (USD)</div>
              <div class="sport-content-title2">
                {{ $t("hj141") }} ({{ item.stockGid }})
              </div>
              <div class="sport-content-text2">
                {{ item.profitAndLoseParent }}
              </div>
@@ -58,19 +62,25 @@
        <van-row>
          <van-col span="8">
            <div style="text-align: left">
              <div class="sport-content-title2">{{ $t("hj40") }}(USD)</div>
              <div class="sport-content-title2">
                {{ $t("hj40") }}({{ item.stockGid }})
              </div>
              <div class="sport-content-text2">{{ item.now_price }}</div>
            </div>
          </van-col>
          <van-col span="8">
            <div style="text-align: center">
              <div class="sport-content-title2">{{ $t("持倉價") }} (USD)</div>
              <div class="sport-content-title2">
                {{ $t("持倉價") }} ({{ item.stockGid }})
              </div>
              <div class="sport-content-text2">{{ item.buyOrderPrice }}</div>
            </div>
          </van-col>
          <van-col span="8">
            <div style="text-align: right">
              <div class="sport-content-title2">{{ $t("訂單金額") }} (USD)</div>
              <div class="sport-content-title2">
                {{ $t("訂單金額") }} ({{ item.stockGid }})
              </div>
              <div class="sport-content-text2">{{ item.orderTotalPrice }}</div>
            </div>
          </van-col>
@@ -79,14 +89,16 @@
          <van-col span="8">
            <div style="text-align: left">
              <div class="sport-content-title2">
                {{ $t("開倉手續費") }} (USD)
                {{ $t("開倉手續費") }} ({{ item.stockGid }})
              </div>
              <div class="sport-content-text2">{{ item.orderFee }}</div>
            </div>
          </van-col>
          <van-col span="8">
            <div style="text-align: center">
              <div class="sport-content-title2">{{ $t("止損價") }} (USD)</div>
              <div class="sport-content-title2">
                {{ $t("止損價") }} ({{ item.stockGid }})
              </div>
              <div class="sport-content-text2">
                -{{ item.profitTargetPrice || "--" }}
              </div>
@@ -94,7 +106,9 @@
          </van-col>
          <van-col span="8">
            <div style="text-align: right">
              <div class="sport-content-title2">{{ $t("止盈價") }} (USD)</div>
              <div class="sport-content-title2">
                {{ $t("止盈價") }} ({{ item.stockGid }})
              </div>
              <div class="sport-content-text2">
                -{{ item.stopTargetPrice || "--" }}
              </div>
@@ -155,21 +169,21 @@
</template>
<script>
import Dialog from "@/components/Dialog";
import { getchicang, sell } from "../../../axios/api";
import { Notify } from "vant";
import Dialog from '@/components/Dialog'
import { getchicang, sell } from '../../../axios/api'
import { Notify } from 'vant'
export default {
  components: { Dialog },
  props: {
    activeObj: {
      type: Object,
      default: {},
    },
      default: {}
    }
  },
  data() {
  data () {
    return {
      pageNum: 1,
      pageSize: 15,
      pageSize: 150,
      loading: true,
      finished: false,
      closeSell: {},
@@ -178,78 +192,76 @@
      dataList: [],
      tabsList: [
        {
          title: this.$t("持倉"),
          key: 0,
          title: this.$t('持倉'),
          key: 0
        },
        {
          title: this.$t("平倉"),
          key: 1,
        },
      ],
    };
          title: this.$t('平倉'),
          key: 1
        }
      ]
    }
  },
  methods: {
    onLoad() {
      this.pageNum++;
      this.loading = true;
      this.getList();
    onLoad () {
      this.pageNum++
      this.loading = true
    },
    async confirm() {
    async confirm () {
      const res = await sell({
        positionSn: this.closeSell.positionSn,
      });
        positionSn: this.closeSell.positionSn
      })
      if (res.status === 0) {
        this.$refs.closeDialog.show = false;
        this.dataList = [];
        this.pageNum = 1;
        this.finished = false;
        this.getList();
        this.$refs.closeDialog.show = false
        this.dataList = []
        this.pageNum = 1
        this.finished = false
        this.getList()
        this.$emit('closingPosition')
      } else {
        Notify({ type: "danger", message: res.msg });
        Notify({ type: 'danger', message: res.msg })
      }
    },
    async getList(laber) {
      console.log(laber);
    // 获取仓位列表
    async getList (laber) {
      if (laber) {
        this.dataList = [];
        this.pageNum = 1;
        this.finished = false;
        this.dataList = []
        this.pageNum = 1
        this.finished = false
      }
      const res = await getchicang({
        state: this.actives,
        stockType: laber || this.activeObj.laber,
        pageNum: this.pageNum,
        pageSize: this.pageSize,
      });
      if (res.data.total <= this.dataList.length) {
        this.finished = true;
      }
      this.loading = false;
        pageSize: this.pageSize
      })
      this.loading = false
      if (res.status === 0) {
        if (this.pageNum !== 1) {
          this.dataList = [...this.dataList, ...res.data.list];
        } else {
          this.dataList = res.data.list;
        this.dataList = res.data.list
        if (res.data.total <= this.dataList.length) {
          this.finished = true
        }
      } else {
        this.loading = false;
        this.finished = true;
        this.loading = false
        this.finished = true
      }
    },
    close(item) {
      this.closeSell = item;
      this.$refs.closeDialog.show = true;
    close (item) {
      this.closeSell = item
      this.$refs.closeDialog.show = true
    },
    clickTabs(e) {
      this.dataList = [];
      this.pageNum = 1;
      this.finished = false;
      this.actives = e.key;
      this.getList();
    },
  },
};
    clickTabs (e) {
      this.dataList = []
      this.pageNum = 1
      this.finished = false
      this.actives = e.key
      this.getList()
    }
  }
}
</script>
<style lang="less" scoped>
src/page/user/Warehouse/item.card.vue
@@ -6,8 +6,8 @@
          {{ activeObj.assname }} ({{ activeObj.symbolCode }})
        </div>
        <div class="total-data">{{ activeObj.totalMoney || "0.0000" }}</div>
        <div class="total-data-huansuan" v-if="activeObj.symbolCode !== 'USD'">
          ≈ {{ activeObj.symbol }} {{ activeObj.totalMoneyUSD || "0.0000" }}
        <div class="total-data-huansuan" v-if="activeObj.symbolCode !== $USD">
          ≈ {{ $USD }} {{ activeObj.totalMoneyUSD || "0.0000" }}
        </div>
      </div>
      <div class="right" @click="closeAll">{{ $t("全部平仓") }}</div>
@@ -21,8 +21,8 @@
    <div class="item-card-itembox">
      <div class="item">
        <div class="itembox-data">{{ activeObj.profitAndLoss }}</div>
        <div v-if="activeObj.symbolCode !== 'USD'" class="number-text">
          ≈ {{ activeObj.symbol }} {{ activeObj.profitAndLossUSD || "0.0000" }}
        <div v-if="activeObj.symbolCode !== $USD" class="number-text">
          ≈ {{ $USD }} {{ activeObj.profitAndLossUSD || "0.0000" }}
        </div>
        <div class="itembox-name">
          {{ $t("浮動盈虧") }} ({{ activeObj.symbolCode }})
@@ -30,8 +30,8 @@
      </div>
      <div class="item">
        <div class="itembox-data">{{ activeObj.availableBalance }}</div>
        <div v-if="activeObj.symbolCode !== 'USD'" class="number-text">
          ≈ {{ activeObj.symbol }}
        <div v-if="activeObj.symbolCode !== $USD" class="number-text">
          ≈ {{ $USD }}
          {{ activeObj.availableBalanceUSD || "0.0000" }}
        </div>
        <div class="itembox-name">
@@ -40,8 +40,8 @@
      </div>
      <div class="item">
        <div class="itembox-data">{{ activeObj.cumulativeProfitAndLoss }}</div>
        <div v-if="activeObj.symbolCode !== 'USD'" class="number-text">
          ≈ {{ activeObj.symbol }}
        <div v-if="activeObj.symbolCode !== $USD" class="number-text">
          ≈ {{ $USD }}
          {{ activeObj.cumulativeProfitAndLossUSD || "0.0000" }}
        </div>
        <div class="itembox-name">
@@ -50,8 +50,8 @@
      </div>
      <div class="item">
        <div class="itembox-data">{{ activeObj.freezeMoney }}</div>
        <div v-if="activeObj.symbolCode !== 'USD'" class="number-text">
          ≈ {{ activeObj.symbol }} {{ activeObj.freezeMoneyUSD || "0.0000" }}
        <div v-if="activeObj.symbolCode !== $USD" class="number-text">
          ≈ {{ $USD }} {{ activeObj.freezeMoneyUSD || "0.0000" }}
        </div>
        <div class="itembox-name">
          {{ $t("凍結資產") }} ({{ activeObj.symbolCode }})
@@ -59,8 +59,8 @@
      </div>
      <div class="item">
        <div class="itembox-data">{{ activeObj.handlingCharge }}</div>
        <div v-if="activeObj.symbolCode !== 'USD'" class="number-text">
          ≈ {{ activeObj.symbol }} {{ activeObj.handlingChargeUSD || "0.0000" }}
        <div v-if="activeObj.symbolCode !== $USD" class="number-text">
          ≈ {{ $USD }} {{ activeObj.handlingChargeUSD || "0.0000" }}
        </div>
        <div class="itembox-name">
          {{ $t("總手續費") }} ({{ activeObj.symbolCode }})
@@ -97,7 +97,6 @@
      console.log(this.activeObj.laber);
      const res = await allsell({ stockType: this.activeObj.laber });
      if (res.status === 0) {
        console.log(3333);
        this.itemClick();
        this.$refs.closeAllDialog.show = false;
      }
src/utils/allocation.js
New file
@@ -0,0 +1 @@
export const $USD = "USD";