package com.ld.igds.m.view;
import com.bstek.dorado.annotation.DataProvider;
import com.bstek.dorado.annotation.DataResolver;
import com.bstek.dorado.annotation.Expose;
import com.bstek.dorado.data.provider.Page;
import com.ld.igds.check.CheckStandardManager;
import com.ld.igds.m.ManageUtil;
import com.ld.igds.m.service.HQualityManageService;
import com.ld.igds.models.DicTrigger;
import com.ld.igds.models.MQuality;
import org.apache.commons.lang3.StringUtils;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Component;
import java.util.ArrayList;
import java.util.List;
import java.util.Map;
/**
* 质量追溯管理
*
* @author: chen
*/
@Component
public class QualityManagerPR {
@Autowired
private HQualityManageService qualityManageService;
@Autowired
private CheckStandardManager checkStandardManager;
/**
* 检验类别
*
* ${dorado.getDataProvider("qualityManagerPR#triggerType").getResult()}
*
* @return
*/
// @DataProvider
// public List triggerType() {
// List list = new ArrayList();
// list.add(new DicTrigger("01", "满仓初检"));
// list.add(new DicTrigger("02", "出仓检验"));
// list.add(new DicTrigger("03", "月度普检"));
// return list;
// }
@DataProvider
public List triggerType() {
List list = new ArrayList();
list.add(new DicTrigger("01", "入仓验收"));
list.add(new DicTrigger("02", "出仓检验"));
list.add(new DicTrigger("03", "3月末普检"));
list.add(new DicTrigger("04", "9月末普检"));
list.add(new DicTrigger("05", "入库初检"));
list.add(new DicTrigger("06", "月度检查"));
list.add(new DicTrigger("07", "3月末库内普查"));
list.add(new DicTrigger("08", "9月末库内普查"));
return list;
}
/**
* 指标类别
*
* ${dorado.getDataProvider("qualityManagerPR#triggerStandard").getResult()}
*
* @return
*/
@DataProvider
public List triggerStandard() {
List list = new ArrayList();
list.add(new DicTrigger("1", "国标"));
list.add(new DicTrigger("0", "其他"));
return list;
}
/**
* 检验依据
*
* ${dorado.getDataProvider("qualityManagerPR#triggerMetrics").getResult()}
*
* @return
*/
@DataProvider
public List triggerMetrics() {
List list = new ArrayList();
list.add(new DicTrigger("1", "质量指标检验"));
list.add(new DicTrigger("2", "储存品质检验"));
list.add(new DicTrigger("3", "食品安全检验"));
return list;
}
/**
* 分页获取质量巡检记录信息
*
* qualityManagerPR#listQuality
*
* @param page
* @param param
* @throws Exception
*/
@DataProvider
public void listQuality(Page page, Map param) throws Exception {
qualityManageService.listQuality(page, param);
}
/**
* 保存质量巡检记录及相关检测项信息
* qualityManagerPR#saveQuality
*
* @param data
*/
@DataResolver
public void saveQuality(MQuality data) {
String id = "";
if (StringUtils.isEmpty(data.getId())) {
id = ManageUtil.createQualityId(data.getType(), data.getTime());
}
qualityManageService.saveQuality(id, data);
//保存检测的化验项信息
if (null != data.getCheckItems()) {
checkStandardManager.updateCheckItems(id, null, data.getCheckItems());
}
}
/**
* qualityManagerPR#delQuality
*
* @param data
* @return
*/
@Expose
public String delQuality(MQuality data) {
return qualityManageService.delQuality(data);
}
}