package jp.dip.arimodoki.blogic;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Scope;
import org.springframework.stereotype.Service;
import jp.dip.arimodoki.common.CConst;
import jp.dip.arimodoki.common.JsonConvertIf;
import jp.dip.arimodoki.mapper.primary.GraphMapper;
import jp.dip.arimodoki.model.FormChartIf;
import jp.dip.arimodoki.model.data.ChartDoughnutData;
/**
* ドーナツグラフ描画情報を処理するビジネスロジッククラスです。
*/
@Scope("prototype")
@Service("BlChartImpl")
public class BlChartImpl implements CConst, BlChartIf {
@Autowired
private JsonConvertIf jsonConvert;
private FormChartIf formChart;
@Autowired
private GraphMapper mapperGraph;
/**
* フォームBeanの継承
* コントローラで取得したFormBeanを継承する
* @param form Chart情報フォームビーン
*/
public void setForm(FormChartIf form) {
this.formChart = form;
}
/**
* ドーナツグラフ情報を生成する
* ドーナツグラフ描画用JSONフォーマットに合わせた
* 階層構造のオブジェクトを作成する
* {"labels":["",..],"datasets":[{"data":["",..],"backgroundColor":["",..],"hoverBackgroundColor":["",..]]}]}
*/
@Transactional(readOnly=true, value="primaryTransactionManager")
public void getCharDoughnutData() throws Exception {
int category = this.formChart.getJsonReqParam().getCategory();
logger.log_info(this, "category["+category+"]");
String gdata = mapperGraph.getGraph(Integer.toString(category));
ChartDoughnutData chartDoughnutData = new ChartDoughnutData();
chartDoughnutData = (ChartDoughnutData)jsonConvert.Deserialize(gdata, chartDoughnutData);
formChart.setChartDoughnutData(chartDoughnutData);
//(参考)グラフ情報のJSON配列を取得してみる(ロギングのみ)
String[] glist = mapperGraph.getGraphList();
logger.log_info(this, "glist size["+glist.length+"]");
for(int i=0 ; i < glist.length ; i++) {
logger.log_info(this, "glist data["+glist[i]+"]");
}
//(参考)グラフ情報のJSON配列を取得してみる(ロギングのみ)
}
}
|