This commit is contained in:
parent
c230d6b179
commit
69938dc39f
|
|
@ -168,5 +168,7 @@ public class DevInfoVo extends DevInfo {
|
||||||
@ApiModelProperty(value = "订单数")
|
@ApiModelProperty(value = "订单数")
|
||||||
private Integer orderNum;
|
private Integer orderNum;
|
||||||
|
|
||||||
|
private Long orderId;
|
||||||
|
|
||||||
|
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -229,12 +229,6 @@ public interface DevInfoMapper {
|
||||||
*/
|
*/
|
||||||
List<DevInfoVo> getLeaseDevList(DevInfoVo devInfo);
|
List<DevInfoVo> getLeaseDevList(DevInfoVo devInfo);
|
||||||
|
|
||||||
/**
|
|
||||||
* 查询装备对应所属公司
|
|
||||||
* @return
|
|
||||||
*/
|
|
||||||
List<DevInfoVo> getCompanyList();
|
|
||||||
|
|
||||||
|
|
||||||
/**
|
/**
|
||||||
* 查询装备对应所属公司
|
* 查询装备对应所属公司
|
||||||
|
|
@ -244,6 +238,8 @@ public interface DevInfoMapper {
|
||||||
|
|
||||||
List<DevInfoVo> selectDevInfoHotListRatio(DevInfoVo devInfoVo);
|
List<DevInfoVo> selectDevInfoHotListRatio(DevInfoVo devInfoVo);
|
||||||
|
|
||||||
List<DevInfoVo> getOrderByCompanyId(int companyId);
|
List<DevInfoVo> getOrderByCompanyId(String companyId);
|
||||||
|
|
||||||
|
DevInfoVo getBuyCompanyList(DevInfoVo infoVo);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
|
||||||
|
|
@ -8,7 +8,6 @@ import com.bonus.material.device.domain.vo.DevInfoVo;
|
||||||
import com.bonus.material.device.mapper.DevInfoMapper;
|
import com.bonus.material.device.mapper.DevInfoMapper;
|
||||||
import com.bonus.material.device.service.DevInfoService;
|
import com.bonus.material.device.service.DevInfoService;
|
||||||
import com.bonus.material.largeScreen.entity.OrderData;
|
import com.bonus.material.largeScreen.entity.OrderData;
|
||||||
import com.bonus.material.largeScreen.entity.OrderDto;
|
|
||||||
import com.bonus.material.largeScreen.service.LargeScreenService;
|
import com.bonus.material.largeScreen.service.LargeScreenService;
|
||||||
import com.bonus.material.lease.domain.MaLeaseInfo;
|
import com.bonus.material.lease.domain.MaLeaseInfo;
|
||||||
import com.bonus.material.lease.mapper.MaLeaseInfoMapper;
|
import com.bonus.material.lease.mapper.MaLeaseInfoMapper;
|
||||||
|
|
@ -167,64 +166,43 @@ public class LargeScreenController {
|
||||||
|
|
||||||
@ApiOperation("租赁装备数及订单数")
|
@ApiOperation("租赁装备数及订单数")
|
||||||
@GetMapping("/getCompanyNum")
|
@GetMapping("/getCompanyNum")
|
||||||
public AjaxResult getCompanyNum() {
|
public AjaxResult getCompanyNum(DevInfoVo dto) {
|
||||||
// 查询装备对应订单数
|
List<DevInfoVo> infoVos = new ArrayList<>();
|
||||||
List<DevInfoVo> list = devInfoMapper.getCompanyNum();
|
// 查询公司对应订单数
|
||||||
// 查询装备对应所属公司
|
List<DevInfoVo> list = devInfoMapper.getOrderByCompanyId(dto.getCompanyId());
|
||||||
List<DevInfoVo> companyList = devInfoMapper.getCompanyList();
|
|
||||||
// 使用 Map 存储每个公司 ID 对应的订单总数
|
|
||||||
Map<String, Integer> orderNumMap = new HashMap<>();
|
Map<String, Integer> orderNumMap = new HashMap<>();
|
||||||
for (DevInfoVo devInfoVo : list) {
|
if (CollectionUtil.isNotEmpty(list)) {
|
||||||
String companyId = devInfoVo.getCompanyId();
|
for (DevInfoVo infoVo : list) {
|
||||||
// 如果 Map 中已经存在该公司 ID,则累加订单数;否则,将当前订单数作为初始值
|
// 根据订单id查询所买公司id和名称
|
||||||
orderNumMap.put(companyId, orderNumMap.getOrDefault(companyId, 0) + devInfoVo.getOrderNum());
|
DevInfoVo infoVo1 = devInfoMapper.getBuyCompanyList(infoVo);
|
||||||
}
|
// 如果 Map 中已经存在该公司 ID,则数量增加1
|
||||||
if (CollectionUtil.isNotEmpty(companyList)) {
|
orderNumMap.compute(infoVo1.getCompanyId(), (key, value) -> value == null ? 1 : value + 1);
|
||||||
for (DevInfoVo infoVo : companyList) {
|
|
||||||
String companyId = infoVo.getCompanyId();
|
|
||||||
// 从 Map 中获取该公司 ID 对应的订单总数
|
|
||||||
Integer orderNum = orderNumMap.getOrDefault(companyId, 0);
|
|
||||||
infoVo.setOrderNum(orderNum);
|
|
||||||
}
|
}
|
||||||
// 根据 orderNum 降序排序,并取前 9 个元素
|
}
|
||||||
companyList = companyList.stream()
|
// 根据orderNumMap去遍历查询公司名称
|
||||||
|
if (CollectionUtil.isNotEmpty(orderNumMap)) {
|
||||||
|
for (Map.Entry<String, Integer> entry : orderNumMap.entrySet()) {
|
||||||
|
DevInfoVo vo = new DevInfoVo();
|
||||||
|
DevInfoVo devInfoVo = devInfoMapper.selectCompanyById(entry.getKey());
|
||||||
|
vo.setCompanyId(devInfoVo.getCompanyId());
|
||||||
|
vo.setCompanyName(devInfoVo.getCompanyName());
|
||||||
|
vo.setOrderNum(entry.getValue());
|
||||||
|
infoVos.add(vo);
|
||||||
|
}
|
||||||
|
if (CollectionUtil.isNotEmpty(list)) {
|
||||||
|
DevInfoVo infoVo = list.get(0);
|
||||||
|
infoVo.setOrderNum(list.size());
|
||||||
|
infoVos.add(0, infoVo);
|
||||||
|
}
|
||||||
|
// 根据 orderNum 降序排序,并取前 10 个元素
|
||||||
|
infoVos = infoVos.stream()
|
||||||
.sorted((vo1, vo2) -> Integer.compare(vo2.getOrderNum(), vo1.getOrderNum()))
|
.sorted((vo1, vo2) -> Integer.compare(vo2.getOrderNum(), vo1.getOrderNum()))
|
||||||
.limit(9)
|
.limit(10)
|
||||||
.collect(Collectors.toList());
|
.collect(Collectors.toList());
|
||||||
}
|
}
|
||||||
return AjaxResult.success(companyList);
|
return AjaxResult.success(infoVos);
|
||||||
}
|
}
|
||||||
|
|
||||||
/* @ApiOperation("租赁装备数及订单数")
|
|
||||||
@GetMapping("/getCompanyNum")
|
|
||||||
public AjaxResult getCompanyNum(int companyId) {
|
|
||||||
// 查询装备对应订单数
|
|
||||||
List<DevInfoVo> list = devInfoMapper.getOrderByCompanyId(companyId);
|
|
||||||
// 查询装备对应所属公司
|
|
||||||
List<DevInfoVo> companyList = devInfoMapper.getCompanyList();
|
|
||||||
// 使用 Map 存储每个公司 ID 对应的订单总数
|
|
||||||
Map<String, Integer> orderNumMap = new HashMap<>();
|
|
||||||
for (DevInfoVo devInfoVo : list) {
|
|
||||||
String companyId = devInfoVo.getCompanyId();
|
|
||||||
// 如果 Map 中已经存在该公司 ID,则累加订单数;否则,将当前订单数作为初始值
|
|
||||||
orderNumMap.put(companyId, orderNumMap.getOrDefault(companyId, 0) + devInfoVo.getOrderNum());
|
|
||||||
}
|
|
||||||
if (CollectionUtil.isNotEmpty(companyList)) {
|
|
||||||
for (DevInfoVo infoVo : companyList) {
|
|
||||||
String companyId = infoVo.getCompanyId();
|
|
||||||
// 从 Map 中获取该公司 ID 对应的订单总数
|
|
||||||
Integer orderNum = orderNumMap.getOrDefault(companyId, 0);
|
|
||||||
infoVo.setOrderNum(orderNum);
|
|
||||||
}
|
|
||||||
// 根据 orderNum 降序排序,并取前 9 个元素
|
|
||||||
companyList = companyList.stream()
|
|
||||||
.sorted((vo1, vo2) -> Integer.compare(vo2.getOrderNum(), vo1.getOrderNum()))
|
|
||||||
.limit(9)
|
|
||||||
.collect(Collectors.toList());
|
|
||||||
}
|
|
||||||
return AjaxResult.success(companyList);
|
|
||||||
}*/
|
|
||||||
|
|
||||||
// @ApiOperation("订单数据")
|
// @ApiOperation("订单数据")
|
||||||
// @GetMapping("/orderData")
|
// @GetMapping("/orderData")
|
||||||
// public AjaxResult getOrderData() {
|
// public AjaxResult getOrderData() {
|
||||||
|
|
|
||||||
|
|
@ -1,5 +1,9 @@
|
||||||
package com.bonus.material.notice.service.impl;
|
package com.bonus.material.notice.service.impl;
|
||||||
|
|
||||||
|
import cn.hutool.json.JSONObject;
|
||||||
|
import com.ah.sbd.SmsTool;
|
||||||
|
import com.ah.sbd.utils.param.SmsParam;
|
||||||
|
import com.bonus.common.biz.constant.BmConfigItems;
|
||||||
import com.bonus.common.biz.enums.HttpCodeEnum;
|
import com.bonus.common.biz.enums.HttpCodeEnum;
|
||||||
import com.bonus.common.biz.enums.NoticeSmsEnum;
|
import com.bonus.common.biz.enums.NoticeSmsEnum;
|
||||||
import com.bonus.common.core.utils.DateUtils;
|
import com.bonus.common.core.utils.DateUtils;
|
||||||
|
|
@ -130,9 +134,10 @@ public class NoticeServiceImpl implements NoticeService {
|
||||||
phoneNumber = Sm4Utils.decrypt(info.getPhoneNumber());
|
phoneNumber = Sm4Utils.decrypt(info.getPhoneNumber());
|
||||||
}
|
}
|
||||||
// 根据电话号码数量发送短信
|
// 根据电话号码数量发送短信
|
||||||
//JSONObject sendResult = SmsTool.sendSms(new SmsParam(phoneNumber, notice.getNoticeContent()), BmConfigItems.ANHUI_COMPANY_SMS_KEY);
|
JSONObject sendResult = SmsTool.sendSms(new SmsParam(phoneNumber, notice.getNoticeContent()), BmConfigItems.ANHUI_COMPANY_SMS_KEY);
|
||||||
String sendResult = SmsUtils.smsToken(phoneNumber, notice.getNoticeContent(), "");
|
// 公司内部短信发送
|
||||||
if (StringUtils.isBlank(sendResult)) {
|
//String sendResult = SmsUtils.smsToken(phoneNumber, notice.getNoticeContent(), "");
|
||||||
|
if (StringUtils.isBlank(sendResult.toString())) {
|
||||||
return AjaxResult.error("短信发送失败");
|
return AjaxResult.error("短信发送失败");
|
||||||
} else {
|
} else {
|
||||||
System.out.println("短信发送成功:" + sendResult);
|
System.out.println("短信发送成功:" + sendResult);
|
||||||
|
|
@ -195,9 +200,9 @@ public class NoticeServiceImpl implements NoticeService {
|
||||||
phoneNumber = Sm4Utils.decrypt(notice1.getPhoneNumber());
|
phoneNumber = Sm4Utils.decrypt(notice1.getPhoneNumber());
|
||||||
}
|
}
|
||||||
// 根据电话号码数量发送短信
|
// 根据电话号码数量发送短信
|
||||||
//JSONObject sendResult = SmsTool.sendSms(new SmsParam(phoneNumber, notice.getNoticeContent()), BmConfigItems.ANHUI_COMPANY_SMS_KEY);
|
JSONObject sendResult = SmsTool.sendSms(new SmsParam(phoneNumber, notice.getNoticeContent()), BmConfigItems.ANHUI_COMPANY_SMS_KEY);
|
||||||
String sendResult = SmsUtils.smsToken(phoneNumber, notice.getNoticeContent(), "");
|
//String sendResult = SmsUtils.smsToken(phoneNumber, notice.getNoticeContent(), "");
|
||||||
if (StringUtils.isBlank(sendResult)) {
|
if (StringUtils.isBlank(sendResult.toString())) {
|
||||||
return AjaxResult.error("短信发送失败");
|
return AjaxResult.error("短信发送失败");
|
||||||
} else {
|
} else {
|
||||||
System.out.println("短信发送成功:" + sendResult);
|
System.out.println("短信发送成功:" + sendResult);
|
||||||
|
|
|
||||||
|
|
@ -1105,31 +1105,14 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
d.create_time DESC
|
d.create_time DESC
|
||||||
</select>
|
</select>
|
||||||
|
|
||||||
<select id="getCompanyList" resultType="com.bonus.material.device.domain.vo.DevInfoVo">
|
|
||||||
SELECT
|
|
||||||
sd.dept_id AS companyId,
|
|
||||||
sd.dept_name AS companyName,
|
|
||||||
COUNT( mdi.ma_id ) AS deviceNum
|
|
||||||
FROM
|
|
||||||
sys_dept sd
|
|
||||||
LEFT JOIN ma_dev_info mdi ON sd.dept_id = mdi.own_co
|
|
||||||
GROUP BY
|
|
||||||
sd.dept_id
|
|
||||||
ORDER BY
|
|
||||||
COUNT( mdi.ma_id ) DESC
|
|
||||||
</select>
|
|
||||||
|
|
||||||
<select id="getCompanyNum" resultType="com.bonus.material.device.domain.vo.DevInfoVo">
|
<select id="getCompanyNum" resultType="com.bonus.material.device.domain.vo.DevInfoVo">
|
||||||
SELECT
|
SELECT
|
||||||
md.ma_id AS maId,
|
order_id as orderId
|
||||||
COUNT( md.ma_id ) AS orderNum ,
|
|
||||||
mdi.own_co AS companyId
|
|
||||||
FROM
|
FROM
|
||||||
ma_order_details md
|
ma_order_details
|
||||||
LEFT JOIN ma_dev_info mdi on md.ma_id = mdi.ma_id
|
WHERE order_status != 0 and order_status != 99
|
||||||
WHERE md.order_status != 0 and md.order_status != 99
|
|
||||||
GROUP BY
|
GROUP BY
|
||||||
md.ma_id
|
order_id
|
||||||
</select>
|
</select>
|
||||||
<select id="selectDevInfoHotListRatio" resultType="com.bonus.material.device.domain.vo.DevInfoVo">
|
<select id="selectDevInfoHotListRatio" resultType="com.bonus.material.device.domain.vo.DevInfoVo">
|
||||||
SELECT
|
SELECT
|
||||||
|
|
@ -1183,13 +1166,24 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN"
|
||||||
md.ma_id AS maId,
|
md.ma_id AS maId,
|
||||||
COUNT( md.order_id ) AS orderNum ,
|
COUNT( md.order_id ) AS orderNum ,
|
||||||
mdi.own_co AS companyId,
|
mdi.own_co AS companyId,
|
||||||
md.order_id AS orderCode
|
md.order_id AS orderId,
|
||||||
|
sd.dept_name AS companyName
|
||||||
FROM
|
FROM
|
||||||
ma_order_details md
|
ma_order_details md
|
||||||
LEFT JOIN ma_dev_info mdi on md.ma_id = mdi.ma_id
|
LEFT JOIN ma_dev_info mdi on md.ma_id = mdi.ma_id
|
||||||
|
LEFT JOIN sys_dept sd on mdi.own_co = sd.dept_id
|
||||||
WHERE md.order_status != 0 and md.order_status != 99 and mdi.own_co =#{companyId}
|
WHERE md.order_status != 0 and md.order_status != 99 and mdi.own_co =#{companyId}
|
||||||
GROUP BY
|
GROUP BY
|
||||||
md.order_id
|
md.order_id
|
||||||
|
|
||||||
</select>
|
</select>
|
||||||
|
<select id="getBuyCompanyList" resultType="com.bonus.material.device.domain.vo.DevInfoVo">
|
||||||
|
SELECT
|
||||||
|
moi.buyer_company as companyId,
|
||||||
|
sd.dept_name as companyName
|
||||||
|
FROM
|
||||||
|
ma_order_info moi
|
||||||
|
LEFT JOIN sys_dept sd ON moi.buyer_company = sd.dept_id
|
||||||
|
WHERE moi.order_id = #{orderId}
|
||||||
|
</select>
|
||||||
</mapper>
|
</mapper>
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue