Commit 470e815d authored by 1650842865's avatar 1650842865

客供料通知任务

parent a440c2f2
...@@ -45,7 +45,7 @@ ...@@ -45,7 +45,7 @@
<div class="col-sm-6 col-xs-12"> <div class="col-sm-6 col-xs-12">
<div class="box box-success"> <div class="box box-success">
<div class="box-header with-border"> <div class="box-header with-border">
<h3 class="box-title">物料主数据任务</h3> <h3 class="box-title">非流程待办任务</h3>
<div class="box-tools pull-right"> <div class="box-tools pull-right">
<button type="button" class="btn btn-box-tool" title="刷新" onclick="reloadSpecialTaskGrid()"><i class="fa fa-repeat"></i></button> <button type="button" class="btn btn-box-tool" title="刷新" onclick="reloadSpecialTaskGrid()"><i class="fa fa-repeat"></i></button>
<button type="button" class="btn btn-box-tool" title="更多" onclick="showSpecialTask(1)"><i class="fa fa-bars"></i></button> <button type="button" class="btn btn-box-tool" title="更多" onclick="showSpecialTask(1)"><i class="fa fa-bars"></i></button>
......
...@@ -33,6 +33,9 @@ function loadGrid() { ...@@ -33,6 +33,9 @@ function loadGrid() {
], ],
dataAction: "server", dataAction: "server",
url: web_app.name + '/clientMaterials/slicedClientMaterialsList.ajax', url: web_app.name + '/clientMaterials/slicedClientMaterialsList.ajax',
parms: {
plnum: $("#plnum").val()
},
pageSize: 20, pageSize: 20,
usePager: true, usePager: true,
toolbar: toolbarOptions, toolbar: toolbarOptions,
......
...@@ -5,7 +5,6 @@ ...@@ -5,7 +5,6 @@
<head> <head>
<x:base include="layout,dialog,grid,tree,combox,commonTree,attachment"/> <x:base include="layout,dialog,grid,tree,combox,commonTree,attachment"/>
<x:script src='/biz/topsun/sap/clientMaterials/clientMaterialsList.js'/> <x:script src='/biz/topsun/sap/clientMaterials/clientMaterialsList.js'/>
</head> </head>
<body> <body>
<div class="container-fluid"> <div class="container-fluid">
......
package com.huigou.topsun.sap.clientMaterials.application.impl; package com.huigou.topsun.sap.clientMaterials.application.impl;
import cn.hutool.core.bean.BeanUtil; import cn.hutool.core.bean.BeanUtil;
import cn.hutool.core.util.ObjectUtil;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.fasterxml.jackson.core.type.TypeReference; import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.DeserializationFeature; import com.fasterxml.jackson.databind.DeserializationFeature;
import com.fasterxml.jackson.databind.MapperFeature; import com.fasterxml.jackson.databind.MapperFeature;
import com.fasterxml.jackson.databind.ObjectMapper; import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.cache.DictUtil; import com.huigou.cache.DictUtil;
import com.huigou.cache.SystemCache;
import com.huigou.context.Operator;
import com.huigou.context.ThreadLocalUtil;
import com.huigou.data.query.model.QueryDescriptor; import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel; import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.base.bsnMessage.appliction.BsnMessageApplication;
import com.huigou.topsun.base.bsnMessage.domain.ActiveStatus;
import com.huigou.topsun.base.bsnMessage.domain.BsnMessageExecute;
import com.huigou.topsun.base.bsnMessage.domain.BsnMessageSponsor;
import com.huigou.topsun.sap.clientMaterials.application.ClientMaterialsApplication; import com.huigou.topsun.sap.clientMaterials.application.ClientMaterialsApplication;
import com.huigou.topsun.sap.clientMaterials.domain.ClientMaterials; import com.huigou.topsun.sap.clientMaterials.domain.ClientMaterials;
import com.huigou.topsun.sap.clientMaterials.domain.query.ClientMaterialsQueryRequest; import com.huigou.topsun.sap.clientMaterials.domain.query.ClientMaterialsQueryRequest;
...@@ -19,16 +27,17 @@ import com.huigou.topsun.sap.common.HttpClient; ...@@ -19,16 +27,17 @@ import com.huigou.topsun.sap.common.HttpClient;
import com.huigou.topsun.sap.common.domain.SapResult; import com.huigou.topsun.sap.common.domain.SapResult;
import com.huigou.topsun.util.SAPUtils; import com.huigou.topsun.util.SAPUtils;
import com.huigou.uasp.bmp.common.application.BaseApplication; import com.huigou.uasp.bmp.common.application.BaseApplication;
import com.huigou.uasp.bmp.opm.application.OrgApplication;
import com.huigou.uasp.bmp.opm.domain.model.org.Org;
import com.huigou.util.ClassHelper; import com.huigou.util.ClassHelper;
import com.huigou.util.JSONUtil; import com.huigou.util.JSONUtil;
import com.huigou.util.StringUtil;
import org.apache.commons.lang3.StringUtils;
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.io.IOException; import java.io.IOException;
import java.util.ArrayList; import java.util.*;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/** /**
* @Auther: Lxh * @Auther: Lxh
...@@ -41,26 +50,36 @@ public class ClientMaterialsApplicationImpl extends BaseApplication implements C ...@@ -41,26 +50,36 @@ public class ClientMaterialsApplicationImpl extends BaseApplication implements C
private ClientMaterialsRepository clientMaterialsRepository; private ClientMaterialsRepository clientMaterialsRepository;
@Autowired @Autowired
private HttpClient httpClient; private HttpClient httpClient;
@Autowired
private OrgApplication orgApplication;
@Autowired
BsnMessageApplication bsnMessageApplication;
@Override @Override
public Map<String, Object> getClientMaterialsList(ClientMaterialsQueryRequest queryRequest) { public Map<String, Object> getClientMaterialsList(ClientMaterialsQueryRequest queryRequest) {
//先从SAP获取数据
this.getClientMaterialsListFromSap(queryRequest);
Map<String, Object> map = new HashMap<>(); Map<String, Object> map = new HashMap<>();
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "clientMaterials");
QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, queryRequest);
queryModel.putDictionary("closed", DictUtil.getDictionary("yesorno"));
map = this.sqlExecutorDao.executeSlicedQuery(queryModel);
//如果是查询已关单的数据,从bpm获取数据 //如果是查询已关单的数据,从bpm获取数据
if ("1".equals(queryRequest.getClosed())){ // if ("1".equals(queryRequest.getClosed())){
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "clientMaterials"); // QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "clientMaterials");
QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, queryRequest); // QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, queryRequest);
queryModel.putDictionary("closed", DictUtil.getDictionary("yesorno")); // queryModel.putDictionary("closed", DictUtil.getDictionary("yesorno"));
map = this.sqlExecutorDao.executeSlicedQuery(queryModel); // map = this.sqlExecutorDao.executeSlicedQuery(queryModel);
}else { // }else {
map = this.getClientMaterialsListFromSap(queryRequest); // map = this.getClientMaterialsListFromSap(queryRequest);
} // }
return map; return map;
} }
@Override @Override
public Map<String, Object> getClientMaterialsListFromSap(ClientMaterialsQueryRequest queryRequest) { public Map<String, Object> getClientMaterialsListFromSap(ClientMaterialsQueryRequest queryRequest) {
List<ClientMaterials> sapClientMaterialsList = new ArrayList<>(); List<ClientMaterialsVo> sapClientMaterialsList = new ArrayList<>();
Map<String, Object> dataMap = new HashMap<>(); Map<String, Object> dataMap = new HashMap<>();
ClientMaterialsQueryRequestVo queryRequestVo = new ClientMaterialsQueryRequestVo(); ClientMaterialsQueryRequestVo queryRequestVo = new ClientMaterialsQueryRequestVo();
ClassHelper.copyProperties(queryRequest,queryRequestVo); ClassHelper.copyProperties(queryRequest,queryRequestVo);
...@@ -77,7 +96,9 @@ public class ClientMaterialsApplicationImpl extends BaseApplication implements C ...@@ -77,7 +96,9 @@ public class ClientMaterialsApplicationImpl extends BaseApplication implements C
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false); objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
//忽略大小写 //忽略大小写
objectMapper.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, true); objectMapper.configure(MapperFeature.ACCEPT_CASE_INSENSITIVE_PROPERTIES, true);
sapClientMaterialsList = objectMapper.readValue(JSONUtil.toString(map.get("RDATA")), new TypeReference<List<ClientMaterials>>() {}); sapClientMaterialsList = objectMapper.readValue(JSONUtil.toString(map.get("RDATA")), new TypeReference<List<ClientMaterialsVo>>() {});
//保存数据到数据库留档,防止SAP跑MRP后删除计划订单的情况
this.saveClientMaterials(sapClientMaterialsList);
maps = objectMapper.convertValue(sapClientMaterialsList, new TypeReference<ArrayList<Map<String, Object>>>() { maps = objectMapper.convertValue(sapClientMaterialsList, new TypeReference<ArrayList<Map<String, Object>>>() {
}); });
} }
...@@ -88,6 +109,38 @@ public class ClientMaterialsApplicationImpl extends BaseApplication implements C ...@@ -88,6 +109,38 @@ public class ClientMaterialsApplicationImpl extends BaseApplication implements C
return dataMap; return dataMap;
} }
public void saveClientMaterials(List<ClientMaterialsVo> sapClientMaterialsList){
//根据计划订单查询,如果没有就新增,有就修改
for (ClientMaterialsVo clientMaterialsVo : sapClientMaterialsList) {
ClientMaterials clientMaterialsDb = clientMaterialsRepository.findByPlnum(clientMaterialsVo.getPlnum());
if (clientMaterialsDb == null){
clientMaterialsDb = new ClientMaterials();
BeanUtil.copyProperties(clientMaterialsVo,clientMaterialsDb);
//根据跟单员初始化创建人信息
String partner = clientMaterialsVo.getPartner();
if (StringUtil.isNotBlank(partner)){
//去掉前导0
String replacedCode = partner.replaceFirst("^0*", "");
Org org = orgApplication.loadMainOrgByLoginName(replacedCode);
String acceptPersonCode = SystemCache.getParameter("acceptPersonCode", String.class);
if (ObjectUtil.isNull(org)){
org = orgApplication.loadMainOrgByLoginName(acceptPersonCode);
}
if (ObjectUtil.isNotNull(org)){
clientMaterialsDb.setPersonMemberId(org.getId());
clientMaterialsDb.setPersonMemberName(org.getName());
clientMaterialsDb.setFullId(org.getFullId());
}
}
clientMaterialsRepository.save(clientMaterialsDb);
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "queryPersonByRole");
List<Map<String, Object>> personMaps = this.sqlExecutorDao.queryToListMap(queryDescriptor.getSql(), null);
//推送待办任务
this.pushTask(clientMaterialsDb,personMaps);
}
}
}
@Override @Override
public ClientMaterials getClientMaterialsById(String id) { public ClientMaterials getClientMaterialsById(String id) {
return clientMaterialsRepository.findOne(id); return clientMaterialsRepository.findOne(id);
...@@ -104,7 +157,7 @@ public class ClientMaterialsApplicationImpl extends BaseApplication implements C ...@@ -104,7 +157,7 @@ public class ClientMaterialsApplicationImpl extends BaseApplication implements C
json = httpClient.execute(map,"del_planorder"); json = httpClient.execute(map,"del_planorder");
Map<String, Object> resultMap = JSONUtil.toMap(json); Map<String, Object> resultMap = JSONUtil.toMap(json);
SapResult sapResult = JSONObject.parseObject(JSONUtil.toString(resultMap.get("MSG")), SapResult.class); SapResult sapResult = JSONObject.parseObject(JSONUtil.toString(resultMap.get("MSG")), SapResult.class);
if ("S".equals(sapResult.getTYPE())){ if ("S".equals(sapResult.getTYPE()) || sapResult.getMESSAGE().contains("不存在")){
//删除成功,保存数据 //删除成功,保存数据
clientMaterials.setClosed("1"); clientMaterials.setClosed("1");
clientMaterialsRepository.save(clientMaterials); clientMaterialsRepository.save(clientMaterials);
...@@ -113,4 +166,33 @@ public class ClientMaterialsApplicationImpl extends BaseApplication implements C ...@@ -113,4 +166,33 @@ public class ClientMaterialsApplicationImpl extends BaseApplication implements C
throw new RuntimeException(e); throw new RuntimeException(e);
} }
} }
public void pushTask(ClientMaterials clientMaterialsDb, List<Map<String, Object>> personMaps){
BsnMessageSponsor bsnMessageSponsor = new BsnMessageSponsor();
//通过角色“客供料通知角色”查询通知人员
for (Map<String, Object> map : personMaps) {
bsnMessageSponsor.setTaskSponsor(map.get("id").toString());
bsnMessageSponsor.setTitle(clientMaterialsDb.getPlnum());
bsnMessageSponsor.setExecutorUrl("clientMaterials/forwardClientMaterialsList.do?plnum="+clientMaterialsDb.getPlnum()+"&isReadOnly=false");
bsnMessageSponsor.setBusinessId(clientMaterialsDb.getId());
bsnMessageSponsor.setCreateDate(new Date());
bsnMessageSponsor.setStatus(0);
bsnMessageApplication.saveBsnMessageSponsor(bsnMessageSponsor);
//保存任务执行人
List<BsnMessageExecute> executes = new ArrayList<>();
BsnMessageExecute messageExecute = new BsnMessageExecute();
messageExecute.setMessageSponsorId(bsnMessageSponsor.getId());
messageExecute.setTaskExecute(map.get("id").toString());
messageExecute.setBusinessCode("clientMaterials");
messageExecute.setActive(ActiveStatus.UNFINISHED.getValue());
messageExecute.setUpdateDate(new Date());
messageExecute.setTaskDescribe("通知:客供料计划订单号:"+ clientMaterialsDb.getPlnum());
executes.add(messageExecute);
bsnMessageApplication.saveBsnMessageExecute(executes);
}
}
} }
...@@ -53,8 +53,8 @@ public class ClientMaterialsController extends CommonController { ...@@ -53,8 +53,8 @@ public class ClientMaterialsController extends CommonController {
String personMemberName = sdo.getOperator().getPersonMemberName(); String personMemberName = sdo.getOperator().getPersonMemberName();
String personMemberId = sdo.getOperator().getPersonMemberId(); String personMemberId = sdo.getOperator().getPersonMemberId();
materials.setDeleteTime(new Date()); materials.setDeleteTime(new Date());
materials.setPersonMemberId(personMemberId); materials.setDeletePersonMemberId(personMemberId);
materials.setPersonMemberName(personMemberName); materials.setDeletePersonMemberName(personMemberName);
clientMaterialsApplication.deleteFromSap(materials); clientMaterialsApplication.deleteFromSap(materials);
return success(); return success();
} }
......
...@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.clientMaterials.domain; ...@@ -2,6 +2,7 @@ package com.huigou.topsun.sap.clientMaterials.domain;
import com.fasterxml.jackson.annotation.JsonIgnoreProperties; import com.fasterxml.jackson.annotation.JsonIgnoreProperties;
import com.fasterxml.jackson.annotation.JsonInclude; import com.fasterxml.jackson.annotation.JsonInclude;
import com.fasterxml.jackson.annotation.JsonProperty;
import com.huigou.data.domain.model.AbstractEntity; import com.huigou.data.domain.model.AbstractEntity;
import com.huigou.data.domain.model.FlowBillAbstractEntity; import com.huigou.data.domain.model.FlowBillAbstractEntity;
import lombok.Data; import lombok.Data;
...@@ -101,13 +102,37 @@ public class ClientMaterials extends AbstractEntity { ...@@ -101,13 +102,37 @@ public class ClientMaterials extends AbstractEntity {
@Column(name = "closed") @Column(name = "closed")
private String closed; private String closed;
/**
* 跟单员名称
*/
@Column(name = "person_member_name") @Column(name = "person_member_name")
private String personMemberName; private String personMemberName;
/**
* 跟单员ID
*/
@Column(name = "person_member_id") @Column(name = "person_member_id")
private String personMemberId; private String personMemberId;
/**
* 全路径
*/
@Column(name = "full_id")
private String fullId;
@Column(name = "delete_time") @Column(name = "delete_time")
private Date deleteTime; private Date deleteTime;
/**
* 删除人员ID
*/
@Column(name = "delete_person_member_id")
private String deletePersonMemberId;
/**
* 删除人员名称
*/
@Column(name = "delete_person_member_name")
private String deletePersonMemberName;
} }
...@@ -10,4 +10,6 @@ import org.springframework.data.jpa.repository.JpaRepository; ...@@ -10,4 +10,6 @@ import org.springframework.data.jpa.repository.JpaRepository;
* @Description: * @Description:
*/ */
public interface ClientMaterialsRepository extends JpaRepository<ClientMaterials,String> { public interface ClientMaterialsRepository extends JpaRepository<ClientMaterials,String> {
ClientMaterials findByPlnum(String plnum);
} }
...@@ -85,6 +85,34 @@ public class ClientMaterialsVo implements Serializable { ...@@ -85,6 +85,34 @@ public class ClientMaterialsVo implements Serializable {
@JsonProperty("AUFNR") @JsonProperty("AUFNR")
private String aufnr; private String aufnr;
/**
* 跟单员编码
*/
@JsonProperty("PARTNER")
private String partner;
/**
* 跟单员名称
*/
@JsonProperty("NAME_ORG1")
private String nameOrg1;
public String getPartner() {
return partner;
}
public void setPartner(String partner) {
this.partner = partner;
}
public String getNameOrg1() {
return nameOrg1;
}
public void setNameOrg1(String nameOrg1) {
this.nameOrg1 = nameOrg1;
}
public String getWerks() { public String getWerks() {
return werks; return werks;
} }
......
...@@ -4,15 +4,13 @@ import cn.hutool.core.bean.BeanUtil; ...@@ -4,15 +4,13 @@ import cn.hutool.core.bean.BeanUtil;
import com.alibaba.fastjson.JSON; import com.alibaba.fastjson.JSON;
import com.alibaba.fastjson.JSONObject; import com.alibaba.fastjson.JSONObject;
import com.huigou.cache.SystemCache; import com.huigou.cache.SystemCache;
import com.huigou.context.Operator;
import com.huigou.context.ThreadLocalUtil;
import com.huigou.data.domain.model.CommonDomainConstants; import com.huigou.data.domain.model.CommonDomainConstants;
import com.huigou.data.query.model.QueryDescriptor; import com.huigou.data.query.model.QueryDescriptor;
import com.huigou.data.query.model.QueryModel; import com.huigou.data.query.model.QueryModel;
import com.huigou.topsun.base.bsnMessage.appliction.MannualStartWorkApplication; import com.huigou.topsun.base.bsnMessage.appliction.MannualStartWorkApplication;
import com.huigou.topsun.dataPermission.application.DataPermissionApplication;
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.costReimbursement.domain.SapCostReimbursement;
import com.huigou.topsun.sap.purchase.application.SapPurchaseApplication; import com.huigou.topsun.sap.purchase.application.SapPurchaseApplication;
import com.huigou.topsun.sap.purchase.application.SapPurchaseItemApplication; import com.huigou.topsun.sap.purchase.application.SapPurchaseItemApplication;
import com.huigou.topsun.sap.purchase.domain.SapPurchase; import com.huigou.topsun.sap.purchase.domain.SapPurchase;
...@@ -22,23 +20,12 @@ import com.huigou.topsun.sap.purchase.domain.vo.SapPurchaseItemVo; ...@@ -22,23 +20,12 @@ import com.huigou.topsun.sap.purchase.domain.vo.SapPurchaseItemVo;
import com.huigou.topsun.sap.purchase.domain.vo.SapPurchaseVo; import com.huigou.topsun.sap.purchase.domain.vo.SapPurchaseVo;
import com.huigou.topsun.sap.purchase.repository.SapPurchaseRepository; import com.huigou.topsun.sap.purchase.repository.SapPurchaseRepository;
import com.huigou.topsun.sap.common.domain.SapResult; import com.huigou.topsun.sap.common.domain.SapResult;
import com.huigou.topsun.sap.purchaseOrder.domain.SapPurchaseOrder;
import com.huigou.topsun.sap.suppliers.domain.SuppliersInfo;
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.bpm.FlowBroker; import com.huigou.uasp.bpm.FlowBroker;
import com.huigou.uasp.bpm.ProcessAction;
import com.huigou.uasp.bpm.ProcessStartModel;
import com.huigou.uasp.bpm.engine.application.WorkflowApplication;
import com.huigou.util.ClassHelper; import com.huigou.util.ClassHelper;
import com.huigou.util.Constants;
import com.huigou.util.DateUtil; import com.huigou.util.DateUtil;
import com.huigou.util.SDO;
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.springframework.beans.factory.annotation.Autowired; import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service; import org.springframework.stereotype.Service;
import org.springframework.transaction.annotation.Transactional; import org.springframework.transaction.annotation.Transactional;
...@@ -68,6 +55,8 @@ public class SapPurchaseApplicationImpl extends FlowBroker implements SapPurchas ...@@ -68,6 +55,8 @@ public class SapPurchaseApplicationImpl extends FlowBroker implements SapPurchas
@Autowired @Autowired
private MannualStartWorkApplication mannualStartWorkApplication; private MannualStartWorkApplication mannualStartWorkApplication;
@Autowired
private DataPermissionApplication dataPermissionApplication;
@Override @Override
protected String saveBizAndApprovalData() { protected String saveBizAndApprovalData() {
...@@ -299,7 +288,9 @@ public class SapPurchaseApplicationImpl extends FlowBroker implements SapPurchas ...@@ -299,7 +288,9 @@ public class SapPurchaseApplicationImpl extends FlowBroker implements SapPurchas
QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "sapPurchaseList"); QueryDescriptor queryDescriptor = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "sapPurchaseList");
QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, queryRequest); QueryModel queryModel = this.sqlExecutorDao.getQueryModel(queryDescriptor, queryRequest);
queryModel.putDictionary("status", BizBillStatus.getMap()); queryModel.putDictionary("status", BizBillStatus.getMap());
queryModel.addCriteria(" order by fillin_date desc "); // StringBuffer sb = new StringBuffer(queryModel.getSql());
// dataPermissionApplication.getDataManagePermission(sb);
// queryModel.setSql(sb.toString());
return this.sqlExecutorDao.executeSlicedQuery(queryModel); return this.sqlExecutorDao.executeSlicedQuery(queryModel);
} }
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
<sql-query> <sql-query>
SELECT t.id,t.message_sponsor_id,t.task_execute,t.business_code,t.update_date,t.finished_date,t.active, 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.active = 3 THEN CONCAT(t.task_describe, :addText) ELSE
case when t.business_code='HYZY' or t.business_code='LDQR' then SUBSTRING(t.task_describe,LOCATE('-.',t.task_describe)+1) case when t.business_code='HYZY' or t.business_code='clientMaterials' then SUBSTRING(t.task_describe,LOCATE('-.',t.task_describe)+1)
else t.task_describe end else t.task_describe end
END AS task_describe, END AS task_describe,
IFNULL(ad.maktx,left(t.task_describe,LOCATE('-.',t.task_describe)-1)) as title, IFNULL(ad.maktx,left(t.task_describe,LOCATE('-.',t.task_describe)-1)) as title,
...@@ -15,7 +15,7 @@ ...@@ -15,7 +15,7 @@
LEFT JOIN bsn_message_sponsor t2 ON t2.id = t.message_sponsor_id LEFT JOIN bsn_message_sponsor t2 ON t2.id = t.message_sponsor_id
LEFT JOIN sap_non_prod_apply_dept ad ON ad.apply_dept_id = t2.business_id LEFT JOIN sap_non_prod_apply_dept ad ON ad.apply_dept_id = t2.business_id
left join sap_non_prod_apply_base_info bs on bs.id=ad.base_info_id left join sap_non_prod_apply_base_info bs on bs.id=ad.base_info_id
WHERE t.active IN (0, 3) and (bs.distribute=2 or t.business_code='INIT_DPT' or t.business_code='HYZY' or t.business_code='LDQR' ) WHERE t.active IN (0, 3) and (bs.distribute=2 or t.business_code='INIT_DPT' or t.business_code='HYZY' or t.business_code='clientMaterials' )
and task_execute = :taskExecute and task_execute = :taskExecute
</sql-query> </sql-query>
</query> </query>
......
<?xml version="1.0" encoding="UTF-8"?>
<query-mappings>
<query name="queryDataManageTypes" label="查询表单的数据管理权限类型 " table="SA_OPDATAMANAGETYPE">
<sql-query>
select t.*,k.data_kind,k.data_source,k.name kind_name,k.code kind_code,s.name resource_name,
b.name business_name,b.code business_code,s.id data_managedetal_id
from sa_opdatakind k left join SA_OPDATAMANAGETYPEKIND tk
on k.id=tk.data_kind_id left join SA_OPDATAMANAGETYPE t on tk.data_manage_id=t.id
left join sa_opdatamanagedetail s on s.data_manage_id=tk.data_manage_id
left join sa_opdatamanagebusiness b on b.data_manage_id=tk.data_manage_id
where 1=1
</sql-query>
<!-- <condition column="form_no" name="formNo" type="java.lang.String" symbol="=" alias="t"/>-->
</query>
<query name="queryDataManagePermissions" label="查询表单的数据管理权限 " table="sa_opdatamanagement">
<sql-query>
select t.id,t.data_managedetal_id,t.data_manage_id,d.name,p.code,p.name as manage_name,p.full_name,k.data_kind_id
,s.data_kind,s.code data_kind_code
from sa_opdatamanagement t,sa_opdatamanagedetail d,sa_opdatamanagetype p,SA_OPDATAMANAGETYPEKIND k,sa_opdatakind s
where t.data_managedetal_id = d.id and t.data_manage_id = p.id
and k.data_manage_id=p.id and s.id=k.data_kind_id
</sql-query>
</query>
<query name="queryDataManagePermissionDetail" label="查询表单的数据管理权限 " table="sa_opdatamanagement">
<sql-query>
select t.id,t.resource_key,t.resource_value,t.full_id, t.full_name,k.code,k.name,k.data_kind,k.sequence,k.data_source,
t.data_kind_id from sa_opdatamanagedetailresource t left join sa_opdatakind k
on t.data_kind_id = k.id where t.data_managedetal_id = ?
</sql-query>
</query>
<query name="queryDataManagePermissionFields" label="查询表单的数据管理业务类型定义字段 " table="Sa_Opdatamanagebusiness_Field">
<sql-query>
select f.* from SA_OPDATAMANAGEBUSINESS t,Sa_Opdatamanagebusiness_Field f
where f.datamanagebusiness_id=t.id and t.data_manage_id=? and f.data_kind_code=?
</sql-query>
</query>
<query name="queryDataManageBussinessFields" label="查询表单的数据管理业务类型定义字段 " table="Sa_Opdatamanagebusiness_Field">
<sql-query>
select f.* ,k.data_source,k.data_kind from sa_opdatamanagebusiness s,sa_opdatamanagebusiness_field f,sa_opdatakind k
where f.datamanagebusiness_id=s.id and f.data_kind_code=k.code
and s.data_manage_id=? and k.data_kind=?
</sql-query>
</query>
<query name="queryBizDataManagePermission" label="表单中增加查询业务管理权限 " table="Sa_Opdatamanagebusiness_Field">
<sql-query>
select distinct c.name,c.full_id from SA_OPBIZMANAGEMENT t,sa_opbizmanagementtype b,sa_oporg c
where b.id=t.manage_type_id and c.id=t.subordination_id
and t.manager_id like ?
</sql-query>
</query>
</query-mappings>
\ No newline at end of file
...@@ -10,6 +10,20 @@ ...@@ -10,6 +10,20 @@
<condition column="aufnr" name="aufnr" type="java.lang.String" symbol="like" alias="t"/> <condition column="aufnr" name="aufnr" type="java.lang.String" symbol="like" alias="t"/>
</query> </query>
<query name="queryPersonByRole" label="根据角色查询人员" table="SA_OPRole">
<sql-query>
SELECT DISTINCT
s.id, s.NAME, p.POSITION_CODE
FROM
sa_oporg p,
sa_opperson s,
SA_OPOrg o,
SA_OPAuthorize a,
SA_OPRole r WHERE
p.full_id LIKE concat( o.full_id, '%' ) AND p.person_id = s.id AND ((
CASE WHEN s.person_kind IS NULL OR s.person_kind = '' THEN 'def' ELSE s.person_kind END ) = ( CASE WHEN r.role_person_kind IS NULL OR r.role_person_kind = '' THEN 'def' ELSE r.role_person_kind END ))
AND o.id = a.org_id AND a.role_id = r.id AND p.STATUS = 1 AND o.STATUS = 1 AND r.CODE = 'clientMaterialRole'
</sql-query>
</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