Bläddra i källkod

发票管理代码修改

user5 3 år sedan
förälder
incheckning
46544a83de

+ 26 - 9
src/main/java/com/jeeplus/modules/workinvoice/service/WorkInvoiceAllService.java

@@ -21,6 +21,7 @@ import com.jeeplus.modules.sys.entity.Office;
 import com.jeeplus.modules.sys.entity.Role;
 import com.jeeplus.modules.sys.entity.User;
 import com.jeeplus.modules.sys.entity.Workattachment;
+import com.jeeplus.modules.sys.service.AreaService;
 import com.jeeplus.modules.sys.service.OfficeService;
 import com.jeeplus.modules.sys.service.WorkattachmentService;
 import com.jeeplus.modules.sys.utils.UserUtils;
@@ -117,6 +118,8 @@ public class WorkInvoiceAllService extends CrudService<WorkInvoiceDao, WorkInvoi
 	private WorkattachmentService workattachmentService;
 	@Autowired
 	private WorkContractInfoService contractInfoService;
+	@Autowired
+	private AreaService areaService;
 
 	private static byte[] SYN_BYTE = new byte[0];
 
@@ -137,10 +140,10 @@ public class WorkInvoiceAllService extends CrudService<WorkInvoiceDao, WorkInvoi
 			workInvoice.setWorkReceiptList(receiptList);
 
 			if (workInvoice != null) {
-				if (workInvoice.getProject() != null) {
+				/*if (workInvoice.getProject() != null) {
 					ProjectRecords project = projectRecordsService.getRuralInfo(workInvoice.getProject().getId());
 					workInvoice.setProject(project);
-				}
+				}*/
 				if (StringUtils.isNotBlank(workInvoice.getId())) {
 					WorkInvoiceDetail workInvoiceDetail = new WorkInvoiceDetail();
 					workInvoiceDetail.setInvoiceId(workInvoice.getId());
@@ -169,6 +172,17 @@ public class WorkInvoiceAllService extends CrudService<WorkInvoiceDao, WorkInvoi
 					projectRelation.setWorkContractName(projectRelation.getDetails());
 				}
 			}
+			//如果发票对账地区为空,则将第一个项目信息的所在地添加到对账地区
+			if(StringUtils.isBlank(workInvoice.getArea().getId())){
+				//判定项目是否存在
+				if(0 < projectRelationList.size()){
+					if(projectRelationList.get(0).getIsProject()==1){
+						workInvoice.setArea(areaService.get(ruralProjectRecordsService.get(projectRelationList.get(0).getProjectId()).getArea()));
+					}
+				}
+			}else{
+				workInvoice.setArea(areaService.get(workInvoice.getArea().getId()));
+			}
 			workInvoice.setWorkInvoiceProjectRelationList(projectRelationList);
 			//查找发票的附件信息
 			if(null != workInvoice){
@@ -1146,6 +1160,9 @@ public class WorkInvoiceAllService extends CrudService<WorkInvoiceDao, WorkInvoi
 			}else {
 				comment = ("yes".equals(workInvoice.getAct().getFlag())?"[同意] ":"[驳回] ")+workInvoice.getAct().getComment();
 			}
+		//项目名称获取
+		List<String> projectNameList = getProjectNameList(workInvoice);
+		String projectNameStr = String.join(",", projectNameList);
 			//yes 的时候状态为审核通过 否则为未通过
 			//2 审核中 4 驳回
 			workInvoice.setInvoiceState(("yes".equals(workInvoice.getAct().getFlag()) ? "2" : "4"));
@@ -1278,12 +1295,12 @@ public class WorkInvoiceAllService extends CrudService<WorkInvoiceDao, WorkInvoi
 			boolean state = actTaskService.isProcessEnd(workInvoice.getAct().getProcInsId());
 			List<User> users = new ArrayList<>();
 			List<User> userList = new ArrayList<>();
-			ProjectRecords projectRecords = projectRecordsService.getRuralMasters(workInvoice.getProject().getId());
+			//ProjectRecords projectRecords = projectRecordsService.getRuralMasters(workInvoice.getProject().getId());
 		if (!state) {
 				users.add(workInvoice.getCreateBy());
 				if ("yes".equals(workInvoice.getAct().getFlag())) {
-					title = "项目【"+ projectRecords.getProjectName() +"】发票申请通过";
-					str = "项目【"+ projectRecords.getProjectName() +"】发票申请通过,发票申请编号:"+workInvoice.getNumber();
+					title = "项目【"+ projectNameStr +"】发票申请通过";
+					str = "项目【"+ projectNameStr +"】发票申请通过,发票申请编号:"+workInvoice.getNumber();
 					workInvoice.setInvoiceState("5");
 					WorkProjectNotify notify = new WorkProjectNotify();
 					notify.setNotifyId(workInvoice.getId());
@@ -1366,8 +1383,8 @@ public class WorkInvoiceAllService extends CrudService<WorkInvoiceDao, WorkInvoi
 
 				} else {
 					if (!"yes".equals(workInvoice.getAct().getFlag())) {//驳回待办提醒
-						title = "项目【"+ projectRecords.getProjectName() +"】发票申请被驳回";
-						str = "项目【"+ projectRecords.getProjectName() +"】发票申请被驳回,请选择重新申请或作废";
+						title = "项目【"+ projectNameStr +"】发票申请被驳回";
+						str = "项目【"+ projectNameStr +"】发票申请被驳回,请选择重新申请或作废";
 						WorkProjectNotify notify = new WorkProjectNotify();
 						notify.setNotifyId(workInvoice.getId());
 						userList = workProjectNotifyService.readByNotifyId(notify);
@@ -1385,8 +1402,8 @@ public class WorkInvoiceAllService extends CrudService<WorkInvoiceDao, WorkInvoi
 						users.add( workInvoice.getCreateBy());
 					} else {
 						if (StringUtils.isNotBlank(enname)) {//驳回重新申请待办
-							title = "项目【"+ projectRecords.getProjectName() +"】发票重新申请,待审批";
-							str = "项目【"+ projectRecords.getProjectName() +"】发票重新申请,待审批,发票申请编号:"+workInvoice.getNumber();;
+							title = "项目【"+ projectNameStr +"】发票重新申请,待审批";
+							str = "项目【"+ projectNameStr +"】发票重新申请,待审批,发票申请编号:"+workInvoice.getNumber();;
 							WorkProjectNotify notify = new WorkProjectNotify();
 							notify.setNotifyId(workInvoice.getId());
 							userList = workProjectNotifyService.readByNotifyId(notify);

+ 19 - 3
src/main/java/com/jeeplus/modules/workinvoice/web/WorkInvoiceAllController.java

@@ -322,7 +322,19 @@ public class WorkInvoiceAllController extends BaseController {
 					break;
 				}
 			}
-			view = "workInvoiceAllModify";
+			ProcessInstance processInstance = actTaskService.getProcIns(workInvoice.getProcessInstanceId());
+			if (processInstance!=null) {
+				Task taskInfok = actTaskService.getCurrentTaskInfo(processInstance);
+				Act act = new Act();
+				act.setTaskId(taskInfok.getId());
+				act.setTaskName(taskInfok.getName());
+				act.setTaskDefKey(taskInfok.getTaskDefinitionKey());
+				act.setProcDefId(taskInfok.getProcessDefinitionId());
+				act.setProcInsId(taskInfok.getProcessInstanceId());
+				act.setTask(taskInfok);
+				workInvoice.setAct(act);
+				view = "workInvoiceAllModify";
+			}
 		}
 		// 环节编号
 		String taskDefKey = workInvoice.getAct().getTaskDefKey();
@@ -618,15 +630,19 @@ public class WorkInvoiceAllController extends BaseController {
 			WorkInvoice t = workInvoiceService.get(workInvoice.getId());//从数据库取出记录的值
 			MyBeanUtils.copyBeanNotNull2Bean(workInvoice, t);//将编辑表单中的非NULL值覆盖数据库记录中的值
 			workInvoiceService.save(t);//保存
+			//开票与项目关系处理
+			workInvoiceService.updateWorkInvoiceProjectRelationInfo(workInvoice);
 		}else{//新增表单保存
-			WorkClientInfo workClientInfo =workClientInfoService.get(workInvoice.getClient().getId());
+			/*WorkClientInfo workClientInfo =workClientInfoService.get(workInvoice.getClient().getId());
 			ProjectRecords workProject =projectRecordsService.getRuralProjectRecodes(workInvoice.getProject().getId());
 			workInvoice.setClient(workClientInfo);
-			workInvoice.setProject(workProject);
+			workInvoice.setProject(workProject);*/
 			workInvoice.setCompanyId(UserUtils.getSelectCompany().getId());
 			workInvoice.setOffice(UserUtils.getSelectOffice());
 			workInvoice.setInvoiceState("1");
 			workInvoiceService.save(workInvoice);//保存
+			//开票与项目关系处理
+			workInvoiceService.updateWorkInvoiceProjectRelationInfo(workInvoice);
 		}
 		addMessage(redirectAttributes, "保存发票成功");
 		return "redirect:"+Global.getAdminPath()+"/workinvoiceAll/workInvoiceAll/?repage";

+ 9 - 9
src/main/webapp/webpage/modules/workinvoice/workInvoiceAllForm.jsp

@@ -943,35 +943,35 @@
                                             <input id="workAccountList{{idx}}_delFlag" name="workAccountList[{{idx}}].delFlag" type="hidden" value="0"/>
                                         </td>
                                     	<td>
-                                        	<input id="workAccountList{{idx}}_code" name="workAccountList[{{idx}}].code" type="text" value="{{row.code}}"    class="form-control judgment"/>
+                                        	<input id="workAccountList{{idx}}_code" name="workAccountList[{{idx}}].code" type="text" value="{{row.code}}"    class="form-control"/>
                                    		 </td>
                                     	 <td>
-                                        	<input id="workAccountList{{idx}}_number" name="workAccountList[{{idx}}].number" type="text" value="{{row.number}}"    class="form-control judgment"/>
+                                        	<input id="workAccountList{{idx}}_number" name="workAccountList[{{idx}}].number" type="text" value="{{row.number}}"    class="form-control"/>
                                    		 </td>
                                     	<td>
-                                            <input id="workAccountList{{idx}}_totalMoney"  name="workAccountList[{{idx}}].totalMoney" type="text" value="{{row.totalMoney}}"    class="form-control judgment"/>
+                                            <input id="workAccountList{{idx}}_totalMoney"  name="workAccountList[{{idx}}].totalMoney" type="text" value="{{row.totalMoney}}"    class="form-control"/>
                                         </td>
                                         <td>
                                         <div class="input-group">
-                                            <input id="workAccountList{{idx}}_tax" onblur="setTaxMoney(this)" name="workAccountList[{{idx}}].tax" type="text" value="{{row.tax}}"    class="form-control number judgment"/><span class="input-group-addon">%</span>
+                                            <input id="workAccountList{{idx}}_tax" onblur="setTaxMoney(this)" name="workAccountList[{{idx}}].tax" type="text" value="{{row.tax}}"    class="form-control number"/><span class="input-group-addon">%</span>
                                             </div>
 
                                         </td>
                                         <td>
-                                            <input id="workAccountList{{idx}}_taxMoney" name="workAccountList[{{idx}}].taxMoney" type="text" value="{{row.taxMoney}}"    class="form-control judgment"/>
+                                            <input id="workAccountList{{idx}}_taxMoney" name="workAccountList[{{idx}}].taxMoney" type="text" value="{{row.taxMoney}}"    class="form-control"/>
                                         </td>
 										<td>
-                                            <input id="workAccountList{{idx}}_taxRate" name="workAccountList[{{idx}}].taxRate" type="text" value="{{row.taxRate}}"    class="form-control judgment"/>
+                                            <input id="workAccountList{{idx}}_taxRate" name="workAccountList[{{idx}}].taxRate" type="text" value="{{row.taxRate}}"    class="form-control"/>
                                         </td>
                                         <td>
-                                            <input id="workAccountList{{idx}}_incomeMoney" name="workAccountList[{{idx}}].incomeMoney" type="text" value="0"  readonly="true"  class="form-control judgment"/>
+                                            <input id="workAccountList{{idx}}_incomeMoney" name="workAccountList[{{idx}}].incomeMoney" type="text" value="0"  readonly="true"  class="form-control"/>
                                         </td>
 
                                             <input id="workAccountList{{idx}}_state" name="workAccountList[{{idx}}].state"  type="hidden" value="正常"   class="form-control"/>
 
-                                            <input id="workAccountList{{idx}}_backSign" name="workAccountList[{{idx}}].backSign"  type="hidden" value="正常"  readonly="true"  class="form-control judgment"/>
+                                            <input id="workAccountList{{idx}}_backSign" name="workAccountList[{{idx}}].backSign"  type="hidden" value="正常"  readonly="true"  class="form-control"/>
 
-                                            <input id="workAccountList{{idx}}_backNumber" name="workAccountList[{{idx}}].backNumber"  type="hidden" value=""  readonly="true"  class="form-control judgment"/>
+                                            <input id="workAccountList{{idx}}_backNumber" name="workAccountList[{{idx}}].backNumber"  type="hidden" value=""  readonly="true"  class="form-control"/>
 
 
                                         <td class="text-center op-td">

+ 1 - 1
src/main/webapp/webpage/modules/workinvoice/workInvoiceAllList.jsp

@@ -751,7 +751,7 @@
                     ,"money":"<fmt:formatNumber value="${workInvoice.money}" pattern="##0.00"/>"
                     ,"createDate":"<fmt:formatDate value="${workInvoice.createDate}" pattern="yyyy-MM-dd"/>"
                     ,"receiptMoneyDate":"<fmt:formatDate value="${workInvoice.receiptMoneyDate}" pattern="yyyy-MM-dd"/>"
-                    <c:if test="${workInvoice.invoiceState == 1 && fns:getUser().id == workInvoice.createBy.id}"><shiro:hasPermission name="workinvoice:workInvoice:edit">,"canedit1":"1"</shiro:hasPermission></c:if><%--暂存-修改--%>
+                    <c:if test="${workInvoice.invoiceState == '1' && fns:getUser().id == workInvoice.createBy.id}"><shiro:hasPermission name="workinvoice:workInvoice:edit">,"canedit1":"1"</shiro:hasPermission></c:if><%--暂存-修改--%>
                     <c:if test="${workInvoice.invoiceState == '4' && fns:getUser().id == workInvoice.createBy.id}">,"canedit2":"1"</c:if><%--驳回--修改--%>
                     <c:if test="${workInvoice.invoiceState == '9' && fns:getUser().id == workInvoice.createBy.id}">,"conditionCanedit":"1"</c:if><%--驳回--修改--%>
                     <c:if test="${workInvoice.invoiceState == '11' && fns:getUser().id == workInvoice.createBy.id}">,"conditionCanedit3":"1"</c:if><%--作废撤回--修改--%>

Filskillnaden har hållts tillbaka eftersom den är för stor
+ 791 - 365
src/main/webapp/webpage/modules/workinvoice/workInvoiceAllModify.jsp