diff --git a/src/main/java/live/tomey/api/express/controller/MessageController.java b/src/main/java/live/tomey/api/express/controller/MessageController.java index 8c2f69f..64987ec 100644 --- a/src/main/java/live/tomey/api/express/controller/MessageController.java +++ b/src/main/java/live/tomey/api/express/controller/MessageController.java @@ -1,8 +1,10 @@ package live.tomey.api.express.controller; import live.tomey.api.express.aop.Public; +import live.tomey.api.express.aop.Root; import live.tomey.api.express.dto.MessageSelect; import live.tomey.api.express.dto.Result; +import live.tomey.api.express.dto.SendMessage; import live.tomey.api.express.dto.ServerResult; import live.tomey.api.express.entity.Account; import live.tomey.api.express.enums.OrderEnum; @@ -32,6 +34,43 @@ public class MessageController { @Autowired private MessageService messageService; + @Root + @RequestMapping(value = "sendmessage",method = RequestMethod.POST) + private Result sendMessage (HttpServletRequest request) { + try { + Integer msgwho = HttpServletRequestUtil.getInteger(request,"msgwho"); + Integer msgOneGrade = HttpServletRequestUtil.getInteger(request,"msgOneGrade"); + String phone = HttpServletRequestUtil.getString(request,"phone"); + String msgTitle = HttpServletRequestUtil.getString(request,"msgTitle"); + String content = HttpServletRequestUtil.getString(request,"content"); + if (msgwho<1||msgwho>2){ + return new Result(false,0,"msgwho值错误"); + } + if (msgwho == 1 && (msgOneGrade<1||msgOneGrade>3)){ + return new Result(false,0,"msgOneGrade值错误"); + } + if (msgwho ==2 && phone == null){ + return new Result(false,0,"发送对象电话不能为空"); + } + if (msgTitle==null){ + return new Result(false,0,"标题不能为空"); + } + if (content==null){ + return new Result(false,0,"内容不能为空"); + } + SendMessage sendMessage = new SendMessage(msgwho,msgOneGrade,phone,msgTitle,content); + ServerResult serverResult = messageService.sendMessage(sendMessage); + if (serverResult.isStart()){ + return new Result(true,1,"发送成功"); + }else { + return new Result(false,-1,serverResult.getMsg()); + } + } catch (RuntimeException e) { + logger.error(e.getMessage()); + return new Result(false, 0, "系统错误"); + } + } + @Public @RequestMapping(value = "getmessagecount", method = RequestMethod.POST) diff --git a/src/main/java/live/tomey/api/express/dao/AccountDao.java b/src/main/java/live/tomey/api/express/dao/AccountDao.java index b819f40..97f80c9 100644 --- a/src/main/java/live/tomey/api/express/dao/AccountDao.java +++ b/src/main/java/live/tomey/api/express/dao/AccountDao.java @@ -14,6 +14,13 @@ import java.util.List; * @date 2020/12/2 11:30 */ public interface AccountDao { + + /** + * 没有条件获取所有用户信息 + * @return + */ + List queryAccount(); + /** * 获取所有的用户信息 * diff --git a/src/main/java/live/tomey/api/express/dao/MessagesDao.java b/src/main/java/live/tomey/api/express/dao/MessagesDao.java index fb051fa..a6081f6 100644 --- a/src/main/java/live/tomey/api/express/dao/MessagesDao.java +++ b/src/main/java/live/tomey/api/express/dao/MessagesDao.java @@ -13,6 +13,9 @@ import java.util.List; * @date 2020/12/16 11:33 */ public interface MessagesDao { + + + int sendMessages(List messagesList); /** * 添加信息 * @param messages diff --git a/src/main/java/live/tomey/api/express/dto/AccountRoot.java b/src/main/java/live/tomey/api/express/dto/AccountRoot.java index d447829..7047803 100644 --- a/src/main/java/live/tomey/api/express/dto/AccountRoot.java +++ b/src/main/java/live/tomey/api/express/dto/AccountRoot.java @@ -20,6 +20,10 @@ public class AccountRoot { private Date registrationTime; private String ncryptedProble; private String ncryptedAnswers; + private Integer orderNum; + private Integer takeOrder; + private Integer consumption; + private Integer earn; public Integer getId() { return id; @@ -100,4 +104,36 @@ public class AccountRoot { public void setNcryptedAnswers(String ncryptedAnswers) { this.ncryptedAnswers = ncryptedAnswers; } + + public Integer getOrderNum() { + return orderNum; + } + + public void setOrderNum(Integer orderNum) { + this.orderNum = orderNum; + } + + public Integer getConsumption() { + return consumption; + } + + public void setConsumption(Integer consumption) { + this.consumption = consumption; + } + + public Integer getEarn() { + return earn; + } + + public void setEarn(Integer earn) { + this.earn = earn; + } + + public Integer getTakeOrder() { + return takeOrder; + } + + public void setTakeOrder(Integer takeOrder) { + this.takeOrder = takeOrder; + } } diff --git a/src/main/java/live/tomey/api/express/dto/SendMessage.java b/src/main/java/live/tomey/api/express/dto/SendMessage.java new file mode 100644 index 0000000..b47ba03 --- /dev/null +++ b/src/main/java/live/tomey/api/express/dto/SendMessage.java @@ -0,0 +1,63 @@ +package live.tomey.api.express.dto; + +/** + * @author clay + * @version 1.0 + * @mail 20932067@zju.edu.cn + * @date 2020/12/18 22:21 + */ +public class SendMessage { + private Integer msgwho; + private Integer msgOneGrade; + private String phone; + private String msgTitle; + private String content; + + public SendMessage(Integer msgwho, Integer msgOneGrade, String phone, String msgTitle, String content) { + this.msgwho = msgwho; + this.msgOneGrade = msgOneGrade; + this.phone = phone; + this.msgTitle = msgTitle; + this.content = content; + } + + public Integer getMsgwho() { + return msgwho; + } + + public void setMsgwho(Integer msgwho) { + this.msgwho = msgwho; + } + + public Integer getMsgOneGrade() { + return msgOneGrade; + } + + public void setMsgOneGrade(Integer msgOneGrade) { + this.msgOneGrade = msgOneGrade; + } + + public String getPhone() { + return phone; + } + + public void setPhone(String phone) { + this.phone = phone; + } + + public String getMsgTitle() { + return msgTitle; + } + + public void setMsgTitle(String msgTitle) { + this.msgTitle = msgTitle; + } + + public String getContent() { + return content; + } + + public void setContent(String content) { + this.content = content; + } +} diff --git a/src/main/java/live/tomey/api/express/service/MessageService.java b/src/main/java/live/tomey/api/express/service/MessageService.java index d9a55d3..f9d3d48 100644 --- a/src/main/java/live/tomey/api/express/service/MessageService.java +++ b/src/main/java/live/tomey/api/express/service/MessageService.java @@ -1,6 +1,7 @@ package live.tomey.api.express.service; import live.tomey.api.express.dto.MessageSelect; +import live.tomey.api.express.dto.SendMessage; import live.tomey.api.express.dto.ServerResult; import live.tomey.api.express.entity.Account; @@ -12,6 +13,8 @@ import live.tomey.api.express.entity.Account; */ public interface MessageService { + ServerResult sendMessage(SendMessage sendMessage); + /** * 获取信息 * diff --git a/src/main/java/live/tomey/api/express/service/impl/MessageServiceImpl.java b/src/main/java/live/tomey/api/express/service/impl/MessageServiceImpl.java index 74b31ac..464e45a 100644 --- a/src/main/java/live/tomey/api/express/service/impl/MessageServiceImpl.java +++ b/src/main/java/live/tomey/api/express/service/impl/MessageServiceImpl.java @@ -1,8 +1,12 @@ package live.tomey.api.express.service.impl; +import live.tomey.api.express.dao.AccountDao; import live.tomey.api.express.dao.MessagesDao; +import live.tomey.api.express.dto.AccountRoot; import live.tomey.api.express.dto.MessageSelect; +import live.tomey.api.express.dto.SendMessage; import live.tomey.api.express.dto.ServerResult; +import live.tomey.api.express.entity.Account; import live.tomey.api.express.entity.Messages; import live.tomey.api.express.service.MessageService; import live.tomey.api.express.unit.PageCalculator; @@ -12,6 +16,7 @@ import org.springframework.beans.factory.annotation.Autowired; import org.springframework.stereotype.Service; import org.springframework.transaction.annotation.Transactional; +import java.util.ArrayList; import java.util.List; /** @@ -26,6 +31,44 @@ public class MessageServiceImpl implements MessageService { @Autowired private MessagesDao messagesDao; + @Autowired + private AccountDao accountDao; + + @Override + @Transactional + public ServerResult sendMessage(SendMessage sendMessage) { + try { + List messagesList = new ArrayList<>(); + if (sendMessage.getMsgwho() == 1) { + List accountList = accountDao.queryAccount(); + for (AccountRoot accountRoot : accountList) { + if (sendMessage.getMsgOneGrade() == 1) { + Messages messages = new Messages(accountRoot.getId(), sendMessage.getMsgTitle(), sendMessage.getContent()); + messagesList.add(messages); + } else { + if (sendMessage.getMsgOneGrade() == accountRoot.getIdentityId()) { + Messages messages = new Messages(accountRoot.getId(), sendMessage.getMsgTitle(), sendMessage.getContent()); + messagesList.add(messages); + } + } + } + } else { + Account account = accountDao.queryAccountForPhone(sendMessage.getPhone()); + Messages messages = new Messages(account.getId(), sendMessage.getMsgTitle(), sendMessage.getContent()); + messagesList.add(messages); + } + int conut = messagesDao.sendMessages(messagesList); + System.out.println(conut); + if (conut == messagesList.size()) { + return new ServerResult(true, "操作成功"); + } else { + return new ServerResult(false, "操作失败"); + } + } catch (RuntimeException e) { + logger.error(e.getMessage()); + return new ServerResult(false, "系统错误!"); + } + } @Override @Transactional diff --git a/src/main/resources/mapper/AccountDao.xml b/src/main/resources/mapper/AccountDao.xml index 90a3569..a9b255a 100644 --- a/src/main/resources/mapper/AccountDao.xml +++ b/src/main/resources/mapper/AccountDao.xml @@ -3,7 +3,38 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> - + SELECT count(1) FROM w_order WHERE courier_id = #{id} + + + + + + + - - INSERT INTO - w_account( - phone, - username, - password, - email, - sex, - identity_id, - registration_time - ) - VALUES ( - #{account.phone}, - #{account.username}, - #{account.password}, - #{account.email}, - #{account.sex}, - #{account.identityId}, - #{account.registrationTime} - ) + + INSERT INTO w_account(phone, + username, + password, + email, + sex, + identity_id, + registration_time) + VALUES (#{account.phone}, + #{account.username}, + #{account.password}, + #{account.email}, + #{account.sex}, + #{account.identityId}, + #{account.registrationTime}) - UPDATE w_account SET identity_id = #{identityId} WHERE id = #{id} + UPDATE w_account + SET identity_id = #{identityId} + WHERE id = #{id} - UPDATE w_account SET password = #{password} WHERE id = #{id} + UPDATE w_account + SET password = #{password} + WHERE id = #{id} UPDATE w_account - username = #{account.username} , - email = #{account.email} , - sex = #{account.sex} , - birthday = #{account.birthday} + username = #{account.username} , + email = #{account.email} , + sex = #{account.sex} , + birthday = #{account.birthday} - WHERE id = #{account.id} + WHERE id = #{account.id} - UPDATE w_account SET ncrypted_proble = #{account.ncryptedProble},ncrypted_answers = #{account.ncryptedAnswers} WHERE id = #{account.id} + UPDATE w_account + SET ncrypted_proble = #{account.ncryptedProble}, + ncrypted_answers = #{account.ncryptedAnswers} + WHERE id = #{account.id} - + SELECT count(1) + FROM w_account + WHERE ncrypted_proble is not null + AND phone = #{phone} \ No newline at end of file diff --git a/src/main/resources/mapper/MessagesDao.xml b/src/main/resources/mapper/MessagesDao.xml index 997270e..f5e481d 100644 --- a/src/main/resources/mapper/MessagesDao.xml +++ b/src/main/resources/mapper/MessagesDao.xml @@ -3,6 +3,26 @@ PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> + + + INSERT INTO + w_message( + account_id, + title, + content, + is_read, + send_time + ) VALUES + + ( + #{message.accountId}, + #{message.title}, + #{message.content}, + #{message.isRead}, + #{message.sendTime} + ) + + INSERT INTO w_message(