ソースを参照

git-svn-id: https://192.168.57.71/svn/jsgkj@1953 931142cf-59ea-a443-aa0e-51397b428577

xt_xuhao 8 年 前
コミット
642557e17d

+ 1 - 2
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/controller/auth/UserController.java

@@ -62,8 +62,7 @@ public class UserController extends BaseController {
 	 * @return
 	 */
 	@Log(Type.QUERY)
-	public BusinessContext list(Long functionId, UserEntity user,
-			Pageable pageable) {
+	public BusinessContext list(Long functionId, UserEntity user, Pageable pageable) {
 		List<PredicateModel> filterList = new ArrayList<PredicateModel>();
 		addNotEmptyModel(filterList, "code", user.getCode(),
 				PredicateModel.Operator.LIKE);

+ 16 - 34
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/controller/zysqbp/ZysqbpController.java

@@ -136,8 +136,7 @@ import flex.messaging.io.amf.ASObject;
 @SuppressWarnings("unchecked")
 @Log(menuCode = "004001", menuCodeJyr = "004001_c")
 public class ZysqbpController extends BaseController {
-	private final static Logger LOGGER = Logger
-			.getLogger(ZysqbpController.class);
+	private final static Logger LOGGER = Logger.getLogger(ZysqbpController.class);
 	@Autowired
 	private ThreadPoolTaskExecutor threadPool;
 	@Autowired
@@ -547,50 +546,33 @@ public class ZysqbpController extends BaseController {
 						list.add(cb.like(root.get("wxhwmcbh").as(String.class),
 								"%" + entity.getWxhwmcbh() + "%"));
 					if (null != entity.getZydw()) {
-						list.add(cb.equal(
-								root.get("zydw").get("id").as(String.class),
-								entity.getZydw().getId()));
+						list.add(cb.equal(root.get("zydw").get("id").as(String.class),entity.getZydw().getId()));
 					}
 					if (null != gkdw && !"".equals(gkdw))
-						list.add(cb.like(
-								root.get("zydw").get("gkjyr").as(String.class),
-								"%" + gkdw + "%"));
+						list.add(cb.like(root.get("zydw").get("gkjyr").as(String.class),"%" + gkdw + "%"));
 					if (entity.getMao() != null && !entity.getMao().equals("")) {
-						list.add(cb.equal(root.get("mao").as(String.class),
-								entity.getMao()));
+						list.add(cb.equal(root.get("mao").as(String.class),entity.getMao()));
 					}
 					if (null != entity.getSzd())
-						list.add(cb.like(
-								root.get("szd").get("id").as(String.class),
-								entity.getSzd().getId() + "%"));
+						list.add(cb.like(root.get("szd").get("id").as(String.class),entity.getSzd().getId() + "%"));
 					if (null != entity.getSzgq())
-						list.add(cb.equal(root.get("szgq").as(GqEntity.class),
-								entity.getSzgq()));
+						list.add(cb.equal(root.get("szgq").as(GqEntity.class),entity.getSzgq()));
 					if (bgsj1 != null)
-						list.add(cb.greaterThanOrEqualTo(
-								root.get("bgsj").as(Date.class), bgsj1));
+						list.add(cb.greaterThanOrEqualTo(root.get("bgsj").as(Date.class), bgsj1));
 					if (bgsj2 != null)
-						list.add(cb.lessThan(root.get("bgsj").as(Date.class),
-								DateUtil.addDate(bgsj2, 1)));
+						list.add(cb.lessThan(root.get("bgsj").as(Date.class),DateUtil.addDate(bgsj2, 1)));
 					if (kgsj1 != null)
-						list.add(cb.greaterThanOrEqualTo(
-								root.get("kgsj").as(Date.class), kgsj1));
+						list.add(cb.greaterThanOrEqualTo(root.get("kgsj").as(Date.class), kgsj1));
 					if (kgsj2 != null)
-						list.add(cb.lessThan(root.get("kgsj").as(Date.class),
-								DateUtil.addDate(kgsj2, 1)));
+						list.add(cb.lessThan(root.get("kgsj").as(Date.class),DateUtil.addDate(kgsj2, 1)));
 					if (wgsj1 != null)
-						list.add(cb.greaterThanOrEqualTo(
-								root.get("wgsj").as(Date.class), wgsj1));
+						list.add(cb.greaterThanOrEqualTo(root.get("wgsj").as(Date.class), wgsj1));
 					if (wgsj2 != null)
-						list.add(cb.lessThan(root.get("wgsj").as(Date.class),
-								DateUtil.addDate(wgsj2, 1)));
+						list.add(cb.lessThan(root.get("wgsj").as(Date.class),DateUtil.addDate(wgsj2, 1)));
 					if (Constants.YES.equals(Utils.getCurrentUser().getSfcd())) {
-						list.add(cb.equal(
-								root.get("addUser").as(UserEntity.class),
-								Utils.getCurrentUser()));
+						list.add(cb.equal(root.get("addUser").as(UserEntity.class),Utils.getCurrentUser()));
 					}
-					list = Utils.setAuditNameSpec(list, cb, query, root,
-							lcStatus, name);
+					list = Utils.setAuditNameSpec(list, cb, query, root,lcStatus, name);
 					return cb.and(list.toArray(new Predicate[] {}));
 				}
 			};
@@ -1179,7 +1161,7 @@ public class ZysqbpController extends BaseController {
 				+ Thread.currentThread().getStackTrace()[2].getMethodName();
 		
 		//提单号同意转换成大写
-		vo.setBLNo(vo.getBLNo().toUpperCase());
+		vo.setBLNo(vo.getBLNo().trim().toUpperCase());
 		
 		try {
 			BusinessContext bc = createBusinessContext();
@@ -1223,7 +1205,7 @@ public class ZysqbpController extends BaseController {
 		BusinessContext bc = createBusinessContext();
 		
 		//提单号同意转换成大写
-		vo.setBLNo(vo.getBLNo().toUpperCase());
+		vo.setBLNo(vo.getBLNo().trim().toUpperCase());
 		
 		/***********从开工、完工报处调用save函数才需要执行这边代码****plus by xh-2016-11-02*************/
 		//开工报

+ 3 - 0
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/dao/zysqbp/ZysqbpDao.java

@@ -16,6 +16,9 @@ import com.jtgh.yjpt.entity.zysqbp.ZysqbpEntity;
  */
 public interface ZysqbpDao extends MyRepository<ZysqbpEntity, Long> {
 
+	@Query("from ZysqbpEntity where BLNo=?1 and zydw.id=?2 ")
+	public List<ZysqbpEntity> findByBLNoAndZydw(String BLNo,long jyrId);
+	
 	@Query("from ZysqbpEntity")
 	public List<ZysqbpEntity> queryList();
 

+ 7 - 3
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/service/impl/zysqbp/ZysqbpServiceImpl.java

@@ -67,8 +67,7 @@ import com.yjpt.util.DateUtil;
 @Service
 public class ZysqbpServiceImpl extends
 		BaseWorkFlowServiceImpl<ZysqbpEntity, Long> implements ZysqbpService {
-	private final static Logger LOGGER = Logger
-			.getLogger(ZysqbpServiceImpl.class);
+	private final static Logger LOGGER = Logger.getLogger(ZysqbpServiceImpl.class);
 	@Autowired
 	private ZysqbpDao zysqbpDao;
 	@Autowired
@@ -231,7 +230,7 @@ public class ZysqbpServiceImpl extends
 		
 
 		//提单号同意转换成大写
-		data.setBLNo(data.getBLNo().toUpperCase());
+		data.setBLNo(data.getBLNo().trim().toUpperCase());
 		
 		if (data.getRecordStatus() == BaseEntity.RECORD_STATE_REJECT) {
 			//被退回的数据重新提交
@@ -2859,5 +2858,10 @@ public class ZysqbpServiceImpl extends
 		}
 		return "";
 	}
+	
+	@Override
+	public List<ZysqbpEntity> findByBlnoAndZydw(String BLNo,long jyrId){
+		return zysqbpDao.findByBLNoAndZydw(BLNo,jyrId);
+	}
 
 };

+ 4 - 2
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/service/zysqbp/ZysqbpService.java

@@ -30,14 +30,16 @@ import com.jtgh.yjpt.service.BaseWorkFlowService;
 
 public interface ZysqbpService extends BaseWorkFlowService {
 
-	public Page<ZysqbpEntity> findAll(Specification<ZysqbpEntity> spec,
-			Pageable pageable);
+	public Page<ZysqbpEntity> findAll(Specification<ZysqbpEntity> spec,Pageable pageable);
 
 	public void logicDelete(Iterable<ZysqbpEntity> entities);
 
 	public <S extends ZysqbpEntity> S save(S entity);
 
 	public ZysqbpEntity findOne(Long id);
+	
+	//根据提单号获得申报信息
+	public List<ZysqbpEntity> findByBlnoAndZydw(String BLNo,long jyrId);
 
 	public List<Map<String, Object>> countDetailData(String select);
 

+ 243 - 78
gkaq/yjpt-java/trunk/java_src/com/jtgh/yjpt/webService/zysqbp/WhsqbpWebService.java

@@ -194,8 +194,7 @@ public class WhsqbpWebService extends BaseController {
 		// 根据 申请单位 过滤
 		addNotEmptyModel(filterList, "zydw.gkjyr", gkjyr, Operator.LIKE);
 		// 只检索非删除状态记录
-		addNotEmptyModel(filterList, "recordStatus",
-				BaseEntity.RECORD_STATE_DELETE, Operator.NEQ);
+		addNotEmptyModel(filterList, "recordStatus",BaseEntity.RECORD_STATE_DELETE, Operator.NEQ);
 		// 根据所在地过滤
 		addNotEmptyModel(filterList, "szd.id", szd, Operator.LIKE);
 		// 根据港区过滤
@@ -210,44 +209,34 @@ public class WhsqbpWebService extends BaseController {
 		// 报告时间
 		try {
 			if (!StringUtils.isEmpty(bgsj1))
-				addNotEmptyModel(filterList, "bgsj",
-						Utils.getDateFirstTime(sdf.parse(bgsj1)), Operator.GTE);
+				addNotEmptyModel(filterList, "bgsj",Utils.getDateFirstTime(sdf.parse(bgsj1)), Operator.GTE);
 			if (!StringUtils.isEmpty(bgsj2))
-				addNotEmptyModel(filterList, "bgsj",
-						Utils.getDateLastTime(sdf.parse(bgsj2)), Operator.LTE);
+				addNotEmptyModel(filterList, "bgsj",Utils.getDateLastTime(sdf.parse(bgsj2)), Operator.LTE);
 			// 开工时间
 			if (!StringUtils.isEmpty(kgsj1))
-				addNotEmptyModel(filterList, "kgsj",
-						Utils.getDateFirstTime(sdf.parse(kgsj1)), Operator.GTE);
+				addNotEmptyModel(filterList, "kgsj",Utils.getDateFirstTime(sdf.parse(kgsj1)), Operator.GTE);
 			if (!StringUtils.isEmpty(kgsj2))
-				addNotEmptyModel(filterList, "kgsj",
-						Utils.getDateLastTime(sdf.parse(kgsj2)), Operator.LTE);
+				addNotEmptyModel(filterList, "kgsj",Utils.getDateLastTime(sdf.parse(kgsj2)), Operator.LTE);
 			// 完工时间
 			if (!StringUtils.isEmpty(wgsj1))
-				addNotEmptyModel(filterList, "wgsj",
-						Utils.getDateFirstTime(sdf.parse(wgsj1)), Operator.GTE);
+				addNotEmptyModel(filterList, "wgsj",Utils.getDateFirstTime(sdf.parse(wgsj1)), Operator.GTE);
 			if (!StringUtils.isEmpty(wgsj2))
-				addNotEmptyModel(filterList, "wgsj",
-						Utils.getDateLastTime(sdf.parse(wgsj2)), Operator.LTE);
+				addNotEmptyModel(filterList, "wgsj",Utils.getDateLastTime(sdf.parse(wgsj2)), Operator.LTE);
 		} catch (ParseException e) {
 			e.printStackTrace();
 		}
 		if (Utils.getWebServiceUser() != null) {
 			UserEntity user = Utils.getWebServiceUser();
 			// 经营人只能查自己的
-			if (Constants.YES.equals(user.getSfjyr())
-					&& user.getJyrjcxx() != null) {
-				addNotEmptyModel(filterList, "zydw", user.getJyrjcxx(),
-						Operator.EQ);
+			if (Constants.YES.equals(user.getSfjyr()) && user.getJyrjcxx() != null) {
+				addNotEmptyModel(filterList, "zydw", user.getJyrjcxx(),Operator.EQ);
 			} else {
 				// 行政人员根据权限过滤(危货列表菜单ID=26)
 				addRecordCodeFilter(26l, filterList);
 			}
 		}
-		Specification<ZysqbpEntity> spec = SpecificationCreater
-				.searchByPredicateModels(filterList);
-		SinglePageRequest page = new SinglePageRequest(pageCount, n, "desc",
-				"bgsj");
+		Specification<ZysqbpEntity> spec = SpecificationCreater.searchByPredicateModels(filterList);
+		SinglePageRequest page = new SinglePageRequest(pageCount, n, "desc","bgsj");
 		Page<ZysqbpEntity> list = zysqbpService.findAll(spec, page);
 		return list.getContent();
 	}
@@ -257,16 +246,11 @@ public class WhsqbpWebService extends BaseController {
 		if (whList != null && whList.size() > 0) {
 			WxhwpmEntity whp = whList.get(0);
 			List<PredicateModel> filterList = new ArrayList<PredicateModel>();
-			if (Utils.getWebServiceUser() != null
-					&& Utils.getWebServiceUser().getJyrjcxx() != null)
-				addNotEmptyModel(filterList, "fzsq.jyrVo", Utils
-						.getWebServiceUser().getJyrjcxx(), Operator.EQ);
-			addNotEmptyModel(filterList, "fzsq.recordStatus",
-					BaseEntity.RECORD_STATE_DELETE, Operator.NEQ);
-			addNotEmptyModel(filterList, "recordStatus",
-					BaseEntity.RECORD_STATE_DELETE, Operator.NEQ);
-			Specification<GkwxhwzyfzblFzEntity> spec = SpecificationCreater
-					.searchByPredicateModels(filterList);
+			if (Utils.getWebServiceUser() != null && Utils.getWebServiceUser().getJyrjcxx() != null)
+				addNotEmptyModel(filterList, "fzsq.jyrVo", Utils.getWebServiceUser().getJyrjcxx(), Operator.EQ);
+			addNotEmptyModel(filterList, "fzsq.recordStatus",BaseEntity.RECORD_STATE_DELETE, Operator.NEQ);
+			addNotEmptyModel(filterList, "recordStatus",BaseEntity.RECORD_STATE_DELETE, Operator.NEQ);
+			Specification<GkwxhwzyfzblFzEntity> spec = SpecificationCreater.searchByPredicateModels(filterList);
 			List<GkwxhwzyfzblFzEntity> list = gkwxhwzyfzService.findAll(spec);
 			// 允许作业的危货品名
 			String whpm = "";
@@ -298,16 +282,11 @@ public class WhsqbpWebService extends BaseController {
 		if (whList != null && whList.size() > 0) {
 			WxhwpmEntity whp = whList.get(0);
 			List<PredicateModel> filterList = new ArrayList<PredicateModel>();
-			if (Utils.getWebServiceUser() != null
-					&& Utils.getWebServiceUser().getJyrjcxx() != null)
-				addNotEmptyModel(filterList, "fzsq.jyrVo", Utils
-						.getWebServiceUser().getJyrjcxx(), Operator.EQ);
-			addNotEmptyModel(filterList, "fzsq.recordStatus",
-					BaseEntity.RECORD_STATE_DELETE, Operator.NEQ);
-			addNotEmptyModel(filterList, "recordStatus",
-					BaseEntity.RECORD_STATE_DELETE, Operator.NEQ);
-			Specification<GkwxhwzyfzblFzEntity> spec = SpecificationCreater
-					.searchByPredicateModels(filterList);
+			if (Utils.getWebServiceUser() != null && Utils.getWebServiceUser().getJyrjcxx() != null)
+				addNotEmptyModel(filterList, "fzsq.jyrVo", Utils.getWebServiceUser().getJyrjcxx(), Operator.EQ);
+			addNotEmptyModel(filterList, "fzsq.recordStatus",BaseEntity.RECORD_STATE_DELETE, Operator.NEQ);
+			addNotEmptyModel(filterList, "recordStatus",BaseEntity.RECORD_STATE_DELETE, Operator.NEQ);
+			Specification<GkwxhwzyfzblFzEntity> spec = SpecificationCreater.searchByPredicateModels(filterList);
 			List<GkwxhwzyfzblFzEntity> list = gkwxhwzyfzService.findAll(spec);
 			// 允许作业的危货品名
 			String whpm = "";
@@ -397,6 +376,8 @@ public class WhsqbpWebService extends BaseController {
 	 * 填写开工报
 	 * 0:开工报填报成功;1:账号所属经营人和记录所属经营人不一致
 	 * 2:根据ID未找到对应数据;3:申报单id无效
+	 * 4:当前任务状态的数据不需填写开工报
+	 * 5:当前数据已填写了开工报
 	 * @param entityId 申报信息对应id
 	 * @param kbsj     靠泊时间
 	 * @param kgsj     开工时间
@@ -408,27 +389,40 @@ public class WhsqbpWebService extends BaseController {
 		if(entityId!=0L){
 			ZysqbpEntity entity = zysqbpService.findOne(entityId);
 			if(entity!=null){
-				//判断当前登录账号所属经营人和此条申报所属经营人是否一致
-				if(Utils.getWebServiceUser().getSfjyr().equals(Constants.YES)
-				   &&entity.getZydw().getId().equals(Utils.getWebServiceUser().getJyrjcxx())){
-					entity.setKgzt(Constants.YES);//开工状态
-					entity.setKpsj(kbsj);//靠泊时间
-					entity.setKgsj(kgsj);//开工时间
-					entity.setSr(Utils.getWebServiceUser().getName());//开工报填报人
-					if(sg!=null && !"".equals(sg)){
-						entity.setSg(sg);
+				if(entity.getRecordStatus()==2 || entity.getRecordStatus()==10){
+					if(entity.equals(Constants.NO)){
+						//判断当前登录账号所属经营人和此条申报所属经营人是否一致
+						if(Utils.getWebServiceUser().getSfjyr().equals(Constants.YES)
+						   &&entity.getZydw().getId().equals(Utils.getWebServiceUser().getJyrjcxx().getId())){
+							entity.setKgzt(Constants.YES);//开工状态
+							entity.setKpsj(kbsj);//靠泊时间
+							entity.setKgsj(kgsj);//开工时间
+							entity.setSr(Utils.getWebServiceUser().getName());//开工报填报人
+							if(sg!=null && !"".equals(sg)){
+								entity.setSg(sg);
+							}
+							if(xg!=null && !"".equals(xg)){
+								entity.setXg(xg);
+							}
+							zysqbpService.save(entity);
+							//开工报填报成功
+							return 0;
+						}//操作账号所属经营人与记录所属经营人一致
+						else{
+							//账号所属经营人和记录所属经营人不一致
+							return 1;
+						}
 					}
-					if(xg!=null && !"".equals(xg)){
-						entity.setXg(xg);
+					else{
+						//当前数据已填写了开工报
+						return 5;
 					}
-					zysqbpService.save(entity);
-					//开工报填报成功
-					return 0;
-				}//操作账号所属经营人与记录所属经营人一致
+					
+				}
 				else{
-					//账号所属经营人和记录所属经营人不一致
-					return 1;
+					return 4;
 				}
+				
 			}//end if 根据id找到对应数据
 			else{
 				//根据ID未找到对应数据
@@ -442,9 +436,82 @@ public class WhsqbpWebService extends BaseController {
 	
 	
 	/**
+	 * 填写开工报
+	 * 0:开工报填报成功;1:账号所属经营人和记录所属经营人不一致
+	 * 2:根据ID未找到对应数据;3:申报单id无效
+	 * 4:当前任务状态的数据不需填写开工报
+	 * 5:当前数据已填写了开工报
+	 * @param BlNo     提单号
+	 * @param kbsj     靠泊时间
+	 * @param kgsj     开工时间
+	 * @param sg       上港
+	 * @param xg       下港
+	 * @return
+	 */
+	public int KgReportByBLNo(String BLNo,Date kbsj,Date kgsj,String sg,String xg){
+		if(BLNo!=null && !BLNo.trim().equals("")){
+			//根据提单号和账号对应的经营人id获得申报数据
+			List<ZysqbpEntity> entitys = zysqbpService.findByBlnoAndZydw(BLNo,Utils.getWebServiceUser().getJyrjcxx().getId());
+			if(entitys!=null&&entitys.size()>0&&entitys.get(0)!=null){
+				ZysqbpEntity entity = entitys.get(0); 
+				
+				if(entity!=null){
+					if(entity.getRecordStatus()==2 || entity.getRecordStatus()==10){
+						
+						if(entity.getKgzt().equals(Constants.NO)){
+							//判断当前登录账号所属经营人和此条申报所属经营人是否一致
+							if(Utils.getWebServiceUser().getSfjyr().equals(Constants.YES)
+							   &&entity.getZydw().getId().equals(Utils.getWebServiceUser().getJyrjcxx().getId())){
+								entity.setKgzt(Constants.YES);//开工状态
+								entity.setKpsj(kbsj);//靠泊时间
+								entity.setKgsj(kgsj);//开工时间
+								entity.setSr(Utils.getWebServiceUser().getName());//开工报填报人
+								if(sg!=null && !"".equals(sg)){
+									entity.setSg(sg);
+								}
+								if(xg!=null && !"".equals(xg)){
+									entity.setXg(xg);
+								}
+								zysqbpService.save(entity);
+								//开工报填报成功
+								return 0;
+							}//操作账号所属经营人与记录所属经营人一致
+							else{
+								//账号所属经营人和记录所属经营人不一致
+								return 1;
+							}
+						}//end if 还未填写开工报判断
+						else{
+							//当前数据已填写了开工报
+							return 5;
+						}//end if else 开工报已填写
+						
+					}//end if 申报数据状态判断,“完成”、“变更完成”状态的数据才可以填报
+					else{
+						//当前任务状态的数据不需填写开工报
+						return 4;
+					}//end if else 非“完成”、“变更完成”状态的数据
+				}
+				
+			}//end if 根据提单号找到对应数据
+			else{
+				//根据提单号未找到对应数据
+				return 2;
+			}
+		}//end if id有效
+		
+		//提单号是空字符串
+		return 3;
+	}
+	
+	
+	/**
 	 * 填写完工报
 	 * 0:开工报填报成功;1:账号所属经营人和记录所属经营人不一致
 	 * 2:根据ID未找到对应数据;3:申报单id无效
+	 * 4:当前任务状态的数据不需填写完工报
+	 * 5:当前数据已填写了完工报
+	 * 6:先填写开工报,再填写完工报
 	 * @param entityId 申报信息对应id 
 	 * @param wgsj     完工时间
 	 * @param sg       上港
@@ -455,26 +522,46 @@ public class WhsqbpWebService extends BaseController {
 		if(entityId!=0L){
 			ZysqbpEntity entity = zysqbpService.findOne(entityId);
 			if(entity!=null){
-				//判断当前登录账号所属经营人和此条申报所属经营人是否一致
-				if(Utils.getWebServiceUser().getSfjyr().equals(Constants.YES)
-				   &&entity.getZydw().getId().equals(Utils.getWebServiceUser().getJyrjcxx())){
-					entity.setWgzt(Constants.YES);//开工状态
-					entity.setWgsj(wgsj);//完工时间 
-					entity.setFr(Utils.getWebServiceUser().getName());//开工报填报人
-					if(sg!=null && !"".equals(sg)){
-						entity.setSg(sg);
-					}
-					if(xg!=null && !"".equals(xg)){
-						entity.setXg(xg);
-					}
-					zysqbpService.save(entity);
-					//开工报填报成功
-					return 0;
-				}//操作账号所属经营人与记录所属经营人一致
-				else{
-					//账号所属经营人和记录所属经营人不一致
-					return 1;
+				if(entity.getRecordStatus()==2 || entity.getRecordStatus()==10){
+					//开工状态判断,填了开工报再填完工报
+					if(entity.getKgzt().equals(Constants.YES)){
+						if(entity.getWgzt().equals(Constants.NO)){
+							//判断当前登录账号所属经营人和此条申报所属经营人是否一致
+							if(Utils.getWebServiceUser().getSfjyr().equals(Constants.YES)
+							   &&entity.getZydw().getId().equals(Utils.getWebServiceUser().getJyrjcxx().getId())){
+								entity.setWgzt(Constants.YES);//开工状态
+								entity.setWgsj(wgsj);//完工时间 
+								entity.setFr(Utils.getWebServiceUser().getName());//开工报填报人
+								if(sg!=null && !"".equals(sg)){
+									entity.setSg(sg);
+								}
+								if(xg!=null && !"".equals(xg)){
+									entity.setXg(xg);
+								}
+								zysqbpService.save(entity);
+								//开工报填报成功
+								return 0;
+							}//操作账号所属经营人与记录所属经营人一致
+							else{
+								//账号所属经营人和记录所属经营人不一致
+								return 1;
+							}
+						}//end if 未填写完工报
+						else{
+							//当前数据已填写了完工报
+							return 5;
+						}
+					}//end if 开工状态判断,填了开工报再填完工报
+					else{
+						//先填写开工报,再填写完工报
+						return 6;
+					}//end if else 还未填写开工报
 				}
+				else{
+					//当前任务状态的数据不需填写完工报
+					return 4;
+				}//end if else 批过的数据才能填写开工完工报,状态判断
+				
 			}//end if 根据id找到对应数据
 			else{
 				//根据ID未找到对应数据
@@ -485,6 +572,84 @@ public class WhsqbpWebService extends BaseController {
 		//申报单id无效
 		return 3;
 	}
+	
+	
+	/**
+	 * 填写完工报
+	 * 0:开工报填报成功;1:账号所属经营人和记录所属经营人不一致
+	 * 2:根据ID未找到对应数据;3:申报单id无效
+	 * 4:当前任务状态的数据不需填写完工报
+	 * 5:当前数据已填写了完工报
+	 * 6:先填写开工报,再填写完工报
+	 * @param entityId 申报信息对应id 
+	 * @param wgsj     完工时间
+	 * @param sg       上港
+	 * @param xg       下港
+	 * @return
+	 */
+	public int WgReportByBLNo(String BLNo,Date wgsj,String sg,String xg){
+		if(BLNo!=null && !BLNo.trim().equals("")){
+			//根据提单号和账号对应的经营人id获得申报数据
+			List<ZysqbpEntity> entitys = zysqbpService.findByBlnoAndZydw(BLNo,Utils.getWebServiceUser().getJyrjcxx().getId());
+			if(entitys!=null&&entitys.size()>0&&entitys.get(0)!=null){
+				ZysqbpEntity entity = entitys.get(0); 
+				
+				if(entity!=null){
+					if(entity.getRecordStatus()==2 || entity.getRecordStatus()==10){
+						//开工状态判断,填了开工报再填完工报
+						if(entity.getKgzt().equals(Constants.YES)){
+							
+							if(entity.getWgzt().equals(Constants.NO)){
+								//判断当前登录账号所属经营人和此条申报所属经营人是否一致
+								if(Utils.getWebServiceUser().getSfjyr().equals(Constants.YES)
+								   &&entity.getZydw().getId().equals(Utils.getWebServiceUser().getJyrjcxx().getId())){
+									entity.setWgzt(Constants.YES);//开工状态
+									entity.setWgsj(wgsj);//完工时间 
+									entity.setFr(Utils.getWebServiceUser().getName());//开工报填报人
+									if(sg!=null && !"".equals(sg)){
+										entity.setSg(sg);
+									}
+									if(xg!=null && !"".equals(xg)){
+										entity.setXg(xg);
+									}
+									zysqbpService.save(entity);
+									//开工报填报成功
+									return 0;
+								}//操作账号所属经营人与记录所属经营人一致
+								else{
+									//账号所属经营人和记录所属经营人不一致
+									return 1;
+								}
+							}//end if 还未填写完工报
+							else{
+								//当前数据已填写了完工报
+								return 5;
+							}//end if else 当前数据已填写了完工报
+							
+						}//end if 已经填写了开工报
+						else{
+							//先填写开工报,再填写完工报
+							return 6;
+						}//end if else  开工报未填写
+						
+					}//end if 是否是审批过的状态的数据
+					else{
+						//当前任务状态的数据不需填写完工报
+						return 4;
+					}
+
+				}
+				
+			}//end if 根据提单号找到对应数据
+			else{
+				//根据提单号未找到对应数据
+				return 2;
+			}
+		}//end if 根据提单号找到对应数据
+		
+		//提单号是空字符串
+		return 3;
+	}
 
 	/**
 	 * 提交信息 return 0:提交成功 1:您选择的作业场所的附证未进行年审,请先保存本条数据,并进行相应的附证年审!

+ 1 - 1
gkaq/yjpt-java/trunk/resources/spring/application.properties

@@ -1,6 +1,6 @@
 #***************************************  jdbc info  ********************************************#
 jdbc.driver                 = oracle.jdbc.driver.OracleDriver
-jdbc.url                      = jdbc:oracle:thin:@localhost:1521:orcl
+jdbc.url                      = jdbc:oracle:thin:@192.168.57.36:1521:orcl
 jdbc.username           = yjptzj
 jdbc.password            = yjpt
 hibernate.dialect        = org.hibernate.dialect.Oracle10gDialect