package com.matrix; import cn.hutool.core.collection.CollUtil; import com.matrix.core.constance.MatrixConstance; import com.matrix.core.pojo.AjaxResult; import com.matrix.core.pojo.PaginationVO; import com.matrix.core.tools.DateUtil; import com.matrix.core.tools.StringUtils; import com.matrix.core.tools.WebUtil; import com.matrix.system.common.authority.DefaultAuthorityManager; import com.matrix.system.common.bean.SysUsers; import com.matrix.system.common.dao.SysCompanyDao; import com.matrix.system.common.dao.SysUsersDao; import com.matrix.system.common.service.SysUsersService; import com.matrix.system.constance.Dictionary; import com.matrix.system.fenxiao.dao.BizUserDao; import com.matrix.system.fenxiao.entity.BizUser; import com.matrix.system.hive.bean.SysBeauticianState; import com.matrix.system.hive.bean.SysBedInfo; import com.matrix.system.hive.bean.SysProjServices; import com.matrix.system.hive.bean.SysVipInfo; import com.matrix.system.hive.dao.SysBedInfoDao; import com.matrix.system.hive.dao.SysShopInfoDao; import com.matrix.system.hive.dao.SysVipInfoDao; import com.matrix.system.hive.service.*; import com.matrix.system.padApi.dto.PadOrderListDto; import com.matrix.system.padApi.vo.PadOrderDetailVo; import org.junit.Test; import org.junit.runner.RunWith; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.boot.test.context.SpringBootTest; import org.springframework.test.context.junit4.SpringRunner; import org.springframework.transaction.annotation.Transactional; import javax.annotation.Resource; import java.util.ArrayList; import java.util.Date; import java.util.HashMap; import java.util.List; /** * bizuser转到vipinfo表工具类 * * @author jiangyouyao * @email 512061637@qq.com * @date 2019年2月25日 */ @RunWith(SpringRunner.class) @SpringBootTest(classes = {ZqErpApplication.class},webEnvironment =SpringBootTest.WebEnvironment.RANDOM_PORT) public class BizUserToVipInfoTool { @Autowired BizUserDao bizUserDao; @Autowired SysVipInfoDao sysVipInfoDao; @Autowired CodeService codeService; @Autowired SysVipInfoService sysVipInfoService; @Autowired private SysUsersService sysUsersService; @Autowired private DefaultAuthorityManager authorityManager; @Autowired SysShopInfoDao sysShopInfoDao; @Autowired SysCompanyDao sysCompanyDao; @Autowired private SysShopInfoService sysShopInfoService; @Resource private SysOrderService sysOrderService; @Resource private SysBedInfoService bedInfoService; @Resource private SysWorktimeService sysWorkTimeService; @Resource private SysUsersService usersService; @Autowired private SysUsersDao sysUsersDao; @Autowired private SysBedInfoDao sysBedInfoDao; @Test public void testFrist(){ SysUsers user = new SysUsers(); user.setShopId(13L); user.setCompanyId(17L); // SysUsers user = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); PadOrderListDto orderListDto = new PadOrderListDto(); orderListDto.setPageNum(1); orderListDto.setPageSize(5); int offset = (orderListDto.getPageNum() - 1) * orderListDto.getPageSize(); int limit = orderListDto.getPageSize(); PaginationVO pageVo = new PaginationVO(); pageVo.setOffset(offset); pageVo.setLimit(limit); // if (!DataAuthUtil.hasAllShopAuth()) { orderListDto.setShopId(user.getShopId()); // } // QueryUtil.setQueryLimitCom(orderListDto); List padApiOrderListInPage = sysOrderService.findPadApiOrderListInPage(orderListDto, pageVo); AjaxResult result = AjaxResult.buildSuccessInstance(""); result.putInMap("orderList",padApiOrderListInPage); // List mls = usersService.findByRoleName(true, Dictionary.STAFF_POST_MLS); user.setRoleName(Dictionary.STAFF_POST_MLS); List mls = sysUsersDao.selectByRoleName(user); Date date = new Date(); if(CollUtil.isNotEmpty(mls)){ SysBeauticianState sysBeauticianState = new SysBeauticianState(); sysBeauticianState.setBeginTime(DateUtil.getStartDate(date)); sysBeauticianState.setEndTime(DateUtil.getStartDate(date)); String panBanCodes = DateUtil.dateToString(sysBeauticianState.getBeginTime(),DateUtil.DATE_FORMAT_NO_SPLITE_DD); List staffs=new ArrayList<>(); if(sysWorkTimeService.isInWorkTime(user.getShopId(),sysBeauticianState.getBeginTime(),sysBeauticianState.getEndTime())){ staffs= sysUsersService.findByCodeBeaStateShop(user.getShopId(), sysBeauticianState, panBanCodes); if(CollUtil.isNotEmpty(staffs)){ result.putInMap("usedMls", mls.size() - staffs.size()); result.putInMap("freeMls", staffs.size()); }else{ result.putInMap("usedMls", mls.size()); result.putInMap("freeMls", 0); } } } SysBedInfo bedInfo = new SysBedInfo(); bedInfo.setShopId(user.getShopId()); List totalBed = bedInfoService.findByModel(bedInfo); if(CollUtil.isNotEmpty(totalBed)){ SysProjServices sysProjServices = new SysProjServices(); sysProjServices.setShopId(user.getShopId()); sysProjServices.setStartTime(DateUtil.getStartDate(date)); sysProjServices.setEndTime(DateUtil.getStartDate(date)); List freeBed = sysBedInfoDao.findFreeBed(sysProjServices); if(CollUtil.isNotEmpty(freeBed)){ result.putInMap("usedBed", totalBed.size() - freeBed.size()); result.putInMap("freeBed", freeBed); }else{ result.putInMap("usedBed", totalBed); result.putInMap("freeBed", 0); } } System.out.println(result.toString()); } public SysUsers getMe() { return (SysUsers) WebUtil.getSession().getAttribute(MatrixConstance.LOGIN_KEY); } @Test @Transactional public void addSettings(){ HashMap columnMap=new HashMap(); columnMap.put("company_id",17); List bizUsers = bizUserDao.selectByMap(columnMap); for (BizUser bizUser : bizUsers) { SysVipInfo sysVipInfo = sysVipInfoDao.selectByPhone(bizUser.getPhoneNumber(),17L); if(sysVipInfo!=null){ sysVipInfo=sysVipInfoService.findByOpenId(bizUser.getOpenId()); } if(sysVipInfo!=null){ sysVipInfo.setNickName(bizUser.getNickName()); sysVipInfo.setAvatarUrl(bizUser.getAvatarUrl()); sysVipInfo.setOpenId(bizUser.getOpenId()); sysVipInfo.setSessionKey(bizUser.getSessionKey()); sysVipInfoDao.update(sysVipInfo); }else{ SysVipInfo sysVipInfoNew = new SysVipInfo(); if(bizUser.getGender()!=null){ sysVipInfoNew.setSex(bizUser.getGender().equals("1")?"男":"女"); } sysVipInfoNew.setNickName(bizUser.getNickName()); sysVipInfoNew.setAvatarUrl(bizUser.getAvatarUrl()); sysVipInfoNew.setIsSales(SysVipInfo.NOT_SALES); sysVipInfoNew.setOpenId(bizUser.getOpenId()); sysVipInfoNew.setSessionKey(bizUser.getSessionKey()); sysVipInfoNew.setCompanyId(17L); sysVipInfoNew.setShopId(13L); sysVipInfoNew.setArrivalWay("微商城"); sysVipInfoNew.setVipName("微信用户"); sysVipInfoNew.setVipState(Dictionary.VIP_STATE_HY); sysVipInfoNew.setVipType(Dictionary.VIP_TYPE_NOCARD); sysVipInfoNew.setIsDeal(SysVipInfo.UNDEAL_VIP); sysVipInfoNew.setVipNo(StringUtils.getRandomString(10)); sysVipInfoNew.setCity(bizUser.getCity()); sysVipInfoNew.setArea(bizUser.getArea()); sysVipInfoNew.setProvince(bizUser.getProvince()); sysVipInfoNew.setPhone(bizUser.getPhoneNumber()); sysVipInfoNew.setPhoto(bizUser.getAvatarUrl()); sysVipInfoService.add(sysVipInfoNew); } System.out.println("处理进度"+ bizUsers.indexOf(bizUser)+"/"+bizUsers.size()); } } }