于紫祥_1901
2020-12-24 f28149d8183a62f87fa9c8df9ae589070d83f612
src/main/java/com/moral/service/impl/MachineActivateServiceImpl.java
@@ -2,19 +2,23 @@
import static org.apache.commons.lang3.time.DateUtils.truncate;
import java.text.ParseException;
import java.util.Calendar;
import java.util.Date;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
import java.util.UUID;
import javax.annotation.Resource;
import org.apache.commons.lang3.time.DateUtils;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import org.springframework.util.ObjectUtils;
import com.github.pagehelper.PageHelper;
import com.moral.common.bean.Constants;
import com.moral.common.bean.PageBean;
import com.moral.common.exception.BusinessException;
import com.moral.common.util.ValidateUtil;
import com.moral.entity.MachineActivate;
@@ -31,30 +35,27 @@
   private MachineActivateMapper machineActivateMapper;
   @Override
   public Map<String, Object> checkActivate(String macCpuCode) {
   public Integer checkActivate(String macCpuCode) {
      ValidateUtil.notEmpty(macCpuCode, "param.is.null");
      Map<String, Object> map = new HashMap<String, Object>();
      String result = "1";
      MachineActivate machineActivate = new MachineActivate();
      machineActivate.setMacCpuCode(macCpuCode);
      machineActivate = machineActivateMapper.selectOne(machineActivate);
      if (ObjectUtils.isEmpty(machineActivate)) {
         result = "0";
      }
      map.put("result", result);
      return map;
      return machineActivateMapper.selectCount(machineActivate);
   }
   @Override
   @Transactional
   public Map<String, Object> activateMachine(Map<String, Object> parameters) {
   public Integer activateMachine(Map<String, Object> parameters) {
      ValidateUtil.notNull(parameters.get("macCpuCode"), "param.is.null");
      ValidateUtil.notNull(parameters.get("activationCode"), "param.is.null");
      Map<String, Object> map = new HashMap<String, Object>();
      MachineActivate machineActivate = new MachineActivate();
      machineActivate.setMacCpuCode(parameters.get("macCpuCode").toString());
      int selectCount = machineActivateMapper.selectCount(machineActivate);
      if (selectCount > 0) {
         throw new BusinessException("您的机器已激活码,请联系管理员");
      }
      Example example = new Example(MachineActivate.class);
      Criteria criteria = example.createCriteria();
      criteria.andEqualTo("activationCode", parameters.get("activationCode"));
@@ -64,12 +65,47 @@
      if (ObjectUtils.isEmpty(machineActivates)) {
         throw new BusinessException("您的激活码无效,请联系管理员");
      }
      MachineActivate machineActivate = machineActivates.get(0);
      machineActivate = machineActivates.get(0);
      machineActivate.setIsUsed(Constants.IS_DELETE_TRUE);
      machineActivate.setMacCpuCode((String) parameters.get("macCpuCode"));
      int updateCount = machineActivateMapper.updateByPrimaryKeySelective(machineActivate);
      map.put("result", updateCount);
      return map;
      return machineActivateMapper.updateByPrimaryKeySelective(machineActivate);
   }
   @Override
   @Transactional
   public Integer createMachineActivate(Integer organizationId,String expireDate) {
      ValidateUtil.notNull(organizationId, "param.is.null");
      ValidateUtil.notNull(expireDate, "param.is.null");
      MachineActivate machineActivate = new MachineActivate();
      try {
         machineActivate.setExpireDate(DateUtils.parseDate(expireDate, "yyyy-MM-dd"));
      } catch (ParseException e) {
         e.printStackTrace();
         throw new BusinessException("expireDate格式输入错误!");
      }
      String activationCode = "";
      Integer count = 0;
      do {
         activationCode = UUID.randomUUID().toString().replaceAll("-", "").substring(0, 16).toUpperCase();
         machineActivate.setActivationCode(activationCode);
         count = machineActivateMapper.selectCount(machineActivate);
      } while (count > 1);
      machineActivate.setCreateTime(new Date());
      machineActivate.setIsUsed(Constants.IS_USED_FALSE);
      machineActivate.setOrganizationId(organizationId);
      return machineActivateMapper.insertSelective(machineActivate);
   }
   @Override
   public PageBean<MachineActivate> getMachineActivates(Map<String, Object> parameters) {
      Example example = new Example(MachineActivate.class);
      Criteria criteria = example.createCriteria();
      criteria.andEqualTo("organizationId", parameters.get("organizationId"));
      PageHelper.startPage(Integer.valueOf((String) parameters.get("pageIndex")),Integer.valueOf((String) parameters.get("pageSize")));
      List<MachineActivate> machineActivates = machineActivateMapper.selectByExample(example);
      return new PageBean<MachineActivate>(machineActivates);
   }
}