AOS 自動生成程式碼(三) Service生成

billhepeng發表於2016-08-11

在匯入表結構設定好欄位生成DAO之後就可以生成相應的service 檔案了。

生成service 時候請選擇相應的service目錄,如果不是service 目錄將提示不能生成。


生成 service 時候會帶出相應生成Dao 的package資訊,如果在沒有生成Dao時候,生成Service 檔案會出現錯誤提示。


生成Service 提示:



生成Service目錄檔案


生成Service檔案:

package cn.core.test.modules.service;

import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;

import cn.autobuilder.dao.mapper.Co_testMapper;
import cn.autobuilder.dao.po.Co_testPO;
import cn.osworks.aos.core.asset.AOSCons;
import cn.osworks.aos.core.asset.AOSUtils;
import cn.osworks.aos.core.id.AOSId;
import cn.osworks.aos.core.typewrap.Dto;
import cn.osworks.aos.core.typewrap.Dtos;

/**
 * <b>自動生成測試[co_test] controller</b>
 * <p>
 * </p>
 * 
 * @author penghe
 * @date 2016-08-11 18:01:47
 */
@Service
public class Co_testService {
	@Autowired
	private Co_testMapper co_testmapper;

	/**
	 * 儲存資訊自動生成測試
	 * 
	 * @param inDto
	 * @return
	 */
	@Transactional
	public Dto saveCo_test(Dto inDto) {
		Dto outDto = Dtos.newDto();
		Co_testPO co_testPO = new Co_testPO();
		AOSUtils.copyProperties(inDto, co_testPO);
		if (!checkIsExist(co_testPO)) {
			outDto.setAppCode(AOSCons.ERROR);
			String msg = co_testPO.getName_() + "已被存在, 請重新輸入。";
			outDto.setAppMsg(msg);
			return outDto;
		}
		co_testPO.setId_(AOSId.uuid());
		co_testmapper.insert(co_testPO);
		outDto.setAppCode(AOSCons.SUCCESS);
		outDto.setAppMsg("操作完成,使用者新增成功。");
		return outDto;
	}

	/**
	 * 更新自動生成測試
	 * 
	 * @param inDto
	 * @return
	 */
	@Transactional
	public Dto updateCo_test(Dto inDto) {
		Dto outDto = Dtos.newDto();
		Co_testPO co_testPO = new Co_testPO();
		AOSUtils.copyProperties(inDto, co_testPO);
		co_testmapper.updateByKey(co_testPO);
		outDto.setAppCode(AOSCons.SUCCESS);
		outDto.setAppMsg("操作完成,使用者新增成功。");
		return outDto;
	}

	/**
	 * 刪除自動生成測試
	 * 
	 * @param inDto
	 * @return
	 */
	@Transactional
	public Dto delete(Dto qDto) {
		Dto outDto = Dtos.newDto();
		String[] selections = qDto.getRows();
		int del = 0;
		for (String id_ : selections) {
			co_testmapper.deleteByKey(id_);
			del++;
		}
		String msg = "操作完成, ";
		if (del > 0) {
			msg = AOSUtils.merge(msg + "成功刪除[{0}]個。", del);
		}
		outDto.setAppMsg(msg);
		return outDto;
	}

	/**
	 * 判斷存在自動生成測試
	 */
	public boolean checkIsExist(Co_testPO co_testPO) {
		Dto calcDto = Dtos.newCalcDto("COUNT(id_)");
		calcDto.put("name_", co_testPO.getName_());
		Integer countInteger = Integer.valueOf(co_testmapper.calc(calcDto));
		boolean out = true;
		if (countInteger > 0) {
			out = false;
		}
		return out;
	}

}





相關文章