/***文档注释***********************************************
 * 作者            ：
 * 创建日期     ：2019-03-19
 * 描述            ：质保书注释基础信息配置表
 * 注意事项     ：
 * 遗留BUG   ：
 * 修改日期     ：
 * 修改人员     ：
 * 修改内容     ：
***********************************************************/
package market.Qms.qcm.service.impl;

import java.util.ArrayList;
import java.util.Date;
import java.util.List;

import market.Com.vo.CommonPage;
import market.Com.vo.ResultModel;
import market.Qms.qcm.mapper.QcmZbsRemarkMapper;
import market.Qms.qcm.service.QcmZbsRemarkService;
import market.Qms.qcm.vo.QcmZbsRemark;

import org.springframework.transaction.annotation.Transactional;

import com.hnshituo.basic.service.impl.BaseServiceImpl;
import com.hnshituo.basic.spring.remoting.annotation.RemoteService;
import com.hnshituo.core.auth.service.HomeService;

@RemoteService(path = "QcmZbsRemarkService")
public class QcmZbsRemarkServiceImpl extends BaseServiceImpl<QcmZbsRemark, Object> implements QcmZbsRemarkService {

	public ResultModel doQuerryRemark(String validflag) {
		ResultModel rm = new ResultModel();
		List<QcmZbsRemark> remarks = new ArrayList<>();
//		if ("1".equals(validflag)) {
//			remarks = this.getMapper(QcmZbsRemarkMapper.class).findWithCondition(null, "VALIDFLAG='1'", "MS_SEQ", 0, 0);
//		} else {
//			remarks = this.getMapper(QcmZbsRemarkMapper.class).findWithCondition(null, null, "MS_SEQ", 0, 0);
//		}
		rm.setState("200");
		rm.setData(remarks);
		return rm;

	}

	public ResultModel doAddRemark(CommonPage<QcmZbsRemark> sum) throws Exception {
		ResultModel rm = new ResultModel();
		String userName = this.getSession().getAttribute(HomeService.SESSION_USER_NAME).toString();
		try {
			List<QcmZbsRemark> marks = sum.getObjectList();
			
			
			for (QcmZbsRemark mark : marks) {
				

				mark.setCreate_time(new Date());
				mark.setCreate_name(userName);
				this.getMapper(QcmZbsRemarkMapper.class).insert(mark);
			}
			rm.setState("200");
			rm.setMsgInfo("质保书数据源信息生成成功");

		} catch (Exception e) {
			throw new Exception("生成质保书数据失败");
		}

		return rm;

	}

	/**
	 * 恢复作废接口
	 * @param sum
	 * @return
	 * @throws Exception
	 */
	
	@Transactional(value = "tm", rollbackFor = Exception.class)
	public ResultModel abolishAndRecover(CommonPage<QcmZbsRemark> sum) throws Exception {
		ResultModel rm = new ResultModel();
		String userName =this.getSession().getAttribute(HomeService.SESSION_USER_NAME).toString();
		try {
//			if (sum==null) {
//				rm.setState("500");
//				rm.setMsgInfo("请传入参数！");
//				return rm;
//			}
//			List<QcmZbsRemark> marks = sum.getObjectList();
//			if (marks==null || marks.size()<1) {
//				rm.setState("500");
//				rm.setMsgInfo("请传入需要操作的数据！");
//				return rm;
//			}
//			
//			
//			
//			if ("1".equals(sum.getMemo1())) {
//				for (QcmZbsRemark qcmZbsRemark : marks) {
//					qcmZbsRemark.setValidflag("1");
//					this.getMapper(QcmZbsRemarkMapper.class).update(qcmZbsRemark);
//					
//				}		
//				rm.setState("200");
//				rm.setMsgInfo("恢复成功");
//				
//				
//			}else if ("0".equals(sum.getMemo1())) {
//				
//				for (QcmZbsRemark qcmZbsRemark : marks) {
//					qcmZbsRemark.setValidflag("0");
//					qcmZbsRemark.setDelete_name(userName);
//					qcmZbsRemark.setDelete_time(new Date());
//					this.getMapper(QcmZbsRemarkMapper.class).update(qcmZbsRemark);
//					
//			      }
//				rm.setState("200");
//				rm.setMsgInfo("作废成功");
//				
//			}else if ("3".equals(sum.getMemo1())) {
//				
//				for (QcmZbsRemark mark : marks) {	
//					
//					if (mark.getMs_id()!=null && !"".equals(mark.getMs_id())) {
//						
//						mark.setUpdate_name(userName);
//						mark.setUpdate_time(new Date());
//						this.getMapper(QcmZbsRemarkMapper.class).update(mark);
//						
//					}else{
//						List<QcmZbsRemark> ma=this.getMapper(QcmZbsRemarkMapper.class).findWithCondition(null, null, "MS_ID desc", 0, 0);
//						if (ma==null || ma.size()<1) {
//							mark.setMs_id("0000001");
//							mark.setMs_seq("1");
//						}else{
//						int	count = Integer.valueOf(ma.get(0).getMs_id());
//							count++;
//							mark.setMs_id(String.format("%07d", count));	
//							mark.setMs_seq(String.format("%d",Integer.valueOf(ma.get(0).getMs_seq())+1));
//						}
//						
//						mark.setCreate_time(new Date());
//						mark.setCreate_name(userName);
//						this.getMapper(QcmZbsRemarkMapper.class).insert(mark);
//					}
//
//					
//					
//					
//					
//					
					
			     // }
//				rm.setState("200");
//				rm.setMsgInfo("保存成功");
//				
//				
//			}
//				
				
				
			
			
			

		

		}catch(

	Exception e)
	{
			throw new Exception("操作失败");
		}

	return rm;

}

}
