From 5d43370b99a03391c9271d04d3f351f0fd734dae Mon Sep 17 00:00:00 2001
From: 935090232@qq.com <ak473600000>
Date: Thu, 18 Mar 2021 20:23:02 +0800
Subject: [PATCH] Merge remote-tracking branch 'origin/score_shop' into score_shop
---
zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopRevenueFlowDao.java | 3
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-setting.html | 92
zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopSkuDao.xml | 27
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-update.html | 183 +-
zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoUserAction.java | 69
zq-erp/src/main/resources/config/db/increment/推广员.sql | 20
zq-erp/src/main/resources/templates/views/common/showprojException.html | 51
zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopRefundRecordAction.java | 21
zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopSku.java | 19
zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java | 14
zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoOrderAction.java | 4
zq-erp/src/main/java/com/matrix/biz/bean/BizUser.java | 10
zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanApplyVo.java | 8
zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java | 123 +
zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html | 13
zq-erp/src/main/java/com/matrix/biz/dao/BizUserDao.java | 16
zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java | 3
zq-erp/src/main/resources/config/system.properties | 4
zq-erp/src/main/resources/templates/views/admin/shop/shopProduct-list.html | 36
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html | 86
zq-erp/src/main/java/com/matrix/system/fenxiao/dto/LoadParamSettingDto.java | 25
zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopShoppingCartDao.xml | 20
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WXShopOrderAction.java | 2
zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoSettingAction.java | 37
zq-erp/src/main/java/com/matrix/ZqErpApplication.java | 3
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShoppingCartAction.java | 60
zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopOrderDetailVo.java | 3
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesProductAction.java | 6
zq-erp/src/main/java/com/matrix/biz/service/impl/BizUserServiceImpl.java | 11
zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderV2Dao.xml | 1
zq-erp/src/main/resources/templates/views/admin/shop/shopProduct-form.html | 103 +
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-apply.html | 2
zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopProductDao.xml | 85 +
zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new-bak.html | 229 +++
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java | 262 ++-
zq-erp/src/main/java/com/matrix/system/common/service/impl/InitBusParameterSettingService.java | 4
zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ScoreProductDto.java | 18
zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-user.html | 58
zq-erp/.gitignore | 3
zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/ShoppingCartService.java | 4
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShareProductAction.java | 2
zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopProduct.java | 404 -----
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java | 2
zq-erp/src/main/java/com/matrix/system/shopXcx/vo/SalesmanApplyCondition.java | 35
zq-erp/src/main/java/com/matrix/system/common/actions/ProjExceptionAction.java | 21
zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java | 22
zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopShoppingCartDao.java | 6
zq-erp/src/main/java/com/matrix/biz/service/BizUserService.java | 20
zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderV2Dao.java | 4
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxScoreProductAction.java | 67 +
zq-erp/src/main/resources/config/test/system.properties | 4
zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java | 2
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java | 86 +
zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html | 39
zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopBizUserScoreAction.java | 84 -
zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java | 2
zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/SalesOrderTask.java | 143 +-
zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesWithdrawalAction.java | 7
zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java | 5
/dev/null | 141 --
zq-erp/src/main/resources/templates/views/admin/hive-erp/statistics/daily-list-new.html | 462 +++---
zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopRevenueFlowDao.xml | 2
zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html | 462 +++---
zq-erp/src/main/java/com/matrix/system/fenxiao/dto/LoadParamSettingBasicDto.java | 20
zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/SalesOrderRefundTask.java | 43
zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopShoppingCart.java | 27
zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/MQTaskRouting.java | 4
zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml | 36
68 files changed, 2,267 insertions(+), 1,623 deletions(-)
diff --git a/zq-erp/.gitignore b/zq-erp/.gitignore
index 7f64141..31966d8 100644
--- a/zq-erp/.gitignore
+++ b/zq-erp/.gitignore
@@ -76,4 +76,5 @@
.project
.classpath
.settings
-.metadata
\ No newline at end of file
+.metadata
+.gitignore
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/ZqErpApplication.java b/zq-erp/src/main/java/com/matrix/ZqErpApplication.java
index 2941bcc..ff662ff 100644
--- a/zq-erp/src/main/java/com/matrix/ZqErpApplication.java
+++ b/zq-erp/src/main/java/com/matrix/ZqErpApplication.java
@@ -3,6 +3,7 @@
import org.springframework.boot.SpringApplication;
import org.springframework.boot.autoconfigure.SpringBootApplication;
import org.springframework.context.annotation.ComponentScan;
+import org.springframework.scheduling.annotation.EnableAsync;
/**
* spring boot入口
@@ -10,9 +11,7 @@
* @author jiangyouyao
*/
@SpringBootApplication
-
@ComponentScan(basePackages = {"com.matrix.**"})
-
public class ZqErpApplication {
public static void main(String[] args) {
diff --git a/zq-erp/src/main/java/com/matrix/biz/bean/BizUser.java b/zq-erp/src/main/java/com/matrix/biz/bean/BizUser.java
index 8c94ca2..0fa5868 100644
--- a/zq-erp/src/main/java/com/matrix/biz/bean/BizUser.java
+++ b/zq-erp/src/main/java/com/matrix/biz/bean/BizUser.java
@@ -27,7 +27,7 @@
/**
* 主键
*/
- private String userId;
+ private Long userId;
/**
@@ -236,15 +236,13 @@
this.companyId = companyId;
}
- public void setToken(String token) {
- this.token=userId;
- }
- public String getUserId() {
+
+ public Long getUserId() {
return userId;
}
- public void setUserId(String userId) {
+ public void setUserId(Long userId) {
this.userId=userId;
}
diff --git a/zq-erp/src/main/java/com/matrix/biz/dao/BizUserDao.java b/zq-erp/src/main/java/com/matrix/biz/dao/BizUserDao.java
index b87fbc8..40eeda0 100644
--- a/zq-erp/src/main/java/com/matrix/biz/dao/BizUserDao.java
+++ b/zq-erp/src/main/java/com/matrix/biz/dao/BizUserDao.java
@@ -22,9 +22,9 @@
public int updateByModel(@Param("record") BizUser bizUser);
- public int deleteByIds(@Param("list") List<String> list);
+ public int deleteByIds(@Param("list") List<Long> list);
- public int deleteById(String userId);
+ public int deleteById(Long userId);
public int deleteByModel(@Param("record") BizUser bizUser);
@@ -34,18 +34,12 @@
public int selectTotalRecord(@Param("record") BizUser bizUser);
- public BizUser selectById(String userId);
+ public BizUser selectById(Long userId);
- public BizUser selectForUpdate(String userId);
+ public BizUser selectForUpdate(Long userId);
public BizUser findByOpenId(@Param("openId") String openId);
- /**
- * 批量设置销售员
- * @param list
- * @param status
- * @return
- */
- int updateSalesByIds(@Param("list") List<String> list, @Param("status") Integer status);
+
}
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/biz/service/BizUserService.java b/zq-erp/src/main/java/com/matrix/biz/service/BizUserService.java
index 5f10819..7aa2b0f 100644
--- a/zq-erp/src/main/java/com/matrix/biz/service/BizUserService.java
+++ b/zq-erp/src/main/java/com/matrix/biz/service/BizUserService.java
@@ -2,7 +2,6 @@
import com.matrix.biz.bean.BizUser;
import com.matrix.core.pojo.PaginationVO;
-import com.matrix.core.web.BaseServices;
import java.util.List;
@@ -11,7 +10,7 @@
* @author jyy
* @date 2019-05-31 10:03
*/
-public interface BizUserService extends BaseServices<BizUser> {
+public interface BizUserService {
/**
* 新增
@@ -33,15 +32,12 @@
*/
public int modifyByModel(BizUser bizUser);
- /**
- * 批量删除
- */
- public int remove(List<String> list);
+
/**
* 根据id删除
*/
- public int removeById(String userId);
+ public int removeById(Long userId);
/**
* 根据对象删除
@@ -62,11 +58,8 @@
* 统计记录数
*/
public int findTotal(BizUser bizUser);
-
- /**
- * 根据id查询
- */
- public BizUser findById(String userId);
+
+ public int remove(List<Long> list);
/**
@@ -74,7 +67,8 @@
*/
public BizUser findByOpenId(String openId);
-
+
+ public BizUser findById(Long userId);
/**
* 保存用户信息
*/
diff --git a/zq-erp/src/main/java/com/matrix/biz/service/impl/BizUserServiceImpl.java b/zq-erp/src/main/java/com/matrix/biz/service/impl/BizUserServiceImpl.java
index b9333da..f2d62d6 100644
--- a/zq-erp/src/main/java/com/matrix/biz/service/impl/BizUserServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/biz/service/impl/BizUserServiceImpl.java
@@ -36,7 +36,6 @@
bizUser.setUserIsAuthorize(AppConstance.IS_NOT_AUTHORIZE);
bizUser.setCreateBy(AppConstance.USER_TYPE_ADMIN);
bizUser.setUpdateBy(AppConstance.USER_TYPE_ADMIN);
- bizUser.setUserId(UUIDUtil.getRandomID());
return bizUserDao.insert(bizUser);
}
@@ -90,14 +89,14 @@
@Override
- public int remove(List<String> list){
-
+ public int remove(List<Long> list){
+
return bizUserDao.deleteByIds(list);
-
+
}
@Override
- public int removeById(String userId){
+ public int removeById(Long userId){
return bizUserDao.deleteById(userId);
@@ -133,7 +132,7 @@
}
@Override
- public BizUser findById(String userId){
+ public BizUser findById(Long userId){
return bizUserDao.selectById(userId);
diff --git a/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java b/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java
index ce1ff16..11f480b 100644
--- a/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java
+++ b/zq-erp/src/main/java/com/matrix/config/RabbitMqConfig.java
@@ -51,6 +51,10 @@
SalesOrderTask SalesOrderTask() {
return new SalesOrderTask();
}
+ @Bean
+ SalesOrderRefundTask SalesOrderRefundTask() {
+ return new SalesOrderRefundTask();
+ }
@Bean
TemplateMsgTask TemplateMsgTask(){
@@ -87,6 +91,7 @@
taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.SEND_TEMPLATE_MSG + evn,MQTaskRouting.SEND_TEMPLATE_MSG + evn, TemplateMsgTask()));
taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.ORDER_OUT_SOTORE + evn,MQTaskRouting.ORDER_OUT_SOTORE + evn, OrderOutSotoreTask()));
taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG + evn,MQTaskRouting.SEND_UNIFORM_TEMPLATE_MSG + evn, UniformMsgSentTask()));
+ taskList.add(new MqTask(MQ_EXCHANGE_A + evn, MQTaskRouting.SHOP_ORDER_REFUND + evn,MQTaskRouting.SHOP_ORDER_REFUND + evn, SalesOrderRefundTask()));
//不同任务在不同的队列,但是routingKey一样则可以收到生产者消息
taskList.add(new MqTask(MQ_EXCHANGE_TOPIC + evn, MQTaskRouting.CREATE_ORDER + evn,MQTaskRouting.CREATE_ORDER + evn,SalesOrderTask()));
diff --git a/zq-erp/src/main/java/com/matrix/system/common/actions/ProjExceptionAction.java b/zq-erp/src/main/java/com/matrix/system/common/actions/ProjExceptionAction.java
index 7229a15..19ed8a3 100644
--- a/zq-erp/src/main/java/com/matrix/system/common/actions/ProjExceptionAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/common/actions/ProjExceptionAction.java
@@ -1,22 +1,16 @@
package com.matrix.system.common.actions;
-import com.matrix.core.constance.MatrixConstance;
import com.matrix.core.pojo.AjaxResult;
-import com.matrix.core.pojo.PaginationVO;
-import com.matrix.core.tools.WebUtil;
import com.matrix.system.common.bean.ProjException;
-import com.matrix.system.common.bean.SysUsers;
-import com.matrix.system.common.constance.AppConstance;
import com.matrix.system.common.dao.ProjExceptionDao;
-import org.apache.commons.lang.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestBody;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.servlet.ModelAndView;
import java.util.Arrays;
-import java.util.List;
/**
* @author 姜友瑶
@@ -31,12 +25,19 @@
ProjExceptionDao projExceptionDao;
@RequestMapping(value = "/showException")
- public @ResponseBody
- AjaxResult showException(Long id) {
+ public
+ ModelAndView showException(Long id) {
ProjException projException = projExceptionDao.selectById(id);
- return AjaxResult.buildSuccessInstance(Arrays.asList(projException));
+ ModelAndView mv = new ModelAndView("common/showprojException");
+ mv.addObject("obj", projException);
+ return mv;
+
}
+
+
+
+
@RequestMapping(value = "/projException/del")
public @ResponseBody
AjaxResult del(@RequestBody ProjException projException) {
diff --git a/zq-erp/src/main/java/com/matrix/system/common/service/impl/InitBusParameterSettingService.java b/zq-erp/src/main/java/com/matrix/system/common/service/impl/InitBusParameterSettingService.java
index 52bc578..2e93055 100644
--- a/zq-erp/src/main/java/com/matrix/system/common/service/impl/InitBusParameterSettingService.java
+++ b/zq-erp/src/main/java/com/matrix/system/common/service/impl/InitBusParameterSettingService.java
@@ -48,13 +48,13 @@
public void initBusParameterFenxiaoSetting(SysCompany sysCompany) {
long companyId = sysCompany.getComId();
List<BusParameterSettings> ruleSettings=new ArrayList<>();
-
ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_SWITCH, companyId));
ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_MODEL, companyId));
ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_APPLY_WAY, companyId));
ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_AUDIT_METHOD, companyId));
ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_APPLY_CONDITION, companyId));
-
+ ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_TG_PLAN, companyId));
+ ruleSettings.add(addScoreRuleSetting(FenxiaoSettingConstant.FX_TG_POSTER, companyId));
busParameterSettingsDao.batchInsert(ruleSettings);
}
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoOrderAction.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoOrderAction.java
index 46cdaf9..5c511b7 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoOrderAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoOrderAction.java
@@ -1,7 +1,6 @@
package com.matrix.system.fenxiao.action;
import com.matrix.core.pojo.AjaxResult;
-import com.matrix.system.fenxiao.dto.ChangeSaleManGradeDto;
import com.matrix.system.fenxiao.dto.LoadFenxiaoOrderBasicDto;
import com.matrix.system.fenxiao.dto.LoadFenxiaoOrderListDto;
import com.matrix.system.fenxiao.dto.LoadSetOrderListDtoDto;
@@ -10,7 +9,6 @@
import com.matrix.system.fenxiao.vo.LoadFenxiaoOrderBasicVo;
import com.matrix.system.fenxiao.vo.LoadFenxiaoOrderListVo;
import com.matrix.system.fenxiao.vo.LoadSetOrderListDtoVo;
-
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
import io.swagger.annotations.ApiResponses;
@@ -63,7 +61,7 @@
/**
* 结算记录
*/
- @ApiOperation(value = "分销订单")
+ @ApiOperation(value = "结算记录")
@ApiResponses({
@ApiResponse(code = 200, message = "OK", response = LoadSetOrderListDtoVo.class)
})
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoSettingAction.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoSettingAction.java
index 98e2f77..2795142 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoSettingAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoSettingAction.java
@@ -5,15 +5,19 @@
import com.matrix.biz.dao.BizUserDao;
import com.matrix.core.constance.MatrixConstance;
import com.matrix.core.pojo.AjaxResult;
+import com.matrix.core.pojo.PaginationVO;
import com.matrix.core.tools.WebUtil;
import com.matrix.system.common.bean.BusParameterSettings;
import com.matrix.system.common.bean.SysUsers;
+import com.matrix.system.common.constance.AppConstance;
import com.matrix.system.common.dao.BusParameterSettingsDao;
import com.matrix.system.fenxiao.constant.FenxiaoSettingConstant;
import com.matrix.system.fenxiao.service.FenXiaoSettingService;
import com.matrix.system.fenxiao.vo.FenXiaoSettingVo;
-import com.matrix.system.hive.bean.ShoppingGoods;
+import com.matrix.system.hive.action.util.QueryUtil;
import com.matrix.system.hive.dao.ShoppingGoodsDao;
+import com.matrix.system.shopXcx.bean.ShopProduct;
+import com.matrix.system.shopXcx.dao.ShopProductDao;
import org.springframework.beans.BeanUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.web.bind.annotation.*;
@@ -37,6 +41,9 @@
@Autowired
private BizUserDao bizUserDao;
+
+ @Autowired
+ private ShopProductDao shopProductDao;
/**
*查询分销配置
@@ -87,16 +94,38 @@
idsList.add(parseInt);
}
}
- List<ShoppingGoods> list = shoppingGoodsDao.selectByIds(idsList);
- result.putInMap("order", list);
+ //List<ShoppingGoods> list = shoppingGoodsDao.selectByIds(idsList);
+ List<ShopProduct> shopProducts = shopProductDao.selectByIds(idsList);
+ result.putInMap("order", shopProducts);
}
- }
+ }else{
+ List<ShopProduct> shopProducts = new ArrayList<>();
+ result.putInMap("order", shopProducts);
+ }
}
}
return result;
}
/**
+ * 列表显示
+ */
+ @RequestMapping(value = "/selectProduct")
+ public @ResponseBody
+ AjaxResult selectProduct(ShopProduct shopProduct, PaginationVO pageVo) {
+ QueryUtil.setQueryLimitCom(shopProduct);
+ pageVo.setSort("createTime");
+ pageVo.setOrder("desc");
+ shopProduct.setDelFlag(AppConstance.DATA_USEABLE);
+ shopProduct.setCompanyId(shopProduct.getCompanyId());
+ List<ShopProduct> dataList = shopProductDao.selectInPage(shopProduct, pageVo);
+ AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, dataList,
+ shopProductDao.selectTotalRecord(shopProduct));
+ return result;
+
+ }
+
+ /**
*获取对应的规则设置数据
* @param ArrayCode
* @param ArrayName
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoUserAction.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoUserAction.java
index f7ef70f..5ba6f89 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoUserAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/action/FenXiaoUserAction.java
@@ -55,32 +55,81 @@
@ApiResponses({
@ApiResponse(code = 200, message = "OK", response = ShopSalesmanDetailVo.class)
})
- @PostMapping(value = "/findShopSalesmanDetail")
+ @PostMapping(value = "/loadParamSettingBasic")
public @ResponseBody
- AjaxResult findShopSalesmanDetail(@RequestBody ShopSalesmanDetailDto shopSalesmanDetailDto) {
+ AjaxResult findShopSalesmanDetail(@RequestBody LoadParamSettingBasicDto loadParamSettingBasicDto) {
//设置用户公司ID
- QueryUtil.setQueryLimitCom(shopSalesmanDetailDto);
+ QueryUtil.setQueryLimitCom(loadParamSettingBasicDto);
AjaxResult result= AjaxResult.buildSuccessInstance("查询成功");
//根据OPENID查询基础信息
- String userId = shopSalesmanDetailDto.getUserId();
- String applyId = shopSalesmanDetailDto.getApplyId();
+ String userId = loadParamSettingBasicDto.getUserId();
+ String applyId = loadParamSettingBasicDto.getApplyId();
SalesmanBasicDetailVo salesmanBasicDetailVo = shopSalesmanApplyService.selectShopSalesmanDetailByOpenId(userId,Long.parseLong(applyId));
result.putInMap("basicdetail", salesmanBasicDetailVo);
+ return result;
+ }
+
+ /**
+ * 分销员详情页面绑定客户
+ */
+ @ApiOperation(value = "分销员详情页面绑定客户")
+ @PostMapping(value = "/loadParamSetting")
+ public @ResponseBody
+ AjaxResult loadParamSetting(@RequestBody LoadParamSettingDto loadParamSettingDto) {
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(loadParamSettingDto);
+ AjaxResult result= AjaxResult.buildSuccessInstance("查询成功");
//排序
- if(StringUtils.isBlank(shopSalesmanDetailDto.getSort())){
- shopSalesmanDetailDto.setSort("create_time");
- shopSalesmanDetailDto.setOrder("desc");
+ if(StringUtils.isBlank(loadParamSettingDto.getSort())){
+ loadParamSettingDto.setSort("create_time");
+ loadParamSettingDto.setOrder("desc");
}
//查询绑定客户信息
- Page<ShopCustomDetailVo> page = new Page(shopSalesmanDetailDto.getPageNum(), shopSalesmanDetailDto.getPageSize());
- IPage<ShopCustomDetailVo> customDetailRows = shopSalesmanApplyService.findCustomDetail(page,shopSalesmanDetailDto);
+ Page<ShopCustomDetailVo> page = new Page(loadParamSettingDto.getPageNum(), loadParamSettingDto.getPageSize());
+ IPage<ShopCustomDetailVo> customDetailRows = shopSalesmanApplyService.findCustomDetail(page,loadParamSettingDto);
result.putInMap("customDetailRecords", customDetailRows.getRecords());
result.putInMap("customDetailTotal", customDetailRows.getTotal());
+ return result;
+ }
+
+ /**
+ * 分销员详情页面邀请下级
+ */
+ @ApiOperation(value = "分销员详情页面邀请下级")
+ @PostMapping(value = "/loadParamSettinglow")
+ public @ResponseBody
+ AjaxResult loadParamSettinglow(@RequestBody ShopSalesmanDetailDto shopSalesmanDetailDto) {
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(shopSalesmanDetailDto);
+ AjaxResult result= AjaxResult.buildSuccessInstance("查询成功");
+ //排序
+ if(StringUtils.isBlank(shopSalesmanDetailDto.getSort())){
+ shopSalesmanDetailDto.setSort("create_time");
+ shopSalesmanDetailDto.setOrder("desc");
+ }
//查询邀请下级信息
Page<ShopCustomDetailVo> pageLow = new Page(shopSalesmanDetailDto.getPageNum(), shopSalesmanDetailDto.getPageSize());
IPage<ShopCustomDetailVo> customLowRows = shopSalesmanApplyService.findCustomLow(pageLow,shopSalesmanDetailDto);
result.putInMap("customLowRecords", customLowRows.getRecords());
result.putInMap("customLowTotal", customLowRows.getTotal());
+ return result;
+ }
+
+ /**
+ * 分销员详情页面收益订单
+ */
+ @ApiOperation(value = "分销员详情页面收益订单")
+ @PostMapping(value = "/loadParamSettingOrder")
+ public @ResponseBody
+ AjaxResult loadParamSettingOrder(@RequestBody ShopSalesmanDetailDto shopSalesmanDetailDto) {
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(shopSalesmanDetailDto);
+ AjaxResult result= AjaxResult.buildSuccessInstance("查询成功");
+ //排序
+ if(StringUtils.isBlank(shopSalesmanDetailDto.getSort())){
+ shopSalesmanDetailDto.setSort("create_time");
+ shopSalesmanDetailDto.setOrder("desc");
+ }
//查询收益订单
Page<ShopOrderDetailVo> pageOrder = new Page(shopSalesmanDetailDto.getPageNum(), shopSalesmanDetailDto.getPageSize());
IPage<ShopOrderDetailVo> orderRows = shopSalesmanApplyService.findShopOrderDetail(pageOrder,shopSalesmanDetailDto);
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java
index 4faf796..de2bc10 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/constant/FenxiaoSettingConstant.java
@@ -14,6 +14,14 @@
*/
public final static String FX_APPLY_WAY = "FX_APPLY_WAY";
/**
+ * 申请方式 1自动申请通过
+ */
+ public final static String FX_APPLY_WAY_AUTO = "1";
+ /**
+ * 申请方式 2需要主动申请
+ */
+ public final static String FX_APPLY_WAY_CUSTOMER = "2";
+ /**
* 审核方式 1系统自动审核,2人工审核
*/
public final static String FX_AUDIT_METHOD = "FX_AUDIT_METHOD";
@@ -26,15 +34,15 @@
*/
public final static String FX_APPLY_CONDITION_WTJ = "1";
/**
- * 申请条件 1 消费任意产品
+ * 申请条件 2 消费任意产品
*/
public final static String FX_APPLY_CONDITION_XFRYCP = "2";
/**
- * 申请条件 1 消费指定产品
+ * 申请条件 3 消费指定产品
*/
public final static String FX_APPLY_CONDITION_XFZDCP = "3";
/**
- * 申请条件 1 消费指定金额
+ * 申请条件 4 消费指定金额
*/
public final static String FX_APPLY_CONDITION_XCZDJE = "4";
/**
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopRevenueFlowDao.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopRevenueFlowDao.java
index e4b1d83..d409465 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopRevenueFlowDao.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopRevenueFlowDao.java
@@ -5,7 +5,6 @@
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.matrix.system.fenxiao.entity.ShopRevenueFlow;
import com.matrix.system.shopXcx.api.dto.RevenueFlowDto;
-import com.matrix.system.shopXcx.vo.SalesOrderVo;
import org.apache.ibatis.annotations.Param;
/**
@@ -15,5 +14,5 @@
*/
public interface ShopRevenueFlowDao extends BaseMapper<ShopRevenueFlow> {
- IPage<SalesOrderVo> selectRevenuFlowList(Page<SalesOrderVo> page, @Param("record") RevenueFlowDto revenueFlowDto);
+ IPage<ShopRevenueFlow> selectRevenuFlowList(Page<ShopRevenueFlow> page, @Param("record") RevenueFlowDto revenueFlowDto);
}
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java
index 4b5aad7..e881f7a 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/dao/ShopSalesmanApplyDao.java
@@ -3,6 +3,7 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
+import com.matrix.system.fenxiao.dto.LoadParamSettingDto;
import com.matrix.system.fenxiao.dto.ShopSalesmanAppliingDto;
import com.matrix.system.fenxiao.dto.ShopSalesmanApplyDto;
import com.matrix.system.fenxiao.dto.ShopSalesmanDetailDto;
@@ -42,7 +43,7 @@
@Param("companyId")Long companyId,@Param("applyId")long applyId);
IPage<ShopCustomDetailVo> findCustomDetail(Page<ShopCustomDetailVo> page,
- @Param("record")ShopSalesmanDetailDto shopSalesmanDetailDto);
+ @Param("record")LoadParamSettingDto loadParamSettingDto);
IPage<ShopCustomDetailVo> findCustomLow(Page<ShopCustomDetailVo> pageLow,
@Param("record")ShopSalesmanDetailDto shopSalesmanDetailDto);
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/dto/LoadParamSettingBasicDto.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/dto/LoadParamSettingBasicDto.java
new file mode 100644
index 0000000..2255170
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/dto/LoadParamSettingBasicDto.java
@@ -0,0 +1,20 @@
+package com.matrix.system.fenxiao.dto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "LoadParamSettingBasicDto", description = "查询参数")
+public class LoadParamSettingBasicDto {
+
+ @ApiModelProperty(value ="会员OPENID")
+ private String userId;
+
+ @ApiModelProperty(value ="申请记录ID")
+ private String applyId;
+
+ @ApiModelProperty(hidden = true)
+ private Long companyId;
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/dto/LoadParamSettingDto.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/dto/LoadParamSettingDto.java
new file mode 100644
index 0000000..65c479b
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/dto/LoadParamSettingDto.java
@@ -0,0 +1,25 @@
+package com.matrix.system.fenxiao.dto;
+
+import com.matrix.core.pojo.BasePageQueryDto;
+
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "LoadParamSettingDto", description = "查询参数")
+public class LoadParamSettingDto extends BasePageQueryDto {
+
+ @ApiModelProperty(value ="会员姓名")
+ private String userName;
+
+ @ApiModelProperty(value ="会员OPENID")
+ private String userId;
+
+ @ApiModelProperty(value ="申请记录ID")
+ private String applyId;
+
+ @ApiModelProperty(hidden = true)
+ private Long companyId;
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
index 9cf5e16..37e9b50 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/service/ShopSalesmanApplyService.java
@@ -14,6 +14,7 @@
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.pojo.VerificationResult;
import com.matrix.core.tools.StringUtils;
+import com.matrix.core.tools.WebUtil;
import com.matrix.system.common.bean.BusParameterSettings;
import com.matrix.system.common.bean.SysUsers;
import com.matrix.system.common.dao.BusParameterSettingsDao;
@@ -71,7 +72,7 @@
BizUser loginUser=bizUserDao.findByOpenId(openId);
//验证申请条件
- VerificationResult verificationResult = isAbleToBeAnSalesman(openId);
+ VerificationResult verificationResult = isAbleToBeAnSalesman(openId,loginUser.getCompanyId());
if(verificationResult.isJudgeResult()){
//校验审核状态,和是否重复发起
QueryWrapper<ShopSalesmanApply> queryWrapper = new QueryWrapper<>();
@@ -135,42 +136,50 @@
/**
* 判断是否满足申请成为分销员的条件
*/
- public VerificationResult isAbleToBeAnSalesman(String openId) {
- BizUser bizUser = bizUserDao.findByOpenId(openId);
- VerificationResult verificationResult=null;
- //申请条件
- BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, bizUser.getCompanyId());
- switch (applyCondition.getParamValue()){
- case FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ:
- VerificationResult.buildVerificationResult(true);
- case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP:
- VerificationResult.buildVerificationResult(true);
- int buyZdcpCount= shopOrderV2Dao.countBuyZdcp(openId,applyCondition.getParamValue1());
- if(buyZdcpCount>0){
- verificationResult= VerificationResult.buildVerificationResult(true);
- }else{
- verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费指定产品后再申请!");
- }
+ public VerificationResult isAbleToBeAnSalesman(String openId,Long companyId) {
- case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP:
- //判断用户是否有确认收货的产品
- int receivedOrderCount= shopOrderV2Dao.selectReceivedOrderCount(openId);
- if(receivedOrderCount>0){
+ VerificationResult verificationResult=null;
+
+ //申请模式
+ BusParameterSettings applyWay = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_WAY, companyId);
+ if (applyWay.getParamValue().equals(FenxiaoSettingConstant.FX_APPLY_WAY_AUTO)) {
+ verificationResult= VerificationResult.buildVerificationResult(true);
+ }else{
+ //申请条件
+ BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, companyId);
+ switch (applyCondition.getParamValue()){
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ:
verificationResult= VerificationResult.buildVerificationResult(true);
- }else{
- verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费任意产品后再申请!");
- }
- case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE:
- Double zdje=Double.parseDouble(applyCondition.getParamValue2());
- Double yxfje=shopOrderV2Dao.countOrderAmount(openId);
- if(zdje<yxfje){
- verificationResult=VerificationResult.buildVerificationResult(true);
- }else{
- verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费满"+zdje+"元后再申请!");
- }
- VerificationResult.buildVerificationResult(true);
- default:
- VerificationResult.buildVerificationResult(true);
+ break;
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP:
+ int buyZdcpCount= shopOrderV2Dao.countBuyZdcp(openId,applyCondition.getParamValue1());
+ if(buyZdcpCount>0){
+ verificationResult= VerificationResult.buildVerificationResult(true);
+ }else{
+ verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费指定产品后再申请!");
+ }
+ break;
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP:
+ //判断用户是否有确认收货的产品
+ int receivedOrderCount= shopOrderV2Dao.selectReceivedOrderCount(openId);
+ if(receivedOrderCount>0){
+ verificationResult= VerificationResult.buildVerificationResult(true);
+ }else{
+ verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费任意产品后再申请!");
+ }
+ break;
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE:
+ Double zdje=Double.parseDouble(applyCondition.getParamValue2());
+ Double yxfje=shopOrderV2Dao.countOrderAmount(openId);
+ if(zdje<yxfje){
+ verificationResult=VerificationResult.buildVerificationResult(true);
+ }else{
+ verificationResult= VerificationResult.buildVerificationResult(false,"不符合申请条件,请消费满"+zdje+"元后再申请!");
+ }
+ break;
+ default:
+ verificationResult= VerificationResult.buildVerificationResult(true);
+ }
}
return verificationResult;
}
@@ -232,9 +241,8 @@
return shopSalesmanApplyDao.selectShopSalesmanDetailByOpenId(userId,companyId,applyId);
}
- public IPage<ShopCustomDetailVo> findCustomDetail(Page<ShopCustomDetailVo> page,
- ShopSalesmanDetailDto shopSalesmanDetailDto) {
- return shopSalesmanApplyDao.findCustomDetail(page,shopSalesmanDetailDto);
+ public IPage<ShopCustomDetailVo> findCustomDetail(Page<ShopCustomDetailVo> page,LoadParamSettingDto loadParamSettingDto) {
+ return shopSalesmanApplyDao.findCustomDetail(page,loadParamSettingDto);
}
public IPage<ShopCustomDetailVo> findCustomLow(Page<ShopCustomDetailVo> pageLow,
@@ -286,7 +294,7 @@
bizUserDao.updateByModel(findByOpenId);
shopSalesmanApplyDao.updateById(shopSalesmanApply);
- return AjaxResult.buildFailInstance("修改等级成功");
+ return AjaxResult.buildSuccessInstance("修改等级成功");
}
@Transactional(rollbackFor = Exception.class)
@@ -301,7 +309,7 @@
}
findByOpenId.setParentOpenId("");
bizUserDao.updateByModel(findByOpenId);
- return AjaxResult.buildFailInstance("解绑成功");
+ return AjaxResult.buildSuccessInstance("解绑成功");
}
@Transactional(rollbackFor = Exception.class)
@@ -322,7 +330,7 @@
ShopSalesmanApply selectById = shopSalesmanApplyDao.selectById(applyid);
selectById.setApplyStatus(ShopSalesmanApply.APPLY_STATUS_XTQX);
shopSalesmanApplyDao.updateById(selectById);
- return AjaxResult.buildFailInstance("操作成功");
+ return AjaxResult.buildSuccessInstance("操作成功");
}
public IPage<FyfaManageVo> findFyfaManageList(Page<FyfaManageVo> page, FyfaManageDto fyfaManageDto) {
@@ -351,16 +359,14 @@
return AjaxResult.buildFailInstance("当前行数据不存在,请刷新页面");
}
shopSalesmanGradeDao.deleteById(gradeId);
- return AjaxResult.buildFailInstance("操作成功");
+ return AjaxResult.buildSuccessInstance("操作成功");
}
@Transactional(rollbackFor = Exception.class)
public AjaxResult updateFyfa(UpdateFyfaDto updateFyfaDto) {
-
+ //设置用户公司ID
+ QueryUtil.setQueryLimitCom(updateFyfaDto);
ShopSalesmanGrade selectById = shopSalesmanGradeDao.selectById(updateFyfaDto.getId());
- if(ObjectUtil.isEmpty(selectById)) {
- return AjaxResult.buildFailInstance("当前行数据不存在,请刷新页面");
- }
String name = updateFyfaDto.getName();
if(StrUtil.isEmpty(name)) {
return AjaxResult.buildFailInstance("请输入方案名称");
@@ -373,15 +379,30 @@
if(ObjectUtil.isEmpty(invitationCommission)) {
return AjaxResult.buildFailInstance("请输入正确的邀请提成");
}
- //设置用户公司ID
- QueryUtil.setQueryLimitCom(updateFyfaDto);
+ if(ObjectUtil.isEmpty(selectById)) {
+ SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
+ ShopSalesmanGrade shopSalesmanGrade = new ShopSalesmanGrade();
+ shopSalesmanGrade.setCompanyId(updateFyfaDto.getCompanyId());
+ shopSalesmanGrade.setName(updateFyfaDto.getName());
+ shopSalesmanGrade.setSealesCommission(sealesCommission);
+ shopSalesmanGrade.setInvitationCommission(invitationCommission);
+ shopSalesmanGrade.setGradeCondition(updateFyfaDto.getGradeCondition());
+ shopSalesmanGrade.setIsDefault(2);
+ shopSalesmanGrade.setCreateBy(user.getSuName());
+ shopSalesmanGrade.setUpdateBy(user.getSuName());
+ shopSalesmanGrade.setCreateTime(new Date());
+ shopSalesmanGrade.setUpdateTime(new Date());
+ shopSalesmanGrade.setCompanyId(user.getCompanyId());
+ shopSalesmanGradeDao.insert(shopSalesmanGrade);
+ return AjaxResult.buildSuccessInstance("操作成功");
+ }
selectById.setCompanyId(updateFyfaDto.getCompanyId());
selectById.setName(updateFyfaDto.getName());
selectById.setSealesCommission(sealesCommission);
selectById.setInvitationCommission(invitationCommission);
selectById.setGradeCondition(updateFyfaDto.getGradeCondition());
shopSalesmanGradeDao.updateById(selectById);
- return AjaxResult.buildFailInstance("操作成功");
+ return AjaxResult.buildSuccessInstance("操作成功");
}
@Transactional(rollbackFor = Exception.class)
@@ -393,7 +414,7 @@
BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_TG_PLAN, companyId);
busParameterSettings.setParamValue3(updateTgjhDto.getTgfa());
busParameterSettingsDao.updateByModel(busParameterSettings);
- return AjaxResult.buildFailInstance("保存成功");
+ return AjaxResult.buildSuccessInstance("保存成功");
}
@Transactional(rollbackFor = Exception.class)
@@ -405,7 +426,7 @@
BusParameterSettings busParameterSettings = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_TG_POSTER, companyId);
busParameterSettings.setParamValue(updateTgtpDto.getImageUrl());
busParameterSettingsDao.updateByModel(busParameterSettings);
- return AjaxResult.buildFailInstance("保存成功");
+ return AjaxResult.buildSuccessInstance("保存成功");
}
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopOrderDetailVo.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopOrderDetailVo.java
index a922e46..6d04291 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopOrderDetailVo.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopOrderDetailVo.java
@@ -19,6 +19,9 @@
@ApiModelProperty(value = "实付金额")
private Double orderMoney;
+
+ @ApiModelProperty(value = "订单状态")
+ private Integer orderState;
@ApiModelProperty(value = "下单门店")
private String storeName;
diff --git a/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanApplyVo.java b/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanApplyVo.java
index 3a3af3c..79acde3 100644
--- a/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanApplyVo.java
+++ b/zq-erp/src/main/java/com/matrix/system/fenxiao/vo/ShopSalesmanApplyVo.java
@@ -74,10 +74,14 @@
private String nickname;
@ApiModelProperty(value = "头像")
private String avatarUrl;
- @ApiModelProperty(value = "邀请人")
+ @ApiModelProperty(value = "注册邀请人")
private String parentUser;
- @ApiModelProperty(value = "下级客户数")
+ @ApiModelProperty(value = "当前上级")
+ private String parentUserNow;
+ @ApiModelProperty(value = "推广客户")
private Integer lowerLevelNum;
+ @ApiModelProperty(value = "邀请下级")
+ private Integer invitedNum;
@ApiModelProperty(value = "累计收益")
private BigDecimal totalRevenue;
diff --git a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
index e1f1896..0b5c95a 100644
--- a/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
+++ b/zq-erp/src/main/java/com/matrix/system/hive/action/OrderController.java
@@ -447,8 +447,10 @@
if(orderVo.getId()!=null){
WebUtil.getRequest().setAttribute("orderParam", orderVo.getId());
+ WebUtil.getRequest().setAttribute("orderId", orderVo.getId());
}else if(StringUtils.isNotBlank(orderVo.getOrderNo())){
WebUtil.getRequest().setAttribute("orderParam", orderVo.getOrderNo());
+ WebUtil.getRequest().setAttribute("orderNo", orderVo.getOrderNo());
}
return "admin/hive/beautySalon/orderXq-form";
}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopBizUserScoreAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopBizUserScoreAction.java
index 186022e..3480da7 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopBizUserScoreAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopBizUserScoreAction.java
@@ -1,25 +1,10 @@
package com.matrix.system.shopXcx.action;
-import com.matrix.biz.bean.BizUser;
import com.matrix.biz.service.BizUserService;
-import com.matrix.core.anotations.RemoveRequestToken;
-import com.matrix.core.anotations.SaveRequestToken;
-import com.matrix.core.constance.MatrixConstance;
-import com.matrix.core.pojo.AjaxResult;
-import com.matrix.core.tools.StringUtils;
-import com.matrix.core.tools.WebUtil;
-import com.matrix.system.common.bean.SysUsers;
-import com.matrix.system.shopXcx.bean.ShopScoreExchange;
import com.matrix.system.shopXcx.dao.ShopScoreExchangeDao;
-import com.matrix.system.shopXcx.pojo.ExchangeScorePOJO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
-import org.springframework.transaction.annotation.Transactional;
import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
-import org.springframework.web.servlet.ModelAndView;
-
-import java.util.Date;
/**
@@ -40,75 +25,6 @@
* 记录编辑前的值Before_Edit_Value
*/
public static final String BEV = "ShopBizUserScore_BEV";
-
-
- /**
- * 进入积分兑换界面
- */
- @SaveRequestToken
- @RequestMapping(value = "/intoExchangePage")
- public ModelAndView exchangeScore(String userId) {
- BizUser bizUser = new BizUser();
- ModelAndView modelAndView = new ModelAndView("admin/shop/user-score-exchange");
- if (StringUtils.isNotBlank(userId)) {
- bizUser = bizUserService.findById(userId);
- if (bizUser.getCurrentScore() == null) {
- bizUser.setCurrentScore(0);
- }
- }
- modelAndView.addObject("obj", bizUser);
- return modelAndView;
- }
-
-
- /**
- * 兑换积分
- */
- @Transactional(rollbackFor = Exception.class)
- @RemoveRequestToken
- @RequestMapping(value = "/exchangeScore")
- public @ResponseBody
- AjaxResult exchangeScore(ExchangeScorePOJO pojo) {
- //校验参数中用户ID和用户兑换积分是否有效
- if (pojo == null || StringUtils.isBlank(pojo.getUserId())
- || pojo.getScore() == null || pojo.getScore() == 0) {
- return new AjaxResult(AjaxResult.STATUS_FAIL, "提交参数有误!");
- }
- //兑换积分用户信息
- BizUser bizUser = bizUserService.findById(pojo.getUserId());
- if (bizUser == null) {
- return new AjaxResult(AjaxResult.STATUS_FAIL, "没有查询到相应用户!");
- }
- if (bizUser.getCurrentScore() == null) {
- bizUser.setCurrentScore(0);
- }
- //如果兑换积分大于用户当前积分
- if (pojo.getScore() > bizUser.getCurrentScore()) {
- return new AjaxResult(AjaxResult.STATUS_FAIL, "兑换积分大于用户当前积分!");
- }
- //剩余积分 = 当前积分 - 兑换积分
- Integer remainScore = bizUser.getCurrentScore() - pojo.getScore();
- //当前操作用户信息
- SysUsers loginUser = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
- //修改用户剩余积分
- BizUser updateModel = new BizUser();
- updateModel.setUserId(bizUser.getUserId());
- updateModel.setCurrentScore(remainScore);
- updateModel.setUpdateBy(loginUser.getSuName());
- updateModel.setUpdateTime(new Date());
- bizUserService.modifyByModel(updateModel);
- //添加积分兑换记录
- ShopScoreExchange insertExchange = new ShopScoreExchange();
- insertExchange.setCreateBy(loginUser.getSuName());
- insertExchange.setUpdateBy(loginUser.getSuName());
- insertExchange.setUserId(bizUser.getOpenId());
- insertExchange.setExchangeScore(pojo.getScore());
- insertExchange.setOperateId(loginUser.getSuId());
- insertExchange.setRemark(pojo.getRemarks());
- shopScoreExchangeDao.insert(insertExchange);
-
- return new AjaxResult(AjaxResult.STATUS_SUCCESS, "兑换成功!");
- }
}
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopRefundRecordAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopRefundRecordAction.java
index c790239..dd0c18a 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopRefundRecordAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopRefundRecordAction.java
@@ -1,6 +1,9 @@
package com.matrix.system.shopXcx.action;
-import com.matrix.component.wechat.externalInterface.common.WechatConfigure;
+import com.matrix.component.rabbitmq.RabiitMqTemplate;
+import com.matrix.component.redis.RedisUserLoginUtils;
+import com.matrix.component.tools.WxTempLateMsgUtil;
+import com.matrix.component.wechat.externalInterface.weixinUtil.WeixinServiceUtil;
import com.matrix.core.anotations.RemoveRequestToken;
import com.matrix.core.anotations.SaveRequestToken;
import com.matrix.core.constance.MatrixConstance;
@@ -10,20 +13,17 @@
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.pojo.PaginationVO;
import com.matrix.core.tools.*;
-import com.matrix.component.redis.RedisUserLoginUtils;
import com.matrix.system.common.bean.SysUsers;
import com.matrix.system.common.constance.AppConstance;
-
-import com.matrix.component.wechat.externalInterface.weixinUtil.WeixinServiceUtil;
import com.matrix.system.hive.action.util.QueryUtil;
+import com.matrix.system.shopXcx.api.service.WXShopOrderService;
import com.matrix.system.shopXcx.api.service.WxShopRefundRecordService;
import com.matrix.system.shopXcx.bean.*;
import com.matrix.system.shopXcx.dao.ShopCouponRecordDao;
import com.matrix.system.shopXcx.dao.ShopDeliveryInfoDao;
import com.matrix.system.shopXcx.dao.ShopOrderDao;
import com.matrix.system.shopXcx.dao.ShopRefundRecordDao;
-import com.matrix.component.tools.WxTempLateMsgUtil;
-import com.matrix.system.shopXcx.api.service.WXShopOrderService;
+import com.matrix.system.shopXcx.mqTask.MQTaskRouting;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -73,6 +73,12 @@
@Value("${wx_pay_debug_onoff}")
private boolean isDebug;
+ @Value("${evn}")
+ private String evn;
+
+ @Autowired
+ private RabiitMqTemplate rabiitMqTemplate;
+
/**
* 列表显示
@@ -522,6 +528,9 @@
modifyMap.put("orderStatus", ShopOrder.ORDER_STATUS_MONEYBACK_SUCCESS);
modifyMap.put("refundCharge", shopRefundRecord.getRefundMoney());
shopOrderDao.updateByMap(modifyMap);
+
+ rabiitMqTemplate.sendMsg(MQTaskRouting.SHOP_ORDER_REFUND+evn,shopOrder.getId()+"");
+
}catch (Exception e){
LogUtil.debug("退款成功,修改退款表和订单表状态出错。。。", id);
e.printStackTrace();
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopShoppingCartAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopShoppingCartAction.java
deleted file mode 100644
index c7e50a8..0000000
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/action/ShopShoppingCartAction.java
+++ /dev/null
@@ -1,141 +0,0 @@
-package com.matrix.system.shopXcx.action;
-
-import com.matrix.core.constance.MatrixConstance;
-import com.matrix.core.constance.SystemMessageCode;
-import com.matrix.core.pojo.PaginationVO;
-import com.matrix.core.tools.ModelUtils;
-import com.matrix.core.tools.StringUtils;
-import com.matrix.core.constance.SystemErrorCode;
-import com.matrix.core.anotations.RemoveRequestToken;
-import com.matrix.system.common.bean.SysUsers;
-import com.matrix.system.hive.action.util.QueryUtil;
-import com.matrix.system.shopXcx.dao.ShopShoppingCartDao;
-import org.springframework.stereotype.Controller;
-import com.matrix.core.exception.GlobleException;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
-import com.matrix.core.anotations.SaveRequestToken;
-import com.matrix.core.pojo.AjaxResult;
-import com.matrix.core.tools.WebUtil;
-import org.springframework.beans.factory.annotation.Autowired;
-
-import java.util.List;
-import java.util.Map;
-import com.matrix.system.shopXcx.bean.ShopShoppingCart;
-import org.springframework.web.servlet.ModelAndView;
-
-/**
- * @description 购物车
- * @author jiangyouyao
- * @date 2019-06-12 19:09
- */
-@Controller
-@RequestMapping(value = "admin/shopShoppingCart")
-public class ShopShoppingCartAction {
-
- @Autowired
- private ShopShoppingCartDao shopShoppingCartDao;
-
- //记录编辑前的值Before_Edit_Value
- public static final String BEV="ShopShoppingCart_BEV";
-
-
- /**
- * 列表显示
- */
- @RequestMapping(value = "/showList")
- public @ResponseBody AjaxResult showList(ShopShoppingCart shopShoppingCart, PaginationVO pageVo) {
- QueryUtil.setQueryLimitCom(shopShoppingCart);
- List<ShopShoppingCart> dataList = shopShoppingCartDao.selectInPage(shopShoppingCart, pageVo);
- AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, dataList,
- shopShoppingCartDao.selectTotalRecord(shopShoppingCart));
- return result;
- }
-
- /**
- * 新增
- */
- @RemoveRequestToken
- @RequestMapping(value = "/addShopShoppingCart")
- public @ResponseBody AjaxResult addShopShoppingCart(ShopShoppingCart shopShoppingCart) {
- SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY);
- shopShoppingCart.setCreateBy(user.getSuName());
- shopShoppingCart.setUpdateBy(user.getSuName());
- shopShoppingCart.setCompanyId(user.getCompanyId());
- int i=shopShoppingCartDao.insert(shopShoppingCart);
- if(i > 0){
- return new AjaxResult(AjaxResult.STATUS_SUCCESS, SystemMessageCode.ADD_SUCCES, "购物车");
- }else {
- throw new GlobleException(SystemErrorCode.DATA_ADD_FAIL);
- }
- }
-
-
-
-
-
- /**
- * 修改
- */
- @RemoveRequestToken
- @RequestMapping(value = "/modifyShopShoppingCart")
- public @ResponseBody AjaxResult modifyShopShoppingCart(ShopShoppingCart newShopShoppingCart) {
- ShopShoppingCart oldShopShoppingCart = WebUtil.getSessionAttribute(BEV);
- int i = 0;
- Map<String, Object> modifyMap = null;
- try {
- if (!ModelUtils.isModified(oldShopShoppingCart, newShopShoppingCart)) {
- i = MatrixConstance.DML_SUCCESSS;
- }
- modifyMap = ModelUtils.comparePojo2Map(oldShopShoppingCart, newShopShoppingCart);
- } catch (Exception e) {
- throw new GlobleException(SystemErrorCode.DATA_UPDATE_FAIL, e, newShopShoppingCart);
- }
- if (modifyMap.size() > 0) {
- modifyMap.put("cartId", oldShopShoppingCart.getCartId());
- shopShoppingCartDao.updateByMap(modifyMap);
- }
- i = MatrixConstance.DML_SUCCESSS;
- WebUtil.removeSessionAttribute(BEV);
- if (i > 0) {
- return new AjaxResult(AjaxResult.STATUS_SUCCESS, SystemMessageCode.UPDATE_SUCCES, "购物车");
- } else {
- throw new GlobleException(SystemErrorCode.DATA_UPDATE_FAIL);
- }
- }
-
-
-
-
- /**
- * 进入修改界面
- */
- @SaveRequestToken
- @RequestMapping(value = "/editForm")
- public ModelAndView editForm(Integer id) {
- ShopShoppingCart shopShoppingCart = new ShopShoppingCart();
- ModelAndView modelAndView = new ModelAndView("admin/shopShoppingCart-form");
- if (id != null) {
- shopShoppingCart = shopShoppingCartDao.selectById(id);
- WebUtil.setSessionAttribute(BEV, shopShoppingCart);
- }
- modelAndView.addObject("obj",shopShoppingCart);
- return modelAndView;
- }
-
-
- /**
- * 删除
- */
- @RequestMapping(value = "/del")
- public @ResponseBody AjaxResult del(String keys) {
- List<String> ids = StringUtils.strToCollToString(keys, ",");
- int i = shopShoppingCartDao.deleteByIds(ids);
- if (i > 0) {
- return new AjaxResult(AjaxResult.STATUS_SUCCESS, SystemMessageCode.DELETE_SUCCES, i);
- } else {
- throw new GlobleException(SystemErrorCode.DATA_DELETE_FAIL);
- }
- }
-
-}
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WXShopOrderAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WXShopOrderAction.java
index 7c7577a..00e55eb 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WXShopOrderAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WXShopOrderAction.java
@@ -97,7 +97,7 @@
AjaxResult calculationCartOrder(@RequestBody AddShopOrderPOJO addShopOrderPOJO) throws Exception {
BizUser bizUser = redisUserLoginUtils.getLoginUser(BizUser.class); //计算购物车中物品的优惠信息
- List<ShopCartVo> cartList = shoppingCartService.findUserCartList(addShopOrderPOJO.getShopId());
+ List<ShopCartVo> cartList = shoppingCartService.findUserCartList(addShopOrderPOJO.getShopId(),ShopShoppingCart.CAR_TYPE_MICRO);
//取出购物车中选中的产品
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesProductAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesProductAction.java
index b89cac9..611820b 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesProductAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesProductAction.java
@@ -5,7 +5,6 @@
import com.matrix.system.common.interceptor.HostInterceptor;
import com.matrix.system.shopXcx.api.dto.SaleProductDto;
import com.matrix.system.shopXcx.bean.ShopProduct;
-import com.matrix.system.shopXcx.bean.ShopProductAttribute;
import com.matrix.system.shopXcx.dao.ShopProductAttributeDao;
import com.matrix.system.shopXcx.dao.ShopProductDao;
import com.matrix.system.shopXcx.dao.ShopSkuDao;
@@ -47,14 +46,13 @@
})
public AjaxResult getShopProductShowList(@RequestBody @Validated SaleProductDto saleProductDto) {
ShopProduct shopProduct=new ShopProduct();
-
- ShopProductAttribute fxsc = shopProductAttributeDao.selectByCode("fxsc", HostInterceptor.getCompanyId());
shopProduct.setLimit(saleProductDto.getPageSize());
shopProduct.setOffset((saleProductDto.getPageNum()-1)* saleProductDto.getPageSize());
+ shopProduct.setCategoryId(saleProductDto.getCategoryId());
shopProduct.setDelFlag(AppConstance.DATA_USEABLE);
shopProduct.setStatus(AppConstance.IS_PUTAWAY);
+ shopProduct.setAbleSales(ShopProduct.ABLE_SALES);
shopProduct.setCompanyId(HostInterceptor.getCompanyId());
- shopProduct.setAttrs(fxsc.getAttrId()+"");
List<ShopProduct> shopProducts = shopProductDao.selectByModelWx(shopProduct);
shopProducts.forEach(item->item.setSkus(shopSkuDao.selectByPid(item.getId())));
AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, shopProducts);
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesWithdrawalAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesWithdrawalAction.java
index 5256ec0..817d16c 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesWithdrawalAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesWithdrawalAction.java
@@ -14,7 +14,6 @@
import com.matrix.system.hive.service.CodeService;
import com.matrix.system.shopXcx.api.dto.RevenueFlowDto;
import com.matrix.system.shopXcx.api.dto.WithdrawalCashDto;
-import com.matrix.system.shopXcx.vo.SalesOrderVo;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiResponse;
@@ -58,15 +57,15 @@
CodeService codeService;
@ApiOperation(value = "获取收支明细", notes = "")
- @PostMapping(value = "/getInvitationuserList")
+ @PostMapping(value = "/getRevenueFlow")
@ApiResponses({
@ApiResponse(code = 200, message = "ok", response = ShopRevenueFlow.class)
})
AjaxResult getInvitationuserList(@RequestBody @Validated RevenueFlowDto revenueFlowDto) {
BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
- Page<SalesOrderVo> page=new Page<>(revenueFlowDto.getPageNum(),revenueFlowDto.getPageSize());
+ Page<ShopRevenueFlow> page=new Page<>(revenueFlowDto.getPageNum(),revenueFlowDto.getPageSize());
revenueFlowDto.setUserId(loginUser.getOpenId());
- IPage<SalesOrderVo> shopSalesmanApplyIPage = revenueFlowDao.selectRevenuFlowList(page, revenueFlowDto);
+ IPage<ShopRevenueFlow> shopSalesmanApplyIPage = revenueFlowDao.selectRevenuFlowList(page, revenueFlowDto);
AjaxResult result=AjaxResult.buildSuccessInstance(shopSalesmanApplyIPage.getRecords());
return result;
}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
index ed74a5d..7e81a21 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxSalesmanAction.java
@@ -10,6 +10,7 @@
import com.matrix.component.tools.WxacodeUtil;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.pojo.BasePageQueryDto;
+import com.matrix.core.pojo.VerificationResult;
import com.matrix.core.tools.LogUtil;
import com.matrix.core.tools.MD5Util;
import com.matrix.core.tools.PropertiesUtil;
@@ -22,7 +23,10 @@
import com.matrix.system.fenxiao.dao.ShopSalesmanApplyDao;
import com.matrix.system.fenxiao.entity.ShopSalesmanApply;
import com.matrix.system.fenxiao.service.ShopSalesmanApplyService;
+import com.matrix.system.hive.plugin.util.CollectionUtils;
import com.matrix.system.shopXcx.api.WeChatApiTools;
+import com.matrix.system.shopXcx.dao.ShopProductDao;
+import com.matrix.system.shopXcx.vo.SalesmanApplyCondition;
import com.matrix.system.shopXcx.vo.SalesmanCenterInfo;
import com.matrix.system.shopXcx.vo.SalesmanVo;
import io.swagger.annotations.Api;
@@ -37,8 +41,11 @@
import java.awt.*;
import java.awt.image.BufferedImage;
import java.io.File;
+import java.util.Date;
import java.util.HashMap;
+import java.util.List;
import java.util.Map;
+import java.util.stream.Collectors;
/**
* @author wzy
@@ -66,6 +73,10 @@
private BizUserDao bizUserDao;
@Autowired
WeChatApiTools weChatApiTools;
+
+ @Autowired
+ ShopProductDao shopProductDao;
+
@ApiOperation(value = "查询推广计划", notes = "")
@GetMapping(value = "/getTgPlan")
@@ -132,33 +143,47 @@
}
- @ApiOperation(value = "绑定下级客户,当客户点击分销员分销的产品时调用", notes = "传入参数invitationId 必须 分销员openId 例: {invitationId:openId}")
+ @ApiOperation(value = "绑定下级客户,当客户点击分销员分销的产品时调用", notes = "传入参数invitationId 必须 分销员userId例: {invitationId:userId}")
@ApiResponses({
@ApiResponse(code = 200, message = "ok", response = Map.class)
})
@PostMapping(value = "/bindingParentSalesman")
public AjaxResult bindingParentSalesman(@RequestBody Map<String,String> param) {
String invitationId = param.get("invitationId");
+
+
if (StringUtils.isBlank(invitationId)) {
+ return AjaxResult.buildFailInstance("请求参数错误");
+ }
+ BizUser invitationUser = bizUserDao.selectById(Long.parseLong(invitationId));
+ if (invitationUser==null) {
return AjaxResult.buildFailInstance("请求参数错误");
}
BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
- loginUser = bizUserDao.selectById(loginUser.getUserId());
- if (loginUser.getIsSales() == null || loginUser.getIsSales() == BizUser.NOT_SALES) {
- if (StringUtils.isBlank(loginUser.getParentOpenId())) {
+ if(invitationId.equals(loginUser.getUserId())){
+ return AjaxResult.buildSuccessInstance("不能绑定自己");
+ }
+ loginUser = bizUserDao.selectById(loginUser.getUserId());
+ if(loginUser.getIsSales()==1){
+ return AjaxResult.buildSuccessInstance("只有非分销员才能被绑定成客户");
+ }else{
+ if (StringUtils.isBlank(loginUser.getParentOpenId())) {
Map<String, Object> updateParam = new HashMap<>();
updateParam.put("userId", loginUser.getUserId());
- updateParam.put("parentOpenId", invitationId);
+ updateParam.put("parentOpenId", invitationUser.getOpenId());
+ updateParam.put("bindingParentTime",new Date());
bizUserDao.updateByMap(updateParam);
return AjaxResult.buildSuccessInstance("绑定成功");
} else {
return AjaxResult.buildSuccessInstance("已经存在上级");
}
- } else {
- return AjaxResult.buildSuccessInstance("分销员不能被绑定");
}
+
+
+
+
}
@@ -249,6 +274,53 @@
return AjaxResult.buildSuccessInstance(salesmanCenterInfo);
}
+ @ApiOperation(value = "查询分销员申请条件", notes = "")
+ @PostMapping(value = "/getSalesmanApplyCondition")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response = SalesmanApplyCondition.class)
+ })
+ AjaxResult getSalesmanApplyCondition() {
+ BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+ VerificationResult ableToBeAnSalesman = shopSalesmanApplyService.isAbleToBeAnSalesman(loginUser.getOpenId(),loginUser.getCompanyId());
+ SalesmanApplyCondition applyConditionInfo=new SalesmanApplyCondition();
+ applyConditionInfo.setIsAbleApply(ableToBeAnSalesman.isJudgeResult());
+ applyConditionInfo.setMsg(ableToBeAnSalesman.getMsg());
+
+ //申请条件
+ BusParameterSettings applyCondition = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_CONDITION, loginUser.getCompanyId());
+ switch (applyCondition.getParamValue()){
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_WTJ:
+ applyConditionInfo.setCondition("您已满足申请条件");
+ break;
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFZDCP:
+ applyConditionInfo.setCondition("消费指定产品并确认收货");
+ List<String> strings = StringUtils.strToColl(applyCondition.getParamValue1(), ",");
+ List<Integer> ids = strings.stream().filter(i -> StringUtils.isNotBlank(i)).map(i -> Integer.parseInt(i + "")).distinct().collect(Collectors.toList());
+ if(CollectionUtils.isNotEmpty(ids)){
+ applyConditionInfo.setProductList(shopProductDao.selectByIds(ids));
+ }else{
+ return AjaxResult.buildFailInstance("未配置消费产品,请联系管理员");
+ }
+
+ break;
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_XFRYCP:
+ //判断用户是否有确认收货的产品
+ applyConditionInfo.setCondition("消费任意产品并确认收货");
+ break;
+ case FenxiaoSettingConstant.FX_APPLY_CONDITION_XCZDJE:
+ Double zdje=Double.parseDouble(applyCondition.getParamValue2());
+ applyConditionInfo.setCondition("消费满"+zdje+"元确认收货");
+ applyConditionInfo.setMinAmount(zdje);
+ }
+
+ return AjaxResult.buildSuccessInstance(applyConditionInfo);
+ }
+
+
+
+
+
+
}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxScoreProductAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxScoreProductAction.java
new file mode 100644
index 0000000..4e069b7
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxScoreProductAction.java
@@ -0,0 +1,67 @@
+package com.matrix.system.shopXcx.api.action;
+
+import com.matrix.core.pojo.AjaxResult;
+import com.matrix.system.common.constance.AppConstance;
+import com.matrix.system.common.interceptor.HostInterceptor;
+import com.matrix.system.shopXcx.api.dto.SaleProductDto;
+import com.matrix.system.shopXcx.api.dto.ScoreProductDto;
+import com.matrix.system.shopXcx.bean.ShopProduct;
+import com.matrix.system.shopXcx.dao.ShopProductDao;
+import com.matrix.system.shopXcx.dao.ShopSkuDao;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
+import io.swagger.annotations.ApiResponse;
+import io.swagger.annotations.ApiResponses;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.validation.annotation.Validated;
+import org.springframework.web.bind.annotation.PostMapping;
+import org.springframework.web.bind.annotation.RequestBody;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RestController;
+
+import java.util.List;
+
+/**
+ * @author jyy
+ * @date 2021-03-10
+ **/
+@Api(tags = "积分商品类")
+@RestController
+@RequestMapping(value = "/wxapi/scoreProduct")
+public class WxScoreProductAction {
+
+ @Autowired
+ private ShopProductDao shopProductDao;
+
+ @Autowired
+ private ShopSkuDao shopSkuDao;
+
+ @ApiOperation(value = "查询积分商品", notes = "")
+ @PostMapping(value = "/getScoreProductList")
+ @ApiResponses({
+ @ApiResponse(code = 200, message = "ok", response=SaleProductDto.class)
+ })
+ public AjaxResult getShopProductShowList(@RequestBody @Validated ScoreProductDto scoreProductDto) {
+ ShopProduct shopProduct=new ShopProduct();
+ shopProduct.setLimit(scoreProductDto.getPageSize());
+ shopProduct.setOffset((scoreProductDto.getPageNum()-1)* scoreProductDto.getPageSize());
+ shopProduct.setScoreCategoryId(scoreProductDto.getScoreCategoryId());
+ shopProduct.setDelFlag(AppConstance.DATA_USEABLE);
+ shopProduct.setStatus(AppConstance.IS_PUTAWAY);
+ shopProduct.setAbleSales(ShopProduct.NOT_ABLE_SALES);
+ shopProduct.setMallType(ShopProduct.MALL_SCORE);
+ shopProduct.setCompanyId(HostInterceptor.getCompanyId());
+ List<ShopProduct> shopProducts = shopProductDao.selectByModelWx(shopProduct);
+ shopProducts.forEach(item->item.setSkus(shopSkuDao.selectByPid(item.getId())));
+ return AjaxResult.buildSuccessInstance(shopProducts);
+ }
+
+
+
+
+
+
+
+
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShareProductAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShareProductAction.java
index d9b4764..3aad1e8 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShareProductAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShareProductAction.java
@@ -314,7 +314,7 @@
g = b2Img.createGraphics();
g.setComposite(AlphaComposite.getInstance(AlphaComposite.SRC_ATOP, 1));
g.drawImage(qrcordImgBuf, 320, 550, 140, 140, null);
- g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING, RenderingHints.VALUE_TEXT_ANTIALIAS_ON);
+ g.setRenderingHint(RenderingHints.KEY_TEXT_ANTIALIASING,RenderingHints.VALUE_TEXT_ANTIALIAS_LCD_HRGB);
//标题
g.setColor(new Color(0xF10D0A0A, true));
Font font = new Font("微软雅黑", Font.PLAIN, 24);
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java
index 3e3e4d5..00154cd 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShopProduct.java
@@ -146,7 +146,7 @@
@ResponseBody
public AjaxResult getShopProductShowList(@RequestBody ShopProduct shopProduct) {
List<ShopProduct> shopProducts = null;
-
+ shopProduct.setMallType(ShopProduct.MALL_MICRO);
//查询是否匹配优惠条件
ShopCoupon shopCoupon = shopCouponDao.getCouponByTitle(shopProduct.getTitle(),HostInterceptor.getCompanyId());
if (shopCoupon != null && shopProduct.getOffset() < 1) {
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShoppingCartAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShoppingCartAction.java
index 1afabd6..051afbe 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShoppingCartAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxShoppingCartAction.java
@@ -1,25 +1,25 @@
package com.matrix.system.shopXcx.api.action;
+import com.matrix.biz.bean.BizUser;
+import com.matrix.component.redis.RedisUserLoginUtils;
import com.matrix.core.constance.SystemErrorCode;
import com.matrix.core.constance.SystemMessageCode;
import com.matrix.core.exception.GlobleException;
import com.matrix.core.pojo.AjaxResult;
import com.matrix.core.tools.StringUtils;
-import com.matrix.biz.bean.BizUser;
-import com.matrix.component.redis.RedisUserLoginUtils;
import com.matrix.system.common.constance.AppConstance;
-
-import com.matrix.system.shopXcx.bean.ShopShoppingCart;
-import com.matrix.system.shopXcx.bean.ShopSku;
-import com.matrix.system.shopXcx.dao.ShopShoppingCartDao;
-import com.matrix.system.shopXcx.dao.ShopSkuDao;
import com.matrix.system.shopXcx.api.service.ShoppingCartService;
import com.matrix.system.shopXcx.api.service.WxShopCouponService;
import com.matrix.system.shopXcx.api.vo.ShopCartBillVo;
import com.matrix.system.shopXcx.api.vo.ShopCartVo;
+import com.matrix.system.shopXcx.bean.ShopShoppingCart;
+import com.matrix.system.shopXcx.bean.ShopSku;
+import com.matrix.system.shopXcx.dao.ShopShoppingCartDao;
+import com.matrix.system.shopXcx.dao.ShopSkuDao;
+import io.swagger.annotations.Api;
+import io.swagger.annotations.ApiOperation;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.*;
import java.util.HashMap;
@@ -32,7 +32,8 @@
* @date 2019-06-12 19:15
*/
@CrossOrigin(origins = "*", maxAge = 3600)
-@Controller
+@Api(tags = "购物车类")
+@RestController
@RequestMapping(value = "wxapi/ShoppingCart")
public class WxShoppingCartAction {
@Autowired
@@ -50,12 +51,8 @@
ShopSkuDao skuDao;
- /**
- * 根据ID删除购物车
- *
- * @param
- * @return
- */
+
+ @ApiOperation(value = "根据ID删除购物车", notes = "")
@PostMapping("/deleteByCartId/{cartId}")
@ResponseBody
public AjaxResult deleteByCartId(@PathVariable("cartId") Integer cartId) {
@@ -66,16 +63,12 @@
return new AjaxResult(AjaxResult.STATUS_SUCCESS, "删除成功");
}
- /**
- * 根据用户ID查询购物车 没有分页
- *
- * @param
- * @return
- */
+
+ @ApiOperation(value = "根据用户ID查询购物车 没有分页", notes = "")
@PostMapping("/findShoppingCart")
@ResponseBody
public AjaxResult getShoppingCartByUserId(@RequestBody ShopShoppingCart shoppingCart) {
- List<ShopCartVo> cartList = shoppingCartService.findUserCartList(shoppingCart.getShopId());
+ List<ShopCartVo> cartList = shoppingCartService.findUserCartList(shoppingCart.getShopId(),ShopShoppingCart.CAR_TYPE_MICRO);
AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, cartList, cartList.size());
ShopCartBillVo shopCartBill = shoppingCartService.buildShopCartBillVo(cartList);
result.putInMap("billTotal", shopCartBill.getBillTotal().stripTrailingZeros().toPlainString());
@@ -86,9 +79,8 @@
return result;
}
- /**
- * 批量删除
- */
+
+ @ApiOperation(value = "批量删除", notes = "")
@PostMapping(value = "/delShoppingCart/{keys}")
public
@ResponseBody
@@ -102,12 +94,13 @@
}
}
- @PostMapping(value = "/getUserCartCount/{shopId}")
+ @ApiOperation(value = "查询微商城购物车数量", notes = "")
+ @PostMapping(value = "/getUserCartCount/{shopId}/{cartType}")
public
@ResponseBody
- AjaxResult getUserCartCount(@PathVariable("shopId") Long shopId) {
+ AjaxResult getUserCartCount(@PathVariable("shopId") Long shopId,@PathVariable("cartType") Integer cartType) {
BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
- Integer userCartCount = shoppingCartDao.selectUserCartCount(shopId, loginUser.getOpenId());
+ Integer userCartCount = shoppingCartDao.selectUserCartCount(shopId, loginUser.getOpenId(),cartType);
if (userCartCount == null) {
userCartCount = 0;
}
@@ -194,7 +187,7 @@
return new AjaxResult(AjaxResult.STATUS_FAIL, "保存失败");
}
int userCartCount = shoppingCartDao.selectUserCartCount(shoppingCart.getShopId(),
- loginUser.getOpenId());
+ loginUser.getOpenId(),shoppingCart.getCartType());
AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, "保存成功");
result.putInMap("userCartCount", userCartCount);
return result;
@@ -258,7 +251,7 @@
* @param
* @return
*/
- @RequestMapping("/updateCartSelected")
+ @PostMapping("/updateCartSelected")
@ResponseBody
public AjaxResult updateCartSelected(@RequestBody ShopShoppingCart shoppingCart) {
Map<String, Object> modifyMap = new HashMap<>();
@@ -274,13 +267,12 @@
* @param
* @return
*/
- @RequestMapping("/updateCartAllSelected/{shopId}/{isSelected}")
+ @PostMapping("/updateCartAllSelected/{shopId}/{isSelected}/{cartType}")
@ResponseBody
public AjaxResult updateCartAllSelected(@PathVariable("isSelected") Integer isSelected,
- @PathVariable("shopId") Long shopId) {
- Map<String, Object> modifyMap = new HashMap<>();
+ @PathVariable("shopId") Long shopId,@PathVariable("cartType") Integer cartType) {
BizUser user = redisUserLoginUtils.getLoginUser(BizUser.class);
- shoppingCartDao.updateAllSelected(user.getOpenId(),shopId, isSelected);
+ shoppingCartDao.updateAllSelected(user.getOpenId(),shopId, isSelected,cartType);
return new AjaxResult(AjaxResult.STATUS_SUCCESS, "修改成功");
}
}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java
index 7a523f3..3125fe1 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/action/WxUserAction.java
@@ -1,5 +1,6 @@
package com.matrix.system.shopXcx.api.action;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.matrix.biz.bean.BizUser;
import com.matrix.biz.service.BizUserService;
import com.matrix.component.redis.RedisUserLoginUtils;
@@ -9,150 +10,195 @@
import com.matrix.core.tools.LogUtil;
import com.matrix.core.tools.StringUtils;
import com.matrix.core.web.BaseAction;
+import com.matrix.system.common.bean.BusParameterSettings;
import com.matrix.system.common.constance.AppConstance;
+import com.matrix.system.common.dao.BusParameterSettingsDao;
import com.matrix.system.common.interceptor.HostInterceptor;
+import com.matrix.system.fenxiao.constant.FenxiaoSettingConstant;
+import com.matrix.system.fenxiao.dao.ShopSalesmanApplyDao;
+import com.matrix.system.fenxiao.entity.ShopSalesmanApply;
+import com.matrix.system.fenxiao.service.ShopSalesmanApplyService;
import com.matrix.system.shopXcx.api.WeChatApiTools;
import net.sf.json.JSONObject;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
import org.springframework.stereotype.Controller;
-import org.springframework.web.bind.annotation.PathVariable;
-import org.springframework.web.bind.annotation.RequestBody;
-import org.springframework.web.bind.annotation.RequestMapping;
-import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.bind.annotation.*;
import java.util.Collections;
import java.util.Date;
/**
- * @description (用户表)
* @author jyy
+ * @description (用户表)
* @date 2019-05-31 10:03
*/
@Controller
@RequestMapping(value = "wxapi/user")
public class WxUserAction extends BaseAction {
- @Autowired
- private BizUserService bizUserService;
+ @Autowired
+ private BizUserService bizUserService;
+
+ @Autowired
+ private ShopSalesmanApplyService shopSalesmanApplyService;
+
+ @Autowired
+ BusParameterSettingsDao busParameterSettingsDao;
+ @Autowired
+ private RedisUserLoginUtils redisUserLoginUtils;
+ @Autowired
+ ShopSalesmanApplyDao salesmanApplyDao;
+
+ @Autowired
+ WeChatApiTools weChatApiTools;
- @Autowired
- private RedisUserLoginUtils redisUserLoginUtils;
+ @Autowired
+ private WeixinServiceUtil weixinServiceUtil;
+ @Value("${debug}")
+ private String isDebug;
- @Autowired
- WeChatApiTools weChatApiTools;
-
-
-
- @Autowired
- private WeixinServiceUtil weixinServiceUtil;
-
- @Value("${debug}")
- private String isDebug;
-
- /**
- * 小程序登录
- *
- * @author JIANGYOUYAO
- * @email 935090232@qq.com
- * @date 2018年5月23日
- * @param code
- * @return
- * @throws Exception
- */
- @RequestMapping(value = "/login/{keys}")
- public @ResponseBody
+ /**
+ * 小程序登录
+ *
+ * @param code
+ * @return
+ * @throws Exception
+ * @author JIANGYOUYAO
+ * @email 935090232@qq.com
+ * @date 2018年5月23日
+ */
+ @RequestMapping(value = "/login/{keys}")
+ public @ResponseBody
AjaxResult wxLogin(@PathVariable("keys") String code) throws Exception {
- AjaxResult res = new AjaxResult();
- LogUtil.info("code:{}" + code);
- if (StringUtils.isNotBlank(code)) {
- String requrl = weChatApiTools.getXcxLoginUrl(code, HostInterceptor.getCompanyId());
- String reslutData = HttpCurlUtil.sendGetHttp(requrl, null);
- JSONObject json = JSONObject.fromObject(reslutData);
- LogUtil.debug("微信登录获取到登录信息={}", json);
+ AjaxResult res = new AjaxResult();
+ LogUtil.info("code:{}" + code);
+ if (StringUtils.isNotBlank(code)) {
+ String requrl = weChatApiTools.getXcxLoginUrl(code, HostInterceptor.getCompanyId());
+ String reslutData = HttpCurlUtil.sendGetHttp(requrl, null);
+ JSONObject json = JSONObject.fromObject(reslutData);
+ LogUtil.debug("微信登录获取到登录信息={}", json);
- if(json.containsKey("errcode")){
- res.setStatus(AjaxResult.STATUS_FAIL);
- res.setInfo("自动登录失败");
- LogUtil.debug("微信登录获取到异常信息errcode");
- return res;
- }
+ if (json.containsKey("errcode")) {
+ res.setStatus(AjaxResult.STATUS_FAIL);
+ res.setInfo("自动登录失败");
+ LogUtil.debug("微信登录获取到异常信息errcode");
+ return res;
+ }
- String openId = json.getString("openid");
- String sessionKey = json.getString("session_key");
- LogUtil.debug("openId={},sessionKey={}", openId, sessionKey);
- // 查询用户是否存在
- BizUser bizUser = null;
- synchronized(this){
- bizUser = bizUserService.findByOpenId(openId);
- if (bizUser == null) {
- // 新增用户
- bizUser = new BizUser();
- bizUser.setSessionKey(sessionKey);
- bizUser.setIsSales(BizUser.NOT_SALES);
- bizUser.setOpenId(openId);
- bizUser.setLastLoginTime(new Date());
- bizUser.setUserType(AppConstance.USER_TYPE_CUSTOMER);
- bizUser.setCompanyId(HostInterceptor.getCompanyId());
- bizUserService.add(bizUser);
+ String openId = json.getString("openid");
+ String sessionKey = json.getString("session_key");
+ LogUtil.debug("openId={},sessionKey={}", openId, sessionKey);
+ // 查询用户是否存在
+ BizUser bizUser = null;
+ synchronized (this) {
+ bizUser = bizUserService.findByOpenId(openId);
+ if (bizUser == null) {
+ // 新增用户
+ bizUser = new BizUser();
+ bizUser.setSessionKey(sessionKey);
+ bizUser.setIsSales(BizUser.NOT_SALES);
+ bizUser.setOpenId(openId);
+ bizUser.setLastLoginTime(new Date());
+ bizUser.setUserType(AppConstance.USER_TYPE_CUSTOMER);
+ bizUser.setCompanyId(HostInterceptor.getCompanyId());
+ bizUserService.add(bizUser);
- } else {
- bizUser.setSessionKey(sessionKey);
- bizUser.setLastLoginTime(new Date());
- // 更新用户sessionKey
- bizUserService.modifyByModel(bizUser);
- }
- }
- // 存放redis
- String token = redisUserLoginUtils.saveUserInfo(bizUser);
- LogUtil.info("用户token={}", token);
- res.putInMap("token", token);
- res.putInMap("userInfo", bizUser);
- res.setStatus(AjaxResult.STATUS_SUCCESS);
- } else {
- res.setStatus(AjaxResult.STATUS_FAIL);
- res.setInfo("自动登录失败");
- }
- return res;
- }
+ } else {
+ bizUser.setSessionKey(sessionKey);
+ bizUser.setLastLoginTime(new Date());
+ // 更新用户sessionKey
+ bizUserService.modifyByModel(bizUser);
+ }
+ }
+ // 存放redis
+ String token = redisUserLoginUtils.saveUserInfo(bizUser);
+ LogUtil.info("用户token={}", token);
+ res.putInMap("token", token);
+ res.putInMap("userInfo", bizUser);
+ res.setStatus(AjaxResult.STATUS_SUCCESS);
+ } else {
+ res.setStatus(AjaxResult.STATUS_FAIL);
+ res.setInfo("自动登录失败");
+ }
+ return res;
+ }
- /**
- * 查询用户信息
- */
- @RequestMapping(value = "/findUserInfo")
- public @ResponseBody
+ /**
+ * 查询用户信息
+ */
+ @RequestMapping(value = "/findUserInfo")
+ public @ResponseBody
AjaxResult findUserInfo() {
- BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
- String openId = loginUser.getOpenId();
- BizUser bizUser = bizUserService.findByOpenId(openId);
- AjaxResult res = new AjaxResult();
- res.putInMap("userInfo", bizUser);
- res.setStatus(AjaxResult.STATUS_SUCCESS);
- return res;
- }
+ BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+ String openId = loginUser.getOpenId();
+ BizUser bizUser = bizUserService.findByOpenId(openId);
+ AjaxResult res = new AjaxResult();
+ res.putInMap("userInfo", bizUser);
+ res.setStatus(AjaxResult.STATUS_SUCCESS);
+ return res;
+ }
+
+ /**
+ * 根据OpenID查询用户信息
+ */
+ @GetMapping(value = "/findUserInfo/{openId}")
+ public @ResponseBody
+ AjaxResult findUserInfo(@PathVariable String openId) {
+ BizUser bizUser = bizUserService.findByOpenId(openId);
+ BizUser bizUserQuery=new BizUser();
+ bizUserQuery.setNickName(bizUser.getNickName());
+ bizUserQuery.setAvatarUrl(bizUser.getAvatarUrl());
+ bizUserQuery.setOpenId(openId);
+ return AjaxResult.buildSuccessInstance(bizUserQuery);
+ }
- /**
- * 接收用户信息
- */
- @RequestMapping(value = "/saveUserInfo")
- public @ResponseBody
+ /**
+ * 接收用户信息
+ */
+ @RequestMapping(value = "/saveUserInfo")
+ public @ResponseBody
AjaxResult saveUserInfo(@RequestBody BizUser bizUser) {
- BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
- bizUser.setUserId(loginUser.getUserId());
- // TODO 赋值操作
- int i = bizUserService.saveUserInfo(bizUser);
+ BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
+ bizUser.setUserId(loginUser.getUserId());
+ // TODO 赋值操作
+ int i = bizUserService.saveUserInfo(bizUser);
- if (i == 0) {
- return new AjaxResult(AjaxResult.STATUS_FAIL, "更新失败");
- }
- return new AjaxResult(AjaxResult.STATUS_SUCCESS, Collections.singletonList(bizUser));
- }
+ checkNeedToBeSalesman(bizUser, loginUser);
+ if (i == 0) {
+ return new AjaxResult(AjaxResult.STATUS_FAIL, "更新失败");
+ }
+ return new AjaxResult(AjaxResult.STATUS_SUCCESS, Collections.singletonList(bizUser));
+ }
+ void checkNeedToBeSalesman(BizUser bizUser, BizUser loginUser) {
+ //查询是否需要自动成为分销员
+ if ((loginUser.getIsSales() == null || loginUser.getIsSales() == 2)
+ && StringUtils.isNotBlank(bizUser.getNickName())) {//目前还不是分销员
+ BusParameterSettings fxSwith = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_SWITCH, HostInterceptor.getCompanyId());
+ if (fxSwith.getParamValue().equals("1")) {//开启分销
+ BusParameterSettings applyWay = busParameterSettingsDao.selectCompanyParamByCode(FenxiaoSettingConstant.FX_APPLY_WAY, loginUser.getCompanyId());
+ if (applyWay.getParamValue().equals(FenxiaoSettingConstant.FX_APPLY_WAY_AUTO)) {//自动成为分销员
+ QueryWrapper<ShopSalesmanApply> queryWrapper = new QueryWrapper<>();
+ queryWrapper.eq("user_id", loginUser.getOpenId());
+ queryWrapper.eq("apply_status", ShopSalesmanApply.APPLY_STATUS_DSH);
+ ShopSalesmanApply shopSalesmanApply = salesmanApplyDao.selectOne(queryWrapper);
+ if (shopSalesmanApply == null) {//没有待审核记录
+ try {
+ shopSalesmanApplyService.applyToBeAnSalesman(loginUser.getOpenId(), null, null, 2);
+ }catch (Exception e){
+ LogUtil.debug(e.getMessage());
+ }
+ }
+ }
+ }
+ }
+ }
}
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ScoreProductDto.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ScoreProductDto.java
new file mode 100644
index 0000000..7cbc20e
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/dto/ScoreProductDto.java
@@ -0,0 +1,18 @@
+package com.matrix.system.shopXcx.api.dto;
+
+import com.matrix.core.pojo.BasePageQueryDto;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+@Data
+@ApiModel(value = "ScoreProductDto", description = "积分产品查询参数接收类")
+public class ScoreProductDto extends BasePageQueryDto {
+
+ @ApiModelProperty(value = "产品分类", example = "1")
+ private Integer scoreCategoryId;
+
+
+
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/ShoppingCartService.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/ShoppingCartService.java
index 5180721..4cb582a 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/ShoppingCartService.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/ShoppingCartService.java
@@ -79,10 +79,10 @@
* @return
* @param shopId
*/
- public List<ShopCartVo> findUserCartList(Long shopId) {
+ public List<ShopCartVo> findUserCartList(Long shopId,Integer cartType) {
BizUser loginUser = redisUserLoginUtils.getLoginUser(BizUser.class);
String userId = loginUser.getOpenId();
- List<ShopShoppingCart> list = shoppingCartDao.selectByCartUserId(shopId,userId);
+ List<ShopShoppingCart> list = shoppingCartDao.selectByCartUserId(shopId,userId,cartType);
List<ShopCartVo> cartList = buildShopCart(list);
return cartList;
}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java
index dce9db6..cc29acd 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WXShopOrderServiceImpl.java
@@ -134,7 +134,7 @@
}
- List<ShopCartVo> cartList = shoppingCartService.findUserCartList(addShopOrderPOJO.getShopId());
+ List<ShopCartVo> cartList = shoppingCartService.findUserCartList(addShopOrderPOJO.getShopId(),ShopShoppingCart.CAR_TYPE_MICRO);
//购物车不能为空
if (CollectionUtils.isEmpty(cartList)) {
return new AjaxResult(AjaxResult.STATUS_FAIL, "请选择您需要购买的产品");
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java
index 6030d3e..7597ba7 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/api/service/impl/WxShopRefundRecordServiceImpl.java
@@ -1,16 +1,17 @@
package com.matrix.system.shopXcx.api.service.impl;
-import com.matrix.component.wechat.externalInterface.common.WechatConfigure;
+import com.matrix.component.rabbitmq.RabiitMqTemplate;
+import com.matrix.component.tools.WxTempLateMsgUtil;
+import com.matrix.component.wechat.externalInterface.weixinUtil.WeixinServiceUtil;
import com.matrix.core.exception.GlobleException;
import com.matrix.core.tools.DateUtil;
import com.matrix.core.tools.LogUtil;
import com.matrix.system.common.constance.AppConstance;
-import com.matrix.component.wechat.externalInterface.weixinUtil.WeixinServiceUtil;
-import com.matrix.system.shopXcx.bean.*;
-import com.matrix.system.shopXcx.dao.*;
-import com.matrix.component.tools.WxTempLateMsgUtil;
import com.matrix.system.shopXcx.api.service.WXShopOrderService;
import com.matrix.system.shopXcx.api.service.WxShopRefundRecordService;
+import com.matrix.system.shopXcx.bean.*;
+import com.matrix.system.shopXcx.dao.*;
+import com.matrix.system.shopXcx.mqTask.MQTaskRouting;
import org.apache.commons.collections.CollectionUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.beans.factory.annotation.Value;
@@ -49,6 +50,13 @@
@Value("${wx_pay_debug_onoff}")
private boolean isDebug;
+ @Value("${evn}")
+ private String evn;
+
+ @Autowired
+ private RabiitMqTemplate rabiitMqTemplate;
+
+
@Override
public Boolean refundToUser(String id, ShopRefundRecord shopRefundRecord) {
LogUtil.debug("进入退款接口进行退款。。。", id);
@@ -134,6 +142,10 @@
modifyMap.put("orderStatus", ShopOrder.ORDER_STATUS_MONEYBACK_SUCCESS);
modifyMap.put("refundCharge", shopRefundRecord.getRefundMoney());
shopOrderDao.updateByMap(modifyMap);
+
+ rabiitMqTemplate.sendMsg(MQTaskRouting.SHOP_ORDER_REFUND+evn,shopOrder.getId()+"");
+
+
}catch (Exception e){
LogUtil.debug("退款成功,修改退款表和订单表状态出错。。。", id);
e.printStackTrace();
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopProduct.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopProduct.java
index ca48c7e..5057ab4 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopProduct.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopProduct.java
@@ -2,6 +2,7 @@
import com.matrix.core.anotations.Extend;
import com.matrix.system.common.bean.EntityDTOExt;
+import lombok.Data;
import java.util.List;
@@ -10,13 +11,27 @@
* @author jyy
* @date 2019-06-10 10:58
*/
+@Data
public class ShopProduct extends EntityDTOExt {
/**
- * 产品类型-服务
+ * 卖场-微商城
*/
- public static final int IS_SERVICE_Y=1;
- public static final int IS_SERVICE_N=2;
+ public static final int MALL_MICRO =1;
+ /**
+ * 卖场-积分商城
+ */
+ public static final int MALL_SCORE=2;
+ /**
+ * 可分销
+ */
+ public static final int ABLE_SALES =1;
+ /**
+ * 不可分销
+ */
+ public static final int NOT_ABLE_SALES=2;
+
+
/**
* 主键
@@ -28,7 +43,12 @@
* 分类ID
*/
private Integer categoryId;
-
+
+ /**
+ * 积分商城分类ID
+ */
+ private Integer scoreCategoryId;
+
/**
* 标题
@@ -58,10 +78,17 @@
* 手机端封面
*/
private String imgMobile;
-
-
-
+ /**
+ * 上架卖场 1 微商城,2 积分商城
+ */
+ private Integer mallType;
+
+
+ /**
+ * 是否为分销产品 1是2不是
+ */
+ private Integer ableSales;
/**
* 原价
@@ -161,6 +188,7 @@
*/
@Extend
private String paramRefs;
+
@Extend
private List<ShopProductParamRef> params;
@@ -246,366 +274,4 @@
- public Long getCompanyId() {
- return companyId;
- }
-
- public void setCompanyId(Long companyId) {
- this.companyId = companyId;
- }
-
- public String getBrand() {
- return brand;
- }
-
- public void setBrand(String brand) {
- this.brand = brand;
- }
-
- public String getShopIds() {
- return shopIds;
- }
-
- public void setShopIds(String shopIds) {
- this.shopIds = shopIds;
- }
-
- public ShopCoupon getShopCoupon() {
- return shopCoupon;
- }
-
- public void setShopCoupon(ShopCoupon shopCoupon) {
- this.shopCoupon = shopCoupon;
- }
-
- public Integer getCouponId() {
- return couponId;
- }
-
- public void setCouponId(Integer couponId) {
- this.couponId = couponId;
- }
-
- public String getStockNum() {
- return stockNum;
- }
-
- public void setStockNum(String stockNum) {
- this.stockNum = stockNum;
- }
-
- public Integer getIsService() {
- return isService;
- }
-
- public void setIsService(Integer isService) {
- this.isService = isService;
- }
-
- public Integer getIsSpecialPrice() {
- return isSpecialPrice;
- }
-
- public void setIsSpecialPrice(Integer isSpecialPrice) {
- this.isSpecialPrice = isSpecialPrice;
- }
-
- public Double getMarkedPrice() {
- return markedPrice;
- }
-
- public void setMarkedPrice(Double markedPrice) {
- this.markedPrice = markedPrice;
- }
-
- public Integer getId() {
- return id;
- }
-
- public void setId(Integer id) {
- this.id=id;
- }
-
-
- public Integer getCategoryId() {
- return categoryId;
- }
-
- public void setCategoryId(Integer categoryId) {
- this.categoryId=categoryId;
- }
-
-
- public String getTitle() {
- return title;
- }
-
- public void setTitle(String title) {
- this.title=title;
- }
-
-
- public String getBriefIntroduction() {
- return briefIntroduction;
- }
-
- public void setBriefIntroduction(String briefIntroduction) {
- this.briefIntroduction=briefIntroduction;
- }
-
-
- public Integer getCarriage() {
- return carriage;
- }
-
- public void setCarriage(Integer carriage) {
- this.carriage=carriage;
- }
-
-
- public String getImgPc() {
- return imgPc;
- }
-
- public void setImgPc(String imgPc) {
- this.imgPc=imgPc;
- }
-
-
- public String getImgMobile() {
- return imgMobile;
- }
-
- public void setImgMobile(String imgMobile) {
- this.imgMobile=imgMobile;
- }
-
-
-
- public Double getPrice() {
- return price;
- }
-
- public void setPrice(Double price) {
- this.price=price;
- }
-
-
- public String getPcDetails() {
- return pcDetails;
- }
-
- public void setPcDetails(String pcDetails) {
- this.pcDetails=pcDetails;
- }
-
-
- public String getMobileDetails() {
- return mobileDetails;
- }
-
- public void setMobileDetails(String mobileDetails) {
- this.mobileDetails=mobileDetails;
- }
-
-
- public Integer getBuyLimit() {
- return buyLimit;
- }
-
- public void setBuyLimit(Integer buyLimit) {
- this.buyLimit=buyLimit;
- }
-
-
- public Integer getLimitCycle() {
- return limitCycle;
- }
-
- public void setLimitCycle(Integer limitCycle) {
- this.limitCycle=limitCycle;
- }
-
-
- public Integer getIsCanComment() {
- return isCanComment;
- }
-
- public void setIsCanComment(Integer isCanComment) {
- this.isCanComment=isCanComment;
- }
-
-
- public String getMnemonicCode() {
- return mnemonicCode;
- }
-
- public void setMnemonicCode(String mnemonicCode) {
- this.mnemonicCode=mnemonicCode;
- }
-
-
- public Integer getStatus() {
- return status;
- }
-
- public void setStatus(Integer status) {
- this.status=status;
- }
-
-
- public Integer getDsVolume() {
- return dsVolume;
- }
-
- public void setDsVolume(Integer dsVolume) {
- this.dsVolume=dsVolume;
- }
-
-
- public Integer getRsVolume() {
- return rsVolume;
- }
-
- public void setRsVolume(Integer rsVolume) {
- this.rsVolume=rsVolume;
- }
-
-
- public Integer getDelFlag() {
- return delFlag;
- }
-
- public void setDelFlag(Integer delFlag) {
- this.delFlag=delFlag;
- }
-
-
- public String getParamRefs() {
- return paramRefs;
- }
-
- public void setParamRefs(String paramRefs) {
- this.paramRefs = paramRefs;
- }
-
- public String getAttrs() {
- return attrs;
- }
-
- public void setAttrs(String attrs) {
- this.attrs = attrs;
- }
-
- public String getShopSku() {
- return shopSku;
- }
-
- public void setShopSku(String shopSku) {
- this.shopSku = shopSku;
- }
-
- public String getShopProductImg() {
- return shopProductImg;
- }
-
- public void setShopProductImg(String shopProductImg) {
- this.shopProductImg = shopProductImg;
- }
-
- public List<ShopProductParamRef> getParams() {
- return params;
- }
-
- public void setParams(List<ShopProductParamRef> params) {
- this.params = params;
- }
-
- public List<ShopProductAttrRef> getAttrRefs() {
- return attrRefs;
- }
-
- public void setAttrRefs(List<ShopProductAttrRef> attrRefs) {
- this.attrRefs = attrRefs;
- }
-
- public List<ShopSku> getSkus() {
- return skus;
- }
-
- public void setSkus(List<ShopSku> skus) {
- this.skus = skus;
- }
-
- public List<ShopProductImg> getProductImgs() {
- return productImgs;
- }
-
- public void setProductImgs(List<ShopProductImg> productImgs) {
- this.productImgs = productImgs;
- }
-
- public Integer getStartPrice() {
- return startPrice;
- }
-
- public void setStartPrice(Integer startPrice) {
- this.startPrice = startPrice;
- }
-
- public Integer getEndPrice() {
- return endPrice;
- }
-
- public void setEndPrice(Integer endPrice) {
- this.endPrice = endPrice;
- }
-
- public String getSortType() {
- return sortType;
- }
-
- public void setSortType(String sortType) {
- this.sortType = sortType;
- }
-
- public String getQueryType() {
- return queryType;
- }
-
- public void setQueryType(String queryType) {
- this.queryType = queryType;
- }
-
- public String getAttrValues() {
- return attrValues;
- }
-
- public void setAttrValues(String attrValues) {
- this.attrValues = attrValues;
- }
-
- public String getAtrid() {
- return atrid;
- }
-
- public void setAtrid(String atrid) {
- this.atrid = atrid;
- }
-
- public String getScore() {
- return score;
- }
-
- public Integer getServiceTime() {
- return serviceTime;
- }
-
- public void setServiceTime(Integer serviceTime) {
- this.serviceTime = serviceTime;
- }
-
- public void setScore(String score) {
- this.score = score;
- }
}
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopShoppingCart.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopShoppingCart.java
index 7259104..f8c275e 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopShoppingCart.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopShoppingCart.java
@@ -14,7 +14,16 @@
*/
public class ShopShoppingCart extends EntityDTOExt {
@Extend
- private static final long serialVersionUID = 1L;
+ private static final long serialVersionUID = 1L;
+ /**
+ *购物车类型-微商城
+ */
+ public static final int CAR_TYPE_MICRO =1;
+ /**
+ *购物车类型-积分商城
+ */
+ public static final int CAR_TYPE_SCORE=2;
+
/**
@@ -50,6 +59,12 @@
* 用户是否选中 1选中 2未选中
*/
private Integer isSelected;
+ /**
+ * 购物车类型 1微商城 2积分商城
+ */
+ private Integer cartType;
+
+
/**
* 门店id
@@ -324,6 +339,12 @@
public List<ShopCoupon> getShopCoupons() {
return shopCoupons;
}
-
-
+
+ public Integer getCartType() {
+ return cartType;
+ }
+
+ public void setCartType(Integer cartType) {
+ this.cartType = cartType;
+ }
}
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopSku.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopSku.java
index 4e53f55..5d5b051 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopSku.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/bean/ShopSku.java
@@ -12,7 +12,7 @@
*/
public class ShopSku extends EntityDTO{
@Extend
- private static final long serialVersionUID = 1L;
+ private static final long serialVersionUID = 1L;
/**
@@ -59,9 +59,16 @@
private BigDecimal invitationPrice;
/**
- * 积分
+ * 消费可得积分
*/
private Integer score;
+
+ /**
+ * 积分兑换价格
+ */
+ private Integer scorePrice;
+
+
/**
* 排序
@@ -249,6 +256,14 @@
this.goodsName = goodsName;
}
+ public Integer getScorePrice() {
+ return scorePrice;
+ }
+
+ public void setScorePrice(Integer scorePrice) {
+ this.scorePrice = scorePrice;
+ }
+
@Override
public boolean equals(Object obj) {
//这里以name为判定标准。
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderV2Dao.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderV2Dao.java
index b68d63a..bf44438 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderV2Dao.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopOrderV2Dao.java
@@ -2,7 +2,10 @@
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.matrix.system.shopXcx.bean.ShopOrder;
+import com.matrix.system.shopXcx.bean.ShopProduct;
import org.apache.ibatis.annotations.Param;
+
+import java.util.List;
/**
* @description 订单表
@@ -16,4 +19,5 @@
/** 统计是否消费过了指定产品 */
int countBuyZdcp(@Param("openId") String openId, @Param("productIds")String productIds);
+
}
\ No newline at end of file
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopShoppingCartDao.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopShoppingCartDao.java
index bc4a432..e0824de 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopShoppingCartDao.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/dao/ShopShoppingCartDao.java
@@ -36,15 +36,15 @@
public ShopShoppingCart selectById(Integer cartId);
- public List<ShopShoppingCart> selectByCartUserId(@Param("shopId")Long shopId, @Param("cartUserId") String cartUserId);
+ public List<ShopShoppingCart> selectByCartUserId(@Param("shopId")Long shopId, @Param("cartUserId") String cartUserId,@Param("cartType") Integer cartType);
public ShopShoppingCart selectForUpdate(Integer cartId);
public ShopShoppingCart selectBuyLimit(@Param("cartProductId") Integer cartProductId,@Param("cartSkuId") Integer cartSkuId);
- public Integer selectUserCartCount(@Param("shopId")Long shopId, @Param("openId")String openId);
+ public Integer selectUserCartCount(@Param("shopId")Long shopId, @Param("openId")String openId,@Param("cartType") Integer cartType);
- public int updateAllSelected(@Param("openId") String openId,@Param("shopId") Long shopId, @Param("isSelected") Integer isSelected);
+ public int updateAllSelected(@Param("openId") String openId, @Param("shopId") Long shopId, @Param("isSelected") Integer isSelected,@Param("cartType") Integer cartType);
/**
* 删除用户选中的购物车明细
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/MQTaskRouting.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/MQTaskRouting.java
index c80101b..2b548ed 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/MQTaskRouting.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/MQTaskRouting.java
@@ -18,6 +18,10 @@
* 发送小程序统一模板消息
*/
String SEND_UNIFORM_TEMPLATE_MSG = "SEND_UNIFORM_TEMPLATE_MSG";
+ /**
+ * 订单退款
+ */
+ String SHOP_ORDER_REFUND = "SHOP_ORDER_REFUND";
/**
* 订单出库
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/SalesOrderRefundTask.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/SalesOrderRefundTask.java
new file mode 100644
index 0000000..2b56f6b
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/SalesOrderRefundTask.java
@@ -0,0 +1,43 @@
+package com.matrix.system.shopXcx.mqTask;
+
+
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
+import com.matrix.core.tools.LogUtil;
+import com.matrix.system.fenxiao.dao.ShopSalesmanOrderDao;
+import com.matrix.system.fenxiao.entity.ShopSalesmanOrder;
+import com.rabbitmq.client.DeliverCallback;
+import com.rabbitmq.client.Delivery;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Component;
+
+import java.io.IOException;
+
+/**
+ * 分销订单退款
+ */
+@Component
+public class SalesOrderRefundTask implements DeliverCallback {
+
+
+ @Autowired
+ private ShopSalesmanOrderDao shopSalesmanOrderDao;
+
+
+
+ @Override
+ public void handle(String consumerTag, Delivery message) throws IOException {
+
+ String orderId = new String(message.getBody(), "UTF-8");
+ LogUtil.debug("收到分销订单退款任务orderId={}", orderId);
+ QueryWrapper queryWrapper=new QueryWrapper();
+ queryWrapper.eq("order_id",orderId);
+ ShopSalesmanOrder shopSalesmanOrder = shopSalesmanOrderDao.selectOne(queryWrapper);
+ if(shopSalesmanOrder!=null){
+ shopSalesmanOrder.setOrderStatus(ShopSalesmanOrder.STATUS_YTK);
+ shopSalesmanOrderDao.updateById(shopSalesmanOrder);
+ }else{
+ LogUtil.debug("改订单为生成分销订单={}", orderId);
+ }
+ }
+
+}
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/SalesOrderTask.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/SalesOrderTask.java
index ea4bcd3..86c6c9a 100644
--- a/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/SalesOrderTask.java
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/mqTask/SalesOrderTask.java
@@ -1,13 +1,13 @@
package com.matrix.system.shopXcx.mqTask;
+import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.matrix.biz.bean.BizUser;
import com.matrix.biz.service.BizUserService;
import com.matrix.core.constance.MatrixConstance;
import com.matrix.core.tools.LogUtil;
import com.matrix.core.tools.StringUtils;
import com.matrix.system.common.dao.BusParameterSettingsDao;
-import com.matrix.system.fenxiao.dao.ShopRevenueFlowDao;
import com.matrix.system.fenxiao.dao.ShopSalesmanGradeDao;
import com.matrix.system.fenxiao.dao.ShopSalesmanOrderDao;
import com.matrix.system.fenxiao.entity.ShopSalesmanGrade;
@@ -35,7 +35,7 @@
import java.util.List;
/**
- * 微商城订单同步到erp系统
+ * 分销订单创建
*/
@Component
public class SalesOrderTask implements DeliverCallback {
@@ -109,78 +109,83 @@
void handleExtensionOrder(ShopOrder order) {
//判读客户是否存在上级,存在则产生上级的收益
BizUser bizUser = bizUserService.findByOpenId(order.getUserId());
- if(StringUtils.isNotBlank(bizUser.getParentOpenId())){
+ if(StringUtils.isNotBlank(bizUser.getParentOpenId())){//存在上级
+
LogUtil.debug("处理分销订单userOpid={}",bizUser.getOpenId());
- //存在上级
- ShopSalesmanOrder salesmanOrder=new ShopSalesmanOrder();
- salesmanOrder.setCompanyId(order.getCompanyId());
- salesmanOrder.setCreateBy(MatrixConstance.SYSTEM_USER);
- salesmanOrder.setUpdateBy(MatrixConstance.SYSTEM_USER);
- salesmanOrder.setCreateTime(new Date());
- salesmanOrder.setUpdateTime(new Date());
- salesmanOrder.setOrderId(Long.parseLong(order.getId()+""));
- salesmanOrder.setUserId(order.getUserId());
- salesmanOrder.setSalesUserId(bizUser.getParentOpenId());
- salesmanOrder.setRevenueType(ShopSalesmanOrder.REVENUE_TYPE_SALES);
- salesmanOrder.setOrderStatus(ShopSalesmanOrder.STATUS_DJS);
- Double salesAmount=0D;
- Double invitationAmount=0D;
- Double orderTotal=0D;
- Double zk=1D;
+ //判断是否重复生成
+ QueryWrapper queryWrapper=new QueryWrapper();
+ queryWrapper.eq("order_id",order.getId());
+ Integer orderCount = shopSalesmanOrderDao.selectCount(queryWrapper);
+ if(orderCount==0){
+ ShopSalesmanOrder salesmanOrder=new ShopSalesmanOrder();
+ salesmanOrder.setCompanyId(order.getCompanyId());
+ salesmanOrder.setCreateBy(MatrixConstance.SYSTEM_USER);
+ salesmanOrder.setUpdateBy(MatrixConstance.SYSTEM_USER);
+ salesmanOrder.setCreateTime(new Date());
+ salesmanOrder.setUpdateTime(new Date());
+ salesmanOrder.setOrderId(Long.parseLong(order.getId()+""));
+ salesmanOrder.setUserId(order.getUserId());
+ salesmanOrder.setSalesUserId(bizUser.getParentOpenId());
+ salesmanOrder.setRevenueType(ShopSalesmanOrder.REVENUE_TYPE_SALES);
+ salesmanOrder.setOrderStatus(ShopSalesmanOrder.STATUS_DJS);
+ Double salesAmount=0D;
+ Double invitationAmount=0D;
+ Double orderTotal=0D;
+ Double zk=1D;
- BizUser salesMan=bizUserService.findByOpenId(bizUser.getParentOpenId());
- BizUser invitationMan=null;
- ShopSalesmanOrder invitationOrder=null;
- boolean hasInvitationMan=StringUtils.isNotBlank(salesMan.getParentOpenId());
+ BizUser salesMan=bizUserService.findByOpenId(bizUser.getParentOpenId());
+ BizUser invitationMan=null;
+ ShopSalesmanOrder invitationOrder=null;
+ boolean hasInvitationMan=StringUtils.isNotBlank(salesMan.getParentOpenId());
- //判断推广员是否还存在上级,存在则计算邀请收益
- if(hasInvitationMan){
- invitationMan=bizUserService.findByOpenId(salesMan.getParentOpenId());
- invitationOrder=new ShopSalesmanOrder();
- BeanUtils.copyProperties(salesmanOrder,invitationOrder);
- invitationOrder.setSalesUserId(invitationMan.getOpenId());
- invitationOrder.setRevenueType(ShopSalesmanOrder.REVENUE_TYPE_INVITATION);
- }
-
- //收益计算
- for (ShopOrderDetails item:order.getDetails() ){
- if(StringUtils.isNotBlank(item.getShopProduct().getAttrValues())
- && item.getShopProduct().getAttrValues().contains("分销商城")){
- if(item.getShopSku().getSealesPrice()==null
- ||item.getShopSku().getSealesPrice().doubleValue()==0){
- //按分销等级计算
- ShopSalesmanGrade shopSalesmanGrade = shopSalesmanGradeDao.selectById(salesMan.getSalesmanGrade());
- salesAmount+=item.getTotalPrice().doubleValue()*(shopSalesmanGrade.getSealesCommission()/100);
-
- if(hasInvitationMan){
- ShopSalesmanGrade invitationManGrade = shopSalesmanGradeDao.selectById(invitationMan.getSalesmanGrade());
- invitationAmount+=item.getTotalPrice().doubleValue()*(invitationManGrade.getInvitationCommission()/100);
- }
-
- }else{
- //按产品设置的推广金额计算
- salesAmount+=item.getShopSku().getSealesPrice().doubleValue()*item.getCount();
- if(hasInvitationMan){
- invitationAmount+=item.getShopSku().getInvitationPrice().doubleValue()*item.getCount();
- }
- }
- orderTotal+=item.getTotalPrice().doubleValue();
- }
- }
- if(salesAmount>0){
- //整体的优惠金额折算成折扣,* 佣金
- zk=order.getOrderMoney().doubleValue()/orderTotal;
- salesAmount=salesAmount*zk;
- salesmanOrder.setAmount(salesAmount);
- shopSalesmanOrderDao.insert(salesmanOrder);
-
+ //判断推广员是否还存在上级,存在则计算邀请收益
if(hasInvitationMan){
- invitationAmount=invitationAmount*zk;
- invitationOrder.setAmount(invitationAmount);
- shopSalesmanOrderDao.insert(invitationOrder);
-
-
+ invitationMan=bizUserService.findByOpenId(salesMan.getParentOpenId());
+ invitationOrder=new ShopSalesmanOrder();
+ BeanUtils.copyProperties(salesmanOrder,invitationOrder);
+ invitationOrder.setSalesUserId(invitationMan.getOpenId());
+ invitationOrder.setRevenueType(ShopSalesmanOrder.REVENUE_TYPE_INVITATION);
}
+
+ //收益计算
+ for (ShopOrderDetails item:order.getDetails() ){
+ if(StringUtils.isNotBlank(item.getShopProduct().getAttrValues())
+ && item.getShopProduct().getAttrValues().contains("分销商城")){
+ if(item.getShopSku().getSealesPrice()==null
+ ||item.getShopSku().getSealesPrice().doubleValue()==0){
+ //按分销等级计算
+ ShopSalesmanGrade shopSalesmanGrade = shopSalesmanGradeDao.selectById(salesMan.getSalesmanGrade());
+ salesAmount+=item.getTotalPrice().doubleValue()*(shopSalesmanGrade.getSealesCommission()/100);
+
+ if(hasInvitationMan){
+ ShopSalesmanGrade invitationManGrade = shopSalesmanGradeDao.selectById(invitationMan.getSalesmanGrade());
+ invitationAmount+=item.getTotalPrice().doubleValue()*(invitationManGrade.getInvitationCommission()/100);
+ }
+
+ }else{
+ //按产品设置的推广金额计算
+ salesAmount+=item.getShopSku().getSealesPrice().doubleValue()*item.getCount();
+ if(hasInvitationMan){
+ invitationAmount+=item.getShopSku().getInvitationPrice().doubleValue()*item.getCount();
+ }
+ }
+ orderTotal+=item.getTotalPrice().doubleValue();
+ }
+ }
+ if(salesAmount>0){
+ //整体的优惠金额折算成折扣,* 佣金
+ zk=order.getOrderMoney().doubleValue()/orderTotal;
+ salesAmount=salesAmount*zk;
+ salesmanOrder.setAmount(salesAmount);
+ shopSalesmanOrderDao.insert(salesmanOrder);
+ if(hasInvitationMan){
+ invitationAmount=invitationAmount*zk;
+ invitationOrder.setAmount(invitationAmount);
+ shopSalesmanOrderDao.insert(invitationOrder);
+ }
+ }
+ }else{
+ LogUtil.debug("重复订单id={}",order.getId());
}
}else{
LogUtil.debug("不存在父级userOpid={}",bizUser.getOpenId());
diff --git a/zq-erp/src/main/java/com/matrix/system/shopXcx/vo/SalesmanApplyCondition.java b/zq-erp/src/main/java/com/matrix/system/shopXcx/vo/SalesmanApplyCondition.java
new file mode 100644
index 0000000..6444d14
--- /dev/null
+++ b/zq-erp/src/main/java/com/matrix/system/shopXcx/vo/SalesmanApplyCondition.java
@@ -0,0 +1,35 @@
+package com.matrix.system.shopXcx.vo;
+
+import com.matrix.system.shopXcx.bean.ShopProduct;
+import io.swagger.annotations.ApiModel;
+import io.swagger.annotations.ApiModelProperty;
+import lombok.Data;
+
+import java.util.List;
+
+@Data
+@ApiModel(value = "SalesmanApplyCondition", description = " 销售员申请条件")
+public class SalesmanApplyCondition {
+
+ @ApiModelProperty(value = "是否满足申请条件")
+ private Boolean isAbleApply;
+
+
+
+ @ApiModelProperty(value = "申请条件")
+ private String condition;
+
+ @ApiModelProperty(value = "条件验证结果")
+ private String msg;
+
+
+ @ApiModelProperty(value = "产品信息")
+ private List<ShopProduct> productList;
+
+
+ @ApiModelProperty(value = "最底消费金额")
+ private Double minAmount ;
+
+
+
+}
diff --git "a/zq-erp/src/main/resources/config/db/increment/\346\216\250\345\271\277\345\221\230.sql" "b/zq-erp/src/main/resources/config/db/increment/\346\216\250\345\271\277\345\221\230.sql"
index fc225f3..59a86bc 100644
--- "a/zq-erp/src/main/resources/config/db/increment/\346\216\250\345\271\277\345\221\230.sql"
+++ "b/zq-erp/src/main/resources/config/db/increment/\346\216\250\345\271\277\345\221\230.sql"
@@ -180,3 +180,23 @@
PRIMARY KEY(id)
)ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='分销订单';
+biz_user原来的userId改成了自增长的bigint
+
+
+ALTER TABLE `shop_sku`
+ ADD COLUMN `score_price` decimal(10, 2) NULL COMMENT '积分兑换价格' AFTER `invitation_price`;
+
+ALTER TABLE `shop_product`
+ ADD COLUMN `score_category_id` bigint(20) NULL COMMENT '积分商城分类ID' AFTER `company_id`,
+ADD COLUMN `able_sales` int(2) NULL COMMENT '是否为分销产品' AFTER `score_category_id`,
+ADD COLUMN `mall_type` int(2) NULL COMMENT '上架卖场' AFTER `able_sales`;
+
+update shop_product set mall_type=1;
+update shop_product set able_sales=2;
+
+ALTER TABLE `shop_shopping_cart`
+ ADD COLUMN `cart_type` int(2) NOT NULL COMMENT '购物车类型 1微商城 2积分商城' AFTER `company_id`;
+
+
+update shop_shopping_cart set cart_type=1;
+
diff --git a/zq-erp/src/main/resources/config/system.properties b/zq-erp/src/main/resources/config/system.properties
index ef96e05..7cf26d8 100644
--- a/zq-erp/src/main/resources/config/system.properties
+++ b/zq-erp/src/main/resources/config/system.properties
@@ -100,9 +100,9 @@
#是否启用异常上报
is_open_exception_report=false
-showExcptionUrl=http://erp.hive.jyymatrix.cc/showException
+showExcptionUrl=http://test.hive.jyymatrix.cc/showException
#异常信息查询接口
-showExcptionUrl=http://erp.hive.jyymatrix.cc/showException
+showExcptionUrl=http://test.hive.jyymatrix.cc/showException
diff --git a/zq-erp/src/main/resources/config/test/system.properties b/zq-erp/src/main/resources/config/test/system.properties
index 8731cd3..2a201f8 100644
--- a/zq-erp/src/main/resources/config/test/system.properties
+++ b/zq-erp/src/main/resources/config/test/system.properties
@@ -93,9 +93,9 @@
#是否启用异常上报
is_open_exception_report=true
-showExcptionUrl=http://erp.hive.jyymatrix.cc/showException
+showExcptionUrl=http://test.hive.jyymatrix.cc/showException
#异常信息查询接口
-showExcptionUrl=http://erp.hive.jyymatrix.cc/showException
+showExcptionUrl=http://test.hive.jyymatrix.cc/showException
diff --git a/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopRevenueFlowDao.xml b/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopRevenueFlowDao.xml
index de6eae0..4e5490d 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopRevenueFlowDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopRevenueFlowDao.xml
@@ -33,7 +33,7 @@
</resultMap>
- <select id="selectRevenuFlowList" resultType="com.matrix.system.shopXcx.vo.SalesOrderVo">
+ <select id="selectRevenuFlowList" resultType="com.matrix.system.fenxiao.entity.ShopRevenueFlow">
select * from shop_revenue_flow
where user_id=#{record.userId}
and DATE_FORMAT(create_time,'%Y-%m')=#{record.queryTime}
diff --git a/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml b/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml
index 173aff5..9e7fba3 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/fenxiao/ShopSalesmanApplyDao.xml
@@ -66,8 +66,11 @@
b.nick_name nickname,
(SELECT s.nick_name FROM biz_user s
WHERE s.open_id = a.parent_user_id ) parentUser,
+ c.nick_name parentUserNow,
( SELECT COUNT(*) FROM biz_user
WHERE parent_open_id = a.user_id AND is_sales != 1 ) lowerLevelNum,
+ ( SELECT COUNT(*) FROM biz_user
+ WHERE parent_open_id = a.user_id AND is_sales = 1 ) invitedNum,
( SELECT IFNULL(sum(IFNULL(amount, 0)), 0) FROM shop_salesman_order
WHERE user_id = a.user_id AND order_status = 2 AND sales_user_id = a.user_id ) totalRevenue,
( SELECT IFNULL(sum(IFNULL(amount, 0)), 0) FROM shop_salesman_order
@@ -80,6 +83,7 @@
shop_salesman_apply a
LEFT JOIN biz_user b ON a.user_id = b.open_id
LEFT JOIN shop_salesman_grade g ON a.grade_id = g.id
+ LEFT JOIN biz_user c ON c.open_id = b.parent_open_id
<where>
a.company_id=#{record.companyId}
<if test="record.shenheState != null and record.shenheState != ''">
@@ -180,8 +184,8 @@
) AS djsRevenue,
- ( SELECT count( * ) FROM shop_salesman_order c WHERE c.user_id = a.open_id AND c.sales_user_id = #{openId} and revenue_type =1 ) AS salesorderCount,
- ( SELECT count( * ) FROM shop_salesman_order c WHERE c.user_id = a.open_id AND c.sales_user_id = #{openId} and revenue_type =2 ) AS invitationOrderCount,
+ ( SELECT count( * ) FROM shop_salesman_order c WHERE c.sales_user_id = #{openId} and revenue_type =1 ) AS salesorderCount,
+ ( SELECT count( * ) FROM shop_salesman_order c WHERE c.sales_user_id = #{openId} and revenue_type =2 ) AS invitationOrderCount,
(select count(*) from biz_user where parent_open_id=#{openId} and is_sales=1) as invitationCount,
(select count(*) from biz_user where parent_open_id=#{openId} and is_sales=2) as customerCount
from biz_user a where
@@ -203,9 +207,9 @@
( SELECT COUNT(*) FROM biz_user
WHERE parent_open_id = a.user_id AND is_sales = 1 ) invitedNum,
( SELECT IFNULL(sum(IFNULL(amount, 0)), 0) FROM shop_salesman_order
- WHERE user_id = a.user_id AND order_status = 2 AND sales_user_id = a.user_id ) totalRevenue,
+ WHERE order_status = 2 AND sales_user_id = a.user_id ) totalRevenue,
( SELECT IFNULL(sum(IFNULL(amount, 0)), 0) FROM shop_salesman_order
- WHERE user_id = a.user_id AND order_status = 1 AND sales_user_id = a.user_id ) balance,
+ WHERE order_status = 1 AND sales_user_id = a.user_id ) balance,
a.create_time createTime,
a.apply_status applyStatus,
a.apply_way applyWay
@@ -218,39 +222,35 @@
<select id="findCustomDetail" resultType="com.matrix.system.fenxiao.vo.ShopCustomDetailVo">
SELECT
- a.user_id userId,
+ b.open_id userId,
b.avatar_url avatarUrl,
b.nick_name nickname,
b.binding_parent_time createTime,
- a.apply_way applyWay,
- (select COUNT(*) from shop_salesman_order c where c.order_status = 1 and c.sales_user_id = a.user_id) doneNum
- FROM
- shop_salesman_apply a
- LEFT JOIN biz_user b ON b.parent_open_id = a.user_id
+ (select COUNT(*) from shop_salesman_order c where c.order_status = 1 and c.sales_user_id = b.open_id) doneNum
+ FROM biz_user b
<where>
- a.company_id = #{record.companyId}
+ b.company_id = #{record.companyId}
AND b.is_sales != 1
and b.parent_open_id = #{record.userId}
- and a.apply_status = 2
<if test="record.userName != null and record.userName != ''">
and b.nick_name like concat('%',#{record.userName},'%')
</if>
</where>
<if test="record.sort !=null">
order by
- a.${record.sort} ${record.order}
+ b.${record.sort} ${record.order}
</if>
</select>
<select id="findCustomLow" resultType="com.matrix.system.fenxiao.vo.ShopCustomDetailVo">
SELECT
- a.user_id userId,
+ b.open_id userId,
b.avatar_url avatarUrl,
b.nick_name nickname,
- b.binding_parent_time createTime,
+ a.create_time createTime,
a.apply_way applyWay
FROM
shop_salesman_apply a
- LEFT JOIN biz_user b ON b.parent_open_id = a.user_id
+ LEFT JOIN biz_user b ON b.open_id = a.user_id
<where>
a.company_id = #{record.companyId}
AND b.is_sales = 1
@@ -277,10 +277,12 @@
b.avatar_url avatarUrl,
c.order_no orderNo,
c.order_money orderMoney,
- (select s.store_name from shop_store s where s.store_id = c.store_id) storeName
+ c.order_status orderState,
+ f.shop_name storeName
from shop_salesman_order a
left join biz_user b on b.open_id=a.user_id
left join shop_order c on a.order_id=c.id
+ LEFT JOIN sys_shop_info f on f.id = c.store_id
<where>
a.sales_user_id = #{record.userId}
<if test="record.orderType != null and record.orderType != ''">
diff --git a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderV2Dao.xml b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderV2Dao.xml
index 04cba28..dc2fe96 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderV2Dao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopOrderV2Dao.xml
@@ -21,4 +21,5 @@
</select>
+
</mapper>
\ No newline at end of file
diff --git a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopProductDao.xml b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopProductDao.xml
index 2c2cf8c..405abca 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopProductDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopProductDao.xml
@@ -42,6 +42,10 @@
<result property="couponId" column="couponId"></result>
<result property="serviceTime" column="service_time"></result>
<result property="companyId" column="company_id"/>
+ <result property="mallType" column="mall_type"/>
+ <result property="ableSales" column="able_sales"/>
+ <result property="scoreCategoryId" column="score_category_id"/>
+
<association property="shopCoupon" select="com.matrix.system.shopXcx.dao.ShopCouponDao.selectById"
column="{id=couponId}"></association>
</resultMap>
@@ -80,6 +84,9 @@
<result property="couponId" column="couponId"></result>
<result property="serviceTime" column="service_time"></result>
<result property="companyId" column="company_id"/>
+ <result property="mallType" column="mall_type"/>
+ <result property="ableSales" column="able_sales"/>
+ <result property="scoreCategoryId" column="score_category_id"/>
</resultMap>
<sql id="columns">
@@ -113,7 +120,11 @@
is_service,
service_time,
shop_ids,
- company_id
+ company_id,
+ mall_type,
+ able_sales,
+ score_category_id
+
</sql>
<!-- 属性sql -->
@@ -148,7 +159,11 @@
#{item.isService},
#{item.serviceTime},
#{item.shopIds},
- #{item.companyId}
+ #{item.companyId},
+ #{item.mallType},
+ #{item.ableSales},
+ #{item.scoreCategoryId}
+
</sql>
<!-- where sql -->
<sql id="where_sql">
@@ -237,6 +252,15 @@
and a.company_id = #{record.companyId}
</if>
+ <if test="record.mallType != null and record.mallType !='' ">
+ and a.mall_type = #{record.mallType}
+ </if>
+ <if test="record.ableSales != null and record.ableSales !='' ">
+ and a.able_sales = #{record.ableSales}
+ </if>
+ <if test="record.scoreCategoryId != null and record.scoreCategoryId ">
+ and a.score_category_id = #{record.scoreCategoryId}
+ </if>
</if>
@@ -311,6 +335,17 @@
and b.attr_full_path like concat('%/',#{record.attrs},'/%')
</if>
+
+ <if test="record.mallType != null and record.mallType !='' ">
+ and a.mall_type = #{record.mallType}
+ </if>
+ <if test="record.ableSales != null and record.ableSales !='' ">
+ and a.able_sales = #{record.ableSales}
+ </if>
+ <if test="record.scoreCategoryId != null and record.scoreCategoryId ">
+ and a.score_category_id = #{record.scoreCategoryId}
+ </if>
+
</if>
@@ -418,6 +453,16 @@
<if test="_parameter.containsKey('companyId')">
company_id = #{companyId},
</if>
+ <if test="_parameter.containsKey('scoreCategoryId')">
+ score_category_id = #{scoreCategoryId},
+ </if>
+ <if test="_parameter.containsKey('ableSales')">
+ able_sales = #{ableSales},
+ </if>
+ <if test="_parameter.containsKey('mallType')">
+ mall_type = #{mallType},
+ </if>
+
</set>
WHERE id=#{id}
@@ -500,6 +545,15 @@
shop_ids = #{record.shopIds},
</if>
+ <if test="record.mallType != null and record.mallType !='' ">
+ mall_type = #{record.mallType},
+ </if>
+ <if test="record.ableSales != null and record.ableSales !='' ">
+ able_sales = #{record.ableSales},
+ </if>
+ <if test="record.scoreCategoryId != null and record.scoreCategoryId ">
+ score_category_id = #{record.scoreCategoryId},
+ </if>
</set>
WHERE id=#{record.id}
@@ -588,6 +642,9 @@
a.marked_price,
b.attr_full_path,
a.couponId,
+ a.mall_type,
+ a.able_sales,
+ a.score_category_id,
(SELECT ROUND(SUM(ss.stock),2) from shop_sku ss where ss.p_id = a.id) as stockNum,
GROUP_CONCAT(DISTINCT(s.atrid) order by a.id SEPARATOR ',') atrid
from shop_product a left join shop_product_attr_ref b on a.id = b.p_id
@@ -628,6 +685,9 @@
a.marked_price,
a.service_time,
a.couponId,
+ a.mall_type,
+ a.able_sales,
+ a.score_category_id,
(SELECT ROUND(SUM(ss.stock),2) from shop_sku ss where ss.p_id = a.id) as stockNum
from shop_product a
where a.id in (${productIds}) and shop_ids=#{shopId}
@@ -665,6 +725,9 @@
a.marked_price,
b.attr_full_path,
a.couponId,
+ a.mall_type,
+ a.able_sales,
+ a.score_category_id,
a.service_time,
(SELECT ROUND(SUM(ss.stock),2) from shop_sku ss where ss.p_id = a.id) as stockNum,
GROUP_CONCAT(DISTINCT(s.atrid) order by a.id SEPARATOR ',') atrid
@@ -730,6 +793,9 @@
b.attr_full_path,
a.service_time,
a.couponId,
+ a.mall_type,
+ a.able_sales,
+ a.score_category_id,
(SELECT ROUND(SUM(s.stock),2) from shop_sku s where s.p_id = a.id) as stockNum,
(SELECT COUNT(p.com_id) from shop_product_comment p where p.product_id=a.id and p.del_flag=2 and p.com_audit_status=1 and p.com_score=5) as comment
from shop_product a
@@ -771,6 +837,18 @@
<if test="(record.shopIds!=null and record.shopIds!='') or (record.shopIds!='' and record.shopIds==0) ">
and find_in_set(#{record.shopIds}, a.shop_ids)
</if>
+
+ <if test="record.mallType != null and record.mallType !='' ">
+ and a.mall_type = #{record.mallType}
+ </if>
+ <if test="record.ableSales != null and record.ableSales !='' ">
+ and a.able_sales = #{record.ableSales}
+ </if>
+ <if test="record.scoreCategoryId != null and record.scoreCategoryId ">
+ and a.score_category_id = #{record.scoreCategoryId}
+ </if>
+
+
</where>
GROUP BY a.id
<if test="record.queryType != null and record.queryType == 1">
@@ -828,6 +906,9 @@
is_special_price,
marked_price,
couponId,
+ a.mall_type,
+ a.able_sales,
+ a.score_category_id,
(SELECT SUM(s.stock) from shop_sku s where s.p_id = a.id) as stockNum,
(SELECT ROUND(SUM(s.stock),2) from shop_sku s where s.p_id = a.id) as stockNum,
shop_ids
diff --git a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopShoppingCartDao.xml b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopShoppingCartDao.xml
index 8e59026..2beb6dd 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopShoppingCartDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopShoppingCartDao.xml
@@ -27,6 +27,7 @@
<result property="isSelected" column="isSelected" />
<result property="shopId" column="shop_id" />
<result property="companyId" column="company_id" />
+ <result property="cartType" column="cart_type" />
</resultMap>
@@ -44,6 +45,8 @@
<result property="isSelected" column="isSelected" />
<result property="shopId" column="shop_id" />
<result property="companyId" column="company_id" />
+ <result property="cartType" column="cart_type" />
+
</resultMap>
<!-- 字段sql -->
@@ -59,7 +62,9 @@
cart_number,
isSelected,
shop_id,
- company_id
+ company_id,
+ cart_type
+
</sql>
<!-- 属性sql -->
@@ -75,7 +80,9 @@
#{item.cartNumber},
#{item.isSelected},
#{item.shopId},
- #{item.companyId}
+ #{item.companyId},
+ #{item.cartType}
+
</sql>
<!-- where sql -->
@@ -121,6 +128,10 @@
<if test="record.companyId != null and record.companyId !='' ">
and c.company_id = #{record.companyId}
+ </if>
+
+ <if test="record.cartType != null and record.cartType !='' ">
+ and c.cart_type = #{record.cartType}
</if>
</if>
@@ -212,7 +223,7 @@
<update id="updateAllSelected" >
- update shop_shopping_cart set isSelected = #{isSelected} where shop_id=#{shopId} and cart_user_id=#{openId}
+ update shop_shopping_cart set isSelected = #{isSelected} where shop_id=#{shopId} and cart_user_id=#{openId} and cart_type=#{cartType}
</update>
@@ -334,6 +345,7 @@
and p.STATUS = 1
and p.del_flag = 2
and c.cart_user_id = #{cartUserId}
+ and c.cart_type = #{cartType}
order by c.create_time desc
</select>
@@ -351,7 +363,7 @@
<select id="selectUserCartCount" resultType="java.lang.Integer" >
select sum(cart_number) from shop_shopping_cart c
LEFT JOIN shop_product p on p.id = c.cart_product_id
-where c.shop_Id=#{shopId} and p.del_flag = 2 and cart_user_id=#{openId};
+where c.shop_Id=#{shopId} and p.del_flag = 2 and cart_user_id=#{openId} and cart_type=#{cartType};
</select>
<!-- 根据id 锁表查询-->
diff --git a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopSkuDao.xml b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopSkuDao.xml
index 1c85265..ede83bf 100644
--- a/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopSkuDao.xml
+++ b/zq-erp/src/main/resources/mybatis/mapper/xcxShop/ShopSkuDao.xml
@@ -24,6 +24,7 @@
<result property="shopId" column="shop_id"/>
<result property="sealesPrice" column="seales_price"/>
<result property="invitationPrice" column="invitation_price"/>
+ <result property="scorePrice" column="score_price"/>
@@ -50,6 +51,7 @@
<result property="shopId" column="shop_id"/>
<result property="sealesPrice" column="seales_price"/>
<result property="invitationPrice" column="invitation_price"/>
+ <result property="scorePrice" column="score_price"/>
</resultMap>
<!-- 字段sql -->
@@ -72,7 +74,9 @@
stock_code,
shop_id,
seales_price,
-invitation_price
+invitation_price,
+ score_price
+
</sql>
<!-- 属性sql -->
@@ -95,7 +99,9 @@
#{item.stockCode},
#{item.shopId},
#{item.sealesPrice},
- #{item.invitationPrice}
+ #{item.invitationPrice},
+ #{item.scorePrice}
+
</sql>
@@ -136,6 +142,13 @@
<if test="(record.shopId!=null and record.shopId!='') or (record.shopId!='' and record.shopId==0) ">
and shop_id = #{record.shopId}
</if>
+
+ <if test="(record.scorePrice!=null and record.scorePrice!='') or (record.scorePrice!='' and record.scorePrice==0) ">
+ and score_price = #{record.scorePrice}
+ </if>
+
+
+
</if>
</sql>
@@ -202,6 +215,12 @@
<if test="_parameter.containsKey('sealesPrice')">
seales_price = #{sealesPrice},
</if>
+
+ <if test="_parameter.containsKey('scorePrice')">
+ score_price = #{scorePrice},
+ </if>
+
+
</set>
WHERE id=#{id}
</update>
@@ -252,6 +271,10 @@
invitation_price = #{record.invitationPrice},
</if>
+ <if test="record.scorePrice != null ">
+ score_price = #{record.scorePrice},
+ </if>
+
</set>
WHERE id=#{record.id}
diff --git a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-apply.html b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-apply.html
index 96d333a..71bded8 100644
--- a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-apply.html
+++ b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-apply.html
@@ -41,7 +41,7 @@
</el-col>
</el-row>
- <el-row class="table-style" >
+ <el-row class="table-style" style="margin-left: 50px;">
<el-table id="proj" :data="table.rows" :height="height" stripe @sort-change="sortChange">
<el-table-column
label="会员">
diff --git a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html
index 92aafbd..d3566c6 100644
--- a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html
+++ b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-order.html
@@ -23,39 +23,48 @@
<script type="text/javascript" charset="utf-8"
th:src="@{/plugin/beditor/lang/zh-cn/zh-cn.js}"></script>
<style>
+ .panel-body{
+ overflow: hidden;
+ }
.paginationStyle{
background: #ffffff;
padding: 10px 10px;
margin: 0px 0px 10px 0px;
text-align: right;
}
+
+ .box-card {
+ width: 240px;
+ border-radius: 5px;
+ color: #ffffff;
+ padding: 2px 0px;
+ margin-right: 20px;
+ cursor: pointer;
+ float: left;
+ text-align: center;
+ }
+ .el-card__body {
+ padding: 0px;
+ }
</style>
</head>
<body>
-<div class="ibox-content" id="app" v-cloak>
- <el-row style="padding: 10px;">
- <el-row :gutter="100">
- <el-col class="line" :span="8" style="text-align: center">
- <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
+<div class="panel-body" id="app" v-cloak>
+ <el-row>
+ <el-card class="box-card" style="background-color: #0f9aef;">
+ <div style="padding:10px;font-size: 20px;">¥{{basicdetail.balance}}</div>
<div>待计算金额</div>
- <div style="padding: 5px;font-size: 30px;">¥{{basicdetail.balance}}</div>
</el-card >
- </el-col>
- <el-col class="line" :span="8" style="text-align: center">
- <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
+ <el-card class="box-card" style="background: #67C23A;">
+ <div style="padding:10px;font-size: 20px;">{{basicdetail.waitNum}}人</div>
<div>待结算人数</div>
- <div style="padding: 5px;font-size: 30px;">{{basicdetail.waitNum}}人</div>
</el-card >
- </el-col>
- <el-col class="line" :span="8" style="text-align: center">
- <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
+ <el-card class="box-card" style="background: rgb(121, 187, 255);">
+ <div style="padding:10px;font-size: 20px;">{{basicdetail.waitOrderNum}}笔</div>
<div>待结算订单</div>
- <div style="padding: 5px;font-size: 30px;">{{basicdetail.waitOrderNum}}笔</div>
</el-card >
- </el-col>
</el-row>
- </el-row>
<el-row>
<el-tabs v-model="activeName" >
<el-tab-pane label="分销订单" name="first">
@@ -155,7 +164,8 @@
</el-table-column>
<el-table-column
prop="orderNo"
- label="订单编号">
+ label="订单编号"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="actualBalance"
@@ -177,15 +187,18 @@
</el-table-column>
<el-table-column
prop="address"
- label="下单门店">
+ label="下单门店"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="custom"
- label="客户">
+ label="客户"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="parentSale"
- label="推广员">
+ label="推广员"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
label="收益类型">
@@ -208,15 +221,19 @@
</el-table-column>
<el-table-column
prop="settleNo"
- label="结算编号" width="150">
+ label="结算编号"
+ show-overflow-tooltip
+ width="150">
</el-table-column>
<el-table-column
prop="settleTime"
- label="结算时间">
+ label="结算时间"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="settler"
- label="结算人">
+ label="结算人"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column label="操作">
</el-table-column>
@@ -262,7 +279,8 @@
<el-table :data="orderLevelList.rows" :height="height" stripe:true @sort-change="sortChange">
<el-table-column
prop="orderNo"
- label="结算编号">
+ label="结算编号"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="actualBalance"
@@ -278,11 +296,13 @@
</el-table-column>
<el-table-column
prop="setTime"
- label="结算时间">
+ label="结算时间"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="setMan"
- label="结算人">
+ label="结算人"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
label="结算方式">
@@ -293,7 +313,8 @@
</el-table-column>
<el-table-column
prop="remark"
- label="备注">
+ label="备注"
+ show-overflow-tooltip>
</el-table-column>
</el-table>
</el-row>
@@ -332,7 +353,7 @@
el: '#app',
data: {
activeName: 'first',
- height:'calc(100vh - 240px)',
+ height:'calc(100vh - 340px)',
//--基本数据
basicdetail:{},
//--时间选择
@@ -374,7 +395,7 @@
jsje: '',
jsdds: '',
jsrs: '',
- jsfs: 1,
+ jsfs: 2,
bz: ''
},
formLabelWidth: '120px',
@@ -468,6 +489,7 @@
callback: function (data) {
_this.orderLevelList.rows = data.rows;
_this.orderLevelList.total = data.total;
+ _this.loadFenxiaoOrderBasic();
}
});
},
@@ -518,6 +540,7 @@
callback: function (data) {
_this.fxyList.rows = data.rows;
_this.fxyList.total = data.total;
+ _this.loadFenxiaoOrderBasic();
}
});
},
@@ -586,7 +609,8 @@
let order = _this.multipleSelection[i];
//待审核的计算到弹出框
let orderState = order.orderState;
- if(orderState == 4 || orderState == 5){
+ let settleType = order.settleType;
+ if((orderState == 4 || orderState == 5) && settleType == 1){
let orderId = order.id;
name.push(order.customUserId);
orderNum = orderNum + 1;
@@ -624,7 +648,7 @@
setOrderDone() {
if(this.orderNumsDones > 0){
this.$message({
- message: '订单状态【待评价】和【已评价】才允许结算',
+ message: '【待评价】和【已评价】状态下的【待结算】订单,才允许结算',
type: 'warning'
});
}else if(this.orderNums > 0){
diff --git a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-setting.html b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-setting.html
index 4b6da5c..a23b23d 100644
--- a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-setting.html
+++ b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-setting.html
@@ -19,7 +19,7 @@
<div class="ibox-content" id="app" v-cloak>
<el-form label-width="120px" >
<el-row>
- <p class="el-big-title">分享设置</p>
+ <p class="el-big-title">分销设置</p>
</el-row>
<el-row style="margin-top: 20px;">
<el-col>
@@ -100,7 +100,7 @@
</el-col>
</el-row>
- <el-row v-show="isShow" style="margin-top: 20px;">
+ <el-row style="margin-top: 20px;">
<el-col>
<template v-for="paramSettingFour in shfs">
<el-form-item>
@@ -118,12 +118,12 @@
<el-drawer
- title="业绩设置"
+ title="分销产品"
:visible.sync="drawer"
:direction="direction"
size="90%"
>
- <el-row >
+ <el-row style="margin-left: 50px;">
<el-col :span="24">
<el-row class="vertical ">
<el-input class="searchInput" @input="searchGoods()" v-model="queryKey"
@@ -149,28 +149,32 @@
width="50">
</el-table-column>
<el-table-column
- prop="code"
- label="产品编号"
- width="100">
+ prop="id"
+ label="ID">
</el-table-column>
<el-table-column
- prop="name"
-
+ prop="title"
label="产品名称">
</el-table-column>
-
<el-table-column
- prop="sealPice"
- label="售价">
+ prop="price"
+ label="价格">
</el-table-column>
<el-table-column
- prop="goodType"
- label="类型">
+ prop="score"
+ label="积分">
</el-table-column>
<el-table-column
- prop="cateName"
- label="分类">
+ prop="attrValues"
+ label="产品属性">
+ </el-table-column>
+ <el-table-column
+ label="是否上架">
+ <template slot-scope="scope">
+ <span v-if="scope.row.status == 1">是</span>
+ <span v-if="scope.row.status == 2">否</span>
+ </template>
</el-table-column>
<el-table-column
width="150"
@@ -195,37 +199,36 @@
:stripe="true"
:border="true"
:height="tableHeight"
- :data="order.items"
+ :data="order"
style="width: 100%">
<el-table-column
type="index"
width="50">
</el-table-column>
<el-table-column
- prop="shoppingGoods.code"
- label="产品编号"
- width="100">
+ prop="id"
+ width="280"
+ label="产品ID">
</el-table-column>
-
<el-table-column
- prop="shoppingGoods.name"
+ prop="title"
width="280"
label="产品名称">
</el-table-column>
<el-table-column
- prop="shoppingGoods.goodType"
+ prop="attrValues"
width="80"
- label="产品类型">
+ label="产品属性">
</el-table-column>
<el-table-column
- prop="shoppingGoods.sealPice"
+ prop="price"
label="单价">
</el-table-column>
<el-table-column
prop="address"
label="操作">
<template slot-scope="scope">
- <el-button type="primary" v-if="order.statu!='欠款'"
+ <el-button type="primary"
size="mini"
@click="removeItem(scope.$index, scope.row)">删除
</el-button>
@@ -265,10 +268,7 @@
//业绩设置框
drawer: false,
direction: 'rtl',
- order: {
- items: [
- ],
- },
+ order: [],
tableHeight: 500,
/*****搜索表格数据*********/
//搜索关键词
@@ -325,8 +325,7 @@
}
_this.shfs = data.mapInfo.shfs;
_this.sqtj = data.mapInfo.sqtj;
- //_this.order.items = data.mapInfo.order;
- //console.log(_this.order.items);
+ _this.order = data.mapInfo.order;
}
});
},
@@ -342,19 +341,19 @@
//判断是否被选中
let selected = false;
- this.order.items.forEach(item => {
- if (item.shoppingGoods.id == goods.id) {
+ for(let i = 0; i < this.order.length; i++){
+ if (this.order[i].id === goods.id) {
selected = true;
return;
}
- });
+ }
if (!selected) {
//未选中产品加入列表
let item = {};
- item.shoppingGoods = goods;
+ item.ShopProduct = goods;
item.goodsId = goods.id;
item.count = 1;
- this.order.items.push(item);
+ this.order.push(item.ShopProduct);
}
},
@@ -372,38 +371,33 @@
submitOrder(submitType) {
let _this = this;
let submitDate ="";
- for (let i = 0; i < _this.order.items.length; i++) {
- let goods = _this.order.items[i];
- let goodsId = goods.goodsId;
+ for (let i = 0; i < _this.order.length; i++) {
+ let ShopProduct = _this.order[i];
+ let goodsId = ShopProduct.id;
submitDate = submitDate +goodsId+",";
}
_this.cpid = submitDate;
- _this.drawer = false
+ _this.drawer = false;
},
/**
* 批量选择产品
*/
chouseGoods() {
let _this = this;
- // this.multipleSelection.forEach(item => {
- // _this.pushToSelectGoods(item, BUY_TYPE_NOT_FREE);
- // });
this.closeXm();
},
/**
* 行点击事件
*/
handleClickTableRow(row, event, column) {
- this.$refs.dataTable.toggleRowSelection(row);
+ this.pushToSelectGoods(row);
},
/**
* 删除组合产品
*/
removeItem(index, row) {
- this.order.items.splice(index, 1);
+ this.order.splice(index, 1);
},
-
-
/**
* 搜索项目绑定的产品信息
*/
@@ -417,7 +411,7 @@
contentType: 'application/x-www-form-urlencoded',
//TODO 优化下拉加载
data: {name: _this.queryKey, limit: 10000},
- url: basePath + "/admin/shoppinggoods/showList",
+ url: basePath + "/fenXiao/ruleSetting/selectProduct",
callback: function (data) {
_this.searchTableData = data.rows;
_this.loading = false;
diff --git a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-update.html b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-update.html
index 4fe4e60..7611622 100644
--- a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-update.html
+++ b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-update.html
@@ -31,43 +31,57 @@
}
.el-aside {
color: #333;
- line-height: 50px;
+ line-height: 15px;
}
.el-main {
color: #333;
- line-height: 50px;
+ line-height: 15px;
+ }
+ .box-card {
+ width: 160px;
+ border-radius: 5px;
+ color: #ffffff;
+ padding: 5px 5px;
+ margin-right: 20px;
+ cursor: pointer;
+ float: right;
+ }
+ .el-card__body {
+ padding: 0px;
}
</style>
</head>
<body>
<div class="ibox-content" id="app" v-cloak>
- <el-row>
- <p class="el-big-title">个人详情</p>
- </el-row>
<el-container>
- <el-aside width="200px" style="display:flex;align-items: center;">
- <el-avatar :size="100" :src="basicdetail.avatarUrl" style="display:flex;align-items: center;margin-left: 50px"></el-avatar>
+ <el-aside width="60px" style="display:flex;align-items: center;">
+ <el-avatar :size="50" :src="basicdetail.avatarUrl" style="display:flex;align-items: center;margin-left: 10px"></el-avatar>
</el-aside>
<el-main>
- <el-row style="display:flex;align-items: center;">
- <el-col :span="3" style="display:flex;align-items: center;">
+ <el-row style="display:flex;align-items: center;padding: 10px;">
+ <el-col :span="8" style="display:flex;align-items: center;">
<span style="font-size: 20px;">{{basicdetail.nickname}} </span>
</el-col>
- <el-col :span="3">
-
+ <el-col :span="6">
<el-select v-model="basicdetail.grade" @focus="getDatalist()" @change="changeSaleManGrade(basicdetail.grade)" placeholder="请选择" filterable allow-create>
<el-option v-for="item in salemanGradeList " :key="item.id" :label="item.name" :value="item.id"></el-option>
</el-select>
</el-col>
- <el-col :span="18">
+ <el-col :span="10">
</el-col>
</el-row>
- <el-row style="display:flex;">
+ <el-row style="display:flex;padding: 5px;">
<el-col>
<span>
手机号码:{{basicdetail.phone}} |
- 加入时间:{{basicdetail.createTime}} |
+ 加入时间:{{basicdetail.createTime}}
+ </span>
+ </el-col>
+ </el-row>
+ <el-row style="display:flex;padding: 5px;">
+ <el-col>
+ <span>
邀请人:{{basicdetail.parentUser}} |
来源:
<span v-if="basicdetail.applyWay == 1">自主申请</span>
@@ -82,38 +96,33 @@
</el-col>
</el-row>
</el-main>
+ <el-main>
+ <el-row>
+ <el-row style="display:flex;align-items: center;text-align: center;">
+ <el-card class="box-card" style="background-color: #0f9aef;">
+ <div style="padding:10px;font-size: 20px;">{{basicdetail.lowerLevelNum}}人</div>
+ <div>绑定客户</div>
+ </el-card >
+ <el-card class="box-card" style="background: #67C23A;">
+ <div style="padding:10px;font-size: 20px;">{{basicdetail.invitedNum}}人</div>
+ <div>邀请下级</div>
+ </el-card >
+ <el-card class="box-card" style="background: rgb(121, 187, 255);">
+ <div style="padding:10px;font-size: 20px;">{{basicdetail.totalRevenue}}元</div>
+ <div>累计收益</div>
+ </el-card >
+ <el-card class="box-card" style="background: rgb(93 191 45);">
+ <div style="padding:10px;font-size: 20px;">{{basicdetail.balance}}元</div>
+ <div>待结算</div>
+ </el-card >
+ </el-row>
+ </el-row>
+ </el-main>
</el-container>
- <el-row style="padding: 30px;">
- <el-row :gutter="100">
- <el-col class="line" :span="6" style="text-align: center">
- <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
- <div>绑定客户</div>
- <div style="padding: 5px;font-size: 18px;">{{basicdetail.lowerLevelNum}}人</div>
- </el-card >
- </el-col>
- <el-col class="line" :span="6" style="text-align: center">
- <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
- <div>邀请下级</div>
- <div style="padding: 5px;font-size: 18px;">{{basicdetail.invitedNum}}人</div>
- </el-card >
- </el-col>
- <el-col class="line" :span="6" style="text-align: center">
- <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
- <div>累计收益</div>
- <div style="padding: 5px;font-size: 18px;">{{basicdetail.totalRevenue}}元</div>
- </el-card >
- </el-col>
- <el-col class="line" :span="6" style="text-align: center">
- <el-card class="box-card" style="background-color: #eee;border-radius: 30px;">
- <div>待结算</div>
- <div style="padding: 5px;font-size: 18px;">{{basicdetail.balance}}元</div>
- </el-card >
- </el-col>
- </el-row>
- </el-row>
+
<el-row>
<el-tabs v-model="activeName" >
- <el-tab-pane label="分销员管理" name="first">
+ <el-tab-pane label="绑定客户" name="first">
<el-row style="display:flex;align-items: center;text-align: right;">
<el-col>
<el-form ref="form" :model="form" inline >
@@ -132,24 +141,17 @@
type="selection">
</el-table-column>
<el-table-column
- label="客户">
+ label="客户"
+ show-overflow-tooltip>
<template slot-scope="scope">
<img :src="scope.row.avatarUrl" width="40" height="40" class="head_pic"/>
- {{scope.row.nickName}}
+ {{scope.row.nickname}}
</template>
</el-table-column>
<el-table-column
prop="createTime"
- label="绑定时间">
- </el-table-column>
- <el-table-column
- label="绑定方式">
- <template slot-scope="scope">
- <span v-if="scope.row.applyWay == 1">自主申请</span>
- <span v-if="scope.row.applyWay == 2">自动添加</span>
- <span v-if="scope.row.applyWay == 3">上级邀请</span>
- <span v-if="scope.row.applyWay == 4">手动添加</span>
- </template>
+ label="绑定时间"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
label="客户状态">
@@ -161,7 +163,7 @@
<el-table-column label="操作" width="240">
<template slot-scope="scope">
<el-row style="display:flex;">
- <el-button type="primary" size="mini" @click="openExaminesaleMan(scope.row)">解绑</el-button>
+ <el-button type="primary" size="mini" @click="openExamineSaleMan(scope.row)">解绑</el-button>
</el-row>
</template>
</el-table-column>
@@ -202,7 +204,7 @@
label="客户">
<template slot-scope="scope">
<img :src="scope.row.avatarUrl" width="40" height="40" class="head_pic"/>
- {{scope.row.nickName}}
+ {{scope.row.nickname}}
</template>
</el-table-column>
<el-table-column
@@ -221,7 +223,7 @@
<el-table-column label="操作" width="240">
<template slot-scope="scope">
<el-row style="display:flex;">
- <el-button type="primary" size="mini" @click="openExaminesaleMan(scope.row)">解绑</el-button>
+ <el-button type="primary" size="mini" @click="openExamineSaleMan(scope.row)">解绑</el-button>
</el-row>
</template>
</el-table-column>
@@ -267,18 +269,35 @@
<el-table id="proj" :data="orderLevelList.rows" :height="height" stripe:true @sort-change="sortChange">
<el-table-column
prop="orderNo"
- label="订单编号">
+ label="订单编号"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
prop="orderMoney"
label="实付金额">
</el-table-column>
<el-table-column
- prop="storeName"
- label="下单门店">
+ label="订单状态">
+ <template slot-scope="scope">
+ <span v-if="scope.row.orderState == 1">待付款</span>
+ <span v-if="scope.row.orderState == 2">待配送</span>
+ <span v-if="scope.row.orderState == 3">待收货</span>
+ <span v-if="scope.row.orderState == 4">待评价</span>
+ <span v-if="scope.row.orderState == 5">已评价</span>
+ <span v-if="scope.row.orderState == 6">申请退款</span>
+ <span v-if="scope.row.orderState == 7">退款成功</span>
+ <span v-if="scope.row.orderState == 8">退款拒绝</span>
+ <span v-if="scope.row.orderState == 9">已取消</span>
+ </template>
</el-table-column>
<el-table-column
- label="客户">
+ prop="storeName"
+ label="下单门店"
+ show-overflow-tooltip>
+ </el-table-column>
+ <el-table-column
+ label="客户"
+ show-overflow-tooltip>
<template slot-scope="scope">
<img :src="scope.row.avatarUrl" width="40" height="40" class="head_pic"/>
{{scope.row.nickName}}
@@ -286,7 +305,8 @@
</el-table-column>
<el-table-column
prop="createTime"
- label="时间">
+ label="时间"
+ show-overflow-tooltip>
</el-table-column>
<el-table-column
label="收益类型">
@@ -390,7 +410,7 @@
pageSize:10,
currentPage:1,
},
- height:'calc(100vh - 240px)',
+ height:'calc(100vh - 400px)',
},
created: function () {
@@ -402,6 +422,7 @@
//加载分类
loadInfo() {
let _this = this;
+ _this.loadParamSettingBasic();
_this.loadParamSetting();
_this.loadParamSettinglow();
_this.loadParamSettingOrder();
@@ -424,6 +445,22 @@
}
});
},
+ //加载基本数据信息
+ loadParamSettingBasic() {
+ let _this = this;
+ let data={
+ userId:userId,
+ applyId:applyId,
+ };
+ AjaxProxy.requst({
+ app: _this,
+ data:data,
+ url: basePath + '/fenXiao/fenXiaoUser/loadParamSettingBasic',
+ callback: function (data) {
+ _this.basicdetail = data.mapInfo.basicdetail;
+ }
+ });
+ },
//绑定客户
loadParamSetting() {
let _this = this;
@@ -433,11 +470,11 @@
AjaxProxy.requst({
app: _this,
data:data,
- url: basePath + '/fenXiao/fenXiaoUser/findShopSalesmanDetail',
+ url: basePath + '/fenXiao/fenXiaoUser/loadParamSetting',
callback: function (data) {
- _this.basicdetail = data.mapInfo.basicdetail;
_this.fxyList.rows = data.mapInfo.customDetailRecords;
_this.fxyList.total = data.mapInfo.customDetailTotal;
+ _this.loadParamSettingBasic();
}
});
},
@@ -478,11 +515,11 @@
AjaxProxy.requst({
app: _this,
data:data,
- url: basePath + '/fenXiao/fenXiaoUser/findShopSalesmanDetail',
+ url: basePath + '/fenXiao/fenXiaoUser/loadParamSettinglow',
callback: function (data) {
- _this.basicdetail = data.mapInfo.basicdetail;
_this.lowLevelList.rows = data.mapInfo.customLowRecords;
_this.lowLevelList.total = data.mapInfo.customLowTotal;
+ _this.loadParamSettingBasic();
}
});
},
@@ -524,10 +561,11 @@
AjaxProxy.requst({
app: _this,
data:data,
- url: basePath + '/fenXiao/fenXiaoUser/findShopSalesmanDetail',
+ url: basePath + '/fenXiao/fenXiaoUser/loadParamSettingOrder',
callback: function (data) {
_this.orderLevelList.rows = data.mapInfo.orderRecords;
_this.orderLevelList.total = data.mapInfo.orderTotal;
+ _this.loadParamSettingBasic();
}
});
},
@@ -617,7 +655,12 @@
url: basePath + '/fenXiao/fenXiaoUser/unbundlingSaleMan',
callback: function (data) {
_this.$message.success(data.info);
- this.loadInfo();
+ if(_this.activeName == "first"){
+ _this.loadParamSetting();
+ }
+ if(_this.activeName == "second"){
+ _this.loadParamSettinglow();
+ }
}
});
},
diff --git a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-user.html b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-user.html
index 5ced92d..f9966e4 100644
--- a/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-user.html
+++ b/zq-erp/src/main/resources/templates/views/admin/fenxiao/fenxiao-user.html
@@ -23,6 +23,9 @@
<script type="text/javascript" charset="utf-8"
th:src="@{/plugin/beditor/lang/zh-cn/zh-cn.js}"></script>
<style>
+ .panel-body{
+ overflow: hidden;
+ }
.paginationStyle{
background: #ffffff;
padding: 10px 10px;
@@ -56,7 +59,7 @@
</head>
<body>
-<div class="ibox-content" id="app" v-cloak>
+<div class="panel-body" id="app" v-cloak>
<el-row>
<el-tabs v-model="activeName" >
<el-tab-pane label="分销员管理" name="first">
@@ -99,19 +102,25 @@
type="selection">
</el-table-column>
<el-table-column
- label="分销员" width="120">
+ label="分销员"
+ show-overflow-tooltip
+ width="150">
<template slot-scope="scope">
<img :src="scope.row.avatarUrl" width="40" height="40" class="head_pic"/>
{{scope.row.nickname}}
</template>
</el-table-column>
<el-table-column
- prop="parentUser"
- label="邀请人">
+ prop="parentUserNow"
+ label="当前上级">
</el-table-column>
<el-table-column
prop="lowerLevelNum"
- label="下级客户数">
+ label="推广客户">
+ </el-table-column>
+ <el-table-column
+ prop="invitedNum"
+ label="邀请下级">
</el-table-column>
<el-table-column
prop="totalRevenue"
@@ -128,6 +137,7 @@
<el-table-column
prop="createTime"
label="加入时间"
+ show-overflow-tooltip
:formatter="formatDate">
</el-table-column>
<el-table-column
@@ -138,6 +148,10 @@
<span v-if="scope.row.applyStatus == 3">未通过</span>
<span v-if="scope.row.applyStatus == 4">系统删除</span>
</template>
+ </el-table-column>
+ <el-table-column
+ prop="parentUser"
+ label="注册邀请人">
</el-table-column>
<el-table-column
label="来源">
@@ -154,7 +168,7 @@
<el-button type="primary" v-if="scope.row.applyStatus == 1" size="mini" @click="openExamineSaleManApply(scope.row)">审核</el-button>
<el-button type="primary" v-if="scope.row.applyStatus == 2" size="mini" @click="openUpdateSaleManGrade(scope.row)">修改等级</el-button>
<el-button type="primary" size="mini" @click="openUpdateSaleManGrade(scope.row)">详情</el-button>
- <el-button type="primary" v-if="scope.row.applyStatus == 2" size="mini" @click="delSaleManGradeApply(scope.row)">删除</el-button>
+ <el-button type="danger" v-if="scope.row.applyStatus == 2" size="mini" @click="delSaleManGradeApply(scope.row)">删除</el-button>
</el-row>
</template>
</el-table-column>
@@ -207,9 +221,9 @@
<el-table-column label="操作" width="240">
<template slot-scope="scope">
<el-row style="display:flex;">
- <el-button type="primary" v-if="scope.row.isDefault == 1" size="mini" @click="addFyfa()">新增</el-button>
+ <el-button type="primary" v-if="scope.row.isDefault == 1" size="mini" @click="addFyfaReady()">新增</el-button>
<el-button type="primary" size="mini" @click="updateFyfa(scope.row)">保存</el-button>
- <el-button type="primary" v-if="scope.row.isDefault == 2" size="mini" @click="delFyfa(scope.row)">删除</el-button>
+ <el-button type="danger" v-if="scope.row.isDefault == 2" size="mini" @click="delFyfa(scope.row)">删除</el-button>
</el-row>
</template>
</el-table-column>
@@ -438,18 +452,23 @@
this.loadFyfaSetting();
},
//新增
- addFyfa(){
+ addFyfaReady(){
let _this = this;
- AjaxProxy.requst({
- app: _this,
- data:[],
- url: basePath + '/fenXiao/fenXiaoUser/addFyfa',
- callback: function (data) {
- _this.$message.success(data.info);
- _this.loadFyfaSetting();
- }
- });
+ let fyfaReady = {};
+ _this.fyfaList.rows.push(fyfaReady);
},
+ // addFyfa(){
+ // let _this = this;
+ // AjaxProxy.requst({
+ // app: _this,
+ // data:[],
+ // url: basePath + '/fenXiao/fenXiaoUser/addFyfa',
+ // callback: function (data) {
+ // _this.$message.success(data.info);
+ // _this.loadFyfaSetting();
+ // }
+ // });
+ // },
updateFyfa(row){
let _this = this;
let id = row.id;
@@ -485,7 +504,7 @@
}).then(() => {
//通过
_this.delFyfaApply(row);
- _this.loadFyfaSetting();
+
}).catch(action => {
//不通过
if(action === 'cancel'){
@@ -509,6 +528,7 @@
url: basePath + '/fenXiao/fenXiaoUser/delFyfaApply',
callback: function (data) {
_this.$message.success(data.info);
+ _this.loadFyfaSetting();
}
});
},
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html b/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html
index 35b61f7..1982dfd 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive-erp/order/orderXq-form.html
@@ -108,7 +108,8 @@
</el-col>
<el-col :span="14" style="text-align: right;">
<label>¥ {{order.total}}</label>
- <label>¥ {{(order.zkTotal - order.total).toFixed(2)}}</label>
+ <!-- 退款订单不能显示为负数 -->
+ <label>¥ {{(order.zkTotal - order.total>0?order.zkTotal - order.total:0).toFixed(2)}}</label>
<label>¥ {{order.zkTotal}}</label>
<label>¥ {{order.arrears}}</label>
<label>¥ {{order.repay}}</label>
@@ -256,11 +257,15 @@
label="收款">
</el-table-column>
<el-table-column
- prop="t3"
+ prop="payMethod"
+ label="支付方式">
+ </el-table-column>
+ <el-table-column
+ prop="achieveType"
label="业绩类型">
</el-table-column>
<el-table-column
- prop="t1"
+ prop="goodsCash"
label="原业绩">
</el-table-column>
<el-table-column
@@ -544,7 +549,16 @@
created : function() {
let _this = this;
this.orderParam = /*[[${orderParam}]]*/
- this.queryOrderDetailData(this.orderParam);
+ var orderId = /*[[${orderId}]]*/
+ var orderNo = /*[[${orderNo}]]*/
+
+ var param = {};
+ if(orderId) {
+ param.id = orderId;
+ } else {
+ param.orderNo = orderNo;
+ }
+ this.queryOrderDetailData(param);
// 业绩类型
AjaxProxy.requst({
app: _this,
@@ -570,7 +584,7 @@
let _this = this;
AjaxProxy.requst({
app: _this,
- data: {id: param, orderNo:param},
+ data: param,
contentType: 'application/x-www-form-urlencoded',
url: basePath + '/admin/order/findOrderDetailByIdOrNo',
callback: function (data) {
@@ -664,6 +678,10 @@
}
_this.data.items = dataItems;
+ _this.data.zkTotal = _this.refundMoney;
+ _this.data.total = _this.total;
+
+
AjaxProxy.requst({
app: _this,
data: _this.data,
@@ -717,6 +735,7 @@
let _this = this;
let items = this.orderItems;
_this.refundMoney = 0;
+ _this.total = 0;
for(var i = 0; i < items.length; i++) {
let item = items[i]
@@ -732,6 +751,8 @@
}
_this.refundMoney += parseFloat(item.refundPrice * item.refundCount);
+ //记录一下未优惠之前的价格
+ _this.total += parseFloat(item.price * item.refundCount);
}
}
@@ -742,7 +763,7 @@
_this.dialogSettleVisible = true;
},
calOrderTotalFormatter(row, column) {
- return row.count * row.price;
+ return row.count * row.zkPrice;
},
getVipMoneyCards() {
let _this = this;
@@ -915,14 +936,14 @@
if(jsqMap[key]>achieve.zkTotal) {
this.$message.error("【"+achieve.goodsName + "】业绩分配金额大于支付金额");
isOk = false;
- return;
+ break;
}
}else{
this.$message.error("【"+achieve.goodsName + "】业绩分配金额请填写数字");
isOk=false;
- return;
+ break;
}
- };
+ }
console.log("isOk",isOk);
return isOk;
},
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive-erp/statistics/daily-list-new.html b/zq-erp/src/main/resources/templates/views/admin/hive-erp/statistics/daily-list-new.html
index ced4453..0137137 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive-erp/statistics/daily-list-new.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive-erp/statistics/daily-list-new.html
@@ -11,219 +11,273 @@
<meta http-equiv="Cache-Control" content="no-siteapp" />
<LINK rel="Bookmark" href="../images/favicon.ico">
<!-- 本框架基本脚本和样式 -->
-<script type="text/javascript"
- th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
-<script type="text/javascript" th:src="@{/js/systools/MBase.js}"></script>
-
+<script type="text/javascript" th:src="@{/js/systools/MBaseVue.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/jquery.query.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/moment.min.js}"></script>
+<link rel="stylesheet" th:href="@{/plugin/element-ui/index.css}">
+<link th:href="@{/css/styleOne/style.min.css}" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" th:src="@{/js/function/public.js}"></script>
</head>
-<body class="gray-bg">
-
+<style>
+ .table-style {
+ margin: 20px 0;
+ padding: 20px 10px;
+ border: 1px solid #DCDFE6;
+ background-color: white;
+ }
+ .search-form {
+ background-color: white;
+ padding-top: 10px;
+ padding-left: 20px;
+ padding-bottom: 10px;
+ }
+</style>
+<body>
+<div id="app" style="">
+ <el-row class="search-form">
+ <el-form ref="form" :model="form" inline>
+ <el-form-item label="选择年月">
+ <el-select v-model="form.year" style="width:120px;" placeholder="请选择">
+ <el-option v-for="item in years"
+ :key="item"
+ :label="item"
+ :value="item"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item>
+ <el-select v-model="form.month" style="width:120px;" placeholder="请选择">
+ <el-option v-for="item in months"
+ :key="item"
+ :label="item"
+ :value="item"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item>
+ <el-select v-model="form.day" style="width:120px;" placeholder="请选择">
+ <el-option v-for="item in days"
+ :key="item"
+ :label="item"
+ :value="item"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="日期范围">
+ <el-date-picker v-model="form.timeRange"
+ type="datetimerange"
+ range-separator="至"
+ start-placeholder="开始日期"
+ end-placeholder="结束日期">
+ </el-date-picker>
+ </el-form-item>
- <div class="ibox-content">
- <!-- 搜索框部分start -->
- <form class="form-inline" id="serchform">
- <div class="row mb-10">
- <div class="col-sm-8">
- <button onclick="myGrid.serchData()" type="button" class="btn btn-info btn-sm"><i class="fa fa-search" ></i> 搜索</button>
- <button onclick="myGrid.resetForm()" type="button" class="btn btn-default btn-sm"><i class="fa fa-refresh " ></i> 重置</button>
- <button matrix:btn="ygyjbb-exportExcel" onclick="exportExcel()" type="button" class="btn btn-default btn-sm"><i class="fa fa-download" ></i> 导出</button>
- </div>
- </div>
- <div class="form-group mr-20">
- <label >选择年月</label> <select
- class="form-control" name="year" id="select_year">
- <option value="">年份</option>
- <option value="2010">2010</option>
- <option value="2011">2011</option>
- <option value="2012">2012</option>
- <option value="2013">2013</option>
- <option value="2014">2014</option>
- <option value="2015">2015</option>
- <option value="2016">2016</option>
- <option value="2017">2017</option>
- <option value="2018">2018</option>
- <option value="2019">2019</option>
- <option value="2020">2020</option>
- <option value="2021">2021</option>
- </select> <select class="form-control" name="month" id="select_month">
- <option value="01">1</option>
- <option value="02">2</option>
- <option value="03">3</option>
- <option value="04">4</option>
- <option value="05">5</option>
- <option value="06">6</option>
- <option value="07">7</option>
- <option value="08">8</option>
- <option value="09">9</option>
- <option value="10">10</option>
- <option value="11">11</option>
- <option value="12">12</option>
- </select>
- <select class="form-control" name="day" id="select_day">
- <option value="">日</option>
- <th:block th:each="i:${#numbers.sequence(1, 31)}" >
- <option th:value="${i }" th:text="${i }"></option>
- </th:block>
- </select>
- </div>
- <div class="form-group mr-20">
- <label>日期范围</label>
- <input name="beginTime" type="text" class="form-control datetimepicker" id="beginTime">-
- <input name="endTime" type="text" class="form-control datetimepicker" id="endTime">
- </div>
+ <el-form-item label="会员">
+ <el-input v-model="form.vipQueryKey"></el-input>
+ </el-form-item>
- <div class="form-group mr-20">
- <label>会员</label>
- <input autocomplete="off" placeholder="姓名/编号/电话" name="vipQueryKey" type="text" class="form-control" >
- </div>
+ <el-form-item label="业绩归属人">
+ <el-select v-model="form.beaultId" placeholder="请选择">
+ <el-option v-for="item in achieveUsers"
+ :key="item.suId"
+ :label="item.suName"
+ :value="item.suId"></el-option>
+ </el-select>
+ </el-form-item>
- <div class="form-group mr-20">
- <label>美疗师</label>
- <select class="form-control autoFull select2"
- th:data-url="@{/admin/getShopStaffByRoleName?roleName=美疗师}"
- data-value="suId"
- data-filed="suName"
- name="beaultId"
- id="beaultId">
- <option value="">--请选择美容师--</option>
- </select>
- </div>
+ <el-form-item label="门店">
+ <el-select v-model="form.shopId" placeholder="请选择所属门店">
+ <el-option v-for="item in shopList"
+ :key="item.id"
+ :label="item.shopName"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
- <div class="form-group mr-20">
- <label>门店</label>
- <select class="form-control autoFull" data-filed="shopName" name="shopId" id="shopId"
- th:data-url="@{/admin/shopInfo/findAllWithPermi}">
- <option value=''>--请选择部所属门店--</option>
- </select>
- </div>
- </form>
+ <el-button type="primary" @click="search" >搜索</el-button>
+ <el-button @click="resetForm('form')">重置</el-button>
+ <el-button type="warning" @click="exportExcel">导出</el-button>
+ </el-form>
-
- <table id="mgrid">
- <thead>
- <tr>
- <th data-formatter="MGrid.indexfn" data-align="center"
- data-width="30px" data-footer-formatter="footCountTitle">序号</th>
- <th data-field="datatime">时间</th>
- <th data-field="orderNo" data-formatter="buildOpenDetail" >订单编号</th>
- <th data-field="orderType">订单类型</th>
- <th data-field="vipName">会员姓名</th>
- <th data-field="proName">产品</th>
- <th data-field="cateName">产品分类</th>
- <th data-field="zkTotal" data-footer-formatter="countColumn">订单金额</th>
- <th data-field="goodsCash" data-footer-formatter="countColumn">订单业绩</th>
- <th data-field="payMethod">收款方式</th>
- <th data-field="achieveType">业绩类型</th>
- <th data-field="guwen">顾问</th>
- <th data-field="meiliao">美疗师</th>
- <th data-field="hisConsume" data-footer-formatter="countColumn">本金消耗
- <i data-toggle="tooltip" data-placement="top" title="消耗金额:客户做服务时划扣的本金" class="fa fa-question-circle"></i>
- </th>
- <th data-field="freeConsume" data-footer-formatter="countColumn">赠送消耗
- <i data-toggle="tooltip" data-placement="top" title="赠送消耗:客户做服务时划扣的赠送金额" class="fa fa-question-circle"></i>
- </th>
- <th data-field="projPercentage" data-footer-formatter="countColumn">服务提成
- <i data-toggle="tooltip" data-placement="top" title="服务提成:为美疗师手动设置的项目服务提成" class="fa fa-question-circle"></i>
- </th>
- <th data-field="numberOfPeople" data-footer-formatter="countColumn">人头</th>
- <th data-field="projNum" data-footer-formatter="countColumn">项目个数</th>
- <th data-field="projTime" data-footer-formatter="countColumn">项目时间</th>
- <th data-field="shopName">门店</th>
-
- </tr>
- </thead>
- </table>
- </div>
-
- <script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script>
- <script type="text/javascript" th:src="@{/js/function/public.js}"></script>
- <script type="text/javascript">
- var myGrid;
- var initParam = {
- format : "yyyy-mm-dd hh:ii", //默认显示年与日,如果想显示十分秒:"yyyy-mm-dd hh:ii:ss"
- minView: "hour", //"month",只显示年月日的选择,不会再跳转去选择时分秒;如果想要选择时分秒的:"hour"
+ </el-row>
+ <el-row class="table-style">
+ <el-table :data="tableData" style="width: 100%">
+ <el-table-column type="index" width="30"></el-table-column>
+ <el-table-column prop="datatime" width="150" label="时间"></el-table-column>
+ <el-table-column prop="orderNo" width="180" label="订单编号">
+ <template slot-scope="scope">
+ <el-link @click="jumpOrder(scope.row.orderType, scope.row.orderNo)" type="primary">{{scope.row.orderNo}}</el-link>
+ </template>
+ </el-table-column>
+ <el-table-column prop="orderType" label="订单类型"></el-table-column>
+ <el-table-column prop="vipName" label="会员姓名"></el-table-column>
+ <el-table-column prop="proName" label="产品" width="200"></el-table-column>
+ <el-table-column prop="cateName" label="产品分类"></el-table-column>
+ <el-table-column prop="zkTotal" label="订单金额"></el-table-column>
+<!-- <el-table-column prop="goodsCash" label="订单业绩"></el-table-column>-->
+ <el-table-column prop="meiliao" label="员工"></el-table-column>
+ <el-table-column v-for="(item, index) in customColumns" width="120" :key="index" :label="item.value">
+ <template slot-scope="scope">
+ <span v-if="item.value == scope.row.achieveType">{{scope.row.goodsCash}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="hisConsume" label="本金消耗"></el-table-column>
+ <el-table-column prop="freeConsume" label="赠送消耗"></el-table-column>
+ <el-table-column prop="projPercentage" label="服务提成"></el-table-column>
+ <el-table-column prop="numberOfPeople" label="人头"></el-table-column>
+ <el-table-column prop="projNum" label="项目个数"></el-table-column>
+ <el-table-column prop="projTime" label="服务时间"></el-table-column>
+ <el-table-column prop="guwen" label="操作人"></el-table-column>
+ <el-table-column prop="shopName" label="门店"></el-table-column>
+ </el-table>
+ <el-row style="margin-top: 10px;">
+ <el-pagination
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ :current-page="page.currentPage"
+ :page-sizes="[10, 20, 30, 50]"
+ :page-size="page.size"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="page.total">
+ </el-pagination>
+ </el-row>
+ </el-row>
+</div>
+<script type="text/javascript" th:src="@{/plugin/layer/layer.js}"></script>
+<script type="text/javascript" th:src="@{/js/systools/AjaxProxyVue.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/vue.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/element-ui/index.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/moment.min.js}"></script>
+<script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script>
+<script type="text/javascript" th:inline="javascript">
+ var vue = new Vue({
+ el : "#app",
+ data : {
+ tableData : [],
+ customColumns : [],
+ shopList : [],
+ achieveUsers : [],
+ years : [2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021],
+ months : ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"],
+ days : [],
+ form : {
+ year : '',
+ month : '',
+ day : '',
+ timeRange : '',
+ vipQueryKey : '',
+ beaultId : '',
+ shopId : ''
+ },
+ page : {
+ currentPage : 1,
+ size : 10,
+ total : 0
}
- MTools.ininDatetimepicker(initParam);
- //限制结束时间不小于开始时间
- MTools.limitStartEndTime({});
-
- var date = new Date();
- var year = date.getFullYear();
- var month = date.getMonth() + 1;
- var year_options = "";
- for (var i = 9; i > 0; i--) {
- year_options += "<option value='" + (year - i) + "'>" + (year - i)
- + "</option>";
- }
- year_options += "<option value='"+year+"' selected='selected'>" + year
- + "</option>";
- $("#select_year").html(year_options);
- $("#select_month").find("option").each(function(row) {
- var option_month = $(this).val();
- if (month == option_month) {
- $(this).attr("selected", true);
- }
- });
+ },
+ created : function() {
+ this.initDays();
+ this.queryCustomColumns();
+ this.queryShops();
+ this.queryAchieveUsers();
+ },
+ methods : {
+ queryTableData () {
+ let _this = this;
+ var form = _this.form;
+ var page = _this.page;
+ var params = _this.form;
+ params.limit = page.size;
+ params.offset = (page.currentPage - 1) * page.size;
- function buildOpenDetail(value, row, index){
- var html = [];
- if(row.orderType=='服务单'){
- html[0] = '<a onClick="fnPublci.showServiceOrder(1 , \'' + value +'\')" class="text-primary " >'+value+'</a>'
- }else{
- html[0] = '<a onClick="fnPublci.showOrder(1 , \'' + value +'\')" class="text-primary " >'+value+'</a>'
- }
-
- return html.join("");
- }
-
-
-
-
- $(function() {
- MTools.autoFullSelect();
- myGrid = MGrid.initGrid({
- url : basePath+"/admin/achieve/findDailyInfoNew",
- showExport : true,
- showFooter : true,
- height:'auto',
- width:'auto',
- exportDataType : "basic", //basic', 'all', 'selected'.
- exportTypes : [ 'excel', 'xlsx' ], //导出类型
- exportOptions : {
- ignoreColumn : [ 0 ],
- fileName : "每日单据统计" + MTools.getTime(), //文件名称设置
- worksheetName : 'Sheet1', //表格工作区名称
- tableName : '每日单据统计',
- excelstyles : [ 'background-color', 'color', 'font-size',
- 'font-weight' ],
+ if (form.timeRange) {
+ params.beginTime = form.timeRange?moment(form.timeRange[0]).format("YYYY-MM-DD HH:mm"):'';
+ params.endTime = form.timeRange?moment(form.timeRange[1]).format("YYYY-MM-DD HH:mm"):'';
}
- });
-
- $('[data-toggle="tooltip"]').tooltip()
-
- });
-
- function footCountTitle(data) {
- return "<b>合计</b>";
- };
- function countColumn(data) {
- console.log(data)
- field = this.field;
- var resultsumQuantity = parseFloat((data.reduce(function(sum, row) {
- console.log(sum,row[field]);
- return sum + (+row[field]);
- }, 0)).toFixed(2));//保留有效数字
- return "<b>"+resultsumQuantity+"</b>";
- };
-
-
- function exportExcel(){
-
- var param=MForm.toUrlParam("#serchform");
-
- window.location.href=basePath+"/admin/achieve/exportDailyInfoNew?"+param;
+ $.AjaxProxy({
+ p:params
+ }).invoke(basePath + "/admin/achieve/findDailyInfoNew", function (loj) {
+ _this.tableData = loj.getValue("rows");
+ _this.page.total = loj.getResult().total;
+ });
+ },
+ queryCustomColumns() {
+ let _this = this;
+ AjaxProxy.requst({
+ app: _this,
+ url: basePath + '/admin/customerDictionary/getListByParentCode/YJLX',
+ callback: function (data) {
+ _this.customColumns = data.rows;
+ _this.queryTableData();
+ }
+ });
+ },
+ queryShops() {
+ let _this = this;
+ AjaxProxy.requst({
+ app: _this,
+ url: basePath + '/admin/shopInfo/findAllWithPermi',
+ callback: function (data) {
+ _this.shopList = data.rows;
+ }
+ });
+ },
+ queryAchieveUsers() {
+ let _this = this;
+ AjaxProxy.requst({
+ app: _this,
+ url: basePath + '/admin/getShopStaffByRoleName?roleName=美疗师',
+ callback: function (data) {
+ _this.achieveUsers = data.rows;
+ }
+ });
+ },
+ resetForm(formName) {
+ // this.$refs[formName].resetFields();
+ this.form = {
+ timeRange : '',
+ vipQueryKey : '',
+ beaultId : '',
+ shopId : ''
+ }
+ },
+ search() {
+ this.queryTableData();
+ },
+ handleSizeChange(val) {
+ this.page.size = val;
+ this.queryTableData();
+ },
+ handleCurrentChange(val) {
+ this.page.currentPage = val;
+ this.queryTableData();
+ },
+ initDays() {
+ let _this = this;
+ for (var i = 1; i <= 31 ; i++) {
+ _this.days.push(i);
+ }
+ },
+ getRequestParam() {
+ var form = this.form;
+ var params = form;
+ if (form.timeRange) {
+ params.beginTime = form.timeRange?moment(form.timeRange[0]).format("YYYY-MM-DD HH:mm"):'';
+ params.endTime = form.timeRange?moment(form.timeRange[1]).format("YYYY-MM-DD HH:mm"):'';
+ }
+ return params;
+ },
+ exportExcel() {
+ window.location.href=basePath+"/admin/achieve/exportDailyInfoNew?"+MTools.jsonToUrlParam(this.getRequestParam());
+ },
+ jumpOrder(type, value) {
+ if(type=='服务单') {
+ fnPublci.showServiceOrder(1, value);
+ } else {
+ fnPublci.showOrder(1, value);
+ }
+ }
}
-
- </script>
+ });
+</script>
</body>
</html>
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html
index be177b0..1982dfd 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/beautySalon/orderXq-form.html
@@ -549,7 +549,16 @@
created : function() {
let _this = this;
this.orderParam = /*[[${orderParam}]]*/
- this.queryOrderDetailData(this.orderParam);
+ var orderId = /*[[${orderId}]]*/
+ var orderNo = /*[[${orderNo}]]*/
+
+ var param = {};
+ if(orderId) {
+ param.id = orderId;
+ } else {
+ param.orderNo = orderNo;
+ }
+ this.queryOrderDetailData(param);
// 业绩类型
AjaxProxy.requst({
app: _this,
@@ -575,7 +584,7 @@
let _this = this;
AjaxProxy.requst({
app: _this,
- data: {id: param, orderNo:param},
+ data: param,
contentType: 'application/x-www-form-urlencoded',
url: basePath + '/admin/order/findOrderDetailByIdOrNo',
callback: function (data) {
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new-bak.html b/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new-bak.html
new file mode 100644
index 0000000..3bcdc67
--- /dev/null
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new-bak.html
@@ -0,0 +1,229 @@
+
+<!DOCTYPE HTML>
+<html xmlns:th="http://www.thymeleaf.org" xmlns:matrix="http://www.w3.org/1999/xhtml">
+<head>
+<meta charset="utf-8">
+<META HTTP-EQUIV="Pragma" CONTENT="no-cache">
+<meta name="renderer" content="webkit|ie-comp|ie-stand">
+<meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+<meta name="viewport"
+ content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no" />
+<meta http-equiv="Cache-Control" content="no-siteapp" />
+<LINK rel="Bookmark" href="../images/favicon.ico">
+<!-- 本框架基本脚本和样式 -->
+<script type="text/javascript"
+ th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
+<script type="text/javascript" th:src="@{/js/systools/MBase.js}"></script>
+
+</head>
+<body class="gray-bg">
+
+
+ <div class="ibox-content">
+ <!-- 搜索框部分start -->
+ <form class="form-inline" id="serchform">
+ <div class="row mb-10">
+ <div class="col-sm-8">
+ <button onclick="myGrid.serchData()" type="button" class="btn btn-info btn-sm"><i class="fa fa-search" ></i> 搜索</button>
+ <button onclick="myGrid.resetForm()" type="button" class="btn btn-default btn-sm"><i class="fa fa-refresh " ></i> 重置</button>
+ <button matrix:btn="ygyjbb-exportExcel" onclick="exportExcel()" type="button" class="btn btn-default btn-sm"><i class="fa fa-download" ></i> 导出</button>
+ </div>
+ </div>
+ <div class="form-group mr-20">
+ <label >选择年月</label> <select
+ class="form-control" name="year" id="select_year">
+ <option value="">年份</option>
+ <option value="2010">2010</option>
+ <option value="2011">2011</option>
+ <option value="2012">2012</option>
+ <option value="2013">2013</option>
+ <option value="2014">2014</option>
+ <option value="2015">2015</option>
+ <option value="2016">2016</option>
+ <option value="2017">2017</option>
+ <option value="2018">2018</option>
+ <option value="2019">2019</option>
+ <option value="2020">2020</option>
+ <option value="2021">2021</option>
+ </select> <select class="form-control" name="month" id="select_month">
+ <option value="01">1</option>
+ <option value="02">2</option>
+ <option value="03">3</option>
+ <option value="04">4</option>
+ <option value="05">5</option>
+ <option value="06">6</option>
+ <option value="07">7</option>
+ <option value="08">8</option>
+ <option value="09">9</option>
+ <option value="10">10</option>
+ <option value="11">11</option>
+ <option value="12">12</option>
+ </select>
+ <select class="form-control" name="day" id="select_day">
+ <option value="">日</option>
+ <th:block th:each="i:${#numbers.sequence(1, 31)}" >
+ <option th:value="${i }" th:text="${i }"></option>
+ </th:block>
+ </select>
+ </div>
+ <div class="form-group mr-20">
+ <label>日期范围</label>
+ <input name="beginTime" type="text" class="form-control datetimepicker" id="beginTime">-
+ <input name="endTime" type="text" class="form-control datetimepicker" id="endTime">
+ </div>
+
+ <div class="form-group mr-20">
+ <label>会员</label>
+ <input autocomplete="off" placeholder="姓名/编号/电话" name="vipQueryKey" type="text" class="form-control" >
+ </div>
+
+ <div class="form-group mr-20">
+ <label>业绩归属人</label>
+ <select class="form-control autoFull select2"
+ th:data-url="@{/admin/getShopStaffByRoleName?roleName=美疗师}"
+ data-value="suId"
+ data-filed="suName"
+ name="beaultId"
+ id="beaultId">
+ <option value="">--请选择--</option>
+ </select>
+ </div>
+
+ <div class="form-group mr-20">
+ <label>门店</label>
+ <select class="form-control autoFull" data-filed="shopName" name="shopId" id="shopId"
+ th:data-url="@{/admin/shopInfo/findAllWithPermi}">
+ <option value=''>--请选择部所属门店--</option>
+ </select>
+ </div>
+ </form>
+
+
+ <table id="mgrid">
+ <thead>
+ <tr>
+ <th data-formatter="MGrid.indexfn" data-align="center"
+ data-width="30px" data-footer-formatter="footCountTitle">序号</th>
+ <th data-field="datatime">时间</th>
+ <th data-field="orderNo" data-formatter="buildOpenDetail" >订单编号</th>
+ <th data-field="orderType">订单类型</th>
+ <th data-field="vipName">会员姓名</th>
+ <th data-field="proName">产品</th>
+ <th data-field="cateName">产品分类</th>
+ <th data-field="zkTotal" data-footer-formatter="countColumn">订单金额</th>
+ <th data-field="goodsCash" data-footer-formatter="countColumn">订单业绩</th>
+ <th data-field="payMethod">收款方式</th>
+ <th data-field="achieveType">业绩类型</th>
+ <th data-field="meiliao">员工</th>
+ <th data-field="hisConsume" data-footer-formatter="countColumn">本金消耗
+ <i data-toggle="tooltip" data-placement="top" title="消耗金额:客户做服务时划扣的本金" class="fa fa-question-circle"></i>
+ </th>
+ <th data-field="freeConsume" data-footer-formatter="countColumn">赠送消耗
+ <i data-toggle="tooltip" data-placement="top" title="赠送消耗:客户做服务时划扣的赠送金额" class="fa fa-question-circle"></i>
+ </th>
+ <th data-field="projPercentage" data-footer-formatter="countColumn">服务提成
+ <i data-toggle="tooltip" data-placement="top" title="服务提成:为美疗师手动设置的项目服务提成" class="fa fa-question-circle"></i>
+ </th>
+ <th data-field="numberOfPeople" data-footer-formatter="countColumn">人头</th>
+ <th data-field="projNum" data-footer-formatter="countColumn">项目个数</th>
+ <th data-field="projTime" data-footer-formatter="countColumn">项目时间</th>
+ <th data-field="guwen">操作人</th>
+ <th data-field="shopName">门店</th>
+
+ </tr>
+ </thead>
+ </table>
+ </div>
+
+ <script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script>
+ <script type="text/javascript" th:src="@{/js/function/public.js}"></script>
+ <script type="text/javascript">
+ var myGrid;
+ var initParam = {
+ format : "yyyy-mm-dd hh:ii", //默认显示年与日,如果想显示十分秒:"yyyy-mm-dd hh:ii:ss"
+ minView: "hour", //"month",只显示年月日的选择,不会再跳转去选择时分秒;如果想要选择时分秒的:"hour"
+ }
+ MTools.ininDatetimepicker(initParam);
+ //限制结束时间不小于开始时间
+ MTools.limitStartEndTime({});
+
+ var date = new Date();
+ var year = date.getFullYear();
+ var month = date.getMonth() + 1;
+ var year_options = "";
+ for (var i = 9; i > 0; i--) {
+ year_options += "<option value='" + (year - i) + "'>" + (year - i)
+ + "</option>";
+ }
+ year_options += "<option value='"+year+"' selected='selected'>" + year
+ + "</option>";
+ $("#select_year").html(year_options);
+ $("#select_month").find("option").each(function(row) {
+ var option_month = $(this).val();
+ if (month == option_month) {
+ $(this).attr("selected", true);
+ }
+ });
+
+ function buildOpenDetail(value, row, index){
+ var html = [];
+ if(row.orderType=='服务单'){
+ html[0] = '<a onClick="fnPublci.showServiceOrder(1 , \'' + value +'\')" class="text-primary " >'+value+'</a>'
+ }else{
+ html[0] = '<a onClick="fnPublci.showOrder(1 , \'' + value +'\')" class="text-primary " >'+value+'</a>'
+ }
+
+ return html.join("");
+ }
+
+
+
+
+ $(function() {
+ MTools.autoFullSelect();
+ myGrid = MGrid.initGrid({
+ url : basePath+"/admin/achieve/findDailyInfoNew",
+ showExport : true,
+ showFooter : true,
+ height:'auto',
+ width:'auto',
+ exportDataType : "basic", //basic', 'all', 'selected'.
+ exportTypes : [ 'excel', 'xlsx' ], //导出类型
+ exportOptions : {
+ ignoreColumn : [ 0 ],
+ fileName : "每日单据统计" + MTools.getTime(), //文件名称设置
+ worksheetName : 'Sheet1', //表格工作区名称
+ tableName : '每日单据统计',
+ excelstyles : [ 'background-color', 'color', 'font-size',
+ 'font-weight' ],
+ }
+ });
+
+ $('[data-toggle="tooltip"]').tooltip()
+
+ });
+
+ function footCountTitle(data) {
+ return "<b>合计</b>";
+ };
+ function countColumn(data) {
+ console.log(data)
+ field = this.field;
+ var resultsumQuantity = parseFloat((data.reduce(function(sum, row) {
+ console.log(sum,row[field]);
+ return sum + (+row[field]);
+ }, 0)).toFixed(2));//保留有效数字
+ return "<b>"+resultsumQuantity+"</b>";
+ };
+
+
+ function exportExcel(){
+
+ var param=MForm.toUrlParam("#serchform");
+
+ window.location.href=basePath+"/admin/achieve/exportDailyInfoNew?"+param;
+ }
+
+ </script>
+</body>
+</html>
diff --git a/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html b/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html
index 3bcdc67..0137137 100644
--- a/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html
+++ b/zq-erp/src/main/resources/templates/views/admin/hive/statistics/daily-list-new.html
@@ -11,219 +11,273 @@
<meta http-equiv="Cache-Control" content="no-siteapp" />
<LINK rel="Bookmark" href="../images/favicon.ico">
<!-- 本框架基本脚本和样式 -->
-<script type="text/javascript"
- th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
-<script type="text/javascript" th:src="@{/js/systools/MBase.js}"></script>
-
+<script type="text/javascript" th:src="@{/js/systools/MBaseVue.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/jquery.query.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/moment.min.js}"></script>
+<link rel="stylesheet" th:href="@{/plugin/element-ui/index.css}">
+<link th:href="@{/css/styleOne/style.min.css}" rel="stylesheet" type="text/css"/>
+<script type="text/javascript" th:src="@{/js/function/public.js}"></script>
</head>
-<body class="gray-bg">
-
+<style>
+ .table-style {
+ margin: 20px 0;
+ padding: 20px 10px;
+ border: 1px solid #DCDFE6;
+ background-color: white;
+ }
+ .search-form {
+ background-color: white;
+ padding-top: 10px;
+ padding-left: 20px;
+ padding-bottom: 10px;
+ }
+</style>
+<body>
+<div id="app" style="">
+ <el-row class="search-form">
+ <el-form ref="form" :model="form" inline>
+ <el-form-item label="选择年月">
+ <el-select v-model="form.year" style="width:120px;" placeholder="请选择">
+ <el-option v-for="item in years"
+ :key="item"
+ :label="item"
+ :value="item"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item>
+ <el-select v-model="form.month" style="width:120px;" placeholder="请选择">
+ <el-option v-for="item in months"
+ :key="item"
+ :label="item"
+ :value="item"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item>
+ <el-select v-model="form.day" style="width:120px;" placeholder="请选择">
+ <el-option v-for="item in days"
+ :key="item"
+ :label="item"
+ :value="item"></el-option>
+ </el-select>
+ </el-form-item>
+ <el-form-item label="日期范围">
+ <el-date-picker v-model="form.timeRange"
+ type="datetimerange"
+ range-separator="至"
+ start-placeholder="开始日期"
+ end-placeholder="结束日期">
+ </el-date-picker>
+ </el-form-item>
- <div class="ibox-content">
- <!-- 搜索框部分start -->
- <form class="form-inline" id="serchform">
- <div class="row mb-10">
- <div class="col-sm-8">
- <button onclick="myGrid.serchData()" type="button" class="btn btn-info btn-sm"><i class="fa fa-search" ></i> 搜索</button>
- <button onclick="myGrid.resetForm()" type="button" class="btn btn-default btn-sm"><i class="fa fa-refresh " ></i> 重置</button>
- <button matrix:btn="ygyjbb-exportExcel" onclick="exportExcel()" type="button" class="btn btn-default btn-sm"><i class="fa fa-download" ></i> 导出</button>
- </div>
- </div>
- <div class="form-group mr-20">
- <label >选择年月</label> <select
- class="form-control" name="year" id="select_year">
- <option value="">年份</option>
- <option value="2010">2010</option>
- <option value="2011">2011</option>
- <option value="2012">2012</option>
- <option value="2013">2013</option>
- <option value="2014">2014</option>
- <option value="2015">2015</option>
- <option value="2016">2016</option>
- <option value="2017">2017</option>
- <option value="2018">2018</option>
- <option value="2019">2019</option>
- <option value="2020">2020</option>
- <option value="2021">2021</option>
- </select> <select class="form-control" name="month" id="select_month">
- <option value="01">1</option>
- <option value="02">2</option>
- <option value="03">3</option>
- <option value="04">4</option>
- <option value="05">5</option>
- <option value="06">6</option>
- <option value="07">7</option>
- <option value="08">8</option>
- <option value="09">9</option>
- <option value="10">10</option>
- <option value="11">11</option>
- <option value="12">12</option>
- </select>
- <select class="form-control" name="day" id="select_day">
- <option value="">日</option>
- <th:block th:each="i:${#numbers.sequence(1, 31)}" >
- <option th:value="${i }" th:text="${i }"></option>
- </th:block>
- </select>
- </div>
- <div class="form-group mr-20">
- <label>日期范围</label>
- <input name="beginTime" type="text" class="form-control datetimepicker" id="beginTime">-
- <input name="endTime" type="text" class="form-control datetimepicker" id="endTime">
- </div>
+ <el-form-item label="会员">
+ <el-input v-model="form.vipQueryKey"></el-input>
+ </el-form-item>
- <div class="form-group mr-20">
- <label>会员</label>
- <input autocomplete="off" placeholder="姓名/编号/电话" name="vipQueryKey" type="text" class="form-control" >
- </div>
+ <el-form-item label="业绩归属人">
+ <el-select v-model="form.beaultId" placeholder="请选择">
+ <el-option v-for="item in achieveUsers"
+ :key="item.suId"
+ :label="item.suName"
+ :value="item.suId"></el-option>
+ </el-select>
+ </el-form-item>
- <div class="form-group mr-20">
- <label>业绩归属人</label>
- <select class="form-control autoFull select2"
- th:data-url="@{/admin/getShopStaffByRoleName?roleName=美疗师}"
- data-value="suId"
- data-filed="suName"
- name="beaultId"
- id="beaultId">
- <option value="">--请选择--</option>
- </select>
- </div>
+ <el-form-item label="门店">
+ <el-select v-model="form.shopId" placeholder="请选择所属门店">
+ <el-option v-for="item in shopList"
+ :key="item.id"
+ :label="item.shopName"
+ :value="item.id">
+ </el-option>
+ </el-select>
+ </el-form-item>
- <div class="form-group mr-20">
- <label>门店</label>
- <select class="form-control autoFull" data-filed="shopName" name="shopId" id="shopId"
- th:data-url="@{/admin/shopInfo/findAllWithPermi}">
- <option value=''>--请选择部所属门店--</option>
- </select>
- </div>
- </form>
+ <el-button type="primary" @click="search" >搜索</el-button>
+ <el-button @click="resetForm('form')">重置</el-button>
+ <el-button type="warning" @click="exportExcel">导出</el-button>
+ </el-form>
-
- <table id="mgrid">
- <thead>
- <tr>
- <th data-formatter="MGrid.indexfn" data-align="center"
- data-width="30px" data-footer-formatter="footCountTitle">序号</th>
- <th data-field="datatime">时间</th>
- <th data-field="orderNo" data-formatter="buildOpenDetail" >订单编号</th>
- <th data-field="orderType">订单类型</th>
- <th data-field="vipName">会员姓名</th>
- <th data-field="proName">产品</th>
- <th data-field="cateName">产品分类</th>
- <th data-field="zkTotal" data-footer-formatter="countColumn">订单金额</th>
- <th data-field="goodsCash" data-footer-formatter="countColumn">订单业绩</th>
- <th data-field="payMethod">收款方式</th>
- <th data-field="achieveType">业绩类型</th>
- <th data-field="meiliao">员工</th>
- <th data-field="hisConsume" data-footer-formatter="countColumn">本金消耗
- <i data-toggle="tooltip" data-placement="top" title="消耗金额:客户做服务时划扣的本金" class="fa fa-question-circle"></i>
- </th>
- <th data-field="freeConsume" data-footer-formatter="countColumn">赠送消耗
- <i data-toggle="tooltip" data-placement="top" title="赠送消耗:客户做服务时划扣的赠送金额" class="fa fa-question-circle"></i>
- </th>
- <th data-field="projPercentage" data-footer-formatter="countColumn">服务提成
- <i data-toggle="tooltip" data-placement="top" title="服务提成:为美疗师手动设置的项目服务提成" class="fa fa-question-circle"></i>
- </th>
- <th data-field="numberOfPeople" data-footer-formatter="countColumn">人头</th>
- <th data-field="projNum" data-footer-formatter="countColumn">项目个数</th>
- <th data-field="projTime" data-footer-formatter="countColumn">项目时间</th>
- <th data-field="guwen">操作人</th>
- <th data-field="shopName">门店</th>
-
- </tr>
- </thead>
- </table>
- </div>
-
- <script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script>
- <script type="text/javascript" th:src="@{/js/function/public.js}"></script>
- <script type="text/javascript">
- var myGrid;
- var initParam = {
- format : "yyyy-mm-dd hh:ii", //默认显示年与日,如果想显示十分秒:"yyyy-mm-dd hh:ii:ss"
- minView: "hour", //"month",只显示年月日的选择,不会再跳转去选择时分秒;如果想要选择时分秒的:"hour"
+ </el-row>
+ <el-row class="table-style">
+ <el-table :data="tableData" style="width: 100%">
+ <el-table-column type="index" width="30"></el-table-column>
+ <el-table-column prop="datatime" width="150" label="时间"></el-table-column>
+ <el-table-column prop="orderNo" width="180" label="订单编号">
+ <template slot-scope="scope">
+ <el-link @click="jumpOrder(scope.row.orderType, scope.row.orderNo)" type="primary">{{scope.row.orderNo}}</el-link>
+ </template>
+ </el-table-column>
+ <el-table-column prop="orderType" label="订单类型"></el-table-column>
+ <el-table-column prop="vipName" label="会员姓名"></el-table-column>
+ <el-table-column prop="proName" label="产品" width="200"></el-table-column>
+ <el-table-column prop="cateName" label="产品分类"></el-table-column>
+ <el-table-column prop="zkTotal" label="订单金额"></el-table-column>
+<!-- <el-table-column prop="goodsCash" label="订单业绩"></el-table-column>-->
+ <el-table-column prop="meiliao" label="员工"></el-table-column>
+ <el-table-column v-for="(item, index) in customColumns" width="120" :key="index" :label="item.value">
+ <template slot-scope="scope">
+ <span v-if="item.value == scope.row.achieveType">{{scope.row.goodsCash}}</span>
+ </template>
+ </el-table-column>
+ <el-table-column prop="hisConsume" label="本金消耗"></el-table-column>
+ <el-table-column prop="freeConsume" label="赠送消耗"></el-table-column>
+ <el-table-column prop="projPercentage" label="服务提成"></el-table-column>
+ <el-table-column prop="numberOfPeople" label="人头"></el-table-column>
+ <el-table-column prop="projNum" label="项目个数"></el-table-column>
+ <el-table-column prop="projTime" label="服务时间"></el-table-column>
+ <el-table-column prop="guwen" label="操作人"></el-table-column>
+ <el-table-column prop="shopName" label="门店"></el-table-column>
+ </el-table>
+ <el-row style="margin-top: 10px;">
+ <el-pagination
+ @size-change="handleSizeChange"
+ @current-change="handleCurrentChange"
+ :current-page="page.currentPage"
+ :page-sizes="[10, 20, 30, 50]"
+ :page-size="page.size"
+ layout="total, sizes, prev, pager, next, jumper"
+ :total="page.total">
+ </el-pagination>
+ </el-row>
+ </el-row>
+</div>
+<script type="text/javascript" th:src="@{/plugin/layer/layer.js}"></script>
+<script type="text/javascript" th:src="@{/js/systools/AjaxProxyVue.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/vue.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/element-ui/index.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/moment.min.js}"></script>
+<script type="text/javascript" th:src="@{/js/systools/MJsBase.js}"></script>
+<script type="text/javascript" th:inline="javascript">
+ var vue = new Vue({
+ el : "#app",
+ data : {
+ tableData : [],
+ customColumns : [],
+ shopList : [],
+ achieveUsers : [],
+ years : [2010, 2011, 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021],
+ months : ["01", "02", "03", "04", "05", "06", "07", "08", "09", "10", "11", "12"],
+ days : [],
+ form : {
+ year : '',
+ month : '',
+ day : '',
+ timeRange : '',
+ vipQueryKey : '',
+ beaultId : '',
+ shopId : ''
+ },
+ page : {
+ currentPage : 1,
+ size : 10,
+ total : 0
}
- MTools.ininDatetimepicker(initParam);
- //限制结束时间不小于开始时间
- MTools.limitStartEndTime({});
-
- var date = new Date();
- var year = date.getFullYear();
- var month = date.getMonth() + 1;
- var year_options = "";
- for (var i = 9; i > 0; i--) {
- year_options += "<option value='" + (year - i) + "'>" + (year - i)
- + "</option>";
- }
- year_options += "<option value='"+year+"' selected='selected'>" + year
- + "</option>";
- $("#select_year").html(year_options);
- $("#select_month").find("option").each(function(row) {
- var option_month = $(this).val();
- if (month == option_month) {
- $(this).attr("selected", true);
- }
- });
+ },
+ created : function() {
+ this.initDays();
+ this.queryCustomColumns();
+ this.queryShops();
+ this.queryAchieveUsers();
+ },
+ methods : {
+ queryTableData () {
+ let _this = this;
+ var form = _this.form;
+ var page = _this.page;
+ var params = _this.form;
+ params.limit = page.size;
+ params.offset = (page.currentPage - 1) * page.size;
- function buildOpenDetail(value, row, index){
- var html = [];
- if(row.orderType=='服务单'){
- html[0] = '<a onClick="fnPublci.showServiceOrder(1 , \'' + value +'\')" class="text-primary " >'+value+'</a>'
- }else{
- html[0] = '<a onClick="fnPublci.showOrder(1 , \'' + value +'\')" class="text-primary " >'+value+'</a>'
- }
-
- return html.join("");
- }
-
-
-
-
- $(function() {
- MTools.autoFullSelect();
- myGrid = MGrid.initGrid({
- url : basePath+"/admin/achieve/findDailyInfoNew",
- showExport : true,
- showFooter : true,
- height:'auto',
- width:'auto',
- exportDataType : "basic", //basic', 'all', 'selected'.
- exportTypes : [ 'excel', 'xlsx' ], //导出类型
- exportOptions : {
- ignoreColumn : [ 0 ],
- fileName : "每日单据统计" + MTools.getTime(), //文件名称设置
- worksheetName : 'Sheet1', //表格工作区名称
- tableName : '每日单据统计',
- excelstyles : [ 'background-color', 'color', 'font-size',
- 'font-weight' ],
+ if (form.timeRange) {
+ params.beginTime = form.timeRange?moment(form.timeRange[0]).format("YYYY-MM-DD HH:mm"):'';
+ params.endTime = form.timeRange?moment(form.timeRange[1]).format("YYYY-MM-DD HH:mm"):'';
}
- });
-
- $('[data-toggle="tooltip"]').tooltip()
-
- });
-
- function footCountTitle(data) {
- return "<b>合计</b>";
- };
- function countColumn(data) {
- console.log(data)
- field = this.field;
- var resultsumQuantity = parseFloat((data.reduce(function(sum, row) {
- console.log(sum,row[field]);
- return sum + (+row[field]);
- }, 0)).toFixed(2));//保留有效数字
- return "<b>"+resultsumQuantity+"</b>";
- };
-
-
- function exportExcel(){
-
- var param=MForm.toUrlParam("#serchform");
-
- window.location.href=basePath+"/admin/achieve/exportDailyInfoNew?"+param;
+ $.AjaxProxy({
+ p:params
+ }).invoke(basePath + "/admin/achieve/findDailyInfoNew", function (loj) {
+ _this.tableData = loj.getValue("rows");
+ _this.page.total = loj.getResult().total;
+ });
+ },
+ queryCustomColumns() {
+ let _this = this;
+ AjaxProxy.requst({
+ app: _this,
+ url: basePath + '/admin/customerDictionary/getListByParentCode/YJLX',
+ callback: function (data) {
+ _this.customColumns = data.rows;
+ _this.queryTableData();
+ }
+ });
+ },
+ queryShops() {
+ let _this = this;
+ AjaxProxy.requst({
+ app: _this,
+ url: basePath + '/admin/shopInfo/findAllWithPermi',
+ callback: function (data) {
+ _this.shopList = data.rows;
+ }
+ });
+ },
+ queryAchieveUsers() {
+ let _this = this;
+ AjaxProxy.requst({
+ app: _this,
+ url: basePath + '/admin/getShopStaffByRoleName?roleName=美疗师',
+ callback: function (data) {
+ _this.achieveUsers = data.rows;
+ }
+ });
+ },
+ resetForm(formName) {
+ // this.$refs[formName].resetFields();
+ this.form = {
+ timeRange : '',
+ vipQueryKey : '',
+ beaultId : '',
+ shopId : ''
+ }
+ },
+ search() {
+ this.queryTableData();
+ },
+ handleSizeChange(val) {
+ this.page.size = val;
+ this.queryTableData();
+ },
+ handleCurrentChange(val) {
+ this.page.currentPage = val;
+ this.queryTableData();
+ },
+ initDays() {
+ let _this = this;
+ for (var i = 1; i <= 31 ; i++) {
+ _this.days.push(i);
+ }
+ },
+ getRequestParam() {
+ var form = this.form;
+ var params = form;
+ if (form.timeRange) {
+ params.beginTime = form.timeRange?moment(form.timeRange[0]).format("YYYY-MM-DD HH:mm"):'';
+ params.endTime = form.timeRange?moment(form.timeRange[1]).format("YYYY-MM-DD HH:mm"):'';
+ }
+ return params;
+ },
+ exportExcel() {
+ window.location.href=basePath+"/admin/achieve/exportDailyInfoNew?"+MTools.jsonToUrlParam(this.getRequestParam());
+ },
+ jumpOrder(type, value) {
+ if(type=='服务单') {
+ fnPublci.showServiceOrder(1, value);
+ } else {
+ fnPublci.showOrder(1, value);
+ }
+ }
}
-
- </script>
+ });
+</script>
</body>
</html>
diff --git a/zq-erp/src/main/resources/templates/views/admin/shop/shopProduct-form.html b/zq-erp/src/main/resources/templates/views/admin/shop/shopProduct-form.html
index dec22fc..3d20568 100644
--- a/zq-erp/src/main/resources/templates/views/admin/shop/shopProduct-form.html
+++ b/zq-erp/src/main/resources/templates/views/admin/shop/shopProduct-form.html
@@ -42,7 +42,7 @@
<div class="panel-heading">基本信息</div>
<div class="panel-body">
<div class="form-group">
- <label class="col-sm-2 control-label">分类ID
+ <label class="col-sm-2 control-label">产品分类
<span class="text-danger">*</span>
</label>
<div class="col-sm-4">
@@ -69,6 +69,40 @@
maxLength="1000" dataType="*"
th:value="${obj.briefIntroduction}" nullmsg="产品简介不能为空">
</div>
+ <label class="col-sm-2 control-label">是否可分销
+ <span class="text-danger">*</span>
+ </label>
+ <div class="col-sm-4">
+ <select th:field="${obj.ableSales}" class="form-control select2 " size="1"
+ name="ableSales"
+ id="ableSales" style="width: 100%">
+ <option value="1" th:selected="${obj.ableSales == '1'}">可分销</option>
+ <option value="2" th:selected="${obj.ableSales == '2'}">不可分销</option>
+ </option>
+ </select>
+ </div>
+ </div>
+ <div class="form-group">
+ <label class="col-sm-2 control-label">上架卖场
+ <span class="text-danger">*</span>
+ </label>
+ <div class="col-sm-4">
+ <select th:field="${obj.mallType}" class="form-control select2 " size="1"
+ name="mallType"
+ id="mallType" style="width: 100%">
+ <option value="1" th:selected="${obj.mallType == '1'}">微商城</option>
+ <option value="2" th:selected="${obj.mallType == '2'}">积分商城</option>
+ </option>
+ </select>
+ </div>
+ <label class="col-sm-2 control-label">积分商城分类
+ <span class="text-danger">*</span>
+ </label>
+ <div class="col-sm-4">
+ <select class="form-control select2 " size="1" name="scoreCategoryId"
+ id="scoreCategoryId" style="width: 100%">
+ </select>
+ </div>
</div>
<div class="form-group">
@@ -87,14 +121,7 @@
dataType="n" nullmsg="展示销量不能为空"
th:value="${obj.dsVolume}" errormsg="请填写数字">
</div>
- <!--<label class="col-sm-2 control-label">运费
- <span class="text-danger">*</span>
- </label>
- <div class="col-sm-4">
- <input autocomplete="off" type="text" class="form-control" name="carriage"
- maxLength="250" datatype="*"
- th:value="${obj.carriage}" nullmsg="运费不能为空">
- </div>-->
+
</div>
<div class="form-group">
<label class="col-sm-2 control-label">限购数量
@@ -226,11 +253,12 @@
<th>规格图片地址<span class="text-danger">*</span></th>
<th>库存<span class="text-danger">*</span></th>
<th>价格<span class="text-danger">*</span></th>
- <th>积分</th>
+ <th>消费可得积分</th>
<th>关联ERP产品</th>
<th>排序</th>
<th>推广提成</th>
<th>邀请提成</th>
+ <th>兑换所需积分</th>
<th>操作</th>
</tr>
</table>
@@ -395,6 +423,9 @@
});
$(function () {
initSeclect("#parentId",[[${obj.categoryId}]]);
+ initScoreSeclect("#scoreCategoryId",[[${obj.scoreCategoryId}]]);
+
+
initAttrSeclect("#attrIds");
$("#mobileDetails").html(obj.mobileDetails);
$("#pcDetails").html(obj.pcDetails);
@@ -538,6 +569,10 @@
if (invitationPrice == null || typeof invitationPrice == 'undefined') {
invitationPrice = "";
}
+ var scorePrice = shopSkus[c].scorePrice;
+ if (scorePrice == null || typeof scorePrice == 'undefined') {
+ scorePrice = "";
+ }
var html=
@@ -554,6 +589,7 @@
+'<td><input autocomplete="off" type="text" class="form-control" value="'+sort+'" name=""></td>'
+'<td><input autocomplete="off" type="text" class="form-control" value="'+sealesPrice+'" name=""></td>'
+'<td><input autocomplete="off" type="text" class="form-control" value="'+invitationPrice+'" name=""></td>'
+ +'<td><input autocomplete="off" type="text" class="form-control" value="'+scorePrice+'" name=""></td>'
+'<td><i class="fa fa-trash form-control-static" onclick="delThis(\''+trId+'\')"></i></td>'
+'</tr>';
$("#skutable").find("tbody").append(html);
@@ -668,6 +704,22 @@
});
});
}
+ //初始化分积分商城分类ID
+ function initScoreSeclect(seler, def) {
+ $.AjaxProxy().invoke(basePath + "/admin/shopProductAttribute/showSonAttribute?attrCode=jfsccpfl&status=1",
+ function (loj) {
+ $(seler).createSelectTree(
+ loj.attr("result").rows,
+ {
+ id: "attrId",
+ parent: "parentId",
+ value: "attrName",
+ append: false,
+ defaultValue: def,
+ defaultHtml: ''
+ });
+ });
+ }
//添加图片节点
function addImgTr() {
@@ -724,68 +776,72 @@
if (i != 0) {
var tds = $(this).find("td");
var length = tds.length - 1;
- var id = tds.eq(length - 10).find("input").val();
+ var id = tds.eq(length - 11).find("input").val();
if(id == null){
id ="";
}
sku.id = id;
//规格名称
- var name = tds.eq(length - 9).find("input").val();
+ var name = tds.eq(length - 10).find("input").val();
if(name == null){
name = "";
}
sku.name = name;
//图片地址
- var path = tds.eq(length - 8).find("img").attr("src");
+ var path = tds.eq(length - 9).find("img").attr("src");
if(path == null){
path = "";
}
sku.imgPath = path;
//库存
- var stock = tds.eq(length - 7).find("input").val();
+ var stock = tds.eq(length - 8).find("input").val();
if(stock == ""){
stock = 0;
}
sku.stock = stock;
//价格
- var price = tds.eq(length -6).find("input").val();
+ var price = tds.eq(length -7).find("input").val();
if(price == ""){
price =0;
}
sku.price = price;
//积分
- var score = tds.eq(length - 5).find("input").val();
+ var score = tds.eq(length - 6).find("input").val();
if(score == ""){
score = 0;
}
sku.score = score;
//品种编码
- var stockCode = tds.eq(length - 4).find("input").val();
+ var stockCode = tds.eq(length - 5).find("input").val();
if(stockCode == null || typeof stockCode == 'undefined'){
stockCode = '';
}
sku.stockCode = stockCode;
//排序
- var sort = tds.eq(length - 3).find("input").val();
+ var sort = tds.eq(length - 4).find("input").val();
if(sort == ""){
sort = 0;
}
sku.sort = sort;
//推广提成
- var sealesPrice = tds.eq(length - 2).find("input").val();
+ var sealesPrice = tds.eq(length - 3).find("input").val();
sku.sealesPrice = sealesPrice;
//邀请提成
- var invitationPrice = tds.eq(length - 1).find("input").val();
+ var invitationPrice = tds.eq(length - 2).find("input").val();
sku.invitationPrice = invitationPrice;
+
+ //兑换所需积分
+ var scorePrice = tds.eq(length - 1).find("input").val();
+ sku.scorePrice = scorePrice;
skus.push(sku);
}
@@ -793,6 +849,7 @@
return skus;
}
+
/*验证sku表格中的参数*/
function getSkusValues() {
@@ -803,7 +860,7 @@
if (i != 0) {
var tds = $(this).find("td");
var length = tds.length - 1;
- var name = tds.eq(length - 9).find("input").val();
+ var name = tds.eq(length - 10).find("input").val();
if(name == ""){
layer.msg("请填写规格名称",{
icon : 2,
@@ -821,7 +878,7 @@
return false;
}
- var stock = tds.eq(length -7).find("input").val();
+ var stock = tds.eq(length -8).find("input").val();
if(stock == ""){
layer.msg("请填写库存",{
icon : 2,
@@ -830,7 +887,7 @@
flag = true;
return false;
}
- var price = tds.eq(length - 6).find("input").val();
+ var price = tds.eq(length - 7 ).find("input").val();
if(price == ""){
layer.msg("请填写价格",{
icon : 2,
diff --git a/zq-erp/src/main/resources/templates/views/admin/shop/shopProduct-list.html b/zq-erp/src/main/resources/templates/views/admin/shop/shopProduct-list.html
index a7e7d16..e07f5e5 100644
--- a/zq-erp/src/main/resources/templates/views/admin/shop/shopProduct-list.html
+++ b/zq-erp/src/main/resources/templates/views/admin/shop/shopProduct-list.html
@@ -35,10 +35,18 @@
<input autocomplete="off" id="search-text" name="title" placeholder="输入查询关键词"
type="text" class="form-control">
</div>
-
+ <div class="form-group">
+ <label class="control-label">上架卖场</label>
+ <select style="width:100px;" class="form-control select2" size="1"
+ name="mallType" >
+ <option value="">请选择</option>
+ <option value="1">微商城</option>
+ <option value="2">积分商城</option>
+ </select>
+ </div>
<div class="form-group">
<label class="control-label">是否上架</label>
- <select style="width:200px;" class="form-control select2" size="1"
+ <select style="width:100px;" class="form-control select2" size="1"
name="status"
id="status">
<option value="">请选择</option>
@@ -47,10 +55,10 @@
</select>
</div>
<div class="form-group">
- <label class="control-label">是否为服务</label>
- <select style="width:200px;" class="form-control select2" size="1"
- name="isService"
- id="isService">
+ <label class="control-label">是否可分销</label>
+ <select style="width:100px;" class="form-control select2" size="1"
+ name="ableSales"
+ id="ableSales">
<option value="">请选择</option>
<option value="1">是</option>
<option value="2">否</option>
@@ -114,12 +122,12 @@
<tr>
<th data-checkbox="true"></th>
<th data-formatter="MGrid.indexfn" data-align="center">序号</th>
- <th data-field="id" data-align="center">产品ID</th>
+ <th data-field="mallType" data-align="center" data-formatter="mallType">上架卖场</th>
<th data-field="title" data-align="center">产品名称</th>
<th data-field="imgMobile" data-align="center" data-formatter="MGrid.getImage">产品图片</th>
<th data-field="attrValues" data-align="center" data-formatter="formatAttr">产品属性</th>
<th data-field="price" data-align="center">价格</th>
- <th data-field="score" data-align="center">积分</th>
+ <th data-field="scorePrice" data-align="center">兑换所需积分</th>
<th data-field="status" data-align="center" data-formatter="isStatus">是否上架</th>
<th data-field="rsVolume" data-align="center">真实销量</th>
@@ -275,7 +283,7 @@
//初始化属性下拉选
function initAttrsSeclect(seler, def) {
console.log(1);
- $.AjaxProxy().invoke(basePath + "/admin/shopProductAttribute/showSonAttribute?attrCode=cpfl",
+ $.AjaxProxy().invoke(basePath + "/admin/shopProductAttribute/showSonAttribute?attrCode=productColumn",
function (loj) {
$(seler).createSelectTree(
loj.attr("result").rows,
@@ -290,6 +298,16 @@
});
}
+ function mallType(value, row, index) {
+ var html = "";
+ if (value ==1) {
+ html="微商城"
+ }else{
+ html="积分商城"
+ }
+ return html;
+ }
+
/**
* 格式化属性
*/
diff --git a/zq-erp/src/main/resources/templates/views/common/showprojException.html b/zq-erp/src/main/resources/templates/views/common/showprojException.html
new file mode 100644
index 0000000..4fca1cd
--- /dev/null
+++ b/zq-erp/src/main/resources/templates/views/common/showprojException.html
@@ -0,0 +1,51 @@
+<!DOCTYPE HTML>
+<html xmlns:th="http://www.thymeleaf.org" xmlns:matrix="http://www.w3.org/1999/xhtml">
+<head>
+ <meta charset="utf-8">
+ <META HTTP-EQUIV="Pragma" CONTENT="no-cache">
+ <meta name="renderer" content="webkit|ie-comp|ie-stand">
+ <meta http-equiv="X-UA-Compatible" content="IE=edge,chrome=1">
+ <meta name="viewport"
+ content="width=device-width,initial-scale=1,minimum-scale=1.0,maximum-scale=1.0,user-scalable=no"/>
+ <meta http-equiv="Cache-Control" content="no-siteapp"/>
+ <LINK rel="Bookmark" href="../images/favicon.ico">
+ <!-- 本框架基本脚本和样式 -->
+
+ <link rel="stylesheet" th:href="@{/plugin/bootstrap-3.3.5/css/bootstrap.min.css}">
+ <link th:href="@{/css/styleOne/style.min.css}" rel="stylesheet" type="text/css"/>
+</head>
+<body>
+<div class="ibox-content" id="app">
+ <table class="table table-striped table-bordered" style="width: 800px;">
+ <tr>
+ <td>ID</td>
+ <td th:text="${obj.id}" ></td>
+ <td >姓名</td>
+ <td th:text="${obj.owner}" ></td>
+ </tr>
+ <tr>
+ <td >异常类型</td>
+ <td th:text="${obj.simpleMsg}" ></td>
+ <td >发生时间</td>
+ <td th:text="${#dates.format(obj.createTime, 'yyyy-MM-dd HH:mm:sss')}" >
+ </tr>
+ <tr>
+ <td >访问地址</td>
+ <td th:text="${obj.cause}" ></td>
+ <td >mdc</td>
+ <td th:text="${obj.mdc}" ></td>
+ </tr>
+ </table>
+ <pre th:text="${obj.errorMsg}" ></pre>
+
+</div>
+<script type="text/javascript" th:src="@{/js/plugin/jquery-2.1.4.min.js}"></script>
+<script type="text/javascript" th:src="@{/js/plugin/jquery.query.js}"></script>
+<script type="text/javascript" th:src="@{/plugin/bootstrap-3.3.5/js/bootstrap.min.js}"></script>
+
+<script type="text/javascript">
+
+
+</script>
+</body>
+</html>
\ No newline at end of file
--
Gitblit v1.9.1