|  |  |  | 
|---|
|  |  |  | import com.matrix.core.tools.excl.ExcelUtil; | 
|---|
|  |  |  | import com.matrix.system.common.bean.SysUsers; | 
|---|
|  |  |  | import com.matrix.system.constance.Dictionary; | 
|---|
|  |  |  | import com.matrix.system.hive.bean.MoneyCardUse; | 
|---|
|  |  |  | import com.matrix.system.hive.bean.ShoppingGoods; | 
|---|
|  |  |  | import com.matrix.system.hive.bean.SysProjUse; | 
|---|
|  |  |  | import com.matrix.system.hive.bean.SysVipInfo; | 
|---|
|  |  |  | import com.matrix.system.hive.bean.*; | 
|---|
|  |  |  | import com.matrix.system.hive.dao.MoneyCardUseDao; | 
|---|
|  |  |  | import com.matrix.system.hive.dao.ShoppingGoodsDao; | 
|---|
|  |  |  | import com.matrix.system.hive.dao.SysProjUseDao; | 
|---|
|  |  |  | import com.matrix.system.hive.dao.SysVipInfoDao; | 
|---|
|  |  |  | import com.matrix.system.hive.plugin.message.StringUtil; | 
|---|
|  |  |  | import com.matrix.system.hive.plugin.util.CollectionUtils; | 
|---|
|  |  |  | import com.matrix.system.hive.service.MoneyCardUseService; | 
|---|
|  |  |  | import com.matrix.system.hive.service.SysProjUseService; | 
|---|
|  |  |  | import com.matrix.system.hive.service.SysProjuseFreezeService; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Value; | 
|---|
|  |  |  | import org.springframework.stereotype.Controller; | 
|---|
|  |  |  | import org.springframework.transaction.annotation.Transactional; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.RequestMapping; | 
|---|
|  |  |  | 
|---|
|  |  |  | @Resource | 
|---|
|  |  |  | private MoneyCardUseService moneyCardUseService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Resource | 
|---|
|  |  |  | private  SysProjUseDao projUseDao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | SysVipInfoDao vipInfoDao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | ShoppingGoodsDao shoppingGoodsDao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | MoneyCardUseDao moneyCardUseDao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Value("${default.vip.photo.woman}") | 
|---|
|  |  |  | String defaultWoman; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Value("${default.vip.photo.man}") | 
|---|
|  |  |  | String defaultman; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | public static final String fnCode = "projUse"; | 
|---|
|  |  |  | public static final String search = fnCode + ":search"; | 
|---|
|  |  |  | 
|---|
|  |  |  | projUseService.findInPage(sysProjUse, pageVo), projUseService.findTotal(sysProjUse)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 查看会员项目使用情况 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @author jiangyouyao | 
|---|
|  |  |  | * @date 2016-09-03 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping(value = "/findProjUseFlow") | 
|---|
|  |  |  | public @ResponseBody | 
|---|
|  |  |  | AjaxResult findProjUseFlow(PaginationVO pageVo, SysProjUseFlow projUseFlow) { | 
|---|
|  |  |  | return new AjaxResult(AjaxResult.STATUS_SUCCESS, | 
|---|
|  |  |  | projUseDao.selectProjUseFlow(projUseFlow, pageVo), projUseDao.selectProjUseFlowTotal(projUseFlow)); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 将项目设置为有效 | 
|---|
|  |  |  | 
|---|
|  |  |  | return new AjaxResult(AjaxResult.STATUS_FAIL, "项目转让失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/returnProj") | 
|---|
|  |  |  | public @ResponseBody | 
|---|
|  |  |  | AjaxResult returnTc(SysProjUse sysProjUse, Long moneyCardUseId, String tcRemark, Long shopId, Double money, String tcName) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | MoneyCardUse card = null; | 
|---|
|  |  |  | if (moneyCardUseId != null) { | 
|---|
|  |  |  | card = moneyCardUseService.findById(moneyCardUseId); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | int i = projUseService.returnMoneyProj(sysProjUse, card, moneyCardUseId); | 
|---|
|  |  |  | if (i > 0) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return new AjaxResult(AjaxResult.STATUS_SUCCESS, "退款成功"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return new AjaxResult(AjaxResult.STATUS_FAIL, "退款失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 退款 | 
|---|
|  |  |  | * | 
|---|
|  |  |  | * @return | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @RequestMapping(value = "/getEffectCard") | 
|---|
|  |  |  | public @ResponseBody | 
|---|
|  |  |  | AjaxResult getEffectCard(SysProjUse sysProjUse) { | 
|---|
|  |  |  | MoneyCardUse cardUse = moneyCardUseService.findByVipId(sysProjUse.getVipId()); | 
|---|
|  |  |  | double money = projUseService.getTotalMoneyProj(sysProjUse); | 
|---|
|  |  |  | if (cardUse != null) { | 
|---|
|  |  |  | cardUse.setRealMoney(money); | 
|---|
|  |  |  | List<MoneyCardUse> list = new ArrayList<MoneyCardUse>(); | 
|---|
|  |  |  | list.add(cardUse); | 
|---|
|  |  |  | return new AjaxResult(AjaxResult.STATUS_SUCCESS, null, "有有效会籍卡", list, null); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | //无会员卡则new一个,为了把钱传递到前台 | 
|---|
|  |  |  | cardUse = new MoneyCardUse(); | 
|---|
|  |  |  | cardUse.setRealMoney(money); | 
|---|
|  |  |  | List<MoneyCardUse> list = new ArrayList<MoneyCardUse>(); | 
|---|
|  |  |  | list.add(cardUse); | 
|---|
|  |  |  | return new AjaxResult(AjaxResult.STATUS_SUCCESS, null, "无有效会籍卡", list, null); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 冻结会员项目 | 
|---|
|  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | * 添加或修改会员項目信息 | 
|---|
|  |  |  | */ | 
|---|
|  |  |  | @Transactional | 
|---|
|  |  |  | @RequestMapping(value = "/addOrModify") | 
|---|
|  |  |  | public @ResponseBody | 
|---|
|  |  |  | AjaxResult addOrModify(SysProjUse sysProjUse) { | 
|---|
|  |  |  | if (sysProjUse.getId() != null) { | 
|---|
|  |  |  | SysUsers user=getMe(); | 
|---|
|  |  |  | //插入修改记录 | 
|---|
|  |  |  | SysProjUse oldProjUse = projUseService.findById(sysProjUse.getId()); | 
|---|
|  |  |  | SysProjUseFlow projUseFlow=new SysProjUseFlow(); | 
|---|
|  |  |  | projUseFlow.setProjUseId(sysProjUse.getId()); | 
|---|
|  |  |  | projUseFlow.setOptionType("人工修改"); | 
|---|
|  |  |  | projUseFlow.setProjName(oldProjUse.getProjName()); | 
|---|
|  |  |  | projUseFlow.setCreateBy(user.getSuName()); | 
|---|
|  |  |  | projUseFlow.setUpdateBy(user.getSuName()); | 
|---|
|  |  |  | projUseFlow.setPrice(sysProjUse.getPrice()); | 
|---|
|  |  |  | projUseFlow.setStatus(sysProjUse.getStatus()); | 
|---|
|  |  |  | projUseFlow.setBalance(sysProjUse.getBalance()); | 
|---|
|  |  |  | projUseFlow.setFailTime(sysProjUse.getFailTime()); | 
|---|
|  |  |  | projUseFlow.setIsOver(sysProjUse.getIsOver()); | 
|---|
|  |  |  | projUseFlow.setRemark(sysProjUse.getUpdateRemark()); | 
|---|
|  |  |  | projUseFlow.setSurplusCount(sysProjUse.getSurplusCount()); | 
|---|
|  |  |  | projUseDao.insertFlow(projUseFlow); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return modify(projUseService, sysProjUse, "项目"); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | return add(projUseService, sysProjUse, "项目"); | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | SysVipInfoDao vipInfoDao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | ShoppingGoodsDao shoppingGoodsDao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | SysProjUseDao projUseDao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Autowired | 
|---|
|  |  |  | MoneyCardUseDao moneyCardUseDao; | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/importProjUse") | 
|---|
|  |  |  | 
|---|
|  |  |  | Object tel = objects.get(1); | 
|---|
|  |  |  | if (tel != null) { | 
|---|
|  |  |  | String telStr = tel.toString(); | 
|---|
|  |  |  | SysVipInfo vipInfo = vipInfoDao.selectByPhone(telStr); | 
|---|
|  |  |  | SysVipInfo vipInfo = vipInfoDao.selectByPhone(telStr,sysUsers.getCompanyId()); | 
|---|
|  |  |  | if (vipInfo == null) { | 
|---|
|  |  |  | vipInfo = new SysVipInfo(); | 
|---|
|  |  |  | vipInfo.setShopId(sysUsers.getShopId()); | 
|---|
|  |  |  | vipInfo.setPhone(telStr); | 
|---|
|  |  |  | vipInfo.setPhoto(defaultWoman); | 
|---|
|  |  |  | vipInfo.setName(objects.get(0).toString()); | 
|---|
|  |  |  | vipInfoDao.insert(vipInfo); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | Object tel = objects.get(1); | 
|---|
|  |  |  | if (tel != null) { | 
|---|
|  |  |  | String telStr = tel.toString(); | 
|---|
|  |  |  | SysVipInfo vipInfo = vipInfoDao.selectByPhone(telStr); | 
|---|
|  |  |  | SysVipInfo vipInfo = vipInfoDao.selectByPhone(telStr,sysUsers.getCompanyId()); | 
|---|
|  |  |  | if (vipInfo == null) { | 
|---|
|  |  |  | vipInfo = new SysVipInfo(); | 
|---|
|  |  |  | vipInfo.setShopId(sysUsers.getShopId()); | 
|---|
|  |  |  | vipInfo.setPhone(telStr); | 
|---|
|  |  |  | vipInfo.setPhoto(defaultWoman); | 
|---|
|  |  |  | vipInfo.setName(objects.get(0).toString()); | 
|---|
|  |  |  | vipInfoDao.insert(vipInfo); | 
|---|
|  |  |  | } | 
|---|