Pārlūkot izejas kodu

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

ld_xuhx 9 gadi atpakaļ
vecāks
revīzija
2a4f870152
29 mainītis faili ar 2583 papildinājumiem un 201 dzēšanām
  1. 0 21
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/dao/LhxkglDao.java
  2. 504 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/ctl/LhbgCtl.java
  3. 14 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/dao/LhbgDao.java
  4. 14 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/dao/LhbgfjDao.java
  5. 212 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/entity/LhbgEntity.java
  6. 61 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/entity/LhbgfjEntity.java
  7. 22 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/service/LhbgService.java
  8. 17 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/service/LhbgfjService.java
  9. 108 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/service/impl/LhbgServiceImpl.java
  10. 30 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/service/impl/LhbgfjServiceImpl.java
  11. 203 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/vo/LhbgVo.java
  12. 73 106
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/ctl/LhsqCtl.java
  13. 20 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/dao/LhsqDao.java
  14. 2 2
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/entity/LhsqEntity.java
  15. 19 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/service/LhsqService.java
  16. 50 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/service/impl/LhsqServiceImpl.java
  17. 2 2
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/vo/LhsqVo.java
  18. 491 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/ctl/LhyxCtl.java
  19. 14 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/dao/LhyxDao.java
  20. 14 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/dao/LhyxfjDao.java
  21. 266 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/entity/LhyxEntity.java
  22. 60 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/entity/LhyxfjEntity.java
  23. 22 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/service/LhyxService.java
  24. 17 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/service/LhyxfjService.java
  25. 108 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/service/impl/LhyxServiceImpl.java
  26. 30 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/service/impl/LhyxfjServiceImpl.java
  27. 210 0
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/vo/LhyxVo.java
  28. 0 20
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/service/LhxkglService.java
  29. 0 50
      gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/service/impl/LhxkglServiceImpl.java

+ 0 - 21
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/dao/LhxkglDao.java

@@ -1,21 +0,0 @@
-package com.xt.jygl.gkjygl.gklhxkgl.dao;
-
-import java.util.List;
-
-import org.springframework.data.jpa.repository.Query;
-
-
-import com.xt.jygl.gkjygl.gklhxkgl.entity.LhxkglEntity;
-import com.xtframe.sec.common.SecRepository;
-
-public interface LhxkglDao extends SecRepository<LhxkglEntity, String> {
-
-	@Query("SELECT m  FROM LhxkglEntity m WHERE  m.jyrid =?1 and m.recordStatus=2  order by m.updateDateTime desc")
-	public List<LhxkglEntity> findByJyrid(String jyrid);
-	
-	@Query("SELECT m  FROM LhxkglEntity m WHERE  m.id =?1 and m.recordStatus<>9")
-	public LhxkglEntity findById(String id);
-	
-	
-
-}

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

