1 В избранное 0 Ответвления 0

OSCHINA-MIRROR/wei-it-weiit-frame

Присоединиться к Gitlife
Откройте для себя и примите участие в публичных проектах с открытым исходным кодом с участием более 10 миллионов разработчиков. Приватные репозитории также полностью бесплатны :)
Присоединиться бесплатно
Клонировать/Скачать
Внести вклад в разработку кода
Синхронизировать код
Отмена
Подсказка: Поскольку Git не поддерживает пустые директории, создание директории приведёт к созданию пустого файла .keep.
Loading...
README.md

WEIIT: Быстрый фреймворк для веб-разработки на Java

WEIIT — это быстрый фреймворк для разработки веб-приложений на основе языка Java. Его основные цели — быстрая разработка, небольшой объём кода, простота изучения, мощные функции и лёгкость расширения. WEIIT подходит для быстрой разработки и создания лёгких приложений, значительно снижая затраты на разработку и обслуживание. Это бесплатный с открытым исходным кодом фреймворк.

WEIIT SaaS: Полностью открытый исходный код системы электронной коммерции SaaS

WEIIT SaaS — это полностью открытый исходный код системы SaaS для электронной коммерции, принадлежащий сообществу WEIIT. Старая версия фреймворка больше не поддерживается и не обновляется, она предназначена только для изучения и справки. Новая версия SaaS была полностью оптимизирована и обновлена от базовой архитектуры до переднего и заднего интерфейса. Адрес доступа: https://www.wei-it.com/.

Основные характеристики фреймворка:

  • Основан на популярных открытых исходных кодах Spring, Spring MVC и Mybatis, следует архитектуре MVC, разработан с лёгкостью и простотой использования, обладает большинством основных функций традиционных SSH-фреймворков и подходит для быстрой разработки.
  • Фреймворк абстрагирует сущности, перехватывает и обрабатывает параметры запросов, а все значения извлекаются из FormMap.
  • Определяет стандартные методы Mapper/Service/Controller, обычные методы унифицированы и опущены, разработчики сосредоточены на написании специфического бизнес-кода.
  • Унифицирует инкапсуляцию результатов E-объектов, то есть все значения объектов преобразуются в E-объекты, и значения получаются из E-объектов.
  • Единообразно инкапсулирует поддержку сторонних ресурсов, поддерживает Alibaba Cloud, Tencent Cloud, Qiniu Cloud, RongCloud, Kuaidi, Baidu и другие облачные сервисы. Устанавливает стандартные соглашения об использовании инструментальных классов, чтобы избежать произвольного использования технических членов сторонних инструментальных классов и увеличения затрат на обновление и обслуживание.
  • Поддерживает модульное проектирование, позволяет разделять часто используемые функции на модули компонентов, удобные для горячей замены, такие как функции управления системой, которые можно использовать в качестве горячих модулей.
  • Быстрое создание задач по расписанию, визуальное управление задачами по расписанию.
  • Поддержка интеграции с WeChat Mini Program, WeChat Public Account, WeChat Open Platform и WeChat Payment.
  • Поддержка разработки полного стека и разделения переднего и заднего конца двумя способами, используя Shiro и JWT для проверки подлинности соответственно.

К 2020 году команда WEIIT успешно предоставила техническую поддержку более чем 300 предприятиям на основе собственного фреймворка. Команда WEIIT также самостоятельно открыла исходный код проекта продукта, системы электронной коммерции WStore SaaS.

WStore SaaS в настоящее время недоступен, но доступна обновлённая версия WEIIT SaaS по адресу: https://www.wei-it.com/.

Maven репозиторий

Необходимые зависимости, поддержка ядра фреймворка:

 <dependency>
    <groupId>com.weiit</groupId>
    <artifactId>weiit-support-core</artifactId>
    <version>1.0.0</version>
</dependency>

Для поддержки сторонних инструментов и классов необходимо добавить следующие зависимости:

 <dependency>
    <groupId>com.weiit</groupId>
    <artifactId>weiit-resource-common</artifactId>
    <version>1.0.0</version>
</dependency>

Если требуется задача по расписанию, добавьте следующую зависимость:

 <dependency>
    <groupId>com.weiit</groupId>
    <artifactId>weiit-suppor-task</artifactId>
    <version>1.0.0</version>
</dependency>

Если вам нужен модуль управления системой, добавьте следующую зависимость:

 <dependency>
    <groupId>com.weiit</groupId>
    <artifactId>weiit-business-system</artifactId>
    <version>1.0.0</version>
</dependency>

Пример кода

Mapper слой:

package com.weiit.web.admin.user.mapper;

import java.util.List;

import com.weiit.core.entity.FormMap;
import com.weiit.core.mapper.BaseMapper;

/**
 * 用户中心 mapper
 * @author 半个鼠标
 * @date 2017年8月15日 下午3:20:16
 * @version 1.0
 * @company http://www.wei-it.com
 */

public interface UserMapper extends BaseMapper {
    
