Commit 8c816fd0 authored by 刘学辉's avatar 刘学辉

物料主数据调整和修改

parent e97e6b19
......@@ -16,7 +16,7 @@ function initialize(){
disableForm("infoRecord","disable");
} else {
var readwriteList = UICtrl.getUIElementPermissions(UIPO.READWRITE, UIPK.DETAIL);
// alert("dsd=="+readwriteList.length); alert(TaskKind.isReplenishTask(taskKindId)); 打回的
// alert("dsd=="+readwriteList.length); alert(TaskKind.isReplenishTask(taskKindId)); //打回的
if (($("#statusId").val() == 1 && readwriteList.length > 0&&TaskKind.isReplenishTask(taskKindId)!=true)) {
disableForm("infoRecord", "disable");
$.each(readwriteList, function (i, o) {
......
......@@ -654,10 +654,10 @@ function checkInput() {
Public.errorTip("供应商必输!");
return false;
}
if ($("#matnr").val()==""){
/* if ($("#matnr").val()==""){
Public.errorTip("物料编码必输!");
return false;
}
}*/
if ($("#esokz").val()==""){
Public.errorTip("记录分类必输!");
return false;
......
......@@ -47,5 +47,5 @@ public interface NonProdApplyDeptApplication {
//保存部门分发信息
void saveDeptStaff(List<Map<String, String>> deptStaffList,String bussinessId,String genericName);
//保存待办消息
void saveBsnMessageData(NonProdApplyBaseInfo baseInfo, SapNonProdApplyDept applyDept, Operator operator,Map<String,Object> map);
void saveBsnMessageData(NonProdApplyBaseInfo baseInfo,Map<String,Object> backMap);
}
\ No newline at end of file
......@@ -221,8 +221,10 @@ public class NonProdApplyApplicationImpl extends FlowBroker implements NonProdA
if (ObjectUtils.equals(parameter.getHandleResult(), 1)) { //同意
//SapNonProdApplyDept nonProdApplyDept=nonProdApplyDeptApplication.getNonProdApplyDeptByBaseInfoId(nonProdApplyBaseInfo.getSourceId());
// SapNonProdApplyDept newNonProdApplyDept=nonProdApplyDeptApplication.getNonProdApplyDeptByBaseInfoId(nonProdApplyBaseInfo.getId());
publishHyzyMessage(nonProdApplyBaseInfo);
//publishHyzyMessage(nonProdApplyBaseInfo);
Map backMap=new HashMap();
backMap.put("TYPE","C");
nonProdApplyDeptApplication.saveBsnMessageData(nonProdApplyBaseInfo,backMap);
}
// }
// if(nonProdApplyBaseInfo.getMaintenanceType().equals("modify")||
......@@ -283,17 +285,22 @@ public class NonProdApplyApplicationImpl extends FlowBroker implements NonProdA
nonProdApplyBaseInfoRepository.save(nonProdApplyBaseInfo);
}
//发布货源专员的待办消息
private void publishHyzyMessage(NonProdApplyBaseInfo nonProdApplyBaseInfo){
// private void publishHyzyMessage(NonProdApplyBaseInfo baseInfo){
/*
String sql="select p.id,p.code,p.name,o.dept_name,o.dept_code,o.id person_member_id,o.position_name,o.position_code from sa_opperson p " +
"left join sa_oporg o on p.CODE=o.code where MAIN_ORG_ID in (select id from sa_oporg where code='HYZY')";
List<Map<String, Object>> mapList = this.sqlExecutorDao.queryToListMap(sql);
for (Map map : mapList) {
String user = map.get("code").toString();
// String user = map.get("code").toString();
BsnMessageSponsor bsnMessageSponsor = new BsnMessageSponsor();
bsnMessageSponsor.setTaskSponsor(map.get("id").toString());
bsnMessageSponsor.setTitle(nonProdApplyBaseInfo.getGenericName());//通用品名
bsnMessageSponsor.setTitle(baseInfo.getGenericName());//通用品名
bsnMessageSponsor.setExecutorUrl("sapNonProdApplyNext/forwardNonProdApplyNext.do?isReadOnly=false");
bsnMessageSponsor.setBusinessId(nonProdApplyBaseInfo.getId());//newNonProdApplyDept.getApplyDeptId()改为BaseInfo 的ID
if ("product".equals(baseInfo.getKind())) {
bsnMessageSponsor.setExecutorUrl("sapNonProdApplyNext/forwardNonProdApplyNext.do?prod=1&isReadOnly=false");
}
bsnMessageSponsor.setBusinessId(baseInfo.getId());//newNonProdApplyDept.getApplyDeptId()改为BaseInfo 的ID
bsnMessageSponsor.setCreateDate(new Date());
bsnMessageSponsor.setStatus(0);
//List<Map<String, String>> deptStaffList=new ArrayList<>();
......@@ -312,13 +319,13 @@ public class NonProdApplyApplicationImpl extends FlowBroker implements NonProdA
messageExecute.setActive(ActiveStatus.UNFINISHED.getValue());
messageExecute.setUpdateDate(new Date());
String mess="-.物料维护(";
if (nonProdApplyBaseInfo.getMaintenanceType().equals("modify")){
if (baseInfo.getMaintenanceType().equals("modify")){
mess="-.物料变更(";
}
if (nonProdApplyBaseInfo.getMaintenanceType().equals("extend")){
if (baseInfo.getMaintenanceType().equals("extend")){
mess="-.物料扩展(";
}
messageExecute.setTaskDescribe(nonProdApplyBaseInfo.getGenericName() + mess+ deptName + ")");
messageExecute.setTaskDescribe(baseInfo.getGenericName() + mess+ deptName + ")");
//保存任务
// bsnMessageApplication.keepTasks(bsnMessageSponsor);
......@@ -329,9 +336,9 @@ public class NonProdApplyApplicationImpl extends FlowBroker implements NonProdA
List<BsnMessageExecute> executes = new ArrayList<>();
executes.add(messageExecute);
bsnMessageApplication.saveBsnMessageExecute(executes);
}
} */
}
//}
/**
* 流程撤销事件
**/
......
......@@ -107,8 +107,8 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
baseInfo.setBrand(sdo.getString("brand"));
baseInfo.setBrand(sdo.getString("brandName"));
}
// baseInfo.setMaktxRemZh(sdo.getString("maktxRemZh"));
// baseInfo.setMaktxRemEn(sdo.getString("maktxRemEn"));
baseInfo.setMaktxRemZh(sdo.getString("maktxRemZh"));
baseInfo.setMaktxRemEn(sdo.getString("maktxRemEn"));
nonProdApplyBaseInfoRepository.save(baseInfo);
NonProdApplyDeptVo deptVo=null;
......@@ -187,12 +187,23 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
List<BsnMessageExecute> bsnMsgList = bsnMessageExecuteRepository.findAllByMessageSponsorId(bsnMessageSponsor.getId());
for (BsnMessageExecute bsnMessageExecute : bsnMsgList) {
if (!"system".equals(bsnMessageExecute.getBusinessCode())&&
!"HYZY".equals(bsnMessageExecute.getBusinessCode())&&
!"INIT_DPT".equals(bsnMessageExecute.getBusinessCode())
&&bsnMessageExecute.getActive() == 0) {
canSended=false;
break;
}
}
//结束货源专员的待办
BsnMessageSponsor bsnMessageSponsor2=bsnMessageSponsorRepository.findByBusinessId(baseInfo.getId());
if (bsnMessageSponsor2!=null){
List<BsnMessageExecute> bsnMsgList2 = bsnMessageExecuteRepository.findAllByMessageSponsorId(bsnMessageSponsor2.getId());
for (BsnMessageExecute bsnMessageExecute : bsnMsgList2) {
if ("HYZY".equals(bsnMessageExecute.getBusinessCode())) {
bsnMessageApplication.submitTask(bsnMessageExecute.getId());
}
}
}
}
if (canSended) {
String backStr=sendSapData(baseInfo, nonProdApplyDept);
......@@ -209,6 +220,7 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
return nonProdApplyDeptRepository.save(sapNonProdApplyDept);
}
@Override
//保存业务部门的待办消息
public void saveDeptStaff(List<Map<String, String>> deptStaffList,String bussinessId,String genericName){
//封装分发数据
BsnMessageSponsor bsnMessageSponsor = new BsnMessageSponsor();
......@@ -318,9 +330,9 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
String backStr="";
ProdApplyToSapVO sapVO=new ProdApplyToSapVO();
ClassHelper.copyProperties(baseInfo,sapVO);
applyDept.setMaktxRemZh(baseInfo.getMaktxRemZh());
applyDept.setMaktxRemEn(baseInfo.getMaktxRemEn());
ClassHelper.copyProperties(applyDept,sapVO);
sapVO.setMaktxRemZh(baseInfo.getMaktxRemZh());
sapVO.setMaktxRemEn(baseInfo.getMaktxRemEn());
if ("0".equals(sapVO.getXchpf())){ //批次管理 否 传递空
sapVO.setXchpf("");
......@@ -406,16 +418,8 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
sapMutualEpLogApplication.saveSapMutualEpLog(backMap);
//Operator operator = operatorApplication.createOperatorByPersonMemberId(baseInfo.getPersonMemberId());
//向货源专员 发重新分发的消息
String sql="select p.id,p.code,p.name,o.dept_name,o.dept_code,o.id person_member_id,o.position_name,o.position_code from sa_opperson p " +
"left join sa_oporg o on p.CODE=o.code where MAIN_ORG_ID in (select id from sa_oporg where code='HYZY')";
List<Map<String, Object>> mapLists = this.sqlExecutorDao.queryToListMap(sql);
Operator operator=null;
for (Map maps : mapLists) {
operator=new Operator();
operator.setDeptCode("HYZY");
operator.setPersonMemberId(maps.get("personMemberId").toString());
saveBsnMessageData(baseInfo,applyDept,operator,backMap);
}
saveBsnMessageData(baseInfo,backMap);
return backStr;
}
......@@ -434,51 +438,58 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
}
//保存待办的消息
public void saveBsnMessageData(NonProdApplyBaseInfo baseInfo, SapNonProdApplyDept applyDept, Operator operator,Map<String,Object> map) {
BsnMessageSponsor bsnMessageSponsor=bsnMessageSponsorRepository.findByBusinessId(applyDept.getApplyDeptId());
String personMemberId = operator.getPersonMemberId();//stringMap.get("userCode");
if (bsnMessageSponsor==null) {
bsnMessageSponsor = new BsnMessageSponsor();
bsnMessageSponsor.setTaskSponsor(personMemberId.split("@")[0]);
bsnMessageSponsor.setTitle(baseInfo.getGenericName());//通用品名
if ("product".equals(baseInfo.getKind())){
bsnMessageSponsor.setExecutorUrl("sapNonProdApplyNext/forwardNonProdApplyNext.do?prod=1&isReadOnly=false");
} else {
bsnMessageSponsor.setExecutorUrl("sapNonProdApplyNext/forwardNonProdApplyNext.do?isReadOnly=false");
/*
* 审批完成 推送处理基本信息的待办消息
* 最后一个业务务部门 处理完成推送SAP失败 则向货源专员发起再次分发的待办消息
* 推送SAP成功则向货源专员 写入一条成功的消息
*/
public void saveBsnMessageData(NonProdApplyBaseInfo baseInfo,Map<String,Object> backMap) {
BsnMessageSponsor bsnMessageSponsor = bsnMessageSponsorRepository.findByBusinessId(baseInfo.getId());
String sql = "select p.id,p.code,p.name,o.dept_name,o.dept_code,o.id person_member_id,o.position_name,o.position_code from sa_opperson p " +
"left join sa_oporg o on p.CODE=o.code where MAIN_ORG_ID in (select id from sa_oporg where code='HYZY')";
List<Map<String, Object>> mapLists = this.sqlExecutorDao.queryToListMap(sql);
for (Map map : mapLists) {
if (bsnMessageSponsor == null) {
bsnMessageSponsor = new BsnMessageSponsor();
bsnMessageSponsor.setTaskSponsor(map.get("id").toString());
bsnMessageSponsor.setTitle(baseInfo.getGenericName());//通用品名
if ("product".equals(baseInfo.getKind())) {
bsnMessageSponsor.setExecutorUrl("sapNonProdApplyNext/forwardNonProdApplyNext.do?prod=1&isReadOnly=false");
} else {
bsnMessageSponsor.setExecutorUrl("sapNonProdApplyNext/forwardNonProdApplyNext.do?isReadOnly=false");
}
//bsnMessageSponsor.setBusinessId(applyDept.getApplyDeptId());
bsnMessageSponsor.setBusinessId(baseInfo.getId()); //货源专员 存base_info的ID
bsnMessageSponsor.setCreateDate(new Date());
bsnMessageSponsor.setStatus(0);
}
BsnMessageExecute messageExecute = new BsnMessageExecute();
messageExecute.setTaskExecute(map.get("id").toString());
messageExecute.setBusinessCode(map.get("positionCode").toString()); //HYZY
messageExecute.setActive(ActiveStatus.UNFINISHED.getValue());
messageExecute.setUpdateDate(new Date());
if ("S".equals(backMap.get("TYPE").toString())) {
messageExecute.setTaskDescribe("" + backMap.get("MESSAGE").toString());
} else if ("E".equals(backMap.get("TYPE").toString())) {
messageExecute.setTaskDescribe("" + backMap.get("MESSAGE").toString());
} else if ("C".equals(backMap.get("TYPE").toString())) { //审批完成 推送待办的基本信息处理信息
String mess = "-.物料维护(";
if (baseInfo.getMaintenanceType().equals("modify")) {
mess = "-.物料变更(";
}
if (baseInfo.getMaintenanceType().equals("extend")) {
mess = "-.物料扩展(";
}
messageExecute.setTaskDescribe(baseInfo.getGenericName() + mess + map.get("deptName").toString() + ")");
}
//bsnMessageSponsor.setBusinessId(applyDept.getApplyDeptId());
bsnMessageSponsor.setBusinessId(baseInfo.getId()); //货源专员 存base_info的ID
bsnMessageSponsor.setCreateDate(new Date());
bsnMessageSponsor.setStatus(0);
bsnMessageApplication.saveBsnMessageSponsor(bsnMessageSponsor);
messageExecute.setMessageSponsorId(bsnMessageSponsor.getId());
List<BsnMessageExecute> executes = new ArrayList<>();
executes.add(messageExecute);
bsnMessageApplication.saveBsnMessageExecute(executes);
}
//List<Map<String, String>> deptStaffList=new ArrayList<>();
//Map <String,String>map=new HashMap<String, String>();
// map.put("");
//deptStaffList.add(map);
// for (Map<String, String> stringMap : deptStaffList) {
BsnMessageExecute messageExecute = new BsnMessageExecute();
// String personMemberId = operator.getPersonMemberId();//stringMap.get("userCode");
// String deptName = operator.getDeptName();//stringMap.get("deptName");
// String deptCode = operator.getDeptCode();//stringMap.get("deptCode");
//String[] split = userCode.split("@");
messageExecute.setTaskExecute(personMemberId.split("@")[0]);
messageExecute.setBusinessCode(operator.getDeptCode());
messageExecute.setActive(ActiveStatus.UNFINISHED.getValue());
messageExecute.setUpdateDate(new Date());
// if ("product".equals(baseInfo.getKind())) {
// messageExecute.setTaskDescribe(deptName + "产品数据维护");
// } else {
if ("S".equals(map.get("TYPE").toString())){
messageExecute.setTaskDescribe("成功"+map.get("MESSAGE").toString());
} else {
messageExecute.setTaskDescribe("错误"+map.get("MESSAGE").toString());
}
bsnMessageApplication.saveBsnMessageSponsor(bsnMessageSponsor);
messageExecute.setMessageSponsorId(bsnMessageSponsor.getId());
List<BsnMessageExecute> executes = new ArrayList<>();
executes.add(messageExecute);
bsnMessageApplication.saveBsnMessageExecute(executes);
}
}
......@@ -212,7 +212,7 @@ public class NonProdApplyNextController extends CommonController {
}
/**
* 添加
* 保存 /提交
*/
public String saveSapNonProdApplyDept() {
SDO sdo = this.getSDO();
......
......@@ -5,10 +5,10 @@
<sql-query>
SELECT t.id,t.message_sponsor_id,t.task_execute,t.business_code,t.update_date,t.finished_date,t.active,
CASE WHEN t.active = 3 THEN CONCAT(t.task_describe, :addText) ELSE
case when t.business_code='HYZY' then SUBSTRING(t.task_describe,LOCATE('-.',t.task_describe)+2)
case when t.business_code='HYZY' then SUBSTRING(t.task_describe,LOCATE('-.',t.task_describe)+1)
else t.task_describe end
END AS task_describe,
IFNULL(ad.maktx,left(t.task_describe,LOCATE('-.',t.task_describe)-2)) as title,
IFNULL(ad.maktx,left(t.task_describe,LOCATE('-.',t.task_describe)-1)) as title,
t2.executor_url,
t2.business_id
FROM bsn_message_execute t
......
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