|  |  |  | 
|---|
|  |  |  | import com.matrix.core.pojo.PaginationVO; | 
|---|
|  |  |  | import com.matrix.core.tools.DateUtil; | 
|---|
|  |  |  | import com.matrix.core.tools.LogUtil; | 
|---|
|  |  |  | import com.matrix.core.tools.PropertiesUtil; | 
|---|
|  |  |  | import com.matrix.core.tools.StringUtils; | 
|---|
|  |  |  | import com.matrix.core.tools.WebUtil; | 
|---|
|  |  |  | import com.matrix.core.tools.excl.ExcelSheetPO; | 
|---|
|  |  |  | import com.matrix.core.tools.excl.ExcelUtil; | 
|---|
|  |  |  | import com.matrix.core.tools.excl.ExcelVersion; | 
|---|
|  |  |  | import com.matrix.system.common.bean.SysUsers; | 
|---|
|  |  |  | import com.matrix.system.common.bean.SystemDictionary; | 
|---|
|  |  |  | import com.matrix.system.common.constance.AppConstance; | 
|---|
|  |  |  | import com.matrix.system.common.dao.CustomerDataDictionaryDao; | 
|---|
|  |  |  | import com.matrix.system.common.service.SysUsersService; | 
|---|
|  |  |  | import com.matrix.system.common.service.SystemDictionaryService; | 
|---|
|  |  |  | import com.matrix.system.common.tools.DataAuthUtil; | 
|---|
|  |  |  | import com.matrix.system.common.tools.ResponseHeadUtil; | 
|---|
|  |  |  | import com.matrix.system.constance.Dictionary; | 
|---|
|  |  |  | import com.matrix.system.hive.action.util.QueryUtil; | 
|---|
|  |  |  | 
|---|
|  |  |  | import com.matrix.system.hive.service.*; | 
|---|
|  |  |  | import com.matrix.system.score.dao.ScoreVipDetailDao; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Autowired; | 
|---|
|  |  |  | import org.springframework.beans.factory.annotation.Value; | 
|---|
|  |  |  | import org.springframework.stereotype.Controller; | 
|---|
|  |  |  | import org.springframework.ui.ModelMap; | 
|---|
|  |  |  | import org.springframework.web.bind.annotation.*; | 
|---|
|  |  |  | import org.springframework.web.multipart.MultipartFile; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | import java.io.File; | 
|---|
|  |  |  | import java.io.IOException; | 
|---|
|  |  |  | import java.io.OutputStream; | 
|---|
|  |  |  | import java.net.URLDecoder; | 
|---|
|  |  |  | import java.net.URLEncoder; | 
|---|
|  |  |  | import java.util.ArrayList; | 
|---|
|  |  |  | import java.util.Arrays; | 
|---|
|  |  |  | 
|---|
|  |  |  | @Controller | 
|---|
|  |  |  | @RequestMapping(value = "admin/vipInfo") | 
|---|
|  |  |  | public class VipInfoController extends BaseController { | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Value("${file_storage_path}") | 
|---|
|  |  |  | private String fileStoragePath; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @Resource | 
|---|
|  |  |  | private SysVipInfoService vipInfoService; | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | public @ResponseBody | 
|---|
|  |  |  | AjaxResult showList(PaginationVO pageVo, SysVipInfo vipInfo) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | //        if (!getMe().getShopRole().equals(Dictionary.FLAG_YES_Y)) { | 
|---|
|  |  |  | vipInfo.setShopId(getMe().getShopId()); | 
|---|
|  |  |  | //        } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | QueryUtil.setQueryLimit(vipInfo); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return showList(vipInfoService, vipInfo, pageVo); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | 
|---|
|  |  |  | vips.get(0).setLabels(sysVipLabelDao.selectByVipId(vips.get(0).getId())); | 
|---|
|  |  |  | vips.get(0).setAge(DateUtil.getAgeForBirthDay(vips.get(0).getBirthday1())); | 
|---|
|  |  |  | vips.get(0).setBalance(moneyCardUseDao.selectVipCardTotalMoney(vips.get(0).getId())); | 
|---|
|  |  |  | vips.get(0).setArrears(sysOrderService.findVipArrearsByVipId(vips.get(0).getId())); | 
|---|
|  |  |  | AjaxResult result = new AjaxResult(AjaxResult.STATUS_SUCCESS, vips, 0); | 
|---|
|  |  |  | return result; | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | vipInfo.setVipState(Dictionary.VIP_STATE_HY); | 
|---|
|  |  |  | SysUsers users = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); | 
|---|
|  |  |  | vipInfo.setShopId(users.getShopId()); | 
|---|
|  |  |  | if(vipInfo.getShopId()==null){ | 
|---|
|  |  |  | vipInfo.setShopId(users.getShopId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | return add(vipInfoService, vipInfo, "会员信息"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|
|  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/del") | 
|---|
|  |  |  | public @ResponseBody | 
|---|
|  |  |  | AjaxResult del(String keys) { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | return remove(vipInfoService, keys); | 
|---|
|  |  |  | List<Long> ids = StringUtils.strToCollToLong(keys, ","); | 
|---|
|  |  |  | int i = vipInfoService.removeLogic(ids); | 
|---|
|  |  |  | if (i > 0) { | 
|---|
|  |  |  | return new AjaxResult(AjaxResult.STATUS_SUCCESS, "成功删除" + i + "条数据"); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | return new AjaxResult(AjaxResult.STATUS_FAIL, "删除失败"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | //        return remove(vipInfoService, keys); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | /** | 
|---|
|  |  |  | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/exportExcel") | 
|---|
|  |  |  | public void report(ModelMap model, HttpServletRequest request, HttpServletResponse response, | 
|---|
|  |  |  | public void report( HttpServletResponse response, | 
|---|
|  |  |  | SysVipInfo vipInfo) throws IOException { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (vipInfo.getVipType() != null && !(vipInfo.getVipType().equals(""))) { | 
|---|
|  |  |  | vipInfo.setVipType(URLDecoder.decode(vipInfo.getVipType(), "UTF-8")); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (vipInfo.getVipName() != null && !"".equals(vipInfo.getVipName())) { | 
|---|
|  |  |  | vipInfo.setVipName(URLDecoder.decode(vipInfo.getVipName(), "UTF-8")); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (vipInfo.getArrivalWay() != null && !"".equals(vipInfo.getArrivalWay())) { | 
|---|
|  |  |  | vipInfo.setArrivalWay(URLDecoder.decode(vipInfo.getArrivalWay(), "UTF-8")); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | if (vipInfo.getVipState() != null && !"".equals(vipInfo.getVipState())) { | 
|---|
|  |  |  | vipInfo.setVipState(URLDecoder.decode(vipInfo.getVipState(), "UTF-8")); | 
|---|
|  |  |  | SysUsers sysUsers = WebUtil.getSessionAttribute(MatrixConstance.LOGIN_KEY); | 
|---|
|  |  |  | if(!DataAuthUtil.hasAllShopAuth()){ | 
|---|
|  |  |  | vipInfo.setShopId(sysUsers.getShopId()); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | List<ExcelSheetPO> res = new ArrayList<>(); | 
|---|
|  |  |  | ExcelSheetPO orderSheet = new ExcelSheetPO(); | 
|---|
|  |  |  | String title = "每日单据明细"; | 
|---|
|  |  |  | String title = "会员资料"; | 
|---|
|  |  |  | orderSheet.setSheetName(title); | 
|---|
|  |  |  | orderSheet.setTitle(title); | 
|---|
|  |  |  | String[] header = {"会员编号", "姓名", "性别", "手机号码", "会员类型", "会员活跃度", "到店途径", "健康顾问", "所属门店"}; | 
|---|
|  |  |  | 
|---|
|  |  |  | return showList(vipInfoService, info, null); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/importVipInfo") | 
|---|
|  |  |  | @ResponseBody | 
|---|
|  |  |  | public AjaxResult importVipInfo(HttpServletResponse response, HttpServletRequest request, @RequestParam(value = "file", required = false) MultipartFile file) throws IOException { | 
|---|
|  |  |  |  | 
|---|
|  |  |  | String fileName = file.getOriginalFilename(); | 
|---|
|  |  |  | String dirPath = PropertiesUtil.getString(AppConstance.FILES_TORAGE_PATH); | 
|---|
|  |  |  | String dirPath = fileStoragePath; | 
|---|
|  |  |  | //        String dirPath = "C:/Users/wzy19/Desktop/zq"; | 
|---|
|  |  |  | File fileDir = new File(dirPath); | 
|---|
|  |  |  | LogUtil.info("#----->{}#", fileDir.exists()); | 
|---|
|  |  |  | 
|---|
|  |  |  | public String toImportForm() { | 
|---|
|  |  |  | return "admin/hive/vip/vipImport-form"; | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | @RequestMapping(value = "/validFlagChange") | 
|---|
|  |  |  | @ResponseBody | 
|---|
|  |  |  | public AjaxResult validFlagChange(Long id) { | 
|---|
|  |  |  | SysVipInfo sysVipInfo = vipInfoService.findById(id); | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (sysVipInfo == null) { | 
|---|
|  |  |  | return AjaxResult.buildFailInstance("用户不存在"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | if (SysVipInfo.VALID_FLAG_Y == sysVipInfo.getValidFlag()) { | 
|---|
|  |  |  | sysVipInfo.setValidFlag(SysVipInfo.VALID_FLAG_N); | 
|---|
|  |  |  | } else { | 
|---|
|  |  |  | sysVipInfo.setValidFlag(SysVipInfo.VALID_FLAG_Y); | 
|---|
|  |  |  | } | 
|---|
|  |  |  |  | 
|---|
|  |  |  | vipInfoService.modify(sysVipInfo); | 
|---|
|  |  |  | return AjaxResult.buildSuccessInstance("设置成功"); | 
|---|
|  |  |  | } | 
|---|
|  |  |  | } | 
|---|