wuxw
2019-04-08 69638238110f01e586a1688206a6c663f0a4a7ee
OrderService/src/main/java/com/java110/order/smo/impl/PrivilegeSMOImpl.java
@@ -4,6 +4,7 @@
import com.java110.common.cache.MappingCache;
import com.java110.common.constant.MappingConstant;
import com.java110.common.util.Assert;
import com.java110.core.factory.GenerateCodeFactory;
import com.java110.order.dao.IPrivilegeDAO;
import com.java110.order.smo.IPrivilegeSMO;
import org.slf4j.Logger;
@@ -35,12 +36,17 @@
        Assert.jsonObjectHaveKey(privilegeInfo,"storeTypeCd","请求报文中未包含storeTypeCd节点");
        Assert.jsonObjectHaveKey(privilegeInfo,"userFlag","请求报文中未包含userFlag节点");
        JSONObject privilegeObj = JSONObject.parseObject(privilegeInfo);
        String storeTypeCd = privilegeObj.getString("storeTypeCd");
        String defaultPrivilege = MappingCache.getValue(MappingConstant.DOMAIN_DEFAULT_PRIVILEGE_ADMIN,storeTypeCd);
        String privilegeDomain = "admin".equals(privilegeObj.getString("userFlag"))
                ?MappingConstant.DOMAIN_DEFAULT_PRIVILEGE_ADMIN:MappingConstant.DOMAIN_DEFAULT_PRIVILEGE;
        String defaultPrivilege = MappingCache.getValue(privilegeDomain,storeTypeCd);
        Assert.hasLength(defaultPrivilege,"在c_mapping 表中未配置商户类型为"+storeTypeCd+" 的默认权限组");
        privilegeObj.put("pId",defaultPrivilege);
@@ -52,6 +58,71 @@
        return new ResponseEntity<String>("未知异常", HttpStatus.INTERNAL_SERVER_ERROR);
    }
    /**
     * 删除用户权限
     * @param privilegeInfo
     * @return
     */
    @Override
    public ResponseEntity<String> deleteUserAllPrivilege(String privilegeInfo) {
        Assert.isJsonObject(privilegeInfo,"请求报文不是有效的json格式");
        Assert.jsonObjectHaveKey(privilegeInfo,"userId","请求报文中未包含userId节点");
        JSONObject privilegeObj = JSONObject.parseObject(privilegeInfo);
        if(privilegeDAOImpl.deleteUserAllPrivilege(privilegeObj)){
            return new ResponseEntity<String>("成功", HttpStatus.OK);
        }
        return new ResponseEntity<String>("未知异常", HttpStatus.INTERNAL_SERVER_ERROR);
    }
    @Override
    public ResponseEntity<String> savePrivilegeGroup(String privilegeGroupInfo) {
        Assert.isJsonObject(privilegeGroupInfo,"请求报文不是有效的json格式");
        Assert.jsonObjectHaveKey(privilegeGroupInfo,"name","请求报文中未包含name节点");
        Assert.jsonObjectHaveKey(privilegeGroupInfo,"storeId","请求报文中未包含storeId节点");
        Assert.jsonObjectHaveKey(privilegeGroupInfo,"storeTypeCd","请求报文中未包含storeTypeCd节点");
        JSONObject privilegeGroupObj = JSONObject.parseObject(privilegeGroupInfo);
        privilegeGroupObj.put("pgId",GenerateCodeFactory.getPgId());
        if(privilegeDAOImpl.savePrivilegeGroup(privilegeGroupObj)){
            return new ResponseEntity<String>("成功", HttpStatus.OK);
        }
        return new ResponseEntity<String>("未知异常", HttpStatus.INTERNAL_SERVER_ERROR);
    }
    /**
     * 删除权限组
     * @param privilegeGroupInfo
     * @return
     */
    @Override
    public ResponseEntity<String> deletePrivilegeGroup(String privilegeGroupInfo) {
        Assert.isJsonObject(privilegeGroupInfo,"请求报文不是有效的json格式");
        Assert.jsonObjectHaveKey(privilegeGroupInfo,"pgId","请求报文中未包含pgId节点");
        Assert.jsonObjectHaveKey(privilegeGroupInfo,"storeId","请求报文中未包含storeId节点");
        Assert.jsonObjectHaveKey(privilegeGroupInfo,"storeTypeCd","请求报文中未包含storeTypeCd节点");
        JSONObject privilegeGroupObj = JSONObject.parseObject(privilegeGroupInfo);
        //删除权限组
        privilegeDAOImpl.deletePrivilegeGroup(privilegeGroupObj);
        //删除权限组和权限关系
        privilegeDAOImpl.deletePrivilegeRel(privilegeGroupObj);
        return new ResponseEntity<String>("成功", HttpStatus.OK);
    }
    public IPrivilegeDAO getPrivilegeDAOImpl() {
        return privilegeDAOImpl;