Commit fb3c0762 authored by 鲁鑫's avatar 鲁鑫

客户异常报告多选

parent 15fd5837
<%--采购申请--%>
<%@ page contentType="text/html; charset=utf-8" language="java" %>
<%@ taglib uri="/WEB-INF/taglib.tld" prefix="x" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<form class="hg-form ui-show" method="post" action="" id="queryMainForm">
<x:hidden name="customerOrderNo"/>
<div class="hg-form-row">
<x:inputC name="aufnr" label="生产单号" labelCol="2" fieldCol="2"/>
</div>
<x:searchButtons/>
</form>
<x:title title="生产单列表" hideTable="#maingrid" name="list"/>
<div id="maingrid" style="margin:2px;"></div>
\ No newline at end of file
<%--采购申请--%>
<%@ page contentType="text/html; charset=utf-8" language="java" %>
<%@ taglib uri="/WEB-INF/taglib.tld" prefix="x" %>
<%@ taglib uri="http://java.sun.com/jsp/jstl/core" prefix="c" %>
<html>
<head>
<x:base include="layout,dialog,grid,tree,dateTime,combox,attachment,commonTree,comboDialog"/>
</head>
<body>
<div class="container-fluid">
<x:billTitle title="请选择异常报告单类型" needStatus="true" needPerson="true"/>
<form class="hg-form" method="post" action="" id="submitForm">
<div class="hg-form-cols">
<div class="hg-form-row">
<x:selectC name="billType" label="报告单类型" labelCol="4" fieldCol="8" required="true"/>
</div>
</div>
</form>
</div>
</body>
\ No newline at end of file
var clientGridManager,produceGridManager, purchaseGridManager, dutyPersonGridManager = null
var clientGridManager,produceGridManager, purchaseGridManager, dutyPersonGridManager,exceptionClientManager = null;var checkbox = true;
$(function () {
initialize();
initSerachBox();
......@@ -67,13 +67,17 @@ function initialize() {
// return false;
}
if (v.value== "3"){
checkbox = true
initSerachBox();
showClientDiv();
UICtrl.setElRequiredFlag("#customerNo", true);
} else {
checkbox = false
initSerachBox();
UICtrl.setElRequiredFlag("#customerNo", false);
showProduceDiv();
}
UICtrl.setElHideOrShow("#loseMoney",false);
}
}
});
......@@ -129,6 +133,7 @@ function showClientDiv() {
}
setPurchaseMustInput(false);
setProduceMustInput(true);
UICtrl.setElHideOrShow("#loseMoney",false);
}
function showPurchaseDiv() {
......@@ -143,7 +148,6 @@ function showPurchaseDiv() {
// alert(e.error);
}
$("#purchaseDiv").show();
setPurchaseMustInput(true);
setProduceMustInput(false);
}
......@@ -153,13 +157,16 @@ function setPurchaseMustInput(flag) {
UICtrl.setElRequiredFlag("#customerOrderNoPur", flag);
UICtrl.setElRequiredFlag("#brandName", flag);
UICtrl.setElHideOrShow("#loseMoney",true);
}
function setProduceMustInput(flag) {
if ($('#exceptionReasonType').val() == "3"){
UICtrl.setElRequiredFlag("#customerNo", flag);
}
UICtrl.setElRequiredFlag("#customerOrderNo", flag);
UICtrl.setElRequiredFlag("#customerOrderNo", false);
UICtrl.setElHideOrShow("#loseMoney",false);
}
function initSerachBox(){
......@@ -186,6 +193,10 @@ function initSerachBox(){
$('#customerOrderNo').searchbox({
type: "system", name: "sapCustomerOrderSelect",
checkbox:checkbox,
checkboxIndex:"VBELN",
textIndex:"NAME1",
valueIndex:"VBELN",
getParam: function (item) {
if (Public.isBlank($('#werksName').val())) {
Public.tip("请先选择工厂!")
......@@ -203,7 +214,8 @@ function initSerachBox(){
},
onChange: function (value, data) {
if ($('#exceptionReasonType').val()=="3") { //客户异常
$('#customerName').val(data.NAME1);
//$('#customerName').val(data.NAME1);
$('#customerName').val(value.text);
}
if ($('#exceptionReasonType').val()=="2"&&data.VBELN!=undefined) { //生产异常
produceGridManager.addRows({
......@@ -214,7 +226,7 @@ function initSerachBox(){
number: data.PSMNG
});
}
$('#customerOrderNo').val(data.VBELN);
$('#customerOrderNo').val(value.value);
}
});
//产品类别
......@@ -289,7 +301,49 @@ function initClientGrid() {
produceToolbarOptions=null;
var clientToolbarOptions = UICtrl.getDefaultToolbarOptions({
addHandler: function () {
//如果生产单号/客户单号 不为空,根据单号弹框查询
var customerOrderNo = $("#customerOrderNo").val();
if (Public.isNotBlank(customerOrderNo)){
UICtrl.showAjaxDialog({
title: '新增',
width: 1200,
height: 400,
url: web_app.name + '/exceptionReport/chooseExceptionClientDetail.load',
param:{customerOrderNo:customerOrderNo},
init: function (){
initExceptionClient();
},
ok: function () {
var rows = exceptionClientManager.getSelectedRows();
for (var i = 0 ;i<rows.length;i++){
var row = rows[i];
var dates = clientGridManager.getData();
if (dates != null && dates.length > 0){
for (let j = 0; j < dates.length; j++) {
var data = dates[i];
if (data.produceNo == row.AUFNR){
Public.tip("生产单号:"+row.AUFNR+" 已选择,请取消勾选!");
return false;
}
}
}
clientGridManager.addRow({
produceNo: row.AUFNR,
productCode: row.MATNR,
productName: row.MAKTX,
number: row.PSMNG,
unitName: row.MEINS,
currencyName: row.KOEIN,
money: row.KWERT,
sendDate: row.LFDAT
});
}
this.close();
}
})
}else {
UICtrl.addGridRow(clientGridManager);
}
},
deleteHandler: function () {
var _grid = UICtrl.getGridManager('#clientgrid');
......@@ -340,6 +394,80 @@ function initClientGrid() {
UICtrl.setSearchAreaToggle(clientGridManager);
}
function initExceptionClient(){
var toolbarOptions = UICtrl.getDefaultToolbarOptions({
});
exceptionClientManager = UICtrl.grid('#maingrid', {
columns: getExceptionClientColumns(),
dataAction: 'server',
url: web_app.name + '/exceptionReport/slicedExceptionClientList.ajax',
parms: {
werks: $("#werks").val(),
kunnr: $("#customerNo").val(),
vbeln: $("#customerOrderNo").val(),
reasonType: $('#exceptionReasonType').val()
},
height:'400', // colRowNum*35+90
heightDiff: -4,
sortName: 'id',
sortOrder: 'asc',
checkbox: true,
usePager: true,
rownumbers: true,
enabledEdit: true,
fixedCellHeight: true,
selectRowButtonOnly: true,
//autoApplyNextEditor:false,
toolbar: toolbarOptions,
})
UICtrl.setSearchAreaToggle(exceptionClientManager);
}
function getExceptionClientColumns(){
var columns = [];
columns.push({
display: "客户单号", name: "BSTNK", width: "160", align: "left", type: "string",
});
columns.push({
display: "生产单号", name: "AUFNR", width: "160", align: "left", type: "string",
});
columns.push(
{display: "产品编码", name: "MATNR", width: "160", align: "left", type: "string"
} );
columns.push(
{display: "产品名称", name: "MAKTX", width: "250", align: "left", type: "string"
} );
columns.push(
{display: "数量", name: "PSMNG", width: "60", align: "left", type: "string"
} );
columns.push(
{display: "单位", name: "MEINS", width: "60", align: "left", type: "string"
} );
columns.push(
{display: "币别", name: "KOEIN", width: "60", align: "left", type: "string"
} );
columns.push(
{display: "金额", name: "KWERT", width: "60", align: "left", type: "string"
} );
columns.push(
{display: "出货日期", name: "LFDAT", width: "140", align: "left", type: "date"
} );
return columns;
}
function query(obj) {
var param = $(obj).formToJSON();
UICtrl.gridSearch(exceptionClientManager, param);
}
function reloadExceptionClientGrid() {
exceptionClientManager.loadData();
}
function resetForm(obj) {
$(obj).formClean();
}
function countSumChange() {
if ($('#exceptionReasonType').val() == "1") {
countSum(purchaseGridManager.rows);
......@@ -403,7 +531,21 @@ function getClientGridColumns() {
} );
columns.push(
{display: "币别", name: "currencyName", width: "100", align: "left", type: "string"
,editor: {type: "text"}
,//editor: {type: "text"}
editor: {
required: false, type: "select",
data: {
type: 'system',
name: "dictionary",
getParam: function (item) {
return {fieldName: "WAERS"}
},
back: {
WAERS: "currency",
KTEXT: "currencyName",
}
},
}
} );
columns.push(
{display: "金额", name: "money", width: "100", align: "left", type: "string"
......@@ -440,8 +582,22 @@ function getProcduceGridColumns() {
{display: "单位", name: "unitName", width: "80", align: "left", type: "string"
,editor: {type: "text"}
},
{display: "币别", name: "currencyName", width: "100", align: "left", type: "string"
,editor: {type: "text"}
{display: "币别", name: "currencyName", width: "100", align: "left", type: "string",
editor: {
required: false, type: "select",
data: {
type: 'system',
name: "dictionary",
getParam: function (item) {
return {fieldName: "WAERS"}
},
back: {
WAERS: "currency",
KTEXT: "currencyName",
}
},
}
//,editor: {type: "text"}
},
{display: "金额", name: "money", width: "100", align: "left", type: "string"
,editor: {type: "text",mask: '9999999.999'}
......@@ -652,8 +808,22 @@ function getPurchaseGridColumns() {
}
},
{
display: "币别", name: "currencyName", width: "100", align: "left", type: "string"
, editor: {type: "text"}
display: "币别", name: "currencyName", width: "100", align: "left", type: "string",
editor: {
required: false, type: "select",
data: {
type: 'system',
name: "dictionary",
getParam: function (item) {
return {fieldName: "WAERS"}
},
back: {
WAERS: "currency",
KTEXT: "currencyName",
}
},
}
//editor: {type: "text"}
},
{
display: "损失金额", name: "money", width: "100", align: "left", type: "string"
......@@ -664,7 +834,7 @@ function getPurchaseGridColumns() {
editor: {type: "text", mask: '9999999.999'}
},
{
display: "金额", name: "totalMoney", width: "100", align: "left", type: "string"
display: "损失金额", name: "totalMoney", width: "100", align: "left", type: "string"
}
// {
// display: "出货日期", name: "sendDate", width: "140", align: "left", type: "date"
......
......@@ -149,20 +149,20 @@
<td class="td2" >
<#if (itemList)?? && ((itemList)?size > 0)>
<#list itemList as list>
<p class="p1" style="width:90pt" ><span>${(list.money)!' '}</span></p>
</#list>
</#if>
</td>
<td class="td1">
<p class="p1"><span style="font-weight:bolder ">折算金额</span></p>
</td>
<td class="td2">
<#if (itemList)?? && ((itemList)?size > 0)>
<#list itemList as list>
<p class="p1" style="width:85pt" ><span>${(list.rmbMoney)!' '}</span></p>
<p class="p1" style="width:90pt" ><span>${(list.totalMoney)!' '}</span></p>
</#list>
</#if>
</td>
<#-- <td class="td1">-->
<#-- <p class="p1"><span style="font-weight:bolder ">折算金额</span></p>-->
<#-- </td>-->
<#-- <td class="td2">-->
<#-- <#if (itemList)?? && ((itemList)?size > 0)>-->
<#-- <#list itemList as list>-->
<#-- <p class="p1" style="width:85pt" ><span>${(list.rmbMoney)!' '}</span></p>-->
<#-- </#list>-->
<#-- </#if>-->
<#-- </td>-->
<td class="td1">
<p class="p1"><span style="font-weight:bolder ">客诉编号</span></p>
</td>
......@@ -230,6 +230,14 @@
</td>
</tr>
<tr >
<td class="td1">
<p class="p1"><span style="font-weight:bolder ">赔付金额</span></p>
</td>
<td class="td2" style="width:90%">
<p class="p1" style="width:auto" ><span>${(head.payMoney)!' '}</span></p>
</td>
</tr>
</table>
<table>
<tr >
......@@ -259,7 +267,11 @@
<p class="p1"><span style="font-weight:bolder ">备注</span></p>
</td>
<td class="td2" style="width:90%">
<p class="p1" style="width:auto"><span class="autoLine">${(head.remark)!' '}</span></p>
<p class="p1" style="width:auto">
<span class="autoLine">${(head.remark)!' '}</span>
<br/>
<span class="autoLine">${(head.opinion)!' '}</span>
</p>
</td>
</tr>
......
......@@ -728,7 +728,7 @@ public class ExceptionReportApplicationImpl extends FlowBroker implements Except
} else{
exceptionReport.setExceptionType("外部");
}
String sql="select s.code,w.handler_name,w.handler_id,w.dept_name,w.full_id,w.HANDLED_DATE FROM WF_PROCUNITHANDLER w left join sa_oporg s on s.id=w.HANDLER_ID";
String sql="select s.code,w.handler_name,w.handler_id,w.dept_name,w.full_id,w.HANDLED_DATE,w.opinion FROM WF_PROCUNITHANDLER w left join sa_oporg s on s.id=w.HANDLER_ID";
sql+=" where biz_id='"+id+"' order by w.HANDLED_DATE desc ";
List<Map<String, Object>> mapList=sqlExecutorDao.queryToListMap(sql);
Map<String ,Object> data = new HashMap<>();
......@@ -738,7 +738,9 @@ public class ExceptionReportApplicationImpl extends FlowBroker implements Except
}
if (mapList.size()>1) {
String preLastAuditPerson = mapList.get(1).get("handlerName").toString();
String opinion = mapList.get(1).get("opinion").toString();
data.put("preAuditPerson",preLastAuditPerson);
data.put("opinion",opinion);
}
if ("supplier".equals(exceptionReport.getBillType())){
//StringBuffer dealmethod=new StringBuffer("");
......
......@@ -6,6 +6,8 @@ import com.huigou.topsun.sap.exceptionReport.application.*;
import com.huigou.topsun.sap.exceptionReport.domain.ExceptionReport;
import com.huigou.topsun.sap.exceptionReport.domain.ExceptionReportResponsible;
import com.huigou.topsun.sap.exceptionReport.domain.query.ExceptionReportQueryRequest;
import com.huigou.topsun.sap.sapApplication.application.SapMaterialApplication;
import com.huigou.topsun.sap.sapApplication.domain.query.SapDialogOrderQuery;
import com.huigou.uasp.annotation.ControllerMapping;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.client.CommonController;
......@@ -15,6 +17,8 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Controller;
import org.springframework.util.ObjectUtils;
import java.io.IOException;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
......@@ -40,6 +44,8 @@ public class ExceptionReportController extends CommonController {
private ExceptionReportCashApplication exceptionReportCashApplication;
@Autowired
private ExceptionReportGoodsApplication exceptionReportGoodsApplication;
@Autowired
private SapMaterialApplication sapMaterialApplication;
@Override
protected String getPagePath() {
......@@ -65,8 +71,11 @@ public class ExceptionReportController extends CommonController {
return toResult(map);
}
public String chooseExceptionDetail(){
return forward("chooseExceptionDetail");
public String chooseExceptionClientDetail(){
SDO sdo = this.getSDO();
String customerOrderNo = sdo.getString("customerOrderNo");
this.putAttribute("customerOrderNo",customerOrderNo);
return forward("chooseExceptionClientDetail");
}
/**
......@@ -258,4 +267,16 @@ public class ExceptionReportController extends CommonController {
this.putAttribute("customerOrders",list);
return success();
}
public String slicedExceptionClientList(){
SDO sdo = this.getSDO();
SapDialogOrderQuery queryRequest = sdo.toObject(SapDialogOrderQuery.class);
List<Map<String,String>> mapList = new ArrayList<>();
try {
mapList = sapMaterialApplication.getSapCustomerOrder(queryRequest);
} catch (IOException e) {
throw new RuntimeException(e.getMessage());
}
return packGridDataAndResult(mapList);
}
}
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