Commit 1a9def1b authored by 鲁鑫's avatar 鲁鑫

供应商扩展功能

parent 17992933
......@@ -86,14 +86,14 @@
<!--x:selectC name="ktokk" label="供应商帐户组" labelCol="1" fieldCol="2" required="true" dictionary="buGroup"/-->
<x:inputC name="kunnr" label="客户编号" labelCol="1" fieldCol="2"/>
<%--<x:inputC name="vbund" label="贸易伙伴" labelCol="1" fieldCol="2"/>--%>
<x:inputC name="stenr" label="责任税务部门的税收编号" labelCol="2" fieldCol="2" required="true"/>
<x:inputC name="stenr" label="税号" labelCol="1" fieldCol="2" required="true" maxLength="18"/>
<x:selectC name="sperr" label="中心记帐冻结" labelCol="1" fieldCol="1" dictionary="sperr"/>
<x:selectC name="sperr" label="中心记帐冻结" labelCol="1" fieldCol="2" dictionary="sperr"/>
<x:selectC name="sperm" label="集中设置的采购冻结" labelCol="2" fieldCol="1" dictionary="sperrB"/>
</div>
</div>
<div style="padding-top: 15px;">
<x:fileList bizCode="supplier" bizId="attbizId" id="supplierList" title="供应商资料" />
<x:fileList bizCode="supplier" bizId="attbizId" id="supplierList" title="营业执照/开票资料" />
</div>
<div class="blank_div clearfix"></div>
<div id="sapSuppliersBuyerGrid" style="margin: 2px;"></div>
......
......@@ -15,7 +15,9 @@ function loadSuppliersDataListGrid() {
addHandler()
},
updateHandler: showUpdateDialog,
deleteHandler: deleteHandler
extendHandler: {id: 'extendHandler', text: '扩展', img: 'fa-music', className: 'btn-gray',click: function () {
extendHandler();
}}
/* testHandler: {id: 'basicInfoMaintenance', text: '基本信息维护', img: 'fa-music', className: 'btn-gray',
click: function () {
......@@ -38,16 +40,16 @@ function loadSuppliersDataListGrid() {
{display: "申请单编号", name: "billCode", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "申请状态", name: "statusTextView", width: 60, minWidth: 60, type: "string", align: "left"},
{display: "申请日期", name: "fillinDate", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "操作类型", name: "applyType", width: 80, minWidth: 60, type: "string", align: "left"
,render : function (record, rowindex, value, column) {
if (value!=null&&value=="0") {
return "新增";
}else if (value!=null&&value=="1"){
return "修改";
} else {
return "删除";
}
}
{display: "操作类型", name: "applyTypeTextView", width: 80, minWidth: 60, type: "string", align: "left"
// ,render : function (record, rowindex, value, column) {
// if (value!=null&&value=="0") {
// return "新增";
// }else if (value!=null&&value=="1"){
// return "修改";
// } else if (){
// return "删除";
// }
// }
},
{display: "业务伙伴分组", name: "buGroup", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "业务伙伴编号", name: "partner", width: 120, minWidth: 60, type: "string", align: "left"},
......@@ -202,7 +204,7 @@ function showUpdateDialog(id) {
UICtrl.addTabItem({
tabid: 'suppliersDataModi'+id,
text: "供应商主数据修改详情",
url: web_app.name + '/sapSuppliersData/forwardSuppliersDataApply.job?bizId='+result.id
url: web_app.name + '/sapSuppliersData/forwardSuppliersDataApply.job?bizId='+result.id+ '&flag='+'update'
});
}
......@@ -215,6 +217,24 @@ function showUpdateDialog(id) {
// });
// }
function extendHandler(){
let result=DataUtil.getUpdateRow(gridManager);
if (result.applyType=="-1"){
Public.tip("已经删除的不能再扩展!")
return false;
}
if(result.status!==3){
Public.tip("请选择一条审核完成后数据!")
return false;
}
UICtrl.addTabItem({
tabid: 'suppliersDataModi'+result.id,
text: "供应商主数据扩展详情",
url: web_app.name + '/sapSuppliersData/forwardSuppliersDataApply.job?bizId='+result.id + '&flag='+'extend'
});
}
// 关闭对话框
function onDialogCloseHandler() {
if (refreshFlag) {
......
<%@ page language="java" contentType="text/html; charset=utf-8" %>
<%@taglib uri="/WEB-INF/taglib.tld" prefix="x" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<script type="text/javascript">
var applyType ="${applyType}";
</script>
<x:base include="layout,dialog,grid,tree,combox,commonTree,date,attachment"/>
<x:script src='/biz/topsun/sap/suppliers/suppliersExtendDataDetail.js'/>
</head>
<body>
<x:billTitle title="供应商主数据扩展申请表" needStatus="false" needPerson="true"/>
<form class="hg-form" method="post" action="" id="submitForm">
<x:hidden name="id"/>
<x:hidden name="sId"/>
<x:hidden name="applyType"/>
<%-- <x:hidden name="billCode"/>--%>
<%-- <x:hidden name="fillinDate" type="datetime"/>--%>
<x:hidden name="fullId"/>
<x:hidden name="organId"/>
<x:hidden name="organName"/>
<x:hidden name="deptId"/>
<%-- <x:hidden name="deptName"/>--%>
<x:hidden name="positionId"/>
<x:hidden name="positionName"/>
<x:hidden name="personMemberId"/>
<x:hidden name="statusId"/>
<%-- <x:hidden name="personMemberName"/>--%>
<x:title title="申请人填写区域" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="billCode" label="申请单编号" labelCol="1" readonly="true" fieldCol="2"/>
<x:inputC name="personMemberName" label="申请人" readonly="true" labelCol="1" fieldCol="2"/>
<x:inputC name="deptName" label="申请部门" readonly="true" labelCol="1" fieldCol="2"/>
<x:inputC name="fillinDate" label="申请日期" readonly="true" wrapper="date" labelCol="1" fieldCol="2"/>
</div>
</div>
<x:title title="供应商主数据" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="rltgr" label="业务伙伴角色" labelCol="1" fieldCol="2" required="true" readonly="true"/>
<x:selectC name="buGroup" label="业务伙伴分组" labelCol="1" fieldCol="2" required="true" dictionary="buGroup" disabled="true"/>
<x:inputC name="partner" label="供应商编码" labelCol="1" fieldCol="2" required="false" readonly="true"/>
<x:selectC name="title" label="称谓代码" labelCol="1" fieldCol="2" dictionary="title" disabled="true"/>
<x:inputC name="nameOrg1" label="供应商名称1" labelCol="1" fieldCol="2" required="true" readonly="true"/>
<x:inputC name="nameOrg2" label="供应商名称2" labelCol="1" fieldCol="2" readonly="true"/>
<%--<x:inputC name="nameOrg3" label="组织名称3" labelCol="1" fieldCol="2"/>
<x:inputC name="nameOrg4" label="组织名称4" labelCol="1" fieldCol="2"/>--%>
<x:inputC name="buSort1" label="搜索词1" labelCol="1" fieldCol="2" required="true" readonly="true"/>
<x:inputC name="buSort2" label="搜索词2" labelCol="1" fieldCol="2" readonly="true"/>
<%--<x:inputC name="strSuppl1" label="街道2" labelCol="1" fieldCol="2"/>
<x:inputC name="strSuppl2" label="街道3" labelCol="1" fieldCol="2"/>
<x:inputC name="strSuppl3" label="街道4" labelCol="1" fieldCol="2"/>--%>
<x:inputC name="land1Name" label="国家" labelCol="1" fieldCol="2" required="true" wrapper="select" readonly="true"/>
<x:hidden name="land1"/>
<x:inputC name="regionName" label="地区" labelCol="1" fieldCol="2" required="true" wrapper="select" readonly="true"/>
<x:hidden name="region"/>
<x:inputC name="city1" label="城市" labelCol="1" fieldCol="2" required="true" readonly="true"/>
<x:inputC name="street" label="街道地址" labelCol="1" fieldCol="2" maxLength="35" readonly="true"/>
<x:inputC name="strSuppl1" label="街道2" labelCol="1" fieldCol="2" maxLength="35" readonly="true"/>
<x:inputC name="strSuppl2" label="街道3" labelCol="1" fieldCol="2" maxLength="35" readonly="true"/>
<x:inputC name="strSuppl3" label="街道4" labelCol="1" fieldCol="2" maxLength="35" readonly="true"/>
<x:inputC name="strSuppl4" label="街道5" labelCol="1" fieldCol="2" maxLength="35" readonly="true"/>
<x:selectC name="langu" label="语言" labelCol="1" fieldCol="2" required="true" dictionary="langu" disabled="true"/>
<x:inputC name="smtpAddr" label="电子邮件地址" labelCol="1" fieldCol="2" maxLength="30" readonly="true"/>
<x:inputC name="postCode1" label="城市邮政编码" labelCol="1" fieldCol="2" required="true" maxLength="6" readonly="true"/>
<x:inputC name="telNumber" label="电话" labelCol="1" fieldCol="2" readonly="true"/>
<%--<x:inputC name="telExtens" label="第一个电话号码分机" labelCol="1" fieldCol="2"/>--%>
<x:inputC name="mobNumber" label="移动电话" labelCol="1" fieldCol="2" readonly="true"/>
<%--<x:inputC name="mobExtens" label="第一个移动电话号码分机" labelCol="1" fieldCol="2"/>--%>
<x:inputC name="faxNumber" label="传真" labelCol="1" fieldCol="2" maxLength="30" readonly="true"/>
<%--<x:inputC name="faxExtens" label="第一个传真号分机号" labelCol="1" fieldCol="2"/>--%>
<!--x:selectC name="ktokk" label="供应商帐户组" labelCol="1" fieldCol="2" required="true" dictionary="buGroup"/-->
<x:inputC name="kunnr" label="客户编号" labelCol="1" fieldCol="2" readonly="true"/>
<%--<x:inputC name="vbund" label="贸易伙伴" labelCol="1" fieldCol="2"/>--%>
<x:inputC name="stenr" label="税号" labelCol="1" fieldCol="2" required="true" maxLength="18" readonly="true"/>
<x:selectC name="sperr" label="中心记帐冻结" labelCol="1" fieldCol="2" dictionary="sperr" disabled="true"/>
<x:selectC name="sperm" label="集中设置的采购冻结" labelCol="2" fieldCol="1" dictionary="sperrB" disabled="true"/>
</div>
</div>
<div style="padding-top: 15px;">
<x:fileList bizCode="supplier" bizId="attbizId" id="supplierList" title="营业执照/开票资料" />
</div>
<div class="blank_div clearfix"></div>
<div id="sapSuppliersBuyerGrid" style="margin: 2px;"></div>
<div id="cashierGrid">
<div class="blank_div clearfix"></div>
<div id="sapSuppliersPayGrid" style="margin: 2px;"></div>
<div class="blank_div clearfix"></div>
<div id="sapSuppliersBankGrid" style="margin: 2px;"></div>
</div>
</form>
</body>
</html>
......@@ -21,6 +21,7 @@ public interface SuppliersDataApplication {
String PROCESS_DEFINITION_KEY = "sapSuppliersDataProc";
String PROCESS_DEFINITION_KEY2 = "sapSuppliersDataModiProc";
String PROCESS_DEFINITION_KEY3 = "sapSuppliersDataDeleProc";
String PROCESS_DEFINITION_KEY4 = "sapSuppliersDataExteProc";
String QUERY_XML_FILE_PATH= "config/topsun/sap/sapSuppliersData/suppliersData.xml";
......@@ -46,4 +47,8 @@ public interface SuppliersDataApplication {
void deleteSuppliersBankByIds( List<String> ids);
List<Map<String, String>> selectSuppliersDatas(String types);
String checkApprovalStatus(String partner);
Map<String, String> getSupplierNowItemList(String partner);
}
......@@ -70,9 +70,11 @@ public class SuppliersDataController extends CommonController {
this.putAttribute("applyType","0");
SDO sdo = this.getSDO();
String bizId=sdo.getString("bizId");
String flag=sdo.getString("flag");
SuppliersInfo suppliersInfo = new SuppliersInfo();
suppliersInfo.setApplyType("0");
String isDel=sdo.getString("isDel");
String page = "suppliersDataDetail";
if (StringUtil.isNotBlank(isDel)){ //删除流程
suppliersInfo = suppliersDataApplication.loadSuppliersDataById(bizId);
this.putAttribute("processDefinitionKey", SuppliersDataApplication.PROCESS_DEFINITION_KEY3);
......@@ -98,9 +100,17 @@ public class SuppliersDataController extends CommonController {
if (deletedList.size()>0){
throw new RuntimeException("该供应商已经执行删除,不能再次修改了!");
}
if ("update".equals(flag)){
this.putAttribute("processDefinitionKey", SuppliersDataApplication.PROCESS_DEFINITION_KEY2);
this.putAttribute("applyType", "1");
suppliersInfo.setApplyType("1");
} else if ("extend".equals(flag)) {
this.putAttribute("processDefinitionKey", SuppliersDataApplication.PROCESS_DEFINITION_KEY4);
this.putAttribute("applyType", "2");//扩展
suppliersInfo.setApplyType("2");
page = "suppliersExtendDataDetail";
}
suppliersInfo.setBillCode("");
suppliersInfo.setId("");
// suppliersInfo.setSId(bizId);
......@@ -117,7 +127,7 @@ public class SuppliersDataController extends CommonController {
Operator operator = getOperator();//获取当前操作员的详情信息
suppliersInfo.setDefaultValues(new OrgUnit(operator.getFullId(),operator.getFullName()));
return forward("suppliersDataDetail",suppliersInfo);
return forward(page,suppliersInfo);
}
public String showSuppliersData() {
......@@ -130,6 +140,9 @@ public class SuppliersDataController extends CommonController {
if (!(suppliersInfo.getApplyType().equals("0"))){
this.putAttribute("sId", id);
this.putAttribute("applyType",suppliersInfo.getApplyType());
if ("2".equals(suppliersInfo.getApplyType())){
return forward("suppliersExtendDataDetail", suppliersInfo);
}
}
return forward("suppliersDataDetail", suppliersInfo);
}
......@@ -190,4 +203,18 @@ public class SuppliersDataController extends CommonController {
impDataFromXLS.readFile();
return success();
}
public String checkApprovalStatus(){
SDO sdo = this.getSDO();
String partner = sdo.getString("partner");
suppliersDataApplication.checkApprovalStatus(partner);
return success();
}
public String getSupplierNowItemList(){
SDO sdo = this.getSDO();
String partner = sdo.getString("partner");
Map<String, String> map = suppliersDataApplication.getSupplierNowItemList(partner);
return toResult(map);
}
}
<?xml version="1.0" encoding="UTF-8"?>
<definitions xmlns="http://www.omg.org/spec/BPMN/20100524/MODEL" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:activiti="http://activiti.org/bpmn" xmlns:bpmndi="http://www.omg.org/spec/BPMN/20100524/DI" xmlns:omgdc="http://www.omg.org/spec/DD/20100524/DC" xmlns:omgdi="http://www.omg.org/spec/DD/20100524/DI" xmlns:xsd="http://www.w3.org/2001/XMLSchema" typeLanguage="http://www.w3.org/2001/XMLSchema" expressionLanguage="http://www.w3.org/1999/XPath" targetNamespace="http://www.activiti.org/test">
<process id="sapSuppliersDataExteProc" name="供应商主数据扩展" isExecutable="true">
<extensionElements>
<activiti:executionListener event="start" delegateExpression="#{suppliersDataApplication}"></activiti:executionListener>
<activiti:executionListener event="end" delegateExpression="#{suppliersDataApplication}"></activiti:executionListener>
</extensionElements>
<startEvent id="startevent1" name="Start"></startEvent>
<endEvent id="endevent1" name="End"></endEvent>
<userTask id="Apply" name="供应商主数据扩展申请" activiti:formKey="sapSuppliersData/showSuppliersData.job">
<extensionElements>
<activiti:taskListener event="all" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
</extensionElements>
</userTask>
<userTask id="Approve" name="供应商主数据扩展审批" activiti:assignee="${assignee} " activiti:formKey="sapSuppliersData/showSuppliersData.job">
<extensionElements>
<activiti:taskListener event="all" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
<activiti:taskListener event="saveBizData" delegateExpression="#{suppliersDataApplication}"></activiti:taskListener>
</extensionElements>
<multiInstanceLoopCharacteristics isSequential="false" activiti:collection="handlerList" activiti:elementVariable="assignee">
<completionCondition>${chiefApprovePassed}</completionCondition>
</multiInstanceLoopCharacteristics>
</userTask>
<sequenceFlow id="flow1" sourceRef="startevent1" targetRef="Apply"></sequenceFlow>
<sequenceFlow id="flow2" sourceRef="Apply" targetRef="Approve"></sequenceFlow>
<exclusiveGateway id="ApproveFinished" name="审批结束"></exclusiveGateway>
<sequenceFlow id="flow3" name="审批通过" sourceRef="ApprovePassed" targetRef="ApproveFinished">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${approvePassed}]]></conditionExpression>
</sequenceFlow>
<sequenceFlow id="flow4" name="审批结束" sourceRef="ApproveFinished" targetRef="endevent1">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${approveFinished}]]></conditionExpression>
</sequenceFlow>
<sequenceFlow id="flow5" name="审批未结束" sourceRef="ApproveFinished" targetRef="Approve">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!approveFinished}]]></conditionExpression>
</sequenceFlow>
<exclusiveGateway id="ApprovePassed" name="审批通过"></exclusiveGateway>
<sequenceFlow id="flow6" sourceRef="Approve" targetRef="ApprovePassed"></sequenceFlow>
<sequenceFlow id="flow9" name="审批未通过" sourceRef="ApprovePassed" targetRef="Apply">
<conditionExpression xsi:type="tFormalExpression"><![CDATA[${!approvePassed}]]></conditionExpression>
</sequenceFlow>
</process>
<bpmndi:BPMNDiagram id="BPMNDiagram_sapSuppliersDataProc">
<bpmndi:BPMNPlane bpmnElement="sapSuppliersDataProc" id="BPMNPlane_sapSuppliersDataProc">
<bpmndi:BPMNShape bpmnElement="startevent1" id="BPMNShape_startevent1">
<omgdc:Bounds height="35.0" width="35.0" x="355.0" y="50.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="endevent1" id="BPMNShape_endevent1">
<omgdc:Bounds height="35.0" width="35.0" x="355.0" y="550.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="Apply" id="BPMNShape_Apply">
<omgdc:Bounds height="55.0" width="161.0" x="292.0" y="140.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="Approve" id="BPMNShape_Approve">
<omgdc:Bounds height="55.0" width="161.0" x="292.0" y="240.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="ApproveFinished" id="BPMNShape_ApproveFinished">
<omgdc:Bounds height="40.0" width="40.0" x="352.0" y="440.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNShape bpmnElement="ApprovePassed" id="BPMNShape_ApprovePassed">
<omgdc:Bounds height="40.0" width="40.0" x="352.0" y="349.0"></omgdc:Bounds>
</bpmndi:BPMNShape>
<bpmndi:BPMNEdge bpmnElement="flow1" id="BPMNEdge_flow1">
<omgdi:waypoint x="372.0" y="85.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="140.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow2" id="BPMNEdge_flow2">
<omgdi:waypoint x="372.0" y="195.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="240.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow3" id="BPMNEdge_flow3">
<omgdi:waypoint x="372.0" y="389.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="440.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="48.0" x="320.0" y="396.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow4" id="BPMNEdge_flow4">
<omgdi:waypoint x="372.0" y="480.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="550.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="48.0" x="382.0" y="489.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow5" id="BPMNEdge_flow5">
<omgdi:waypoint x="392.0" y="460.0"></omgdi:waypoint>
<omgdi:waypoint x="519.0" y="459.0"></omgdi:waypoint>
<omgdi:waypoint x="519.0" y="317.0"></omgdi:waypoint>
<omgdi:waypoint x="519.0" y="267.0"></omgdi:waypoint>
<omgdi:waypoint x="489.0" y="267.0"></omgdi:waypoint>
<omgdi:waypoint x="453.0" y="267.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="60.0" x="459.0" y="411.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow6" id="BPMNEdge_flow6">
<omgdi:waypoint x="372.0" y="295.0"></omgdi:waypoint>
<omgdi:waypoint x="372.0" y="349.0"></omgdi:waypoint>
</bpmndi:BPMNEdge>
<bpmndi:BPMNEdge bpmnElement="flow9" id="BPMNEdge_flow9">
<omgdi:waypoint x="352.0" y="369.0"></omgdi:waypoint>
<omgdi:waypoint x="231.0" y="369.0"></omgdi:waypoint>
<omgdi:waypoint x="231.0" y="167.0"></omgdi:waypoint>
<omgdi:waypoint x="292.0" y="167.0"></omgdi:waypoint>
<bpmndi:BPMNLabel>
<omgdc:Bounds height="14.0" width="60.0" x="257.0" y="376.0"></omgdc:Bounds>
</bpmndi:BPMNLabel>
</bpmndi:BPMNEdge>
</bpmndi:BPMNPlane>
</bpmndi:BPMNDiagram>
</definitions>
\ 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