@@ -0,0 +1,504 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.ctl;
+
+import java.io.File;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.activiti.engine.ActivitiException;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+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.gkjcxx.gk.service.GkService;
+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;
+import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.service.XzjydyService;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.entity.LhbgEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.entity.LhbgfjEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.service.LhbgService;
+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.xtframe.core.anon.auth.RequiresPermissions;
+import com.xtframe.core.base.ctl.WebJsonResult;
+import com.xtframe.sec.common.BaseEntity;
+import com.xtframe.sec.common.QueryService;
+import com.xtframe.sec.common.SimplePageRequest;
+import com.xtframe.sec.user.entity.UserEntity;
+import com.xtframe.sec.utils.SecUtils;
+import com.xtframe.util.StringUtils;
+
+/**
+ * 理货管理Controller
+ * 
+ * @author xuhx
+ *
+ */
+@Controller
+@RequestMapping("/lhbg")
+public class LhbgCtl extends BaseWebCtl {
+	@Autowired
+	private QueryService query;
+	@Autowired
+	private LhbgService lhbgService;
+	@Autowired
+	private GkjyrService gkjyrService;
+	@Autowired
+	private XzjydyService xzjydyService;
+	@Autowired
+	private TaskInfoService taskInfoService;
+	@Autowired
+	private GkService gkService;
+	@Autowired
+	private GqService gqService;
+	@Autowired
+	private LhbgfjService lhbgfjService;
+	@Autowired
+	private AccessoryService accessoryService;
+
+	@RequestMapping(value = "/main")
+	public String main(SimplePageRequest page, Model model, final String lczt, final String szdid, final String szgkid, final String szgqid, final String gkjyr, final String fddbr, final String bgdd, String menuid) throws JsonProcessingException {
+		UserEntity user = securityMgr.getCurrUser();
+		GkjyrEntity jyr = new GkjyrEntity();
+		if (!StringUtils.isEmpty(user.getSsjyr())) {
+			jyr = user.getSsjyr();
+			model.addAttribute("jyr", jyr);
+		}
+		model.addAttribute("user", user);
+
+		// 查询条件
+		Specification<LhbgEntity> spec = new Specification<LhbgEntity>() {
+			@Override
+			public Predicate toPredicate(Root<LhbgEntity> 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(gkjyr)) {
+					list.add(cb.like(root.get("jyrmc").as(String.class), "%" + gkjyr + "%"));
+				}
+				if (StringUtils.isNotEmpty(fddbr)) {
+					list.add(cb.like(root.get("fddbr").as(String.class), "%" + fddbr + "%"));
+				}
+				if (StringUtils.isNotEmpty(bgdd)) {
+					list.add(cb.like(root.get("bgdd").as(String.class), "%" + bgdd + "%"));
+				}
+
+				list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORD_STATE_DELETE));
+				// 经营人只能查看自己企业下的数据,非经营人只能查看自己所在地的数据
+				/*
+				 * if (!isJyr()) { //
+				 * list.add(cb.like(root.get("szd").get("id").as(String.class),
+				 * // "%" + SecUtils.getCurrUser().getSzd().getId() + "%"));
+				 * 
+				 * In<String> in =
+				 * cb.in(root.get("szgq").get("id").as(String.class));
+				 * List<String> gqlist = (List<String>)
+				 * Utils.getSession().getAttribute("gqList"); if (gqlist != null
+				 * && gqlist.size() > 0) { for (int i = 0; i < gqlist.size();
+				 * i++) { in.value(gqlist.get(i)); } list.add(in); }
+				 * 
+				 * } else { Subquery<GkjyrEntity> subquery =
+				 * query.subquery(GkjyrEntity.class); Root<GkjyrEntity> dpRoot =
+				 * subquery.from(GkjyrEntity.class); subquery.select(dpRoot);
+				 * List<Predicate> subQueryPredicates = new
+				 * ArrayList<Predicate>();
+				 * subQueryPredicates.add(cb.equal(root.get
+				 * ("jyrid").as(String.class),
+				 * dpRoot.get("id").as(String.class)));
+				 * subQueryPredicates.add(cb
+				 * .equal(dpRoot.get("yjyrid").as(String.class),
+				 * getSsjyr().getId()));
+				 * subquery.where(subQueryPredicates.toArray(new Predicate[]
+				 * {})); list.add(cb.exists(subquery)); }
+				 */
+
+				return cb.and(list.toArray(new Predicate[] {}));
+			}
+		};
+		Page<LhbgEntity> list = query.findAll(spec, toPageRequest(page), LhbgEntity.class);
+		List<LhbgVo> voList = new ArrayList<LhbgVo>();
+		for (LhbgEntity entity : list) {
+			LhbgVo vo = new LhbgVo();
+			if (entity != null) {
+				BeanUtils.copyProperties(entity, vo);
+				if (entity.getRecordStatus() != 9) {
+					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) {
+							TaskInfoEntity taskinfo = lists.get(0);
+							if ("申请".equals(taskinfo.getCurrName())) {
+								vo.setTaskState("TH");
+							} else {
+								vo.setTaskState(Constants.IS_MY_TASK);
+							}
+						}
+					}
+					voList.add(vo);
+				}
+			}
+		}
+		model.addAttribute("lczt", lczt);
+		model.addAttribute("gkjyr", gkjyr);
+		model.addAttribute("fddbr", fddbr);
+		model.addAttribute("bgdd", bgdd);
+		model.addAttribute("list", voList);
+		model.addAttribute("menuid", menuid);
+		// 翻页共通
+		putPageInfo(model, page, list);
+		return "gkjygl/gklhxkgl/gkjylhbg/lhbgmain";
+	}
+
+	// 时间格式化
+	private String transFormatDate(Date d) {
+		if (d == null) {
+			return "";
+		}
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+		return sdf.format(d);
+	}
+
+	// 新增
+	@RequestMapping(value = "/add")
+	public String add(Model model) {
+		UserEntity user = securityMgr.getCurrUser();
+		GkjyrEntity jyr = new GkjyrEntity();
+		if (user.getSsjyr() != null) {
+			jyr = gkjyrService.findOne(user.getSsjyr().getId());
+		}
+		model.addAttribute("gkjyr", jyr);
+		model.addAttribute("sqr", user.getName());
+		SimpleDateFormat dateTimeFormat = new SimpleDateFormat("yyyy-MM-dd");
+		Date today = new Date();
+		model.addAttribute("sqsj", dateTimeFormat.format(today));
+
+		return "gkjygl/gklhxkgl/gkjylhbg/lhbgadd";
+	}
+
+	// 新增
+	@RequestMapping(value = "/view")
+	public String view(Model model, String id, String flag, String opflag) {
+		model.addAttribute("flag", flag);
+		LhbgEntity lhbg = lhbgService.findOne(id);
+
+		List<LhbgfjEntity> list = lhbgfjService.findByBgid(lhbg.getId());
+		if (list != null && list.size() > 0) {
+			model.addAttribute("fjlist", list);
+		}
+		model.addAttribute("record", lhbg);
+		return "gkjygl/gklhxkgl/gkjylhbg/lhbgview";
+	}
+
+	// 新增
+	@RequestMapping(value = "/edit")
+	public String edit(Model model, String id, String flag) {
+		model.addAttribute("flag", flag);
+		LhbgEntity lhbg = lhbgService.findOne(id);
+		model.addAttribute("record", lhbg);
+		
+		List<LhbgfjEntity> list = lhbgfjService.findByBgid(lhbg.getId());
+		if (list != null && list.size() > 0) {
+			model.addAttribute("fjlist", list);
+		}
+		return "gkjygl/gklhxkgl/gkjylhbg/lhbgedit";
+	}
+
+	// 保存
+	@RequestMapping(value = "/save")
+	@ResponseBody
+	public WebJsonResult save(Model model, LhbgEntity code, String accid) {
+		WebJsonResult wr = success();
+		LhbgEntity lhbgEntity = new LhbgEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				lhbgEntity = lhbgService.findOne(code.getId());
+				lhbgEntity.setLxr(code.getLxr());
+				lhbgEntity.setDh(code.getDh());
+				lhbgEntity.setCz(code.getCz());
+				lhbgEntity.setXbgdz(code.getXbgdz());
+				lhbgEntity.setXfddbr(code.getXfddbr());
+				lhbgEntity = lhbgService.save(lhbgEntity);
+			} else {
+				code.setId(null);
+				code.setSqrq(new Date());
+				lhbgEntity.setYbgdz(code.getYbgdz());
+				lhbgEntity.setYfddbr(code.getYfddbr());
+				lhbgEntity.setXbgdz(code.getXbgdz());
+				lhbgEntity.setXfddbr(code.getXfddbr());
+				GkjyrEntity jyr = gkjyrService.findOne(code.getJyrid());
+				if (jyr != null) {
+					code.setSzgk(jyr.getSzgk());
+					code.setSzgq(jyr.getSzgq());
+					code.setSzd(jyr.getSzd());
+				}
+				lhbgEntity = lhbgService.save(code);
+			}
+			if (!StringUtils.isEmpty(accid)) {
+				// 关联附件
+				String[] ssids = accid.split(",");
+				for (String ssid : ssids) {
+					LhbgfjEntity fj = lhbgfjService.findOne(ssid);
+					if (fj != null) {
+						fj.setBgid(lhbgEntity.getId());
+						lhbgfjService.save(fj);
+					}
+				}
+			}
+
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	// 保存
+	@RequestMapping(value = "/submit")
+	@ResponseBody
+	public WebJsonResult submit(Model model, LhbgEntity code, String accid) {
+		WebJsonResult wr = success();
+
+		LhbgEntity lhbgEntity = new LhbgEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				lhbgEntity = lhbgService.findOne(code.getId());
+				lhbgEntity.setXbgdz(code.getXbgdz());
+				lhbgEntity.setXfddbr(code.getXfddbr());
+
+				lhbgEntity = lhbgService.submit(lhbgEntity);
+			} else {
+
+				GkjyrEntity jyr = gkjyrService.findOne(code.getJyrid());
+				if (jyr != null) {
+					code.setSzgk(jyr.getSzgk());
+					code.setSzgq(jyr.getSzgq());
+
+					code.setSzd(jyr.getSzd());
+				}
+				lhbgEntity = lhbgService.submit(code);
+			}
+			if (!StringUtils.isEmpty(accid)) {
+				// 关联附件
+				String[] ssids = accid.split(",");
+				for (String ssid : ssids) {
+					LhbgfjEntity fj = lhbgfjService.findOne(ssid);
+					if (fj != null) {
+						fj.setBgid(lhbgEntity.getId());
+						lhbgfjService.save(fj);
+					}
+				}
+			}
+			// rtx提醒
+			// rtxSend(lhbgEntity.getSzgq().getId(), Constants.ROLE_CLSC,
+			// "你有一条许可证变更待办事务,请及时处理!");
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@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) {
+		WebJsonResult wr = success();
+		LhbgEntity lhbgEntity = new LhbgEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				lhbgEntity = lhbgService.findOne(code.getId());
+				lhbgEntity.setXbgdz(code.getXbgdz());
+				lhbgEntity.setXfddbr(code.getXfddbr());
+				lhbgEntity = lhbgService.save(lhbgEntity);
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		try {
+			if (lhbgService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), code.getId()) != null) {
+				lhbgService.claim(code.getId(), SecUtils.getCurrUser().getId().toString());
+			}
+			lhbgService.changeAudit(null, lhbgEntity, true);
+			// rtx提醒
+			// rtxSend(lhbgEntity.getSzgq().getId(), Constants.ROLE_CLSC,
+			// "你有一条许可证变更待办事务,请及时处理!");
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	// 删除
+	@RequestMapping(value = "/delete")
+	@ResponseBody
+	@RequiresPermissions("gkjyxkbg:delete")
+	public WebJsonResult logicdelete(Model model, String id) {
+		WebJsonResult wr = success();
+		try {
+			// 逻辑删除
+			lhbgService.logicDelete(id);
+			LhbgEntity entity = lhbgService.findOne(id);
+			GkjyrEntity gkjyr = gkjyrService.findOne(entity.getJyrid());
+			gkjyr.setRecordStatus(BaseEntity.RECORD_STATE_VALID);
+			gkjyrService.save(gkjyr);
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	// 保存附件
+	@RequestMapping(value = "/saveFile")
+	@ResponseBody
+	public WebJsonResult saveFile(@RequestParam("file") List<MultipartFile> file, String sfbx, Model model, HttpServletRequest request, HttpServletResponse response) {
+		WebJsonResult wr = success();
+		if (file != null && file.size() > 0) {
+			LhbgfjEntity fjEntity = new LhbgfjEntity();
+			for (int i = 0; i < file.size(); i++) {
+				MultipartFile f = file.get(i);
+				if (f.getSize() > 0) {
+					AccessoryEntity acc = accessoryService.saveFile(f, "lhbg");
+					if (acc != null) {
+						fjEntity.setFjid(acc.getId());
+						fjEntity.setFjmc(acc.getName());
+						fjEntity = lhbgfjService.save(fjEntity);
+						break;
+					}
+				}
+			}
+			wr.setAttr("acc", fjEntity);
+		} else {
+			wr.setSuccess(false);
+			wr.setMessage("请上传附件!");
+		}
+		return wr;
+	}
+
+	/**
+	 * 删除附件
+	 * 
+	 * @param model
+	 * @param id
+	 * @return
+	 */
+	@RequestMapping(value = "/delFj")
+	@ResponseBody
+	public WebJsonResult delFj(String[] ids) {
+		WebJsonResult wr = success();
+		try {
+			for (String id : ids) {
+				LhbgfjEntity entity = lhbgfjService.findOne(id);
+				if (entity != null) {
+					AccessoryEntity acc = accessoryService.findOne(entity.getFjid());
+					if (acc != null) {
+						accessoryService.delete(acc);
+						if (entity != null) {
+							String path = acc.getFilepath() + acc.getFilename();
+							File file = new File(path);
+							if (file.isFile() && file.exists()) {
+								file.delete();
+							}
+						}
+					}
+					lhbgfjService.delete(entity);
+				}
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/audit")
+	@ResponseBody
+	public WebJsonResult audit(String shyj, String id, boolean flag) {
+		WebJsonResult wr = success();
+		UserEntity user = securityMgr.getCurrUser();
+		LhbgEntity entity = new LhbgEntity();
+		String role = "";
+		try {
+			entity = lhbgService.findOne(id);
+			Date today = new Date();
+			List<TaskInfoEntity> list = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(id, LhbgEntity.PROCESS_DEFINITION_KEY);
+			if (list != null & list.size() > 0) {
+				TaskInfoEntity taskinfo = list.get(0);
+
+				lhbgService.save(entity);
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("id不能为空!");
+			return wr;
+		}
+		try {
+			if (lhbgService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), id) != null) {
+				lhbgService.claim(id, SecUtils.getCurrUser().getId().toString());
+			}
+			boolean jflag = lhbgService.changeAudit(shyj, entity, flag);
+			if (jflag) {
+
+			} else {
+				// rtx提醒
+				// rtxSend(entity.getSzgq().getId(), role,
+				// "你有一条许可证变更待办事务,请及时处理!");
+			}
+			wr.setAttr("jflag", jflag);
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	/**
+	 * 签收
+	 * 
+	 * @param entity
+	 * @return
+	 */
+	public void claim(LhbgEntity entity) {
+		try {
+			lhbgService.claim(entity.getId().toString(), SecUtils.getCurrUser().getId().toString());
+		} catch (ActivitiException e) {
+			e.printStackTrace();
+		}
+	}
+
+}

+ 14 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/dao/LhbgDao.java

@@ -0,0 +1,14 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.dao;
+
+import java.util.List;
+
+import org.springframework.data.jpa.repository.Query;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.entity.LhbgEntity;
+import com.xtframe.sec.common.SecRepository;
+
+public interface LhbgDao extends SecRepository<LhbgEntity, String> {
+
+	@Query("SELECT m  FROM LhbgEntity m WHERE  m.jyrid =?1 and m.recordStatus=2  order by m.updateDateTime desc")
+	public List<LhbgEntity> findByJyrid(String jyrid);
+}

+ 14 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/dao/LhbgfjDao.java

@@ -0,0 +1,14 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.dao;
+
+import java.util.List;
+
+import org.springframework.data.jpa.repository.Query;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.entity.LhbgfjEntity;
+import com.xtframe.sec.common.SecRepository;
+
+public interface LhbgfjDao extends SecRepository<LhbgfjEntity, String> {
+
+	@Query("SELECT m  FROM LhbgfjEntity m WHERE  m.bgid =?1 and m.recordStatus <> 9 ")
+	public List<LhbgfjEntity> findByBgid(String bgid);
+}

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

@@ -0,0 +1,212 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.entity;
+
+import java.util.Date;
+
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.GenericGenerator;
+
+import com.xt.jygl.gkjcxx.gk.entity.GkEntity;
+import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
+import com.xtframe.sec.common.BaseEntity;
+
+@Entity
+@Table(name = "GK_OPERATION_JSJY_LHBG")
+public class LhbgEntity extends BaseEntity<String> implements Cloneable {
+	/**
+	 * serialVersionUID
+	 */
+	private static final long serialVersionUID = -3349844058062323896L;
+
+	public static final String PROCESS_DEFINITION_KEY = "lhbg";
+
+	private String id = null;
+	// 经营人ID
+	private String jyrid = null;
+	// 经营人名称
+	private String jyrmc = null;
+
+	private GkEntity szgk = null;
+
+	private GqEntity szgq = null;
+	// 许可证编号
+	private String xkzbh = null;
+	// 联系人
+	private String lxr = null;
+	// 电话
+	private String dh = null;
+	// 电话传真
+	private String cz = null;
+
+	private String ybgdz = null;
+	private String xbgdz = null;
+
+	private String yfddbr = null;
+	private String xfddbr = null;
+
+	private String gkjshyj=null;
+	private Date gkjshrq = null;
+	
+	private String jttshyj = null;
+	private Date jttshrq = null;
+	
+	private Date sqrq = null;
+
+	@Id
+	@GenericGenerator(name = "systemUUID", strategy = "uuid")
+	@GeneratedValue(generator = "systemUUID")
+	public String getId() {
+		return id;
+	}
+	
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GkEntity.class)
+	@JoinColumn(name = "szgk")
+	public GkEntity getSzgk() {
+		return szgk;
+	}
+
+	public void setSzgk(GkEntity szgk) {
+		this.szgk = szgk;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GqEntity.class)
+	@JoinColumn(name = "szgq")
+	public GqEntity getSzgq() {
+		return szgq;
+	}
+
+	public String getJyrid() {
+		return jyrid;
+	}
+
+	public void setJyrid(String jyrid) {
+		this.jyrid = jyrid;
+	}
+
+	public String getJyrmc() {
+		return jyrmc;
+	}
+
+	public void setJyrmc(String jyrmc) {
+		this.jyrmc = jyrmc;
+	}
+
+	public String getXkzbh() {
+		return xkzbh;
+	}
+
+	public void setXkzbh(String xkzbh) {
+		this.xkzbh = xkzbh;
+	}
+
+	public String getLxr() {
+		return lxr;
+	}
+
+	public void setLxr(String lxr) {
+		this.lxr = lxr;
+	}
+
+	public String getDh() {
+		return dh;
+	}
+
+	public void setDh(String dh) {
+		this.dh = dh;
+	}
+
+	public String getCz() {
+		return cz;
+	}
+
+	public void setCz(String cz) {
+		this.cz = cz;
+	}
+
+	public String getYbgdz() {
+		return ybgdz;
+	}
+
+	public void setYbgdz(String ybgdz) {
+		this.ybgdz = ybgdz;
+	}
+
+	public String getXbgdz() {
+		return xbgdz;
+	}
+
+	public void setXbgdz(String xbgdz) {
+		this.xbgdz = xbgdz;
+	}
+
+	public String getYfddbr() {
+		return yfddbr;
+	}
+
+	public void setYfddbr(String yfddbr) {
+		this.yfddbr = yfddbr;
+	}
+
+	public String getXfddbr() {
+		return xfddbr;
+	}
+
+	public void setXfddbr(String xfddbr) {
+		this.xfddbr = xfddbr;
+	}
+
+	public String getGkjshyj() {
+		return gkjshyj;
+	}
+
+	public void setGkjshyj(String gkjshyj) {
+		this.gkjshyj = gkjshyj;
+	}
+
+	public Date getGkjshrq() {
+		return gkjshrq;
+	}
+
+	public void setGkjshrq(Date gkjshrq) {
+		this.gkjshrq = gkjshrq;
+	}
+
+	public String getJttshyj() {
+		return jttshyj;
+	}
+
+	public void setJttshyj(String jttshyj) {
+		this.jttshyj = jttshyj;
+	}
+
+	public Date getJttshrq() {
+		return jttshrq;
+	}
+
+	public void setJttshrq(Date jttshrq) {
+		this.jttshrq = jttshrq;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public void setSzgq(GqEntity szgq) {
+		this.szgq = szgq;
+	}
+
+	public Date getSqrq() {
+		return sqrq;
+	}
+
+	public void setSqrq(Date sqrq) {
+		this.sqrq = sqrq;
+	}
+	
+}

+ 61 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/entity/LhbgfjEntity.java

@@ -0,0 +1,61 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.entity;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.GenericGenerator;
+
+import com.xtframe.sec.common.BaseEntity;
+
+@Entity
+@Table(name = "GK_OPERATION_JSJY_LHBGFJ")
+public class LhbgfjEntity extends BaseEntity<String> implements Cloneable {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private String id = null;
+	private String bgid = null;
+	private String fjid = null;
+	private String fjmc = null;
+
+	@Id
+	@GenericGenerator(name = "systemUUID", strategy = "uuid")
+	@GeneratedValue(generator = "systemUUID")
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	
+	public String getBgid() {
+		return bgid;
+	}
+
+	public void setBgid(String bgid) {
+		this.bgid = bgid;
+	}
+
+	public String getFjid() {
+		return fjid;
+	}
+
+	public void setFjid(String fjid) {
+		this.fjid = fjid;
+	}
+
+	public String getFjmc() {
+		return fjmc;
+	}
+
+	public void setFjmc(String fjmc) {
+		this.fjmc = fjmc;
+	}
+
+}

+ 22 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/service/LhbgService.java

@@ -0,0 +1,22 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.service;
+
+import java.util.List;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.entity.LhbgEntity;
+import com.xt.jygl.workflow.service.BaseWorkFlowService;
+
+
+
+public interface LhbgService extends BaseWorkFlowService{
+	void logicDelete(String id);
+
+	public <S extends LhbgEntity> S save(S entity);
+	
+	public <S extends LhbgEntity> S submit(S entity);
+
+	LhbgEntity findOne(String id);
+	
+	public boolean changeAudit(String shyj,  LhbgEntity entity,
+			boolean flag);
+	List<LhbgEntity> findByJyrid(String jyrid);
+}

+ 17 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/service/LhbgfjService.java

@@ -0,0 +1,17 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.service;
+
+import java.util.List;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.entity.LhbgfjEntity;
+
+public interface LhbgfjService {
+	void logicDelete(String id);
+
+	public <S extends LhbgfjEntity> S save(S entity);
+
+	public void delete(LhbgfjEntity ent);
+
+	LhbgfjEntity findOne(String id);
+
+	List<LhbgfjEntity> findByBgid(String bgid);
+}

+ 108 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/service/impl/LhbgServiceImpl.java

@@ -0,0 +1,108 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.service.impl;
+
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.xt.jygl.common.Constants;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.dao.LhbgDao;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.entity.LhbgEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.service.LhbgService;
+import com.xt.jygl.workflow.entity.TaskInfoEntity;
+import com.xt.jygl.workflow.param.WorkFlowParam;
+import com.xt.jygl.workflow.service.impl.BaseWorkFlowServiceImpl;
+import com.xtframe.core.support.SecurityMgr;
+import com.xtframe.sec.common.BaseEntity;
+import com.xtframe.sec.common.SecRepository;
+import com.xtframe.sec.utils.SecUtils;
+import com.xtframe.util.StringUtils;
+
+@Service
+public class LhbgServiceImpl extends BaseWorkFlowServiceImpl<LhbgEntity, String> implements LhbgService {
+	@Autowired
+	private LhbgDao dao;
+	@Autowired
+	protected SecurityMgr securityMgr;
+
+	@Override
+	protected SecRepository<LhbgEntity, String> getDao() {
+
+		return this.dao;
+	}
+
+	@Override
+	public <S extends LhbgEntity> S submit(S entity) {
+		if (entity.getRecordStatus() == BaseEntity.RECORD_STATE_REJECT) {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_SUBMIT);
+			entity = this.save(entity);
+			Map<String, Object> variables = new HashMap<String, Object>();
+			WorkFlowParam param = new WorkFlowParam();
+			param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+			param.put(WorkFlowParam.IS_AUDIT, "false");
+			param.put(WorkFlowParam.DESCRIPTION, entity.getJyrmc() + "的理货变更");
+			complete(param, variables);
+		} else {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_SUBMIT);
+			entity = this.save(entity);
+			String gqid = "";
+			if (securityMgr.getCurrUser().getSfjyr().getText().equals("是")) {
+				gqid = entity.getSzgq().getId();
+			}
+			Map<String, Object> variables = new HashMap<String, Object>();
+			variables.put("role_clsc", Constants.ROLE_CLSC + ":" + gqid);
+			variables.put("role_hc", Constants.ROLE_HC + ":" + gqid);
+			variables.put("role_fh", Constants.ROLE_FH + ":" + gqid);
+			variables.put("role_sp", Constants.ROLE_SP + ":" + gqid);
+			WorkFlowParam param = new WorkFlowParam();
+			param.put(WorkFlowParam.DESCRIPTION, entity.getJyrmc() + "的理货变更");
+
+			// 设置流程发起人
+			if (StringUtils.isEmpty(param.getString(WorkFlowParam.AUDIT_USER))) {
+				param.put(WorkFlowParam.AUDIT_USER, SecUtils.getCurrUser().getId().toString());
+			}
+			param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+			// 提交流程
+			create(param, variables);
+		}
+		return entity;
+	}
+
+	
+	@Override
+	public String getProcessDefinitionKey() {
+		return LhbgEntity.PROCESS_DEFINITION_KEY;
+	}
+
+	@Override
+	public boolean changeAudit(String shyj, LhbgEntity entity, boolean flag) {
+		Map<String, Object> variables = new HashMap<String, Object>();
+		variables.put(WorkFlowParam.AUDIT_PASS, flag);
+		WorkFlowParam param = new WorkFlowParam();
+		param.put(WorkFlowParam.AUDIT_DATE, new Date());
+		param.put(WorkFlowParam.AUDIT_TEXT, shyj == null ? "" : shyj);
+		param.put(WorkFlowParam.AUDIT_RESULT, flag);
+		param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+		
+		complete(param, variables);
+		List<TaskInfoEntity> list = findByBusIdAndBusKeyAndRecordStatus(entity.getId().toString());
+		if (list == null || list.size() == 0) {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_COMPLETED);
+			entity = this.save(entity);
+			return true;
+		}
+		if (flag == false) {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_REJECT);
+			this.save(entity);
+		}
+		return false;
+	}
+
+	@Override
+	public List<LhbgEntity> findByJyrid(String jyrid) {
+		return dao.findByJyrid(jyrid);
+	}
+}

+ 30 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhbg/service/impl/LhbgfjServiceImpl.java

@@ -0,0 +1,30 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.service.impl;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.xt.jygl.common.service.JyglBaseService;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.dao.LhbgfjDao;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.entity.LhbgfjEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.service.LhbgfjService;
+import com.xtframe.sec.common.SecRepository;
+
+@Service
+public class LhbgfjServiceImpl extends JyglBaseService<LhbgfjEntity, String> implements LhbgfjService {
+	@Autowired
+	private LhbgfjDao dao;
+
+	@Override
+	protected SecRepository<LhbgfjEntity, String> getDao() {
+
+		return this.dao;
+	}
+
+	@Override
+	public List<LhbgfjEntity> findByBgid(String bgid) {
+		return dao.findByBgid(bgid);
+	}
+
+}

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

@@ -0,0 +1,203 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhbg.vo;
+
+import java.util.Date;
+
+import com.xtframe.sec.common.BaseVo;
+
+public class LhbgVo extends BaseVo {
+
+	private String id = null;
+	// 经营人ID
+	private String jyrid = null;
+	// 经营人名称
+	private String jyrmc = null;
+
+	private String szgk = null;
+
+	private String szgq = null;
+	// 许可证编号
+	private String xkzbh = null;
+	// 联系人
+	private String lxr = null;
+	// 电话
+	private String dh = null;
+	// 电话传真
+	private String cz = null;
+
+	private String ybgdz = null;
+	private String xbgdz = null;
+
+	private String yfddbr = null;
+	private String xfddbr = null;
+
+	private String gkjshyj = null;
+	private Date gkjshrq = null;
+
+	private String jttshyj = null;
+	private Date jttshrq = null;
+	private Date sqrq = null;
+	// 审批经办人
+	private String spry = null;
+	private String taskState = null;
+
+	public Date getSqrq() {
+		return sqrq;
+	}
+
+	public void setSqrq(Date sqrq) {
+		this.sqrq = sqrq;
+	}
+
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getJyrid() {
+		return jyrid;
+	}
+
+	public void setJyrid(String jyrid) {
+		this.jyrid = jyrid;
+	}
+
+	public String getJyrmc() {
+		return jyrmc;
+	}
+
+	public void setJyrmc(String jyrmc) {
+		this.jyrmc = jyrmc;
+	}
+
+	public String getSzgk() {
+		return szgk;
+	}
+
+	public void setSzgk(String szgk) {
+		this.szgk = szgk;
+	}
+
+	public String getSzgq() {
+		return szgq;
+	}
+
+	public void setSzgq(String szgq) {
+		this.szgq = szgq;
+	}
+
+	public String getXkzbh() {
+		return xkzbh;
+	}
+
+	public void setXkzbh(String xkzbh) {
+		this.xkzbh = xkzbh;
+	}
+
+	public String getLxr() {
+		return lxr;
+	}
+
+	public void setLxr(String lxr) {
+		this.lxr = lxr;
+	}
+
+	public String getDh() {
+		return dh;
+	}
+
+	public void setDh(String dh) {
+		this.dh = dh;
+	}
+
+	public String getCz() {
+		return cz;
+	}
+
+	public void setCz(String cz) {
+		this.cz = cz;
+	}
+
+	public String getYbgdz() {
+		return ybgdz;
+	}
+
+	public void setYbgdz(String ybgdz) {
+		this.ybgdz = ybgdz;
+	}
+
+	public String getXbgdz() {
+		return xbgdz;
+	}
+
+	public void setXbgdz(String xbgdz) {
+		this.xbgdz = xbgdz;
+	}
+
+	public String getYfddbr() {
+		return yfddbr;
+	}
+
+	public void setYfddbr(String yfddbr) {
+		this.yfddbr = yfddbr;
+	}
+
+	public String getXfddbr() {
+		return xfddbr;
+	}
+
+	public void setXfddbr(String xfddbr) {
+		this.xfddbr = xfddbr;
+	}
+
+	public String getGkjshyj() {
+		return gkjshyj;
+	}
+
+	public void setGkjshyj(String gkjshyj) {
+		this.gkjshyj = gkjshyj;
+	}
+
+	public Date getGkjshrq() {
+		return gkjshrq;
+	}
+
+	public void setGkjshrq(Date gkjshrq) {
+		this.gkjshrq = gkjshrq;
+	}
+
+	public String getJttshyj() {
+		return jttshyj;
+	}
+
+	public void setJttshyj(String jttshyj) {
+		this.jttshyj = jttshyj;
+	}
+
+	public Date getJttshrq() {
+		return jttshrq;
+	}
+
+	public void setJttshrq(Date jttshrq) {
+		this.jttshrq = jttshrq;
+	}
+
+	public String getSpry() {
+		return spry;
+	}
+
+	public void setSpry(String spry) {
+		this.spry = spry;
+	}
+
+	public String getTaskState() {
+		return taskState;
+	}
+
+	public void setTaskState(String taskState) {
+		this.taskState = taskState;
+	}
+
+}

+ 73 - 106
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/ctl/LhxkglCtl.java → gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/ctl/LhsqCtl.java

@@ -1,4 +1,4 @@
-package com.xt.jygl.gkjygl.gklhxkgl.ctl;
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.ctl;
 
 import java.text.ParseException;
 import java.text.SimpleDateFormat;
@@ -6,13 +6,16 @@ import java.util.ArrayList;
 import java.util.Date;
 import java.util.List;
 import java.util.Map;
+
 import javax.persistence.criteria.CriteriaBuilder;
+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.CriteriaBuilder.In;
 import javax.servlet.http.HttpServletRequest;
+
 import net.sf.json.JSONObject;
+
 import org.springframework.beans.BeanUtils;
 import org.springframework.beans.factory.annotation.Autowired;
 import org.springframework.data.domain.Page;
@@ -20,41 +23,32 @@ import org.springframework.data.jpa.domain.Specification;
 import org.springframework.stereotype.Controller;
 import org.springframework.ui.Model;
 import org.springframework.web.bind.annotation.RequestMapping;
+
 import cache.CacheSearchCondition;
+
 import com.fasterxml.jackson.core.JsonProcessingException;
 import com.xt.jygl.common.BaseWebCtl;
-import com.xt.jygl.common.Constants;
 import com.xt.jygl.common.SearchCondition;
 import com.xt.jygl.common.Utils;
-import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
 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;
-import com.xt.jygl.gkjygl.gkjyr.jyrjbxx.vo.GkjyrVo;
-import com.xt.jygl.gkjygl.gkjyr.xkzfz.entity.XkzfzEntity;
-import com.xt.jygl.gkjygl.gkjyr.xkzfz.vo.XkzfzVo;
-import com.xt.jygl.gkjygl.gkjyr.xkzxx.entity.XkzxxEntity;
-import com.xt.jygl.gkjygl.gkjyr.xkzxx.vo.XkzxxVo;
-import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.entity.XkzsqEntity;
-import com.xt.jygl.gkjygl.gklhxkgl.entity.LhxkglEntity;
-import com.xt.jygl.gkjygl.gklhxkgl.service.LhxkglService;
-import com.xt.jygl.gkjygl.gklhxkgl.vo.LhxkglVo;
-import com.xt.jygl.workflow.entity.TaskInfoEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.entity.LhsqEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.service.LhsqService;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.vo.LhsqVo;
 import com.xt.jygl.workflow.service.TaskInfoService;
-import com.xtframe.core.anon.auth.RequiresPermissions;
 import com.xtframe.core.base.ctl.WebJsonResult;
 import com.xtframe.sec.common.BaseEntity;
 import com.xtframe.sec.common.SimplePageRequest;
 import com.xtframe.sec.user.entity.UserEntity;
 import com.xtframe.sec.utils.SecUtils;
-import com.xtframe.util.DateTime;
 import com.xtframe.util.StringUtils;
 
 @Controller
-@RequestMapping("/gklhxkgl")
-public class LhxkglCtl extends BaseWebCtl {
+@RequestMapping("/lhsq")
+public class LhsqCtl extends BaseWebCtl {
 	@Autowired
-	private LhxkglService lhxkglService;
+	private LhsqService lhsqService;
 	@Autowired
 	private TaskInfoService taskInfoService;
 	@Autowired
@@ -76,10 +70,10 @@ public class LhxkglCtl extends BaseWebCtl {
 
 		final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
 		// 查询条件
-		Specification<LhxkglEntity> spec = new Specification<LhxkglEntity>() {
+		Specification<LhsqEntity> spec = new Specification<LhsqEntity>() {
 
 			@Override
-			public Predicate toPredicate(Root<LhxkglEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
+			public Predicate toPredicate(Root<LhsqEntity> 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 + "%"));
@@ -209,15 +203,16 @@ public class LhxkglCtl extends BaseWebCtl {
 		}
 		page.setSort("createDateTime");
 		page.setOrder("desc");
-		Page<LhxkglEntity> list = query.findAll(spec, toPageRequest(page), LhxkglEntity.class);
-		List<LhxkglVo> voList = new ArrayList<LhxkglVo>();
-		for (LhxkglEntity entity : list) {
-			LhxkglVo vo = new LhxkglVo();
+		Page<LhsqEntity> list = query.findAll(spec, toPageRequest(page), LhsqEntity.class);
+		List<LhsqVo> voList = new ArrayList<LhsqVo>();
+		for (LhsqEntity entity : list) {
+			LhsqVo vo = new LhsqVo();
 			if (entity != null) {
 				BeanUtils.copyProperties(entity, vo);
 				if (entity.getRecordStatus() != 9) {
 					voList.add(vo);
-				}}
+				}
+			}
 		}
 		if (isPOST(request)) {
 			cacheSCmap.put("xkzsqpage", page.getPage());
@@ -236,21 +231,20 @@ public class LhxkglCtl extends BaseWebCtl {
 
 		// 翻页共通
 		putPageInfo(model, page, list);
-		return "gkjygl/gklhxkgl/lhxkglmain";
+		return "gkjygl/gklhxkgl/gkjylhsq/lhsqmain";
 
 	}
-		
 
 	// 删除
 	@RequestMapping(value = "/delete")
-//	@ResponseBody
-//	@RequiresPermissions("gklhxkgl:delete")
+	// @ResponseBody
+	// @RequiresPermissions("gklhxkgl:delete")
 	public WebJsonResult logicdelete(Model model, String id) {
 		WebJsonResult wr = success();
 		try {
 			// 逻辑删除
-			lhxkglService.logicDelete(id);
-			LhxkglEntity entity = lhxkglService.findById(id);
+			lhsqService.logicDelete(id);
+			LhsqEntity entity = lhsqService.findById(id);
 			GkjyrEntity gkjyr = gkjyrService.findOne(entity.getJyrid());
 			gkjyr.setRecordStatus(BaseEntity.RECORD_STATE_VALID);
 			gkjyrService.save(gkjyr);
@@ -262,94 +256,67 @@ public class LhxkglCtl extends BaseWebCtl {
 		return wr;
 	}
 
-
 	// 时间格式化
-		private String transFormatDate(Date d) {
-			if (d == null) {
-				return "";
-			}
-			SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
-			return sdf.format(d);
+	private String transFormatDate(Date d) {
+		if (d == null) {
+			return "";
 		}
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+		return sdf.format(d);
+	}
 
 	// 新增
-	@RequestMapping(value = "/addmain")
-//	@ResponseBody
-//	@RequiresPermissions("gklhxkgl:add")
-	public String addmain(Model model, String flag, String path, String id) {
-		final UserEntity user = securityMgr.getCurrUser();
+	@RequestMapping(value = "/add")
+	public String add(Model model, String flag, String path, String id) {
+		UserEntity user = securityMgr.getCurrUser();
 		GkjyrEntity gkjyr = new GkjyrEntity();
-		if (user.getSsjyr() != null || !StringUtils.isEmpty(path)) {
-			if (StringUtils.isEmpty(path)) {
-				gkjyr = gkjyrService.findOne(user.getSsjyr().getId());
-			} else {
-				gkjyr = gkjyrService.findOne(id);
-			}
-			final String jyrid = gkjyr.getId();
-			// 许可证信息
-			Specification<LhxkglEntity> spec4 = new Specification<LhxkglEntity>() {
+		if (user.getSsjyr() != null) {
+
+			gkjyr = gkjyrService.findOne(user.getSsjyr().getId());
 
-				@Override
-				public Predicate toPredicate(Root<LhxkglEntity> root, CriteriaQuery<?> query, CriteriaBuilder cb) {
-					List<Predicate> list = new ArrayList<Predicate>();
-					list.add(cb.like(root.get("gkjyr").as(String.class), "%" + jyrid + "%"));
-					list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORD_STATE_DELETE));
-					return cb.and(list.toArray(new Predicate[] {}));
-				}
-			};
-			List<LhxkglEntity> list4 = query.findAll(spec4, LhxkglEntity.class);
-			List<LhxkglVo> voList4 = new ArrayList<LhxkglVo>();
-			for (LhxkglEntity entity : list4) {
-				LhxkglVo vo = new LhxkglVo();
-				if (entity != null && entity.getRecordStatus() != 9) {
-					BeanUtils.copyProperties(entity, vo);
-					vo.setLxr(entity.getLxr() != null ? entity.getLxr(): "");
-                    
-				}
-			}
-			model.addAttribute("xkzxx", voList4);
 		}
-		return "gkjygl/gklhxkgl/lhxkgladdmain";
+		model.addAttribute("gkjyr", gkjyr);
+		return "gkjygl/gklhxkgl/gkjylhsq/lhsqadd";
 	}
-	
+
 	// 查看
-		@RequestMapping(value = "/viewmain")
-		public String viewmain(Model model, String id, String flag,String path,String menuid) {
-			model.addAttribute("path", path);
-			model.addAttribute("flag", flag);
-			UserEntity user = securityMgr.getCurrUser();
-			model.addAttribute("ry", user.getName());
-			SimpleDateFormat dateTimeFormat = new SimpleDateFormat("yyyy-MM-dd");
-			Date today = new Date();
-			model.addAttribute("sj", dateTimeFormat.format(today));
-			LhxkglEntity entity = lhxkglService.findById(id);
-			LhxkglVo vo = new LhxkglVo();
-			if(entity!=null){
+	@RequestMapping(value = "/view")
+	public String view(Model model, String id, String flag, String path, String menuid) {
+		model.addAttribute("path", path);
+		model.addAttribute("flag", flag);
+		UserEntity user = securityMgr.getCurrUser();
+		model.addAttribute("ry", user.getName());
+		SimpleDateFormat dateTimeFormat = new SimpleDateFormat("yyyy-MM-dd");
+		Date today = new Date();
+		model.addAttribute("sj", dateTimeFormat.format(today));
+		LhsqEntity entity = lhsqService.findById(id);
+		LhsqVo vo = new LhsqVo();
+		if (entity != null) {
 			BeanUtils.copyProperties(entity, vo);
 			try {
-			vo.setLxr(entity.getSqr() != null ? entity.getSqr(): "");
-			vo.setFddbr(entity.getFddbr()!=null?entity.getFddbr():"");
-			vo.setSqrlxdh(entity.getSqrlxdh()!=null?entity.getSqrlxdh():"");
-			vo.setSqryzbm(entity.getSqryzbm()!=null?entity.getSqryzbm():"");
-			vo.setSqrdz(entity.getSqrdz()!=null?entity.getSqrdz():"");
-			vo.setWtdlrxm(entity.getWtdlrxm()!=null?entity.getWtdlrxm():"");
-			vo.setWtdlrlxfs(entity.getWtdlrlxfs()!=null?entity.getWtdlrlxfs():"");
-			vo.setSqrq(entity.getSqrq()!=null?dateTimeFormat.parse(entity.getSqrq().toString()):null);
-			vo.setGsmc(entity.getGsmc()!=null?entity.getGsmc():"");
-			vo.setZcdz(entity.getZcdz()!=null?entity.getZcdz():"");
-			vo.setFddbr(entity.getFddbr()!=null?entity.getFddbr():"");
-			vo.setGsyyzzbh(entity.getGsyyzzbh()!=null?entity.getGsyyzzbh():"");
-			vo.setLxr(entity.getLxr()!=null?entity.getLxr():"");
-			vo.setZczb(entity.getZczb()!=null?entity.getZczb():"");
-			vo.setLxrdh(entity.getLxrdh()!=null?entity.getLxrdh():"");
-			vo.setJydy(entity.getJydy()!=null?entity.getJydy():"");
+				vo.setLxr(entity.getSqr() != null ? entity.getSqr() : "");
+				vo.setFddbr(entity.getFddbr() != null ? entity.getFddbr() : "");
+				vo.setSqrlxdh(entity.getSqrlxdh() != null ? entity.getSqrlxdh() : "");
+				vo.setSqryzbm(entity.getSqryzbm() != null ? entity.getSqryzbm() : "");
+				vo.setSqrdz(entity.getSqrdz() != null ? entity.getSqrdz() : "");
+				vo.setWtdlrxm(entity.getWtdlrxm() != null ? entity.getWtdlrxm() : "");
+				vo.setWtdlrlxfs(entity.getWtdlrlxfs() != null ? entity.getWtdlrlxfs() : "");
+				vo.setSqrq(entity.getSqrq() != null ? dateTimeFormat.parse(entity.getSqrq().toString()) : null);
+				vo.setGsmc(entity.getGsmc() != null ? entity.getGsmc() : "");
+				vo.setZcdz(entity.getZcdz() != null ? entity.getZcdz() : "");
+				vo.setFddbr(entity.getFddbr() != null ? entity.getFddbr() : "");
+				vo.setGsyyzzbh(entity.getGsyyzzbh() != null ? entity.getGsyyzzbh() : "");
+				vo.setLxr(entity.getLxr() != null ? entity.getLxr() : "");
+				vo.setZczb(entity.getZczb() != null ? entity.getZczb() : "");
+				vo.setLxrdh(entity.getLxrdh() != null ? entity.getLxrdh() : "");
+				vo.setJydy(entity.getJydy() != null ? entity.getJydy() : "");
 			} catch (ParseException e) {
 				e.printStackTrace();
 			}
-			}
-			model.addAttribute("menuid", menuid);
-			model.addAttribute("record", vo);
-			return "gkjygl/gklhxkgl/lhxkglviewmain";
 		}
+		model.addAttribute("menuid", menuid);
+		model.addAttribute("record", vo);
+		return "gkjygl/gklhxkgl/gkjylhsq/lhsqview";
+	}
 
 }

+ 20 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/dao/LhsqDao.java

@@ -0,0 +1,20 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.dao;
+
+import java.util.List;
+
+import org.springframework.data.jpa.repository.Query;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.entity.LhsqEntity;
+import com.xtframe.sec.common.SecRepository;
+
+public interface LhsqDao extends SecRepository<LhsqEntity, String> {
+
+	@Query("SELECT m  FROM LhsqEntity m WHERE  m.jyrid =?1 and m.recordStatus=2  order by m.updateDateTime desc")
+	public List<LhsqEntity> findByJyrid(String jyrid);
+	
+	@Query("SELECT m  FROM LhsqEntity m WHERE  m.id =?1 and m.recordStatus<>9")
+	public LhsqEntity findById(String id);
+	
+	
+
+}

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

@@ -1,4 +1,4 @@
-package com.xt.jygl.gkjygl.gklhxkgl.entity;
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.entity;
 
 import java.util.Date;
 
@@ -18,7 +18,7 @@ import com.xtframe.sec.common.BaseEntity;
 
 @Entity
 @Table(name = "GK_OPERATION_JSJY_LHSQXX")
-public class LhxkglEntity extends BaseEntity<String> implements Cloneable {
+public class LhsqEntity extends BaseEntity<String> implements Cloneable {
 
 	/**
 	 * serialVersionUID

+ 19 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/service/LhsqService.java

@@ -0,0 +1,19 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.service;
+
+import java.util.List;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.entity.LhsqEntity;
+import com.xt.jygl.workflow.service.BaseWorkFlowService;
+
+public interface LhsqService extends BaseWorkFlowService {
+	void logicDelete(String id);
+
+	public <S extends LhsqEntity> S save(S entity);
+
+	public <S extends LhsqEntity> S submit(S entity);
+
+	LhsqEntity findById(String id);
+
+	List<LhsqEntity> findByJyrid(String jyrid);
+
+}

+ 50 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/service/impl/LhsqServiceImpl.java

@@ -0,0 +1,50 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.service.impl;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.dao.LhsqDao;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.entity.LhsqEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.service.LhsqService;
+import com.xt.jygl.workflow.service.impl.BaseWorkFlowServiceImpl;
+import com.xtframe.sec.common.SecRepository;
+
+@Service
+public abstract class LhsqServiceImpl extends BaseWorkFlowServiceImpl<LhsqEntity, String> implements LhsqService {
+	@Autowired
+	private LhsqDao dao;
+
+	@Override
+	public <S extends LhsqEntity> S submit(S entity) {
+		return null;
+	}
+
+	@Override
+	public List<LhsqEntity> findByJyrid(String jyrid) {
+		return dao.findByJyrid(jyrid);
+	}
+
+	@Override
+	public String getProcessDefinitionKey() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	@Override
+	protected SecRepository<LhsqEntity, String> getDao() {
+		// TODO Auto-generated method stub
+		return null;
+	}
+
+	@Override
+	public LhsqEntity findById(String id) {
+		// TODO Auto-generated method stub
+		return dao.findById(id);
+	}
+
+
+	}
+
+

+ 2 - 2
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/vo/LhxkglVo.java → gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhsq/vo/LhsqVo.java

@@ -1,4 +1,4 @@
-package com.xt.jygl.gkjygl.gklhxkgl.vo;
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhsq.vo;
 
 import java.util.Date;
 
@@ -6,7 +6,7 @@ import com.xt.jygl.gkjcxx.gk.entity.GkEntity;
 import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
 import com.xtframe.sec.common.BaseVo;
 
-public class LhxkglVo extends BaseVo{
+public class LhsqVo extends BaseVo{
 	
 	private String id = null;
 

+ 491 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/ctl/LhyxCtl.java

@@ -0,0 +1,491 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.ctl;
+
+import java.io.File;
+import java.text.SimpleDateFormat;
+import java.util.ArrayList;
+import java.util.Date;
+import java.util.List;
+
+import javax.persistence.criteria.CriteriaBuilder;
+import javax.persistence.criteria.CriteriaQuery;
+import javax.persistence.criteria.Predicate;
+import javax.persistence.criteria.Root;
+import javax.servlet.http.HttpServletRequest;
+import javax.servlet.http.HttpServletResponse;
+
+import org.activiti.engine.ActivitiException;
+import org.springframework.beans.BeanUtils;
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.data.domain.Page;
+import org.springframework.data.jpa.domain.Specification;
+import org.springframework.stereotype.Controller;
+import org.springframework.ui.Model;
+import org.springframework.web.bind.annotation.RequestMapping;
+import org.springframework.web.bind.annotation.RequestParam;
+import org.springframework.web.bind.annotation.ResponseBody;
+import org.springframework.web.multipart.MultipartFile;
+
+import com.fasterxml.jackson.core.JsonProcessingException;
+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.gkjcxx.gk.service.GkService;
+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;
+import com.xt.jygl.gkjygl.gkjyr.xkzxx.entity.XkzxxEntity;
+import com.xt.jygl.gkjygl.gkjyr.xkzxx.service.XkzxxService;
+import com.xt.jygl.gkjygl.gkjyxkgl.gkjyxksq.service.XzjydyService;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.entity.LhyxEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.entity.LhyxfjEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.service.LhyxService;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.service.LhyxfjService;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.vo.LhyxVo;
+import com.xt.jygl.workflow.entity.TaskInfoEntity;
+import com.xt.jygl.workflow.service.TaskInfoService;
+import com.xtframe.core.anon.auth.RequiresPermissions;
+import com.xtframe.core.base.ctl.WebJsonResult;
+import com.xtframe.sec.common.BaseEntity;
+import com.xtframe.sec.common.QueryService;
+import com.xtframe.sec.common.SimplePageRequest;
+import com.xtframe.sec.user.entity.UserEntity;
+import com.xtframe.sec.utils.SecUtils;
+import com.xtframe.util.DateTime;
+import com.xtframe.util.StringUtils;
+
+/**
+ * 理货管理Controller
+ * 
+ * @author xuhx
+ *
+ */
+@Controller
+@RequestMapping("/lhyx")
+public class LhyxCtl extends BaseWebCtl {
+	@Autowired
+	private QueryService query;
+	@Autowired
+	private LhyxService lhyxService;
+	@Autowired
+	private GkjyrService gkjyrService;
+	@Autowired
+	private XzjydyService xzjydyService;
+	@Autowired
+	private TaskInfoService taskInfoService;
+	@Autowired
+	private GkService gkService;
+	@Autowired
+	private GqService gqService;
+	@Autowired
+	private LhyxfjService lhyxfjService;
+	@Autowired
+	private AccessoryService accessoryService;
+	@Autowired
+	private XkzxxService xkzxxService;
+	@RequestMapping(value = "/main")
+	public String main(SimplePageRequest page, Model model, final String lczt, final String szdid, final String szgkid, final String szgqid, final String gkjyr, final String fddbr, final String bgdd, String menuid) throws JsonProcessingException {
+		UserEntity user = securityMgr.getCurrUser();
+		GkjyrEntity jyr = new GkjyrEntity();
+		if (!StringUtils.isEmpty(user.getSsjyr())) {
+			jyr = user.getSsjyr();
+			model.addAttribute("jyr", jyr);
+		}
+		model.addAttribute("user", user);
+
+		// 查询条件
+		Specification<LhyxEntity> spec = new Specification<LhyxEntity>() {
+			@Override
+			public Predicate toPredicate(Root<LhyxEntity> 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(gkjyr)) {
+					list.add(cb.like(root.get("jyrmc").as(String.class), "%" + gkjyr + "%"));
+				}
+				if (StringUtils.isNotEmpty(fddbr)) {
+					list.add(cb.like(root.get("fddbr").as(String.class), "%" + fddbr + "%"));
+				}
+				if (StringUtils.isNotEmpty(bgdd)) {
+					list.add(cb.like(root.get("bgdd").as(String.class), "%" + bgdd + "%"));
+				}
+
+				list.add(cb.notEqual(root.get("recordStatus").as(Integer.class), BaseEntity.RECORD_STATE_DELETE));
+			
+
+				return cb.and(list.toArray(new Predicate[] {}));
+			}
+		};
+		Page<LhyxEntity> list = query.findAll(spec, toPageRequest(page), LhyxEntity.class);
+		List<LhyxVo> voList = new ArrayList<LhyxVo>();
+		for (LhyxEntity entity : list) {
+			LhyxVo vo = new LhyxVo();
+			if (entity != null) {
+				BeanUtils.copyProperties(entity, vo);
+				if (entity.getRecordStatus() != 9) {
+					if ((lhyxService.getTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) || lhyxService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), entity.getId().toString()) != null) {
+						List<TaskInfoEntity> lists = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(entity.getId(), LhyxEntity.PROCESS_DEFINITION_KEY);
+						if (lists != null & lists.size() > 0) {
+							TaskInfoEntity taskinfo = lists.get(0);
+							if ("申请".equals(taskinfo.getCurrName())) {
+								vo.setTaskState("TH");
+							} else {
+								vo.setTaskState(Constants.IS_MY_TASK);
+							}
+						}
+					}
+					voList.add(vo);
+				}
+			}
+		}
+		model.addAttribute("lczt", lczt);
+		model.addAttribute("gkjyr", gkjyr);
+		model.addAttribute("fddbr", fddbr);
+		model.addAttribute("bgdd", bgdd);
+		model.addAttribute("list", voList);
+		model.addAttribute("menuid", menuid);
+		// 翻页共通
+		putPageInfo(model, page, list);
+		return "gkjygl/gklhxkgl/gkjylhyx/lhyxmain";
+	}
+
+	// 时间格式化
+	private String transFormatDate(Date d) {
+		if (d == null) {
+			return "";
+		}
+		SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd");
+		return sdf.format(d);
+	}
+
+	// 新增
+	@RequestMapping(value = "/add")
+	public String add(Model model) {
+		UserEntity user = securityMgr.getCurrUser();
+		GkjyrEntity jyr = new GkjyrEntity();
+		if (user.getSsjyr() != null) {
+			jyr = gkjyrService.findOne(user.getSsjyr().getId());
+			List<XkzxxEntity> xkzs = xkzxxService.findByJyrid(jyr.getId());
+			for (XkzxxEntity xkz : xkzs) {
+				if (BaseEntity.RECORD_STATE_VALID == xkz.getRecordStatus() && Constants.XKZ_SX.equals(xkz.getSfyx())) {
+					model.addAttribute("yxrq", DateTime.toString(xkz.getYxqz()));
+				}
+			}
+		}
+		model.addAttribute("gkjyr", jyr);
+		//时间
+		SimpleDateFormat data = new SimpleDateFormat("yyyy");
+		String nfstr = data.format(new Date());
+		int nf = Integer.parseInt(nfstr);
+		nf = nf - 1;
+		model.addAttribute("oneyear", nf);
+		nf=nf-1;
+		model.addAttribute("twoyear", nf);
+		
+		return "gkjygl/gklhxkgl/gkjylhyx/lhyxadd";
+	}
+
+	// 新增
+	@RequestMapping(value = "/view")
+	public String view(Model model, String id, String flag, String opflag) {
+		model.addAttribute("flag", flag);
+		LhyxEntity lhyx = lhyxService.findOne(id);
+
+		List<LhyxfjEntity> list = lhyxfjService.findByYxid(lhyx.getId());
+		if (list != null && list.size() > 0) {
+			model.addAttribute("fjlist", list);
+		}
+		model.addAttribute("record", lhyx);
+		return "gkjygl/gklhxkgl/gkjylhyx/lhyxview";
+	}
+
+	// 新增
+	@RequestMapping(value = "/edit")
+	public String edit(Model model, String id, String flag) {
+		model.addAttribute("flag", flag);
+		LhyxEntity lhyx = lhyxService.findOne(id);
+		model.addAttribute("record", lhyx);
+		
+		List<LhyxfjEntity> list = lhyxfjService.findByYxid(lhyx.getId());
+		if (list != null && list.size() > 0) {
+			model.addAttribute("fjlist", list);
+		}
+		return "gkjygl/gklhxkgl/gkjylhyx/lhyxedit";
+	}
+
+	// 保存
+	@RequestMapping(value = "/save")
+	@ResponseBody
+	public WebJsonResult save(Model model, LhyxEntity code, String accid) {
+		WebJsonResult wr = success();
+		LhyxEntity lhyxEntity = new LhyxEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				lhyxEntity = lhyxService.findOne(code.getId());
+				lhyxEntity.setLxr(code.getLxr());
+				lhyxEntity.setLxdh(code.getLxdh());
+				lhyxEntity.setYgzs(code.getYgzs());
+				lhyxEntity.setLhys(code.getLhys());
+				lhyxEntity.setYysr(code.getYysr());
+				lhyxEntity.setYysrr(code.getYysrr());
+				lhyxEntity.setLhl(code.getLhl());
+				lhyxEntity.setLhll(code.getLhll());
+				lhyxEntity.setLxl(code.getLxl());
+				lhyxEntity.setLxll(code.getLxll());
+				lhyxEntity = lhyxService.save(lhyxEntity);
+			} else {
+				code.setId(null);
+				
+				GkjyrEntity jyr = gkjyrService.findOne(code.getJyrid());
+				if (jyr != null) {
+					code.setSzgk(jyr.getSzgk());
+					code.setSzgq(jyr.getSzgq());
+					code.setSzd(jyr.getSzd());
+				}
+				lhyxEntity = lhyxService.save(code);
+			}
+			if (!StringUtils.isEmpty(accid)) {
+				// 关联附件
+				String[] ssids = accid.split(",");
+				for (String ssid : ssids) {
+					LhyxfjEntity fj = lhyxfjService.findOne(ssid);
+					if (fj != null) {
+						fj.setYxid(lhyxEntity.getId());
+						lhyxfjService.save(fj);
+					}
+				}
+			}
+
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	// 保存
+	@RequestMapping(value = "/submit")
+	@ResponseBody
+	public WebJsonResult submit(Model model, LhyxEntity code, String accid) {
+		WebJsonResult wr = success();
+
+		LhyxEntity lhyxEntity = new LhyxEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				lhyxEntity = lhyxService.findOne(code.getId());
+				
+
+				lhyxEntity = lhyxService.submit(lhyxEntity);
+			} else {
+
+				GkjyrEntity jyr = gkjyrService.findOne(code.getJyrid());
+				if (jyr != null) {
+					code.setSzgk(jyr.getSzgk());
+					code.setSzgq(jyr.getSzgq());
+
+					code.setSzd(jyr.getSzd());
+				}
+				lhyxEntity = lhyxService.submit(code);
+			}
+			if (!StringUtils.isEmpty(accid)) {
+				// 关联附件
+				String[] ssids = accid.split(",");
+				for (String ssid : ssids) {
+					LhyxfjEntity fj = lhyxfjService.findOne(ssid);
+					if (fj != null) {
+						fj.setYxid(lhyxEntity.getId());
+						lhyxfjService.save(fj);
+					}
+				}
+			}
+			// rtx提醒
+			// rtxSend(lhyxEntity.getSzgq().getId(), Constants.ROLE_CLSC,
+			// "你有一条许可证变更待办事务,请及时处理!");
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/submitAudit")
+	@ResponseBody
+	public WebJsonResult submitAudit(LhyxEntity code, String[] jydyids, String accid, String mtids, String bwids, String cgids, String ckids, String dcids, String ryids, String sssbids, String qytzids, String zxjxids) {
+		WebJsonResult wr = success();
+		LhyxEntity lhyxEntity = new LhyxEntity();
+		try {
+			if (!StringUtils.isEmpty(code.getId())) {
+				lhyxEntity = lhyxService.findOne(code.getId());
+			
+				lhyxEntity = lhyxService.save(lhyxEntity);
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		try {
+			if (lhyxService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), code.getId()) != null) {
+				lhyxService.claim(code.getId(), SecUtils.getCurrUser().getId().toString());
+			}
+			lhyxService.changeAudit(null, lhyxEntity, true);
+			// rtx提醒
+			// rtxSend(lhyxEntity.getSzgq().getId(), Constants.ROLE_CLSC,
+			// "你有一条许可证变更待办事务,请及时处理!");
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	// 删除
+	@RequestMapping(value = "/delete")
+	@ResponseBody
+	@RequiresPermissions("gkjyxkbg:delete")
+	public WebJsonResult logicdelete(Model model, String id) {
+		WebJsonResult wr = success();
+		try {
+			// 逻辑删除
+			lhyxService.logicDelete(id);
+			LhyxEntity entity = lhyxService.findOne(id);
+			GkjyrEntity gkjyr = gkjyrService.findOne(entity.getJyrid());
+			gkjyr.setRecordStatus(BaseEntity.RECORD_STATE_VALID);
+			gkjyrService.save(gkjyr);
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	// 保存附件
+	@RequestMapping(value = "/saveFile")
+	@ResponseBody
+	public WebJsonResult saveFile(@RequestParam("file") List<MultipartFile> file, String sfbx, Model model, HttpServletRequest request, HttpServletResponse response) {
+		WebJsonResult wr = success();
+		if (file != null && file.size() > 0) {
+			LhyxfjEntity fjEntity = new LhyxfjEntity();
+			for (int i = 0; i < file.size(); i++) {
+				MultipartFile f = file.get(i);
+				if (f.getSize() > 0) {
+					AccessoryEntity acc = accessoryService.saveFile(f, "lhyx");
+					if (acc != null) {
+						fjEntity.setFjid(acc.getId());
+						fjEntity.setFjmc(acc.getName());
+						fjEntity = lhyxfjService.save(fjEntity);
+						break;
+					}
+				}
+			}
+			wr.setAttr("acc", fjEntity);
+		} else {
+			wr.setSuccess(false);
+			wr.setMessage("请上传附件!");
+		}
+		return wr;
+	}
+
+	/**
+	 * 删除附件
+	 * 
+	 * @param model
+	 * @param id
+	 * @return
+	 */
+	@RequestMapping(value = "/delFj")
+	@ResponseBody
+	public WebJsonResult delFj(String[] ids) {
+		WebJsonResult wr = success();
+		try {
+			for (String id : ids) {
+				LhyxfjEntity entity = lhyxfjService.findOne(id);
+				if (entity != null) {
+					AccessoryEntity acc = accessoryService.findOne(entity.getFjid());
+					if (acc != null) {
+						accessoryService.delete(acc);
+						if (entity != null) {
+							String path = acc.getFilepath() + acc.getFilename();
+							File file = new File(path);
+							if (file.isFile() && file.exists()) {
+								file.delete();
+							}
+						}
+					}
+					lhyxfjService.delete(entity);
+				}
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+		}
+		return wr;
+	}
+
+	@RequestMapping(value = "/audit")
+	@ResponseBody
+	public WebJsonResult audit(String shyj, String id, boolean flag) {
+		WebJsonResult wr = success();
+		UserEntity user = securityMgr.getCurrUser();
+		LhyxEntity entity = new LhyxEntity();
+		String role = "";
+		try {
+			entity = lhyxService.findOne(id);
+			Date today = new Date();
+			List<TaskInfoEntity> list = taskInfoService.findByBusIdAndBusKeyAndRecordStatus(id, LhyxEntity.PROCESS_DEFINITION_KEY);
+			if (list != null & list.size() > 0) {
+				TaskInfoEntity taskinfo = list.get(0);
+
+				lhyxService.save(entity);
+			}
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("id不能为空!");
+			return wr;
+		}
+		try {
+			if (lhyxService.getCandidateTaskByUserAndBusKey(SecUtils.getCurrUser().getId().toString(), id) != null) {
+				lhyxService.claim(id, SecUtils.getCurrUser().getId().toString());
+			}
+			boolean jflag = lhyxService.changeAudit(shyj, entity, flag);
+			if (jflag) {
+
+			} else {
+				// rtx提醒
+				// rtxSend(entity.getSzgq().getId(), role,
+				// "你有一条许可证变更待办事务,请及时处理!");
+			}
+			wr.setAttr("jflag", jflag);
+		} catch (Exception e) {
+			wr.setSuccess(false);
+			wr.setMessage("操作失败!");
+			e.printStackTrace();
+		}
+		return wr;
+	}
+
+	/**
+	 * 签收
+	 * 
+	 * @param entity
+	 * @return
+	 */
+	public void claim(LhyxEntity entity) {
+		try {
+			lhyxService.claim(entity.getId().toString(), SecUtils.getCurrUser().getId().toString());
+		} catch (ActivitiException e) {
+			e.printStackTrace();
+		}
+	}
+
+}

+ 14 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/dao/LhyxDao.java

@@ -0,0 +1,14 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.dao;
+
+import java.util.List;
+
+import org.springframework.data.jpa.repository.Query;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.entity.LhyxEntity;
+import com.xtframe.sec.common.SecRepository;
+
+public interface LhyxDao extends SecRepository<LhyxEntity, String> {
+
+	@Query("SELECT m  FROM LhyxEntity m WHERE  m.jyrid =?1 and m.recordStatus=2  order by m.updateDateTime desc")
+	public List<LhyxEntity> findByJyrid(String jyrid);
+}

+ 14 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/dao/LhyxfjDao.java

@@ -0,0 +1,14 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.dao;
+
+import java.util.List;
+
+import org.springframework.data.jpa.repository.Query;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.entity.LhyxfjEntity;
+import com.xtframe.sec.common.SecRepository;
+
+public interface LhyxfjDao extends SecRepository<LhyxfjEntity, String> {
+
+	@Query("SELECT m  FROM LhyxfjEntity m WHERE  m.yxid =?1 and m.recordStatus <> 9 ")
+	public List<LhyxfjEntity> findByYxid(String yxid);
+}

+ 266 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/entity/LhyxEntity.java

@@ -0,0 +1,266 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.entity;
+
+import java.util.Date;
+
+import javax.persistence.Entity;
+import javax.persistence.FetchType;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.JoinColumn;
+import javax.persistence.ManyToOne;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.GenericGenerator;
+
+import com.xt.jygl.gkjcxx.gk.entity.GkEntity;
+import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
+import com.xtframe.sec.common.BaseEntity;
+
+@Entity
+@Table(name = "GK_OPERATION_JSJY_LHYX")
+public class LhyxEntity extends BaseEntity<String> implements Cloneable {
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+
+	/**
+	 * serialVersionUID
+	 */
+	
+
+	public static final String PROCESS_DEFINITION_KEY = "lhyx";
+
+	private String id = null;
+	// 经营人ID
+	private String jyrid = null;
+	// 经营人名称
+	private String jyrmc = null;
+
+	private GkEntity szgk = null;
+
+	private GqEntity szgq = null;
+	// 许可证编号
+	private String xkzbh = null;
+	// 联系人
+	private String lxr = null;
+
+	private String zcdz=null;
+	private String fddbr=null;
+	private String gsyyzzbh=null;
+	private String zczb=null;
+	private String lxdh=null;
+	private String jydy=null;
+	private Date yxrq = null; 
+	private String ygzs = null;
+	private String lhys = null;
+	private String yysr=null;
+	private String lhl=null;
+	private String lxl=null;
+	private String yysrr=null;
+	private String lhll= null;
+	private String lxll= null;
+	private String oneyear =null;
+	private String twoyear = null;
+	
+
+	public String getOneyear() {
+		return oneyear;
+	}
+
+	public void setOneyear(String oneyear) {
+		this.oneyear = oneyear;
+	}
+
+	public String getTwoyear() {
+		return twoyear;
+	}
+
+	public void setTwoyear(String twoyear) {
+		this.twoyear = twoyear;
+	}
+
+	@Id
+	@GenericGenerator(name = "systemUUID", strategy = "uuid")
+	@GeneratedValue(generator = "systemUUID")
+	public String getId() {
+		return id;
+	}
+	
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GkEntity.class)
+	@JoinColumn(name = "szgk")
+	public GkEntity getSzgk() {
+		return szgk;
+	}
+
+	public void setSzgk(GkEntity szgk) {
+		this.szgk = szgk;
+	}
+
+	@ManyToOne(fetch = FetchType.EAGER, targetEntity = GqEntity.class)
+	@JoinColumn(name = "szgq")
+	public GqEntity getSzgq() {
+		return szgq;
+	}
+
+	public String getJyrid() {
+		return jyrid;
+	}
+
+	public void setJyrid(String jyrid) {
+		this.jyrid = jyrid;
+	}
+
+	public String getJyrmc() {
+		return jyrmc;
+	}
+
+	public void setJyrmc(String jyrmc) {
+		this.jyrmc = jyrmc;
+	}
+
+	public String getXkzbh() {
+		return xkzbh;
+	}
+
+	public void setXkzbh(String xkzbh) {
+		this.xkzbh = xkzbh;
+	}
+
+	public String getLxr() {
+		return lxr;
+	}
+
+	public void setLxr(String lxr) {
+		this.lxr = lxr;
+	}
+
+	public String getZcdz() {
+		return zcdz;
+	}
+
+	public void setZcdz(String zcdz) {
+		this.zcdz = zcdz;
+	}
+
+	public String getFddbr() {
+		return fddbr;
+	}
+
+	public void setFddbr(String fddbr) {
+		this.fddbr = fddbr;
+	}
+
+	public String getGsyyzzbh() {
+		return gsyyzzbh;
+	}
+
+	public void setGsyyzzbh(String gsyyzzbh) {
+		this.gsyyzzbh = gsyyzzbh;
+	}
+
+	public String getZczb() {
+		return zczb;
+	}
+
+	public void setZczb(String zczb) {
+		this.zczb = zczb;
+	}
+
+	public String getLxdh() {
+		return lxdh;
+	}
+
+	public void setLxdh(String lxdh) {
+		this.lxdh = lxdh;
+	}
+
+	public String getJydy() {
+		return jydy;
+	}
+
+	public void setJydy(String jydy) {
+		this.jydy = jydy;
+	}
+
+	public Date getYxrq() {
+		return yxrq;
+	}
+
+	public void setYxrq(Date yxrq) {
+		this.yxrq = yxrq;
+	}
+
+	public String getYgzs() {
+		return ygzs;
+	}
+
+	public void setYgzs(String ygzs) {
+		this.ygzs = ygzs;
+	}
+
+	public String getLhys() {
+		return lhys;
+	}
+
+	public void setLhys(String lhys) {
+		this.lhys = lhys;
+	}
+
+	public String getYysr() {
+		return yysr;
+	}
+
+	public void setYysr(String yysr) {
+		this.yysr = yysr;
+	}
+
+	public String getLhl() {
+		return lhl;
+	}
+
+	public void setLhl(String lhl) {
+		this.lhl = lhl;
+	}
+
+	public String getLxl() {
+		return lxl;
+	}
+
+	public void setLxl(String lxl) {
+		this.lxl = lxl;
+	}
+
+	public String getYysrr() {
+		return yysrr;
+	}
+
+	public void setYysrr(String yysrr) {
+		this.yysrr = yysrr;
+	}
+
+	public String getLhll() {
+		return lhll;
+	}
+
+	public void setLhll(String lhll) {
+		this.lhll = lhll;
+	}
+
+	public String getLxll() {
+		return lxll;
+	}
+
+	public void setLxll(String lxll) {
+		this.lxll = lxll;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public void setSzgq(GqEntity szgq) {
+		this.szgq = szgq;
+	}
+
+}

+ 60 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/entity/LhyxfjEntity.java

@@ -0,0 +1,60 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.entity;
+
+import javax.persistence.Entity;
+import javax.persistence.GeneratedValue;
+import javax.persistence.Id;
+import javax.persistence.Table;
+
+import org.hibernate.annotations.GenericGenerator;
+
+import com.xtframe.sec.common.BaseEntity;
+
+@Entity
+@Table(name = "GK_OPERATION_JSJY_LHYXFJ")
+public class LhyxfjEntity extends BaseEntity<String> implements Cloneable {
+
+	/**
+	 * 
+	 */
+	private static final long serialVersionUID = 1L;
+	private String id = null;
+	private String yxid = null;
+	private String fjid = null;
+	private String fjmc = null;
+
+	@Id
+	@GenericGenerator(name = "systemUUID", strategy = "uuid")
+	@GeneratedValue(generator = "systemUUID")
+	public String getId() {
+		return id;
+	}
+
+	public void setId(String id) {
+		this.id = id;
+	}
+
+	public String getYxid() {
+		return yxid;
+	}
+
+	public void setYxid(String yxid) {
+		this.yxid = yxid;
+	}
+
+	public String getFjid() {
+		return fjid;
+	}
+
+	public void setFjid(String fjid) {
+		this.fjid = fjid;
+	}
+
+	public String getFjmc() {
+		return fjmc;
+	}
+
+	public void setFjmc(String fjmc) {
+		this.fjmc = fjmc;
+	}
+
+}

+ 22 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/service/LhyxService.java

@@ -0,0 +1,22 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.service;
+
+import java.util.List;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.entity.LhyxEntity;
+import com.xt.jygl.workflow.service.BaseWorkFlowService;
+
+
+
+public interface LhyxService extends BaseWorkFlowService{
+	void logicDelete(String id);
+
+	public <S extends LhyxEntity> S save(S entity);
+	
+	public <S extends LhyxEntity> S submit(S entity);
+
+	LhyxEntity findOne(String id);
+	
+	public boolean changeAudit(String shyj,  LhyxEntity entity,
+			boolean flag);
+	List<LhyxEntity> findByJyrid(String jyrid);
+}

+ 17 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/service/LhyxfjService.java

@@ -0,0 +1,17 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.service;
+
+import java.util.List;
+
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.entity.LhyxfjEntity;
+
+public interface LhyxfjService {
+	void logicDelete(String id);
+
+	public <S extends LhyxfjEntity> S save(S entity);
+
+	public void delete(LhyxfjEntity ent);
+
+	LhyxfjEntity findOne(String id);
+
+	List<LhyxfjEntity> findByYxid(String bgid);
+}

+ 108 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/service/impl/LhyxServiceImpl.java

@@ -0,0 +1,108 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.service.impl;
+
+import java.util.Date;
+import java.util.HashMap;
+import java.util.List;
+import java.util.Map;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.xt.jygl.common.Constants;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.dao.LhyxDao;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.entity.LhyxEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.service.LhyxService;
+import com.xt.jygl.workflow.entity.TaskInfoEntity;
+import com.xt.jygl.workflow.param.WorkFlowParam;
+import com.xt.jygl.workflow.service.impl.BaseWorkFlowServiceImpl;
+import com.xtframe.core.support.SecurityMgr;
+import com.xtframe.sec.common.BaseEntity;
+import com.xtframe.sec.common.SecRepository;
+import com.xtframe.sec.utils.SecUtils;
+import com.xtframe.util.StringUtils;
+
+@Service
+public class LhyxServiceImpl extends BaseWorkFlowServiceImpl<LhyxEntity, String> implements LhyxService {
+	@Autowired
+	private LhyxDao dao;
+	@Autowired
+	protected SecurityMgr securityMgr;
+
+	@Override
+	protected SecRepository<LhyxEntity, String> getDao() {
+
+		return this.dao;
+	}
+
+	@Override
+	public <S extends LhyxEntity> S submit(S entity) {
+		if (entity.getRecordStatus() == BaseEntity.RECORD_STATE_REJECT) {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_SUBMIT);
+			entity = this.save(entity);
+			Map<String, Object> variables = new HashMap<String, Object>();
+			WorkFlowParam param = new WorkFlowParam();
+			param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+			param.put(WorkFlowParam.IS_AUDIT, "false");
+			param.put(WorkFlowParam.DESCRIPTION, entity.getJyrmc() + "的理货延续");
+			complete(param, variables);
+		} else {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_SUBMIT);
+			entity = this.save(entity);
+			String gqid = "";
+			if (securityMgr.getCurrUser().getSfjyr().getText().equals("是")) {
+				gqid = entity.getSzgq().getId();
+			}
+			Map<String, Object> variables = new HashMap<String, Object>();
+			variables.put("role_clsc", Constants.ROLE_CLSC + ":" + gqid);
+			variables.put("role_hc", Constants.ROLE_HC + ":" + gqid);
+			variables.put("role_fh", Constants.ROLE_FH + ":" + gqid);
+			variables.put("role_sp", Constants.ROLE_SP + ":" + gqid);
+			WorkFlowParam param = new WorkFlowParam();
+			param.put(WorkFlowParam.DESCRIPTION, entity.getJyrmc() + "的理货延续");
+
+			// 设置流程发起人
+			if (StringUtils.isEmpty(param.getString(WorkFlowParam.AUDIT_USER))) {
+				param.put(WorkFlowParam.AUDIT_USER, SecUtils.getCurrUser().getId().toString());
+			}
+			param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+			// 提交流程
+			create(param, variables);
+		}
+		return entity;
+	}
+
+	
+	@Override
+	public String getProcessDefinitionKey() {
+		return LhyxEntity.PROCESS_DEFINITION_KEY;
+	}
+
+	@Override
+	public boolean changeAudit(String shyj, LhyxEntity entity, boolean flag) {
+		Map<String, Object> variables = new HashMap<String, Object>();
+		variables.put(WorkFlowParam.AUDIT_PASS, flag);
+		WorkFlowParam param = new WorkFlowParam();
+		param.put(WorkFlowParam.AUDIT_DATE, new Date());
+		param.put(WorkFlowParam.AUDIT_TEXT, shyj == null ? "" : shyj);
+		param.put(WorkFlowParam.AUDIT_RESULT, flag);
+		param.put(WorkFlowParam.BUSINESS_KEY, entity.getId());
+		
+		complete(param, variables);
+		List<TaskInfoEntity> list = findByBusIdAndBusKeyAndRecordStatus(entity.getId().toString());
+		if (list == null || list.size() == 0) {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_COMPLETED);
+			entity = this.save(entity);
+			return true;
+		}
+		if (flag == false) {
+			entity.setRecordStatus(BaseEntity.RECORD_STATE_REJECT);
+			this.save(entity);
+		}
+		return false;
+	}
+
+	@Override
+	public List<LhyxEntity> findByJyrid(String jyrid) {
+		return dao.findByJyrid(jyrid);
+	}
+}

+ 30 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/service/impl/LhyxfjServiceImpl.java

@@ -0,0 +1,30 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.service.impl;
+
+import java.util.List;
+
+import org.springframework.beans.factory.annotation.Autowired;
+import org.springframework.stereotype.Service;
+
+import com.xt.jygl.common.service.JyglBaseService;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.dao.LhyxfjDao;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.entity.LhyxfjEntity;
+import com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.service.LhyxfjService;
+import com.xtframe.sec.common.SecRepository;
+
+@Service
+public class LhyxfjServiceImpl extends JyglBaseService<LhyxfjEntity, String> implements LhyxfjService {
+	@Autowired
+	private LhyxfjDao dao;
+
+	@Override
+	protected SecRepository<LhyxfjEntity, String> getDao() {
+
+		return this.dao;
+	}
+
+	@Override
+	public List<LhyxfjEntity> findByYxid(String yxid) {
+		return dao.findByYxid(yxid);
+	}
+
+}

+ 210 - 0
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/gkjylhyx/vo/LhyxVo.java

@@ -0,0 +1,210 @@
+package com.xt.jygl.gkjygl.gklhxkgl.gkjylhyx.vo;
+
+import java.util.Date;
+
+import com.xt.jygl.gkjcxx.gk.entity.GkEntity;
+import com.xt.jygl.gkjcxx.gq.entity.GqEntity;
+import com.xtframe.sec.common.BaseVo;
+
+public class LhyxVo extends BaseVo {
+
+	private String id = null;
+	// 经营人ID
+	private String jyrid = null;
+	// 经营人名称
+	private String jyrmc = null;
+
+	private GkEntity szgk = null;
+
+	private GqEntity szgq = null;
+	// 许可证编号
+	private String xkzbh = null;
+	// 联系人
+	private String lxr = null;
+
+	private String zcdz=null;
+	private String fddbr=null;
+	private String gsyyzzbh=null;
+	private String zczb=null;
+	private String lxdh=null;
+	private String jydy=null;
+	private Date yxrq = null; 
+	private String ygzs = null;
+	private String lhys = null;
+	private String yysr=null;
+	private String lhl=null;
+	private String lxl=null;
+	private String yysrr=null;
+	private String lhll= null;
+	private String lxll= null;
+	// 审批经办人
+	private String spry = null;
+	private String taskState = null;
+	
+	private String oneyear =null;
+	private String twoyear = null;
+	
+
+	public String getOneyear() {
+		return oneyear;
+	}
+
+	public void setOneyear(String oneyear) {
+		this.oneyear = oneyear;
+	}
+
+	public String getTwoyear() {
+		return twoyear;
+	}
+
+	public void setTwoyear(String twoyear) {
+		this.twoyear = twoyear;
+	}
+
+	public String getId() {
+		return id;
+	}
+	public void setId(String id) {
+		this.id = id;
+	}
+	public String getJyrid() {
+		return jyrid;
+	}
+	public void setJyrid(String jyrid) {
+		this.jyrid = jyrid;
+	}
+	public String getJyrmc() {
+		return jyrmc;
+	}
+	public void setJyrmc(String jyrmc) {
+		this.jyrmc = jyrmc;
+	}
+	public GkEntity getSzgk() {
+		return szgk;
+	}
+	public void setSzgk(GkEntity szgk) {
+		this.szgk = szgk;
+	}
+	public GqEntity getSzgq() {
+		return szgq;
+	}
+	public void setSzgq(GqEntity szgq) {
+		this.szgq = szgq;
+	}
+	public String getXkzbh() {
+		return xkzbh;
+	}
+	public void setXkzbh(String xkzbh) {
+		this.xkzbh = xkzbh;
+	}
+	public String getLxr() {
+		return lxr;
+	}
+	public void setLxr(String lxr) {
+		this.lxr = lxr;
+	}
+	public String getZcdz() {
+		return zcdz;
+	}
+	public void setZcdz(String zcdz) {
+		this.zcdz = zcdz;
+	}
+	public String getFddbr() {
+		return fddbr;
+	}
+	public void setFddbr(String fddbr) {
+		this.fddbr = fddbr;
+	}
+	public String getGsyyzzbh() {
+		return gsyyzzbh;
+	}
+	public void setGsyyzzbh(String gsyyzzbh) {
+		this.gsyyzzbh = gsyyzzbh;
+	}
+	public String getZczb() {
+		return zczb;
+	}
+	public void setZczb(String zczb) {
+		this.zczb = zczb;
+	}
+	public String getLxdh() {
+		return lxdh;
+	}
+	public void setLxdh(String lxdh) {
+		this.lxdh = lxdh;
+	}
+	public String getJydy() {
+		return jydy;
+	}
+	public void setJydy(String jydy) {
+		this.jydy = jydy;
+	}
+	public Date getYxrq() {
+		return yxrq;
+	}
+	public void setYxrq(Date yxrq) {
+		this.yxrq = yxrq;
+	}
+	public String getYgzs() {
+		return ygzs;
+	}
+	public void setYgzs(String ygzs) {
+		this.ygzs = ygzs;
+	}
+	public String getLhys() {
+		return lhys;
+	}
+	public void setLhys(String lhys) {
+		this.lhys = lhys;
+	}
+	public String getYysr() {
+		return yysr;
+	}
+	public void setYysr(String yysr) {
+		this.yysr = yysr;
+	}
+	public String getLhl() {
+		return lhl;
+	}
+	public void setLhl(String lhl) {
+		this.lhl = lhl;
+	}
+	public String getLxl() {
+		return lxl;
+	}
+	public void setLxl(String lxl) {
+		this.lxl = lxl;
+	}
+	public String getYysrr() {
+		return yysrr;
+	}
+	public void setYysrr(String yysrr) {
+		this.yysrr = yysrr;
+	}
+	public String getLhll() {
+		return lhll;
+	}
+	public void setLhll(String lhll) {
+		this.lhll = lhll;
+	}
+	public String getLxll() {
+		return lxll;
+	}
+	public void setLxll(String lxll) {
+		this.lxll = lxll;
+	}
+	public String getSpry() {
+		return spry;
+	}
+	public void setSpry(String spry) {
+		this.spry = spry;
+	}
+	public String getTaskState() {
+		return taskState;
+	}
+	public void setTaskState(String taskState) {
+		this.taskState = taskState;
+	}
+
+	
+}

+ 0 - 20
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/service/LhxkglService.java

@@ -1,20 +0,0 @@
-package com.xt.jygl.gkjygl.gklhxkgl.service;
-
-import java.util.List;
-
-
-import com.xt.jygl.gkjygl.gklhxkgl.entity.LhxkglEntity;
-import com.xt.jygl.workflow.service.BaseWorkFlowService;
-
-public interface LhxkglService extends BaseWorkFlowService {
-	void logicDelete(String id);
-
-	public <S extends LhxkglEntity> S save(S entity);
-
-	public <S extends LhxkglEntity> S submit(S entity);
-
-	LhxkglEntity findById(String id);
-
-	List<LhxkglEntity> findByJyrid(String jyrid);
-
-}

+ 0 - 50
gkjsjy/trunk/src/com/xt/jygl/gkjygl/gklhxkgl/service/impl/LhxkglServiceImpl.java

@@ -1,50 +0,0 @@
-package com.xt.jygl.gkjygl.gklhxkgl.service.impl;
-
-import java.util.List;
-
-import org.springframework.beans.factory.annotation.Autowired;
-import org.springframework.stereotype.Service;
-
-import com.xt.jygl.gkjygl.gklhxkgl.dao.LhxkglDao;
-import com.xt.jygl.gkjygl.gklhxkgl.entity.LhxkglEntity;
-import com.xt.jygl.gkjygl.gklhxkgl.service.LhxkglService;
-import com.xt.jygl.workflow.service.impl.BaseWorkFlowServiceImpl;
-import com.xtframe.sec.common.SecRepository;
-
-@Service
-public class LhxkglServiceImpl extends BaseWorkFlowServiceImpl<LhxkglEntity, String> implements LhxkglService {
-	@Autowired
-	private LhxkglDao dao;
-
-	@Override
-	public <S extends LhxkglEntity> S submit(S entity) {
-		return null;
-	}
-
-	@Override
-	public List<LhxkglEntity> findByJyrid(String jyrid) {
-		return dao.findByJyrid(jyrid);
-	}
-
-	@Override
-	public String getProcessDefinitionKey() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	@Override
-	protected SecRepository<LhxkglEntity, String> getDao() {
-		// TODO Auto-generated method stub
-		return null;
-	}
-
-	@Override
-	public LhxkglEntity findById(String id) {
-		// TODO Auto-generated method stub
-		return dao.findById(id);
-	}
-
-
-	}
-
-