Commit f94403b2 authored by wanghang's avatar wanghang

主页 任务展示 3

parent 7d737fc0
var gridManager = null;
$(document).ready(function () {
initializateUI()
loadNonProdApplyListGrid();
})
function initializateUI() {
UICtrl.layout("#layout", {leftWidth: 3});
}
function loadNonProdApplyDeptListGrid() {
var toolbarOptions = UICtrl.getDefaultToolbarOptions({
deleteHandler: deleteHandler
});
gridManager = UICtrl.grid("#nonProdApplyDeptListGrid", {
columns: [
{display: "申请单编号", name: "billCode", width: 60, minWidth: 60, type: "string", align: "left"},
{display: "申请状态", name: "statusTextView", width: 60, minWidth: 60, type: "string", align: "left"},
{display: "申请人", name: "personMemberName", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "申请部门", name: "deptName", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "申请日期", name: "fillinDate", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "维护类型", name: "maintenanceTypeTextView", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "批准人", name: "approver", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "批准日期", name: "approvalDate", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "通用品名", name: "genericName", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "适用标准", name: "applicableStandard", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "基本计量单位", name: "baseUnitTextView", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "规格", name: "specifications", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "材质", name: "material", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "版式", name: "design", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "尺码", name: "size", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "品牌", name: "brand", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "用途", name: "materialUsage", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "物品属性", name: "itemAttributesTextView", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "业务用途", name: "businessUsageTextView", width: 140, minWidth: 60, type: "string", align: "left"},
{display: "文本说明", name: "textDescription", width: 140, minWidth: 60, type: "string", align: "left"},
],
dataAction: "server",
url: web_app.name + '/sapNonProdApply/slicedNonProdApplyList.ajax',
pageSize: 20,
usePager: true,
toolbar: toolbarOptions,
width: "100%",
height: "100%",
heightDiff: -8,
checkbox: true,
async: false,
fixedCellHeight: true,
selectRowButtonOnly: true,
onDblClickRow: function (data, rowindex, rowobj) {
doView(data.id);
},
onAfterShowData: function (data){
console.log(data)
}
});
UICtrl.setSearchAreaToggle(gridManager);
}
function query(obj) {
var param = $(obj).formToJSON();
UICtrl.gridSearch(gridManager, param);
}
function reloadGrid() {
gridManager.loadData();
}
function resetForm(obj) {
$(obj).formClean();
}
//删除按钮
function deleteHandler() {
DataUtil.del({
action: 'sapNonProdApply/deleteNonProdApply.ajax',
gridManager: gridManager, idFieldName: 'id',
onSuccess: function () {
reloadGrid();
}
});
}
function addHandler() {
UICtrl.addTabItem({
tabid: 'nonProdApply',
text: "非产品/非本成品类物料主数据维护申请",
url: web_app.name + '/sapNonProdApply/forwardNonProdApplyDetail.job'
});
}
function doView(id) {
UICtrl.addTabItem({
tabid: 'showNonProdApply'+id,
text: "非产品/非本成品类物料主数据维护申请详情",
url: web_app.name + '/sapNonProdApply/showNonProdApply.job?bizId='+id+"&isDetailPage=true"
});
}
// function next(){
// UICtrl.addTabItem({
// tabid: 'showNonProdApplyNext',
// text: "非产品/非本成品类物料主数据维护申请详情",
// url: web_app.name + '/sapNonProdApply/forwardNonProdApplyNext.do?isDetailPage=true'
// });
// }
\ 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,combox,commonTree"/>
<x:script src='/biz/topsun/sap/nonProdApply/nonProdApplyList.js'/>
</head>
<body>
<div class="container-fluid">
<%-- <x:button value="next" onclick="next()" icon="fa-save"/>--%>
<div class="ui-hide">
<x:select name="processType" dictionary="processType"/>
<x:select name="yesorno" dictionary="yesorno"/>
</div>
<div id="layout">
<div position="center" title="非本成品类物料部门数据维护查询">
<x:title title="common.button.search" hideTable="queryMainForm" isHide="true"/>
<form class="hg-form ui-hide" method="post" action="" id="queryMainForm">
<x:inputC name="proofingApplyNo" required="false" label="申请单号" labelCol="1"/>
<x:searchButtons/>
</form>
<div class="blank_div clearfix"></div>
<div id="nonProdApplyDeptListGrid" style="margin: 2px;"></div>
</div>
</div>
</div>
</body>
</html>
\ No newline at end of file
......@@ -34,6 +34,7 @@ function loadNonProdApplyListGrid() {
gridManager = UICtrl.grid("#nonProdApplyListGrid", {
columns: [
{display: "申请单编号", name: "billCode", width: 60, minWidth: 60, type: "string", align: "left"},
{display: "申请状态", name: "statusTextView", width: 60, minWidth: 60, type: "string", align: "left"},
{display: "申请人", name: "personMemberName", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "申请部门", name: "deptName", width: 120, minWidth: 60, type: "string", align: "left"},
{display: "申请日期", name: "fillinDate", width: 120, minWidth: 60, type: "string", align: "left"},
......
let gridManager=null;
let gridManager = null;
//页面控制标识
let control = {
isInitiator: false,//是否为审核人
isDistribute: false,//是否已分发
}
$(document).ready(function () {
initializate()
loadGrid();
console.log($("#businessUsage").val())
// initAssistantGrid();
loadRejectReasonBox();
})
function initializate() {
$('input[name="maintenanceType"]').change(function() {
if ($(this).is(':checked')) {
console.log($(this).val()); // 输出选中的值
switch ($(this).val()) {
case 'new':
if($("#mtart").val()=="ZMPN"){
UICtrl.enable($("#matnr"));
}else {
UICtrl.disable($("#matnr"));
}
UICtrl.disable($("#lvorm"));
UICtrl.enable($("#mtart"));
UICtrl.enable($("#matkl"));
UICtrl.enable($("#spart"));
break;
case 'modify':
UICtrl.enable($("#lvorm"))
UICtrl.disable($("#mtart"));
UICtrl.disable($("#matkl"));
UICtrl.disable($("#spart"));
break;
case 'extend':
UICtrl.enable($("#lvorm"))
UICtrl.disable($("#mtart"));
UICtrl.disable($("#matkl"));
UICtrl.disable($("#spart"));
break;
}
}
});
// let isInitiator = ($("#isInitiator").val() === "true");
// if (isInitiator) {
// //创建或审核人
// $("#buttonBox").remove();
// }else{
// //审核人
// $("#auditForm").remove();
// }
$('input[name="businessUsage"]').change(function() {
if ($(this).is(":checked")) {
console.log($(this).val()); // 输出选中的值
}
});
// $('input[name="maintenanceType"]').change(function () {
// if ($(this).is(':checked')) {
// console.log($(this).val()); // 输出选中的值
// switch ($(this).val()) {
// case 'new':
// if ($("#mtart").val() == "ZMPN") {
// UICtrl.enable($("#matnr"));
// } else {
// UICtrl.disable($("#matnr"));
// }
// UICtrl.disable($("#lvorm"));
// UICtrl.enable($("#mtart"));
// UICtrl.enable($("#matkl"));
// UICtrl.enable($("#spart"));
// break;
// case 'modify':
// UICtrl.enable($("#lvorm"))
// UICtrl.disable($("#mtart"));
// UICtrl.disable($("#matkl"));
// UICtrl.disable($("#spart"));
// break;
// case 'extend':
// UICtrl.enable($("#lvorm"))
// UICtrl.disable($("#mtart"));
// UICtrl.disable($("#matkl"));
// UICtrl.disable($("#spart"));
// break;
// }
// }
// });
//
// $('input[name="businessUsage"]').change(function () {
// if ($(this).is(":checked")) {
// console.log($(this).val()); // 输出选中的值
// }
// });
}
/**
* 初始化对应的分发部门
*/
function loadGrid() {
let coRowNum = $("#businessUsage").val().replace(/,/g, '')+1;
let coRowNum = $("#businessUsage").val().replace(/,/g, '') + 1;
// let length = dept.length;
// let dept=$("#businessUsage").val().split(",");
// let a=(dept.length+1)*37.5;
gridManager = UICtrl.grid("#businessPersonnelListGrid", {
columns: [
{ display: "部门", name: "deptName", width: 200, minWidth: 60, type: "string", align: "left" },
{ display: "部门人员", name: "userName", width: 200, minWidth: 60, type: "string", align: "left",
{display: "部门", name: "deptName", width: 200, minWidth: 60, type: "string", align: "left"},
{
display: "部门人员", name: "userName", width: 200, minWidth: 60, type: "string", align: "left",
editor: {
required: true, type: "select",
data: {
type: 'system',
name: "testUser",
back: {
id: "userName",
userCode:"userCode"
},
getParam: function (data) {
return {deptCode: data.deptCode}
},
},
type: 'tree',
data: {name: 'org', filter: 'psm', minWidth: 250},
textField: 'handlerName', valueField: 'handlerId'
}
// editor: {
// required: true, type: "select",
// data: {
// type: 'system',
// name: "testUser",
// back: {
// id: "userName",
// userCode: "userCode"
// },
// getParam: function (data) {
// return {deptCode: data.deptCode}
// },
// },
// }
},
{ display: "人员Id", name: "userCode", width: 200, minWidth: 60, type: "string", align: "left",
{
display: "人员Id", name: "userCode", width: 200, minWidth: 60, type: "string", align: "left",
editor: {
type: 'text',
required: true
}
}
},
// { display: "审批人", name: "handlerName", width: 250, minWidth: 60, type: "string", align: "left",
// editor: { type: "dynamic", getEditor: function (row) {
// var dataSourceConfig = row['dataSourceConfig'] || {};
// if (typeof dataSourceConfig == "string"){
// dataSourceConfig = (new Function("return " + dataSourceConfig))();
// }
// return dataSourceConfig;
// }}
// },
// { display: "属性值", name: "propertyDisplay", width: 150, minWidth: 60, type: "string", align: "left",
// editor: {
// type: "dynamic", getEditor: function (row) {
// var dataSource = row['dataSource'] || "";
// if (dataSource) {
// if (typeof dataSource == "string"){
// dataSource = (new Function("return " + dataSource))();
// }
// return dataSource;
// }
// return {};
// }
// }
// }
],
dataAction: "server",
url: web_app.name + '/sapNonProdApplyNext/slicedDeptList.ajax',
parms:{dept:$("#businessUsage").val()},
parms: {dept: $("#businessUsage").val()},
pageSize: 20,
usePager: false,
enabledEdit: true,
width: "100%",
height:coRowNum*37.5,
height: coRowNum * 37.5,
heightDiff: -8,
fixedCellHeight: true,
selectRowButtonOnly: true
selectRowButtonOnly: true,
});
UICtrl.setSearchAreaToggle(gridManager);
}
//
// function initAssistantGrid() {
// var toolbarOptions = UICtrl.getDefaultToolbarOptions({
// addHandler: function () {
// UICtrl.addGridRow(assistantGrid, {sequence: assistantGrid.getData().length + 1});
// },
// deleteHandler: function () {
// assistantGrid.deleteSelectedRow();
// }
// });
// var param = {}
// assistantGrid = UICtrl.grid('#businessPersonnelListGrid', {
// columns: [
// {
// display: "描述",
// name: "description",
// width: 150,
// minWidth: 60,
// type: "string",
// align: "left",
// frozen: true,
// editor: {type: 'text', required: true}
// },
// {
// display: "审批人类别",
// name: "handlerKindName",
// width: 100,
// minWidth: 60,
// type: "string",
// align: "left",
// frozen: true,
// editor: {
// type: 'select',
// data: {
// type: "bpm",
// name: "approvalHandlerKind",
// back: {code: "handlerKindCode", name: "handlerKindName", dataSourceConfig: "dataSourceConfig"}
// },
// required: true
// }
// },
// {
// display: "审批人",
// name: "handlerName",
// width: 150,
// minWidth: 60,
// type: "string",
// align: "left",
// frozen: true,
// editor: {
// type: 'tree',
// data: {name: 'org', filter: 'psm', minWidth: 250},
// textField: 'handlerName', valueField: 'handlerId'
// }
// },
// {
// display: "排序号", name: "sequence", width: 100, minWidth: 60, type: "string", align: "left",
// editor: {type: 'spinner', required: true}
// }
// ],
// dataAction: 'server',
// url: web_app.name + '/approvalRule/queryAssistantHandlers.ajax',
// parms: param,
// height: 200,
// sortName: 'sequence',
// sortOrder: 'asc',
// toolbar: toolbarOptions,
// enabledEdit: true,
// usePager: false,
// checkbox: true,
// fixedCellHeight: true,
// selectRowButtonOnly: true,
// autoAddRow: {kindId: "assistant", dataSourceConfig: "", /*, chiefId: $("#id").val()*/},
// onBeforeEdit: function (editParm) {
// var c = editParm.column;
// if (c.name == 'value') {//启用的数据value 不能编辑
// return editParm.record['status'] === 0;
// }
// return true;
// }
// });
// }
/**
* 表单提交
* @returns {boolean}
*/
function saveForm() {
let msg="[";
let isUndefined=false
const result = DataUtil.getGridData({
let extendedData = getExtendedData();
if (!extendedData) return false;
var _self = this;
$('#submitForm').ajaxSubmit({
url: web_app.name + '/sapNonProdApplyNext/saveSapNonProdApplyDept.ajax',
param: extendedData,
success: function (data) {
$("#applyDeptId").val(data.applyDeptId);
Public.successTip("保存成功!");
_self.close();
}
});
}
/**
* 分发表单到各个部门
*/
function distributeForm() {
if (control.isDistribute) {
Public.successTip("已分发");
return false;
}
let extendedData = getExtendedData();
if (!extendedData) return false;
$('#submitForm').ajaxSubmit({
url: web_app.name + '/sapNonProdApplyNext/distributeSapNonProdApplyDept.ajax',
param: extendedData,
success: function (data) {
Public.successTip("分发成功!");
control.isDistribute = true;
_self.close();
}
});
}
function getExtendedData() {
let msg = "[";
let isUndefined = false
const deptStaffResult = DataUtil.getGridData({
gridManager: gridManager,
isAllData: true,
onCheck: function(data) {
onCheck: function (data) {
if (typeof data.userCode === 'undefined') {
msg += `${data.deptName}、`;
isUndefined = true;
}
console.log(data);
}
});
if (isUndefined) {
Public.tip(`${msg.slice(0, -1)}]未选择对应分发人员`);
return false
}
// var _self = this;
// $('#submitForm').ajaxSubmit({
// url: web_app.name + '/proofingMake/saveProofingMake.ajax',
// param: extendedData,
// success: function (data) {
// Public.successTip("保存成功!");
// _self.close();
// }
// });
let extendedData = {};
return extendedData.deptStaff = Public.encodeJSONURI(deptStaffResult);
}
function rejectForm() {
$('#auditForm').ajaxSubmit({
url: web_app.name + '/sapNonProdApplyNext/distributeSapNonProdApplyDept.ajax',
param: {},
success: function (data) {
Public.successTip("已驳回!");
_self.close();
}
});
}
function distributeForm(){
/**
* 根据选择的驳回的部门生成输入框
*/
function loadRejectReasonBox() {
$('input[name="bu2"]').change(function () {
let val = $(this).val()
let textData = $(this).parent().text().trim()
if (this.checked) {
if ($(`#id_${val}`).length) {
// 元素存在
$(`#id_${val}`).show();
} else {
// 元素不存在
let box = `<div id="id_${val}">
<div class="col-xs-4 col-sm-2" style="height:60px;">
<label class="hg-form-label" name="text_${val}" title="[${textData}]驳回原因">[${textData}]驳回原因&nbsp;:</label>
</div>
<div class="col-xs-8 col-sm-10 col-warp col-white-bg" style="height:60px;">
<textarea name="text_${val}" label="[${textData}]驳回原因" id="text_${val}"></textarea>
</div>
</div>`;
$("#rejectReasonBox").append(box)
}
$(window).scrollTop($(document).height());
} else {
$(`#id_${val}`).hide();
}
}
);
}
\ No newline at end of file
......@@ -6,29 +6,78 @@
<x:base include="layout,dialog,grid,tree,combox,commonTree,date"/>
<x:script src='/biz/topsun/sap/nonProdApply/nonProdApplyNext.js'/>
</head>
<%--<style>--%>
<%-- .box {--%>
<%-- display: none;--%>
<%-- }--%>
<%--</style>--%>
<body>
<x:hidden name="isDetailPage" value="false"/> <!--是否是详情页-->
<x:billTitle title="非产品/非本成品类物料主数据维护申请表" needStatus="false" needPerson="true"/>
<form class="hg-form" method="post" action="" id="submitForm">
<x:hidden name="isInitiator" value="false"/> <!--是否是详情页-->
<div class="container-fluid" style="padding: 10px;">
<x:billTitle title="非产品/非本成品类物料主数据维护申请表" needStatus="false" needPerson="true"/>
<form class="hg-form" method="post" action="" id="submitForm">
<div style="float: right; margin-right: 10px" class="btn-group" >
<div style="float: right; margin-right: 10px" class="btn-group" id="buttonBox">
<button id="save" title="" type="button" onclick="saveForm()" class="btn btn-gray"><i
class="fa fa-save"></i>保存
</button>
<button id="back" title="" type="button" class="btn btn-gray"><i
class="fa fa-reply"></i>撤销
</button>
<button id="showChart" title="" type="button" onclick="distributeForm()" class="btn btn-gray" ><i
<button id="showChart" title="" type="button" onclick="distributeForm()" class="btn btn-gray"><i
class="fa fa-sitemap"></i>分发
</button>
</div>
<br/>
<div class=" border-left-top" style="margin-top: 20px;">
<div class=" gray-bg">
<div class="col-xs-2 " style="text-align: center;margin-top: 30px">
<h4>驳回历史</h4>
</div>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:textareaC rows="2" name="textDescription" label="驳回原因" readonly="true" labelCol="1" fieldCol="11"/>
</div>
<div class="hg-form-row">
<x:inputC name="billCode" label="处理人" labelCol="3" readonly="true" fieldCol="3"/>
<x:inputC name="billCode" label="处理时间" labelCol="3" readonly="true" fieldCol="3"/>
</div>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:textareaC rows="2" name="textDescription" label="驳回原因" readonly="true" labelCol="1" fieldCol="11"/>
</div>
<div class="hg-form-row">
<x:inputC name="billCode" label="驳回人" labelCol="1" readonly="true" fieldCol="2"/>
<x:inputC name="billCode" label="驳回时间" labelCol="1" readonly="true" fieldCol="2"/>
<x:inputC name="billCode" label="处理人" labelCol="1" readonly="true" fieldCol="2"/>
<x:inputC name="billCode" label="处理时间" labelCol="1" readonly="true" fieldCol="2"/>
</div>
</div>
<div class="hg-form-cols">
<div class="hg-form-row">
<div class="col-xs-4 col-sm-1" style="height:56px;"> <label class="hg-form-label" id="textDescription_label" title="驳回原因">驳回原因[<span style="color:red;">new</span>]&nbsp;:</label></div>
<div class="col-xs-8 col-sm-11 col-warp col-gray-bg" style="height:56px;"><textarea name="textDescription" cols="" rows="2" label="驳回原因" readonly="readonly" id="textDescription"></textarea> </div>
</div>
<div class="hg-form-row">
<div class="col-xs-4 col-sm-1"> <label class="hg-form-label" id="billCode_label" title="驳回人">驳回人&nbsp;:</label></div>
<div class="col-xs-8 col-sm-2 col-warp col-gray-bg"> <input type="text" name="billCode" value="" readonly="readonly" id="billCode" label="驳回人">
</div>
<div class="col-xs-4 col-sm-1"> <label class="hg-form-label" id="billCode_label" title="驳回时间">驳回时间&nbsp;:</label></div>
<div class="col-xs-8 col-sm-2 col-warp col-gray-bg"> <input type="text" name="billCode" value="" readonly="readonly" id="billCode" label="驳回时间">
</div>
<div class="col-xs-4 col-sm-1"> <label class="hg-form-label" id="billCode_label" title="处理人">处理人&nbsp;:</label></div>
<div class="col-xs-8 col-sm-2 col-warp col-gray-bg"> <input type="text" name="billCode" value="" readonly="readonly" id="billCode" label="处理人">
</div>
<div class="col-xs-4 col-sm-1"> <label class="hg-form-label" id="billCode_label" title="处理时间">处理时间&nbsp;:</label></div>
<div class="col-xs-8 col-sm-2 col-warp col-gray-bg"> <input type="text" name="billCode" value="" readonly="readonly" id="billCode" label="处理时间">
</div>
</div>
</div>
</div>
</div>
</div>
<x:hidden name="id"/>
<x:hidden name="applyDeptId"/>
<x:title title="基本信息" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
......@@ -97,14 +146,15 @@
</div>
</div>
<div class="hg-form-cols" style="display: none">
<x:title title="分类" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="klart" label="类型" labelCol="1" fieldCol="2"/>
<x:inputC name="classify" label="分类" labelCol="1" fieldCol="2"/>
</div>
</div>
<div class="hg-form-cols" style="display: none">
<x:title title="销售" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="vkorg" label="销售组织" labelCol="1" fieldCol="2"/>
<x:inputC name="vtweg" label="分销渠道" labelCol="1" fieldCol="2"/>
......@@ -127,9 +177,9 @@
<x:inputC name="tragr" label="运输组" labelCol="1" fieldCol="2"/>
</div>
</div>
<div class="hg-form-cols" style="display: none">
<x:title title="采购" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="werks" label="工厂" labelCol="1" fieldCol="2"/>
<x:inputC name="bstme" label="采购计量单位" labelCol="1" fieldCol="2"/>
<x:inputC name="umrenPurch" label="转换分母" labelCol="1" fieldCol="2"/>
<x:inputC name="umrezPurch" label="转换分子" labelCol="1" fieldCol="2"/>
......@@ -137,9 +187,10 @@
<x:inputC name="mprof" label="MPN参数" labelCol="1" fieldCol="2"/>
</div>
</div>
<div class="hg-form-cols" style="display: none">
<x:title title="MRP" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="werksPurch" label="工厂" labelCol="1" fieldCol="2"/>
<x:inputC name="lgort" label="库存地点" labelCol="1" fieldCol="2"/>
<x:inputC name="disgr" label="MRP组" labelCol="1" fieldCol="2"/>
<x:inputC name="dismm" label="MRP类型" labelCol="1" fieldCol="2"/>
......@@ -168,6 +219,13 @@
<x:inputC name="altsl" label="BOM选择方法" labelCol="1" fieldCol="2"/>
<x:inputC name="sbdkz" label="独立/集中" labelCol="1" fieldCol="2"/>
<x:inputC name="diskz" label="库存地MRP标识" labelCol="1" fieldCol="2"/>
</div>
</div>
<x:title title="生产" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="ausme" label="投料计量单位" labelCol="1" fieldCol="2"/>
<x:inputC name="umrenProd" label="转换分母(生产)" labelCol="1" fieldCol="2"/>
<x:inputC name="umrezProd" label="转换分子(生产)" labelCol="1" fieldCol="2"/>
......@@ -176,9 +234,9 @@
</div>
</div>
<div class="hg-form-cols" style="display: none">
<x:title title="存储管理" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="werksQm" label="工厂" labelCol="1" fieldCol="2"/>
<x:inputC name="lgortQm" label="库存地点" labelCol="1" fieldCol="2"/>
<x:inputC name="sernp" label="序列号参数" labelCol="1" fieldCol="2"/>
<x:inputC name="serlv" label="序列号水平" labelCol="1" fieldCol="2"/>
......@@ -186,9 +244,9 @@
</div>
</div>
<div class="hg-form-cols" style="display: none">
<x:title title="仓库管理" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="werksProfit" label="工厂" labelCol="1" fieldCol="2"/>
<x:inputC name="lgortProfit" label="库存地点" labelCol="1" fieldCol="2"/>
<x:inputC name="lgnum" label="仓库号" labelCol="1" fieldCol="2"/>
<x:inputC name="lgtyp" label="存储类型" labelCol="1" fieldCol="2"/>
......@@ -201,10 +259,9 @@
</div>
</div>
<div class="hg-form-cols" style="display: none">
<x:title title="质量管理" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="werksDoc" label="工厂(文档要求)" labelCol="1" fieldCol="2"/>
<x:inputC name="kzdkz" label="文档要求" labelCol="1" fieldCol="2"/>
<x:inputC name="art" label="检验类型" labelCol="1" fieldCol="2"/>
<x:inputC name="aktiv" label="激活标识" labelCol="1" fieldCol="2"/>
......@@ -217,30 +274,58 @@
</div>
</div>
<div class="hg-form-cols" style="display: none">
<x:title title="财务核算" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="bwkey" label="工厂" labelCol="1" fieldCol="2"/>
<x:inputC name="bklas" label="评估分类" labelCol="1" fieldCol="2"/>
<x:inputC name="mlast" label="价格确定" labelCol="1" fieldCol="2"/>
<x:inputC name="vprsv" label="价格控制" labelCol="1" fieldCol="2"/>
<x:inputC name="peinh" label="定价基数" labelCol="1" fieldCol="2"/>
<x:inputC name="verpr" label="移动平均价" labelCol="1" fieldCol="2"/>
<x:inputC name="stprs" label="标准价" labelCol="1" fieldCol="2"/>
</div>
</div>
<x:title title="成本核算" name="group"/>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:inputC name="ekalr" label="数量结构" labelCol="1" fieldCol="2"/>
<x:inputC name="ncost" label="不参与成本核算" labelCol="1" fieldCol="2"/>
<x:inputC name="hkmat" label="物料来源" labelCol="1" fieldCol="2"/>
<x:inputC name="awsls" label="差异码" labelCol="1" fieldCol="2"/>
</div>
</div>
</form>
</form>
<form class="hg-form" method="post" action="" id="auditForm">
<div class=" border-left-top" style="margin-top: 20px;">
<div class=" gray-bg">
<div class="col-xs-2 " style="text-align: center;margin-top: 30px">
<span>部门数据审核</span>
</div>
<div class="hg-form-cols">
<div class="hg-form-row">
<x:checkboxListC name="bu2" label="驳回部门" list="bu" labelCol="2"
fieldCol="10"/>
</div>
<div id="rejectReasonBox"></div>
<div style="text-align: center">
<div class="btn-group" style="margin: 5px 0px 8px 0px;">
<button id="reject" title="" type="button" onclick="rejectForm()" class="btn btn-gray"><i
class="fa fa-reply"></i>驳回
</button>
<button id="exPass" title="" type="button" class="btn btn-gray"><i
class="fa fa-mail-forward"></i>检查通过
</button>
<button id="send" title="" type="button" onclick="distributeForm()"
class="btn btn-gray"><i
class="fa fa-send-o"></i>传输
</button>
</div>
</div>
</div>
</div>
</div>
</form>
</div>
</body>
</html>
package com.huigou.topsun.sap.nonProdApply.controller;
package com.huigou.topsun.base;
import com.huigou.context.Operator;
import com.huigou.topsun.base.bsnMessage.appliction.BsnMessageApplication;
......@@ -24,14 +24,11 @@ import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.context.annotation.Primary;
import org.springframework.stereotype.Service;
import java.sql.Timestamp;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
/**
* 优先注入此类
* 优先注入此类替换huigou包下该类型bean
*/
@Primary
@Service
......
......@@ -57,6 +57,14 @@ public class BsnMessage implements Serializable {
@Column(name = "finished_date")
private Date finishedDate;
/**
* 驳回信息
*/
@Column(name = "reject_msg")
private String rejectMsg;
/**
*任务执行地址
*/
......
......@@ -55,6 +55,11 @@ public class BsnMessageQueryRequest extends QueryAbstractRequest {
private Date finishedDate;
/**
* 携带信息
*/
@Column(name = "reject_msg")
private String rejectMsg;
private String executorUrl;
......
......@@ -5,6 +5,11 @@ import com.huigou.topsun.base.bsnMessage.domain.BsnMessage;
import org.springframework.data.jpa.repository.JpaRepository;
import java.util.List;
public interface BsnMessageRepository extends JpaRepository<BsnMessage,String> {
List<BsnMessage> findAllByBusinessId(String BusinessId);
}
......@@ -19,7 +19,7 @@ public interface NonProdApplyDeptApplication {
* 编辑详细信息
* @param sdo
*/
void saveSapNonProdApplyDept(SDO sdo);
Map<String,Object> saveSapNonProdApplyDept(SDO sdo);
/**
* 更改分发状态
......@@ -28,4 +28,10 @@ public interface NonProdApplyDeptApplication {
void distributeSapNonProdApplyDept(SDO sdo);
SapNonProdApplyDept getNonProdApplyDeptById(String id);
/**
* 驳回相关的部门
* @param sdo
*/
void rejectNonProdApplyDept(SDO sdo);
}
\ No newline at end of file
......@@ -106,6 +106,7 @@ public class NonProdApplyApplicationImpl extends FlowBroker implements NonProdA
model.putDictionary("baseUnit", DictUtil.getDictionary("measuringUnit"));
model.putDictionary("itemAttributes", DictUtil.getDictionary("suppliesType"));
model.putDictionary("businessUsage", DictUtil.getDictionary("serviceusage"));
model.putDictionary("status", DictUtil.getDictionary("bizBillStatus"));
return this.sqlExecutorDao.executeSlicedQuery(model);
}
......
......@@ -3,6 +3,8 @@ package com.huigou.topsun.sap.nonProdApply.application.impl;
import com.fasterxml.jackson.core.type.TypeReference;
import com.fasterxml.jackson.databind.ObjectMapper;
import com.huigou.topsun.base.bsnMessage.domain.BsnMessage;
import com.huigou.topsun.base.bsnMessage.repository.BsnMessageRepository;
import com.huigou.topsun.proofing.domain.proofingApply.model.ProofingApplyProcess;
import com.huigou.topsun.sap.nonProdApply.application.NonProdApplyDeptApplication;
......@@ -14,16 +16,22 @@ import com.huigou.util.SDO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.stereotype.Service;
import java.util.Arrays;
import java.util.HashMap;
import java.util.List;
import java.util.Map;
@Service
public class NonProdApplyDeptApplicationImpl extends BaseApplication implements NonProdApplyDeptApplication {
@Autowired
NonProdApplyDeptRepository nonProdApplyDeptRepository;
@Autowired
BsnMessageRepository bsnMessageRepository;
@Override
public void saveSapNonProdApplyDept(SDO sdo) {
public Map<String,Object> saveSapNonProdApplyDept(SDO sdo) {
Map<String,Object> map = new HashMap<>();
SapNonProdApplyDept nonProdApplyDept = sdo.toObject(SapNonProdApplyDept.class);
ObjectMapper objectMapper = new ObjectMapper();
String deptStaffJSON = sdo.getString("deptStaff");
......@@ -31,15 +39,35 @@ public class NonProdApplyDeptApplicationImpl extends BaseApplication implements
// });
SapNonProdApplyDept save = nonProdApplyDeptRepository.save(nonProdApplyDept);
map.put("applyDeptId",save.getApplyDeptId());
return map;
}
@Override
public void distributeSapNonProdApplyDept(SDO sdo) {
this.saveSapNonProdApplyDept(sdo);
Map<String, Object> map = this.saveSapNonProdApplyDept(sdo);
List<BsnMessage> nonProdApplyDeptList = bsnMessageRepository.findAllByBusinessId((String) map.get("applyDeptId"));
nonProdApplyDeptList.forEach(item->item.setActive(0));
bsnMessageRepository.save(nonProdApplyDeptList);
}
@Override
public SapNonProdApplyDept getNonProdApplyDeptById(String id) {
return nonProdApplyDeptRepository.findOne(id);
}
@Override
public void rejectNonProdApplyDept(SDO sdo) {
String septString = sdo.getString("dept");
//需要被驳回的部门
List<String> deptList = Arrays.asList(septString.split(","));
String bdid = sdo.getString("表单的id");
//更改状态此对象为驳回状态
SapNonProdApplyDept one = nonProdApplyDeptRepository.findOne(bdid);
one.setStatus(2);
nonProdApplyDeptRepository.save(one);
//获取此条数据的相关部门信息
List<BsnMessage> allByBusinessId = bsnMessageRepository.findAllByBusinessId(bdid);
}
}
......@@ -12,9 +12,15 @@ import com.huigou.topsun.sap.nonProdApply.domain.SapNonProdApplyDept;
import com.huigou.topsun.sap.nonProdApply.domain.query.NonProdApplyBaseInfoQueryRequest;
import com.huigou.uasp.annotation.ControllerMapping;
import com.huigou.uasp.bmp.common.BizBillStatus;
import com.huigou.uasp.bmp.common.easysearch.EasySearch;
import com.huigou.uasp.bmp.common.easysearch.domain.model.EasySearchParse;
import com.huigou.uasp.bmp.common.easysearch.domain.model.QuerySchemeField;
import com.huigou.uasp.bmp.opm.application.MemEasySearcher;
import com.huigou.uasp.bmp.opm.application.impl.MemEasySearcherImpl;
import com.huigou.uasp.client.CommonController;
import com.huigou.util.SDO;
import org.springframework.beans.factory.annotation.Autowired;
import org.springframework.data.domain.PageRequest;
import org.springframework.stereotype.Controller;
import java.util.*;
......@@ -76,9 +82,8 @@ public class NonProdApplyNextController extends CommonController {
*/
public String distributeSapNonProdApplyDept(){
SDO sdo = this.getSDO();
SapNonProdApplyDept nonProdApplyDept = sdo.toObject(SapNonProdApplyDept.class);
// nonProdApplyDeptApplication.saveSapNonProdApplyDept(sdo);
return toResult(nonProdApplyDept);
nonProdApplyDeptApplication.distributeSapNonProdApplyDept(sdo);
return success();
}
/**
......@@ -88,10 +93,46 @@ public class NonProdApplyNextController extends CommonController {
public String fillInNonProdApplyDept(){
SDO sdo = this.getSDO();
String id = sdo.getBizId();
Map<String, String> map = DictUtil.getDictionary("serviceusage");
this.putAttribute("bu",map);
this.putAttribute("isReadOnly","false");
SapNonProdApplyDept nonProdApplyDept = nonProdApplyDeptApplication.getNonProdApplyDeptById(id);
return forward("nonProdApplyNext",nonProdApplyDept);
}
@EasySearch(queryName = "userNameSelect")
public Map<String, Object> queryResourceNameGroup(SDO sdo){
// Integer intPage = sdo.getInteger("intPage", 1);
// Integer pageSize = sdo.getInteger("pageSize",10);
// PageRequest pageRequest = new PageRequest(intPage - 1, pageSize);
// List<QuerySchemeField> fields =
// Arrays.asList(new QuerySchemeField("id", "id", "hidden"),
// new QuerySchemeField("资源名称", "gxmc", "string", 200L),
// new QuerySchemeField("资源编码", "gxbm", "string", 100L),
// new QuerySchemeField("单位", "dw", "string", 100L),
// new QuerySchemeField("用量", "yl", "string", 100L),
// new QuerySchemeField("工作中心", "gzzx", "string", 100L));
// EasySearchParse easySearchParse = new EasySearchParse();
// easySearchParse.setFields(fields);
// easySearchParse.setWidth(450L);
// String processType = sdo.getString("paramValue");
//// List<Map<String, Object>> mapList = resourceFiledService.getResourceFieldValueListByProcess(processType);
// MemEasySearcher<Map<String, Object>> memEasySearcher = new MemEasySearcherImpl<>();
// Map<String, Object> model = memEasySearcher.search(mapList, easySearchParse, pageRequest, null);
// return model;
return null;
}
public void rejectNonProdApplyDept(){
SDO sdo = this.getSDO();
String septString = sdo.getString("dept");
//需要被驳回的部门
List<String> deptList = Arrays.asList(septString.split(","));
}
}
......@@ -25,7 +25,8 @@ public class SapNonProdApplyDept implements Serializable {
name = "system-uuid",
strategy = "guid"
)
private String id;
@Column(name = "apply_dept_id")
private String applyDeptId;
/**
* 主表id
......@@ -33,6 +34,12 @@ public class SapNonProdApplyDept implements Serializable {
@Column(name = "base_info_id")
private String baseInfoId;
/**
* 状态(0:未分发,1:待检查,2:已驳回,3:已完成)
*/
private int status;
/**
* 物料编码
*/
......
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