|
@ -0,0 +1,90 @@
|
|
|
package com.yihu.quota.controller;
|
|
|
|
|
|
import com.yihu.ehr.constants.ApiVersion;
|
|
|
import com.yihu.ehr.util.rest.Envelop;
|
|
|
import com.yihu.quota.model.view.View;
|
|
|
import com.yihu.quota.model.view.ViewDimension;
|
|
|
import com.yihu.quota.service.view.ViewDimensionService;
|
|
|
import com.yihu.quota.service.view.ViewService;
|
|
|
import io.swagger.annotations.Api;
|
|
|
import io.swagger.annotations.ApiOperation;
|
|
|
import io.swagger.annotations.ApiParam;
|
|
|
import org.springframework.beans.factory.annotation.Autowired;
|
|
|
import org.springframework.web.bind.annotation.RequestMapping;
|
|
|
import org.springframework.web.bind.annotation.RequestMethod;
|
|
|
import org.springframework.web.bind.annotation.RequestParam;
|
|
|
import org.springframework.web.bind.annotation.RestController;
|
|
|
|
|
|
/**
|
|
|
* @author janseny
|
|
|
* @date 2018年9月26日
|
|
|
*/
|
|
|
@RestController
|
|
|
@RequestMapping(ApiVersion.Version1_0 + "/viewDimension")
|
|
|
@Api(description = "OLAP 视图维度 控制入口")
|
|
|
public class ViewDimensionController extends BaseController {
|
|
|
|
|
|
@Autowired
|
|
|
private ViewDimensionService viewDimensionService;
|
|
|
@Autowired
|
|
|
private ViewService viewService;
|
|
|
|
|
|
@ApiOperation(value = "添加视图维度")
|
|
|
@RequestMapping(value = "/addViewDimension", method = RequestMethod.GET)
|
|
|
public Envelop addViewDimension(
|
|
|
@ApiParam(name = "code", value = "维度code", required = true)
|
|
|
@RequestParam(value = "code", required = true) String code,
|
|
|
@ApiParam(name = "name", value = "维度名称", required = true)
|
|
|
@RequestParam(value = "name", required = true) String name,
|
|
|
@ApiParam(name = "viewId", value = "多维数据集ID", required = true)
|
|
|
@RequestParam(value = "viewId", required = true) int viewId,
|
|
|
@ApiParam(name = "rankType", value = "1:行维度,2,:列维度,默认行维度", required = false)
|
|
|
@RequestParam(value = "rankType", required = false) String rankType,
|
|
|
@ApiParam(name = "groupRow", value = "行维度组", required = false)
|
|
|
@RequestParam(value = "groupRow", required = true) int groupRow,
|
|
|
@ApiParam(name = "groupRowOrder", value = "组内行维度顺序", required = false)
|
|
|
@RequestParam(value = "groupRowOrder", required = false) int groupRowOrder,
|
|
|
@ApiParam(name = "columnOrder", value = "列维度顺序", required = false)
|
|
|
@RequestParam(value = "columnOrder", required = false) int columnOrder,
|
|
|
@ApiParam(name = "rowMemberorderType", value = "行维度成员排序方式,1:按名称排序,2:按子聚合统计值排序,默认按名称排序。", required = false)
|
|
|
@RequestParam(value = "rowMemberorderType", required = false) String rowMemberorderType,
|
|
|
@ApiParam(name = "rowMemberCount", value = "行维度成员返回个数", required = false)
|
|
|
@RequestParam(value = "rowMemberCount", required = false) int rowMemberCount
|
|
|
){
|
|
|
Envelop envelop = new Envelop();
|
|
|
envelop.setSuccessFlg(true);
|
|
|
try {
|
|
|
View view = viewService.findOne(viewId);
|
|
|
ViewDimension viewDimension = new ViewDimension();
|
|
|
viewDimension.setViewId(viewId);
|
|
|
viewDimension.setDimensionCode(code);
|
|
|
viewDimension.setDimensionName(name);
|
|
|
String dataset = view.getDimensionDataset();
|
|
|
viewDimension.setEsIndex(dataset.substring(0,dataset.indexOf("/")));
|
|
|
viewDimension.setEsIndex(dataset.substring(dataset.indexOf("/")+1));
|
|
|
viewDimension.setRankType(rankType);
|
|
|
viewDimension.setGroupRow(groupRow);
|
|
|
viewDimension.setGroupRowOrder(groupRowOrder);
|
|
|
viewDimension.setColumnOrder(columnOrder);
|
|
|
viewDimension.setRowMemberOrderType(rowMemberorderType);
|
|
|
viewDimension.setRowMemberCount(rowMemberCount);
|
|
|
viewDimensionService.save(viewDimension);
|
|
|
}catch (Exception e){
|
|
|
e.printStackTrace();
|
|
|
envelop.setSuccessFlg(false);
|
|
|
}
|
|
|
return envelop;
|
|
|
}
|
|
|
|
|
|
@ApiOperation(value = "删除视图维度")
|
|
|
@RequestMapping(value = "/delViewDimension", method = RequestMethod.DELETE)
|
|
|
public Envelop delViewDimension(
|
|
|
@ApiParam(name = "id", value = "ID", required = true)
|
|
|
@RequestParam(value = "id", required = true) int id){
|
|
|
Envelop envelop = new Envelop();
|
|
|
envelop.setSuccessFlg(true);
|
|
|
viewDimensionService.delete(id);
|
|
|
return envelop;
|
|
|
}
|
|
|
|
|
|
}
|