Commit 7470d90c by XiaHou

万科接口修复

parent 727a7228
...@@ -7,6 +7,7 @@ import com.macro.mall.model.VankeSupplier; ...@@ -7,6 +7,7 @@ import com.macro.mall.model.VankeSupplier;
import com.macro.mall.model.common.ResultMsg; import com.macro.mall.model.common.ResultMsg;
import com.macro.mall.model.dto.UmsAdminDto; import com.macro.mall.model.dto.UmsAdminDto;
import com.macro.mall.model.dto.quanxing.UmsMemberDto; import com.macro.mall.model.dto.quanxing.UmsMemberDto;
import com.macro.mall.model.dto.vanke.VankeImportMemberDto;
import com.macro.mall.service.member.UmsMemberService; import com.macro.mall.service.member.UmsMemberService;
import com.macro.mall.service.system.UmsAdminService; import com.macro.mall.service.system.UmsAdminService;
import io.swagger.annotations.Api; import io.swagger.annotations.Api;
...@@ -66,4 +67,26 @@ public class UmsMemberController { ...@@ -66,4 +67,26 @@ public class UmsMemberController {
} }
return CommonResult.failed(res.getMsg()); return CommonResult.failed(res.getMsg());
} }
@ApiOperation("万科后台_批量导入会员")
@RequestMapping(value = "/vankeImportMember", method = RequestMethod.POST)
@ResponseBody
public CommonResult VankeImportMember(@ApiParam(value="接收数据对象") @RequestBody VankeImportMemberDto vankeImportMemberDto){
ResultMsg res = this.umsMemberService.batchImportMember(vankeImportMemberDto.getVimdList());
if(res.isFlag()){
return CommonResult.success(null,res.getMsg());
}
return CommonResult.failed(res.getMsg());
}
@ApiOperation("根据会员id查询一条数据")
@RequestMapping(value = "/selectOneByMemberId", method = RequestMethod.GET)
@ResponseBody
public CommonResult<UmsMemberDto> selectOneByMemberId(@ApiParam("会员memberId")@RequestParam(value = "memberId") Long memberId) {
return CommonResult.success(this.umsMemberService.selectOneByMemberId(memberId));
}
} }
package com.macro.mall.controller.vanke;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.model.common.ResultMsg;
import com.macro.mall.service.vanke.IStaffService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@Api(tags = "万科后台_员工相关接口", description = "员工控制器")
@RequestMapping("/staff")
public class StaffController {
@Autowired
private IStaffService staffService;
@ApiOperation("万科后台_生成二维码唯一标识符 ")
@RequestMapping(value = "/generateQrcodeParam", method = RequestMethod.GET)
@ResponseBody
public CommonResult generateQrcodeParam(){
ResultMsg res = this.staffService.generateQrcodeParam();
if(res.isFlag()){
return CommonResult.success(res.getContext(),res.getMsg());
}
return CommonResult.failed(res.getMsg());
}
@ApiOperation("万科后台_校验二维码唯一标识符 ")
@RequestMapping(value = "/checkOnlyId", method = RequestMethod.GET)
@ResponseBody
public CommonResult checkOnlyId(@ApiParam("二维码唯一标识符onlyId")@RequestParam(value = "onlyId")String onlyId,
@ApiParam("会员id")@RequestParam(value = "memberId")Long memberId){
ResultMsg res = this.staffService.checkOnlyId(onlyId,memberId);
if(res.isFlag()){
return CommonResult.success(res.getContext(),res.getMsg());
}
return CommonResult.failed(res.getMsg());
}
}
...@@ -109,4 +109,11 @@ public class VankeGoodsController { ...@@ -109,4 +109,11 @@ public class VankeGoodsController {
return CommonResult.failed(res.getMsg()); return CommonResult.failed(res.getMsg());
} }
@ApiOperation("万科后台_查询一条商品记录")
@ResponseBody
@RequestMapping(value = "/selectOneByOter", method = RequestMethod.POST)
public CommonResult selectOneByOter(@ApiParam("传入需要查询的参数") @RequestBody VankeGoodsDto vankeGoodsDto){
return CommonResult.success( this.vankeGoodsService.selectOneByOther(vankeGoodsDto),"查询成功");
}
} }
package com.macro.mall.controller.vanke;
import com.macro.mall.common.api.CommonResult;
import com.macro.mall.model.dto.vanke.VankeInboundOrderDto;
import com.macro.mall.model.dto.vanke.VankeOutboundOrderDto;
import com.macro.mall.service.vanke.IVankeInboundOrderService;
import com.macro.mall.service.vanke.IVankeOutboundOrderService;
import io.swagger.annotations.Api;
import io.swagger.annotations.ApiOperation;
import io.swagger.annotations.ApiParam;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.RequestMethod;
import org.springframework.web.bind.annotation.RequestParam;
import org.springframework.web.bind.annotation.ResponseBody;
@Controller
@Api(tags = "万科后台_入库单相关接口", description = "入库单控制器")
@RequestMapping("/vankeInboundOrder")
public class VankeInboundOrderController {
@Autowired
private IVankeInboundOrderService vankeInboundOrderService;
@ApiOperation("万科后台_入库单分页查询")
@ResponseBody
@RequestMapping(value = "/getPageList", method = RequestMethod.GET)
public CommonResult getPageList(@ApiParam("页数") @RequestParam("pageNum")Integer pageNum, @ApiParam("每页大小")@RequestParam("pageSize")Integer pageSize){
VankeInboundOrderDto vankeInboundOrderDto = new VankeInboundOrderDto();
return CommonResult.success(this.vankeInboundOrderService.getPageList(pageNum,pageSize,vankeInboundOrderDto));
}
}
package com.macro.mall.model.dto.vanke;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import java.util.List;
@Data
public class VankeImportMemberDto {
//万科导入会员对象
@ApiModelProperty("万科员工编号")
private String jobNo;
@ApiModelProperty("部门名称")
private String department;
@ApiModelProperty("手机号")
private String mobile;
@ApiModelProperty("用户名称")
private String username;
@ApiModelProperty("账号")
private String account;
@ApiModelProperty("数据传输 只供导入会员对象集合时候使用")
private List<VankeImportMemberDto> vimdList;
}
...@@ -13,6 +13,11 @@ import java.util.List; ...@@ -13,6 +13,11 @@ import java.util.List;
public class VankeInboundOrderDto extends VankeInboundOrder { public class VankeInboundOrderDto extends VankeInboundOrder {
@ApiModelProperty("出库单详情") @ApiModelProperty("出库单详情")
private List<VankeInboundRecord> vorList; private List<VankeInboundRecordDto> vorList;
@ApiModelProperty("库房名称")
private String stockRoomName;
@ApiModelProperty("普通管理员名称")
private String receptName;
@ApiModelProperty("超级管理员名称")
private String backName;
} }
package com.macro.mall.portal; package com.macro.mall.portal;
import com.macro.mall.dao.UmsMemberDao; import com.macro.mall.dao.UmsMemberDao;
import com.macro.mall.dao.vanke.VankeOutboundOrderDao;
import com.macro.mall.dao.vanke.VankeVvUserDao; import com.macro.mall.dao.vanke.VankeVvUserDao;
import com.macro.mall.mapper.UmsMemberMapper; import com.macro.mall.mapper.UmsMemberMapper;
import com.macro.mall.mapper.VankeDepartmentMapper; import com.macro.mall.mapper.VankeDepartmentMapper;
...@@ -19,6 +20,8 @@ import org.springframework.boot.test.context.SpringBootTest; ...@@ -19,6 +20,8 @@ import org.springframework.boot.test.context.SpringBootTest;
import org.springframework.test.context.junit4.SpringRunner; import org.springframework.test.context.junit4.SpringRunner;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.text.DateFormat;
import java.text.SimpleDateFormat;
import java.util.Date; import java.util.Date;
import java.util.HashMap; import java.util.HashMap;
import java.util.List; import java.util.List;
...@@ -45,16 +48,23 @@ public class VankeTest { ...@@ -45,16 +48,23 @@ public class VankeTest {
private UmsMemberMapper umsMemberMapper; private UmsMemberMapper umsMemberMapper;
@Autowired @Autowired
private UmsMemberService umsMemberService; private UmsMemberService umsMemberService;
@Resource
private VankeOutboundOrderDao vankeOutboundOrderDao;
@Test @Test
public void testA(){ public void testA() throws Exception{
//得到通过返回的map数据 得到umsMember DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
Map<String, Object> map = new HashMap<>(); String time = "2020-07-03 16:02:33";
map.put("jobNo",12345); Date last = df.parse(time);
UmsMember um =this.vankeMemberLoginService.handleSuccessInfo(map); Date now = new Date();
Map<String, String> tokenMap = this.umsMemberService.vankeLogin(um); Long lasta = last.getTime();
System.out.println(tokenMap); Long nowa = now.getTime();
System.out.println(lasta);
System.out.println(nowa);
Long d = lasta - nowa;
System.out.println(d/(1000*60*60));
} }
......
...@@ -7,4 +7,10 @@ import java.util.List; ...@@ -7,4 +7,10 @@ import java.util.List;
public interface VankeInboundOrderDao { public interface VankeInboundOrderDao {
/**
* 根据传入参数查询入库单list
* @param vankeInboundOrderDto
* @return
*/
List<VankeInboundOrderDto> selectListByOther(VankeInboundOrderDto vankeInboundOrderDto);
} }
...@@ -22,4 +22,11 @@ public interface VankeInboundRecordDao { ...@@ -22,4 +22,11 @@ public interface VankeInboundRecordDao {
* @return * @return
*/ */
List<VankeInboundRecordDto> selectInBoundByCategory(StatiscalQueryParam statiscalQueryParam); List<VankeInboundRecordDto> selectInBoundByCategory(StatiscalQueryParam statiscalQueryParam);
/**
* 根据入库单号查询 入库单记录集合
* @param inboundNo
* @return
*/
List<VankeInboundRecordDto> selectListByInboundNo(String inboundNo);
} }
...@@ -2,6 +2,7 @@ package com.macro.mall.dao.vanke; ...@@ -2,6 +2,7 @@ package com.macro.mall.dao.vanke;
import com.macro.mall.model.dto.vanke.VankeOutboundOrderDto; import com.macro.mall.model.dto.vanke.VankeOutboundOrderDto;
import java.util.Date;
import java.util.List; import java.util.List;
public interface VankeOutboundOrderDao { public interface VankeOutboundOrderDao {
...@@ -19,4 +20,10 @@ public interface VankeOutboundOrderDao { ...@@ -19,4 +20,10 @@ public interface VankeOutboundOrderDao {
* @return * @return
*/ */
VankeOutboundOrderDto selectListByOutboundNo(String outboundNo); VankeOutboundOrderDto selectListByOutboundNo(String outboundNo);
/**
* 根据会员id 查询最后一次领取时间
* @return
*/
Date selectOneByMemberId(Long memberId);
} }
...@@ -12,6 +12,7 @@ import com.macro.mall.model.common.ResultMsg; ...@@ -12,6 +12,7 @@ import com.macro.mall.model.common.ResultMsg;
import com.macro.mall.model.dto.quanxing.UmsMemberDto; import com.macro.mall.model.dto.quanxing.UmsMemberDto;
import com.macro.mall.model.dto.quanxing.UmsMemberRequestParam; import com.macro.mall.model.dto.quanxing.UmsMemberRequestParam;
import com.macro.mall.model.dto.vanke.VankeGoodsDto; import com.macro.mall.model.dto.vanke.VankeGoodsDto;
import com.macro.mall.model.dto.vanke.VankeImportMemberDto;
import org.springframework.security.core.userdetails.UserDetails; import org.springframework.security.core.userdetails.UserDetails;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -213,4 +214,11 @@ public interface UmsMemberService { ...@@ -213,4 +214,11 @@ public interface UmsMemberService {
* @return * @return
*/ */
UmsMemberDto selectOneByMemberId(Long memberId); UmsMemberDto selectOneByMemberId(Long memberId);
/**
* 批量导入会员
* @param vimdList
* @return
*/
ResultMsg batchImportMember(List<VankeImportMemberDto> vimdList);
} }
...@@ -12,15 +12,13 @@ import com.macro.mall.domain.MemberDetails; ...@@ -12,15 +12,13 @@ import com.macro.mall.domain.MemberDetails;
import com.macro.mall.domain.dto.UmsMemberParam; import com.macro.mall.domain.dto.UmsMemberParam;
import com.macro.mall.domain.dto.UmsMemberReview; import com.macro.mall.domain.dto.UmsMemberReview;
import com.macro.mall.domain.vo.UmsMemberVo; import com.macro.mall.domain.vo.UmsMemberVo;
import com.macro.mall.mapper.OmsOrderSonMapper; import com.macro.mall.mapper.*;
import com.macro.mall.mapper.UmsMemberAccountMapper;
import com.macro.mall.mapper.UmsMemberLevelMapper;
import com.macro.mall.mapper.UmsMemberMapper;
import com.macro.mall.model.*; import com.macro.mall.model.*;
import com.macro.mall.domain.UmsMemberVerified; import com.macro.mall.domain.UmsMemberVerified;
import com.macro.mall.model.common.ResultMsg; import com.macro.mall.model.common.ResultMsg;
import com.macro.mall.model.dto.quanxing.UmsMemberDto; import com.macro.mall.model.dto.quanxing.UmsMemberDto;
import com.macro.mall.model.dto.quanxing.UmsMemberRequestParam; import com.macro.mall.model.dto.quanxing.UmsMemberRequestParam;
import com.macro.mall.model.dto.vanke.VankeImportMemberDto;
import com.macro.mall.service.member.UmsMemberAccountService; import com.macro.mall.service.member.UmsMemberAccountService;
import com.macro.mall.service.member.UmsMemberService; import com.macro.mall.service.member.UmsMemberService;
import com.macro.mall.security.util.CodingUtil; import com.macro.mall.security.util.CodingUtil;
...@@ -79,6 +77,10 @@ public class UmsMemberServiceImpl implements UmsMemberService { ...@@ -79,6 +77,10 @@ public class UmsMemberServiceImpl implements UmsMemberService {
private UmsMemberMapper umsMemberMapper; private UmsMemberMapper umsMemberMapper;
@Resource @Resource
private OmsOrderSonMapper orderSonMapper; private OmsOrderSonMapper orderSonMapper;
@Resource
private VankeVvUserMapper vankeVvUserMapper;
@Resource
private VankeDepartmentMapper vankeDepartmentMapper;
@Value("${redis.key.prefix.authCode}") @Value("${redis.key.prefix.authCode}")
private String REDIS_KEY_PREFIX_AUTH_CODE; private String REDIS_KEY_PREFIX_AUTH_CODE;
...@@ -794,4 +796,53 @@ public class UmsMemberServiceImpl implements UmsMemberService { ...@@ -794,4 +796,53 @@ public class UmsMemberServiceImpl implements UmsMemberService {
public UmsMemberDto selectOneByMemberId(Long memberId){ public UmsMemberDto selectOneByMemberId(Long memberId){
return this.memberDao.selectOneByMemberId(memberId); return this.memberDao.selectOneByMemberId(memberId);
} }
/**
* 批量导入会员
* @param vimdList
* @return
*/
@Override
@Transactional(rollbackFor = Exception.class)
public ResultMsg batchImportMember(List<VankeImportMemberDto> vimdList){
if(vimdList == null || vimdList.size() == 0 ){
return new ResultMsg(false,"传入会员集合为空 !");
}
vimdList.forEach(vimd ->{ //遍历导入会员 插入万科会员表数据中
//将对象复制到vankevvuser里去 插入到表中
VankeVvUser vvu = new VankeVvUser();
//将属性赋值到另一个对象中去
BeanUtils.copyProperties(vimd,vvu);
//插入vankevvuser表
this.vankeVvUserMapper.insertSelective(vvu);
//根据部门名称查询部门是否存在 不存在新增,存在直接取id
VankeDepartmentExample example = new VankeDepartmentExample();
VankeDepartmentExample.Criteria criteria = example.createCriteria();
criteria.andNameEqualTo(vimd.getDepartment());
List<VankeDepartment> vdList = this.vankeDepartmentMapper.selectByExample(example);
//初始化部门对象
VankeDepartment vd = new VankeDepartment();
if(vdList == null || vdList.size() == 0 ){ // 如果不存在此部门 则新增部门
vd.setName(vimd.getDepartment());
this.vankeDepartmentMapper.insertSelective(vd);
}else{//否则存在
vd = vdList.get(0);
if(vd.getDeleteStatus() == 0){//如果是已删除状态 新进会员则继续将此已删除部门转换成 未删除
vd.setDeleteStatus(1);
this.vankeDepartmentMapper.updateByPrimaryKeySelective(vd);
}
}
//对应的将ums_member表中插入数据
UmsMember um = new UmsMember();
um.setUsername(vimd.getAccount());
um.setJobNo(vimd.getJobNo());
um.setDepartId(vd.getId());
um.setUpdateDate(new Date());
um.setCreateDate(new Date());
um.setName(vimd.getUsername());
um.setPhone(vimd.getMobile());
this.umsMemberMapper.insertSelective(um);
});
return new ResultMsg(true,"操作成功");
}
} }
package com.macro.mall.service.vanke;
import com.macro.mall.common.api.CommonPage;
import com.macro.mall.model.dto.vanke.VankeInboundOrderDto;
public interface IVankeInboundOrderService {
/**
* 说的
* @param pageNum
* @param pageSize
* @param vankeInboundOrderDto
* @return
*/
CommonPage<VankeInboundOrderDto> getPageList(Integer pageNum, Integer pageSize, VankeInboundOrderDto vankeInboundOrderDto);
}
...@@ -3,6 +3,7 @@ package com.macro.mall.service.vanke.impl; ...@@ -3,6 +3,7 @@ package com.macro.mall.service.vanke.impl;
import com.github.pagehelper.PageHelper; import com.github.pagehelper.PageHelper;
import com.macro.mall.common.utils.TimeUtils; import com.macro.mall.common.utils.TimeUtils;
import com.macro.mall.dao.vanke.VankeGoodsDao; import com.macro.mall.dao.vanke.VankeGoodsDao;
import com.macro.mall.dao.vanke.VankeOutboundOrderDao;
import com.macro.mall.mapper.*; import com.macro.mall.mapper.*;
import com.macro.mall.model.*; import com.macro.mall.model.*;
import com.macro.mall.model.common.ResultMsg; import com.macro.mall.model.common.ResultMsg;
...@@ -10,16 +11,15 @@ import com.macro.mall.model.dto.vanke.VankeGoodsDto; ...@@ -10,16 +11,15 @@ import com.macro.mall.model.dto.vanke.VankeGoodsDto;
import com.macro.mall.model.dto.vanke.VankeGoodsRequestParam; import com.macro.mall.model.dto.vanke.VankeGoodsRequestParam;
import com.macro.mall.service.member.UmsMemberService; import com.macro.mall.service.member.UmsMemberService;
import com.macro.mall.service.system.UmsAdminService; import com.macro.mall.service.system.UmsAdminService;
import com.macro.mall.service.vanke.IVankeBackLogService; import com.macro.mall.service.vanke.*;
import com.macro.mall.service.vanke.IVankeGoodsService;
import com.macro.mall.service.vanke.IVankeGoodsStockService;
import com.macro.mall.service.vanke.IVankeInboundRecordService;
import org.junit.Test; import org.junit.Test;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
import javax.annotation.Resource; import javax.annotation.Resource;
import java.math.BigDecimal;
import java.text.DateFormat;
import java.text.SimpleDateFormat; import java.text.SimpleDateFormat;
import java.util.ArrayList; import java.util.ArrayList;
import java.util.Calendar; import java.util.Calendar;
...@@ -51,6 +51,10 @@ public class VankeGoodsServiceImpl implements IVankeGoodsService { ...@@ -51,6 +51,10 @@ public class VankeGoodsServiceImpl implements IVankeGoodsService {
private VankeOutboundOrderMapper vankeOutboundOrderMapper; private VankeOutboundOrderMapper vankeOutboundOrderMapper;
@Autowired @Autowired
private UmsMemberService umsMemberService; private UmsMemberService umsMemberService;
@Resource
private VankeOutboundOrderDao vankeOutboundOrderDao;
@Autowired
private IVankeConfigService vankeConfigService;
/** /**
* *
...@@ -189,17 +193,8 @@ public class VankeGoodsServiceImpl implements IVankeGoodsService { ...@@ -189,17 +193,8 @@ public class VankeGoodsServiceImpl implements IVankeGoodsService {
this.vankeInboundOrderMapper.insertSelective(vio); this.vankeInboundOrderMapper.insertSelective(vio);
//遍历传入物品集合 //遍历传入物品集合
for(VankeGoods vg : vankeGoodsRequestParam.getVankeGoodsList()){ for(VankeGoods vg : vankeGoodsRequestParam.getVankeGoodsList()){
//需要先判断是否有物品id 如果没有 则需要先插入 拿到物品id 再插入记录 否则 插入记录表的数据是为空
int stockNum = 0; int stockNum = 0;
//插入入库记录表
vankeInboundRecord.setGoodsId(vg.getId());
vankeInboundRecord.setInboundNo(inboundNo);
vankeInboundRecord.setStockRoomId(vg.getStockRoomId());
vankeInboundRecord.setInboundNum(vg.getGoodsNum());
if(ua!= null && ua.getType()== 2){ //如果不为空 并且账户类型为2 则是普通管理员 账户类型 1超级管理员 2普通管理员
vankeInboundRecord.setReceptInboundMemberId(ua.getMemberId());
}else {//否则是超管
vankeInboundRecord.setBackInboundMemberId(ua.getId());
}
if(vg.getId() != null){ // 物品id不为空 说明已存在 进行更新操作 if(vg.getId() != null){ // 物品id不为空 说明已存在 进行更新操作
vankeGoods = this.vankeGoodsMapper.selectByPrimaryKey(vg.getId()); vankeGoods = this.vankeGoodsMapper.selectByPrimaryKey(vg.getId());
stockNum = vankeGoods.getGoodsNum()+vg.getGoodsNum(); stockNum = vankeGoods.getGoodsNum()+vg.getGoodsNum();
...@@ -213,12 +208,39 @@ public class VankeGoodsServiceImpl implements IVankeGoodsService { ...@@ -213,12 +208,39 @@ public class VankeGoodsServiceImpl implements IVankeGoodsService {
//插入库存变化表 //插入库存变化表
this.vankeGoodsStockService.insertGoodsStockService(vg.getId(),vg.getGoodsNum(),vg.getGoodsNum()); this.vankeGoodsStockService.insertGoodsStockService(vg.getId(),vg.getGoodsNum(),vg.getGoodsNum());
} }
//插入入库记录表
vankeInboundRecord.setGoodsId(vg.getId());
vankeInboundRecord.setInboundNo(inboundNo);
vankeInboundRecord.setStockRoomId(vg.getStockRoomId());
vankeInboundRecord.setInboundNum(vg.getGoodsNum());
if(ua!= null && ua.getType()== 2){ //如果不为空 并且账户类型为2 则是普通管理员 账户类型 1超级管理员 2普通管理员
vankeInboundRecord.setReceptInboundMemberId(ua.getMemberId());
}else {//否则是超管
vankeInboundRecord.setBackInboundMemberId(ua.getId());
}
//插入进入库记录表 //插入进入库记录表
this.vankeInboundRecordMapper.insertSelective(vankeInboundRecord); this.vankeInboundRecordMapper.insertSelective(vankeInboundRecord);
} }
return new ResultMsg(true,"操作成功"); return new ResultMsg(true,"操作成功");
} }
@Test
public void testa() throws Exception{
DateFormat df = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss");
String time = "2020-07-03 13:19:33";
Date last = df.parse(time);
Date now = new Date();
Long lasta = last.getTime();
Long nowa = now.getTime();
System.out.println(lasta);
System.out.println(nowa);
Long d = nowa - lasta;
BigDecimal hoursL =new BigDecimal(((double) (now.getTime() - last.getTime())/(1000*60*60)));
System.out.println(hoursL);
}
/** /**
* 物品出库操作 * 物品出库操作
* @param vankeGoodsRequestParam * @param vankeGoodsRequestParam
...@@ -236,6 +258,19 @@ public class VankeGoodsServiceImpl implements IVankeGoodsService { ...@@ -236,6 +258,19 @@ public class VankeGoodsServiceImpl implements IVankeGoodsService {
if(vankeGoodsRequestParam.getOutMemberId() == null){ if(vankeGoodsRequestParam.getOutMemberId() == null){
return new ResultMsg(false,"传入出库会员的id为空"); return new ResultMsg(false,"传入出库会员的id为空");
} }
//查询设置时间间隔
VankeConfig vankeConfig = this.vankeConfigService.getConfig();
if(vankeConfig != null && !( vankeConfig.getReceiveInterval().compareTo(new BigDecimal("0")) == 0)){ //如果不等于空 并且设置时间间隔不为0
//根据传入会员Id查询 领取记录 与现在时间对比
Date lastOutboundTime = this.vankeOutboundOrderDao.selectOneByMemberId(vankeGoodsRequestParam.getMemberId());
if(lastOutboundTime != null ){
Date now = new Date();
BigDecimal hours =new BigDecimal((double)(now.getTime() - lastOutboundTime.getTime()) /(1000*60*60));
if(hours.compareTo(vankeConfig.getReceiveInterval()) ==-1 ){ //如果得出的时间差 小于配置的时间 返回失败
return new ResultMsg(false,"您上一次领取物品时间低于 物品领用间隔时间(小时):"+ vankeConfig.getReceiveInterval()+"!");
}
}
}
//用来存取 根据id查询得到的物品对象 //用来存取 根据id查询得到的物品对象
VankeGoods vankeGoods; VankeGoods vankeGoods;
//用来建立入库记录对象 //用来建立入库记录对象
...@@ -272,10 +307,11 @@ public class VankeGoodsServiceImpl implements IVankeGoodsService { ...@@ -272,10 +307,11 @@ public class VankeGoodsServiceImpl implements IVankeGoodsService {
} }
vankeOutboundRecord.setOutboundNo(outboundNo); vankeOutboundRecord.setOutboundNo(outboundNo);
vankeOutboundRecord.setMemberId(vankeGoodsRequestParam.getMemberId()); vankeOutboundRecord.setMemberId(vankeGoodsRequestParam.getMemberId());
vankeOutboundRecord.setGoodsCategoryId(vankeGoods.getGoodsCategoryId());
vankeOutboundRecord.setDepartId(umsMember.getDepartId()); vankeOutboundRecord.setDepartId(umsMember.getDepartId());
vankeOutboundRecord.setGoodsId(vankeGoods.getId()); vankeOutboundRecord.setGoodsId(vankeGoods.getId());
vankeOutboundRecord.setStockRoomId(vankeGoods.getStockRoomId()); vankeOutboundRecord.setStockRoomId(vankeGoods.getStockRoomId());
vankeOutboundRecord.setOutboundNum(vankeGoods.getGoodsNum()); vankeOutboundRecord.setOutboundNum(vg.getGoodsNum());
vankeOutboundRecord.setReceptOutboundMemberId(vankeGoodsRequestParam.getOutMemberId()); vankeOutboundRecord.setReceptOutboundMemberId(vankeGoodsRequestParam.getOutMemberId());
this.vankeOutboundRecordMapper.insertSelective(vankeOutboundRecord); this.vankeOutboundRecordMapper.insertSelective(vankeOutboundRecord);
} }
......
...@@ -128,6 +128,7 @@ public class VankeGoodsStockServiceImpl implements IVankeGoodsStockService { ...@@ -128,6 +128,7 @@ public class VankeGoodsStockServiceImpl implements IVankeGoodsStockService {
UmsAdmin ua = umsAdminService.getCurrentUmsAdmin(); UmsAdmin ua = umsAdminService.getCurrentUmsAdmin();
//查询对象 //查询对象
StatiscalQueryParam statiscalQueryParam = new StatiscalQueryParam(); StatiscalQueryParam statiscalQueryParam = new StatiscalQueryParam();
statiscalQueryParam.setQueryTime(queryTime);
if(ua.getType() == 2){ //如果是普通管理员 if(ua.getType() == 2){ //如果是普通管理员
statiscalQueryParam.setMemberId(ua.getMemberId()); statiscalQueryParam.setMemberId(ua.getMemberId());
statiscalQueryParam.setStockRoomId(ua.getStockRoomId()); statiscalQueryParam.setStockRoomId(ua.getStockRoomId());
...@@ -160,6 +161,7 @@ public class VankeGoodsStockServiceImpl implements IVankeGoodsStockService { ...@@ -160,6 +161,7 @@ public class VankeGoodsStockServiceImpl implements IVankeGoodsStockService {
UmsMember um = umsMemberService.getCurrentMember(); UmsMember um = umsMemberService.getCurrentMember();
//查询对象 //查询对象
StatiscalQueryParam statiscalQueryParam = new StatiscalQueryParam(); StatiscalQueryParam statiscalQueryParam = new StatiscalQueryParam();
statiscalQueryParam.setQueryTime(queryTime);
statiscalQueryParam.setMemberId(um.getId()); statiscalQueryParam.setMemberId(um.getId());
statiscalQueryParam.setStockRoomId(um.getStockRoomId()); statiscalQueryParam.setStockRoomId(um.getStockRoomId());
Map<String,Object> dataMap = new HashMap<>(); Map<String,Object> dataMap = new HashMap<>();
......
package com.macro.mall.service.vanke.impl;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.macro.mall.common.api.CommonPage;
import com.macro.mall.dao.vanke.VankeInboundOrderDao;
import com.macro.mall.dao.vanke.VankeInboundRecordDao;
import com.macro.mall.model.UmsAdmin;
import com.macro.mall.model.UmsMember;
import com.macro.mall.model.dto.vanke.VankeInboundOrderDto;
import com.macro.mall.model.dto.vanke.VankeOutboundOrderDto;
import com.macro.mall.service.system.UmsAdminService;
import com.macro.mall.service.vanke.IVankeInboundOrderService;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import javax.annotation.Resource;
import java.util.List;
@Service
public class VankeInboundOrderServiceImpl implements IVankeInboundOrderService {
@Resource
private VankeInboundOrderDao vankeInboundOrderDao;
@Resource
private VankeInboundRecordDao vankeInboundRecordDao;
@Autowired
private UmsAdminService umsAdminService;
/**
* 分页查询入记录
* @param pageNum
* @param pageSize
* @return
*/
@Override
public CommonPage<VankeInboundOrderDto> getPageList(Integer pageNum, Integer pageSize, VankeInboundOrderDto vankeInboundOrderDto){
//判断当前调用此接口的角色 是管理员还是普通用户
UmsAdmin ua = umsAdminService.getCurrentUmsAdmin();
if(ua.getType() == 2){ //如果是普通用户
vankeInboundOrderDto.setReceptInboundMemberId(ua.getMemberId());
}
//分页操作
PageHelper.startPage(pageNum, pageSize);
List<VankeInboundOrderDto> viodList = this.vankeInboundOrderDao.selectListByOther(vankeInboundOrderDto);
//记录下 pagehelper第一次分页查询的 返回得总条数 等信息
PageInfo<VankeInboundOrderDto> pageInfo = new PageInfo<>(viodList);
//遍历出库单 得到所有出库单 通过出库单号 查询旗下出库记录集合
viodList.forEach(vio ->{
vio.setVorList(this.vankeInboundRecordDao.selectListByInboundNo(vio.getInboundNo()));
});
//因为进行了第二次查询 所以pageHelp得分页总数得到了变化 导致不准确 因此我们需要手动校准一下
CommonPage<VankeInboundOrderDto> result = new CommonPage<VankeInboundOrderDto>();
result.setTotalPage(pageInfo.getPages());
result.setPageNum(pageInfo.getPageNum());
result.setPageSize(pageInfo.getPageSize());
result.setTotal(pageInfo.getTotal());
result.setList(viodList);
return result;
}
}
...@@ -202,8 +202,13 @@ public class VankeMemberLoginServiceImpl implements IVankeMemberLoginService { ...@@ -202,8 +202,13 @@ public class VankeMemberLoginServiceImpl implements IVankeMemberLoginService {
VankeDepartment vd = new VankeDepartment(); VankeDepartment vd = new VankeDepartment();
if(vdList == null || vdList.size() == 0 ){ // 如果不存在此部门 则新增部门 if(vdList == null || vdList.size() == 0 ){ // 如果不存在此部门 则新增部门
vd.setName(vankeVvUser.getDepartment()); vd.setName(vankeVvUser.getDepartment());
this.vankeDepartmentMapper.insertSelective(vd);
}else{//否则存在 }else{//否则存在
vd = vdList.get(0); vd = vdList.get(0);
if(vd.getDeleteStatus() == 0){//如果是已删除状态 新进会员则继续将此已删除部门转换成 未删除
vd.setDeleteStatus(1);
this.vankeDepartmentMapper.updateByPrimaryKeySelective(vd);
}
} }
// 执行插入会员操作插入ums_member表 // 执行插入会员操作插入ums_member表
um = new UmsMember(); um = new UmsMember();
...@@ -264,8 +269,13 @@ public class VankeMemberLoginServiceImpl implements IVankeMemberLoginService { ...@@ -264,8 +269,13 @@ public class VankeMemberLoginServiceImpl implements IVankeMemberLoginService {
VankeDepartment vd = new VankeDepartment(); VankeDepartment vd = new VankeDepartment();
if(vdList == null || vdList.size() == 0 ){ // 如果不存在此部门 则新增部门 if(vdList == null || vdList.size() == 0 ){ // 如果不存在此部门 则新增部门
vd.setName(vankeVvUser.getDepartment()); vd.setName(vankeVvUser.getDepartment());
this.vankeDepartmentMapper.insertSelective(vd);
}else{//否则存在 }else{//否则存在
vd = vdList.get(0); vd = vdList.get(0);
if(vd.getDeleteStatus() == 0){//如果是已删除状态 新进会员则继续将此已删除部门转换成 未删除
vd.setDeleteStatus(1);
this.vankeDepartmentMapper.updateByPrimaryKeySelective(vd);
}
} }
um.setUsername(vankeVvUser.getAccount()); um.setUsername(vankeVvUser.getAccount());
um.setPhone(vankeVvUser.getMobile()); um.setPhone(vankeVvUser.getMobile());
......
...@@ -852,8 +852,9 @@ ...@@ -852,8 +852,9 @@
</select> </select>
<select id="selectUmsMember" parameterType="com.macro.mall.model.dto.quanxing.UmsMemberDto" resultMap="BaseResultMap2"> <select id="selectUmsMember" parameterType="com.macro.mall.model.dto.quanxing.UmsMemberDto" resultMap="BaseResultMap2">
select a.* from ums_member a select a.* ,b.name departName,c.name stockRoomName from ums_member a
left join vanke_department b ON a.depart_id = b.id left join vanke_department b ON a.depart_id = b.id
left join vanke_stock_room c ON a.stock_room_id = c.id
where a.delete_status = 0 where a.delete_status = 0
<if test="accouuntType != null"> <if test="accouuntType != null">
and a.accouunt_type = #{accouuntType} and a.accouunt_type = #{accouuntType}
...@@ -866,7 +867,7 @@ ...@@ -866,7 +867,7 @@
</select> </select>
<select id="selectOneByMemberId" parameterType="java.lang.Long" resultMap="BaseResultMap2"> <select id="selectOneByMemberId" parameterType="java.lang.Long" resultMap="BaseResultMap2">
select a.*,b.name departmentName,c.name stockRoomName from ums_member a select a.*,b.name departName,c.name stockRoomName from ums_member a
left join vanke_department b ON a.depart_id = b.id left join vanke_department b ON a.depart_id = b.id
left join vanke_stock_room c ON a.stock_room_id = c.id left join vanke_stock_room c ON a.stock_room_id = c.id
where a.id = #{id} where a.id = #{id}
......
...@@ -80,6 +80,9 @@ ...@@ -80,6 +80,9 @@
<if test="barCode != null and barCode != ''"> <if test="barCode != null and barCode != ''">
and a.bar_code = #{barCode} and a.bar_code = #{barCode}
</if> </if>
<if test="stockRoomId != null and stockRoomId != ''">
and a.stock_room_id = #{stockRoomId}
</if>
</select> </select>
</mapper> </mapper>
\ No newline at end of file
...@@ -2,8 +2,19 @@ ...@@ -2,8 +2,19 @@
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd"> <!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.macro.mall.dao.vanke.VankeInboundOrderDao"> <mapper namespace="com.macro.mall.dao.vanke.VankeInboundOrderDao">
<resultMap id="BaseResultMap" type="com.macro.mall.model.dto.vanke.VankeInboundOrderDto" extends="com.macro.mall.mapper.VankeInboundOrderMapper.BaseResultMap"> <resultMap id="BaseResultMap" type="com.macro.mall.model.dto.vanke.VankeInboundOrderDto" extends="com.macro.mall.mapper.VankeInboundOrderMapper.BaseResultMap">
<result column="stockRoomName" jdbcType="VARCHAR" property="stockRoomName" />
<result column="receptName" jdbcType="VARCHAR" property="receptName" />
<result column="backName" jdbcType="VARCHAR" property="backName" />
</resultMap> </resultMap>
<select id="selectListByOther" parameterType="com.macro.mall.model.dto.vanke.VankeInboundOrderDto" resultMap="BaseResultMap">
select a.*,b.name receptName,c.name backName ,d.name stockRoomName from vanke_inbound_order a
left join ums_member b ON a.recept_outbound_member_id = b.id
left join ums_admin c ON a.back_outbound_member_id = c.id
left join vanke_stock_room d ON b.stock_room_id = d.id
where a.delete_status = 1
<if test=" receptInboundMemberId != null">
and a.recept_inbound_member_id = #{receptInboundMemberId}
</if>
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -53,4 +53,10 @@ ...@@ -53,4 +53,10 @@
) c ) c
GROUP BY c.goods_category_id GROUP BY c.goods_category_id
</select> </select>
<select id="selectListByInboundNo" parameterType="java.lang.String" resultMap="BaseResultMap">
select a.*,b.name goodsName,b.goods_no goodsNo from vanke_inbound_record a
left join vanke_goods b ON a.goods_id = b.id
where a.inbound_no =#{inboundNo}
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
</resultMap> </resultMap>
<select id="selectListByOther" resultMap="BaseResultMap" parameterType="com.macro.mall.model.dto.vanke.VankeOutboundOrderDto"> <select id="selectListByOther" resultMap="BaseResultMap" parameterType="com.macro.mall.model.dto.vanke.VankeOutboundOrderDto">
select a.* ,b.name memberName,c.name departmentName from vanke_outbound_order a select a.* ,b.name memberName,b.job_no jobNo,c.name departmentName from vanke_outbound_order a
left join ums_member b ON a.member_id = b.id left join ums_member b ON a.member_id = b.id
left join vanke_department c ON b.depart_id = c.id left join vanke_department c ON b.depart_id = c.id
where a.delete_status = 1 where a.delete_status = 1
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
<if test="queryTime != null and queryTime != ''"> <if test="queryTime != null and queryTime != ''">
and date_format(a.createtime, '%Y-%m-%d' ) = #{queryTime} and date_format(a.createtime, '%Y-%m-%d' ) = #{queryTime}
</if> </if>
order by a.createtime DESC
</select> </select>
<select id="selectListByOutboundNo" parameterType="java.lang.String" resultMap="BaseResultMap"> <select id="selectListByOutboundNo" parameterType="java.lang.String" resultMap="BaseResultMap">
...@@ -34,5 +35,10 @@ ...@@ -34,5 +35,10 @@
and a.outbound_no = #{outboundNo} and a.outbound_no = #{outboundNo}
</select> </select>
<select id="selectOneByMemberId" parameterType="java.lang.Long" resultType="java.util.Date">
select createtime from vanke_outbound_order
where member_id= #{memberId}
order by createtime desc
limit 0,1
</select>
</mapper> </mapper>
\ No newline at end of file
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
<select id="getPageList" parameterType="com.macro.mall.model.dto.vanke.VankeOutboundRecordDto" resultMap="BaseResultMap"> <select id="getPageList" parameterType="com.macro.mall.model.dto.vanke.VankeOutboundRecordDto" resultMap="BaseResultMap">
select select
a.*,b.name receptOutboundName,c.name backOutboundName,d.name goodsName,e.name stockRoomName,f.name memberName,g.name departmentName,h.name categoryName a.*,b.name receptOutboundName,c.name backOutboundName,d.name goodsName,d.goods_no goodsNo,e.name stockRoomName,f.name memberName,g.name departmentName,h.name categoryName
from vanke_outbound_record a from vanke_outbound_record a
left join ums_member b ON a.recept_outbound_member_id = b.id left join ums_member b ON a.recept_outbound_member_id = b.id
left join ums_member c ON a.back_outbound_member_id = c.id left join ums_member c ON a.back_outbound_member_id = c.id
...@@ -43,6 +43,7 @@ ...@@ -43,6 +43,7 @@
<if test="receptOutboundMemberId != null"> <if test="receptOutboundMemberId != null">
and a.recept_outbound_member_id = #{receptOutboundMemberId} and a.recept_outbound_member_id = #{receptOutboundMemberId}
</if> </if>
order by a.createtime desc
</select> </select>
<select id="selectOutboundCountByQueryTime" resultType="java.lang.Integer" parameterType="com.macro.mall.model.dto.vanke.StatiscalQueryParam" > <select id="selectOutboundCountByQueryTime" resultType="java.lang.Integer" parameterType="com.macro.mall.model.dto.vanke.StatiscalQueryParam" >
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment