提交 54644d78 编写于 作者: changdi.hao's avatar changdi.hao

Merge branch 'release' into 'master'

Release

See merge request com.pica.cloud.education.frontend/pica.cloud.web-education-admin!295
...@@ -2803,10 +2803,6 @@ ...@@ -2803,10 +2803,6 @@
"loader-utils": "~0.2.5" "loader-utils": "~0.2.5"
} }
}, },
"file-saver": {
"version": "github:eligrey/FileSaver.js#e865e37af9f9947ddcced76b549e27dc45c1cb2e",
"from": "github:eligrey/FileSaver.js#1.3.8"
},
"filename-regex": { "filename-regex": {
"version": "2.0.1", "version": "2.0.1",
"resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz", "resolved": "https://registry.npmjs.org/filename-regex/-/filename-regex-2.0.1.tgz",
...@@ -2961,7 +2957,8 @@ ...@@ -2961,7 +2957,8 @@
"ansi-regex": { "ansi-regex": {
"version": "2.1.1", "version": "2.1.1",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"aproba": { "aproba": {
"version": "1.2.0", "version": "1.2.0",
...@@ -2982,12 +2979,14 @@ ...@@ -2982,12 +2979,14 @@
"balanced-match": { "balanced-match": {
"version": "1.0.0", "version": "1.0.0",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"brace-expansion": { "brace-expansion": {
"version": "1.1.11", "version": "1.1.11",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"balanced-match": "^1.0.0", "balanced-match": "^1.0.0",
"concat-map": "0.0.1" "concat-map": "0.0.1"
...@@ -3002,17 +3001,20 @@ ...@@ -3002,17 +3001,20 @@
"code-point-at": { "code-point-at": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"concat-map": { "concat-map": {
"version": "0.0.1", "version": "0.0.1",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"console-control-strings": { "console-control-strings": {
"version": "1.1.0", "version": "1.1.0",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"core-util-is": { "core-util-is": {
"version": "1.0.2", "version": "1.0.2",
...@@ -3129,7 +3131,8 @@ ...@@ -3129,7 +3131,8 @@
"inherits": { "inherits": {
"version": "2.0.3", "version": "2.0.3",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"ini": { "ini": {
"version": "1.3.5", "version": "1.3.5",
...@@ -3141,6 +3144,7 @@ ...@@ -3141,6 +3144,7 @@
"version": "1.0.0", "version": "1.0.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"number-is-nan": "^1.0.0" "number-is-nan": "^1.0.0"
} }
...@@ -3155,6 +3159,7 @@ ...@@ -3155,6 +3159,7 @@
"version": "3.0.4", "version": "3.0.4",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"brace-expansion": "^1.1.7" "brace-expansion": "^1.1.7"
} }
...@@ -3162,12 +3167,14 @@ ...@@ -3162,12 +3167,14 @@
"minimist": { "minimist": {
"version": "0.0.8", "version": "0.0.8",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"minipass": { "minipass": {
"version": "2.2.4", "version": "2.2.4",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"safe-buffer": "^5.1.1", "safe-buffer": "^5.1.1",
"yallist": "^3.0.0" "yallist": "^3.0.0"
...@@ -3186,6 +3193,7 @@ ...@@ -3186,6 +3193,7 @@
"version": "0.5.1", "version": "0.5.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"minimist": "0.0.8" "minimist": "0.0.8"
} }
...@@ -3266,7 +3274,8 @@ ...@@ -3266,7 +3274,8 @@
"number-is-nan": { "number-is-nan": {
"version": "1.0.1", "version": "1.0.1",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"object-assign": { "object-assign": {
"version": "4.1.1", "version": "4.1.1",
...@@ -3278,6 +3287,7 @@ ...@@ -3278,6 +3287,7 @@
"version": "1.4.0", "version": "1.4.0",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"wrappy": "1" "wrappy": "1"
} }
...@@ -3363,7 +3373,8 @@ ...@@ -3363,7 +3373,8 @@
"safe-buffer": { "safe-buffer": {
"version": "5.1.1", "version": "5.1.1",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"safer-buffer": { "safer-buffer": {
"version": "2.1.2", "version": "2.1.2",
...@@ -3399,6 +3410,7 @@ ...@@ -3399,6 +3410,7 @@
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"code-point-at": "^1.0.0", "code-point-at": "^1.0.0",
"is-fullwidth-code-point": "^1.0.0", "is-fullwidth-code-point": "^1.0.0",
...@@ -3418,6 +3430,7 @@ ...@@ -3418,6 +3430,7 @@
"version": "3.0.1", "version": "3.0.1",
"bundled": true, "bundled": true,
"dev": true, "dev": true,
"optional": true,
"requires": { "requires": {
"ansi-regex": "^2.0.0" "ansi-regex": "^2.0.0"
} }
...@@ -3461,12 +3474,14 @@ ...@@ -3461,12 +3474,14 @@
"wrappy": { "wrappy": {
"version": "1.0.2", "version": "1.0.2",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
}, },
"yallist": { "yallist": {
"version": "3.0.2", "version": "3.0.2",
"bundled": true, "bundled": true,
"dev": true "dev": true,
"optional": true
} }
} }
}, },
...@@ -4448,7 +4463,6 @@ ...@@ -4448,7 +4463,6 @@
"integrity": "sha512-J9X76xnncMw+wIqb15HeWfPMqPwYxSpPY8yWPJ7rAZN/ZDzFkjCSZObryCyUe8zbrVRNiuCnIeQteCzMn7GnWw==", "integrity": "sha512-J9X76xnncMw+wIqb15HeWfPMqPwYxSpPY8yWPJ7rAZN/ZDzFkjCSZObryCyUe8zbrVRNiuCnIeQteCzMn7GnWw==",
"requires": { "requires": {
"canvg": "1.5.3", "canvg": "1.5.3",
"file-saver": "github:eligrey/FileSaver.js#e865e37af9f9947ddcced76b549e27dc45c1cb2e",
"html2canvas": "1.0.0-alpha.12", "html2canvas": "1.0.0-alpha.12",
"omggif": "1.0.7", "omggif": "1.0.7",
"promise-polyfill": "8.1.0", "promise-polyfill": "8.1.0",
...@@ -4468,6 +4482,10 @@ ...@@ -4468,6 +4482,10 @@
"base64-arraybuffer": "^0.1.5" "base64-arraybuffer": "^0.1.5"
} }
}, },
"file-saver": {
"version": "github:eligrey/FileSaver.js#e865e37af9f9947ddcced76b549e27dc45c1cb2e",
"from": "github:eligrey/FileSaver.js#e865e37af9f9947ddcced76b549e27dc45c1cb2e"
},
"html2canvas": { "html2canvas": {
"version": "1.0.0-alpha.12", "version": "1.0.0-alpha.12",
"resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.0.0-alpha.12.tgz", "resolved": "https://registry.npmjs.org/html2canvas/-/html2canvas-1.0.0-alpha.12.tgz",
......
...@@ -205,7 +205,6 @@ ...@@ -205,7 +205,6 @@
}, },
// 搜索框中输入文字 时 page=1 pageSize=30 // 搜索框中输入文字 时 page=1 pageSize=30
handleInputSearch() { handleInputSearch() {
// debugger;
clearTimeout(this.searchFlagTimer); clearTimeout(this.searchFlagTimer);
let that = this; let that = this;
that.page = 1; that.page = 1;
......
...@@ -34,6 +34,13 @@ body, div, span, header, footer, nav, section, aside, article, ul, dl, dt, dd, l ...@@ -34,6 +34,13 @@ body, div, span, header, footer, nav, section, aside, article, ul, dl, dt, dd, l
height: 0px; height: 0px;
background-color: #fff; background-color: #fff;
} }
.el-table ::-webkit-scrollbar{
width: 10px;
height: 10px;
background-color: rgb(184, 180, 180);
}
/*定义滚动条轨道 内阴影+圆角*/ /*定义滚动条轨道 内阴影+圆角*/
::-webkit-scrollbar-track ::-webkit-scrollbar-track
......
...@@ -47,6 +47,17 @@ export const queryOrderList = (params) => { ...@@ -47,6 +47,17 @@ export const queryOrderList = (params) => {
}) })
}; };
export const expressInfo = (params) => {
return fetch({
headers,
url: getBaseUrl(`campaign/distribution/logistics/expressInfo`),
method: 'get',
params: params,
description: '查询订单列表',
})
};
export const updateExpress = (params) => { export const updateExpress = (params) => {
return fetch({ return fetch({
headers, headers,
...@@ -57,6 +68,16 @@ export const updateExpress = (params) => { ...@@ -57,6 +68,16 @@ export const updateExpress = (params) => {
}) })
}; };
export const updateExpressNo = (params) => {
return fetch({
headers,
url: getBaseUrl(`store/orders/admin/${params.orderId}/updateExpressNo`),
method: 'post',
data: params,
description: '更新物流单号',
})
};
export const queryShopAuth = (params) => { export const queryShopAuth = (params) => {
return fetch({ return fetch({
......
...@@ -255,7 +255,6 @@ export const getGoodsExportUrl = (params) => { ...@@ -255,7 +255,6 @@ export const getGoodsExportUrl = (params) => {
}; };
export const getOrdersExportUrl = (params) => { export const getOrdersExportUrl = (params) => {
debugger
return fetch({ return fetch({
headers, headers,
url: getBaseUrl('/store/orders/admin/export'), url: getBaseUrl('/store/orders/admin/export'),
...@@ -265,6 +264,45 @@ export const getOrdersExportUrl = (params) => { ...@@ -265,6 +264,45 @@ export const getOrdersExportUrl = (params) => {
}) })
}; };
export const uploadExpress = (params) => {
return fetch({
headers,
url: getBaseUrl(`/store/batch/upload/express`),
method: 'POST',
data: params,
description: '批量更新物流操作',
})
};
export const uploadRefund = (params) => {
return fetch({
headers,
url: getBaseUrl(`/store/batch/upload/refund`),
method: 'POST',
data: params,
description: '批量取消退款操作',
})
};
export const getUploadExpressProgress = (id) => {
return fetch({
headers,
url: getBaseUrl(`store/batch/upload/progress/express/${id}`),
method: 'GET',
description: '查询批量更新物流处理进度,id为批次id',
})
};
export const getUploadRefundProgress = (id) => {
return fetch({
headers,
url: getBaseUrl(`store/batch/upload/progress/refund/${id}`),
method: 'GET',
description: '查询批量取消退款处理进度,id为批次id',
})
};
export const getExamAwardList = (params) => { export const getExamAwardList = (params) => {
return fetch({ return fetch({
...@@ -347,3 +385,7 @@ export const delActivity = (params) => { ...@@ -347,3 +385,7 @@ export const delActivity = (params) => {
description: '活动列表', description: '活动列表',
}) })
}; };
...@@ -307,6 +307,7 @@ export default { ...@@ -307,6 +307,7 @@ export default {
setAddVisible: false, setAddVisible: false,
storeId:'', storeId:'',
goodCondition:{ goodCondition:{
id:"",
goodIds:[], goodIds:[],
conditionType:'', conditionType:'',
number:'', number:'',
...@@ -502,6 +503,7 @@ export default { ...@@ -502,6 +503,7 @@ export default {
addGoodsCondition(){ addGoodsCondition(){
vm.remoteMethod(); vm.remoteMethod();
vm.goodCondition = { vm.goodCondition = {
id:"",
goodIds:[], goodIds:[],
conditionType:'', conditionType:'',
number:'', number:'',
...@@ -621,13 +623,15 @@ export default { ...@@ -621,13 +623,15 @@ export default {
}) })
}, },
// 本应分页加载,这个设置pageSize为最大值解决
remoteMethod(val) { remoteMethod(val) {
this.searchForm = { this.searchForm = {
goodsIdList:[], goodsIdList:[],
goodIdStr :val, goodIdStr :val,
goodsType :'', goodsType :'',
pageNo:1, pageNo:1,
pageSize: 10, pageSize: 999,
storeId:this.storeId, storeId:this.storeId,
commissionType: 0 commissionType: 0
}; };
...@@ -704,6 +708,10 @@ export default { ...@@ -704,6 +708,10 @@ export default {
if (!valid) return false; if (!valid) return false;
// vm.goodCondition.goodIds = []; // vm.goodCondition.goodIds = [];
// vm.goodCondition.goodIds = vm.setIdArray(vm.goodCondition.goodIdList); // vm.goodCondition.goodIds = vm.setIdArray(vm.goodCondition.goodIdList);
if(vm.goodCondition.conditionType == 2 && vm.goodCondition.number >= 100000){
this.$message({ type: "warning", message: "包邮金额最大不能超过99999.99!" });
return;
}
if(vm.resultForm.goodConditionReqList.length > 0){ if(vm.resultForm.goodConditionReqList.length > 0){
// this.formData.tabs[0].contents = vm.resultForm.goodConditionReqList.filter(function (item) { // this.formData.tabs[0].contents = vm.resultForm.goodConditionReqList.filter(function (item) {
......
...@@ -647,32 +647,56 @@ ...@@ -647,32 +647,56 @@
<div class="basic-item-icon"> <div class="basic-item-icon">
<div class="part-tit">销售信息</div> <div class="part-tit">销售信息</div>
<div class="inline"> <div class="inline">
<el-form-item label="销售方式" prop="saleType">
<el-radio-group v-model="formData.saleType" size="small">
<el-radio :label="1">零售</el-radio>
<el-radio :label="2" :disabled="commissionFlag == 1">批发</el-radio>
</el-radio-group>
<!-- <el-select-->
<!-- v-model="formData.saleType"-->
<!-- placeholder="请选择销售方式"-->
<!-- size="small"-->
<!-- @change="getSaleType(formData.saleType,2)">-->
<!-- <el-option-->
<!-- v-for="item in saleTypeList"-->
<!-- :key="item.value"-->
<!-- :label="item.label"-->
<!-- :value="item.value"-->
<!-- ></el-option>-->
<!-- </el-select>-->
</el-form-item>
</div>
<div class="inline" v-if="formData.saleType == 1">
<el-form-item label="零售价" prop="optPrice"> <el-form-item label="零售价" prop="optPrice">
<el-col :span="20"> <el-col :span="20">
<el-input <!-- <el-input-->
@input="$forceUpdate();" <!-- @input="$forceUpdate();"-->
size="small" <!-- size="small"-->
v-model="formData.optPrice" <!-- v-model="formData.optPrice"-->
placeholder="请输入零售价" <!-- placeholder="请输入零售价"-->
<!-- ></el-input>-->
<el-input-number class="stock-com" @input="$forceUpdate();" v-model="formData.optPrice" size="small" :precision="2" :min="0.00" :max="99999.99"></el-input-number>
></el-input>
<!-- <span class="word-num">{{(formData.name).replace(/\s+/g,"").length}}/60</span> --> <!-- <span class="word-num">{{(formData.name).replace(/\s+/g,"").length}}/60</span> -->
</el-col> </el-col>
</el-form-item> </el-form-item>
<!-- <el-form-item label="折扣价" prop="name"> </div>
<div class="inline" v-if="formData.saleType == 2">
<el-form-item label="批发价" prop="optPrice">
<el-col :span="20"> <el-col :span="20">
<el-input <!-- <el-input-->
size="small" <!-- @input="$forceUpdate();"-->
v-model="formData.name" <!-- size="small"-->
placeholder="请输入折扣价" <!-- v-model="formData.optPrice"-->
<!-- placeholder="请输入批发价"></el-input>-->
></el-input> <el-input-number class="stock-com" @input="$forceUpdate();" v-model="formData.optPrice" size="small" :precision="2" :min="0" :max="99999.99"></el-input-number>
</el-col> </el-col>
</el-form-item> --> </el-form-item>
</div> </div>
<div class="inline"> <div class="inline">
<el-form-item label="库存" prop="name" class="required-label"> <el-form-item label="库存" prop="stock" class="required-label">
<el-col :span="20"> <el-col :span="20">
<div class="stock-com"> <div class="stock-com">
<span class="sp sp-l" @click="changeStock(1)" :class="{'opac':formData.stock == 0}"><i class="el-icon-minus"></i></span> <span class="sp sp-l" @click="changeStock(1)" :class="{'opac':formData.stock == 0}"><i class="el-icon-minus"></i></span>
...@@ -692,21 +716,23 @@ ...@@ -692,21 +716,23 @@
</el-form-item> </el-form-item>
</div> </div>
<div class="inline"> <div class="inline" v-if="formData.saleType == 1">
<el-form-item label="最小起购件数" prop="name" class="required-label"> <el-form-item label="最小起购件数" prop="leastCount" class="required-label">
<el-col :span="20"> <el-col :span="20">
<div class="stock-com"> <div class="stock-com" style="width: 500px;display:flex">
<span class="sp sp-l" @click="minusCount(1)"><i class="el-icon-minus"></i></span> <el-input-number class="stock-com" @input="$forceUpdate();" v-model="formData.leastCount" size="small" :precision="0" :min="0" :max="9999"></el-input-number>
<!-- <span class="sp sp-l" @click="minusCount(1)"><i class="el-icon-minus"></i></span>
<span class="sp sp-c">{{formData.leastCount}}</span> <span class="sp sp-c">{{formData.leastCount}}</span>
<span class="sp sp-r" @click="plusCount(1)"><i class="el-icon-plus"></i></span> <span class="sp sp-r" @click="plusCount(1)"><i class="el-icon-plus"></i></span> -->
<span class="word-num" style="margin-left: 10px;">最高9999件哦</span>
</div> </div>
<p class="error-message" v-if="formData.leastCount <= 0">最小起购件数不能为0</p> <p class="error-message" v-if="formData.leastCount <= 0">最小起购件数不能为0</p>
</el-col> </el-col>
</el-form-item> </el-form-item>
</div> </div>
<div class="inline" v-if="formData.leastCount > 1"> <div class="inline" v-if="formData.saleType == 1 && formData.leastCount > 1">
<el-form-item label="递增方式" prop="incrType"> <el-form-item label="递增方式">
<el-col :span="24"> <el-col :span="24">
<el-radio size="mini" v-model="formData.incrType" :label="2">倍数递增</el-radio> <el-radio size="mini" v-model="formData.incrType" :label="2">倍数递增</el-radio>
<el-radio v-model="formData.incrType" :label="1">1件递增</el-radio> <el-radio v-model="formData.incrType" :label="1">1件递增</el-radio>
...@@ -714,14 +740,15 @@ ...@@ -714,14 +740,15 @@
</el-form-item> </el-form-item>
</div> </div>
<div class="inline"> <div class="inline" v-if="formData.saleType == 1">
<el-form-item label="单次购买上限" prop="name" class="required-label"> <el-form-item label="单次购买上限" prop="mostCount" class="required-label">
<el-col :span="20" style="width: 300%;"> <el-col :span="20" style="width: 300%;">
<div class="stock-com" style="width: 500px;"> <div class="stock-com" style="width: 500px;display:flex">
<span class="sp sp-l" @click="minusCount(2)"><i class="el-icon-minus"></i></span> <el-input-number class="stock-com" @input="$forceUpdate();" v-model="formData.mostCount" size="small" :precision="0" :min="-1" :max="9999"></el-input-number>
<!-- <span class="sp sp-l" @click="minusCount(2)"><i class="el-icon-minus"></i></span>
<span class="sp sp-c">{{formData.mostCount}}</span> <span class="sp sp-c">{{formData.mostCount}}</span>
<span class="sp sp-r" @click="plusCount(2)"><i class="el-icon-plus"></i></span> <span class="sp sp-r" @click="plusCount(2)"><i class="el-icon-plus"></i></span> -->
<span class="word-num" style="margin-left: 10px;">数值为-1时,代表单次购买上限已无限制</span> <span class="word-num" style="margin-left: 10px;">数值为-1时,代表单次购买上限已无限制(最高9999件哦)</span>
</div> </div>
<p class="error-message" v-if="formData.mostCount === 0">单次购买上限不能为0</p> <p class="error-message" v-if="formData.mostCount === 0">单次购买上限不能为0</p>
<!-- <p class="error-message" v-if="formData.mostCount <= -1">单次购买上限已无限制</p>--> <!-- <p class="error-message" v-if="formData.mostCount <= -1">单次购买上限已无限制</p>-->
...@@ -730,8 +757,8 @@ ...@@ -730,8 +757,8 @@
</div> </div>
<div class="inline"> <div class="inline" v-if="formData.saleType == 1">
<el-form-item label="第三方商品编码" prop="externalGoodsCode"> <el-form-item label="第三方商品编码">
<el-col :span="20"> <el-col :span="20">
<el-input <el-input
size="small" size="small"
...@@ -741,18 +768,31 @@ ...@@ -741,18 +768,31 @@
</el-col> </el-col>
</el-form-item> </el-form-item>
</div> </div>
<div class="inline" v-if="formData.saleType == 2">
<el-form-item label="最小起批" prop="minWhole" class="required-label">
<el-col :span="20">
<div class="stock-com">
<span class="sp sp-l" @click="minusCount(3)"><i class="el-icon-minus"></i></span>
<span class="sp sp-c">{{formData.minWhole}}</span>
<span class="sp sp-r" @click="plusCount(3)"><i class="el-icon-plus"></i></span>
</div>
<p class="error-message" v-if="formData.minWhole <= 0">最小起批不能为0</p>
</el-col>
</el-form-item>
</div> </div>
</el-form>
<el-form </div>
ref="formData" <!-- </el-form>-->
:model="formData"
:rules="rules" <!-- <el-form-->
label-width="150px" <!-- ref="formData"-->
label-suffix=":" <!-- :model="formData"-->
class="basic-form" <!-- :rules="rules"-->
> <!-- label-width="150px"-->
<div class="basic-item-icon"> <!-- label-suffix=":"-->
<!-- class="basic-form"-->
<!-- >-->
<div class="basic-item-icon" v-if="formData.saleType == 1">
<div class="part-tit">限购条件</div> <div class="part-tit">限购条件</div>
<div v-for="(item, index) in buyLimitDtoList" :key="index" > <div v-for="(item, index) in buyLimitDtoList" :key="index" >
<el-form-item label="限制条件"> <el-form-item label="限制条件">
...@@ -895,10 +935,19 @@ ...@@ -895,10 +935,19 @@
label: '年', label: '年',
value: 365, value: 365,
}], }],
saleTypeList: [
{
value: 1,
label: "零售"
},
{
value: 2,
label: "批发"
}],
checkPackageIdList: [{name:'其他',content:0}], checkPackageIdList: [{name:'其他',content:0}],
hospitalTypeList: [{label:'村卫生室',value:1},{label:'乡镇卫生院/中心',value:2}], // 医疗机构类型 hospitalTypeList: [{label:'村卫生室',value:1},{label:'乡镇卫生院/中心',value:2}], // 医疗机构类型
checkTypeList: [{label:'常规检测',value:1}], // 检测类型 checkTypeList: [{label:'常规检测',value:1}], // 检测类型
suitableList: [{label:'儿童',value:'1'},{label:'青年',value:'2'},{label:'中年',value:'4'},{label:'老年',value:'8'}], // 适用人群 suitableList: [{label:'儿童',value:'1'},{label:'青年',value:'2'},{label:'中年',value:'4'},{label:'老年',value:'8'},{label:'40-74岁的结直肠癌高风险人群',value:'10'}], // 适用人群
// 不同类型服务的表单通用字段 // 不同类型服务的表单通用字段
// 不同类型服务的表单通用字段 // 不同类型服务的表单通用字段
...@@ -985,7 +1034,7 @@ ...@@ -985,7 +1034,7 @@
this.checkPackageIdList = res.data; this.checkPackageIdList = res.data;
}) })
} }
debugger; // debugger;
// 判空 // 判空
if (this.formData.leastCount == null || this.formData.leastCount === '') { if (this.formData.leastCount == null || this.formData.leastCount === '') {
this.formData.leastCount = 1; this.formData.leastCount = 1;
...@@ -1186,6 +1235,10 @@ ...@@ -1186,6 +1235,10 @@
this.fileIntrList = this.getImges(imageList,2) this.fileIntrList = this.getImges(imageList,2)
}); });
},
// 销售方式
getSaleType(saleType, type){
}, },
getGoodsTypes(goodsType,type){ getGoodsTypes(goodsType,type){
this.goodsType = goodsType; this.goodsType = goodsType;
...@@ -1329,7 +1382,10 @@ ...@@ -1329,7 +1382,10 @@
}, },
complete() { complete() {
this.formData1.leastCount = this.formData.leastCount;
this.formData1.mostCount = this.formData.mostCount;
let formNameList = ['formData', 'formData1', 'formData2']; let formNameList = ['formData', 'formData1', 'formData2'];
// let formName = "formData"; // let formName = "formData";
if(this.goodsType == 337 ){ if(this.goodsType == 337 ){
formNameList = ['formData', 'formData2']; formNameList = ['formData', 'formData2'];
...@@ -1378,12 +1434,23 @@ ...@@ -1378,12 +1434,23 @@
} }
let isTrue = false; let isTrue = false;
formNameList.map(item=>{ // formNameList.map(item=>{
this.$refs[item].validate((valid) => { // this.$refs[item].validate((valid,object) => {
// isTrue = valid;
// if (!valid) return false;
// });
// });
let item = "";
for(let i = 0; i < formNameList.length; i++){
item = formNameList[i];
this.$refs[item].validate((valid,object) => {
isTrue = valid; isTrue = valid;
if (!valid) return false; if (!valid) return false;
}); });
}); if(!isTrue){
return;
}
}
if(!isTrue){ if(!isTrue){
return false; return false;
...@@ -1592,6 +1659,11 @@ ...@@ -1592,6 +1659,11 @@
this.formData1.mostCount = this.formData.mostCount; this.formData1.mostCount = this.formData.mostCount;
} }
} }
else if(type === 3){
if (this.formData.minWhole >= 2) {
this.formData.minWhole -= 1;
}
}
// if (this.formData.mostCount < this.formData.leastCount) { // if (this.formData.mostCount < this.formData.leastCount) {
// this.formData.mostCount = this.formData.leastCount; // this.formData.mostCount = this.formData.leastCount;
// } // }
...@@ -1604,6 +1676,9 @@ ...@@ -1604,6 +1676,9 @@
this.formData.mostCount += 1; this.formData.mostCount += 1;
this.formData1.mostCount = this.formData.mostCount; this.formData1.mostCount = this.formData.mostCount;
} }
else if(type === 3){
this.formData.minWhole += 1;
}
// if (this.formData.mostCount < this.formData.leastCount) { // if (this.formData.mostCount < this.formData.leastCount) {
// this.formData.mostCount = this.formData.leastCount; // this.formData.mostCount = this.formData.leastCount;
// } // }
...@@ -1675,7 +1750,7 @@ ...@@ -1675,7 +1750,7 @@
checkCount(){ checkCount(){
let flag = true; let flag = true;
if(this.formData.mostCount == 0){ if(this.formData.saleType == 1 && this.formData.mostCount == 0){
flag = false; flag = false;
this.$message({ this.$message({
message: '单次购买上限不能为0', message: '单次购买上限不能为0',
...@@ -1684,7 +1759,7 @@ ...@@ -1684,7 +1759,7 @@
return flag; return flag;
} }
if(this.formData.mostCount != -1 && this.formData.mostCount < this.formData.leastCount){ if(this.formData.saleType == 1 && this.formData.mostCount != -1 && this.formData.mostCount < this.formData.leastCount){
flag = false; flag = false;
this.$message({ this.$message({
message: '单次购买上限不能小于最小起购件数', message: '单次购买上限不能小于最小起购件数',
...@@ -1784,7 +1859,7 @@ ...@@ -1784,7 +1859,7 @@
.word-num { .word-num {
font-size: 12px; font-size: 12px;
color: #999; color: #999;
padding-top: 5px; // padding-top: 5px;
} }
.line { .line {
...@@ -1901,4 +1976,28 @@ ...@@ -1901,4 +1976,28 @@
margin-right: 15px; margin-right: 15px;
position: relative; position: relative;
} }
//.el-input-number__increase {
// right: 1px;
// border-radius: 0 4px 4px 0;
// border-left: 1px solid #449284;
//}
.el-input-number__decrease, .el-input-number__increase {
position: absolute;
z-index: 1;
top: 1px;
width: 40px;
height: auto;
text-align: center;
background: #449284;
color: #606266;
cursor: pointer;
font-size: 13px;
}
.el-icon-plus {
color:#ffffff;
}
.el-icon-minus {
color:#ffffff;
}
</style> </style>
...@@ -63,7 +63,9 @@ const form = { ...@@ -63,7 +63,9 @@ const form = {
externalGoodsCode: '', externalGoodsCode: '',
leastCount:1, leastCount:1,
mostCount: -1, mostCount: -1,
incrType:1 incrType:1,
saleType:1,
minWhole:0
}; };
......
...@@ -65,6 +65,22 @@ ...@@ -65,6 +65,22 @@
</el-select> </el-select>
</el-form-item> </el-form-item>
</el-col> </el-col>
<el-col :span="6">
<el-form-item label="销售方式" v-if="commissionFlag == 2">
<el-select
v-model="searchForm.saleType"
placeholder="请选择销售方式"
size="small"
clearable>
<el-option
v-for="item in saleTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item>
</el-col>
<el-col :span="6" style="text-align: right"> <el-col :span="6" style="text-align: right">
<el-button type="primary" size="small" @click="searchList">查询</el-button> <el-button type="primary" size="small" @click="searchList">查询</el-button>
<el-button type="default" size="small" @click="resetForm" style="margin-left:0;">重置</el-button> <el-button type="default" size="small" @click="resetForm" style="margin-left:0;">重置</el-button>
...@@ -138,9 +154,10 @@ ...@@ -138,9 +154,10 @@
<span v-if="scope.row.proxyCommissionType == 2">{{scope.row.proxyCommissionPrice | priceNum}}</span> <span v-if="scope.row.proxyCommissionType == 2">{{scope.row.proxyCommissionPrice | priceNum}}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="saleTypeStr" label="销售方式" width="170" align="center">
</el-table-column>
<el-table-column prop="saleTime" label="发布时间" width="170" align="center"> <el-table-column prop="saleTime" label="发布时间" width="170" align="center">
</el-table-column> </el-table-column>
<el-table-column label="操作" width="200" align="center" fixed="right"> <el-table-column label="操作" width="200" align="center" fixed="right">
<template slot-scope="scope"> <template slot-scope="scope">
<div v-if="scope.row.commissionFlag == 2"> <div v-if="scope.row.commissionFlag == 2">
...@@ -377,6 +394,7 @@ ...@@ -377,6 +394,7 @@
pageSize: 10, pageSize: 10,
storeId:0, storeId:0,
commissionType: 0, commissionType: 0,
saleType:0,
proxyCommissionType:0 proxyCommissionType:0
}, },
innerVisible:false, innerVisible:false,
...@@ -405,6 +423,19 @@ ...@@ -405,6 +423,19 @@
value: 2, value: 2,
label: "固定分佣" label: "固定分佣"
}], }],
saleTypeList: [
{
value: 0,
label: "全部"
},
{
value: 1,
label: "零售"
},
{
value: 2,
label: "批发"
}],
typeList: [], typeList: [],
//uploadUrl:getBaseUrl('store/goods/import'), //uploadUrl:getBaseUrl('store/goods/import'),
postData:{}, postData:{},
...@@ -769,6 +800,7 @@ ...@@ -769,6 +800,7 @@
this.searchForm.goodsName = '' this.searchForm.goodsName = ''
this.searchForm.goodsType = '' this.searchForm.goodsType = ''
this.searchForm.commissionType = 0; this.searchForm.commissionType = 0;
this.searchForm.saleType = 0;
this.searchForm.pageNo = 1 this.searchForm.pageNo = 1
this.searchForm.pageSize = 10 this.searchForm.pageSize = 10
...@@ -785,9 +817,9 @@ ...@@ -785,9 +817,9 @@
this.getLists(); this.getLists();
}, },
exportOpt() { exportOpt() {
const { goodsIdList, goodsType, goodsName, storeId } = this.searchForm; const { goodsIdList, goodsType, goodsName, storeId, saleType } = this.searchForm;
getGoodsExportUrl({ goodsIdList, goodsType, goodsName, storeId }).then(res => { getGoodsExportUrl({ goodsIdList, goodsType, goodsName, storeId, saleType }).then(res => {
if (res.code != '000000') { if (res.code != '000000') {
this.$message({ message: res.message, type: 'error' }); this.$message({ message: res.message, type: 'error' });
return; return;
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
<div class="trade-status" v-if="showStatus == 2"><img src="../../assets/image/order/order_status2.png"/>已发货</div> <div class="trade-status" v-if="showStatus == 2"><img src="../../assets/image/order/order_status2.png"/>已发货</div>
<div class="trade-status" v-if="showStatus == 3"><img src="../../assets/image/order/order_status3.png"/>待发货</div> <div class="trade-status" v-if="showStatus == 3"><img src="../../assets/image/order/order_status3.png"/>待发货</div>
<div class="trade-status" v-if="showStatus == 4"><img src="../../assets/image/order/order_status4.png"/>等待买家付款</div> <div class="trade-status" v-if="showStatus == 4"><img src="../../assets/image/order/order_status4.png"/>等待买家付款</div>
<div class="trade-status" v-if="showStatus == 5"><img src="../../assets/image/order/order_status5.png"/>交易关闭</div> <div class="trade-status" v-if="showStatus == 5"><img src="../../assets/image/order/order_status5.png"/>退款/关闭</div>
<div class="trade-info"> <div class="trade-info">
<el-card class="left-card"> <el-card class="left-card">
<div slot="header" class="clearfix"> <div slot="header" class="clearfix">
...@@ -29,6 +29,9 @@ ...@@ -29,6 +29,9 @@
<div v-if="storeType == 1"> <div v-if="storeType == 1">
<p>物流公司:{{orderDetailData.expressName}}</p> <p>物流公司:{{orderDetailData.expressName}}</p>
<p>快递单号:{{orderDetailData.expressNo}}</p> <p>快递单号:{{orderDetailData.expressNo}}</p>
<el-button type="text" @click="copyTxt">复制</el-button>
<el-button type="text" @click="updateOrderNo">修改物流单号</el-button>
<input type="text" id="copyInput" class="hidden-input" />
</div> </div>
<div v-if="storeType == 2"> <div v-if="storeType == 2">
<p>配送员姓名:{{orderDetailData.sender}}</p> <p>配送员姓名:{{orderDetailData.sender}}</p>
...@@ -67,6 +70,9 @@ ...@@ -67,6 +70,9 @@
<p v-if="showStatus == 1 || showStatus == 2 || showStatus == 3">支付时间:{{orderDetailData.paymentTime}}</p> <p v-if="showStatus == 1 || showStatus == 2 || showStatus == 3">支付时间:{{orderDetailData.paymentTime}}</p>
<p v-if="showStatus == 1 || showStatus == 2 || showStatus == 3">&nbsp;&nbsp;&nbsp;招募人:{{orderDetailData.ownerName}}</p> <p v-if="showStatus == 1 || showStatus == 2 || showStatus == 3">&nbsp;&nbsp;&nbsp;招募人:{{orderDetailData.ownerName}}</p>
<p v-if="showStatus == 1 || showStatus == 2 || showStatus == 3">所属药代:{{orderDetailData.brokerName}}</p> <p v-if="showStatus == 1 || showStatus == 2 || showStatus == 3">所属药代:{{orderDetailData.brokerName}}</p>
<p>下单人手机号:{{orderDetailData.prescriberMobile}}</p>
<p>订单类型:{{orderDetailData.saleTypeStr}}</p>
<p v-if="orderDetailData.refundReason">退款原因:{{orderDetailData.refundReason}}</p>
<!--<p>发货时间:{{orderDetailData.sendTime}}</p>--> <!--<p>发货时间:{{orderDetailData.sendTime}}</p>-->
<!--<p>成交时间:{{orderDetailData.finishTime}}</p>--> <!--<p>成交时间:{{orderDetailData.finishTime}}</p>-->
</div> </div>
...@@ -114,12 +120,34 @@ ...@@ -114,12 +120,34 @@
@closeSendSet="closeSendSet"> @closeSendSet="closeSendSet">
</send-set-dialog> </send-set-dialog>
</div> </div>
<el-dialog
class="tui-dialog"
title="修改物流单号"
:visible="showOrderNoFlag"
@close="showOrderNoFlag = false"
width="600px"
>
<el-form ref="orderDetailData" :model="orderDetailData" :rules="rulesExpress" label-width="120px">
<el-form-item label="快递公司" prop="expressName">
<el-input v-model="orderDetailData.expressName"></el-input>
</el-form-item>
<el-form-item label="快递单号" prop="expressNo">
<el-input v-model="orderDetailData.expressNo"></el-input>
</el-form-item>
<el-form-item label="备注" prop="remark">
<el-input v-model="orderDetailData.remark"></el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="confirmExpressNo">完成</el-button>
</span>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
// import { openLoading, closeLoading } from "../../utils/utils"; // import { openLoading, closeLoading } from "../../utils/utils";
import BreadCrumb from "@/components/breadcrumb.vue"; import BreadCrumb from "@/components/breadcrumb.vue";
import { queryOrderDetail } from '@/utils/shop'; import { queryOrderDetail, updateExpressNo } from '@/utils/shop';
import SendSetDialog from "@/components/shop/send-set-dialog"; import SendSetDialog from "@/components/shop/send-set-dialog";
export default { export default {
components: { components: {
...@@ -155,12 +183,23 @@ ...@@ -155,12 +183,23 @@
payChannel: '',//支付方式 payChannel: '',//支付方式
ownerName:'',// 招募人姓名 ownerName:'',// 招募人姓名
brokerName:'',//药代名称 brokerName:'',//药代名称
prescriberMobile:'',//下单人手机号
// showStatus: null,//订单展示状态,1已完成,2已发货,3待发货,4待支付,5交易关闭 // showStatus: null,//订单展示状态,1已完成,2已发货,3待发货,4待支付,5交易关闭
saleTypeStr:'',// 订单类型
},
rulesExpress: {
expressName: [
{ required: true, message: '请输入快递公司', trigger: "blur"},
],
expressNo: [
{ required: true, message: '请输入快递单号', trigger: "blur"},
]
}, },
tableData: [], tableData: [],
sendGoodsDialog: false, sendGoodsDialog: false,
dialogTitle: '', dialogTitle: '',
sendSetForm: {}, sendSetForm: {},
showOrderNoFlag: false,
} }
}, },
created() { created() {
...@@ -209,6 +248,63 @@ ...@@ -209,6 +248,63 @@
} }
}) })
}, },
// 修改物流单号
updateOrderNo(){
this.showOrderNoFlag = true;
},
confirmExpressNo() {
if (this.orderDetailData.expressName == null || this.orderDetailData.expressName == "") {
this.$message.error("请填写快递公司");
return;
}
if (this.orderDetailData.expressNo == null || this.orderDetailData.expressNo == "") {
this.$message.error("请填写快递单号");
return;
}
updateExpressNo({
orderId: this.orderId,
expressName: this.orderDetailData.expressName,
expressNo: this.orderDetailData.expressNo,
remark: this.orderDetailData.remark
}).then(res => {
if (res.code == '000000') {
this.$message.success('操作成功');
this.showOrderNoFlag = false;
this.searchList();
} else {
this.$message.success(`操作失败:${res.message},请重试`);
}
});
},
copyTxt() {
let txt = document.getElementById("copyInput");
txt.value = this.orderDetailData.expressNo;
// if (navigator.userAgent.match(/(iPhone|iPod|iPad|Mac);?/i)) {
if (navigator.userAgent.indexOf("Safari") > -1 && navigator.userAgent.indexOf("Chrome") < 1) {
var el = document.createElement('input');
el.value = txt.value;//要复制的内容
el.style.opacity = '0';
document.body.appendChild(el);
var editable = el.contentEditable;
var readOnly = el.readOnly;
el.contentEditable = true;
el.readOnly = false;
const range = document.createRange();
range.selectNodeContents(el);
var sel = window.getSelection();
sel.removeAllRanges();
sel.addRange(range);
el.setSelectionRange(0, 999999);
el.contentEditable = editable;
el.readOnly = readOnly;
var ret = document.execCommand('copy');
el.blur();
} else {
txt.select(); //选择对象
document.execCommand("copy");
}
this.$message.success('复制成功');
},
}, },
filters: { filters: {
toFixed2: function (value) { toFixed2: function (value) {
......
<template> <template>
<div class="order-manage-wrapper"> <div class="order-manage-wrapper">
<bread-crumb :curmbFirst="curmbFirst" :curmbSecond="curmbSecond"></bread-crumb> <bread-crumb
:curmbFirst="curmbFirst"
:curmbSecond="curmbSecond"
></bread-crumb>
<div class="order-manage-content screenSet" id="screenSet"> <div class="order-manage-content screenSet" id="screenSet">
<div class="header-title">订单管理</div> <div class="header-title">订单管理</div>
<el-form ref="searchForm" :model="searchForm" label-width="80px" label-suffix=":" :inline="true"> <el-form
ref="searchForm"
:model="searchForm"
label-width="80px"
label-suffix=":"
:inline="true"
>
<el-row :gutter="30" type="flex" style="margin-top: 10px"> <el-row :gutter="30" type="flex" style="margin-top: 10px">
<el-col :span="18"> <el-col :span="24">
<el-form-item label="商品名称"> <el-form-item label="商品名称">
<el-input v-model="searchForm.goodsName" size="small" placeholder="请输入商品名称"></el-input> <el-input
v-model="searchForm.goodsName"
size="small"
placeholder="请输入商品名称"
></el-input>
</el-form-item> </el-form-item>
<el-form-item label="订单号"> <el-form-item label="订单号">
<el-input v-model="searchForm.orderNo" size="small" placeholder="请输入订单号"></el-input> <el-input
v-model="searchForm.orderNo"
size="small"
placeholder="请输入订单号"
></el-input>
</el-form-item> </el-form-item>
<el-form-item label="买家名称"> <el-form-item label="买家名称">
<el-input v-model="searchForm.receiver" size="small" placeholder="请输入买家名称"></el-input> <el-input
v-model="searchForm.receiver"
size="small"
placeholder="请输入买家名称"
></el-input>
</el-form-item> </el-form-item>
<el-form-item label="创建人"> <el-form-item label="创建人">
<el-input v-model="searchForm.prescriberName" size="small" placeholder="请输入创建人名称"></el-input> <el-input
v-model="searchForm.prescriberName"
size="small"
placeholder="请输入创建人名称"
></el-input>
</el-form-item> </el-form-item>
</el-col> </el-col>
</el-row> </el-row>
<el-row :gutter="30" type="flex" style="margin-top: 10px"> <el-row :gutter="30" type="flex" style="margin-top: 10px">
<el-col :span="18"> <el-col :span="24">
<el-form-item label="下单时间" class="t-b"> <el-form-item label="下单时间" class="t-b">
<el-date-picker <el-date-picker
v-model="createRangeTime" v-model="createRangeTime"
...@@ -30,8 +55,9 @@ ...@@ -30,8 +55,9 @@
range-separator="至" range-separator="至"
start-placeholder="开始日期" start-placeholder="开始日期"
end-placeholder="结束日期" end-placeholder="结束日期"
style="width: 90%;" style="width: 90%"
:picker-options="pickerOptions1"> :picker-options="pickerOptions1"
>
</el-date-picker> </el-date-picker>
</el-form-item> </el-form-item>
<el-form-item label="招募人"> <el-form-item label="招募人">
...@@ -41,7 +67,6 @@ ...@@ -41,7 +67,6 @@
placeholder="请输入招募人" placeholder="请输入招募人"
@change="changeOwner" @change="changeOwner"
clearable clearable
style="width:110%;height: 32px;line-height: 32px;"
> >
<el-option <el-option
v-for="item in brokerOwnerList" v-for="item in brokerOwnerList"
...@@ -57,7 +82,6 @@ ...@@ -57,7 +82,6 @@
id="statusSelector" id="statusSelector"
placeholder="请输入药代姓名" placeholder="请输入药代姓名"
clearable clearable
style="width:110%;height: 32px;line-height: 32px;"
> >
<el-option <el-option
v-for="item in brokerList" v-for="item in brokerList"
...@@ -67,11 +91,52 @@ ...@@ -67,11 +91,52 @@
></el-option> ></el-option>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="订单类型">
<el-select
v-model="searchForm.saleType"
placeholder="请选择订单类型"
size="small"
clearable
>
<el-option
v-for="item in saleTypeList"
:key="item.value"
:label="item.label"
:value="item.value"
></el-option>
</el-select>
</el-form-item>
</el-col> </el-col>
<el-col :span="6" style="text-align: right"> <el-col :span="6" style="text-align: right">
<el-button type="primary" size="small" @click="searchList">查询</el-button> <div class="button-container">
<el-button type="default" size="small" @click="resetForm" style="margin-left:0;">重置</el-button> <el-button type="primary" size="small" @click="searchList"
<el-button type="primary" size="small" @click="exportOrder">导出订单</el-button> >查询</el-button
>
<el-button
type="default"
size="small"
@click="resetForm"
style="margin-left: 0"
>重置</el-button
>
<el-button type="primary" size="small" @click="exportOrder"
>导出订单</el-button
>
</div>
<div class="button-container">
<el-button
type="primary"
size="small"
@click="ShowExportDialog(1)"
>导入物流单号</el-button
>
<el-button
type="primary"
size="small"
@click="ShowExportDialog(2)"
>批量取消订单</el-button
>
</div>
</el-col> </el-col>
</el-row> </el-row>
</el-form> </el-form>
...@@ -81,63 +146,227 @@ ...@@ -81,63 +146,227 @@
<el-tab-pane label="等待发货" name="second"></el-tab-pane> <el-tab-pane label="等待发货" name="second"></el-tab-pane>
<el-tab-pane label="已发货" name="third"></el-tab-pane> <el-tab-pane label="已发货" name="third"></el-tab-pane>
<el-tab-pane label="交易成功" name="fourth"></el-tab-pane> <el-tab-pane label="交易成功" name="fourth"></el-tab-pane>
<el-tab-pane label="关闭交易" name="five"></el-tab-pane> <el-tab-pane label="退款/关闭" name="five"></el-tab-pane>
</el-tabs> </el-tabs>
<el-table :data="tableData" border max-height="1000" class="item-table" style="width: 100%;margin-top: 10px;"> <el-table
<el-table-column prop="id" label="订单号" min-width="100" align="center"></el-table-column> :data="tableData"
<el-table-column prop="goodsNameList" label="商品名称" min-width="150" align="center"> border
max-height="1000"
class="item-table"
style="width: 100%; margin-top: 10px"
>
<el-table-column
prop="id"
label="订单号"
min-width="100"
align="center"
></el-table-column>
<el-table-column
prop="goodsNameList"
label="商品名称"
min-width="150"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<!--<span>{{ scope.row.goodsName }}</span>--> <!--<span>{{ scope.row.goodsName }}</span>-->
<p v-for="(item, index) in scope.row.goodsNameList" :key="index" class="p-normal">{{item}}</p> <p
v-for="(item, index) in scope.row.goodsNameList"
:key="index"
class="p-normal"
>
{{ item }}
</p>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="showStatusStr" label="交易状态" min-width="100" align="center"> <el-table-column
prop="showStatusStr"
label="交易状态"
min-width="100"
align="center"
>
</el-table-column> </el-table-column>
<el-table-column prop="amount" label="实收款" min-width="100" align="center"> <el-table-column
prop="amount"
label="实收款"
min-width="100"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.amount | toFixed2}}</span> <span>{{ scope.row.amount | toFixed2 }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="prescriberName" label="创建人" min-width="100" align="center"></el-table-column> <el-table-column
<el-table-column prop="receiver" label="买家" min-width="100" align="center"></el-table-column> prop="prescriberName"
<el-table-column prop="goodsQuantityList" label="数量" min-width="100" align="center"> label="创建人"
min-width="100"
align="center"
></el-table-column>
<el-table-column
prop="receiver"
label="买家"
min-width="100"
align="center"
></el-table-column>
<el-table-column
prop="goodsQuantityList"
label="数量"
min-width="100"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<!--<span>{{ scope.row.goodsQuantity }}</span>--> <!--<span>{{ scope.row.goodsQuantity }}</span>-->
<p v-for="(item, index) in scope.row.goodsQuantityList" :key="index" class="p-normal">{{item}}</p> <p
v-for="(item, index) in scope.row.goodsQuantityList"
:key="index"
class="p-normal"
>
{{ item }}
</p>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="sizeList" label="规格" min-width="100" align="center"> <el-table-column
prop="sizeList"
label="规格"
min-width="100"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<!--<span>{{ scope.row.size }}</span>--> <!--<span>{{ scope.row.size }}</span>-->
<p v-for="(item, index) in scope.row.sizeList" :key="index" class="p-normal">{{item}}</p> <p
v-for="(item, index) in scope.row.sizeList"
:key="index"
class="p-normal"
>
{{ item }}
</p>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="priceList" label="单价" min-width="100" align="center"> <el-table-column
prop="priceList"
label="单价"
min-width="100"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<!--<span>{{ scope.row.price }}</span>--> <!--<span>{{ scope.row.price }}</span>-->
<p v-for="(item, index) in scope.row.priceList" :key="index" class="p-normal">{{item | toFixed2}}</p> <p
v-for="(item, index) in scope.row.priceList"
:key="index"
class="p-normal"
>
{{ item | toFixed2 }}
</p>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="createTime" label="下单时间" min-width="100" align="center">
<!-- <el-table-column
prop="fanxxxx"
label="返现"
min-width="100"
align="center"
>
</el-table-column> -->
<el-table-column
prop="saleTypeStr"
label="销售方式"
width="170"
align="center"
>
</el-table-column>
<el-table-column
prop="createTime"
label="下单时间"
min-width="100"
align="center"
>
<template slot-scope="scope"> <template slot-scope="scope">
<span>{{ scope.row.createTime }}</span> <span>{{ scope.row.createTime }}</span>
</template> </template>
</el-table-column> </el-table-column>
<el-table-column prop="ownerName" label="招募人" min-width="100" align="center"></el-table-column> <el-table-column
<el-table-column prop="brokerName" label="药代姓名" min-width="100" align="center"></el-table-column> prop="ownerName"
<el-table-column prop="comments" label="备注" min-width="100" align="center"></el-table-column> label="招募人"
<el-table-column label="操作" min-width="250" align="center" fixed="right"> min-width="100"
align="center"
></el-table-column>
<el-table-column
prop="brokerName"
label="药代姓名"
min-width="100"
align="center"
></el-table-column>
<el-table-column
prop="comments"
label="备注"
min-width="100"
align="center"
></el-table-column>
<el-table-column
label="操作"
min-width="250"
align="center"
fixed="right"
>
<template slot-scope="scope"> <template slot-scope="scope">
<div> <div>
<!--<el-button @click="closeTrade(scope.row)" type="text" size="small">关闭交易</el-button>--> <!--<el-button @click="closeTrade(scope.row)" type="text" size="small">关闭交易</el-button>-->
<!--<el-button @click="changePrice(scope.row)" type="text" size="small">修改价格</el-button>--> <!--<el-button @click="changePrice(scope.row)" type="text" size="small">修改价格</el-button>-->
<!-- <el-button @click="sendGoods(scope.row)" type="text" size="small">发货</el-button>--> <!-- <el-button @click="sendGoods(scope.row)" type="text" size="small">发货</el-button>-->
<el-button v-if="scope.row.storeType == 1 && scope.row.showStatus == 3 && scope.row.refundStatus == 0" @click="sendGoods(scope.row)" type="text" size="small">发货</el-button> <el-button
<el-button v-if="scope.row.storeType == 2 && scope.row.showStatus == 3 && scope.row.refundStatus == 0" @click="distribute(scope.row)" type="text" size="small">配送</el-button> v-if="
<el-button v-if="scope.row.storeType == 1 && (scope.row.showStatus == 1 || scope.row.showStatus == 2)" @click="viewLogistics(scope.row)" type="text" size="small">查看物流</el-button> scope.row.storeType == 1 &&
<el-button v-if="scope.row.storeType == 2 && scope.row.showStatus == 2" @click="distributeComplete(scope.row)" type="text" size="small">配送完成</el-button> scope.row.showStatus == 3 &&
<el-button @click="goDetail(scope.row)" type="text" size="small">查看详情</el-button> scope.row.refundStatus == 0
<el-button v-if="(scope.row.storeType == 1 || scope.row.storeType == 2) && scope.row.showStatus == 3 && scope.row.refundStatus == 0" @click="openTuiDialog(scope.row)" type="text" size="small">退款退货</el-button> "
@click="sendGoods(scope.row)"
type="text"
size="small"
>发货</el-button
>
<el-button
v-if="
scope.row.storeType == 2 &&
scope.row.showStatus == 3 &&
scope.row.refundStatus == 0
"
@click="distribute(scope.row)"
type="text"
size="small"
>配送</el-button
>
<el-button
v-if="
scope.row.storeType == 1 &&
(scope.row.showStatus == 1 || scope.row.showStatus == 2)
"
@click="viewLogistics(scope.row)"
type="text"
size="small"
>查看物流</el-button
>
<el-button
v-if="scope.row.storeType == 2 && scope.row.showStatus == 2"
@click="distributeComplete(scope.row)"
type="text"
size="small"
>配送完成</el-button
>
<el-button @click="goDetail(scope.row)" type="text" size="small"
>查看详情</el-button
>
<el-button
v-if="
(scope.row.storeType == 1 || scope.row.storeType == 2) &&
scope.row.showStatus == 3 &&
scope.row.refundStatus == 0
"
@click="openTuiDialog(scope.row)"
type="text"
size="small"
>退款退货</el-button
>
<!-- <el-button type="text" size="small">查看物流</el-button> -->
</div> </div>
</template> </template>
</el-table-column> </el-table-column>
...@@ -160,16 +389,23 @@ ...@@ -160,16 +389,23 @@
@close="cancelTrade" @close="cancelTrade"
:show-close="false" :show-close="false"
width="600px" width="600px"
center> center
<p style="text-align: center;margin-top: -25px;color: #9B9997">关闭后买家将不能再付款</p> >
<div style="text-align: center;margin-top: 30px;"> <p style="text-align: center; margin-top: -25px; color: #9b9997">
<el-input type="textarea" 关闭后买家将不能再付款
</p>
<div style="text-align: center; margin-top: 30px">
<el-input
type="textarea"
v-model="reasonTxt" v-model="reasonTxt"
maxlength="400" maxlength="400"
rows="5" rows="5"
placeholder="请输入备注内容" placeholder="请输入备注内容"
style="width: 80%;"></el-input> style="width: 80%"
<span class="word-num">{{reasonTxt.replace(/\s+/g,"").length}}/400</span> ></el-input>
<span class="word-num"
>{{ reasonTxt.replace(/\s+/g, "").length }}/400</span
>
</div> </div>
<!--<el-form ref="auditForm" :model="auditForm" label-width="120px"> <!--<el-form ref="auditForm" :model="auditForm" label-width="120px">
<el-form-item label="拒绝原因:"> <el-form-item label="拒绝原因:">
...@@ -191,7 +427,9 @@ ...@@ -191,7 +427,9 @@
</el-form>--> </el-form>-->
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button size="small" @click="cancelTrade">取 消</el-button> <el-button size="small" @click="cancelTrade">取 消</el-button>
<el-button size="small" type="primary" @click="submitTrade">关闭交易</el-button> <el-button size="small" type="primary" @click="submitTrade"
>关闭交易</el-button
>
</span> </span>
</el-dialog> </el-dialog>
<el-dialog <el-dialog
...@@ -199,40 +437,79 @@ ...@@ -199,40 +437,79 @@
:visible="changePriceDialog" :visible="changePriceDialog"
@close="cancelPrice" @close="cancelPrice"
width="600px" width="600px"
center> center
<el-form ref="changePriceForm" :model="changePriceForm" label-width="120px" label-suffix=":"> >
<el-form
ref="changePriceForm"
:model="changePriceForm"
label-width="120px"
label-suffix=":"
>
<el-form-item label="目前价格"> <el-form-item label="目前价格">
<span>¥{{changePriceForm.nowPrice}}</span> <span>¥{{ changePriceForm.nowPrice }}</span>
</el-form-item> </el-form-item>
<el-form-item label="修改价格"> <el-form-item label="修改价格">
<el-input type="text" v-model="changePriceForm.updatePrice" placeholder="请输入修改后的价格" style="width: 70%"></el-input> <el-input
type="text"
v-model="changePriceForm.updatePrice"
placeholder="请输入修改后的价格"
style="width: 70%"
></el-input>
</el-form-item> </el-form-item>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="submitPrice">完成</el-button> <el-button size="small" type="primary" @click="submitPrice"
>完成</el-button
>
</span> </span>
</el-dialog> </el-dialog>
<send-set-dialog <send-set-dialog
:sendGoodsDialog="sendGoodsDialog" :sendGoodsDialog="sendGoodsDialog"
:dialogTitle="dialogTitle" :dialogTitle="dialogTitle"
:sendSetFormData="sendSetForm" :sendSetFormData="sendSetForm"
@closeSendSet="closeSendSet"> @closeSendSet="closeSendSet"
>
</send-set-dialog> </send-set-dialog>
<el-dialog <el-dialog
title="查看物流" title="查看物流"
:visible="viewLogisticsDialog" :visible="viewLogisticsDialog"
@close="cancelView" @close="cancelView"
:show-close="false" :show-close="false"
width="600px" width="700px"
center> center
>
<div class="view-content"> <div class="view-content">
<i class="el-icon-truck" style="font-size: 18px"></i><span class="send-status">已发货</span> <div>
<span class="view-number">{{logisticeInfo}}</span> <i class="el-icon-truck" style="font-size: 18px"></i
<el-button type="text" @click="copyTxt">复制</el-button> ><span class="send-status">已发货</span>
<span class="view-number">{{ logisticeInfo }}</span>
</div>
<div>
<el-button type="text" @click="copyTxt">复制单号</el-button>
<el-button type="text" @click="updateOrderNo" v-if="showStatus == 2"
>修改物流单号</el-button
>
</div>
</div>
<div class="steps-logistics">
<el-steps direction="vertical" :active="0">
<el-step
v-for="(item, index) in expressData"
:title="item.time"
:description="item.context"
:key="index"
>
<div slot="icon">
<div class="dot"></div>
</div>
</el-step>
</el-steps>
</div> </div>
<input type="text" id="copyInput" class="hidden-input" /> <input type="text" id="copyInput" class="hidden-input" />
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="cancelView">我知道了</el-button> <el-button size="small" type="primary" @click="cancelView"
>我知道了</el-button
>
</span> </span>
</el-dialog> </el-dialog>
<el-dialog <el-dialog
...@@ -241,14 +518,17 @@ ...@@ -241,14 +518,17 @@
@close="cancelDis" @close="cancelDis"
:show-close="false" :show-close="false"
width="600px" width="600px"
center> center
>
<div class="view-content"> <div class="view-content">
<p class="center-title">确认配送完成吗?</p> <p class="center-title">确认配送完成吗?</p>
<p class="center-subtitle">请确认线下已将商品送达</p> <p class="center-subtitle">请确认线下已将商品送达</p>
</div> </div>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button size="small" @click="cancelDis">取消</el-button> <el-button size="small" @click="cancelDis">取消</el-button>
<el-button size="small" type="primary" @click="submitDisComplete">配送完成</el-button> <el-button size="small" type="primary" @click="submitDisComplete"
>配送完成</el-button
>
</span> </span>
</el-dialog> </el-dialog>
</div> </div>
...@@ -259,8 +539,17 @@ ...@@ -259,8 +539,17 @@
@close="showTuiDialog = false" @close="showTuiDialog = false"
width="385px" width="385px"
> >
<div style="margin-bottom: 20px;margin-top: -20px;text-align: center;"><span style="color: red;">温馨提示:订单一旦退款,订单关联的预约单将被同步取消,请谨慎操作退款</span></div> <div style="margin-bottom: 20px; margin-top: -20px; text-align: center">
<el-form ref="tuiForm" :rules="rules" :model="tuiForm" label-width="120px"> <span style="color: red"
>温馨提示:订单一旦退款,订单关联的预约单将被同步取消,请谨慎操作退款</span
>
</div>
<el-form
ref="tuiForm"
:rules="rules"
:model="tuiForm"
label-width="120px"
>
<el-form-item label="退款退货方式:"> <el-form-item label="退款退货方式:">
<el-select v-model="tuiForm.type" placeholder="请选择退货方式"> <el-select v-model="tuiForm.type" placeholder="请选择退货方式">
<el-option <el-option
...@@ -281,161 +570,617 @@ ...@@ -281,161 +570,617 @@
v-for="item in userTypes" v-for="item in userTypes"
:key="item.value" :key="item.value"
:label="item.label" :label="item.label"
:value="item.value"/> :value="item.value"
/>
</el-select> </el-select>
</el-form-item> </el-form-item>
<el-form-item label="退款理由" prop="">
<el-input
:maxlength="20"
type="textarea"
:autosize="{ minRows: 2, maxRows: 4 }"
placeholder="请输入内容"
v-model="tuiForm.refundReason"
>
</el-input>
</el-form-item>
</el-form>
<span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="confirmTui"
>完成</el-button
>
</span>
</el-dialog>
<el-dialog
class="tui-dialog"
title="修改物流单号"
:visible="showOrderNoFlag"
@close="showOrderNoFlag = false"
width="600px"
>
<el-form
ref="expressForm"
:rules="rulesExpress"
:model="expressForm"
label-width="120px"
>
<el-form-item label="快递公司" prop="company">
<el-input v-model="expressForm.company"></el-input>
</el-form-item>
<el-form-item label="快递单号" prop="no">
<el-input v-model="expressForm.no"></el-input>
</el-form-item>
<el-form-item label="备注" prop="extendMessage">
<el-input v-model="expressForm.extendMessage"></el-input>
</el-form-item>
</el-form> </el-form>
<span slot="footer" class="dialog-footer"> <span slot="footer" class="dialog-footer">
<el-button size="small" type="primary" @click="confirmTui">完成</el-button> <el-button size="small" type="primary" @click="confirmExpressNo"
>完成</el-button
>
</span> </span>
</el-dialog> </el-dialog>
<!-- 导入物流单号 dialog-->
<el-dialog
class="exportlogistics-dialog"
:title="ExportType == 1 ? '导入物流单号' : '批量取消订单'"
:visible="exportDialog"
@close="exportDialog = false"
width="600px"
>
<el-form label-width="120px">
<el-form-item label="导入文档:">
<el-upload
class="upload-excel"
action="#"
accept=".xlsx"
multiple
:limit="1"
:show-file-list="false"
:before-upload="uploadfile"
>
<div class="upload-container">
<el-input
class="file-name"
v-model="fileData.fileName"
size="mini"
readonly
></el-input
><el-button type="primary" size="mini">选择文件</el-button>
</div>
</el-upload>
</el-form-item>
<el-form-item label="模板:">
<a v-if="ExportType == 1" class="importUrl" :href="LogisticsUrl">
物流单号修改模板.xlxs</a
>
<a v-else class="importUrl" :href="CancelOrderUrl">
批量取消模板.xlxs</a
>
</el-form-item>
</el-form>
<div slot="footer" class="dialog-footer">
<el-button size="small" @click="cancelExport">取消</el-button>
<el-button
size="small"
:loading="isLoading"
type="primary"
@click="confirmExport"
>确认</el-button
>
</div>
</el-dialog>
<!-- 导出进度loading -->
<el-dialog
class="exportlogistics-dialog"
:visible="progressFlag"
width="600px"
:close-on-click-modal="false"
:show-close="false"
>
<div>
<div class="progress-container">
<div class="progress-tag">
{{ ProgressData.doneNum }}/{{ ProgressData.totalNum }}
<div class="popper__arrow"></div>
</div>
<div class="progress-content">正在导入...</div>
</div>
</div>
</el-dialog>
<!-- 结果统计 -->
<el-dialog
class="exportlogistics-dialog"
title="导入完成"
:visible="statFlg"
@close="statFlg = false"
width="600px"
>
<div class="stat-container">
<div class="stat-title">模板数据共{{ ProgressData.totalNum }}条</div>
<div class="stat-result">
<div class="success">成功:{{ ProgressData.successNum }}条</div>
<div class="repetition">重复:{{ ProgressData.repeatNum }}条</div>
<div class="repetition">空行:{{ ProgressData.nullNum }}条</div>
<div class="failure">失败:{{ ProgressData.failNum }}条</div>
</div>
</div>
<div slot="footer" class="dialog-footer">
<el-button size="small" @click="statFlg = false">取消</el-button>
<el-button size="small" type="primary" @click="showReasondialog"
>查看失败原因</el-button
>
</div>
</el-dialog>
<!-- 失败原因 -->
<el-dialog
class="exportlogistics-dialog"
title="失败记录"
:visible="FailureReasonFlag"
@close="FailureReasonFlag = false"
width="1000px"
>
<div class="FailureReasonFlag-container" v-if="ExportType == 1">
<el-table
:data="ProgressData.errorList"
border
height="300"
style="width: 100%"
>
<el-table-column
prop="subOrderId"
label="订单号"
align="center"
width="210"
></el-table-column>
<el-table-column
prop="expressName"
label="快递公司"
align="center"
></el-table-column>
<el-table-column prop="expressNo" label="快递单号" align="center">
</el-table-column>
<el-table-column prop="remark" label="备注" align="center">
</el-table-column>
<el-table-column prop="failInfo" label="失败原因" align="center">
</el-table-column>
<el-table-column
prop="operationGuide"
label="操作指引"
align="center"
>
</el-table-column>
</el-table>
</div>
<div class="FailureReasonFlag-container" v-else>
<el-table
:data="ProgressData.errorList"
border
height="300"
style="width: 100%"
>
<el-table-column
prop="subOrderId"
label="订单号"
align="center"
width="210"
></el-table-column>
<el-table-column
prop="refundReason"
label="取消原因"
align="center"
></el-table-column>
<el-table-column prop="failInfo" label="失败原因" align="center">
</el-table-column>
<el-table-column
prop="operationGuide"
label="操作指引"
align="center"
>
</el-table-column>
</el-table>
</div>
<div slot="footer" class="dialog-footer">
<el-button size="small" @click="FailureReasonFlag = false"
>取消</el-button
>
<a :href="ProgressData.errorFileUrl">
<el-button size="small" type="primary">导出失败记录</el-button>
</a>
</div>
</el-dialog>
</div> </div>
</template> </template>
<script> <script>
import { openLoading, closeLoading } from "../../utils/utils"; import { openLoading, closeLoading } from "../../utils/utils";
import BreadCrumb from "@/components/breadcrumb.vue"; import BreadCrumb from "@/components/breadcrumb.vue";
import SendSetDialog from "@/components/shop/send-set-dialog"; import SendSetDialog from "@/components/shop/send-set-dialog";
import { getOrdersExportUrl } from "@/utils/yqrange/yqrangeApi"; import {
import { queryOrderList, updateExpress, refundApply, brokerListAll, brokerOwnerListAll} from "@/utils/shop"; getOrdersExportUrl,
import { toDecimal2 } from '@/utils'; uploadExpress,
uploadRefund,
getUploadExpressProgress,
getUploadRefundProgress,
} from "@/utils/yqrange/yqrangeApi";
import {
queryOrderList,
updateExpress,
refundApply,
brokerListAll,
brokerOwnerListAll,
updateExpressNo,
expressInfo,
} from "@/utils/shop";
import { toDecimal2 } from "@/utils";
export default { export default {
components: { components: {
SendSetDialog, SendSetDialog,
BreadCrumb BreadCrumb,
}, },
data(){ data() {
return{ return {
createRangeTime: '', createRangeTime: "",
curmbFirst: '云鹊店铺', curmbFirst: "云鹊店铺",
curmbSecond: '订单管理', curmbSecond: "订单管理",
activeName: 'all', activeName: "all",
showStatus: -1,
searchForm: { searchForm: {
showStatus: -1, showStatus: -1,
storeId: 0, storeId: 0,
goodsName: '', goodsName: "",
orderNo: '', orderNo: "",
receiver: '', receiver: "",
prescriberName: '', prescriberName: "",
orderTime:'', orderTime: "",
orderBeginTime:'', orderBeginTime: "",
orderEndTime: '', orderEndTime: "",
brokerId:'', brokerId: "",
ownerId:'', ownerId: "",
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
saleType: 0,
}, },
// 确认物流
statFlg: false,
exportDialog: false,
ExportType: 1, // 1导入物流信息 2、批量取消订单
FailureReasonFlag: false,
progressFlag: false,
totalRows: 0, totalRows: 0,
tableData: [], tableData: [],
FailureTable: [],
closeTradeDialog: false, closeTradeDialog: false,
reasonTxt: '', reasonTxt: "",
changePriceDialog: false, changePriceDialog: false,
changePriceForm: { changePriceForm: {
nowPrice: 45, nowPrice: 45,
updatePrice: '', updatePrice: "",
}, },
sendGoodsDialog: false, sendGoodsDialog: false,
dialogTitle: '', dialogTitle: "",
sendSetForm: {}, sendSetForm: {},
viewLogisticsDialog: false, viewLogisticsDialog: false,
logisticeInfo: '',//复制物流信息 logisticeInfo: "", //复制物流信息
disCompleteDialog: false, disCompleteDialog: false,
disCompleteData: {}, disCompleteData: {},
rules: { rules: {
name: [ name: [{ required: true, message: "请输入快递公司", trigger: "blur" }],
{ required: true, message: '请输入快递公司', trigger: "blur"},
],
orderNum: [ orderNum: [
{ required: true, message: '请输入快递单号', trigger: "blur"}, { required: true, message: "请输入快递单号", trigger: "blur" },
], ],
userName: [ userName: [
{ required: true, message: '请选择退款对象', trigger: "blur"}, { required: true, message: "请选择退款对象", trigger: "blur" },
], ],
}, },
expressData: [
{
time: "2021-06-23 12:21:21",
context: "待揽收",
},
],
showTuiDialog: false, showTuiDialog: false,
tuiForm: { tuiForm: {
order: null, order: null,
type: 0, type: 0,
money: '' refundReason: "",
money: "",
},
expressForm: {
order: null,
company: "",
no: "",
extendMessage: "",
},
rulesExpress: {
company: [
{ required: true, message: "请输入快递公司", trigger: "blur" },
],
no: [{ required: true, message: "请输入快递单号", trigger: "blur" }],
}, },
tuiTypes: [ tuiTypes: [
{ {
label: '仅退款,无需退货', label: "仅退款,无需退货",
value: 0, value: 0,
disabled: false disabled: false,
}, },
{ {
label: '仅退货,无需退款', label: "仅退货,无需退款",
value: 1, value: 1,
disabled: true disabled: true,
}, },
{ {
label: '退款退货', label: "退款退货",
value: 2, value: 2,
disabled: true disabled: true,
} },
], ],
userType: "", // 1.开单医生, 2.支付用户 userType: "", // 1.开单医生, 2.支付用户
userTypes: [ userTypes: [
{ {
label: '开单医生', label: "开单医生",
value: 1,
},
{
label: "支付用户",
value: 2,
},
],
saleTypeList: [
{
value: 0,
label: "全部",
},
{
value: 1, value: 1,
label: "零售",
}, },
{ {
label: '支付用户',
value: 2, value: 2,
label: "批发",
}, },
], ],
ownerId:'', fileData: {
brokerList:[], fileBaseStr: "",
brokerOwnerList:[], fileName: "",
},
ownerId: "",
brokerList: [],
brokerOwnerList: [],
showOrderNoFlag: false,
LogisticsUrl:
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/application/vnd.openxmlformats-officedocument.spreadsheetml.sheet/2021/08/12/20210812101318239-4c4e680b.xlsx",
CancelOrderUrl:
"https://pica-pro.oss-cn-shanghai.aliyuncs.com/application/vnd.openxmlformats-officedocument.spreadsheetml.sheet/2021/08/12/2021081210125196-5a8743b1.xlsx",
timer: null,
pickerOptions1: { pickerOptions1: {
disabledDate: time => { disabledDate: (time) => {
return ( return time.getTime() > new Date().getTime(); //减去一天的时间代表可以选择同一天;
time.getTime() > new Date().getTime()
); //减去一天的时间代表可以选择同一天;
}
}, },
} },
ProgressData: {
totalNum: "", //总数
nullNum:"",//空白行
status: "", // 1完成 0进行中
doneNum: "", // doneNum 完成数量
successNum: "", // 成功数量
failNum: "", //失败数量
repeatNum: "",
errorFileUrl: "", // 失败 原因文件
errorList: [], // 失败列表
},
isLoading: false,
// errorFileUrl:"",
};
}, },
created() { created() {
console.log("order created() : enter"); console.log("order created() : enter");
this.searchForm.storeId = this.$route.query.storeId || 0, (this.searchForm.storeId = this.$route.query.storeId || 0),
this.searchList(); this.searchList();
this.brokerListAll(); this.brokerListAll();
this.brokerOwnerListAll(); this.brokerOwnerListAll();
}, },
methods: { methods: {
searchList(){ // 确认导入
confirmExport() {
if (this.ExportType == 1) {
this.uploadExpress();
} else {
this.uploadRefund();
}
},
//
ShowExportDialog(type) {
this.ExportType = type;
this.exportDialog = true;
this.fileData = {
fileBaseStr: "",
fileName: "",
};
},
// 批量更新物流操作
uploadExpress() {
this.isLoading = true;
openLoading(this);
uploadExpress(this.fileData)
.then((res) => {
if (res && res.code == "000000") {
closeLoading(this);
this.getUploadExpressProgressInterval(
res.data.tradeBatchUploadLogId
);
} else {
this.isLoading = false;
this.$message.error(res.message);
}
})
.catch((err) => {
this.isLoading = false;
closeLoading(this);
});
},
// 批量取消退款操作
uploadRefund() {
this.isLoading = true;
openLoading(this);
uploadRefund(this.fileData)
.then((res) => {
console.log(res);
if (res && res.code == "000000") {
closeLoading(this);
this.getUploadRefundProgressInterval(res.data.tradeBatchUploadLogId);
} else {
this.isLoading = false;
this.$message.error(res.message);
}
})
.catch((err) => {
this.isLoading = false;
closeLoading(this);
});
},
// 获取物流上传进度
async getUploadExpressProgressInterval(id) {
clearInterval(this.timer);
let status = await this.getUploadExpressProgress(id);
if (status == 0) {
console.log("status------", status);
this.timer = setInterval(() => {
this.getUploadExpressProgress(id);
}, 2000);
}
},
getUploadExpressProgress(id) {
return getUploadExpressProgress(id).then((res) => {
if (res && res.code == "000000") {
this.isLoading = false;
this.exportDialog = false;
this.progressFlag = true;
this.ProgressData = res.data;
if (res.data.status == 1) {
clearInterval(this.timer);
setTimeout(() => {
this.progressFlag = false;
this.statFlg = true;
this.searchList();
}, 2000);
}
return res.data.status;
} else {
this.isLoading = false;
this.$message.error(res.message);
return;
}
});
},
// 获取批量取消进度
async getUploadRefundProgressInterval(id) {
clearInterval(this.timer);
let status = await this.getUploadRefundProgress(id);
if (status == 0) {
this.timer = setInterval(() => {
this.getUploadRefundProgress(id);
}, 2000);
}
},
getUploadRefundProgress(id) {
return getUploadRefundProgress(id).then((res) => {
if (res && res.code == "000000") {
this.exportDialog = false;
this.progressFlag = true;
this.ProgressData = res.data;
this.isLoading = false;
if (res.data.status == 1) {
clearInterval(this.timer);
setTimeout(() => {
this.progressFlag = false;
this.statFlg = true;
this.searchList()
}, 2000);
}
return res.data.status;
} else {
this.isLoading = false;
this.$message.error(res.message);
return;
}
});
},
// 取消导入物流信息
cancelExport() {
(this.fileData = {
fileBaseStr: "",
fileName: "",
}),
(this.exportDialog = false);
},
// 导入物流单号
uploadfile(file) {
let _this = this;
let arr = file.type.split("/");
let ext = "." + arr[1];
let name = file.name;
let reader = new FileReader();
reader.onload = function (e) {
_this.fileData.fileName = name;
_this.fileData.fileBaseStr = e.target.result.substr(
e.target.result.indexOf("base64,") + 7
);
console.log("fileJson", _this.fileData);
};
reader.readAsDataURL(file);
},
// 确认取消订单
showReasondialog() {
this.statFlg = false;
this.FailureReasonFlag = true;
},
searchList() {
this.searchForm.orderBeginTime = this.createRangeTime[0]; this.searchForm.orderBeginTime = this.createRangeTime[0];
this.searchForm.orderEndTime = this.createRangeTime[1]; this.searchForm.orderEndTime = this.createRangeTime[1];
console.log("searchList搜索开始") console.log("searchList搜索开始");
openLoading(this); openLoading(this);
queryOrderList(this.searchForm).then(res => { queryOrderList(this.searchForm).then((res) => {
closeLoading(this); closeLoading(this);
if (res.code == '000000') { if (res.code == "000000") {
console.log("searchList搜索结束") console.log("searchList搜索结束");
this.tableData = res.data.orderSingleDtoList; this.tableData = res.data.orderSingleDtoList;
this.totalRows = res.data.totalNum; this.totalRows = res.data.totalNum;
} }
}) });
}, },
resetForm() { resetForm() {
console.log("resetForm重置") console.log("resetForm重置");
this.activeName = 'all'; this.activeName = "all";
this.createRangeTime = ''; this.createRangeTime = "";
this.searchForm = { this.searchForm = {
showStatus: -1, showStatus: -1,
storeId: this.$route.query.storeId, storeId: this.$route.query.storeId,
goodsName: '', goodsName: "",
prescriberName: '', prescriberName: "",
orderBeginTime:'', orderBeginTime: "",
orderEndTime: '', orderEndTime: "",
orderNo: '', orderNo: "",
receiver: '', receiver: "",
orderDate: '', orderDate: "",
brokerId:'', brokerId: "",
ownerId:'', ownerId: "",
saleType: 0,
pageNo: 1, pageNo: 1,
pageSize: 10, pageSize: 10,
}; };
...@@ -455,17 +1200,23 @@ ...@@ -455,17 +1200,23 @@
}, },
handleClick(tab, event) { handleClick(tab, event) {
//-1全部,1已完成,2已发货,3待发货,4待支付,5交易关闭 //-1全部,1已完成,2已发货,3待发货,4待支付,5交易关闭
if (this.activeName == 'all') {//全部 if (this.activeName == "all") {
//全部
this.searchForm.showStatus = -1; this.searchForm.showStatus = -1;
}else if (this.activeName == 'first') {//等待买家付款 } else if (this.activeName == "first") {
//等待买家付款
this.searchForm.showStatus = 4; this.searchForm.showStatus = 4;
}else if (this.activeName == 'second') {//待发货 } else if (this.activeName == "second") {
//待发货
this.searchForm.showStatus = 3; this.searchForm.showStatus = 3;
}else if (this.activeName == 'third') {//已发货 } else if (this.activeName == "third") {
//已发货
this.searchForm.showStatus = 2; this.searchForm.showStatus = 2;
}else if (this.activeName == 'fourth') {//交易成功 } else if (this.activeName == "fourth") {
//交易成功
this.searchForm.showStatus = 1; this.searchForm.showStatus = 1;
}else if (this.activeName == 'five') {//交易关闭 } else if (this.activeName == "five") {
//交易关闭
this.searchForm.showStatus = 5; this.searchForm.showStatus = 5;
} }
this.searchForm.pageNo = 1; this.searchForm.pageNo = 1;
...@@ -494,7 +1245,7 @@ ...@@ -494,7 +1245,7 @@
//发货 //发货
sendGoods(row) { sendGoods(row) {
this.sendGoodsDialog = true; this.sendGoodsDialog = true;
this.dialogTitle = '发货设置'; this.dialogTitle = "发货设置";
this.sendSetForm = row; this.sendSetForm = row;
}, },
closeSendSet(val) { closeSendSet(val) {
...@@ -502,21 +1253,33 @@ ...@@ -502,21 +1253,33 @@
//保存操作 //保存操作
if (val.type == 2) { if (val.type == 2) {
console.log("刷新列表resetForm"); console.log("刷新列表resetForm");
this.resetForm();//更新列表 this.resetForm(); //更新列表
} }
this.sendGoodsDialog = false; this.sendGoodsDialog = false;
}, },
//配送 //配送
distribute(row) { distribute(row) {
this.sendGoodsDialog = true; this.sendGoodsDialog = true;
this.dialogTitle = '配送设置'; this.dialogTitle = "配送设置";
this.sendSetForm = row; this.sendSetForm = row;
}, },
//查看物流 //查看物流
viewLogistics(row) { viewLogistics(row) {
this.viewLogisticsDialog = true; console.log("row-----", row);
expressInfo({ expressNo: row.expressNo,receiverMobile:row.receiverMobile }).then((res) => {
if (res.code == "000000") {
this.expressData = [...res.data.data, ...this.expressData];
this.logisticeInfo = `${row.expressName} ${row.expressNo}`; this.logisticeInfo = `${row.expressName} ${row.expressNo}`;
this.expressForm.order = row;
this.expressForm.company = `${row.expressName}`;
this.expressForm.no = `${row.expressNo}`;
this.expressForm.extendMessage = `${row.remark}`;
this.showStatus = row.showStatus;
this.viewLogisticsDialog = true;
}
});
}, },
cancelView() { cancelView() {
this.viewLogisticsDialog = false; this.viewLogisticsDialog = false;
}, },
...@@ -524,10 +1287,13 @@ ...@@ -524,10 +1287,13 @@
let txt = document.getElementById("copyInput"); let txt = document.getElementById("copyInput");
txt.value = this.logisticeInfo; txt.value = this.logisticeInfo;
// if (navigator.userAgent.match(/(iPhone|iPod|iPad|Mac);?/i)) { // if (navigator.userAgent.match(/(iPhone|iPod|iPad|Mac);?/i)) {
if (navigator.userAgent.indexOf("Safari") > -1 && navigator.userAgent.indexOf("Chrome") < 1) { if (
var el = document.createElement('input'); navigator.userAgent.indexOf("Safari") > -1 &&
el.value = txt.value;//要复制的内容 navigator.userAgent.indexOf("Chrome") < 1
el.style.opacity = '0'; ) {
var el = document.createElement("input");
el.value = txt.value; //要复制的内容
el.style.opacity = "0";
document.body.appendChild(el); document.body.appendChild(el);
var editable = el.contentEditable; var editable = el.contentEditable;
var readOnly = el.readOnly; var readOnly = el.readOnly;
...@@ -541,13 +1307,13 @@ ...@@ -541,13 +1307,13 @@
el.setSelectionRange(0, 999999); el.setSelectionRange(0, 999999);
el.contentEditable = editable; el.contentEditable = editable;
el.readOnly = readOnly; el.readOnly = readOnly;
var ret = document.execCommand('copy'); var ret = document.execCommand("copy");
el.blur(); el.blur();
} else { } else {
txt.select(); //选择对象 txt.select(); //选择对象
document.execCommand("copy"); document.execCommand("copy");
} }
this.$message.success('复制成功'); this.$message.success("复制成功");
}, },
//配送完成 //配送完成
distributeComplete(row) { distributeComplete(row) {
...@@ -561,12 +1327,12 @@ ...@@ -561,12 +1327,12 @@
submitDisComplete() { submitDisComplete() {
let para = this.disCompleteData; let para = this.disCompleteData;
para.type = 3; para.type = 3;
updateExpress(para).then(res => { updateExpress(para).then((res) => {
if (res.code == '000000') { if (res.code == "000000") {
this.$message.success('操作成功') this.$message.success("操作成功");
this.disCompleteDialog = false; this.disCompleteDialog = false;
this.resetForm();//更新列表 this.resetForm(); //更新列表
}else { } else {
this.$message.error(res.message); this.$message.error(res.message);
} }
}); });
...@@ -575,12 +1341,12 @@ ...@@ -575,12 +1341,12 @@
goDetail(row) { goDetail(row) {
this.$router.push({ this.$router.push({
path: `/order-detail`, path: `/order-detail`,
query:{ query: {
id: row.id, id: row.id,
storeId: this.searchForm.storeId, storeId: this.searchForm.storeId,
storeType: row.storeType, storeType: row.storeType,
} },
}) });
}, },
openTuiDialog(item) { openTuiDialog(item) {
this.tuiForm.order = item; this.tuiForm.order = item;
...@@ -592,9 +1358,13 @@ ...@@ -592,9 +1358,13 @@
this.$message.error("请选择退款对象"); this.$message.error("请选择退款对象");
return; return;
} }
refundApply({ orderId: this.tuiForm.order.id, userType: this.userType }).then(res => { refundApply({
if (res.code == '000000') { orderId: this.tuiForm.order.id,
this.$message.success('操作成功'); userType: this.userType,
refundReason: this.tuiForm.refundReason,
}).then((res) => {
if (res.code == "000000") {
this.$message.success("操作成功");
this.showTuiDialog = false; this.showTuiDialog = false;
this.searchList(); this.searchList();
} else { } else {
...@@ -602,12 +1372,66 @@ ...@@ -602,12 +1372,66 @@
} }
}); });
}, },
// 修改物流单号
updateOrderNo() {
this.viewLogisticsDialog = false;
this.showOrderNoFlag = true;
},
confirmExpressNo() {
if (this.expressForm.company == null || this.expressForm.company == "") {
this.$message.error("请填写快递公司");
return;
}
if (this.expressForm.no == null || this.expressForm.no == "") {
this.$message.error("请填写快递单号");
return;
}
updateExpressNo({
orderId: this.expressForm.order.id,
expressName: this.expressForm.company,
expressNo: this.expressForm.no,
remark: this.expressForm.extendMessage,
}).then((res) => {
if (res.code == "000000") {
this.$message.success("操作成功");
this.showOrderNoFlag = false;
this.searchList();
} else {
this.$message.success(`操作失败:${res.message},请重试`);
}
});
},
exportOrder() { exportOrder() {
const { goodsName, orderNo, receiver, orderDate, storeId, brokerId, ownerId, prescriberName, orderBeginTime, orderEndTime} = this.searchForm; const {
goodsName,
orderNo,
receiver,
orderDate,
storeId,
brokerId,
ownerId,
prescriberName,
orderBeginTime,
orderEndTime,
saleType,
} = this.searchForm;
getOrdersExportUrl({ goodsName, orderNo, receiver, orderDate, storeId,brokerId,ownerId,prescriberName, orderBeginTime, orderEndTime}).then(res => { getOrdersExportUrl({
if (res.code != '000000') { goodsName,
this.$message({ message: res.message, type: 'error' }); orderNo,
receiver,
orderDate,
storeId,
brokerId,
ownerId,
prescriberName,
orderBeginTime,
orderEndTime,
saleType,
}).then((res) => {
if (res.code != "000000") {
this.$message({ message: res.message, type: "error" });
return; return;
} }
window.open(res.data); window.open(res.data);
...@@ -615,71 +1439,90 @@ ...@@ -615,71 +1439,90 @@
}, },
// 云鹊店铺-订单管理-药代列表 // 云鹊店铺-订单管理-药代列表
brokerListAll(){ brokerListAll() {
brokerListAll({ ownerId: this.ownerId }).then((res) => {
brokerListAll({ownerId:this.ownerId}).then(res => {
closeLoading(this); closeLoading(this);
if (res.code == '000000') { if (res.code == "000000") {
this.brokerList = res.data; this.brokerList = res.data;
} }
}) });
}, },
//云鹊店铺-订单管理-招募人列表 //云鹊店铺-订单管理-招募人列表
brokerOwnerListAll(){ brokerOwnerListAll() {
brokerOwnerListAll().then(res => { brokerOwnerListAll().then((res) => {
closeLoading(this); closeLoading(this);
if (res.code == '000000') { if (res.code == "000000") {
this.brokerOwnerList = res.data; this.brokerOwnerList = res.data;
} }
}) });
}, },
changeOwner(data) { changeOwner(data) {
this.ownerId = data; this.ownerId = data;
this.brokerListAll(); this.brokerListAll();
} },
}, },
filters: { filters: {
toFixed2: function (value) { toFixed2: function (value) {
let val; let val;
if (value) { if (value) {
val = (value/100).toFixed(2); val = (value / 100).toFixed(2);
}else { } else {
val = 0.00 val = 0.0;
} }
return val; return val;
}
}, },
} },
};
</script> </script>
<style lang="scss"> <style lang="scss">
.order-manage-wrapper{ .order-manage-wrapper {
.order-manage-content{ .el-step__icon {
border: none;
background: transparent;
}
.el-step__title {
font-size: 14px;
}
.el-step:last-of-type .el-step__line {
display: block !important;
height: 30%;
}
.dot {
border-radius: 50%;
height: 8px;
width: 8px;
border: 1px solid #999999;
background-color: #b8b8b8;
}
.order-manage-content {
background: #fff; background: #fff;
padding: 10px; padding: 10px;
.header-title{ .button-container {
margin-bottom: 10px;
}
.header-title {
padding: 10px 12px; padding: 10px 12px;
font-size: 13px; font-size: 13px;
color: #449284; color: #449284;
border-bottom: 1px solid #efefef; border-bottom: 1px solid #efefef;
} }
} }
.el-button--text{ .el-button--text {
color: #449284; color: #449284;
font-size: 14px; font-size: 14px;
&::after{ &::after {
content: ''; content: "";
position: relative; position: relative;
height: 14px; height: 14px;
/*border-right: 1px solid #EBEEF5;*/ /*border-right: 1px solid #EBEEF5;*/
border-right: 1px solid #aaaaaa; border-right: 1px solid #aaaaaa;
padding-right: 10px; padding-right: 10px;
} }
&:last-of-type{ &:last-of-type {
&::after{ &::after {
content: ''; content: "";
position: relative; position: relative;
width: 1px; width: 1px;
height: 14px; height: 14px;
...@@ -687,42 +1530,48 @@ ...@@ -687,42 +1530,48 @@
} }
} }
} }
} }
.el-tabs__item.is-active{ .el-tabs__item.is-active {
color: #449284; color: #449284;
} }
.el-tabs__active-bar{ .el-tabs__active-bar {
background-color: #449284; background-color: #449284;
} }
.el-tabs__item:hover{ .el-tabs__item:hover {
color: #449284; color: #449284;
} }
.view-content{ .view-content {
.send-status{ display: flex;
justify-content: space-between;
.send-status {
margin-left: 5px; margin-left: 5px;
} }
.view-number{ .view-number {
color: #999999; color: #999999;
margin-left: 15px; margin-left: 15px;
margin-right: 15px; margin-right: 15px;
} }
.center-title{ .center-title {
text-align: center; text-align: center;
} }
.center-subtitle{ .center-subtitle {
text-align: center; text-align: center;
font-size: 13px; font-size: 13px;
margin-top: 10px; margin-top: 10px;
color: #999999; color: #999999;
} }
} }
.hidden-input { .steps-logistics {
height: 350px;
overflow-y: scroll;
}
.hidden-input {
height: 0; height: 0;
} }
.p-normal{ .p-normal {
line-height: 26px; line-height: 26px;
border-bottom: 1px solid #E4E7ED; border-bottom: 1px solid #e4e7ed;
text-overflow: -o-ellipsis-lastline; text-overflow: -o-ellipsis-lastline;
overflow: hidden; overflow: hidden;
text-overflow: ellipsis; text-overflow: ellipsis;
...@@ -732,16 +1581,102 @@ ...@@ -732,16 +1581,102 @@
margin: 10px 0; margin: 10px 0;
text-align: center; text-align: center;
&:last-child{ &:last-child {
border-bottom: none; border-bottom: none;
} }
} }
.tui-dialog { .tui-dialog {
.el-dialog__header { .el-dialog__header {
text-align: center; text-align: center;
} }
.is-disabled { .is-disabled {
width: 193px; width: 193px;
} }
}
.exportlogistics-dialog {
}
.upload-container {
display: flex;
justify-content: flex-start;
align-items: center;
.file-name {
margin-right: 5px;
} }
}
.progress-container {
display: flex;
justify-content: center;
align-items: center;
flex-direction: column;
}
.progress-content {
width: 150px;
height: 40px;
background: #449284;
border-radius: 5px;
display: flex;
justify-content: center;
align-items: center;
color: #fff;
}
.progress-tag {
width: 150px;
height: 40px;
border: 1px solid #ebeef5;
display: flex;
justify-content: center;
align-items: center;
box-shadow: 0 2px 12px 0 rgba(0, 0, 0, 0.1);
margin-bottom: 10px;
position: relative;
.popper__arrow {
position: absolute;
bottom: 0px;
left: 50%;
margin-right: 3px;
transform: translateX(-3px);
border-bottom-width: 0;
&::after {
position: absolute;
display: block;
width: 0;
height: 0;
border-top-color: #fff;
border-left-color: transparent;
border-bottom-color: transparent;
border-right-color: transparent;
border-style: solid;
content: " ";
border-width: 6px;
}
}
}
.stat-container {
display: flex;
flex-direction: column;
justify-content: center;
align-items: center;
.stat-title {
color: #333;
font-size: 16px;
font-weight: bold;
margin-bottom: 10px;
}
.stat-result {
display: flex;
justify-content: space-between;
width: 360px;
.failure {
color: #e63c3c;
}
}
}
.importUrl {
color: #449284;
}
</style> </style>
...@@ -100,7 +100,16 @@ const rules = { ...@@ -100,7 +100,16 @@ const rules = {
{ required: true, message: "请选择商品类型", trigger: "change" } { required: true, message: "请选择商品类型", trigger: "change" }
], ],
optPrice: [ optPrice: [
{ required: true, message: "请输入零售价", trigger: "blur" }, { required: true, message: "请输入价格", trigger: "blur" },
],
saleType:[
{ required: true, message: "请选择销售方式", trigger: "change" }
],
stock: [
{ required: true, message: "请输入库存", trigger: "blur" },
],
minWhole: [
{ required: true, message: "请输入最小起批", trigger: "blur" },
], ],
// introduce: [ // introduce: [
// { required: true, message: "请输入圈子介绍", trigger: "blur" }, // { required: true, message: "请输入圈子介绍", trigger: "blur" },
...@@ -119,4 +128,3 @@ export const originRules1 = rules1; ...@@ -119,4 +128,3 @@ export const originRules1 = rules1;
export const originRules2 = rules2; export const originRules2 = rules2;
export const originRules = rules; export const originRules = rules;
\ No newline at end of file
...@@ -511,7 +511,6 @@ ...@@ -511,7 +511,6 @@
this.updatedTree = true; this.updatedTree = true;
}, },
getTreeCheck() { getTreeCheck() {
debugger
//重构归并树 //重构归并树
let checkedTree = operationData.getSimpleCheckedNodes( let checkedTree = operationData.getSimpleCheckedNodes(
this.$refs.tree.store this.$refs.tree.store
...@@ -1338,4 +1337,3 @@ ...@@ -1338,4 +1337,3 @@
left: 0; left: 0;
} }
</style> </style>
\ No newline at end of file
...@@ -4414,12 +4414,12 @@ vjs.SeekBar.prototype.onMouseMove = function(event){ ...@@ -4414,12 +4414,12 @@ vjs.SeekBar.prototype.onMouseMove = function(event){
}; };
vjs.SeekBar.prototype.onMouseUp = function(event){ vjs.SeekBar.prototype.onMouseUp = function(event){
debugger
vjs.Slider.prototype.onMouseUp.call(this, event); vjs.Slider.prototype.onMouseUp.call(this, event);
this.player_.scrubbing = false; this.player_.scrubbing = false;
if (this.videoWasPlaying) { if (this.videoWasPlaying) {
debugger
this.player_.play(); this.player_.play();
} }
}; };
......
Markdown 格式
0% or
您添加了 0 到此讨论。请谨慎行事。
先完成此消息的编辑!
想要评论请 注册