Commit 983e71b7 authored by 刘学辉's avatar 刘学辉

采购申请审批和采购订单调整

parent 323bdddb
...@@ -593,9 +593,23 @@ function doSavePerson() { ...@@ -593,9 +593,23 @@ function doSavePerson() {
var _self = this; var _self = this;
var id = getId(); var id = getId();
var type = $("#type").val(); var type = $("#type").val();
var isSapPerson=$("#isSapPerson").val();
if (isSapPerson=="1") { //是SAP员工
var code = $("#code").val();
if (code.length>10){
Public.errorTip("员工编号必须是0000000001~0000099999");
}
code=code.replace(/\b(0+)/gi,"");
var reg = /^([1-9]\d*|[1-9]\d{0,5})$/
// alert(reg.test(code));
if (!reg.test(code)||code.length>5){
Public.errorTip("员工编号必须是0000000001~0000099999");
return false;
}
}
var param = {}; var param = {};
var url = web_app.name + (id ? '/org/updatePerson.ajax' : '/org/insertPerson.ajax'); var url = web_app.name + (id ? '/org/updatePerson.ajax' : '/org/insertPerson.ajax');
$('#submitForm').ajaxSubmit({ url: url, param: param, success: function () { $('#submitForm').ajaxSubmit({ url: url, param: param, success: function () {
Public.ajax(web_app.name + "/syncOrg/insertOrUpdatePersonToSap.ajax",{code:$("#code").val(),flag:type=='S'?"U":"I"},function () { Public.ajax(web_app.name + "/syncOrg/insertOrUpdatePersonToSap.ajax",{code:$("#code").val(),flag:type=='S'?"U":"I"},function () {
......
...@@ -24,6 +24,7 @@ import com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalVo; ...@@ -24,6 +24,7 @@ import com.huigou.topsun.sap.purchaseApproval.domain.vo.SapPurchaseApprovalVo;
import com.huigou.topsun.sap.purchaseApproval.repository.SapPurchaseApprovalRepository; import com.huigou.topsun.sap.purchaseApproval.repository.SapPurchaseApprovalRepository;
import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder; import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder;
import com.huigou.uasp.bmp.common.BizBillStatus; import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bmp.fn.CodeGenerator;
import com.huigou.uasp.bmp.operator.OperatorApplication; import com.huigou.uasp.bmp.operator.OperatorApplication;
import com.huigou.uasp.bpm.FlowBroker; import com.huigou.uasp.bpm.FlowBroker;
import com.huigou.uasp.bpm.ProcessAction; import com.huigou.uasp.bpm.ProcessAction;
...@@ -32,6 +33,8 @@ import com.huigou.uasp.bpm.engine.application.WorkflowApplication; ...@@ -32,6 +33,8 @@ import com.huigou.uasp.bpm.engine.application.WorkflowApplication;
import com.huigou.util.*; import com.huigou.util.*;
import org.activiti.engine.delegate.DelegateExecution; import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
import org.activiti.engine.impl.persistence.entity.ExecutionEntity;
import org.activiti.engine.impl.persistence.entity.TaskEntity;
import org.activiti.engine.runtime.ProcessInstance; import org.activiti.engine.runtime.ProcessInstance;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
...@@ -62,6 +65,9 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa ...@@ -62,6 +65,9 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
DefaultHttpClient defaultHttpClient; DefaultHttpClient defaultHttpClient;
@Autowired @Autowired
SapMutualEpLogApplication sapMutualEpLogApplication; SapMutualEpLogApplication sapMutualEpLogApplication;
@Autowired
private CodeGenerator codeGenerator;
@Override @Override
protected String saveBizAndApprovalData() { protected String saveBizAndApprovalData() {
super.saveBizAndApprovalData(); super.saveBizAndApprovalData();
...@@ -213,10 +219,12 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa ...@@ -213,10 +219,12 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
@Override @Override
@Transactional @Transactional
public void saveSapPurchaseApprovalVo(SapPurchaseApprovalDto sapPurchaseApprovalDto) { public void saveSapPurchaseApprovalVo(SapPurchaseApprovalDto sapPurchaseApprovalDto) {
// SapPurchaseApproval sapPurchaseApprovalVo = new SapPurchaseApproval();
SapPurchaseApproval purchaseApproval=sapPurchaseApprovalRepository.findAllByBanfn(sapPurchaseApprovalDto.getLsDeader().getBanfn());
SapPurchaseApproval sapPurchaseApproval = new SapPurchaseApproval(); SapPurchaseApproval sapPurchaseApproval = new SapPurchaseApproval();
BeanUtil.copyProperties(sapPurchaseApprovalDto.getLsDeader(),sapPurchaseApproval);
//初始化用户信息 //初始化用户信息
String createdById = "5EEB2DC861694A65933CB4CE9A8D870A@C18E23AAAA6940E09DF7C122332C51E0"; /* String createdById = "5EEB2DC861694A65933CB4CE9A8D870A@C18E23AAAA6940E09DF7C122332C51E0";
Operator operator = operatorApplication.createOperatorByPersonMemberId(createdById); Operator operator = operatorApplication.createOperatorByPersonMemberId(createdById);
sapPurchaseApproval.setDefaultValues(new OrgUnit(operator.getFullId(), operator.getFullName())); sapPurchaseApproval.setDefaultValues(new OrgUnit(operator.getFullId(), operator.getFullName()));
...@@ -224,6 +232,20 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa ...@@ -224,6 +232,20 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
String bizId = this.startProcessInstance(SapPurchaseApprovalApplication.PROCESS_DEFINITION_KEY, formData); String bizId = this.startProcessInstance(SapPurchaseApprovalApplication.PROCESS_DEFINITION_KEY, formData);
sapPurchaseApproval.setId(bizId); sapPurchaseApproval.setId(bizId);
sapPurchaseApproval = this.sapPurchaseApprovalRepository.save(sapPurchaseApproval); sapPurchaseApproval = this.sapPurchaseApprovalRepository.save(sapPurchaseApproval);
*/
//发起流程 05.11 lxh
BeanUtil.copyProperties(sapPurchaseApprovalDto.getLsDeader(), sapPurchaseApproval);
String nextCode = codeGenerator.getNextCode("sapPurchaseApproval");
sapPurchaseApproval.setBillCode(nextCode);
sapPurchaseApproval = mannualStartWorkflow(sapPurchaseApproval);
// purchaseOrderId = sapPurchaseApproval.getId();
if (purchaseApproval == null) {
} else{
//将存在的作废掉 05.11 lxh
purchaseApproval.setStatusId(BizBillStatus.ABORTED.getId());
this.sapPurchaseApprovalRepository.save(purchaseApproval);
}
List<SapPurchaseApprovalItemVo> approvalItemVoList = sapPurchaseApprovalDto.getItems(); List<SapPurchaseApprovalItemVo> approvalItemVoList = sapPurchaseApprovalDto.getItems();
List<SapPurchaseApprovalItem> sapPurchaseApprovalItems = new ArrayList<>(); List<SapPurchaseApprovalItem> sapPurchaseApprovalItems = new ArrayList<>();
...@@ -267,6 +289,70 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa ...@@ -267,6 +289,70 @@ public class SapPurchaseApprovalApplicationImpl extends FlowBroker implements Sa
return businessKey; return businessKey;
} }
/**
* 启动流程
*/
private SapPurchaseApproval mannualStartWorkflow(SapPurchaseApproval sapPurchaseApproval) {
Operator operator = null;
operator = ThreadLocalUtil.getOperator();
if (operator == null) {
String createdById = "5EEB2DC861694A65933CB4CE9A8D870A@C18E23AAAA6940E09DF7C122332C51E0";
operator = operatorApplication.createOperatorByPersonMemberId(createdById);
ThreadLocalUtil.putOperator(operator);
}
// Assert.notNull(operator, "未获取到当前操作用户,无法创建流程");
SDO sdo = ThreadLocalUtil.getVariable(Constants.SDO, SDO.class);
if (sdo == null) {
sdo = new SDO();
}
try {
// 业务数据
Map<String, Object> map = ClassHelper.beanToMap(sapPurchaseApproval);
sdo.setProperties(map);
// 启动流程的必要参数
sdo.putProperty("fullId", operator.getFullId());
sdo.putProperty("organId", operator.getOrgId());
sdo.putProperty("organName", operator.getOrgName());
sdo.putProperty("deptId", operator.getDeptId());
sdo.putProperty("deptName", operator.getDeptName());
sdo.putProperty("positionId", operator.getPositionId());
sdo.putProperty("positionName", operator.getPositionName());
sdo.putProperty("personMemberId", operator.getPersonMemberId());
sdo.putProperty("personMemberName", operator.getPersonMemberName());
sdo.putProperty("processAction", ProcessAction.SAVE);
sdo.putProperty("procUnitId", "");
// sdo.putProperty("bizId", purchaseOrder.getId());
sdo.putProperty("createdDate", new Date());
sdo.putProperty("fillinDate", new Date());
sdo.putProperty("billCode", sapPurchaseApproval.getBillCode());
ThreadLocalUtil.putVariable(Constants.SDO, sdo);
Map<String, Object> variables = new HashMap<>();
variables.put("startModel", ProcessStartModel.MANUAL.getId());
variables.put("executorFullId", operator.getFullId());
variables.put("executorFullName", operator.getFullName());
ThreadLocalUtil.putOperator(operator);
ExecutionEntity pi = (ExecutionEntity) workflowApplication.startProcessInstanceByKey(PROCESS_DEFINITION_KEY, null, variables);
// 业务参数
TaskEntity applyTask = pi.getTasks().get(0);
sdo.putProperty("processAction", ProcessAction.ADVANCE);
sdo.putProperty("bizId", pi.getBusinessKey());
sdo.putProperty("id", pi.getBusinessKey());
sdo.putProperty("statusId", BizBillStatus.APPLYING.getId());
ThreadLocalUtil.removeVariable("_approvalParameter_");
ThreadLocalUtil.putVariable(Constants.SDO, sdo);
workflowApplication.advance(applyTask.getId(), Collections.emptyMap());
return this.sapPurchaseApprovalRepository.findOne(pi.getBusinessKey());
}catch(Exception ex){
ex.printStackTrace();
throw ex;
}
}
private SDO buildSDO(Map<String, Object> formData) { private SDO buildSDO(Map<String, Object> formData) {
//String createdById = (String) formData.get("createdById"); //String createdById = (String) formData.get("createdById");
//暂定管理员id //暂定管理员id
......
package com.huigou.topsun.sap.purchaseApproval.repository; package com.huigou.topsun.sap.purchaseApproval.repository;
import com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval; import com.huigou.topsun.sap.purchaseApproval.domain.SapPurchaseApproval;
import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder;
import org.springframework.data.jpa.repository.JpaRepository; import org.springframework.data.jpa.repository.JpaRepository;
/** /**
...@@ -9,4 +10,6 @@ import org.springframework.data.jpa.repository.JpaRepository; ...@@ -9,4 +10,6 @@ import org.springframework.data.jpa.repository.JpaRepository;
* @Description: * @Description:
*/ */
public interface SapPurchaseApprovalRepository extends JpaRepository<SapPurchaseApproval,String> { public interface SapPurchaseApprovalRepository extends JpaRepository<SapPurchaseApproval,String> {
SapPurchaseApproval findAllByBanfn(String banfn);
} }
...@@ -201,7 +201,6 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu ...@@ -201,7 +201,6 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu
SapPurchaseOrder purchaseOrder = sapPurchaseOrderRepository.findAllByEbeln(sapPurchaseOrderVo.getEbeln()); SapPurchaseOrder purchaseOrder = sapPurchaseOrderRepository.findAllByEbeln(sapPurchaseOrderVo.getEbeln());
String purchaseOrderId = ""; String purchaseOrderId = "";
//数据第一次接收,创建流程任务 //数据第一次接收,创建流程任务
// if (purchaseOrder == null) { //存在也新建 04.28注释的
SapPurchaseOrder sapPurchaseOrder = new SapPurchaseOrder(); SapPurchaseOrder sapPurchaseOrder = new SapPurchaseOrder();
BeanUtil.copyProperties(sapPurchaseOrderVo, sapPurchaseOrder); BeanUtil.copyProperties(sapPurchaseOrderVo, sapPurchaseOrder);
//初始化用户信息 //初始化用户信息
...@@ -222,17 +221,20 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu ...@@ -222,17 +221,20 @@ public class SapPurchaseOrderApplicationImpl extends FlowBroker implements SapPu
purchaseOrderId = sapPurchaseOrder.getId(); purchaseOrderId = sapPurchaseOrder.getId();
// sapPurchaseOrder = this.sapPurchaseOrderRepository.save(sapPurchaseOrder); // sapPurchaseOrder = this.sapPurchaseOrderRepository.save(sapPurchaseOrder);
// purchaseOrderId = sapPurchaseOrder.getId(); // purchaseOrderId = sapPurchaseOrder.getId();
if (purchaseOrder == null) { //存在也新建 04.28注释的 05.11 把存在的作废掉
} else {
//将存在的作废掉 05.11 lxh
purchaseOrder.setStatusId(BizBillStatus.ABORTED.getId());
this.sapPurchaseOrderRepository.save(purchaseOrder);
/* } else {
//数据第n次接收覆盖上一次数据 //数据第n次接收覆盖上一次数据
BeanUtil.copyProperties(sapPurchaseOrderVo, purchaseOrder); /* BeanUtil.copyProperties(sapPurchaseOrderVo, purchaseOrder);
this.sapPurchaseOrderRepository.save(purchaseOrder); this.sapPurchaseOrderRepository.save(purchaseOrder);
List<SapPurchaseOrderItem> purchaseOrderItems = sapPurchaseOrderItemApplication.getPurchaseOrderItems(purchaseOrder.getId()); List<SapPurchaseOrderItem> purchaseOrderItems = sapPurchaseOrderItemApplication.getPurchaseOrderItems(purchaseOrder.getId());
sapPurchaseOrderItemApplication.deletePurchaseOrderItems(purchaseOrderItems); sapPurchaseOrderItemApplication.deletePurchaseOrderItems(purchaseOrderItems);
purchaseOrderId = purchaseOrder.getId(); purchaseOrderId = purchaseOrder.getId();*/
} */ } // lxh 04.28
List<SapPurchaseOrderItemVo> ltItems = sapPurchaseOrderDto.getLtItems(); List<SapPurchaseOrderItemVo> ltItems = sapPurchaseOrderDto.getLtItems();
List<SapPurchaseOrderItem> purchaseOrderItems = new ArrayList<>(); List<SapPurchaseOrderItem> purchaseOrderItems = new ArrayList<>();
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment