From 5d3b86a4d0032836c782e5e1319179eced5e5647 Mon Sep 17 00:00:00 2001
From: doum <doum>
Date: 星期五, 23 一月 2026 17:35:24 +0800
Subject: [PATCH] 经销商管理
---
server/dmmall_admin/src/main/java/com/doumee/api/business/GoodsorderController.java | 13 +--
admin/src/components/business/OperaGoodsLabelsWindow.vue | 41 +++++----
server/dmmall_service/src/main/java/com/doumee/dao/business/model/Labels.java | 3
server/dmmall_service/src/main/java/com/doumee/service/business/impl/LabelsServiceImpl.java | 1
admin/src/views/business/goodsLabels.vue | 5 +
server/dmmall_service/src/main/java/com/doumee/dao/business/model/Goodsorder.java | 3
server/dmmall_service/src/main/java/com/doumee/dao/business/model/GoodsorderExport.java | 57 ++++++++------
server/dmmall_service/src/main/java/com/doumee/service/business/GoodsorderService.java | 3
server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java | 73 +++++++++---------
9 files changed, 110 insertions(+), 89 deletions(-)
diff --git a/admin/src/components/business/OperaGoodsLabelsWindow.vue b/admin/src/components/business/OperaGoodsLabelsWindow.vue
index 8a40330..13b9265 100644
--- a/admin/src/components/business/OperaGoodsLabelsWindow.vue
+++ b/admin/src/components/business/OperaGoodsLabelsWindow.vue
@@ -10,23 +10,15 @@
<el-form-item label="鍒嗙被鍚嶇О" prop="name">
<el-input v-model="form.name" placeholder="璇疯緭鍏ュ垎绫诲悕绉�" v-trim/>
</el-form-item>
-<!-- <el-form-item label="鎵�灞炴澘鍧�" prop="module">
- <el-select
- v-model="form.module"
- placeholder="璇烽�夋嫨鎵�灞炴澘鍧�"
- >
- <el-option
- :key="0"
- :value="0"
- label="骞冲彴鍟嗗煄"
- ></el-option>
- <el-option
- :key="1"
- :value="1"
- label="鍜栬眴鍟嗗煄"
- ></el-option>
- </el-select>
- </el-form-item>-->
+ <el-form-item label="鍥炬爣" prop="imgurlfull">
+ <UploadAvatarImage
+ :uploadData="{folder:'labels'}"
+ :file="{ 'imgurlfull': form.imgurlfull, 'imgurl': form.imgurl }"
+ @uploadSuccess="uploadAvatarSuccess"
+ @uploadEnd="isUploading=false"
+ @uploadBegin="isUploading = true"
+ />
+ </el-form-item>
<el-form-item label="鎺掑簭鐮�(鍗囧簭)" prop="sortnum">
<el-input v-model="form.sortnum" type="number" placeholder="璇疯緭鍏ユ帓搴忕爜" v-trim/>
</el-form-item>
@@ -38,18 +30,22 @@
<script>
import BaseOpera from '@/components/base/BaseOpera'
import GlobalAlertWindow from '@/components/common/GlobalAlertWindow'
+import UploadAvatarImage from '@/components/common/UploadAvatarImage'
export default {
name: 'OperaProductLabelWindow',
extends: BaseOpera,
- components: { GlobalAlertWindow },
+ components: { GlobalAlertWindow,UploadAvatarImage },
data () {
return {
// 琛ㄥ崟鏁版嵁
+ isUploading: false,
form: {
id: null,
name: '',
module: 0,
type: '0',
+ imgurl:null,
+ imgurlfull:null,
sortnum: ''
},
// 楠岃瘉瑙勫垯
@@ -68,7 +64,14 @@
api: '/business/labels',
'field.id': 'id'
})
- }
+ },
+ methods: {
+ // 涓婁紶鍥剧墖
+ uploadAvatarSuccess(file) {
+ this.form.imgurl = file.imgurl;
+ this.form.imgurlfull = file.imgurlfull;
+ },
+ },
}
</script>
diff --git a/admin/src/views/business/goodsLabels.vue b/admin/src/views/business/goodsLabels.vue
index 6101d44..b738d43 100644
--- a/admin/src/views/business/goodsLabels.vue
+++ b/admin/src/views/business/goodsLabels.vue
@@ -24,6 +24,11 @@
@selection-change="handleSelectionChange"
>
<el-table-column type="selection" width="55"></el-table-column>
+ <el-table-column prop="imgurlfull" label="鍥炬爣" align="center" min-width="80px">
+ <template slot-scope="{row}">
+ <el-image style="width: 50px;height: 50px;" v-if="row.imgurlfull && row.imgurlfull!=''" :src="row.imgurlfull" :preview-src-list="[row.imgurlfull]"></el-image>
+ </template>
+ </el-table-column>
<el-table-column prop="name" label="鍟嗗搧鍒嗙被" min-width="100px"></el-table-column>
<el-table-column prop="sortnum" label="鎺掑簭鐮�(鍗囧簭)" min-width="100px"></el-table-column>
<el-table-column prop="createDate" label="鍒涘缓鏃堕棿" min-width="100px"></el-table-column>
diff --git a/server/dmmall_admin/src/main/java/com/doumee/api/business/GoodsorderController.java b/server/dmmall_admin/src/main/java/com/doumee/api/business/GoodsorderController.java
index 8bbc807..4cf2711 100644
--- a/server/dmmall_admin/src/main/java/com/doumee/api/business/GoodsorderController.java
+++ b/server/dmmall_admin/src/main/java/com/doumee/api/business/GoodsorderController.java
@@ -95,6 +95,7 @@
@PostMapping("/page")
@RequiresPermissions("business:goodsorder:query")
public ApiResponse<PageData<Goodsorder>> findPage (@RequestBody PageWrap<Goodsorder> pageWrap) {
+ pageWrap.getModel().setNeedCount(true);
return ApiResponse.success(goodsorderService.findPage(pageWrap));
}
@@ -108,15 +109,9 @@
@ApiOperation("瀵煎嚭Excel")
@PostMapping("/exportExcel")
@RequiresPermissions("business:goodsorder:exportExcel")
- public void exportExcel (@RequestBody Goodsorder pageWrap, HttpServletResponse response) {
- List<Goodsorder> list=goodsorderService.exportExcel(pageWrap);
- for(Goodsorder model:list){
- if(model.getStatus()!=null){
- model.setStatusStr(Constants.OrderStatus.getInfo(model.getStatus()));
- model.setGoodsPrice(model.getGoodsPrice()+" "+model.getGoodsNum());
- }
- }
- ExcelExporter.build(Goodsorder.class).export(list, "鍟嗗搧璁㈠崟淇℃伅琛�", response);
+ public void exportExcel (@RequestBody PageWrap<Goodsorder> pageWrap, HttpServletResponse response) {
+ List<GoodsorderExport> list=goodsorderService.exportExcel(pageWrap);
+ ExcelExporter.build(GoodsorderExport.class).export(list, "鍟嗗搧璁㈠崟淇℃伅琛�", response);
}
@ApiOperation("鏍规嵁ID鏌ヨ")
diff --git a/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Goodsorder.java b/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Goodsorder.java
index a21b33d..df488df 100644
--- a/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Goodsorder.java
+++ b/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Goodsorder.java
@@ -304,5 +304,8 @@
@ApiModelProperty(value = "缁忛攢鍟嗗悕绉� ")
@TableField(exist = false)
private String shopName;
+ @ApiModelProperty(value = "鏄惁闇�瑕佺粺璁� ")
+ @TableField(exist = false)
+ private Boolean needCount;
}
diff --git a/server/dmmall_service/src/main/java/com/doumee/dao/business/model/GoodsorderExport.java b/server/dmmall_service/src/main/java/com/doumee/dao/business/model/GoodsorderExport.java
index 6e62904..f08a3a1 100644
--- a/server/dmmall_service/src/main/java/com/doumee/dao/business/model/GoodsorderExport.java
+++ b/server/dmmall_service/src/main/java/com/doumee/dao/business/model/GoodsorderExport.java
@@ -23,30 +23,39 @@
public class GoodsorderExport {
- private Integer id;
-
- @ExcelColumn(name="鍟嗗搧鍚嶇О" ,index =1 )
- private String goodsName;
- @ExcelColumn(name="瑙勬牸" ,index =2 )
- private String skuName;
- @ExcelColumn(name="浠锋牸" ,index =3 )
- private String price;
- @ExcelColumn(name="骞冲彴澶囨敞" ,index =4 )
- private String sysInfo;
- @ExcelColumn(name="鐢ㄦ埛澶囨敞" ,index =5 )
- private String memberInfo;
- @ExcelColumn(name="鑱旂郴浜�" ,index =6 )
- private String linkeName;
- @ExcelColumn(name="鑱旂郴鐢佃瘽" ,index =7 )
- private String linkePhone;
- @ExcelColumn(name="鑱旂郴鍦板潃" ,index =8 )
+ @ExcelColumn(name="璁㈠崟缂栧彿" ,index =1,width = 10)
+ private Long code;
+ @ExcelColumn(name="鍟嗗搧鎬绘暟閲�" ,index =2 ,width = 8)
+ private Integer totalNum;
+ @ExcelColumn(name="璁㈠崟鎬讳环锛堝厓锛�" ,index =3 ,width = 8)
+ private BigDecimal totalPrice;
+ @ExcelColumn(name="绉垎鎶垫墸锛堝厓锛�" ,index =4 ,width =8)
+ private BigDecimal integralPrice;
+ @ExcelColumn(name="浼樻儬鍒镐紭鎯狅紙鍏冿級" ,index =5 ,width = 8)
+ private BigDecimal couponPrice;
+ @ExcelColumn(name="杩愯垂锛堝厓锛�" ,index =6 ,width = 8)
+ private BigDecimal mailPrice;
+ @ExcelColumn(name="瀹炰粯浠锋牸锛堝厓锛�" ,index =7 ,width = 8)
+ private BigDecimal price;
+ @ExcelColumn(name="鎵�灞炵粡閿�鍟�" ,index =8 ,width = 10)
+ private String shopName;
+ @ExcelColumn(name="缁忛攢鍟嗙粨绠楋紙鍏冿級" ,index =9 ,width = 8)
+ private BigDecimal shopSettlement;
+ @ExcelColumn(name="閰嶉�佹柟寮�" ,index =10,width = 10 ,valueMapping = "0=蹇�掗厤閫�;1=闂ㄥ簵鑷彁")
+ private Integer receiveType;
+ @ExcelColumn(name="鏀惰揣浜哄鍚�" ,index =11 ,width = 10)
+ private String linkname;
+ @ExcelColumn(name="鏀惰揣浜虹數璇�" ,index =12 ,width = 10)
+ private String linkphone;
+ @ExcelColumn(name="鏀惰揣鍦板潃" ,index =13,width = 18 )
private String addr;
- @ExcelColumn(name="璁㈠崟浠锋牸" ,index =9 )
- private String allprice;
- @ExcelColumn(name="鐘舵��" ,index =10 )
- private String status;
-
-
-
+ @ExcelColumn(name="蹇�掍俊鎭�" ,index =14,width = 10 )
+ private String kdInfo;
+ @ExcelColumn(name="鐘舵��" ,index =15,width = 6,valueMapping = "0=寰呮敮浠�;1=寰呭彂璐�/寰呰嚜鎻�;2=寰呮敹璐�;3=浜ゆ槗瀹屾垚;4=宸插彇娑�;5=閮ㄥ垎鍙戣揣;6=宸查��娆�")
+ private Integer status;
+ @ExcelColumn(name="璁㈠崟鏃堕棿" ,index =16,dateFormat = "yyyy-MM-dd HH:mm:ss",width = 10)
+ private Date createDate;
+ @ExcelColumn(name="鍟嗗搧鍚嶇О/閲嶉噺(鍗曚环*鏁伴噺)" ,index =17 ,width = 60)
+ private String goodsName;
}
diff --git a/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Labels.java b/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Labels.java
index 0e82332..6621694 100644
--- a/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Labels.java
+++ b/server/dmmall_service/src/main/java/com/doumee/dao/business/model/Labels.java
@@ -105,6 +105,9 @@
private String imgFullurl;
+ @ApiModelProperty(value = "鍥炬爣")
+ @TableField(exist = false)
+ private String imgurlfull;
@ApiModelProperty(value = "鐖剁被鍚嶇О")
@TableField(exist = false)
private String parentName;
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/GoodsorderService.java b/server/dmmall_service/src/main/java/com/doumee/service/business/GoodsorderService.java
index eb2de77..cc724e8 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/GoodsorderService.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/GoodsorderService.java
@@ -4,6 +4,7 @@
import com.doumee.core.model.PageData;
import com.doumee.core.model.PageWrap;
import com.doumee.dao.business.model.Goodsorder;
+import com.doumee.dao.business.model.GoodsorderExport;
import com.doumee.dao.business.model.Shop;
import com.doumee.dao.web.request.*;
import com.doumee.dao.web.request.goods.DealOrderRequest;
@@ -110,7 +111,7 @@
PageData<Goodsorder> findPage(PageWrap<Goodsorder> pageWrap);
PageData<Goodsorder> findPageShop(PageWrap<Goodsorder> pageWrap);
- List<Goodsorder> exportExcel(Goodsorder goodsorder);
+ List<GoodsorderExport> exportExcel(PageWrap<Goodsorder> goodsorder);
/**
* 鏉′欢缁熻
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
index 155c66e..1829afe 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/GoodsorderServiceImpl.java
@@ -483,7 +483,7 @@
dealOrderDetailsBiz(idList,result);//鏌ヨ璁㈠崟鏄庣粏
}
PageData<Goodsorder> rr = PageData.from(result);
- if(pageWrap.getPage() == 1){
+ if(pageWrap.getPage() == 1 && pageWrap.getModel().getNeedCount()!=null&& pageWrap.getModel().getNeedCount()){
//濡傛灉鏌ヨ绗竴椤碉紝鍋氭暟鎹粺璁�
rr.setCountData(dealCountOrderNum(pageWrap));
}
@@ -660,41 +660,42 @@
@Override
- public List<Goodsorder> exportExcel(Goodsorder pageWrap) {
-
- MPJLambdaWrapper<Goodsorder> queryWrapper = new MPJLambdaWrapper<>();
-
-
- queryWrapper.selectAll(Goodsorder.class);
- queryWrapper.selectAs(GoodsorderDetail::getName,Goodsorder::getGoodsName);
- queryWrapper.selectAs(GoodsorderDetail::getSkuName,Goodsorder::getSkuName);
- queryWrapper.selectAs(GoodsorderDetail::getGoodsNum,Goodsorder::getGoodsNum);
- queryWrapper.selectAs(GoodsorderDetail::getPrice,Goodsorder::getGoodsPrice);
- queryWrapper.selectAs(Member::getNickname,Goodsorder::getNickName);
- queryWrapper.selectAs(Member::getPhone,Goodsorder::getPhone);
- queryWrapper.selectAs(Addr::getAddr,Goodsorder::getAddr);
- queryWrapper.select("(select CREATE_DATE from order_urge where ORDER_ID=t.id and ISDELETED=0 ORDER BY CREATE_DATE desc limit 1) as urgeCreateDate ");
- queryWrapper.leftJoin(Member.class,Member::getId,Goodsorder::getMemberId);
- queryWrapper.leftJoin(Addr.class,Addr::getMemberId,Member::getId);
- queryWrapper.leftJoin(GoodsorderDetail.class,GoodsorderDetail::getOrderId,Goodsorder::getId);
- queryWrapper.eq(GoodsorderDetail::getIsdeleted,Constants.ZERO);
- queryWrapper.eq(Addr::getIsDefault,Constants.ONE);
-
- queryWrapper.eq(pageWrap.getCode()!=null,Goodsorder::getCode,pageWrap.getCode());
- queryWrapper.and(StringUtils.isNotBlank(pageWrap.getNickName()),ms->ms.like(Goodsorder::getLinkname,pageWrap.getNickName())
- .or().like(Goodsorder::getLinkphone,pageWrap.getNickName())
- );
- queryWrapper.ge(pageWrap.getStarttime()!=null,Goodsorder::getCreateDate,pageWrap.getStarttime());
- queryWrapper.le(pageWrap.getEndtime()!=null,Goodsorder::getCreateDate, pageWrap.getEndtime());
-
- queryWrapper.eq(pageWrap.getStatus()!=null,Goodsorder::getStatus,pageWrap.getStatus());
- queryWrapper.eq(pageWrap.getIsdeleted()==null,Goodsorder::getIsdeleted,Constants.ZERO);
- queryWrapper.eq(pageWrap.getIsdeleted()!=null,Goodsorder::getIsdeleted,pageWrap.getIsdeleted());
- queryWrapper.orderByDesc(Goodsorder::getCreateDate);
-
- List<Goodsorder> result = goodsorderJoinMapper.selectJoinList(Goodsorder.class, queryWrapper);
-
-
+ public List<GoodsorderExport> exportExcel(PageWrap<Goodsorder> pageWrap) {
+ pageWrap.getModel().setNeedCount(false);
+ PageData<Goodsorder> list = findPage(pageWrap);
+ List<GoodsorderExport> result = new ArrayList<>();
+ if(list!=null && list.getRecords()!=null){
+ for(Goodsorder order: list.getRecords()){
+ GoodsorderExport param = new GoodsorderExport();
+ param.setCode(order.getCode());
+ String goodsInfo = "";
+ int goodsNum= 0;
+ if(order.getGoodsorderDetailList()!=null && order.getGoodsorderDetailList().size()>0){
+ for(GoodsorderDetail detail:order.getGoodsorderDetailList()){
+ goodsNum += Constants.formatIntegerNum(detail.getGoodsNum());
+ goodsInfo+= StringUtils.defaultString(detail.getName(),"")+"/"+Constants.formatBigdecimal(detail.getGoodsWeight())+"kg"
+ +"("+Constants.formatBigdecimal(detail.getPrice())+" x "+Constants.formatIntegerNum(detail.getGoodsNum())+")锛沑n";
+ }
+ }
+ param.setTotalNum(goodsNum);
+ param.setGoodsName(goodsInfo);
+ param.setTotalPrice(order.getTotalPrice());
+ param.setIntegralPrice(order.getIntegral());
+ param.setCouponPrice(order.getCouponPrice());
+ param.setMailPrice(order.getMailPrice());
+ param.setPrice(order.getPrice());
+ param.setShopName(order.getShopName());
+ param.setShopSettlement(order.getShopSettlement());
+ param.setReceiveType(order.getReceiveType());
+ param.setLinkname(order.getLinkname());
+ param.setLinkphone(order.getLinkphone());
+ param.setAddr(order.getLinkaddr());
+ param.setKdInfo(StringUtils.defaultString(order.getKdName(),"")+StringUtils.defaultString(order.getKdCode(),""));
+ param.setStatus(order.getStatus());
+ param.setCreateDate(order.getCreateDate());
+ result.add(param);
+ }
+ }
return result;
}
diff --git a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/LabelsServiceImpl.java b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/LabelsServiceImpl.java
index f075750..501672f 100644
--- a/server/dmmall_service/src/main/java/com/doumee/service/business/impl/LabelsServiceImpl.java
+++ b/server/dmmall_service/src/main/java/com/doumee/service/business/impl/LabelsServiceImpl.java
@@ -358,6 +358,7 @@
}
if(StringUtils.isNotBlank(model.getImgurl())){
model.setImgFullurl(path + model.getImgurl());
+ model.setImgurlfull(path + model.getImgurl());
}
if(Constants.equalsInteger(model.getType(),Constants.LabelsType.BIG_AREA.getKey())
|| Constants.equalsInteger(model.getType(),Constants.LabelsType.YUN_FEE.getKey())){
--
Gitblit v1.9.3