package com.mfh.comna.bizz.material;
import com.alibaba.fastjson.JSON;
import com.mfh.comna.bizz.material.entity.MsgAttr;
import com.mfh.comna.bizz.material.entity.ResourceData;
import com.mfh.comna.bizz.msg.entity.DataItem;
import com.mfh.comna.bizz.msg.entity.ImageTextParam;
import com.mfh.comna.comn.database.dao.FileNetDao;
import com.mfh.comna.view.img.FineImgView;
import java.util.ArrayList;
import java.util.List;
/**
* 素材工具类
* Created by Administrator on 14-5-19.
*/
public class ResourceUtil {
/**
* 获取多个属性
* @param rsData
* @return
*/
public List<MsgAttr> getMsgAttrList(ResourceData rsData) {
return getMsgAttrList(rsData.getType(), rsData.getParam());
}
public List<MsgAttr> getMsgAttrList(int type, String param) {
List<MsgAttr> msgAttrList = null;
switch(type){
case 0://文本
MsgAttr ma = JSON.parseObject(param, MsgAttr.class);
msgAttrList = new ArrayList<MsgAttr>();
msgAttrList.add(ma);
break;
case 1://图文
msgAttrList = JSON.parseArray(param, MsgAttr.class);
break;
case 2://图片
case 3://音频
case 4://视频
default:
MsgAttr mat = JSON.parseObject(param, MsgAttr.class);
msgAttrList = new ArrayList<MsgAttr>();
msgAttrList.add(mat);
}
return msgAttrList;
}
/**
* 获取单个属性
* @return
*/
public MsgAttr getMsgAttr(ResourceData rsData) {
String param = rsData.getParam();
switch(rsData.getType()){
case 0://文本
return JSON.parseObject(param, MsgAttr.class);
case 1://图文
List<MsgAttr> msgAttrList = JSON.parseArray(param, MsgAttr.class);
return msgAttrList.get(0);
case 2://图片
case 3://音频
case 4://视频
default:
return JSON.parseObject(param, MsgAttr.class);
}
}
public static String MAT_IMG_DIR = "materialImgDir";
/**
* 获取素材图像的文件访问dao对象
* @return
*/
public static FileNetDao getMatImgFao() {
return FineImgView.getFao(null, MAT_IMG_DIR);
}
/**
* 转换
* @param param
* @return
*/
public static List<MsgAttr> toMsgAttrs(ImageTextParam param) {
List<DataItem> items = param.getData();
if (items == null)
return null;
List<MsgAttr> ret = new ArrayList<MsgAttr>();
for (DataItem item : items) {
ret.add(item.toMsgAttr());
}
return ret;
}
}