Prechádzať zdrojové kódy

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

ld_xuhx 9 rokov pred
rodič
commit
9487635261

+ 125 - 56
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gkjyr/jyrbw/ctl/BwCtl.java

@@ -12,7 +12,6 @@ import javax.persistence.criteria.CriteriaBuilder.In;
 import javax.persistence.criteria.CriteriaQuery;
 import javax.persistence.criteria.Predicate;
 import javax.persistence.criteria.Root;
-import javax.persistence.criteria.Subquery;
 import javax.servlet.ServletOutputStream;
 import javax.servlet.http.HttpServletRequest;
 import javax.servlet.http.HttpServletResponse;
@@ -42,9 +41,6 @@ import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
 import com.xt.jygl.gkjcxx.gq.service.GqService;
 import com.xt.jygl.gkjcxx.mt.entity.MtEntity;
 import com.xt.jygl.gkjcxx.zyq.entity.ZyqEntity;
-import com.xt.jygl.gkjsgl.tzjhgl.entity.TzjhglEntity;
-import com.xt.jygl.gkjsgl.xmxxgl.entity.XmxxglEntity;
-import com.xt.jygl.gkjsgl.xmxxgl.vo.XmxxglVo;
 import com.xt.jygl.gkjygl.gkjyr.jyrbw.client.BwWebService;
 import com.xt.jygl.gkjygl.gkjyr.jyrbw.service.BwService;
 import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.entity.BwEntity;