    /**
     * 查询所有的会员积分信息
     * @param param 
     * @return 返回所有会员的积分信息
     */
    List selectUserIntergralList(FormMap formMap);

    /**
     * 查询所有的会员余额信息
     * @param param 
     * @return 返回所有会员的余额信息
     */
    List selectbalanceList(FormMap forMap);

    /**
     * 查询所有的会员地址信息
     * @param param 
     * @return 返回所有会员的地址信息
     */
    List selectAdressList(FormMap formMap);
    
   /**
     * 删除会员地址库
     * @param param 
     * @return 
     */
    int removeAddress(FormMap formMap);
    
   /**
     * 删除会员余额记录
     * @param param 
     * @return 
     */
    int removeBalanceLog(FormMap formMap);
    
   /**
     * 删除会员积分记录
     * @param param 
     * @return 
     */
    int removeIntegralLog(FormMap formMap);

}

Service слой:

package com.weiit.web.admin.user.service;

import java.util.List;

import com.weiit.core.entity.FormMap;
import com.weiit.core.service.BaseService;

/**
 * 用户模块接口
 * @author 半个鼠标
 * @date 2017年8月15日 上午11:55:25
 * @version 1.0
 * @company http://www.wei-it.com 
 */
public interface UserService extends BaseService{

    List selectUserIntergralList(FormMap formMap);

    List selectbalanceList(FormMap forMap);
    
    List selectAdressList(FormMap formMap);
    
    void removeTrans(FormMap formMap);
}

Service реализация слоя:

package com.weiit.web.admin.user.service.impl;

import java.util.List;

import javax.annotation.Resource;

import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Propagation;
import org.springframework.transaction.annotation.Transactional;

import com.weiit.core.entity.FormMap;
import com.weiit.core.mapper.BaseMapper;
import com.weiit.core.service.impl.AbstractService;
import com.weiit.web.admin.user.mapper.UserMapper;
import
``` **com.weiit.web.admin.user.service.UserService;**

**/**
 * Интерфейс реализации интерфейса модуля члена
 * @author Полумышь
 * @date 2017-08-15 15:23:04
 * @version 1.0
 * @company http://www.wei-it.com
 */
@Service
@Transactional(readOnly=false)
public class UserServiceImpl extends AbstractService implements UserService {

    @Resource
    private UserMapper userMapper;

    @Override
    public BaseMapper setMapper() {
        return userMapper;
    }

    /**
     * Запрос на членский балл
     */
    @Override
    public List selectUserIntergralList(FormMap formMap) {
        return userMapper.selectUserIntergralList(formMap);
    }

    /**
     * Запрос баланса членов
     */
    @Override
    public List selectbalanceList(FormMap forMap) {
        return userMapper.selectbalanceList(forMap);
    }

    /**
     * Запросить адрес участника
     */
    @Override
    public List selectAdressList(FormMap formMap) {
        return userMapper.selectAdressList(formMap);
    }

    /**
     * Удалить участника (управление транзакциями) 1, удалить запись баллов. 2, удалите запись баланса. 3, удалите адрес получения. 4, удалите информацию об участнике
     */
    @Override
    @Transactional(readOnly=false,propagation=Propagation.REQUIRED,rollbackFor=Exception.class)//Управление транзакциями может быть записано, помните, что метод не может перехватывать исключения, и откат транзакции не будет выполнен при перехвате исключений, trycatch также нельзя использовать
    public void removeTrans(FormMap formMap) {
        //1, сначала удалите запись баллов
        userMapper.removeIntegralLog(formMap);
        //2, удалите запись баланса
        userMapper.removeBalanceLog(formMap);
        //3, удалите адрес доставки участника
        userMapper.removeAddress(formMap);
        //4, удалить участника
        userMapper.remove(formMap);
    }
    
    
}

Контрольный слой (разработка полного стека):

package com.weiit.web.admin.user.controller;

import java.util.List;

import javax.annotation.Resource;

import org.apache.log4j.Logger;
import org.springframework.stereotype.Controller;
import org.springframework.util.StringUtils;
import org.springframework.web.bind.annotation.RequestMapping;
import org.springframework.web.bind.annotation.ResponseBody;
import org.springframework.web.servlet.ModelAndView;
import com.github.pagehelper.PageHelper;
import com.github.pagehelper.PageInfo;
import com.weiit.core.entity.E;
import com.weiit.core.entity.FormMap;
import com.weiit.support.common.utils.WeiitUtil;
import com.weiit.web.admin.user.service.UserService;
import com.weiit.web.base.AdminController;
import com.weiit.web.base.Message;

/**
 * Управление бэкендом 》Модуль участника 
 * @author Полумышь
 * @date:2017-08-15 下午3:20:56
 * @version 1.0
 * @company http://www.wei-it.com
 */

@Controller
@RequestMapping("/user")
public class UserController extends AdminController {
    
    public static Logger logger = Logger.getLogger(UserController.class);
    
    @Resource
    private UserService userService;
    
    private String page_list = "/center/user/userList";
    
    private String page_intergral = "/center/user/userIntergral";
    
    private String redirect_list = "redirect:userList";
    
    private String page_balance = "/center/user/userBalance";
    
    private String page_adress = "/center/user/userAdress";

    /**
     * Управление участниками》Запрос списка участников
     */
    @RequestMapping("/userList")
    public ModelAndView userList() {
        logger.info("Введите UserController-user_list, отобразите список участников");
        
        ModelAndView result = UIView(page_list);
        FormMap formMap = getFormMap();
        // Открыть пейджинг
        PageHelper.startPage(formMap.getPage(), formMap.getRows());
        List userslist = userService.selectList(formMap);
        result.addObject("pageInfo", new PageInfo<E>(userslist));
        result.addObject("queryParam", formMap);
        return result;

    }

    /**
     * Управление участниками》Удалить участника
     */
    @RequestMapping("/remove")
    public ModelAndView remove() {
        logger.info("Войдите в UserController-remove, удалите участника");
        
        ModelAndView result = UIView(redirect_list, Message.DANGER);
        FormMap formMap = getFormMap();
        //Удалить пользователя【Транзакция】
        userService.removeTrans(formMap);
        return result;
    }

    /**
     * Управление участниками》Добавить участника
     */
    @RequestMapping("/save")
    public ModelAndView save() {
        logger.info("Войдите в UserController-save, добавьте участника");
        
        ModelAndView result = UIView(redirect_list, Message.INFO);
        FormMap formMap = getFormMap();
        if (StringUtils.isEmpty(formMap.getStr("user_id"))) {
    userService.insert(formMap);
} else {
    userService.edit(formMap);
}
return result;
}

/**
 * 会员管理》根据id查询会员
 */

@ResponseBody
@RequestMapping("/view")
public String view() {
    logger.info("进入UserController-view,根据id查询会员");
    
    FormMap formMap = getFormMap();
    E e = userService.selectOne(formMap);
    return toJsonAPI(e);
}

/**
 * 会员管理》查询用户积分
 */
@RequestMapping("/userIntergral")
public ModelAndView userIntergral() {
    logger.info("进入UserController-user_intergralList,会员积分查询");
    
    ModelAndView result = UIView(page_intergral);
    FormMap formMap = getFormMap();
    // 开启分页
    PageHelper.startPage(formMap.getPage(), formMap.getRows());
    List intergrallist = userService.selectUserIntergralList(formMap);
    result.addObject("pageInfo", new PageInfo<E>(intergrallist));
    result.addObject("queryParam", formMap);
    return result;
}

/**
 * 会员管理》查询用户余额
 */
@RequestMapping("/userBalance")
public ModelAndView userBalance() {
    logger.info("进入UserController-user_balanceList,会员佳额展示");
    
    FormMap forMap = getFormMap();
    List balancelist = userService.selectbalanceList(forMap);
    ModelAndView result = UIView(page_balance);
    result.addObject("pageInfo", new PageInfo<E>(balancelist));
    result.addObject("queryParam", forMap);
    return result;
}

/**
*会员管理》查询会员地址
*/
@RequestMapping("/userAddress")
public ModelAndView userAddress() {
    logger.info("进入UserController-useradressList,会员地址展示");
    
    ModelAndView result = UIView(page_adress);
    FormMap formMap = getFormMap();
    // 开启分页
    PageHelper.startPage(formMap.getPage(), formMap.getRows());
    List adresslist = userService.selectAdressList(formMap);
    result.addObject("pageInfo", new PageInfo<E>(adresslist));
    result.addObject("queryParam", formMap);
    return result;
}

/**
 * 会员管理》批量删除会员
 * */
@RequestMapping(value="/removeBatch")
public ModelAndView removeBatch(){
    logger.info("进入UserController-deleteBatch,批量删除会员");
    
    ModelAndView result = UIView(redirect_list, Message.INFO);
    FormMap formMap=getFormMap();
    String[] validate_id=formMap.getAttrNames("validate_id");//
    String validate_ids=WeiitUtil.arrayToString(validate_id);
    formMap.set("validate_ids", validate_ids);
    userService.removeBatch(formMap);
    return result;
} 

} ```
return toJsonAPI(userInfo);
    } else {
        return toJsonAPI(ApiResponseCode.TOKEN_INVALID);
   }

}

更多支持

weiit开源支持

avatar

Комментарии ( 0 )

Вы можете оставить комментарий после Вход в систему

Введение

Описание недоступно Развернуть Свернуть
Java и 6 других языков
Apache-2.0
Отмена

Обновления

Пока нет обновлений

Участники

все

Недавние действия

Загрузить больше
Больше нет результатов для загрузки
1
https://api.gitlife.ru/oschina-mirror/wei-it-weiit-frame.git
git@api.gitlife.ru:oschina-mirror/wei-it-weiit-frame.git
oschina-mirror
wei-it-weiit-frame
wei-it-weiit-frame
main