Commit da2b6d42 by 肖康

x

parent 17d677b5
Showing with 577 additions and 2 deletions
......@@ -20,6 +20,7 @@
<meta name="description" content="猎芯网(www.Ichunt.com)是国内外知名的买电子元器件、电子元件、元器件采购商城平台,IC交易网站。为客户提供电子元器件现货批发采购,IC采购,进口报关,元器件寄售,供应链金融等一站式电子元器件采购服务">
<link rel="icon" href="<%= BASE_URL %>favicon.ico">
<link rel="stylesheet" href="<%= NODE_ENV_H5 %>v3/dist/res/m/css/font/iconfont.css">
<link rel="stylesheet" href="<%= NODE_ENV_H5 %>v3/dist/res/m/css/font2/iconfont.css">
<script type="text/javascript" src="<%= NODE_ENV_H5 %>h5/view/get_time.php"></script>
<script type="text/javascript">
var fwtimes = window.fwtime - (Math.floor((new Date().getTime()) / 1000)); //获取服务器时间差
......
......@@ -404,6 +404,17 @@ export const apis = {
ucouponCount: productionUrlApi + '/ucoupon/count',
/**优惠券列表**/
ucouponLists: productionUrlApi + '/ucoupon/lists',
/***订单列表**/
orderLists: productionUrlApi + 'order/lists',
/***下载订单合同检测**/
checkPdf: productionUrlApi + '/contract/checkPdf',
/***提醒发货**/
sendTips: productionUrlApi + '/crm/remindDelivery',
/***确认收货**/
sureSend: productionUrlApi + '/order/recive',
/***取消订单**/
orderCancel: productionUrlApi + '/order/cancel',
/**品牌分类**/
brandList: productionUrl + 'api/brandList',
/**品牌详细**/
......@@ -696,6 +707,22 @@ export const services = {
ucouponLists(params) {
return axios.post(apis.ucouponLists, params)
},
orderLists(params) {
return axios.post(apis.orderLists, params)
},
checkPdf(params) {
return axios.post(apis.checkPdf, params)
},
sendTips(params) {
return axios.post(apis.sendTips, params)
},
sureSend(params) {
return axios.post(apis.sureSend, params)
},
orderCancel(params) {
return axios.post(apis.orderCancel, params)
},
unbindPhone(params) {
return axios.post(apis.unbindPhone, params)
},
......
body,html{
background: #f8f8f8;
}
.order{
padding-top:89px ;
.o-header{
height: 40px;
background: #8D9598;
position: fixed;
z-index: 2;
left:0px;top:0px;right:0px;
.order-back{
margin-left: 0.36rem;
margin-right: 0.25rem;
color:#fff;
font-size: 20px;
position: relative;
top:0.20rem;
cursor: pointer;
}
.search-box{
padding-top: 0.17rem;
position: relative;
i{
font-size: 20px;position: absolute;
top: 0.22rem;
left: 0.24rem;color:#999999;
cursor: pointer;
}
input{
width:5.33rem;height: 27px;
border-radius: 27px;
padding-left: 1rem;
background: #FFFFFF;
}
}
.shift{
color:#fff;
font-size: 15px;
margin-left: 0.4rem;
margin-top: 0.25rem;
cursor: pointer;
}
.order-kf{
color:#fff;
font-size: 20px;
cursor: pointer;
margin-top: 0.22rem;
margin-right: 0.37rem;
}
}
.o-tabnav{
height:49px;
.van-tabs__wrap{height:49px;}
.van-tab__text{color:#333;font-size: 14px;}
.van-tab--active .van-tab__text{color:#1969F9;}
.van-tabs__line{background-color:#1969F9;}
.van-tabs__line{width:55px;}
position: fixed;
z-index: 2;
left:0px;top:40px;right:0px;
}
.o-list{
.van-hairline--surround::after,.van-hairline--top::after{
border:1px solid #e5e5e5;
}
.list-group{
background: #fff;
margin-top: 0.4rem;
padding:0.33rem;
.l-h{
color:#6F6F6F;
font-size: 12px;
height: 17px;
line-height: 17px;
margin-bottom: 0.44rem;
span{
color:#333;
display: inline-block;
width: 1.12rem;
height: 17px;
background: #F9F9F9;
border-radius: 2px;
border: 1px solid #E5E5E5;
text-align: center;
cursor: pointer;
margin-left: 0.22rem;
margin-right: 0.22rem;
}
@media screen and (max-width:320px) {
span{ margin-left: 0.1rem;
margin-right: 0.1rem;}
p{height:17px;width:67px;overflow: hidden;}
}
font{
color:#333;
&.yellows{color:#F1730F}
&.reds{color:#E25555;}
&.greens{color:#2CA521;}
}
}
.l-c{
background: #F9F9F9;
margin-bottom: 0.33rem;
.goods-group{
padding:0.24rem 0.3rem;
height:17px;
line-height: 17px;
a{width:4.88rem;margin-right: 0.4rem;color:#333;}
@media screen and (max-width:320px) {
a{width:4rem;margin-right: 0.2rem;}
}
}
}
.l-b{
font-size: 12px;
span{color:#6F6F6F;}
div{color:#FF693D;margin-left: 0.31rem;}
p{color:#333;font-size: 17px;
b{color:#FF693D;font-weight: normal;}
}
.van-count-down{font-size: 12px;margin-left: 0px;margin-top: -0.02rem;}
}
.btn-boxs{
margin-top: 0.61rem;
.btn{
width: 2.4rem;
height: 0.73rem;
line-height: 0.73rem;
display: block;
background: #1969F9;
border-radius: 2px;
text-align: center;
margin-left: 10px;
color:#fff;
cursor: pointer;
border:1px solid #1969F9;
&.btn-lk{
background: #fff;
color:#1969F9;
}
&.btn-default{
background: #fff;
border:1px solid #d2d2d2;
color:#333;
}
}
}
}
}
.shift-panel{
position: fixed;
top:0;
bottom: 0;
left:0;
right:0;
background: rgba(0,0,0,0.4);
z-index: 3;
padding-left: 0.85rem;
.shift-box{
width:100%;
height:100%;
background: #fff;
padding-top: 0.37rem;
padding-left:0.33rem;
padding-right: 0.33rem;
position: relative;
overflow: hidden;
.group-t{
margin-bottom: 0.64rem;
h3{
font-size: 16px;
font-weight: 600;
color: #333333;
margin-bottom: 0.4rem;
}
.con-t{
.timepickers{
width: 3.45rem;
height: 0.8rem;
padding-left: 0.15rem;
color:#959595;
line-height: 0.8rem;
background: #F9F9F9;
border: 1px solid #E5E5E5;
position: relative;
i{font-style: 20px;margin-right: 0.3rem;}
}
.line-h{color:#e5e5e5;margin-left:0.2rem;margin-right: 0.2rem;height: 0.8rem;line-height: 0.8rem;}
.c-item{
width: 2.67rem;
height: 0.67rem;
line-height: 0.67rem;
background: #F4F4F4;
border-radius: 0.03rem;
color:#333;
font-style: 13px;
text-align: center;
margin-right: 0.27rem;
margin-bottom: 0.47rem;
&.act{color:#fff;background: #1969F9;}
}
}
}
.foor-btn{
position: absolute;
bottom:0.37rem;
left:-0.33rem;
width:100%;
.fl{width:50%;height:49px;text-align: center; line-height: 49px;}
span{color:#999;border-top: 1px solid #e5e5e5;}
p{color:#fff;background: #1969F9;border-top: 1px solid #1969F9;}
}
}
}
}
\ No newline at end of file
body,html{background:#f8f8f8}.order{padding-top:89px }.order .o-header{height:40px;background:#8D9598;position:fixed;z-index:2;left:0px;top:0px;right:0px}.order .o-header .order-back{margin-left:.36rem;margin-right:.25rem;color:#fff;font-size:20px;position:relative;top:.2rem;cursor:pointer}.order .o-header .search-box{padding-top:.17rem;position:relative}.order .o-header .search-box i{font-size:20px;position:absolute;top:.22rem;left:.24rem;color:#999999;cursor:pointer}.order .o-header .search-box input{width:5.33rem;height:27px;border-radius:27px;padding-left:1rem;background:#FFFFFF}.order .o-header .shift{color:#fff;font-size:15px;margin-left:.4rem;margin-top:.25rem;cursor:pointer}.order .o-header .order-kf{color:#fff;font-size:20px;cursor:pointer;margin-top:.22rem;margin-right:.37rem}.order .o-tabnav{height:49px;position:fixed;z-index:2;left:0px;top:40px;right:0px}.order .o-tabnav .van-tabs__wrap{height:49px}.order .o-tabnav .van-tab__text{color:#333;font-size:14px}.order .o-tabnav .van-tab--active .van-tab__text{color:#1969F9}.order .o-tabnav .van-tabs__line{background-color:#1969F9}.order .o-tabnav .van-tabs__line{width:55px}.order .o-list .van-hairline--surround::after,.order .o-list .van-hairline--top::after{border:1px solid #e5e5e5}.order .o-list .list-group{background:#fff;margin-top:.4rem;padding:.33rem}.order .o-list .list-group .l-h{color:#6F6F6F;font-size:12px;height:17px;line-height:17px;margin-bottom:.44rem}.order .o-list .list-group .l-h span{color:#333;display:inline-block;width:1.12rem;height:17px;background:#F9F9F9;border-radius:2px;border:1px solid #E5E5E5;text-align:center;cursor:pointer;margin-left:.22rem;margin-right:.22rem}@media screen and (max-width:320px){.order .o-list .list-group .l-h span{margin-left:.1rem;margin-right:.1rem}.order .o-list .list-group .l-h p{height:17px;width:67px;overflow:hidden}}.order .o-list .list-group .l-h font{color:#333}.order .o-list .list-group .l-h font.yellows{color:#F1730F}.order .o-list .list-group .l-h font.reds{color:#E25555}.order .o-list .list-group .l-h font.greens{color:#2CA521}.order .o-list .list-group .l-c{background:#F9F9F9;margin-bottom:.33rem}.order .o-list .list-group .l-c .goods-group{padding:.24rem .3rem;height:17px;line-height:17px}.order .o-list .list-group .l-c .goods-group a{width:4.88rem;margin-right:.4rem;color:#333}@media screen and (max-width:320px){.order .o-list .list-group .l-c .goods-group a{width:4rem;margin-right:.2rem}}.order .o-list .list-group .l-b{font-size:12px}.order .o-list .list-group .l-b span{color:#6F6F6F}.order .o-list .list-group .l-b div{color:#FF693D;margin-left:.31rem}.order .o-list .list-group .l-b p{color:#333;font-size:17px}.order .o-list .list-group .l-b p b{color:#FF693D;font-weight:normal}.order .o-list .list-group .l-b .van-count-down{font-size:12px;margin-left:0px;margin-top:-0.02rem}.order .o-list .list-group .btn-boxs{margin-top:.61rem}.order .o-list .list-group .btn-boxs .btn{width:2.4rem;height:.73rem;line-height:.73rem;display:block;background:#1969F9;border-radius:2px;text-align:center;margin-left:10px;color:#fff;cursor:pointer;border:1px solid #1969F9}.order .o-list .list-group .btn-boxs .btn.btn-lk{background:#fff;color:#1969F9}.order .o-list .list-group .btn-boxs .btn.btn-default{background:#fff;border:1px solid #d2d2d2;color:#333}.order .shift-panel{position:fixed;top:0;bottom:0;left:0;right:0;background:rgba(0,0,0,0.4);z-index:3;padding-left:.85rem}.order .shift-panel .shift-box{width:100%;height:100%;background:#fff;padding-top:.37rem;padding-left:.33rem;padding-right:.33rem;position:relative;overflow:hidden}.order .shift-panel .shift-box .group-t{margin-bottom:.64rem}.order .shift-panel .shift-box .group-t h3{font-size:16px;font-weight:600;color:#333333;margin-bottom:.4rem}.order .shift-panel .shift-box .group-t .con-t .timepickers{width:3.45rem;height:.8rem;padding-left:.15rem;color:#959595;line-height:.8rem;background:#F9F9F9;border:1px solid #E5E5E5;position:relative}.order .shift-panel .shift-box .group-t .con-t .timepickers i{font-style:20px;margin-right:.3rem}.order .shift-panel .shift-box .group-t .con-t .line-h{color:#e5e5e5;margin-left:.2rem;margin-right:.2rem;height:.8rem;line-height:.8rem}.order .shift-panel .shift-box .group-t .con-t .c-item{width:2.67rem;height:.67rem;line-height:.67rem;background:#F4F4F4;border-radius:.03rem;color:#333;font-style:13px;text-align:center;margin-right:.27rem;margin-bottom:.47rem}.order .shift-panel .shift-box .group-t .con-t .c-item.act{color:#fff;background:#1969F9}.order .shift-panel .shift-box .foor-btn{position:absolute;bottom:.37rem;left:-0.33rem;width:100%}.order .shift-panel .shift-box .foor-btn .fl{width:50%;height:49px;text-align:center;line-height:49px}.order .shift-panel .shift-box .foor-btn span{color:#999;border-top:1px solid #e5e5e5}.order .shift-panel .shift-box .foor-btn p{color:#fff;background:#1969F9;border-top:1px solid #1969F9}
\ No newline at end of file
export default {
bind(el, binding) {
el.addEventListener('click', function () {
history.go(-1)
}, false);
}
}
\ No newline at end of file
......@@ -3,9 +3,10 @@ import BackTopDirective from './backTop';
import backTopWindowDirective from './backTopWindow';
import imgCodeDirective from './imgCode';
import shareMaskDirective from './shareMask';
import backGoDirective from './backGo';
export default {
install (Vue) {
Vue.directive('backGo', backGoDirective);
Vue.directive('shareMask', shareMaskDirective);
Vue.directive('backTop', BackTopDirective);
Vue.directive('backTopWindow', backTopWindowDirective);
......
......@@ -9,7 +9,6 @@ import md5 from 'js-md5'
import {services as Services} from './api/index'
import Util from './util/index'
import Vconsole from 'vconsole'
//本地环境开启提示信息
Vue.config.productionTip = false;
const env = process.env.NODE_ENV;
......
import Vue from 'vue'
import Router from 'vue-router'
const originalPush = Router.prototype.push
Router.prototype.push = function push(location) {
return originalPush.call(this, location).catch(err => err)
}
const Home = resolve => require(['@/views/home/Index'], resolve);
const Smt = resolve => require(['@/views/smt/Index'], resolve);
const Supplier = resolve => require(['@/views/supplier/Index'], resolve);
......@@ -37,6 +42,13 @@ const user = resolve => require(['@/views/user/index'], resolve);
const userInfo = resolve => require(['@/views/user/userInfo'], resolve);
const userCoupon = resolve => require(['@/views/user/coupon'], resolve);
const userAddress = resolve => require(['@/views/user/address'], resolve);
const userOrder = resolve => require(['@/views/user/order'], resolve);
const shipping = resolve => require(['@/views/user/shipping'], resolve);
const brand = resolve => require(['@/views/brand/brand'], resolve);
const brandList = resolve => require(['@/views/brand/brandList'], resolve);
const ranking = resolve => require(['@/views/rank/ranking'], resolve);
......@@ -321,6 +333,22 @@ const routes = [{
}
},
{
path: '/userOrder',
component: userOrder,
meta: {
title: '订单列表',
back: true
}
},
{
path: '/Usershipping',
component: shipping,
meta: {
title: '物流查询',
back: true
}
},
{
path: '/brand',
component: brand,
meta: {
......
import Vue from 'vue'
import { services as Services, productionUrlApi } from '../../../api/index'
import { Dialog, Toast } from 'vant'
Vue.use(Dialog);
var qs = require('qs');
const state = {
loading: false,
lists: {},
currentList: [],
pdf: "",
isUpdateList:false
}
const mutations = {
orderLists(state, payload) {
state.lists[payload.status] = payload.data
state.currentList = payload.data
}
}
const actions = {
//取消订单
orderCancel({ commit }, payload) {
state.loading = true;
var params = {
id: payload.order_id
}
Services.orderCancel(qs.stringify(params)).then((res) => {
state.loading = false;
Toast(res.data.err_msg)
if(res.data.err_code==0){
state.isUpdateList=true
}
}).catch(function (err) {
state.loading = false;
});
},
//确认收货
sureSend({ commit }, payload) {
state.loading = true;
var params = {
order_id: payload.order_id
}
Services.sureSend(qs.stringify(params)).then((res) => {
state.loading = false;
Toast(res.data.err_msg)
if(res.data.err_code==0){
state.isUpdateList=true
}
}).catch(function (err) {
state.loading = false;
});
},
//提醒发货
sendTips({ commit }, payload) {
state.loading = true;
var params = {
order_sn: payload.order_sn,
user_id: payload.user_id
}
Services.sendTips(qs.stringify(params)).then((res) => {
state.loading = false;
Toast(res.data.err_msg)
}).catch(function (err) {
state.loading = false;
});
},
//检测订单PDF
orderDownPdf({ commit }, payload) {
state.loading = true;
var params = {
id: payload.id
}
Services.checkPdf(qs.stringify(params)).then((res) => {
state.loading = false;
if (res.data.err_code == 0) {
//可以下载
window.location.href = productionUrlApi + "contract/pdf?id=" + payload.id + "&pf=" + lxpf;
} else {
Dialog.confirm({
message: '还没完善公司信息,你确定要去完善公司信息吗?',
})
.then(() => {
// on confirm
window.location.href = window.location.origin + "/h5/view/#/userInfo?orderPage=1"
})
.catch(() => {
// on cancel
});
}
}).catch(function (err) {
state.loading = false;
});
},
//获取订单列表
orderLists({ commit }, payload) {
//当前状态数据加载过 且没有强制更新
//参数变动 数据清空
if (payload.isGet) {
this.state.lists = {}
}
if (state.lists[payload.status] && !payload.isGet) {
//已经加载过
state.currentList = state.lists[payload.status];
return
}
state.loading = true;
var params = {
p: 1,
limit: 100
}
Object.keys(payload).forEach((item) => {
if (item != "type" && item != "isGet") {
params[item] = payload[item]
}
})
Services.orderLists(qs.stringify(params)).then((res) => {
let data = res.data;
state.loading = false;
state.isUpdateList=false
commit("orderLists", {
data: data.data.list || [],
status: payload.status,
})
}).catch(function (err) {
state.loading = false;
});
},
}
const getters = {}
export default {
state,
mutations,
actions,
getters
}
......@@ -23,6 +23,7 @@ import car from './modules/car/index'
import user from './modules/user/index'
import coupon from './modules/user/coupon'
import userInfo from './modules/user/userInfo'
import userOrder from './modules/user/order'
import address from './modules/user/address'
import brand from './modules/brand/brand'
import rank from './modules/rank/index'
......@@ -61,6 +62,7 @@ export default new Vuex.Store({
userInfo,
coupon,
address,
userOrder,
brand,
rank,
download,
......
<template>
<section class="shipping">
</section>
</template>
<script>
import Vue from 'vue';
import {mapState} from 'vuex'
import { Loading ,Tab,Tabs} from 'vant';
import Header from '@/views/common/Header.vue';
Vue.use(Loading).use(Tab).use(Tabs);
export default {
name: 'shipping',
data() {
return {
}
},
computed: {
...mapState({
})
},
watch: {
},
created() {
},
methods: {
},
components: {
}
}
</script>
<style scoped>
@import "../../assets/css/user/coupon.min.css";
</style>
\ No newline at end of file
This diff is collapsed. Click to expand it.
{"h":"15c3df1ed303cd626d7d","c":{"app":true}}
\ No newline at end of file
{"h":"b227d33ef2edbd744d8f","c":{"39":true}}
\ No newline at end of file
{"h":"e6b03fcde3df1a55a883","c":{"39":true}}
\ No newline at end of file
{"h":"39822222251d12e68ec8","c":{"app":true}}
\ No newline at end of file
{"h":"56aa80771c74f1c140ef","c":{}}
\ No newline at end of file
{"h":"411b98bd0e968ddcb379","c":{"app":true}}
\ No newline at end of file
{"h":"6fe9ac4611183692b33d","c":{"39":true}}
\ No newline at end of file
{"h":"d1291873844aec3a3df5","c":{"app":true}}
\ No newline at end of file
{"h":"e3eb411bb3a641571343","c":{"39":true}}
\ No newline at end of file
{"h":"3907133b8afd89b93c69","c":{"app":true}}
\ No newline at end of file
{"h":"5cc2e76f8b40c68a9d9e","c":{"app":true}}
\ No newline at end of file
{"h":"cb1646f011113c1e144a","c":{"39":true}}
\ No newline at end of file
{"h":"110c74524f77f0a2abf9","c":{"39":true}}
\ No newline at end of file
{"h":"e8e79ab24ab4159d36e0","c":{"39":true}}
\ No newline at end of file
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
{"h":"f61785e0904c2c687355","c":{"39":true}}
\ No newline at end of file
{"h":"dbcf835daaf1eaee0a82","c":{}}
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
{"h":"775a780f701497997fe9","c":{}}
\ No newline at end of file
{"h":"7933408d7b7638eb6dfb","c":{"app":true}}
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
{"h":"fe5e605ac443d49549ef","c":{"39":true}}
\ No newline at end of file
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
{"h":"a66a6269fd6a43c5c475","c":{"app":true}}
\ No newline at end of file
{"h":"649650df75e3dd2d31ba","c":{"39":true}}
\ No newline at end of file
{"h":"3a1ab9668997eff9c416","c":{"39":true}}
\ No newline at end of file
{"h":"5ad5e8764ba46f3b5858","c":{"39":true}}
\ No newline at end of file
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
{"h":"196abd7863e62af08595","c":{"app":true}}
\ No newline at end of file
{"h":"83e5effabffbb7891baa","c":{"app":true}}
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
{"h":"6ec355b3fd9ae13f79d9","c":{"39":true}}
\ No newline at end of file
{"h":"8c713a0a9ae6d7cc4dfd","c":{"app":true}}
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
{"h":"4156d27229fedbebc847","c":{}}
\ No newline at end of file
This diff is collapsed. Click to expand it.
{"h":"69395603bcf5fc8efb4a","c":{"app":true}}
\ No newline at end of file
{"h":"c85a6334d99d2ee085a1","c":{"app":true}}
\ No newline at end of file
{"h":"ccd91e2b1002d9a48b7e","c":{"app":true}}
\ No newline at end of file
{"h":"b80e2adb160dfe70faa4","c":{"39":true}}
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
{"h":"62bbe7aa7982cb7a8e3d","c":{"39":true}}
\ No newline at end of file
{"h":"3255aaef180023507601","c":{"39":true}}
\ No newline at end of file
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
{"h":"1a82b1984234863daede","c":{"39":true}}
\ No newline at end of file
This diff is collapsed. Click to expand it.
{"h":"8aa66f4ca5b32b157857","c":{"app":true}}
\ No newline at end of file
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
{"h":"fe55b4d0f50518984b9a","c":{"39":true}}
\ No newline at end of file
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
{"h":"5506b9fb53c0fb6e841c","c":{"app":true}}
\ No newline at end of file
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff is collapsed. Click to expand it.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
This diff could not be displayed because it is too large.
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or sign in to comment