@@ -105,20 +101,23 @@ public class BwCtl extends BaseWebCtl {
 			@Override
 			public Predicate toPredicate(Root<BwEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
 				List<Predicate> list = new ArrayList<Predicate>();
-				//标志位,判断查询条件
+				// 标志位,判断查询条件
 				String flag = bz;
 				if (flag != null) {
 
-//					if (StringUtils.isNotEmpty(ssjyr)) {
-//						list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class), "%" + ssjyr + "%"));
-//					} else if (isGET(request)) {
-//						String v = (String) CacheSearchCondition.cacheSCmapVal(cacheSCmap, "ssjyr");
-//						if (StringUtils.isNotEmpty(v)) {
-//							list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class), "%" + v + "%"));
-//						}
-//					}
+					// if (StringUtils.isNotEmpty(ssjyr)) {
+					// list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class),
+					// "%" + ssjyr + "%"));
+					// } else if (isGET(request)) {
+					// String v = (String)
+					// CacheSearchCondition.cacheSCmapVal(cacheSCmap, "ssjyr");
+					// if (StringUtils.isNotEmpty(v)) {
+					// list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class),
+					// "%" + v + "%"));
+					// }
+					// }
 					if (cacheSCmap != null) {
-					    cacheSCmap.remove("ssjyr");
+						cacheSCmap.remove("ssjyr");
 					}
 					if (StringUtils.isNotEmpty(ssmt)) {
 						list.add(cb.like(root.get("ssmt").get("id").as(String.class), "%" + ssmt + "%"));
@@ -128,13 +127,12 @@ public class BwCtl extends BaseWebCtl {
 							list.add(cb.like(root.get("ssmt").get("id").as(String.class), "%" + v + "%"));
 						}
 					}
-				
 
 				} else {
-					//清除ssmt的缓存数据
+					// 清除ssmt的缓存数据
 					if (cacheSCmap != null) {
 						cacheSCmap.remove("ssmt");
-						
+
 					}
 					if (StringUtils.isNotEmpty(szdid)) {
 						list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + szdid + "%"));
@@ -326,9 +324,9 @@ public class BwCtl extends BaseWebCtl {
 		}
 		page.setSort("createDateTime");
 		page.setOrder("desc");
-		
+
 		List<BwEntity> textlist = query.findAll(spec, BwEntity.class);
-		
+
 		Page<BwEntity> list = query.findAll(spec, toPageRequest(page), BwEntity.class);
 		List<BwVo> voList = new ArrayList<BwVo>();
 		for (BwEntity entity : list) {
@@ -455,7 +453,7 @@ public class BwCtl extends BaseWebCtl {
 		model.addAttribute("fwlx", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "fwlxid"));
 		model.addAttribute("sfdwkfbw", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "sfdwkfid"));
 		model.addAttribute("bwyt", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "bwbwyt"));
-		
+
 		model.addAttribute("bz", CacheSearchCondition.cacheSCmapVal(cacheSCmap, "bz"));
 
 		// 翻页共通
@@ -1127,7 +1125,7 @@ public class BwCtl extends BaseWebCtl {
 		List<CodeEntity> list = securityMgr.codeService().findValidCodesByGroupCode("BWXSXP");
 		return list;
 	}
-	
+
 	@RequestMapping(value = "/exportExcelAll")
 	public String exportExcelAll(HttpServletResponse response, final HttpServletRequest request, final String ssjyr, final String ssmt, final String szdid, final String szgkid, final String szgqid, final String bwmc, final String wxpbwid, final String bwsxid, final String fwlxid, final String sfdwkfid, final String bwyt, final String bz) {
 		// 查詢條件
@@ -1137,37 +1135,37 @@ public class BwCtl extends BaseWebCtl {
 			public Predicate toPredicate(Root<BwEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
 				List<Predicate> list = new ArrayList<Predicate>();
 
-					if (StringUtils.isNotEmpty(szdid)) {
-						list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + szdid + "%"));
-					}
-					if (StringUtils.isNotEmpty(szgkid)) {
-						list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + szgkid + "%"));
-					}
-					if (StringUtils.isNotEmpty(szgqid)) {
-						list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + szgqid + "%"));
-					}
-					if (StringUtils.isNotEmpty(ssjyr)) {
-						list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class), "%" + ssjyr + "%"));
-					}
-					if (StringUtils.isNotEmpty(bwmc)) {
-						list.add(cb.like(root.get("bwmc").as(String.class), "%" + bwmc + "%"));
-					}
-					if (StringUtils.isNotEmpty(wxpbwid)) {
-						list.add(cb.like(root.get("wxpbw").get("id").as(String.class), "%" + wxpbwid + "%"));
-					}
-					if (StringUtils.isNotEmpty(bwsxid)) {
-						list.add(cb.like(root.get("bwsx").get("id").as(String.class), "%" + bwsxid + "%"));
-					}
-					if (StringUtils.isNotEmpty(fwlxid)) {
-						list.add(cb.like(root.get("fwlx").get("id").as(String.class), "%" + fwlxid + "%"));
-					}
-					if (StringUtils.isNotEmpty(sfdwkfid)) {
-						list.add(cb.like(root.get("sfdwkf").get("id").as(String.class), "%" + sfdwkfid + "%"));
-					}
-					if (StringUtils.isNotEmpty(bwyt)) {
-						list.add(cb.like(root.get("bwyt").as(String.class), "%" + bwyt + "%"));
-					}
-					// 经营人只能查看自己企业下的数据,非经营人只能查看自己所在地的数据
+				if (StringUtils.isNotEmpty(szdid)) {
+					list.add(cb.like(root.get("szd").get("id").as(String.class), "%" + szdid + "%"));
+				}
+				if (StringUtils.isNotEmpty(szgkid)) {
+					list.add(cb.like(root.get("szgk").get("id").as(String.class), "%" + szgkid + "%"));
+				}
+				if (StringUtils.isNotEmpty(szgqid)) {
+					list.add(cb.like(root.get("szgq").get("id").as(String.class), "%" + szgqid + "%"));
+				}
+				if (StringUtils.isNotEmpty(ssjyr)) {
+					list.add(cb.like(root.get("ssjyr").get("gkjyr").as(String.class), "%" + ssjyr + "%"));
+				}
+				if (StringUtils.isNotEmpty(bwmc)) {
+					list.add(cb.like(root.get("bwmc").as(String.class), "%" + bwmc + "%"));
+				}
+				if (StringUtils.isNotEmpty(wxpbwid)) {
+					list.add(cb.like(root.get("wxpbw").get("id").as(String.class), "%" + wxpbwid + "%"));
+				}
+				if (StringUtils.isNotEmpty(bwsxid)) {
+					list.add(cb.like(root.get("bwsx").get("id").as(String.class), "%" + bwsxid + "%"));
+				}
+				if (StringUtils.isNotEmpty(fwlxid)) {
+					list.add(cb.like(root.get("fwlx").get("id").as(String.class), "%" + fwlxid + "%"));
+				}
+				if (StringUtils.isNotEmpty(sfdwkfid)) {
+					list.add(cb.like(root.get("sfdwkf").get("id").as(String.class), "%" + sfdwkfid + "%"));
+				}
+				if (StringUtils.isNotEmpty(bwyt)) {
+					list.add(cb.like(root.get("bwyt").as(String.class), "%" + bwyt + "%"));
+				}
+				// 经营人只能查看自己企业下的数据,非经营人只能查看自己所在地的数据
 				if (isJyr()) {
 					list.add(cb.like(root.get("ssjyr").get("id").as(String.class), "%" + getSsjyr().getId() + "%"));
 				} else {
@@ -1213,7 +1211,7 @@ public class BwCtl extends BaseWebCtl {
 		Utils.getSession().setAttribute("user", user2);
 		List<BwEntity> list = query.findAll(spec, BwEntity.class);
 		List<BwVo> voList = entityToVo(list);
-		
+
 		response.setContentType("application/binary;charset=iso-8859-1");
 		try {
 			ServletOutputStream outputStream = response.getOutputStream();
@@ -1225,10 +1223,10 @@ public class BwCtl extends BaseWebCtl {
 		}
 		return null;
 	}
-	
+
 	public List<BwVo> entityToVo(List<BwEntity> list) {
 		List<BwVo> voList = new ArrayList<BwVo>();
-		
+
 		for (BwEntity entity : list) {
 			BwVo vo = new BwVo();
 			if (null != entity) {
@@ -1289,10 +1287,81 @@ public class BwCtl extends BaseWebCtl {
 				vo.setBwszsx(entity.getBwszsx() != null ? entity.getBwszsx().getId() : "");
 				vo.setSclx(entity.getSclx() != null ? entity.getSclx().getId() : "");
 				vo.setJgxs(entity.getJgxs() != null ? entity.getJgxs().getId() : "");
-				
+
 				voList.add(vo);
 			}
 		}
 		return voList;
 	}
+
+	@RequestMapping(value = "/bwList")
+	@ResponseBody
+	public List<BwVo> bwList(String bwids) {
+
+		List<BwVo> slist = new ArrayList<BwVo>();
+		String[] bwlists = bwids.split(",");
+		for (String bw : bwlists) {
+			BwEntity entity = bwService.findOne(bw);
+			BwVo vo = new BwVo();
+			if (entity != null) {
+				BeanUtils.copyProperties(entity, vo);
+				vo.setSzdzw(entity.getSzd() != null ? entity.getSzd().getText() : "");
+				vo.setSzgkzw(entity.getSzgk() != null ? entity.getSzgk().getGkmc() : "");
+				vo.setSzgqzw(entity.getSzgq() != null ? entity.getSzgq().getGqmc() : "");
+				vo.setSsjyrzw(entity.getSsjyr() != null ? entity.getSsjyr().getGkjyr() : "");
+				vo.setSsmtzw(entity.getSsmt() != null ? entity.getSsmt().getMtmc() : "");
+				vo.setBwsxzw(entity.getBwsx() != null ? entity.getBwsx().getText() : "");
+				vo.setFwlxzw(entity.getFwlx() != null ? entity.getFwlx().getText() : "");
+				vo.setWxpbwzw(entity.getWxpbw() != null ? entity.getWxpbw().getText() : "");
+				vo.setZyhbwflzw(entity.getZyhbwfl() != null ? entity.getZyhbwfl().getText() : "");
+				vo.setSffzzw(entity.getSffz() != null ? entity.getSffz().getText() : "");
+				vo.setSfdwkfzw(entity.getSfdwkf() != null ? entity.getSfdwkf().getText() : "");
+				vo.setBwszsxzw(entity.getBwszsx() != null ? entity.getBwszsx().getText() : "");
+				vo.setSclxzw(entity.getSclx() != null ? entity.getSclx().getText() : "");
+				vo.setJgxszw(entity.getJgxs() != null ? entity.getJgxs().getText() : "");
+				vo.setKbcblxzw(entity.getKbcblx() != null ? entity.getKbcblx().getText() : "");
+
+				vo.setSszyq(entity.getSszyq() != null ? entity.getSszyq().getId() : "");
+				vo.setSszyqzw(entity.getSszyq() != null ? entity.getSszyq().getZyqmc() : "");
+				vo.setZls(entity.getZls() != null ? entity.getZls().getId() : "");
+				vo.setZlszw(entity.getZls() != null ? entity.getZls().getText() : "");
+				vo.setXp(entity.getXp() != null ? entity.getXp().getId() : "");
+				vo.setXpzw(entity.getXp() != null ? entity.getXp().getText() : "");
+				vo.setBwszhd(entity.getBwszhd() != null ? entity.getBwszhd().getText() : "");
+
+				if (entity.getBwyt() != null) {
+					String bwytzw = "";
+					String[] s = entity.getBwyt().split(",");
+
+					for (int i = 0; i < s.length; i++) {
+						CodeEntity ce = securityMgr.codeService().findOne(s[i]);
+						if (ce != null) {
+							bwytzw += ce.getText();
+							if (i != s.length - 1) {
+								bwytzw += ",";
+							}
+						}
+					}
+					vo.setBwytzw(bwytzw);
+				}
+				vo.setSzd(entity.getSzd() != null ? entity.getSzd().getId() : "");
+				vo.setSzgk(entity.getSzgk() != null ? entity.getSzgk().getId() : "");
+				vo.setSzgq(entity.getSzgq() != null ? entity.getSzgq().getId() : "");
+				vo.setSsjyr(entity.getSsjyr() != null ? entity.getSsjyr().getId() : "");
+				vo.setSsmt(entity.getSsmt() != null ? entity.getSsmt().getId() : "");
+				vo.setBwsx(entity.getBwsx() != null ? entity.getBwsx().getId() : "");
+				vo.setFwlx(entity.getFwlx() != null ? entity.getFwlx().getId() : "");
+				vo.setWxpbw(entity.getWxpbw() != null ? entity.getWxpbw().getId() : "");
+				vo.setZyhbwfl(entity.getZyhbwfl() != null ? entity.getZyhbwfl().getId() : "");
+				vo.setSffz(entity.getSffz() != null ? entity.getSffz().getId() : "");
+				vo.setSfdwkf(entity.getSfdwkf() != null ? entity.getSfdwkf().getId() : "");
+				vo.setBwszsx(entity.getBwszsx() != null ? entity.getBwszsx().getId() : "");
+				vo.setSclx(entity.getSclx() != null ? entity.getSclx().getId() : "");
+				vo.setJgxs(entity.getJgxs() != null ? entity.getJgxs().getId() : "");
+				slist.add(vo);
+			}
+		}
+
+		return slist;
+	}
 }

+ 3 - 3
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gkjyxkgl/gkjyxkzx/ctl/XkzzxCtl.java

@@ -533,7 +533,7 @@ public class XkzzxCtl extends BaseWebCtl {
 			List<XkzsqfjEntity> list = xkzsqfjService.findBySqid(sq.getId());
 			if (list != null && list.size() > 0) {
 				for (XkzsqfjEntity fj : list) {
-					if (fj != null) {
+					if (fj != null && !StringUtils.isEmpty(fj.getFjid())) {
 						XkzzxfjEntity xkzxxfj = new XkzzxfjEntity();
 						AccessoryEntity acc = accessoryService.findOne(fj.getFjid());
 						if (!StringUtils.isEmpty(acc)) {
@@ -552,7 +552,7 @@ public class XkzzxCtl extends BaseWebCtl {
 			List<XkzbgfjEntity> list = xkzbgfjService.findByBgid(bg.getId());
 			if (list != null && list.size() > 0) {
 				for (XkzbgfjEntity fj : list) {
-					if (fj != null) {
+					if (fj != null && !StringUtils.isEmpty(fj.getFjid())) {
 						XkzzxfjEntity xkzxxfj = new XkzzxfjEntity();
 						AccessoryEntity acc = accessoryService.findOne(fj.getFjid());
 						if (!StringUtils.isEmpty(acc)) {
@@ -571,7 +571,7 @@ public class XkzzxCtl extends BaseWebCtl {
 			List<XkzyxfjEntity> list = xkzyxfjService.findBySqid(yx.getId());
 			if (list != null && list.size() > 0) {
 				for (XkzyxfjEntity fj : list) {
-					if (fj != null) {
+					if (fj != null && !StringUtils.isEmpty(fj.getFjid())) {
 						XkzzxfjEntity xkzxxfj = new XkzzxfjEntity();
 						AccessoryEntity acc = accessoryService.findOne(fj.getFjid());
 						if (!StringUtils.isEmpty(acc)) {

+ 194 - 30
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/ctl/LhbgCtl.java

@@ -30,6 +30,9 @@ import com.xt.jygl.accessory.entity.AccessoryEntity;
 import com.xt.jygl.accessory.service.AccessoryService;
 import com.xt.jygl.common.BaseWebCtl;
 import com.xt.jygl.common.Constants;
+import com.xt.jygl.common.GlobalData;
+import com.xt.jygl.ftp.Ftp;
+import com.xt.jygl.ftp.FtpUtil;
 import com.xt.jygl.gkjcxx.gk.service.GkService;
 import com.xt.jygl.gkjcxx.gq.service.GqService;
 import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.entity.GkjyrEntity;
@@ -42,6 +45,7 @@ import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.service.LhbgfjService;
 import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.vo.LhbgVo;
 import com.xt.jygl.workflow.entity.TaskInfoEntity;
 import com.xt.jygl.workflow.service.TaskInfoService;
+import com.xt.jygl.workflow.vo.TaskInfoVo;
 import com.xtframe.core.anon.auth.RequiresPermissions;
 import com.xtframe.core.base.ctl.WebJsonResult;
 import com.xtframe.sec.common.BaseEntity;
@@ -130,6 +134,11 @@ public class LhbgCtl extends BaseWebCtl {
 			if (entity != null) {
 				BeanUtils.copyProperties(entity, vo);
 				if (entity.getRecordStatus() != 9) {
+					// 获取流程最新步骤
+					TaskInfoEntity info = taskInfoService.findByStep(entity.getId(), LhbgEntity.PROCESS_DEFINITION_KEY);
+					if (info != null) {
+						vo.setCurrentname(info.getCurrName());
+					}
 					if ((lhbgService.getTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) || lhbgService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) {
 						List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(entity.getId(), LhbgEntity.PROCESS_DEFINITION_KEY);
 						if (lists != null & lists.size() > 0) {
@@ -140,9 +149,18 @@ public class LhbgCtl extends BaseWebCtl {
 								vo.setTaskState(Constants.IS_MY_TASK);
 							}
 						}
+					} else {
+						if ("1".equals(entity.getFlowstatus())) {
+							vo.setCurrentname("退回地市");
+						} else if ("2".equals(entity.getFlowstatus())) {
+							vo.setCurrentname("完成且数据已同步");
+						}
 					}
-					voList.add(vo);
+
+				} else if (entity.getRecordStatus() == BaseEntity.RECORD_STATE_COMPLETED) {
+					vo.setCurrentname("完成");
 				}
+				voList.add(vo);
 			}
 		}
 		model.addAttribute("lczt", lczt);
@@ -153,12 +171,18 @@ public class LhbgCtl extends BaseWebCtl {
 		model.addAttribute("menuid", menuid);
 		// 翻页共通
 		putPageInfo(model, page, list);
+		// 判断省市区别
+		if (GlobalData.DEPLOY_MODE.equals(Constants.DEPLOY_MODE_CITY)) {
+			model.addAttribute("ssFlag", "1");
+		} else {
+			model.addAttribute("ssFlag", "0");
+		}
 		return "gkjygl/gklhxkgl/gkjylhbg/lhbgmain";
 	}
 
 	// 新增
 	@RequestMapping(value = "/add")
-	@RequiresPermissions("lhlh:add")
+	@RequiresPermissions("lhbg:add")
 	public String add(Model model) {
 		UserEntity user = securityMgr.getCurrUser();
 		GkjyrEntity jyr = new GkjyrEntity();
@@ -170,7 +194,12 @@ public class LhbgCtl extends BaseWebCtl {
 		SimpleDateFormat dateTimeFormat = new SimpleDateFormat("yyyy-MM-dd");
 		Date today = new Date();
 		model.addAttribute("sqsj", dateTimeFormat.format(today));
-
+		// 判断省市区别
+		if (GlobalData.DEPLOY_MODE.equals(Constants.DEPLOY_MODE_CITY)) {
+			model.addAttribute("ssFlag", "1");
+		} else {
+			model.addAttribute("ssFlag", "0");
+		}
 		return "gkjygl/gklhxkgl/gkjylhbg/lhbgadd";
 	}
 
@@ -183,8 +212,90 @@ public class LhbgCtl extends BaseWebCtl {
 		List<LhbgfjEntity> list = lhbgfjService.findByBgid(lhbg.getId());
 		if (list != null && list.size() > 0) {
 			model.addAttribute("fjlist", list);
+			for (LhbgfjEntity fj : list) {
+				AccessoryEntity acc = accessoryService.findOne(fj.getFjid());
+				if (GlobalData.DEPLOY_MODE.equals(Constants.DEPLOY_MODE_CITY)) {
+					try {
+						Ftp f = getftp();
+						// 本地目录
+						String localBaseDir = GlobalData.UPLOAD_FILE_PATH + acc.getFilepath();
+						File newfile = new File(localBaseDir);
+						// 如果文件夹不存在则创建
+						if (!newfile.exists() && !newfile.isDirectory()) {
+							newfile.mkdirs();
+						}
+						// 远程目录
+						String remoteBaseDir = acc.getFilepath();
+						// 下载ftp文件
+						boolean downflag = FtpUtil.startDown(f, localBaseDir, remoteBaseDir, acc.getFilename());
+						if (downflag) {
+							System.out.println("ok");
+							acc.setFjbz("1");
+							accessoryService.save(acc);
+						}
+
+					} catch (Exception e) {
+						e.printStackTrace();
+					}
+				}
+
+			}
 		}
 		model.addAttribute("record", lhbg);
+
+		String roleCode = "";
+		String currName = "";
+		TaskInfoEntity taskinfo = taskInfoService.findByStep(id, LhbgEntity.PROCESS_DEFINITION_KEY);
+		if (taskinfo != null) {
+			if ("kssc".equals(taskinfo.getTaskKey())) {
+				roleCode = Constants.ROLE_FGLD;
+				currName = "分管领导审批";
+			} else if ("fgldsp".equals(taskinfo.getTaskKey())) {
+				roleCode = Constants.ROLE_LD;
+				currName = "领导批准";
+			} else if ("ldpz".equals(taskinfo.getTaskKey())) {
+				roleCode = Constants.YES;
+			}
+			model.addAttribute("taskKey", taskinfo.getTaskKey());
+		}
+
+		model.addAttribute("currName", currName);
+		model.addAttribute("roleCode", roleCode);
+
+		List<TaskInfoEntity> slist = taskInfoService.findByBusIdAndBusKeyOrderByIdAsc(id, LhbgEntity.PROCESS_DEFINITION_KEY);
+		List<TaskInfoVo> volist = new ArrayList<TaskInfoVo>();
+		for (int i = 0; i < slist.size(); i++) {
+			TaskInfoEntity taskentity = slist.get(i);
+			TaskInfoVo opvo = new TaskInfoVo();
+			opvo.setCurrName(taskentity.getCurrName());
+			opvo.setTaskKey(taskentity.getTaskKey());
+			opvo.setState(taskentity.getState());
+			SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
+			String opStr = "";
+			int voflag = 0;
+			for (int j = 0; j < volist.size(); j++) {
+				TaskInfoVo taskvo = volist.get(j);
+				if (taskvo.getTaskKey().equals(taskentity.getTaskKey())) {
+					if ("2".equals(taskvo.getState())) {
+						opStr += taskvo.getYj();
+					}
+					voflag = j;
+					break;
+				}
+			}
+			if ("2".equals(taskentity.getState())) {
+				opStr += "<div  style = 'float:left;width:100%;text-align: left;'>" + taskentity.getAuditMsg() + "</div><div style = 'float:left;width:100%;text-align: right;'>" + taskentity.getAuditUsername() + "<br/>" + formatter.format(taskentity.getAuditTime()) + "</div>";
+				opvo.setYj(opStr);
+			} else {
+				opStr += "<div id='" + taskentity.getTaskKey() + "' style = 'float:left;width:100%;text-align: left;'>" + "</div><div style = 'float:left;width:100%;text-align: right;'>" + securityMgr.getCurrUser().getName() + "<br/>" + formatter.format(new Date()) + "</div>";
+				opvo.setYj(opStr);
+			}
+			if (voflag > 0) {
+				volist.remove(voflag);
+			}
+			volist.add(opvo);
+		}
+		model.addAttribute("list", volist);
 		return "gkjygl/gklhxkgl/gkjylhbg/lhbgview";
 	}
 
@@ -200,6 +311,14 @@ public class LhbgCtl extends BaseWebCtl {
 		if (list != null && list.size() > 0) {
 			model.addAttribute("fjlist", list);
 		}
+		// 判断省市区别
+		if (GlobalData.DEPLOY_MODE.equals(Constants.DEPLOY_MODE_CITY)) {
+			model.addAttribute("ssFlag", "1");
+		} else {
+			model.addAttribute("ssFlag", "0");
+			model.addAttribute("roleCode", Constants.ROLE_KS);
+			model.addAttribute("currName", "科室审查");
+		}
 		return "gkjygl/gklhxkgl/gkjylhbg/lhbgedit";
 	}
 
@@ -217,6 +336,7 @@ public class LhbgCtl extends BaseWebCtl {
 				lhbgEntity.setCz(code.getCz());
 				lhbgEntity.setXbgdz(code.getXbgdz());
 				lhbgEntity.setXfddbr(code.getXfddbr());
+				lhbgEntity.setSftb(Constants.NO);
 				lhbgEntity = lhbgService.save(lhbgEntity);
 			} else {
 				code.setId(null);
@@ -227,6 +347,7 @@ public class LhbgCtl extends BaseWebCtl {
 					code.setSzgq(jyr.getSzgq());
 					code.setSzd(jyr.getSzd());
 				}
+				code.setSftb(Constants.NO);
 				lhbgEntity = lhbgService.save(code);
 			}
 			if (!StringUtils.isEmpty(accid)) {
@@ -249,10 +370,40 @@ public class LhbgCtl extends BaseWebCtl {
 		return wr;
 	}
 
+	@RequestMapping(value = "/saveTbzt")
+	@ResponseBody
+	public WebJsonResult saveTbzt(Model model, String id) {
+		WebJsonResult wr = success();
+		LhbgEntity entity = lhbgService.findOne(id);
+		List<LhbgfjEntity> fjlist = lhbgfjService.findByBgid(id);
+		String fjid = "";
+		if (fjlist != null && fjlist.size() > 0) {
+			for (LhbgfjEntity fj : fjlist) {
+				fjid = fjid + fj.getFjid() + ",";
+			}
+			fjid = fjid.substring(0, fjid.length() - 1);
+		}
+
+		entity.setSftb(Constants.YES);
+		lhbgService.save(entity);
+		String url = "/GK_OPERATION_JSJY_LHBG_ONE_CP?condition=ID=" + id + ";FJID=" + fjid;
+
+		boolean flag = getTbStatus(url);
+		if (flag) {
+			entity.setFlowstatus("0");
+			entity.setTbzt(Constants.YES);
+			lhbgService.save(entity);
+		} else {
+			wr.setSuccess(false);
+			wr.setMessage("提交失败");
+		}
+		return wr;
+	}
+
 	// 保存
 	@RequestMapping(value = "/submit")
 	@ResponseBody
-	public WebJsonResult submit(Model model, LhbgEntity code, String accid) {
+	public WebJsonResult submit(Model model, LhbgEntity code, String accid, String userids) {
 		WebJsonResult wr = success();
 
 		LhbgEntity lhbgEntity = new LhbgEntity();
@@ -264,7 +415,7 @@ public class LhbgCtl extends BaseWebCtl {
 				lhbgEntity.setCz(code.getCz());
 				lhbgEntity.setXbgdz(code.getXbgdz());
 				lhbgEntity.setXfddbr(code.getXfddbr());
-				lhbgEntity = lhbgService.submit(lhbgEntity);
+				lhbgEntity = lhbgService.submit(lhbgEntity, userids);
 			} else {
 
 				GkjyrEntity jyr = gkjyrService.findOne(code.getJyrid());
@@ -274,7 +425,7 @@ public class LhbgCtl extends BaseWebCtl {
 
 					code.setSzd(jyr.getSzd());
 				}
-				lhbgEntity = lhbgService.submit(code);
+				lhbgEntity = lhbgService.submit(code, userids);
 			}
 			if (!StringUtils.isEmpty(accid)) {
 				// 关联附件
@@ -288,7 +439,7 @@ public class LhbgCtl extends BaseWebCtl {
 				}
 			}
 			// rtx提醒
-			rtxSend("", Constants.ROLE_KS, "你有一条理货变更待办事务,请及时处理!");
+			rtxSend(userids, "", "你有一条理货变更待办事务,请及时处理!");
 		} catch (Exception e) {
 			wr.setSuccess(false);
 			wr.setMessage("操作失败!");
@@ -299,7 +450,7 @@ public class LhbgCtl extends BaseWebCtl {
 
 	@RequestMapping(value = "/submitAudit")
 	@ResponseBody
-	public WebJsonResult submitAudit(LhbgEntity code, String[] jydyids, String accid, String mtids, String bwids, String cgids, String ckids, String dcids, String ryids, String sssbids, String qytzids, String zxjxids) {
+	public WebJsonResult submitAudit(LhbgEntity code, String[] jydyids, String accid, String userids, String mtids, String bwids, String cgids, String ckids, String dcids, String ryids, String sssbids, String qytzids, String zxjxids) {
 		WebJsonResult wr = success();
 		LhbgEntity lhbgEntity = new LhbgEntity();
 		try {
@@ -321,9 +472,9 @@ public class LhbgCtl extends BaseWebCtl {
 			if (lhbgService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), code.getId()) != null) {
 				lhbgService.claim(code.getId(), SecUtils.getCurrUser().getId().toString());
 			}
-			lhbgService.changeAudit(null, lhbgEntity, true);
+			lhbgService.changeAudit(null, lhbgEntity, true, userids);
 			// rtx提醒
-			rtxSend("", Constants.ROLE_KS, "你有一条理货变更待办事务,请及时处理!");
+			rtxSend(userids, "", "你有一条理货变更待办事务,请及时处理!");
 		} catch (Exception e) {
 			wr.setSuccess(false);
 			wr.setMessage("操作失败!");
@@ -414,36 +565,49 @@ public class LhbgCtl extends BaseWebCtl {
 
 	@RequestMapping(value = "/audit")
 	@ResponseBody
-	public WebJsonResult audit(String shyj, String id, boolean flag) {
+	public WebJsonResult audit(String shyj, String id, boolean flag, String userids) {
 		WebJsonResult wr = success();
 		LhbgEntity entity = new LhbgEntity();
-		String role = "";
 		try {
 			entity = lhbgService.findOne(id);
-			List<TaskInfoEntity> list = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(id, LhbgEntity.PROCESS_DEFINITION_KEY);
-			if (list != null & list.size() > 0) {
-				TaskInfoEntity taskinfo = list.get(0);
-				if ("kssc".equals(taskinfo.getTaskKey())) {
-					role = Constants.ROLE_FGLD;
-				} else if ("fgldsp".equals(taskinfo.getTaskKey())) {
-					role = Constants.ROLE_LD;
-				}
-			}
-		} catch (Exception e) {
-			wr.setSuccess(false);
-			wr.setMessage("id不能为空!");
-			return wr;
-		}
-		try {
+			TaskInfoEntity info = taskInfoService.findByStep(entity.getId(), LhbgEntity.PROCESS_DEFINITION_KEY);
+
 			if (lhbgService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), id) != null) {
 				lhbgService.claim(id, SecUtils.getCurrUser().getId().toString());
 			}
-			boolean jflag = lhbgService.changeAudit(shyj, entity, flag);
+			boolean jflag = lhbgService.changeAudit(shyj, entity, flag, userids);
 			if (jflag) {
-
+				if (flag) {// 流程完成状态 2.审核通过1.退回地市
+					entity.setFlowstatus("2");
+				} else {
+					if (info != null && "sljbr".equals(info.getTaskKey())) {
+						entity.setFlowstatus("1");
+					}
+				}
+				entity.setSftb(Constants.YES);
+				entity = lhbgService.save(entity);
+				// 如果是省级审核通过或不通过后同步到市级
+				try {
+					List<LhbgfjEntity> fjlist = lhbgfjService.findByBgid(id);
+					String fjid = "";
+					if (fjlist != null && fjlist.size() > 0) {
+						for (LhbgfjEntity fj : fjlist) {
+							fjid = fjid + fj.getFjid() + ",";
+						}
+						fjid = fjid.substring(0, fjid.length() - 1);
+					}
+					String url = "/GK_OPERATION_JSJY_LHBG_ONE_PC?condition=ID=" + entity.getId()+";FJID="+fjid;
+					boolean tbflag = getTbStatus(url);
+					if (tbflag) {
+						entity.setTbzt("Y");
+						lhbgService.save(entity);
+					}
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
 			} else {
 				// rtx提醒
-				rtxSend("", role, "你有一条理货变更待办事务,请及时处理!");
+				rtxSend(userids, "", "你有一条理货变更待办事务,请及时处理!");
 			}
 			wr.setAttr("jflag", jflag);
 		} catch (Exception e) {

+ 14 - 5
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/entity/LhbgEntity.java

@@ -50,13 +50,22 @@ public class LhbgEntity extends BaseEntity<String> implements Cloneable {
 	private String yfddbr = null;
 	private String xfddbr = null;
 
-	private String gkjshyj=null;
+	private String gkjshyj = null;
 	private Date gkjshrq = null;
-	
+
 	private String jttshyj = null;
 	private Date jttshrq = null;
-	
+
 	private Date sqrq = null;
+	private String flowstatus = null;
+
+	public String getFlowstatus() {
+		return flowstatus;
+	}
+
+	public void setFlowstatus(String flowstatus) {
+		this.flowstatus = flowstatus;
+	}
 
 	@Id
 	@GenericGenerator(name = "systemUUID", strategy = "uuid")
@@ -64,7 +73,7 @@ public class LhbgEntity extends BaseEntity<String> implements Cloneable {
 	public String getId() {
 		return id;
 	}
-	
+
 	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GkEntity.class)
 	@JoinColumn(name = "szgk")
 	public GkEntity getSzgk() {
@@ -208,5 +217,5 @@ public class LhbgEntity extends BaseEntity<String> implements Cloneable {
 	public void setSqrq(Date sqrq) {
 		this.sqrq = sqrq;
 	}
-	
+
 }

+ 27 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/vo/LhbgVo.java

@@ -39,6 +39,33 @@ public class LhbgVo extends BaseVo {
 	// 审批经办人
 	private String spry = null;
 	private String taskState = null;
+	private String sftb = null;
+	private String tbzt = null;
+	private String currentname = null;
+
+	public String getSftb() {
+		return sftb;
+	}
+
+	public void setSftb(String sftb) {
+		this.sftb = sftb;
+	}
+
+	public String getTbzt() {
+		return tbzt;
+	}
+
+	public void setTbzt(String tbzt) {
+		this.tbzt = tbzt;
+	}
+
+	public String getCurrentname() {
+		return currentname;
+	}
+
+	public void setCurrentname(String currentname) {
+		this.currentname = currentname;
+	}
 
 	public Date getSqrq() {
 		return sqrq;

+ 199 - 29
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/ctl/LhsqCtl.java

@@ -30,6 +30,9 @@ import com.xt.jygl.accessory.entity.AccessoryEntity;
 import com.xt.jygl.accessory.service.AccessoryService;
 import com.xt.jygl.common.BaseWebCtl;
 import com.xt.jygl.common.Constants;
+import com.xt.jygl.common.GlobalData;
+import com.xt.jygl.ftp.Ftp;
+import com.xt.jygl.ftp.FtpUtil;
 import com.xt.jygl.gkjcxx.gq.service.GqService;
 import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.entity.GkjyrEntity;
 import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.service.GkjyrService;
@@ -43,6 +46,7 @@ import com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.vo.GdmcVo;
 import com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.vo.LhsqVo;
 import com.xt.jygl.workflow.entity.TaskInfoEntity;
 import com.xt.jygl.workflow.service.TaskInfoService;
+import com.xt.jygl.workflow.vo.TaskInfoVo;
 import com.xtframe.core.anon.auth.RequiresPermissions;
 import com.xtframe.core.base.ctl.WebJsonResult;
 import com.xtframe.sec.common.BaseEntity;
@@ -119,6 +123,12 @@ public class LhsqCtl extends BaseWebCtl {
 			if (entity != null) {
 				BeanUtils.copyProperties(entity, vo);
 				if (entity.getRecordStatus() != 9) {
+					// 获取流程最新步骤
+					TaskInfoEntity info = taskInfoService.findByStep(entity.getId(), LhsqEntity.PROCESS_DEFINITION_KEY);
+					if (info != null) {
+						vo.setCurrentname(info.getCurrName());
+					}
+
 					if ((lhsqService.getTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) || lhsqService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) {
 						List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(entity.getId(), LhsqEntity.PROCESS_DEFINITION_KEY);
 						if (lists != null & lists.size() > 0) {
@@ -129,9 +139,18 @@ public class LhsqCtl extends BaseWebCtl {
 								vo.setTaskState(Constants.IS_MY_TASK);
 							}
 						}
+					} else {
+						if ("1".equals(entity.getFlowstatus())) {
+							vo.setCurrentname("退回地市");
+						} else if ("2".equals(entity.getFlowstatus())) {
+							vo.setCurrentname("完成且数据已同步");
+						}
 					}
-					voList.add(vo);
+
+				} else if (entity.getRecordStatus() == BaseEntity.RECORD_STATE_COMPLETED) {
+					vo.setCurrentname("完成");
 				}
+				voList.add(vo);
 			}
 		}
 		model.addAttribute("lczt", lczt);
@@ -142,6 +161,12 @@ public class LhsqCtl extends BaseWebCtl {
 		model.addAttribute("menuid", menuid);
 		// 翻页共通
 		putPageInfo(model, page, list);
+		// 判断省市区别
+		if (GlobalData.DEPLOY_MODE.equals(Constants.DEPLOY_MODE_CITY)) {
+			model.addAttribute("ssFlag", "1");
+		} else {
+			model.addAttribute("ssFlag", "0");
+		}
 		return "gkjygl/gklhxkgl/gkjylhsq/lhsqmain";
 	}
 
@@ -169,10 +194,15 @@ public class LhsqCtl extends BaseWebCtl {
 		model.addAttribute("oneyear", nf);
 		nf = nf - 1;
 		model.addAttribute("twoyear", nf);
-
 		SimpleDateFormat dateTimeFormat = new SimpleDateFormat("yyyy-MM-dd");
 		Date today = new Date();
 		model.addAttribute("sqsj", dateTimeFormat.format(today));
+		// 判断省市区别
+		if (GlobalData.DEPLOY_MODE.equals(Constants.DEPLOY_MODE_CITY)) {
+			model.addAttribute("ssFlag", "1");
+		} else {
+			model.addAttribute("ssFlag", "0");
+		}
 		return "gkjygl/gklhxkgl/gkjylhsq/lhsqadd";
 	}
 
@@ -203,6 +233,15 @@ public class LhsqCtl extends BaseWebCtl {
 			}
 		}
 		model.addAttribute("gdmclist", gdmclist);
+		// 判断省市区别
+		if (GlobalData.DEPLOY_MODE.equals(Constants.DEPLOY_MODE_CITY)) {
+			model.addAttribute("ssFlag", "1");
+		} else {
+			model.addAttribute("ssFlag", "0");
+			model.addAttribute("roleCode", Constants.ROLE_KS);
+			model.addAttribute("currName", "科室审查");
+		}
+
 		return "gkjygl/gklhxkgl/gkjylhsq/lhsqedit";
 	}
 
@@ -216,7 +255,36 @@ public class LhsqCtl extends BaseWebCtl {
 		List<LhsqfjEntity> list = lhsqfjService.findBySqid(lhsq.getId());
 		if (list != null && list.size() > 0) {
 			model.addAttribute("fjlist", list);
+			for (LhsqfjEntity fj : list) {
+				AccessoryEntity acc = accessoryService.findOne(fj.getFjid());
+				if (GlobalData.DEPLOY_MODE.equals(Constants.DEPLOY_MODE_CITY)) {
+					try {
+						Ftp f = getftp();
+						// 本地目录
+						String localBaseDir = GlobalData.UPLOAD_FILE_PATH + acc.getFilepath();
+						File newfile = new File(localBaseDir);
+						// 如果文件夹不存在则创建
+						if (!newfile.exists() && !newfile.isDirectory()) {
+							newfile.mkdirs();
+						}
+						// 远程目录
+						String remoteBaseDir = acc.getFilepath();
+						// 下载ftp文件
+						boolean downflag = FtpUtil.startDown(f, localBaseDir, remoteBaseDir, acc.getFilename());
+						if (downflag) {
+							System.out.println("ok");
+							acc.setFjbz("1");
+							accessoryService.save(acc);
+						}
+
+					} catch (Exception e) {
+						e.printStackTrace();
+					}
+				}
+
+			}
 		}
+
 		List<GdmcVo> gdmclist = new ArrayList<GdmcVo>();
 
 		if (!StringUtils.isEmpty(lhsq.getGdmc())) {
@@ -232,6 +300,61 @@ public class LhsqCtl extends BaseWebCtl {
 			}
 		}
 		model.addAttribute("gdmclist", gdmclist);
+
+		String roleCode = "";
+		String currName = "";
+		TaskInfoEntity taskinfo = taskInfoService.findByStep(id, LhsqEntity.PROCESS_DEFINITION_KEY);
+		if (taskinfo != null) {
+			if ("kssc".equals(taskinfo.getTaskKey())) {
+				roleCode = Constants.ROLE_FGLD;
+				currName = "分管领导审批";
+			} else if ("fgldsp".equals(taskinfo.getTaskKey())) {
+				roleCode = Constants.ROLE_LD;
+				currName = "领导批准";
+			} else if ("ldpz".equals(taskinfo.getTaskKey())) {
+				roleCode = Constants.YES;
+			}
+			model.addAttribute("taskKey", taskinfo.getTaskKey());
+		}
+
+		model.addAttribute("currName", currName);
+		model.addAttribute("roleCode", roleCode);
+
+		List<TaskInfoEntity> slist = taskInfoService.findByBusIdAndBusKeyOrderByIdAsc(id, LhsqEntity.PROCESS_DEFINITION_KEY);
+		List<TaskInfoVo> volist = new ArrayList<TaskInfoVo>();
+		for (int i = 0; i < slist.size(); i++) {
+			TaskInfoEntity taskentity = slist.get(i);
+			TaskInfoVo opvo = new TaskInfoVo();
+			opvo.setCurrName(taskentity.getCurrName());
+			opvo.setTaskKey(taskentity.getTaskKey());
+			opvo.setState(taskentity.getState());
+			SimpleDateFormat formatter = new SimpleDateFormat("yyyy-MM-dd");
+			String opStr = "";
+			int voflag = 0;
+			for (int j = 0; j < volist.size(); j++) {
+				TaskInfoVo taskvo = volist.get(j);
+				if (taskvo.getTaskKey().equals(taskentity.getTaskKey())) {
+					if ("2".equals(taskvo.getState())) {
+						opStr += taskvo.getYj();
+					}
+					voflag = j;
+					break;
+				}
+			}
+			if ("2".equals(taskentity.getState())) {
+				opStr += "<div  style = 'float:left;width:100%;text-align: left;'>" + taskentity.getAuditMsg() + "</div><div style = 'float:left;width:100%;text-align: right;'>" + taskentity.getAuditUsername() + "<br/>" + formatter.format(taskentity.getAuditTime()) + "</div>";
+				opvo.setYj(opStr);
+			} else {
+				opStr += "<div id='" + taskentity.getTaskKey() + "' style = 'float:left;width:100%;text-align: left;'>" + "</div><div style = 'float:left;width:100%;text-align: right;'>" + securityMgr.getCurrUser().getName() + "<br/>" + formatter.format(new Date()) + "</div>";
+				opvo.setYj(opStr);
+			}
+			if (voflag > 0) {
+				volist.remove(voflag);
+			}
+			volist.add(opvo);
+		}
+		model.addAttribute("list", volist);
+
 		return "gkjygl/gklhxkgl/gkjylhsq/lhsqview";
 	}
 
@@ -265,6 +388,7 @@ public class LhsqCtl extends BaseWebCtl {
 				lhsqEntity.setLhll(code.getLhll());
 				lhsqEntity.setLxl(code.getLxl());
 				lhsqEntity.setLxll(code.getLxll());
+				lhsqEntity.setSftb(Constants.NO);
 				lhsqEntity = lhsqService.save(lhsqEntity);
 			} else {
 				code.setId(null);
@@ -275,6 +399,7 @@ public class LhsqCtl extends BaseWebCtl {
 					code.setSzgq(jyr.getSzgq());
 					code.setSzd(jyr.getSzd());
 				}
+				code.setSftb(Constants.NO);
 				lhsqEntity = lhsqService.save(code);
 			}
 			if (!StringUtils.isEmpty(accid)) {
@@ -375,15 +500,46 @@ public class LhsqCtl extends BaseWebCtl {
 		return wr;
 	}
 
+	@RequestMapping(value = "/saveTbzt")
+	@ResponseBody
+	public WebJsonResult saveTbzt(Model model, String id) {
+		WebJsonResult wr = success();
+		LhsqEntity entity = lhsqService.findOne(id);
+		List<LhsqfjEntity> fjlist = lhsqfjService.findBySqid(id);
+		String fjid = "";
+		if (fjlist != null && fjlist.size() > 0) {
+			for (LhsqfjEntity fj : fjlist) {
+				fjid = fjid + fj.getFjid() + ",";
+			}
+			fjid = fjid.substring(0, fjid.length() - 1);
+		}
+
+		entity.setSftb(Constants.YES);
+		lhsqService.save(entity);
+		String url = "/GK_OPERATION_JSJY_LHSQ_ONE_CP?condition=ID=" + id + ";FJID=" + fjid;
+
+		boolean flag = getTbStatus(url);
+		if (flag) {
+			entity.setFlowstatus("0");
+			entity.setTbzt(Constants.YES);
+			lhsqService.save(entity);
+		} else {
+			wr.setSuccess(false);
+			wr.setMessage("提交失败");
+		}
+		return wr;
+	}
+
 	// 保存
 	@RequestMapping(value = "/submit")
 	@ResponseBody
-	public WebJsonResult submit(Model model, LhsqEntity code, String accid) {
+	public WebJsonResult submit(Model model, LhsqEntity code, String accid, String userids) {
 		WebJsonResult wr = success();
 
 		LhsqEntity lhsqEntity = new LhsqEntity();
 		try {
 			if (!StringUtils.isEmpty(code.getId())) {
+				lhsqEntity = lhsqService.findOne(code.getId());
 				lhsqEntity.setSqr(code.getSqr());
 				lhsqEntity.setSqnr(code.getSqnr());
 				lhsqEntity.setSqrdz(code.getSqrdz());
@@ -405,7 +561,7 @@ public class LhsqCtl extends BaseWebCtl {
 				lhsqEntity.setLhll(code.getLhll());
 				lhsqEntity.setLxl(code.getLxl());
 				lhsqEntity.setLxll(code.getLxll());
-				lhsqEntity = lhsqService.submit(lhsqEntity);
+				lhsqEntity = lhsqService.submit(lhsqEntity, userids);
 			} else {
 				GkjyrEntity jyr = gkjyrService.findOne(code.getJyrid());
 				if (jyr != null) {
@@ -413,7 +569,7 @@ public class LhsqCtl extends BaseWebCtl {
 					code.setSzgq(jyr.getSzgq());
 					code.setSzd(jyr.getSzd());
 				}
-				lhsqEntity = lhsqService.submit(code);
+				lhsqEntity = lhsqService.submit(code, userids);
 			}
 			if (!StringUtils.isEmpty(accid)) {
 				// 关联附件
@@ -427,7 +583,7 @@ public class LhsqCtl extends BaseWebCtl {
 				}
 			}
 			// rtx提醒
-			rtxSend("", Constants.ROLE_KS, "你有一条理货申请待办事务,请及时处理!");
+			rtxSend(userids, "", "你有一条理货申请待办事务,请及时处理!");
 		} catch (Exception e) {
 			wr.setSuccess(false);
 			wr.setMessage("操作失败!");
@@ -438,7 +594,7 @@ public class LhsqCtl extends BaseWebCtl {
 
 	@RequestMapping(value = "/submitAudit")
 	@ResponseBody
-	public WebJsonResult submitAudit(LhsqEntity code, String accid) {
+	public WebJsonResult submitAudit(LhsqEntity code, String accid, String userids) {
 		WebJsonResult wr = success();
 		LhsqEntity lhsqEntity = new LhsqEntity();
 		try {
@@ -476,9 +632,9 @@ public class LhsqCtl extends BaseWebCtl {
 			if (lhsqService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), code.getId()) != null) {
 				lhsqService.claim(code.getId(), SecUtils.getCurrUser().getId().toString());
 			}
-			lhsqService.changeAudit(null, lhsqEntity, true);
+			lhsqService.changeAudit(null, lhsqEntity, true, userids);
 			// rtx提醒
-			rtxSend("", Constants.ROLE_KS, "你有一条理货申请待办事务,请及时处理!");
+			rtxSend(userids, "", "你有一条理货申请待办事务,请及时处理!");
 		} catch (Exception e) {
 			wr.setSuccess(false);
 			wr.setMessage("操作失败!");
@@ -489,36 +645,50 @@ public class LhsqCtl extends BaseWebCtl {
 
 	@RequestMapping(value = "/audit")
 	@ResponseBody
-	public WebJsonResult audit(String shyj, String id, boolean flag) {
+	public WebJsonResult audit(String shyj, String id, boolean flag, String userids) {
 		WebJsonResult wr = success();
 		LhsqEntity entity = new LhsqEntity();
-		String role = "";
 		try {
 			entity = lhsqService.findOne(id);
-			List<TaskInfoEntity> list = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(id, LhsqEntity.PROCESS_DEFINITION_KEY);
-			if (list != null & list.size() > 0) {
-				TaskInfoEntity taskinfo = list.get(0);
-				if ("kssc".equals(taskinfo.getTaskKey())) {
-					role = Constants.ROLE_FGLD;
-				} else if ("fgldsp".equals(taskinfo.getTaskKey())) {
-					role = Constants.ROLE_LD;
-				}
-			}
-		} catch (Exception e) {
-			wr.setSuccess(false);
-			wr.setMessage("id不能为空!");
-			return wr;
-		}
-		try {
+			TaskInfoEntity info = taskInfoService.findByStep(entity.getId(), LhsqEntity.PROCESS_DEFINITION_KEY);
+
 			if (lhsqService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), id) != null) {
 				lhsqService.claim(id, SecUtils.getCurrUser().getId().toString());
 			}
-			boolean jflag = lhsqService.changeAudit(shyj, entity, flag);
+			boolean jflag = lhsqService.changeAudit(shyj, entity, flag, userids);
 			if (jflag) {
-
+				if (flag) {// 流程完成状态 2.审核通过1.退回地市
+					entity.setFlowstatus("2");
+				} else {
+					if (info != null && "sljbr".equals(info.getTaskKey())) {
+						entity.setFlowstatus("1");
+					}
+				}
+				entity.setSftb(Constants.YES);
+				entity = lhsqService.save(entity);
+				// 如果是省级审核通过或不通过后同步到市级
+				try {
+					List<LhsqfjEntity> fjlist = lhsqfjService.findBySqid(id);
+					String fjid = "";
+					if (fjlist != null && fjlist.size() > 0) {
+						for (LhsqfjEntity fj : fjlist) {
+							fjid = fjid + fj.getFjid() + ",";
+						}
+						fjid = fjid.substring(0, fjid.length() - 1);
+					}
+					
+					String url = "/GK_OPERATION_JSJY_LHSQ_ONE_PC?condition=ID=" + entity.getId()+";FJID="+fjid;
+					boolean tbflag = getTbStatus(url);
+					if (tbflag) {
+						entity.setTbzt("Y");
+						lhsqService.save(entity);
+					}
+				} catch (Exception e) {
+					e.printStackTrace();
+				}
 			} else {
 				// rtx提醒
-				rtxSend("", role, "你有一条理货申请待办事务,请及时处理!");
+				rtxSend(userids, "", "你有一条理货申请待办事务,请及时处理!");
 			}
 			wr.setAttr("jflag", jflag);
 		} catch (Exception e) {

+ 11 - 2
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/entity/LhsqEntity.java

@@ -82,8 +82,17 @@ public class LhsqEntity extends BaseEntity<String> implements Cloneable {
 	private String lxll = null;
 	private String oneyear = null;
 	private String twoyear = null;
-	private String sqrqz=null;
-	
+	private String sqrqz = null;
+	private String flowstatus = null;
+
+	public String getFlowstatus() {
+		return flowstatus;
+	}
+
+	public void setFlowstatus(String flowstatus) {
+		this.flowstatus = flowstatus;
+	}
+
 	public String getSqrqz() {
 		return sqrqz;
 	}