Commit 0489fe8d authored by 鲁鑫's avatar 鲁鑫

EP变更单bug修改

parent 14a5b67b
...@@ -38,7 +38,9 @@ function bindEvent(){ ...@@ -38,7 +38,9 @@ function bindEvent(){
}, },
onChange: function (value, data) { onChange: function (value, data) {
$('#pd').val(value.value); $('#pd').val(value.value);
$('#changedPd').val(value.value);
$('#productName').val(value.text); $('#productName').val(value.text);
$('#changedProductName').val(value.text);
} }
}); });
...@@ -83,33 +85,8 @@ function loadGrid() { ...@@ -83,33 +85,8 @@ function loadGrid() {
}); });
gridManager = UICtrl.grid("#maingrid", { gridManager = UICtrl.grid("#maingrid", {
columns: [ columns: [
// {display : "部门",name : "deptName",width : 200,minWidth : 100,type : "string",align : "left",
// editor: { required : true, type: "dynamic",
// getEditor:function (row) {
// var org = "return { type:'tree',data:{name:'org',filter:'ogn',getParam:function(){return {orgRoot:'orgRoot',orgKindId:'ogn'};}},textField:'deptName',valueField:'deptId' }";
// org = (new Function(org))();
// return org;
// }
// }
// },
{ {
display: "部门", name: "deptName", width: 200, minWidth: 60, type: "string", align: "left", display: "部门", name: "deptName", width: 200, minWidth: 60, type: "string", align: "left",
// editor: {
// type: 'tree',
// required: true,
// data: {
// name: 'org',
// filter: 'dpt',
// minWidth: 250,
// getParam:function(){
// return {
// orgRoot: "orgRoot",
// orgKindId: "ogn,dpt"
// }
// },
// },
// textField: 'deptName'
// }
editor: { editor: {
type: 'tree', type: 'tree',
required: true, required: true,
...@@ -117,6 +94,9 @@ function loadGrid() { ...@@ -117,6 +94,9 @@ function loadGrid() {
name: 'org', name: 'org',
filter: 'dpt', filter: 'dpt',
minWidth: 250, minWidth: 250,
param: {
orgRoot: "14636F3F48934EE7811768692A0AC5E1"
}
}, },
textField: 'deptName', textField: 'deptName',
valueField: 'deptId' valueField: 'deptId'
...@@ -133,7 +113,7 @@ function loadGrid() { ...@@ -133,7 +113,7 @@ function loadGrid() {
filter: 'psm', filter: 'psm',
minWidth: 250, minWidth: 250,
param: { param: {
orgRoot: "18FFF477AEEE4609B798015231B400C3" orgRoot: "14636F3F48934EE7811768692A0AC5E1"
} }
}, },
textField: 'executor', textField: 'executor',
...@@ -141,11 +121,18 @@ function loadGrid() { ...@@ -141,11 +121,18 @@ function loadGrid() {
} }
}, },
{ {
display: "签名确认", name: "confirm", width: 140, minWidth: 60, type: "string", align: "left", display: "签名确认", name: "confirmTextView", width: 140, minWidth: 60, type: "string", align: "left",
editor: { editor: {
type: "text" type: 'dictionary',
data: {name: 'confirm'},
textField: 'confirmTextView',
valueField: 'confirm',
required: false,
render: function (item) {
return item.confirmTextView;
} }
}, },
},
{ {
display: "日期", name: "date", width: 200, minWidth: 60, type: "date", align: "left", display: "日期", name: "date", width: 200, minWidth: 60, type: "date", align: "left",
editor: { editor: {
...@@ -190,27 +177,46 @@ function loadStockGrid() { ...@@ -190,27 +177,46 @@ function loadStockGrid() {
stockGridManager = UICtrl.grid("#stockMainGrid", { stockGridManager = UICtrl.grid("#stockMainGrid", {
columns: [ columns: [
{ {
display: "部门", name: "deptName", width: 200, minWidth: 60, type: "string", align: "left", display: "仓库", name: "deptName", width: 200, minWidth: 60, type: "string", align: "left",
editor: { editor: {
type: "text" type: 'tree',
required: true,
data: {
name: 'org',
filter: 'dpt',
minWidth: 250,
param: {
orgRoot: "14636F3F48934EE7811768692A0AC5E1"
}
},
textField: 'deptName',
valueField: 'deptId'
} }
}, },
{ {
display: "专属原材料/半成品/在制品/成品数量(张)", name: "desc", width: 300, minWidth: 60, type: "string", align: "left", display: "专属原材料/半成品/在制品/成品数量(张)", name: "description", width: 300, minWidth: 60, type: "string", align: "left",
editor: { editor: {
type: "text" type: "text"
} }
}, },
{ {
display: "确认人", name: "confirm", width: 140, minWidth: 60, type: "string", align: "left", display: "签名确认", name: "confirmTextView", width: 140, minWidth: 60, type: "string", align: "left",
editor: { editor: {
type: "text" type: 'dictionary',
data: {name: 'confirm'},
textField: 'confirmTextView',
valueField: 'confirm',
// checkbox:true,
required: false,
render: function (item) {
return item.confirmTextView;
} }
}, },
},
{ {
display: "日期", name: "date", width: 200, minWidth: 60, type: "date", align: "left", display: "日期", name: "date", width: 200, minWidth: 60, type: "dateTime", align: "left",
editor: { editor: {
type: "text" type: "dateTime"
} }
} }
], ],
......
package com.huigou.topsun.ep.change.application; package com.huigou.topsun.ep.change.application;
import com.huigou.topsun.ep.change.domain.EpChangeFormImplItem; import com.huigou.topsun.ep.change.domain.EpChangeFormImplItem;
import com.huigou.topsun.ep.change.domain.query.EpChangeFormQueryRequest;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* @Auther: xin.lu * @Auther: xin.lu
...@@ -10,7 +12,8 @@ import java.util.List; ...@@ -10,7 +12,8 @@ import java.util.List;
* @Description: * @Description:
*/ */
public interface EpChangeFormImplItemApplication { public interface EpChangeFormImplItemApplication {
List<EpChangeFormImplItem> findByEpChangeFormId(String epChangeFormId); public static final String QUERY_XML_FILE_PATH = "config/topsun/ep/change/epChangeForm.xml";
Map<String,Object> findByEpChangeFormId(EpChangeFormQueryRequest queryRequest);
void saveEpChangeFormImplItems(String epChangeFormId,List<EpChangeFormImplItem> items); void saveEpChangeFormImplItems(String epChangeFormId,List<EpChangeFormImplItem> items);
......
package com.huigou.topsun.ep.change.application; package com.huigou.topsun.ep.change.application;
import com.huigou.topsun.ep.change.domain.EpChangeFormStockItem; import com.huigou.topsun.ep.change.domain.EpChangeFormStockItem;
import com.huigou.topsun.ep.change.domain.query.EpChangeFormQueryRequest;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* @Auther: xin.lu * @Auther: xin.lu
...@@ -10,7 +12,8 @@ import java.util.List; ...@@ -10,7 +12,8 @@ import java.util.List;
* @Description: * @Description:
*/ */
public interface EpChangeFormStockItemApplication { public interface EpChangeFormStockItemApplication {
List<EpChangeFormStockItem> findByEpChangeFormId(String epChangeFormId); public static final String QUERY_XML_FILE_PATH = "config/topsun/ep/change/epChangeForm.xml";
Map<String,Object> findByEpChangeFormId(EpChangeFormQueryRequest queryRequest);
void saveEpChangeFormStockItems(String epChangeFormId,List<EpChangeFormStockItem> epChangeFormStockItems); void saveEpChangeFormStockItems(String epChangeFormId,List<EpChangeFormStockItem> epChangeFormStockItems);
......
package com.huigou.topsun.ep.change.application.impl; package com.huigou.topsun.ep.change.application.impl;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.huigou.data.domain.model.CommonDomainConstants; import com.huigou.data.domain.model.CommonDomainConstants;
...@@ -12,14 +13,17 @@ import com.huigou.topsun.ep.change.domain.EpChangeForm; ...@@ -12,14 +13,17 @@ import com.huigou.topsun.ep.change.domain.EpChangeForm;
import com.huigou.topsun.ep.change.domain.EpChangeFormImplItem; import com.huigou.topsun.ep.change.domain.EpChangeFormImplItem;
import com.huigou.topsun.ep.change.domain.EpChangeFormStockItem; import com.huigou.topsun.ep.change.domain.EpChangeFormStockItem;
import com.huigou.topsun.ep.change.domain.query.EpChangeFormQueryRequest; import com.huigou.topsun.ep.change.domain.query.EpChangeFormQueryRequest;
import com.huigou.topsun.ep.change.repository.EpChangeFormImplItemRepository;
import com.huigou.topsun.ep.change.repository.EpChangeFormRepository; import com.huigou.topsun.ep.change.repository.EpChangeFormRepository;
import com.huigou.topsun.ep.order.domain.EpSaleOrder; import com.huigou.topsun.ep.change.repository.EpChangeFormStockItemRepository;
import com.huigou.topsun.ep.order.domain.EpSaleOrderItem;
import com.huigou.topsun.sap.common.HttpClient; import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication; import com.huigou.topsun.sap.common.application.SapMutualEpLogApplication;
import com.huigou.topsun.sap.common.domain.EpResult; import com.huigou.topsun.sap.common.domain.EpResult;
import com.huigou.uasp.bmp.common.BizBillStatus; import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bmp.opm.domain.model.org.Org;
import com.huigou.uasp.bpm.FlowBroker; import com.huigou.uasp.bpm.FlowBroker;
import com.huigou.uasp.bpm.engine.domain.model.ProcUnitHandler;
import com.huigou.uasp.bpm.engine.domain.model.TaskExtension;
import com.huigou.util.ClassHelper; import com.huigou.util.ClassHelper;
import org.activiti.engine.delegate.DelegateExecution; import org.activiti.engine.delegate.DelegateExecution;
import org.activiti.engine.delegate.DelegateTask; import org.activiti.engine.delegate.DelegateTask;
...@@ -48,6 +52,10 @@ public class EpChangeFormApplicationImpl extends FlowBroker implements EpChangeF ...@@ -48,6 +52,10 @@ public class EpChangeFormApplicationImpl extends FlowBroker implements EpChangeF
private HttpClient httpClient; private HttpClient httpClient;
@Autowired @Autowired
SapMutualEpLogApplication sapMutualEpLogApplication; SapMutualEpLogApplication sapMutualEpLogApplication;
@Autowired
private EpChangeFormImplItemRepository epChangeFormImplItemRepository;
@Autowired
private EpChangeFormStockItemRepository epChangeFormStockItemRepository;
@Override @Override
protected String saveBizAndApprovalData() { protected String saveBizAndApprovalData() {
super.saveBizAndApprovalData(); super.saveBizAndApprovalData();
...@@ -92,6 +100,40 @@ public class EpChangeFormApplicationImpl extends FlowBroker implements EpChangeF ...@@ -92,6 +100,40 @@ public class EpChangeFormApplicationImpl extends FlowBroker implements EpChangeF
if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) { if (this.isApplyProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()) {
updateStatus(bizId, BizBillStatus.APPROVING); updateStatus(bizId, BizBillStatus.APPROVING);
} }
if (this.isApprovalProcUnit(delegateTask) && this.getApprovalParameter().isAdvanceProcessAction()){
TaskExtension te = actApplication.loadRuntimeTaskExtension(delegateTask.getId());
cn.hutool.core.lang.Assert.notNull(te, String.format("未查询到流程任务【%s】的扩展信息", delegateTask.getId()));
// 获取流程任务对应的审批环节信息
ProcUnitHandler procUnitHandler = procUnitHandlerApplication.loadProcUnitHandler(te.getProcUnitHandlerId());
String subProcUnitId = procUnitHandler.getSubProcUnitId();
//查询到审批人组织信息
String fullId = delegateTask.getAssignee();
Org org = orgApplication.loadOrgByFullId(fullId);
if (ObjectUtil.isNotNull(org)){
if ("executor".equals(subProcUnitId)){
//匹配部门执行人审批完,更新确认状态是时间
List<EpChangeFormImplItem> formImplItemList = epChangeFormImplItemRepository.findByEpChangeFormId(bizId);
for (EpChangeFormImplItem epChangeFormImplItem : formImplItemList) {
if (org.getId().equals(epChangeFormImplItem.getExecutorId())){
epChangeFormImplItem.setConfirm("1");
epChangeFormImplItem.setDate(new Date());
}
}
changeFormImplItemApplication.saveEpChangeFormImplItems(bizId,formImplItemList);
}
if ("store".equals(subProcUnitId)){
//匹配仓库环节审批完,更新确认状态是时间
List<EpChangeFormStockItem> stockItemList = epChangeFormStockItemRepository.findByEpChangeFormId(bizId);
for (EpChangeFormStockItem epChangeFormStockItem : stockItemList) {
if (org.getDeptId().equals(epChangeFormStockItem.getDeptId())){
epChangeFormStockItem.setConfirm("1");
epChangeFormStockItem.setDate(new Date());
}
}
changeFormStockItemApplication.saveEpChangeFormStockItems(bizId,stockItemList);
}
}
}
} }
/** /**
......
package com.huigou.topsun.ep.change.application.impl; package com.huigou.topsun.ep.change.application.impl;
import com.huigou.cache.DictUtil;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.ep.change.application.EpChangeFormImplItemApplication; import com.huigou.topsun.ep.change.application.EpChangeFormImplItemApplication;
import com.huigou.topsun.ep.change.domain.EpChangeFormImplItem; import com.huigou.topsun.ep.change.domain.EpChangeFormImplItem;
import com.huigou.topsun.ep.change.domain.query.EpChangeFormQueryRequest;
import com.huigou.topsun.ep.change.repository.EpChangeFormImplItemRepository; import com.huigou.topsun.ep.change.repository.EpChangeFormImplItemRepository;
import com.huigou.uasp.bmp.common.application.BaseApplication; import com.huigou.uasp.bmp.common.application.BaseApplication;
import com.huigou.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* @Auther: xin.lu * @Auther: xin.lu
...@@ -19,8 +26,15 @@ public class EpChangeFormImplItemApplicationImpl extends BaseApplication impleme ...@@ -19,8 +26,15 @@ public class EpChangeFormImplItemApplicationImpl extends BaseApplication impleme
@Autowired @Autowired
private EpChangeFormImplItemRepository changeFormImplItemRepository; private EpChangeFormImplItemRepository changeFormImplItemRepository;
@Override @Override
public List<EpChangeFormImplItem> findByEpChangeFormId(String epChangeFormId) { public Map<String,Object> findByEpChangeFormId(EpChangeFormQueryRequest queryRequest) {
return changeFormImplItemRepository.findByEpChangeFormId(epChangeFormId); Map<String,Object> map = new HashMap<>();
if (StringUtil.isNotBlank(queryRequest.getEpChangeFormId())){
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "epChangeFormImplItem");
QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, queryRequest);
queryModel.putDictionary("confirm", DictUtil.getDictionary("confirm"));
map = this.sqlExecutorDao.executeSlicedQuery(queryModel);
}
return map;
} }
@Override @Override
......
package com.huigou.topsun.ep.change.application.impl; package com.huigou.topsun.ep.change.application.impl;
import com.huigou.cache.DictUtil;
import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.ep.change.application.EpChangeFormStockItemApplication; import com.huigou.topsun.ep.change.application.EpChangeFormStockItemApplication;
import com.huigou.topsun.ep.change.domain.EpChangeFormStockItem; import com.huigou.topsun.ep.change.domain.EpChangeFormStockItem;
import com.huigou.topsun.ep.change.domain.query.EpChangeFormQueryRequest;
import com.huigou.topsun.ep.change.repository.EpChangeFormStockItemRepository; import com.huigou.topsun.ep.change.repository.EpChangeFormStockItemRepository;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bmp.common.application.BaseApplication; import com.huigou.uasp.bmp.common.application.BaseApplication;
import com.huigou.util.StringUtil;
import org.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import java.util.HashMap;
import java.util.List; import java.util.List;
import java.util.Map;
/** /**
* @Auther: xin.lu * @Auther: xin.lu
...@@ -19,8 +27,15 @@ public class EpChangeFormStockItemApplicationImpl extends BaseApplication implem ...@@ -19,8 +27,15 @@ public class EpChangeFormStockItemApplicationImpl extends BaseApplication implem
@Autowired @Autowired
private EpChangeFormStockItemRepository changeFormStockItemRepository; private EpChangeFormStockItemRepository changeFormStockItemRepository;
@Override @Override
public List<EpChangeFormStockItem> findByEpChangeFormId(String epChangeFormId) { public Map<String,Object> findByEpChangeFormId(EpChangeFormQueryRequest queryRequest) {
return changeFormStockItemRepository.findByEpChangeFormId(epChangeFormId); Map<String,Object> map = new HashMap<>();
if (StringUtil.isNotBlank(queryRequest.getEpChangeFormId())){
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "epChangeFormStockItem");
QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, queryRequest);
queryModel.putDictionary("confirm", DictUtil.getDictionary("confirm"));
map = this.sqlExecutorDao.executeSlicedQuery(queryModel);
}
return map;
} }
@Override @Override
......
...@@ -72,14 +72,15 @@ public class EpChangeFormController extends CommonController { ...@@ -72,14 +72,15 @@ public class EpChangeFormController extends CommonController {
public String slicedEpChangeFormImplItems(){ public String slicedEpChangeFormImplItems(){
SDO sdo = this.getSDO(); SDO sdo = this.getSDO();
String epChangeFormId = sdo.getString("epChangeFormId"); EpChangeFormQueryRequest queryRequest = sdo.toQueryRequest(EpChangeFormQueryRequest.class);
return packGridDataAndResult(changeFormImplItemApplication.findByEpChangeFormId(epChangeFormId)); return toResult(changeFormImplItemApplication.findByEpChangeFormId(queryRequest));
} }
public String slicedEpChangeFormStockItems(){ public String slicedEpChangeFormStockItems(){
SDO sdo = this.getSDO(); SDO sdo = this.getSDO();
String epChangeFormId = sdo.getString("epChangeFormId"); EpChangeFormQueryRequest queryRequest = sdo.toQueryRequest(EpChangeFormQueryRequest.class);
return packGridDataAndResult(changeFormStockItemApplication.findByEpChangeFormId(epChangeFormId)); //String epChangeFormId = sdo.getString("epChangeFormId");
return toResult(changeFormStockItemApplication.findByEpChangeFormId(queryRequest));
} }
public String deleteEpChangeFormImplItem(){ public String deleteEpChangeFormImplItem(){
......
...@@ -19,6 +19,12 @@ import java.util.Date; ...@@ -19,6 +19,12 @@ import java.util.Date;
public class EpChangeFormImplItem extends AbstractEntity { public class EpChangeFormImplItem extends AbstractEntity {
@Column(name = "ep_change_form_id") @Column(name = "ep_change_form_id")
private String epChangeFormId; private String epChangeFormId;
/**
* 部门
*/
@Column(name = "dept_id")
private String deptId;
/** /**
* 部门 * 部门
*/ */
...@@ -31,6 +37,12 @@ public class EpChangeFormImplItem extends AbstractEntity { ...@@ -31,6 +37,12 @@ public class EpChangeFormImplItem extends AbstractEntity {
@Column(name = "executor") @Column(name = "executor")
private String executor; private String executor;
/**
* 执行人
*/
@Column(name = "executor_id")
private String executorId;
/** /**
* 签名确认 * 签名确认
*/ */
......
...@@ -25,11 +25,17 @@ public class EpChangeFormStockItem extends AbstractEntity { ...@@ -25,11 +25,17 @@ public class EpChangeFormStockItem extends AbstractEntity {
@Column(name = "dept_name") @Column(name = "dept_name")
private String deptName; private String deptName;
/**
* 部门
*/
@Column(name = "dept_id")
private String deptId;
/** /**
* 专属原材料/半成品/在制品/成品数量(张) * 专属原材料/半成品/在制品/成品数量(张)
*/ */
@Column(name = "desc") @Column(name = "description")
private String desc; private String description;
/** /**
* 确认人 * 确认人
......
...@@ -11,4 +11,5 @@ import lombok.Data; ...@@ -11,4 +11,5 @@ import lombok.Data;
@Data @Data
public class EpChangeFormQueryRequest extends QueryAbstractRequest { public class EpChangeFormQueryRequest extends QueryAbstractRequest {
private String billCode; private String billCode;
private String epChangeFormId;
} }
...@@ -14,4 +14,18 @@ ...@@ -14,4 +14,18 @@
<condition column="ep_sale_order_id" name="epSaleOrderId" type="java.lang.String" symbol="=" alias="t"/> <condition column="ep_sale_order_id" name="epSaleOrderId" type="java.lang.String" symbol="=" alias="t"/>
</query> </query>
<query name="epChangeFormStockItem">
<sql-query>
select t.* from ep_change_form_stock_item t where 1=1
</sql-query>
<condition column="ep_change_form_id" name="epChangeFormId" type="java.lang.String" symbol="=" alias="t"/>
</query>
<query name="epChangeFormImplItem">
<sql-query>
select t.* from ep_change_form_impl_item t where 1=1
</sql-query>
<condition column="ep_change_form_id" name="epChangeFormId" type="java.lang.String" symbol="=" alias="t"/>
</query>
</query-mappings> </query-mappings>
\ No newline at end of file
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