Commit 25299f62 authored by afe's avatar afe

Merge remote-tracking branch 'monitorAnalysis/liuna'

# Conflicts: # .idea/workspace.xml # src/main/webapp/WEB-INF/classes/com/hp/cmsz/repository/BusinessDao.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/repository/ChannelDao.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/repository/KpiDao.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/service/BusinessService.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/service/monitoroperation/XcdWarningInfoViewService.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/service/monitoroperation/XcdWorkingOrderInfoService.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/web/PageURLController.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/web/monitoroperation/KeyLinkProcessAnalysisController$1.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/web/monitoroperation/KeyLinkProcessAnalysisController$2.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/web/monitoroperation/KeyLinkProcessAnalysisController$3.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/web/monitoroperation/KeyLinkProcessAnalysisController$4.class # src/main/webapp/WEB-INF/classes/com/hp/cmsz/web/monitoroperation/WorkingOrderCreateController.class
parents 1f031902 fbe65425
This diff is collapsed.
......@@ -38,7 +38,7 @@ public class AccuracyRule implements Serializable {
@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="AccuracyRuleSequence")
@SequenceGenerator(name = "AccuracyRuleSequence", sequenceName = "accuracy_rule_info_t_seq", allocationSize=1)
@SequenceGenerator(name = "AccuracyRuleSequence", sequenceName = "ccolap.accuracy_rule_seq", allocationSize=1)
public Long getAccuracyRuleId() {
return accuracyRuleId;
......
package com.hp.cmsz.entity;
import java.io.Serializable;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
/**
* dim_kpi_t表对应的实体类
*
* @author Ma Wenmeng
*
*/
@Entity
@Table(name = "etl.dim_kpi_t")
public class DimKpi implements Serializable{
/**
*
*/
private Long kpiId;
private String code;
private String name;
private Long busnameId;
private Date crtTime;
private String crtUser;
private String currentVersion;
private Date invalidTime;
private Long origKpiId;
private Long kpiTypeId;
private String bacType;
private String isActive;
private Long kpiCycleTypeId;
private String calCycle;
private String ifPercentageKpi;
@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="DimKpiSequence")
@SequenceGenerator(name = "DimKpiSequence", sequenceName = "dim_kpi_seq", allocationSize=1)
public Long getKpiId() {
return kpiId;
}
public void setKpiId(Long kpiId) {
this.kpiId = kpiId;
}
public String getCode() {
return code;
}
public void setCode(String code) {
this.code = code;
}
public String getName() {
return name;
}
public void setName(String name) {
this.name = name;
}
public Long getBusnameId() {
return busnameId;
}
public void setBusnameId(Long busnameId) {
this.busnameId = busnameId;
}
public Date getCrtTime() {
return crtTime;
}
public void setCrtTime(Date crtTime) {
this.crtTime = crtTime;
}
public String getCrtUser() {
return crtUser;
}
public void setCrtUser(String crtUser) {
this.crtUser = crtUser;
}
public String getCurrentVersion() {
return currentVersion;
}
public void setCurrentVersion(String currentVersion) {
this.currentVersion = currentVersion;
}
public Date getInvalidTime() {
return invalidTime;
}
public void setInvalidTime(Date invalidTime) {
this.invalidTime = invalidTime;
}
public Long getOrigKpiId() {
return origKpiId;
}
public void setOrigKpiId(Long origKpiId) {
this.origKpiId = origKpiId;
}
public Long getKpiTypeId() {
return kpiTypeId;
}
public void setKpiTypeId(Long kpiTypeId) {
this.kpiTypeId = kpiTypeId;
}
public String getBacType() {
return bacType;
}
public void setBacType(String bacType) {
this.bacType = bacType;
}
public String getIsActive() {
return isActive;
}
public void setIsActive(String isActive) {
this.isActive = isActive;
}
public Long getKpiCycleTypeId() {
return kpiCycleTypeId;
}
public void setKpiCycleTypeId(Long kpiCycleTypeId) {
this.kpiCycleTypeId = kpiCycleTypeId;
}
public String getCalCycle() {
return calCycle;
}
public void setCalCycle(String calCycle) {
this.calCycle = calCycle;
}
public String getIfPercentageKpi() {
return ifPercentageKpi;
}
public void setIfPercentageKpi(String ifPercentageKpi) {
this.ifPercentageKpi = ifPercentageKpi;
}
}
......@@ -60,7 +60,6 @@ public class InsideXcdWorkingOrderInfo {
@Id
@GeneratedValue(strategy= GenerationType.SEQUENCE, generator="XcdWorkingOrderInfoSequence")
@SequenceGenerator(name = "XcdWorkingOrderInfoSequence", sequenceName = "seq_inner_Working_Order_id", allocationSize=1)
public Long getInnerWorkingOrderId() {
return innerWorkingOrderId;
}
......
package com.hp.cmsz.entity;
import java.io.Serializable;
import java.sql.Timestamp;
import java.util.Date;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.SequenceGenerator;
import javax.persistence.Table;
/**
* quality_rule_warehouse_info_t表对应的实体类
......@@ -14,27 +17,27 @@ import javax.persistence.SequenceGenerator;
* @author Liu Na
*
*/
public class QualityRule implements Serializable {
@Entity
@Table(name = "quality_rule_warehouse_info_t")
public class QualityRule {
private Long qualityRuleId;//质量规则ID
private Long businessId;//业务ID
private Long kpiId;//指标ID
private Long channelId;//渠道ID
private Long provinceId;//省份维表ID
private Long taskId;//任务ID
private Long dataSourceId;//数据来源ID
private String kpiMonitorTime;//指标检测时间
private String kpiMonitorRange;//指标检查范围
private double integrityThresholdValue;//完整性阈值
private Long timelinessThresholdValue;//及时性阈值
private String kpiMonitorRunTime;
private String businessTime;//指标业务时间
private Date ruleCrtTime;//规则创建时间
private Date ruleUpdateTime;//规则更新时间
private String rileValidFlag;//规则是否有效
private String ruleValidFlag;//规则是否有效
private String ifSystemValue;
@Id
@GeneratedValue(strategy=GenerationType.SEQUENCE, generator="QualityRuleSequence")
@SequenceGenerator(name = "QualityRuleSequence", sequenceName = "quality_rule_warehouse_info_t_seq", allocationSize=1)
@SequenceGenerator(name = "QualityRuleSequence", sequenceName = "ccolap.quality_rule_deq", allocationSize=1)
public Long getQualityRuleId() {
return qualityRuleId;
}
......@@ -65,12 +68,6 @@ public class QualityRule implements Serializable {
public void setProvinceId(Long provinceId) {
this.provinceId = provinceId;
}
public Long getTaskId() {
return taskId;
}
public void setTaskId(Long taskId) {
this.taskId = taskId;
}
public Long getDataSourceId() {
return dataSourceId;
}
......@@ -83,23 +80,17 @@ public class QualityRule implements Serializable {
public void setKpiMonitorTime(String kpiMonitorTime) {
this.kpiMonitorTime = kpiMonitorTime;
}
public String getKpiMonitorRange() {
return kpiMonitorRange;
}
public void setKpiMonitorRange(String kpiMonitorRange) {
this.kpiMonitorRange = kpiMonitorRange;
}
public double getIntegrityThresholdValue() {
return integrityThresholdValue;
public String getKpiMonitorRunTime() {
return kpiMonitorRunTime;
}
public void setIntegrityThresholdValue(double integrityThresholdValue) {
this.integrityThresholdValue = integrityThresholdValue;
public void setKpiMonitorRunTime(String kpiMonitorRunTime) {
this.kpiMonitorRunTime = kpiMonitorRunTime;
}
public Long getTimelinessThresholdValue() {
return timelinessThresholdValue;
public String getBusinessTime() {
return businessTime;
}
public void setTimelinessThresholdValue(Long timelinessThresholdValue) {
this.timelinessThresholdValue = timelinessThresholdValue;
public void setBusinessTime(String businessTime) {
this.businessTime = businessTime;
}
public Date getRuleCrtTime() {
return ruleCrtTime;
......@@ -113,13 +104,17 @@ public class QualityRule implements Serializable {
public void setRuleUpdateTime(Date ruleUpdateTime) {
this.ruleUpdateTime = ruleUpdateTime;
}
public String getRileValidFlag() {
return rileValidFlag;
public String getRuleValidFlag() {
return ruleValidFlag;
}
public void setRileValidFlag(String rileValidFlag) {
this.rileValidFlag = rileValidFlag;
public void setRuleValidFlag(String ruleValidFlag) {
this.ruleValidFlag = ruleValidFlag;
}
public String getIfSystemValue() {
return ifSystemValue;
}
public void setIfSystemValue(String ifSystemValue) {
this.ifSystemValue = ifSystemValue;
}
}
......@@ -34,7 +34,7 @@ public interface AccuracyRuleDao extends JpaSpecificationExecutor<AccuracyRule>,
//根据准确性规则ID更新准确性规则信息
@Modifying
@Query("update AccuracyRule ar set ar.ruleType=:ruleType, ar.scopeMaxValue=:scopeMaxValue, ar.scopeMinValue=:scopeMinValue, ar.repeatedCheckGranularity=:repeatedCheckGranularity, ar.repeatedCheckStartTime=:repeatedCheckStartTime, ar.repeatedCheckEndTime=:repeatedCheckEndTime, ar.ifRepeatedCheckSeries=:ifRepeatedCheckSeries, ar.repeatedCheckMaxTime=:repeatedCheckMaxTime, ar.ifRepeatedCheckSummation=:ifRepeatedCheckSummation where ar.accuracyRuleId =:accuracyRuleId")
void updateAccuracyRuleByAccuracyRuleId(@Param("ruleType")String ruleType,@Param("scopeMaxValue")double scopeMaxValue,@Param("scopeMinValue")double scopeMinValue,@Param("repeatedCheckGranularity")String repeatedCheckGranularity,@Param("repeatedCheckStartTime")Date repeatedCheckStartTime,@Param("repeatedCheckEndTime")Date repeatedCheckEndTime,@Param("ifRepeatedCheckSeries")String ifRepeatedCheckSeries,@Param("repeatedCheckMaxTime")Long repeatedCheckMaxTime,@Param("ifRepeatedCheckSummation")String ifRepeatedCheckSummation);
void updateAccuracyRuleByAccuracyRuleId(@Param("ruleType")String ruleType,@Param("scopeMaxValue")double scopeMaxValue,@Param("scopeMinValue")double scopeMinValue,@Param("repeatedCheckGranularity")String repeatedCheckGranularity,@Param("repeatedCheckStartTime")Date repeatedCheckStartTime,@Param("repeatedCheckEndTime")Date repeatedCheckEndTime,@Param("ifRepeatedCheckSeries")String ifRepeatedCheckSeries,@Param("repeatedCheckMaxTime")Long repeatedCheckMaxTime,@Param("ifRepeatedCheckSummation")String ifRepeatedCheckSummation,@Param("accuracyRuleId")Long accuracyRuleId);
//根据准确性规则ID删除一条准确性规则信息
@Modifying
......
......@@ -39,6 +39,10 @@ public interface BusinessDao extends JpaSpecificationExecutor<Business>,
@Query("select business.businessId, business.businessName from Business business,ChannelDataSourceMap channelDataSourceMap where business.channelDataSourceMapId=channelDataSourceMap.channelDataSourceMapId and channelDataSourceMap.channelId = :channelIdList and channelDataSourceMap.dataSourceId =:datasourceIdList and business.businessId >= 0 order by business.businessId")
List<Object[]> findBusinessIdAndBusinessNameByDataSourceIdAndChannelId(@Param("channelIdList") Long channelIdList,@Param("datasourceIdList") Long datasourceIdList);
//由单个数据来源ID和单个渠道ID得到业务,加入isActive=N
@Query("select business.businessId, business.businessName from Business business,ChannelDataSourceMap channelDataSourceMap where business.isActive = 'Y' and business.channelDataSourceMapId=channelDataSourceMap.channelDataSourceMapId and channelDataSourceMap.channelId = :channelId and channelDataSourceMap.dataSourceId =:datasourceId and business.businessId >= 0 order by business.businessId")
List<Object[]> findBusinessIdAndBusinessNameByDataSourceIdAndChannelIdWithIsActive(@Param("channelId") Long channelId,@Param("datasourceId") Long datasourceId);
@Query("select business.businessId, business.businessName from Business business,ChannelDataSourceMap channelDataSourceMap,Channel channel where channel.channelId=channelDataSourceMap.channelId and business.channelDataSourceMapId=channelDataSourceMap.channelDataSourceMapId and channel.channelName=:channelName and business.businessId >= 0 order by business.businessId")
List<Object[]> findBusinessByChannelName(@Param("channelName")String channelName);
......
......@@ -19,6 +19,9 @@ public interface ChannelDao extends JpaSpecificationExecutor<Channel>,
@Query("from Channel channel where channel.channelId >=0 order by channel.channelId")
List<Channel> findChannel();
@Query("from Channel channel where channel.channelId >=0 and channel.channelId <>7 order by channel.channelId")
List<Channel> findChannelWithoutAll();
List<Channel> findByChannelIdInOrderByChannelIdAsc(List<Long> channelIdList);
@Query("select channel from Channel channel, ChannelDataSourceMap channelDataSourceMap where channelDataSourceMap.channelId=channel.channelId and channelDataSourceMap.dataSourceId =:datasourceId and channel.channelId >=0 order by channel.channelId")
......
package com.hp.cmsz.repository;
import java.util.List;
import org.springframework.data.jpa.repository.JpaSpecificationExecutor;
import org.springframework.data.jpa.repository.Modifying;
import org.springframework.data.jpa.repository.Query;
import org.springframework.data.repository.PagingAndSortingRepository;
import org.springframework.data.repository.query.Param;
import com.hp.cmsz.entity.DimKpi;
public interface DimKpiDao extends JpaSpecificationExecutor<DimKpi>,
PagingAndSortingRepository<DimKpi, Long>{
//通过kpiTypeId查找数据采集频率
@Query("select dk.calCycle from DimKpi dk where dk.kpiTypeId = ?1")
List<String> findCayCycleByKpiTypeIdIn(@Param("kpiTypeId")Long kpiTypeId);
//通过kpiTypeId修改数据采集频率
@Modifying
@Query("update from DimKpi dk set dk.calCycle=:calCycle where dk.kpiTypeId=:kpiTypeId")
void updateDimKpiByKpiTypeId(@Param("calCycle")String calCycle,@Param("kpiTypeId")Long kpiTypeId);
}
......@@ -37,7 +37,11 @@ public interface KpiDao extends JpaSpecificationExecutor<Kpi>,PagingAndSortingRe
//由业务得到指标
@Query("select kpi.kpiId, kpi.kpiName from Kpi kpi,Business business where kpi.businessId=business.businessId and business.businessId IN (:businessIdList) and kpi.kpiId >=0")
List<Object[]> findAllKpiIdAndKpiNameByBusinessId(@Param("businessIdList") List<Long> businessIdList);
//由业务联动得到指标
@Query("select kpi.kpiId, kpi.kpiName from Kpi kpi,Business business where business.businessId = kpi.businessId and kpi.isActive = 'Y' and business.businessId in (:businessIds) and kpi.kpiId>=0 order by kpi.kpiId ")
List<Object[]> findKpiIdAndKpiNameByBusinessIds(@Param("businessIds")List<Long> businessIdList);
//由单个业务ID得到指标
@Query("select kpi.kpiId, kpi.kpiName from Kpi kpi,Business business where kpi.businessId=business.businessId and business.businessId = :businessIdList and kpi.kpiId >=0")
List<Object[]> findKpiIdAndKpiNameByBusinessId(@Param("businessIdList") Long businessIdList);
......
package com.hp.cmsz.repository;
import java.sql.Timestamp;
import java.util.Date;
import java.util.List;
......@@ -20,7 +21,7 @@ import com.hp.cmsz.entity.QualityRule;
public interface QualityRuleDao extends JpaSpecificationExecutor<QualityRule>,
PagingAndSortingRepository<QualityRule, Long>{
List<QualityRule> findAll();
//根据质量规则ID查找质量规则
QualityRule findByQualityRuleId(Long qualityRuleId);
......@@ -35,14 +36,14 @@ public interface QualityRuleDao extends JpaSpecificationExecutor<QualityRule>,
//根据质量规则ID修改质量规则
@Modifying
@Query("update from QualityRule qr set qr.businessId=:businessId, qr.kpiId=:kpiId, qr.channelId=:channelId, qr.provinceId=:provinceId, qr.dataSourceId=:dataSourceId, qr.kpiMonitorTime=:kpiMonitorTime, qr.kpiMonitorRange=:kpiMonitorRange,dm.integrityThresholdValue=:integrityThresholdValue, qr.timelinessThresholdValue=:timelinessThresholdValue, qr.ruleCrtTime=:ruleCrtTime, qr.ruleUpdateTime=:ruleUpdateTime where qr.qualityRuleId=:qualityRuleId")
void updateQualityRuleByQualityRuleId(@Param("businessId")Long businessId,@Param("kpiId")Long kpiId,@Param("channelId")Long channelId,@Param("provinceId")Long provinceId,@Param("dataSourceId")Long dataSourceId,@Param("kpiMonitorTime")String kpiMonitorTime,@Param("kpiMonitorRange")String kpiMonitorRange,@Param("integrityThresholdValue")double integrityThresholdValue,@Param("timelinessThresholdValue")Long timelinessThresholdValue,@Param("ruleCrtTime")Date ruleCrtTime,@Param("ruleUpdateTime")Date ruleUpdateTime,@Param("qualityRuleId")Long qualityRuleId);
@Query("update from QualityRule qr set qr.businessId=:businessId, qr.kpiId=:kpiId, qr.channelId=:channelId, qr.provinceId=:provinceId, qr.dataSourceId=:dataSourceId, qr.kpiMonitorTime=:kpiMonitorTime, qr.kpiMonitorRunTime=:kpiMonitorRunTime, qr.businessTime=:businessTime, qr.ruleCrtTime=:ruleCrtTime, qr.ruleUpdateTime=:ruleUpdateTime where qr.qualityRuleId=:qualityRuleId")
void updateQualityRuleByQualityRuleId(@Param("businessId")Long businessId,@Param("kpiId")Long kpiId,@Param("channelId")Long channelId,@Param("provinceId")Long provinceId,@Param("dataSourceId")Long dataSourceId,@Param("kpiMonitorTime")String kpiMonitorTime,@Param("kpiMonitorRunTime")String kpiMonitorRunTime,@Param("businessTime")String businessTime,@Param("ruleCrtTime")Date ruleCrtTime,@Param("ruleUpdateTime")Date ruleUpdateTime,@Param("qualityRuleId")Long qualityRuleId);
//根据质量规则ID得到数据条数
@Query("select count(*) from QualityRule qualityRule where qualityRule.qualityRuleId=:qualityRuleId")
Long getNumOfQualityRuleByQualityRuleId(@Param("qualityRuleId")String qualityRuleId);
//根据省份、渠道、业务、指标查询质量规则
List<QualityRule> findByProvinceIdInAndBusinessIdInAndKpiIdInAndChannelIdInOrderByQualityRuleIdDesc(List<Long> provinceId, List<Long> businessId, List<Long> kpiId, List<Long> channelId);
//根据省份、渠道、业务、数据来源筛选查询质量规则
List<QualityRule> findByProvinceIdInAndBusinessIdInAndDataSourceIdInAndChannelIdInOrderByQualityRuleIdDesc(Long[] province, Long[] business, Long[] datasource, Long[] channel);
}
......@@ -30,6 +30,8 @@ public class BusinessService {
}
public List<Business> getByChannelDataSourceMapIdIn(List<Long> channelDataSourceMapIdList){
return (List<Business>)businessDao.findByChannelDataSourceMapIdIn(channelDataSourceMapIdList);
}
......
......@@ -29,8 +29,8 @@ public class AccuracyRuleService {
//根据准确性规则ID更新准确性规则
@Transactional(readOnly=false)
public void updateAccuracyRuleByAccuracyRuleId(String ruleType,double scopeMaxValue,double scopeMinValue,String repeatedCheckGranularity,Date repeatedCheckStartTime,Date repeatedCheckEndTime,String ifRepeatedCheckSeries,Long repeatedCheckMaxTime,String ifRepeatedCheckSummation){
accuracyRuleDao.updateAccuracyRuleByAccuracyRuleId(ruleType, scopeMaxValue, scopeMinValue, repeatedCheckGranularity, repeatedCheckStartTime, repeatedCheckEndTime, ifRepeatedCheckSeries, repeatedCheckMaxTime, ifRepeatedCheckSummation);;
public void updateAccuracyRuleByAccuracyRuleId(String ruleType,double scopeMaxValue,double scopeMinValue,String repeatedCheckGranularity,Date repeatedCheckStartTime,Date repeatedCheckEndTime,String ifRepeatedCheckSeries,Long repeatedCheckMaxTime,String ifRepeatedCheckSummation,Long accuracyRuleId){
accuracyRuleDao.updateAccuracyRuleByAccuracyRuleId(ruleType, scopeMaxValue, scopeMinValue, repeatedCheckGranularity, repeatedCheckStartTime, repeatedCheckEndTime, ifRepeatedCheckSeries, repeatedCheckMaxTime, ifRepeatedCheckSummation,accuracyRuleId);
}
//根据准确性规则ID删除一条准确性规则信息
......
package com.hp.cmsz.service.analysissupport;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.hp.cmsz.repository.DimKpiDao;
@Service
@Transactional
public class DimKpiService {
@Autowired
private DimKpiDao dimKpiDao;
//根据kpiTypeId修改数据采集频率
@Transactional(readOnly=false)
private void updateByKpiTypeId(String calCycle,Long kpiTypeId){
dimKpiDao.updateDimKpiByKpiTypeId(calCycle, kpiTypeId);
}
}
package com.hp.cmsz.service.analysissupport;
import java.sql.Timestamp;
import java.util.Date;
import java.util.List;
......@@ -7,6 +8,7 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional;
import com.hp.cmsz.entity.QualityRule;
import com.hp.cmsz.repository.QualityRuleDao;
/**
......@@ -21,6 +23,11 @@ public class QualityRuleService {
@Autowired
private QualityRuleDao qualityRuleDao;
//根据筛选条件查询出质量规则
public List<QualityRule> getAllQualityRuleByOther(Long[] province,Long[] datasource,Long[] channel,Long[] business){
return qualityRuleDao.findByProvinceIdInAndBusinessIdInAndDataSourceIdInAndChannelIdInOrderByQualityRuleIdDesc(province, business, datasource, channel);
}
//根据质量规则ID删除质量规则
@Transactional(readOnly=false)
public void deleteByQualityRuleId(List<Long> qualityRuleId){
......@@ -29,8 +36,8 @@ public class QualityRuleService {
//根据质量规则ID修改质量规则
@Transactional(readOnly=false)
public void updateByQualityRuleId(Long businessId, Long kpiId, Long channelId, Long provinceId, Long dataSourceId, String kpiMonitorTime,String kpiMonitorRange,double integrityThresholdValue,Long timelinessThresholdValue ,Date ruleCrtTime,Date ruleUpdateTime,Long qualityRuleId){
qualityRuleDao.updateQualityRuleByQualityRuleId(businessId, kpiId, channelId, provinceId, dataSourceId, kpiMonitorTime, kpiMonitorRange, integrityThresholdValue, timelinessThresholdValue, ruleCrtTime, ruleUpdateTime, qualityRuleId);
public void updateByQualityRuleId(Long businessId, Long kpiId, Long channelId, Long provinceId, Long dataSourceId, String kpiMonitorTime,String kpiMonitorRunTime,String businessTime,Date ruleCrtTime,Date ruleUpdateTime,Long qualityRuleId){
qualityRuleDao.updateQualityRuleByQualityRuleId(businessId, kpiId, channelId, provinceId, dataSourceId, kpiMonitorTime, kpiMonitorRunTime, businessTime, ruleCrtTime, ruleUpdateTime, qualityRuleId);
}
}
package com.hp.cmsz.web.analysissupport;
import java.text.ParseException;
import java.util.Date;
import java.util.List;
import java.util.Map;
import javax.servlet.http.HttpServletRequest;
import javax.servlet.http.HttpServletResponse;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
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.ResponseBody;
import com.google.gson.Gson;
import com.hp.cmsz.entity.AccuracyRule;
import com.hp.cmsz.entity.Business;
import com.hp.cmsz.entity.Channel;
import com.hp.cmsz.entity.DataSource;
import com.hp.cmsz.entity.DataType;
import com.hp.cmsz.entity.Kpi;
import com.hp.cmsz.entity.Province;
import com.hp.cmsz.entity.QualityRule;
import com.hp.cmsz.repository.AccuracyRuleDao;
import com.hp.cmsz.repository.BusinessDao;
import com.hp.cmsz.repository.ChannelDao;
import com.hp.cmsz.repository.DataSourceDao;
import com.hp.cmsz.repository.DataTypeDao;
import com.hp.cmsz.repository.KpiDao;
import com.hp.cmsz.repository.ProvinceDao;
import com.hp.cmsz.repository.QualityRuleDao;
import com.hp.cmsz.service.analysissupport.AccuracyRuleService;
import com.hp.cmsz.web.PageURLController;
/**
......@@ -22,6 +46,109 @@ import com.hp.cmsz.web.PageURLController;
@RequestMapping(value="AnalysisSupport/QualityRuleConfiguration")
public class QualityRuleConfigurationController {
// @Autowired
// private ProvinceDao provinceDao;
//
// @Autowired
// private ChannelDao channelDao;
//
// @Autowired
// private BusinessDao businessDao;
//
// @Autowired
// private KpiDao kpiDao;
//
// @Autowired
// private DataTypeDao dataTypeDao;
//
// @Autowired
// private DataSourceDao dataSourceDao;
//
// @Autowired
// private QualityRuleDao qualityRuleDao;
//
//// @Autowired
//// private QualityRuleService qualityRuleService;
//
// @Autowired
// private AccuracyRuleDao accuracyRuleDao;
//
// @Autowired
// private AccuracyRuleService accuracyRuleService;
////
//// @Autowired
//// private CmszOperationLogService cmszOperationLogService;
//
// @RequestMapping(value = "")
// public String ruleMaintainHome(@RequestParam(value = "qualityRuleId", defaultValue ="") String qualityRuleId,
// Map model){
//
// QualityRule qualityRule = null;
// List<AccuracyRule> accuracyRuleList = null;
// if(!qualityRuleId.trim().equals("")){
// qualityRule = qualityRuleDao.findByQualityRuleId(Long.parseLong(qualityRuleId));
// accuracyRuleList = accuracyRuleDao.findByQualityRuleId(Long.parseLong(qualityRuleId));
// }
//
// //查询出所有的省份
// List<Province> provinceList=(List<Province>)provinceDao.findProvince();
// //查询出所有的渠道信息
// List<Channel> channelList=(List<Channel>)channelDao.findChannelWithoutAll();
// //查询出所有的指标
// List<Kpi> kpiList=(List<Kpi>)kpiDao.findAll();
// //查询出所有的业务
// List<Business> businessList=(List<Business>)businessDao.findAll();
// //查询出所有的数据类型
// List<DataType> dataTypeList= (List<DataType>)dataTypeDao.findAll();
// //查询出所有的数据来源
// List<DataSource> dataSourceList=(List<DataSource>)dataSourceDao.findAll();
// Gson gson = new Gson();
// model.put("provinceList", provinceList);
// model.put("channelList", channelList);
// model.put("kpiList", kpiList);
// model.put("businessList", gson.toJson(businessList));
// model.put("dataTypeList", dataTypeList);
// model.put("dataSourceList", dataSourceList);
//
// return PageURLController.RuleConfiguration;
// }
//
// //修改准确性规则信息
// @RequestMapping(value = "/updateAccuracyRule*",method=RequestMethod.GET)
// @ResponseBody
// public void updateParameter(
// @RequestParam(value="ruleType") String ruleType,
// @RequestParam(value="scopeMaxValue") double scopeMaxValue,
// @RequestParam(value="scopeMinValue") double scopeMinValue,
// @RequestParam(value="repeatedCheckGranularity") String repeatedCheckGranularity,
// @RequestParam(value="repeatedCheckStartTime") Date repeatedCheckStartTime,
// @RequestParam(value="repeatedCheckEndTime") Date repeatedCheckEndTime,
// @RequestParam(value="ifRepeatedCheckSeries") String ifRepeatedCheckSeries,
// @RequestParam(value="repeatedCheckMaxTime") Long repeatedCheckMaxTime,
// @RequestParam(value="ifRepeatedCheckSummation") String ifRepeatedCheckSummation,
// @RequestParam(value="qualityRuleId")String qualityRuleId,
// @RequestParam(value="accuracyRuleId")String accuracyRuleId){
//
// if(qualityRuleId.trim().equals("")){
// AccuracyRule accuracyRule = new AccuracyRule();
// accuracyRule.setAccuracyRuleId(Long.parseLong(qualityRuleId));
// accuracyRule.setRuleType(ruleType);
// accuracyRule.setScopeMinValue(scopeMaxValue);
// accuracyRule.setScopeMinValue(scopeMinValue);
// accuracyRule.setRepeatedCheckGranularity(repeatedCheckGranularity);
// accuracyRule.setRepeatedCheckStartTime(repeatedCheckStartTime);
// accuracyRule.setRepeatedCheckEndTime(repeatedCheckEndTime);
// accuracyRule.setIfRepeatedCheckSeries(ifRepeatedCheckSeries);
// accuracyRule.setRepeatedCheckMaxTime(repeatedCheckMaxTime);
// accuracyRule.setIfRepeatedCheckSummation(ifRepeatedCheckSummation);
//
// accuracyRuleDao.save(accuracyRule);
// }else{
// accuracyRuleService.updateAccuracyRuleByAccuracyRuleId(ruleType, scopeMaxValue, scopeMinValue, repeatedCheckGranularity, repeatedCheckStartTime, repeatedCheckEndTime, ifRepeatedCheckSeries, repeatedCheckMaxTime, ifRepeatedCheckSummation, Long.parseLong(accuracyRuleId));;
// }
//
// }
@RequestMapping()
public String updateQualityRuleForm() {
......
......@@ -40,12 +40,11 @@
<div class="slideMenu" id="cbp-spmenu-s2" style="">
<div class="form">
<tags:ProvinceTag />
<tags:ChannelTag />
<tags:BusinessTag />
<tags:Public_ProvinceTag />
<tags:GJFX_datasource_channle_business/>
<button id="submit" class="btn btn-primary" onclick="modelResultSubmit()">提交</button>
<button id="disable" class="btn btn-warning" onclick="modelResultReset()">重置</button>
<button id="submit" class="btn btn-primary" onclick="ruleResultSubmit()">提交</button>
<button id="disable" class="btn btn-warning" onclick="ruleResultReset()">重置</button>
</div>
</div>
......@@ -92,8 +91,15 @@
</div>
<script type="text/javascript" src="${ctx}/static/js/ruleResultDetailTable.js"></script>
<script type="text/javascript">
var receiveRulePageNum = "${rulePageNum}";
ruleResultDetailTable();
if(receiveRulePageNum!=1){
$("#goPageNo").attr("value",receiveRulePageNum);
$("#jumpButton").click();
}
$("#createRule").click(function(){
$.dialog({
......@@ -136,6 +142,114 @@ $("#createRule").click(function(){
});
});
function ruleResultSubmit(){
var dataSource=getStatsDataSourceCheckedValuesString();
var chnnal=getStatsChannelCheckedValuesString();
var bussines=getStatsBusinessCheckedValuesString();
var province=getProvinceCheckedValuesString();
if(dataSource==""){
$.alert("数据来源的选择不能为空");
}else if(chnnal===""){
$.alert("渠道的选择不能为空");
}else if(bussines===""){
$.alert("业务的选择不能为空");
}else if(province===""){
$.alert("省份的选择不能为空");
}else{
toggleMenu('slidePushMenus');//隐藏筛选项
//数据来源标签
$('#DataSourceTag').text("数据来源").append($("<span class='badge'></span>").text(getStatsDataSourceCheckedValues().length)).attr('data-original-title',getStatsDataSourceCheckedTitles()).tooltip();
//渠道标签
$('#ChannelTag').text("渠道").append($("<span class='badge'></span>").text(getStatsChannelCheckedValues().length)).attr('data-original-title',getStatsChannelCheckedTitles()).tooltip();
//业务标签
$('#BusinessTag').text("业务").append($("<span class='badge'></span>").text(getStatsBusinessCheckedValues().length)).attr('data-original-title',getStatsBusinessCheckedTitlesString()).tooltip();
//省份标签
$('#ProvinceTag').text("省份").append($("<span class='badge'></span>").text(getProvinceCheckedValues().length)).attr('data-original-title',getProvinceCheckedTitles()).tooltip();
$.ajax({
type : 'GET',
contentType : 'application/json',
url: "${ctx}/AnalysisSupport/QualityRuleResult/ruleTableChange?province="+province+"&dataSource="+dataSource+"&chnnal="+chnnal+"&bussines="+bussines,
dataType : 'text',
async: false,
beforeSend: function(data) {
},
success: function(data) {
$("#qualityRuleView").val(data);
ruleResultDetailTable();
ruleId="";
$("#updateRule").attr("disabled", true);
toggleMenu('slidePushMenus2');//隐藏筛选项
updateTag(true);
}
});
}
function ruleResultReset(){
ProvinceReset();
statsDataSourceReset();//三级联动重置
}
//更新按钮点击
$("#updateModel").click(function(){
var pageNum = $("#goPageNo").val();
$.dialog({
title: "提醒",
content:"确定修改模型?",
ok: function(){location.href="${ctx}/AnalysisSupport/RuleConfiguration?qualityRuleId="+ruleId+"&rulePageNum="+pageNum;},
okValue:"确定",
cancel: function(){},
cancelValue:"取消",
lock:true
});
//查看准确性规则
function lookParm(qualityRuleId){
$.dialog({
title:"准确性规则",
content:"<div id='paramList'>"+
"<div class='col-xs-12'><div class='panel panel-default'><div class='panel-heading'>参数列表</div><div class='panel-body'> <table class='table table-hover table-striped'> <thead> <tr> <th width='20%'>参数ID号</th> <th width='35%'>参数名</th> <th width='20%'>参数值</th> <th width='25%'>参数类型</th> </tr> </thead> <tbody> </tbody> </table> </div> </div> </div>"+
"</div>",
lock:true,
width:800,
initialize:function(){
$.ajax({
type : 'GET',
contentType : 'application/json',
url: "${ctx}/AnalysisSupport/QualityRuleResult/findAccuracy?qualityRuleId="+qualityRuleId,
dataType : 'text',
beforeSend: function(data) {
},
success: function(data){
for(var i=0;i<data.length;i++){
if(data[i]=='\"'){
data=data.replace('\"','\'');
}
}
data=eval("("+data+")");
if(data!=null && data!=""){
var paramTbody = $('#paramList tbody');
for(var i=0;i<data.length;i++){
if(data[i].parameterValue=="undefined" || data[i].parameterValue==null || data[i].parameterValue==""){
data[i].parameterValue="";
}
paramTbody.append($("<tr></tr>").append("<td>"+data[i].parameterId+"</td>")
.append("<td>"+data[i].parameterName+"</td>")
.append("<td>"+data[i].parameterValue+"</td>")
.append("<td>"+data[i].parameterDataType+"</td>"));
}
}
}
});
}
});
}
});
}
</script>
</body>
</html>
\ No newline at end of file
......@@ -128,17 +128,16 @@ function ruleResultDetailTable(){
header[0] = ["","<input type='radio' name='update'id='update' onclick='javascript:radioChoose(this);'/>","1%",""];
header[1] = ["质量规则ID","qualityRuleId","7%","15"];
header[2] = ["省份","provinceName","7%","15"];
header[3] = ["渠道","qualityRuleId","7%","15"];
header[4] = ["业务","qualityRuleId","7%","15"];
header[5] = ["数据来源","qualityRuleId","7%","15"];
header[6] = ["数据采集频率","qualityRuleId","7%","15"];
header[7] = ["指标监控时间","qualityRuleId","7%","15"];
header[8] = ["指标监控时间范围","qualityRuleId","7%","15"];
header[9] = ["完整性阈值","qualityRuleId","7%","15"];
header[10] = ["及时性阈值","qualityRuleId","7%","15"];
header[11] = ["数据类型","qualityRuleId","7%","15"];
header[12] = ["准确性规则","qualityRuleId","7%","15"];
header[2] = ["数据来源","dataSourceName","7%","15"];
header[3] = ["渠道","channelName","7%","15"];
header[4] = ["业务","businessName","7%","15"];
header[5] = ["指标名称","qualityRuleId","7%","15"];
header[6] = ["指标编码","qualityRuleId","7%","15"];
header[7] = ["数据类型","qualityRuleId","7%","15"];
header[8] = ["数据采集频率","qualityRuleId","7%","15"];
header[9] = ["指标监控时间","qualityRuleId","7%","15"];
header[10] = ["指标业务时间","qualityRuleId","7%","15"];
header[11] = ["准确性规则","qualityRuleId","7%","15"];
window.pagging = new table_pagging({limit:12,tableId:'ruleResultTable',header:header});
//pagging.pagging(jsonData);
......@@ -299,17 +298,6 @@ table_pagging.prototype = {
tdContext = "&nbsp;";
}
/*if(K==3){
if(tdContext!="&nbsp;"){
var strLength = tdContext.lastIndexOf(".");
var strBody = tdContext.substring(0,strLen-14);
var strExt = tdContext.substring(strLen);
tdContext=strBody+strExt;
}
}*/
// if(k==12){ //显示协查单的详细列表
// tdContext= "<a target='_blank' href='/CmszMonitorAnalysis/MonitorOperation/WorkingOrderReasult?xcdId="+this.getData(this.objectlist[i],this.header[k][1])+"'>"+ tdContext+"</a>"
if(k==9){
if(tdContext!="&nbsp;"){
......@@ -323,8 +311,8 @@ table_pagging.prototype = {
}
}
if(k==11){
tdContext = "<a href='javascript:;' onclick='lookParm(\""+this.getData(this.objectlist[i],"dataModelId")+"\",\""+this.getData(this.objectlist[i],"dataModelName")+"\")'>查看参数</a>";
//tdContext = "<a href='javascript:;' onclick=\"openDialog('"+this.getData(this.objectlist[i],"dataModelId")+"','"+ this.getData(this.objectlist[i],"dataModelName")"')\">查看参数</a>";
tdContext = "<a href='javascript:;' onclick='lookParm(\""+this.getData(this.objectlist[i],"qualityRuleId")+"\")'>查看参数</a>";
}
if(k==4){
if (this.header[k][4] && !(tdContext == "&nbsp;")) {
......@@ -363,13 +351,7 @@ table_pagging.prototype = {
+ "..";
}
}
console.log(tdContext);
td.innerHTML = tdContext;
......@@ -557,8 +539,8 @@ table_pagging.prototype = {
if(clickObj.checked){
//alert(clickObj);
//alert(clickObj.nextSibling.innerHTML);
$("#updateModel").attr("disabled", false);
modelId=parseInt(obj[parseInt(clickObj.nextSibling.innerHTML)].dataModelId);
$("#updateRule").attr("disabled", false);
ruleId=parseInt(obj[parseInt(clickObj.nextSibling.innerHTML)].qualityRuleId);
}
}
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment