Commit 5841f10a authored by wanghang's avatar wanghang

bean注入问题

parent 0ba4686a
......@@ -48,8 +48,8 @@
<option name="tableUIInfoList">
<list>
<TableUIInfo>
<option name="className" value="NonProdApplyBaseInfo" />
<option name="tableName" value="non_prod_apply_base_info" />
<option name="className" value="SapNonProdApplyDept" />
<option name="tableName" value="sap_non_prod_apply_dept" />
</TableUIInfo>
</list>
</option>
......
......@@ -92,6 +92,15 @@ $.extend(ExcelImpManager.prototype,{
let code = prompt("请输入编码");
Public.syncAjax(web_app.name + '/globalCode/revampGlobalCode.ajax',{dictionaryCode:code})
// UICtrl.showDialog({
// title: $.i18nProp('编码详情'),
// width: 600,
// url: web_app.name + '/globalCode/forwardGlobalCode.load',
// ok: function (){
// let code =$("#dictionaryCode").val();
// Public.syncAjax(web_app.name + '/globalCode/revampGlobalCode.ajax',{dictionaryCode:code})
// }
// });
if(_self.getTemplateId()==''){
Public.errorTip('请选择模板。');
return false;
......
$(document).ready(function () {
$('#productCode').searchbox({
type: "product",
name: "productCode",
$('#dictionaryCode').searchbox({
type: "system",
name: "dictionaryCodes",
onChange: function (value, data) {
$('#dictionaryCode').val(data.code)
}
......
......@@ -4,7 +4,7 @@
<html>
<head>
<x:base include="layout,dialog,grid,tree,combox,commonTree,date"/>
<x:script src='/biz/topsun/sap/statsIndicators/statsIndicators.js'/>
<script src='<c:url value="/system/excelimport/inputDictionariesCode.js"/>' type="text/javascript"></script>
</head>
<body>
<x:billTitle title="导入字典对应编码" needStatus="false" needPerson="true"/>
......
......@@ -9,7 +9,7 @@ function initialize(){
$("#proofingApplyNgReReason").prop("placeholder","录入此列本单作废");
//若是作为流程页或详情页,则初始化bom
if($("#productId").val()!=null&&$("#productId").val()!=""){
showTable({proofingApplyId:$("#proofingApplyId").val()});
showTechnologyTable({proofingApplyId:$("#proofingApplyId").val()},"proofingApplyTechnologyId",null);
}
let isDetailPage = ($("#isDetailPage").val() === "true");
if (isDetailPage) {
......@@ -24,11 +24,14 @@ function bindQueryEvent() {
onChange: function (value, data) {
ajaxRenderDataGoForm({productId:data.productId});
$('#productCategoryName').val(data.productCategoryName)
showTechnologyTable(data.productId);
showTechnologyTable({productId:data.productId},"technologyId",null);
}
});
}
/**
* 流程引擎回调设置打样的id
* @param value 打样申请的id
......@@ -72,5 +75,4 @@ function getExtendedData(processAction) {
return extendedData;
}
return getTableResult();
}
}
\ No newline at end of file
......@@ -13,7 +13,7 @@ function initialize() {
*/
let isDetailPage = ($("#isDetailPage").val() === "true");
if (isDetailPage) {
showTable({proofingMakeId:$("#proofingMakeId").val()});
showTechnologyTable({proofingMakeId:$("#proofingMakeId").val()},"proofingMakeTechnologyId",null);
$("#jobPageTop").hide();
if($("#jobPageTop").length>0){
$("#formButton").hide();
......@@ -28,7 +28,7 @@ function bindQueryEvent() {
onChange: function (value, data) {
$('#productCode').val(data.productCode);
ajaxRenderDataGoForm(data.proofingApplyNo);
showTable({proofingApplyId:data.proofingApplyId});
showTechnologyTable({proofingApplyId:data.proofingApplyId},"proofingApplyTechnologyId",null);
}
});
}
......
//是否开启联动事件
var isDetail=false,isComplete=null;
// var isDetail=false;
//定义生成表格的参数对象
var bomObj={
......@@ -17,6 +17,7 @@ var technologyObj={
node:"technologyGrid",
url:"slicedTechnologyList",
gridManager:null,
primaryKey:null,
columns:[
{display: "工艺路线名称", name: "technologyName", width: 140, minWidth: 60, type: "string", align: "left",
editor: {
......@@ -26,13 +27,13 @@ var technologyObj={
}
],
linkage:function (data){
debugger
let result = data.Rows.length>0?data.Rows[0].technologyId:-1; // 获取选中行
processObj.parms = { technologyId: result };
processBomObj.parms = { technologyId: result };
let key = this.primaryKey;
let val = data.Rows.length>0?data.Rows[0][key]:-1; // 获取选中行
processObj.parms = { [key]: val };
processBomObj.parms = { [key]: val };
if(processObj.gridManager==null){
loadProofingApplyGrid(processObj);
loadProofingApplyGrid(processBomObj);
loadGrid(processObj);
loadGrid(processBomObj);
}else {
reloadGrid(processObj);
reloadGrid(processBomObj);
......@@ -108,6 +109,7 @@ var processBomObj={
parms:{},
node:"processBomGrid",
url:"slicedProcessMaterialList",
primaryKey:null,
columns:[
{ display: "物料", name: "materialName", width: 140, minWidth: 60, type: "string", align: "left",
editor: {
......@@ -137,8 +139,7 @@ var processBomObj={
}
//创建表格(参数、列、插入的节点、请求地址)
function loadProofingApplyGrid(obj) {
isComplete=false;
function loadGrid(obj) {
var toolbarOptions = UICtrl.getDefaultToolbarOptions({
addHandler: function () {
UICtrl.addGridRow(obj.gridManager);
......@@ -174,60 +175,14 @@ function loadProofingApplyGrid(obj) {
}
/**
* 详情页初始化调用
* 获取申请或制造单的工艺工序等数据生成表格
* @param proofingApplyId
*/
function showTable(params) {
isDetail=true;
// 根据传入的参数确定使用哪个ID
let key = Object.keys(params)[0];
let value = params[key];
// 根据key来确定是"apply"还是"make"
let a=key.includes("Apply")?"proofingApply":"proofingMake";
technologyObj.parms = { [a+"Id"]: value };
let promise = new Promise(function(resolve, reject) {
if (technologyObj.gridManager != null) {
reloadGrid(technologyObj);
} else {
technologyObj=loadProofingApplyGrid(technologyObj);
}
setTimeout(function() {
resolve();
}, 1200);
});
promise.then(function() {
let technologyResult = DataUtil.getGridData({
gridManager: technologyObj.gridManager,
isAllData: true
});
let technologyId = technologyResult.length > 0 ? technologyResult[0][a+"TechnologyId"] : -1;
processObj.parms = {[a+"TechnologyId"]: technologyId}
processBomObj.parms = {[a+"TechnologyId"]: technologyId}
if (processObj.gridManager != null) {
reloadGrid(processObj);
reloadGrid(processBomObj);
} else {
processObj=loadProofingApplyGrid(processObj);
processBomObj=loadProofingApplyGrid(processBomObj);
}
});
}
//根据产品编号展示产品的艺表格
function showTechnologyTable(productId){
isDetail=false;
technologyObj.parms = {productId: productId};
function showTechnologyTable(parms,technologyKey,processKey){
// isDetail=false;
technologyObj.primaryKey=technologyKey
processObj.primaryKey=processKey
technologyObj.parms = parms;
if(technologyObj.gridManager==null) {
loadProofingApplyGrid(technologyObj);
loadGrid(technologyObj);
}{
reloadGrid(technologyObj);
}
......@@ -235,7 +190,6 @@ function showTechnologyTable(productId){
$(document).ready(function() {
// switchGridManager();
// technologyClickRequestProcess();
UICtrl.layout("#layout",{
leftWidth:2,
......@@ -258,36 +212,35 @@ function reloadGrid(obj) {
/**
* 根据选定的technology列获取对应的process
* 冒泡机制永远都会先执行此点击事件,需要让平台内置事件先执行来获取行id
*/
function technologyClickRequestProcess(){
$(document).on('click', '#technology .l-grid-row', function(event) {
setTimeout(function() {
if(isDetail)return;
debugger
let result = DataUtil.getUpdateRow(technologyObj.gridManager); // 获取选中行
processObj.parms = { technologyId: result.technologyId };
processBomObj.parms = { technologyId: result.technologyId };
if (processObj.gridManager != null) {
reloadGrid(processObj);
reloadGrid(processBomObj);
} else {
loadProofingApplyGrid(processObj);
loadProofingApplyGrid(processBomObj);
}
}, 0);
});
}
// /**
// * 根据选定的technology列获取对应的process
// * 冒泡机制永远都会先执行此点击事件,需要让平台内置事件先执行来获取行id
// */
// function technologyClickRequestProcess(){
// $(document).on('click', '#technology .l-grid-row', function(event) {
// setTimeout(function() {
// if(isDetail)return;
// debugger
// let result = DataUtil.getUpdateRow(technologyObj.gridManager); // 获取选中行
// processObj.parms = { technologyId: result.technologyId };
// processBomObj.parms = { technologyId: result.technologyId };
// if (processObj.gridManager != null) {
// reloadGrid(processObj);
// reloadGrid(processBomObj);
// } else {
// loadProofingApplyGrid(processObj);
// loadProofingApplyGrid(processBomObj);
// }
// }, 0);
// });
//
// }
/**
* 获取编辑表格中的数据
* @returns {{}|boolean}
*/
function getTableResult(){
debugger
let technologyResult = DataUtil.getUpdateRow(technologyObj.gridManager); // 获取选中行
let processResult =processObj.gridManager.getSelectedRows();
......
......@@ -33,7 +33,7 @@
<div class="hg-form-row">
<x:radioC name="maintenanceType" label="维护类型" labelCol="1" fieldCol="2" dictionary="maintainType"/>
<x:inputC name="approvalStatus" label="批准状态" readonly="true" labelCol="1" fieldCol="2"/>
<x:selectC name="statusId" label="批准状态" dictionary="bizBillStatus" disabled="true" labelCol="1" fieldCol="2"/>
<x:inputC name="approver" label="批准人" labelCol="1" fieldCol="2"/>
<x:inputC name="approvalDate" label="批准日期" wrapper="date" labelCol="1" fieldCol="2"/>
</div>
......
......@@ -2,8 +2,7 @@ var gridManager = null;
$(document).ready(function () {
initializateUI()
// loadNonProdApplyListGrid();
// console.log(gridManager)
loadNonProdApplyListGrid();
})
function initializateUI() {
UICtrl.layout("#layout", {leftWidth: 3});
......@@ -61,11 +60,6 @@ function loadNonProdApplyListGrid() {
UICtrl.setSearchAreaToggle(gridManager);
}
function a() {
debugger
loadNonProdApplyListGrid();
console.log(gridManager)
}
function query(obj) {
var param = $(obj).formToJSON();
......@@ -103,7 +97,7 @@ function deleteHandler() {
function addHandler() {
UICtrl.addTabItem({
tabid: 'nonProdApply',
text: "统计指标数据",
text: "非产品/非本成品类物料主数据维护申请",
url: web_app.name + '/sapNonProdApply/forwardNonProdApplyDetail.job'
});
}
......@@ -111,7 +105,15 @@ function addHandler() {
function doView(id) {
UICtrl.addTabItem({
tabid: 'showNonProdApply'+id,
text: "统计指标详情",
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
......@@ -8,7 +8,7 @@
</head>
<body>
<div class="container-fluid">
<div onclick="a()">a</div>
<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"/>
......
$(document).ready(function () {
initializate()
})
function initializate() {
console.log("aa")
$("#a").show();
}
\ No newline at end of file
package com.huigou.topsun.base.dictionary;
import java.util.concurrent.atomic.AtomicInteger;
import com.huigou.util.StringUtil;
import java.util.concurrent.atomic.AtomicReference;
public class GlobalCode {
......@@ -12,6 +13,9 @@ public class GlobalCode {
}
public static String get() {
if(StringUtil.isBlank( str.get())){
throw new RuntimeException("未选择编码");
}
return str.get();
}
}
package com.huigou.topsun.base.dictionary.application;
import java.util.Map;
/**
* @Auther: xin.lu
* @Date: 2023/12/20/10:30
* @Description:
*/
public interface DictionaryImportApplication {
static String QUERY_XML_FILE_PATH = "config/topsun/base/dictionaryImport.xml";
Map<String,Object> querySaDictionary(String code);
}
......@@ -66,4 +66,11 @@ public class DictionaryImportApplicationImpl extends BaseApplication implements
return BatchSqlUpdateDetail.newInstance(this.sqlExecutorDao.getDataSource(),
queryDescriptor.getSqlByName("insertRecord"), paramType);
}
@Override
public Map<String, Object> querySaDictionary(String code) {
QueryDescriptor query = this.sqlExecutorDao.getQuery(QUERY_XML_FILE_PATH, "querySaDictionary");
return this.sqlExecutorDao.queryOneToMap(code,query);
}
}
package com.huigou.topsun.base.dictionary.controller;
import com.huigou.topsun.base.dictionary.GlobalCode;
import com.huigou.topsun.base.dictionary.application.DictionaryImportApplication;
import com.huigou.topsun.technology.domain.query.ProcessQueryRequest;
import com.huigou.uasp.annotation.ControllerMapping;
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.Arrays;
import java.util.List;
import java.util.Map;
@Controller
@ControllerMapping("/globalCode")
public class GlobalCodeController extends CommonController {
protected String getPagePath() {
return "/excelImport/";
}
@Autowired
DictionaryImportApplication dictionaryImportApplication;
public String revampGlobalCode(){
SDO sdo = this.getSDO();
String code = sdo.getString("dictionaryCode");
GlobalCode.set(code);
return success();
}
public String forwardGlobalCode(){
return forward("inputDictionariesCode");
}
@EasySearch(queryName = "dictionaryCodes")
public Map<String, Object> queryDictionaryCodes(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", "string", 200L),
new QuerySchemeField("工序名称", "processName", "string", 200L),
new QuerySchemeField("工序类型", "processType", "hidden", 100L),
new QuerySchemeField("工序类型", "processTypeTextView", "string", 100L),
new QuerySchemeField("工时", "workHours", "string", 100L),
new QuerySchemeField("工序内容", "processContent", "hidden", 100L),
new QuerySchemeField("工序说明", "processRemark", "hidden", 100L)
);
EasySearchParse easySearchParse = new EasySearchParse();
easySearchParse.setFields(fields);
easySearchParse.setWidth(450L);
// String processName = sdo.getString("paramValue");
// ProcessQueryRequest queryRequest = sdo.toQueryRequest(ProcessQueryRequest.class);
// queryRequest.setProcessName(processName);
// Map<String, Object> map = processApplication.slicedProcessList(queryRequest);
String code = sdo.getString("code");
Map<String, Object> map = dictionaryImportApplication.querySaDictionary(code);
List<Map<String, Object>> mapList = (List<Map<String, Object>>)map.get("Rows");
MemEasySearcher<Map<String, Object>> memEasySearcher = new MemEasySearcherImpl<>();
Map<String, Object> model = memEasySearcher.search(mapList, easySearchParse, pageRequest, null);
return model;
}
}
......@@ -71,6 +71,9 @@ public class NonProdApplyController extends CommonController {
return success();
}
public String forwardNonProdApplyNext(){
return forward("nonProdApplyNext");
}
}
......
......@@ -31,4 +31,10 @@
</sql>
</query>
<query name="querySaDictionary" label="" table="sa_dictionary">
<sql-query>
select t.id from sa_dictionary t where 1=1 and t.code like ?
</sql-query>
</query>
</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