602 lines
35 KiB
JavaScript
602 lines
35 KiB
JavaScript
|
|
/*
|
|||
|
|
* @Descripttion:
|
|||
|
|
* @version:
|
|||
|
|
* @Author: Chendch
|
|||
|
|
* @Date: 2020-11-12 09:20:20
|
|||
|
|
* @LastEditors: xiadling xiadling@yonyou.com
|
|||
|
|
* @LastEditTime: 2023-09-27 14:20:15
|
|||
|
|
*/
|
|||
|
|
import {urls, values, childTabArr, formid, baseFormId} from "../methodGroup/constance";
|
|||
|
|
import updateButtonStatus from "./updateButtonStatus";
|
|||
|
|
import { ajax, toast,print,getBusinessInfo,promptBox, base} from 'nc-lightapp-front';
|
|||
|
|
const { NCTooltip } = base;
|
|||
|
|
export default function(props, id) {
|
|||
|
|
let _this = this;
|
|||
|
|
let { initImages, initImagesrc, initImgList, curPageIndex } = this.state;
|
|||
|
|
switch(id){
|
|||
|
|
case 'Add':
|
|||
|
|
ajax({
|
|||
|
|
url : urls['addMaterial'],
|
|||
|
|
data : {node_type:this.config.node_type},
|
|||
|
|
success : (res) => {
|
|||
|
|
this.pageStatus = 'add';
|
|||
|
|
this.setState({formStatus:'add',isBrowse:false},()=>{
|
|||
|
|
this.clearPage(true,()=>{
|
|||
|
|
if(this.config.node_type === 'GROUP_NODE'){
|
|||
|
|
let businessInfo = getBusinessInfo();
|
|||
|
|
this.getAddData(businessInfo.groupId);
|
|||
|
|
}else{
|
|||
|
|
if(this.contextOrg.refpk){
|
|||
|
|
this.getAddData(this.contextOrg.refpk);
|
|||
|
|
}else{
|
|||
|
|
this.getAddData();
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
updateButtonStatus(this.props,this.state.formStatus);
|
|||
|
|
});
|
|||
|
|
ajax({
|
|||
|
|
url : urls['judgeCodeEdit'],
|
|||
|
|
data : {pk_org:this.props.form.getFormItemsValue(formid,'pk_org').value},
|
|||
|
|
success : (res) => {
|
|||
|
|
if(res.data){
|
|||
|
|
//设置可编辑性
|
|||
|
|
this.props.form.setFormItemsDisabled(baseFormId,{code:!res.data.isCodeEdit});
|
|||
|
|
this.props.form.setFormItemsRequired(baseFormId,{code:!res.data.isNextCode});
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
this.setState({ images: [], imagesrc: [], imgList: [], curPageIndex: 0, defaultIndex: -1 });
|
|||
|
|
this.updateFormEditEnable(this.config.node_type);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
break;
|
|||
|
|
case 'Edit':
|
|||
|
|
if(!this.hasPerm(this.props.form.getFormItemsValue(formid,'pk_org').value)){
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
this.updateUploadData(this.props.form.getFormItemsValue(formid,'pk_material').value);
|
|||
|
|
ajax({
|
|||
|
|
url : urls['editMaterial'],
|
|||
|
|
data : {pk:this.props.form.getFormItemsValue(formid,'pk_material').value},
|
|||
|
|
success : (res) => {
|
|||
|
|
this.setState({
|
|||
|
|
formStatus : 'edit',
|
|||
|
|
isBrowse : false
|
|||
|
|
},this.updatePageStatus);
|
|||
|
|
//更新头部按钮状态
|
|||
|
|
updateButtonStatus(this.props,'edit');
|
|||
|
|
this.pageStatus = 'edit';
|
|||
|
|
ajax({
|
|||
|
|
url : urls['judgeCodeEdit'],
|
|||
|
|
data : {pk_org:this.props.form.getFormItemsValue(formid,'pk_org').value},
|
|||
|
|
success : (res) => {
|
|||
|
|
if(res.data){
|
|||
|
|
//设置可编辑性
|
|||
|
|
this.props.form.setFormItemsDisabled(baseFormId,{code:!res.data.isCodeEdit});
|
|||
|
|
this.props.form.setFormItemsRequired(baseFormId,{code:!res.data.isNextCode});
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
this.updateFormEditEnable(this.config.node_type);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
break;
|
|||
|
|
case 'Cancel':
|
|||
|
|
promptBox({
|
|||
|
|
color:"warning", // 提示类别默认"success", "success"/"info"/"warning"/"danger",非必输
|
|||
|
|
title: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000014'), // 提示标题, 默认不同类别下分别为:"已成功"/"帮助信息"/"请注意"/"出错啦",非必输/* 国际化处理: 确认取消*/
|
|||
|
|
content: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000015'), // 提示内容,非必输/* 国际化处理: 是否确认要取消?*/
|
|||
|
|
noFooter: false, // 是否显示底部按钮(确定、取消),默认显示(false),非必输
|
|||
|
|
noCancelBtn: false, // 是否显示取消按钮,,默认显示(false),非必输
|
|||
|
|
beSureBtnName: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000016'), // 确定按钮名称, 默认为"确定",非必输/* 国际化处理: 确定*/
|
|||
|
|
cancelBtnName: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000017'), // 取消按钮名称, 默认为"取消",非必输/* 国际化处理: 取消*/
|
|||
|
|
beSureBtnClick: () => {
|
|||
|
|
if(this.state.code !== ''){
|
|||
|
|
ajax({
|
|||
|
|
url : urls['rollBackMaterialBillCode'],
|
|||
|
|
data : {pk_org:this.props.form.getFormItemsValue(formid,'pk_org').value,code:this.state.code},
|
|||
|
|
success : (res) => {
|
|||
|
|
console.log(res);
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
ajax({
|
|||
|
|
url:urls['materialcancel'],
|
|||
|
|
success: (res) => {
|
|||
|
|
this.setState({ images: initImages, imagesrc: initImagesrc, imgList: initImgList, curPageIndex: 0, transform: "translatex(0px)" })
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
|
|||
|
|
// props.editTable.resetTableData(values['convert']);
|
|||
|
|
if(this.pageStatus == "template") {
|
|||
|
|
const pkOrgVO = props.form.getFormItemsValue(baseFormId, "pk_org");
|
|||
|
|
props.form.EmptyAllFormValue(formid);
|
|||
|
|
props.form.EmptyAllFormValue(baseFormId);
|
|||
|
|
props.form.setFormItemsValue(baseFormId, {pk_org: pkOrgVO});
|
|||
|
|
props.form.setFormItemsValue(formid, {pk_org: pkOrgVO});
|
|||
|
|
this.props.editTable.setTableData(values['convert'],{rows: []});
|
|||
|
|
}else {
|
|||
|
|
props.form.cancel(formid);
|
|||
|
|
props.form.cancel(baseFormId);
|
|||
|
|
}
|
|||
|
|
this.pageStatus = 'browse';
|
|||
|
|
this.setState({
|
|||
|
|
formStatus : 'browse',
|
|||
|
|
isBrowse : true
|
|||
|
|
},this.updatePageStatus);
|
|||
|
|
this.queryAttachByPath(this.materialID);//查询图片
|
|||
|
|
this.getData();
|
|||
|
|
//更新头部按钮状态
|
|||
|
|
updateButtonStatus(this.props,'browse');
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
break;
|
|||
|
|
case 'Delete':
|
|||
|
|
let pk = this.props.form.getFormItemsValue(formid,'pk_material');
|
|||
|
|
if(!pk || !pk.value){
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
if(this.hasPerm(this.props.form.getFormItemsValue(formid,'pk_org').value)){
|
|||
|
|
props.modal.show('deleteModal');
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 'Save':
|
|||
|
|
this.save(false);
|
|||
|
|
break;
|
|||
|
|
case 'SaveAdd' :
|
|||
|
|
this.save(true);
|
|||
|
|
break;
|
|||
|
|
case 'Refresh':
|
|||
|
|
this.getData(()=>{
|
|||
|
|
toast({title:this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-0000147'),color:'success'});/* 国际化处理: 刷新成功*/
|
|||
|
|
});
|
|||
|
|
break;
|
|||
|
|
case 'Enable':
|
|||
|
|
if(!this.hasPerm(this.props.form.getFormItemsValue(formid,'pk_org').value)){
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
promptBox({
|
|||
|
|
color: 'warning', // 提示类别默认"success", "success"/"info"/"warning"/"danger",非必输
|
|||
|
|
title: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000018'), // 提示标题, 默认不同类别下分别为:"已成功"/"帮助信息"/"请注意"/"出错啦",非必输/* 国际化处理: 确认启用*/
|
|||
|
|
content: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000019'), // 提示内容,非必输/* 国际化处理: 是否确认要启用数据?*/
|
|||
|
|
noFooter: false, // 是否显示底部按钮(确定、取消),默认显示(false),非必输
|
|||
|
|
noCancelBtn: false, // 是否显示取消按钮,,默认显示(false),非必输
|
|||
|
|
beSureBtnName: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000016'), // 确定按钮名称, 默认为"确定",非必输/* 国际化处理: 确定*/
|
|||
|
|
cancelBtnName: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000017'), // 取消按钮名称, 默认为"取消",非必输/* 国际化处理: 取消*/
|
|||
|
|
beSureBtnClick: () => {
|
|||
|
|
let _enable_dataArr=[];
|
|||
|
|
let _enable_Obj = {
|
|||
|
|
status: '2',
|
|||
|
|
values: {
|
|||
|
|
ts: {
|
|||
|
|
display: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000020'),/* 国际化处理: 时间戳*/
|
|||
|
|
},
|
|||
|
|
pk_material: {
|
|||
|
|
display: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000021'),/* 国际化处理: 主键*/
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
_enable_Obj.values.ts.value=this.props.form.getFormItemsValue(formid,'ts').value;
|
|||
|
|
_enable_Obj.values.pk_material.value=this.props.form.getFormItemsValue(formid,'pk_material').value;
|
|||
|
|
_enable_dataArr.push(_enable_Obj);
|
|||
|
|
let enable_data = {
|
|||
|
|
pageid:this.pagecodeValues['list_pagecode'],
|
|||
|
|
model: {
|
|||
|
|
areaType: 'table',
|
|||
|
|
pageinfo: null,
|
|||
|
|
rows: _enable_dataArr
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
ajax({
|
|||
|
|
url: urls['enableMaterial'],
|
|||
|
|
data:enable_data,
|
|||
|
|
success: (res) => {
|
|||
|
|
let { success,data} = res;
|
|||
|
|
if(data && data.material && data.material.rows){
|
|||
|
|
this.props.form.setFormItemsValue(formid,{
|
|||
|
|
ts:data.material.rows[0].values['ts'],
|
|||
|
|
enablestate:data.material.rows[0].values['enablestate']
|
|||
|
|
});
|
|||
|
|
updateButtonStatus(this.props,'browse');
|
|||
|
|
toast({content:this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000022'),color:'success'});/* 国际化处理: 启用成功*/
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
break;
|
|||
|
|
case 'Disable':
|
|||
|
|
if(!this.hasPerm(this.props.form.getFormItemsValue(formid,'pk_org').value)){
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
promptBox({
|
|||
|
|
color: 'warning', // 提示类别默认"success", "success"/"info"/"warning"/"danger",非必输
|
|||
|
|
title: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000023'), // 提示标题, 默认不同类别下分别为:"已成功"/"帮助信息"/"请注意"/"出错啦",非必输/* 国际化处理: 确认停用*/
|
|||
|
|
content: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000024'), // 提示内容,非必输/* 国际化处理: 是否确认要停用数据?*/
|
|||
|
|
noFooter: false, // 是否显示底部按钮(确定、取消),默认显示(false),非必输
|
|||
|
|
noCancelBtn: false, // 是否显示取消按钮,,默认显示(false),非必输
|
|||
|
|
beSureBtnName: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000016'), // 确定按钮名称, 默认为"确定",非必输/* 国际化处理: 确定*/
|
|||
|
|
cancelBtnName: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000017'), // 取消按钮名称, 默认为"取消",非必输/* 国际化处理: 取消*/
|
|||
|
|
beSureBtnClick: () => {
|
|||
|
|
let _disable_dataArr=[];
|
|||
|
|
let _disable_Obj = {
|
|||
|
|
status: '2',
|
|||
|
|
values: {
|
|||
|
|
ts: {
|
|||
|
|
display: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000020'),/* 国际化处理: 时间戳*/
|
|||
|
|
},
|
|||
|
|
pk_material: {
|
|||
|
|
display: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000021'),/* 国际化处理: 主键*/
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
_disable_Obj.values.ts.value=this.props.form.getFormItemsValue(formid,'ts').value;
|
|||
|
|
_disable_Obj.values.pk_material.value=this.props.form.getFormItemsValue(formid,'pk_material').value;
|
|||
|
|
_disable_dataArr.push(_disable_Obj);
|
|||
|
|
let disable_data = {
|
|||
|
|
pageid:this.pagecodeValues['list_pagecode'],
|
|||
|
|
model: {
|
|||
|
|
areaType: 'table',
|
|||
|
|
pageinfo: null,
|
|||
|
|
rows: _disable_dataArr
|
|||
|
|
}
|
|||
|
|
};
|
|||
|
|
ajax({
|
|||
|
|
url: urls['disableMaterial'],
|
|||
|
|
data:disable_data,
|
|||
|
|
success: (res) => {
|
|||
|
|
let { success,data} = res;
|
|||
|
|
if(data.error){
|
|||
|
|
toast({ content: data.error, color: 'warning' });/* 错误提示*/
|
|||
|
|
}else if(data &&data.grid &&data.grid.material && data.grid.material.rows){
|
|||
|
|
this.props.form.setFormItemsValue(formid,{
|
|||
|
|
ts:data.grid.material.rows[0].values['ts'],
|
|||
|
|
enablestate:data.grid.material.rows[0].values['enablestate']
|
|||
|
|
});
|
|||
|
|
updateButtonStatus(this.props,'browse');
|
|||
|
|
toast({content:this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000025'),color:'success'});/* 国际化处理: 停用成功*/
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
break;
|
|||
|
|
case 'Copy':
|
|||
|
|
ajax({
|
|||
|
|
url : urls['addMaterial'],
|
|||
|
|
data : {node_type:this.config.node_type},
|
|||
|
|
success : (res) => {
|
|||
|
|
this.pageStatus = 'copy';
|
|||
|
|
this.setState({
|
|||
|
|
formStatus : 'add',
|
|||
|
|
isBrowse : false
|
|||
|
|
},()=>{
|
|||
|
|
this.setState({ img_url: ''},()=>{
|
|||
|
|
this.getData(()=>{
|
|||
|
|
this.props.form.setFormItemsValue(formid,{
|
|||
|
|
code:""
|
|||
|
|
});
|
|||
|
|
this.props.form.setFormItemsValue(baseFormId,{
|
|||
|
|
code:""
|
|||
|
|
});
|
|||
|
|
// this.props.form.EmptyAllFormValue('audit');
|
|||
|
|
this.setState({ images: [], imagesrc: [], imgList: [], curPageIndex: 0, defaultIndex: -1 });
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
this.updateFormEditEnable(this.config.node_type)
|
|||
|
|
updateButtonStatus(this.props,'copy');
|
|||
|
|
});
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
break;
|
|||
|
|
case 'CreateVersion':
|
|||
|
|
if(!this.hasPerm(this.props.form.getFormItemsValue(formid,'pk_org').value)){
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
if(this.hasPerm(this.props.form.getFormItemsValue(formid,'pk_org').value)){
|
|||
|
|
promptBox({
|
|||
|
|
color: 'warning', // 提示类别默认"success", "success"/"info"/"warning"/"danger",非必输
|
|||
|
|
title: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000032'), // 提示标题, 默认不同类别下分别为:"已成功"/"帮助信息"/"请注意"/"出错啦",非必输/* 国际化处理: 提示信息*/
|
|||
|
|
content: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000061'), // 提示内容,非必输/* 国际化处理: 是否创建选中物料的新版本数据?*/
|
|||
|
|
noFooter: false, // 是否显示底部按钮(确定、取消),默认显示(false),非必输
|
|||
|
|
noCancelBtn: false, // 是否显示取消按钮,,默认显示(false),非必输
|
|||
|
|
beSureBtnName: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000016'), // 确定按钮名称, 默认为"确定",非必输/* 国际化处理: 确定*/
|
|||
|
|
cancelBtnName: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000017'), // 取消按钮名称, 默认为"取消",非必输/* 国际化处理: 取消*/
|
|||
|
|
beSureBtnClick: this.createVerisonBeSureBtnClick
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 'BatchUpdate':
|
|||
|
|
let reqData = this.getReqData();
|
|||
|
|
ajax({
|
|||
|
|
url : urls['mergerequest'],
|
|||
|
|
data : reqData,
|
|||
|
|
success : (res) => {
|
|||
|
|
if(res&&res.data){
|
|||
|
|
this.initBatchTemplate(props,res.data);
|
|||
|
|
}
|
|||
|
|
pk = this.props.form.getFormItemsValue(formid,'pk_material');
|
|||
|
|
let pk_org = this.props.form.getFormItemsValue(formid,'pk_org');
|
|||
|
|
if(!pk || !pk.value || !pk_org || !pk_org.value){
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
let orgs = [pk_org.value];
|
|||
|
|
let pks = [pk.value];
|
|||
|
|
|
|||
|
|
this.Batcheditmodal.show(pks,orgs,this.permOrg);
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
break;
|
|||
|
|
case 'BatchUpdateWizard':
|
|||
|
|
let reqQueryData = this.getReqData();
|
|||
|
|
ajax({
|
|||
|
|
url : urls['mergerequest'],
|
|||
|
|
data : reqQueryData,
|
|||
|
|
success : (res) => {
|
|||
|
|
if(res&&res.data){
|
|||
|
|
this.initBatchTemplate(props,res.data);
|
|||
|
|
}
|
|||
|
|
this.Batcheditstepmodal.show();
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
break;
|
|||
|
|
case 'BatchUpdateRuleTeam':
|
|||
|
|
if(this.props.config.node_type === 'ORG_NODE'){
|
|||
|
|
this.props.openTo('/uapbd/material/batchupdaterule_org/main/index.html',{
|
|||
|
|
appcode : '10140BURO',
|
|||
|
|
pagecode : '10140BURO_LIST'
|
|||
|
|
});
|
|||
|
|
}else{
|
|||
|
|
this.props.openTo('/uapbd/material/batchupdaterule_grp/main/index.html',{
|
|||
|
|
appcode : '10140BURG',
|
|||
|
|
pagecode : '10140BURG_LIST'
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 'Assign'://分配
|
|||
|
|
pk = this.props.form.getFormItemsValue(formid,'pk_material');
|
|||
|
|
if(!pk || !pk.value){
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
ajax({
|
|||
|
|
url : urls['queryJurisdiction'],
|
|||
|
|
data : {},
|
|||
|
|
success : (res) => {
|
|||
|
|
if(res.data){
|
|||
|
|
//页签切换到主页签
|
|||
|
|
this.setInitDefaultTabbyStatus(true);
|
|||
|
|
this.assignModal.show([pk.value],false);
|
|||
|
|
}else{
|
|||
|
|
this.setInitDefaultTabbyStatus(true);
|
|||
|
|
if(this.hasPerm(this.props.form.getFormItemsValue(formid,'pk_org').value)){
|
|||
|
|
this.assignModal.show([pk.value],false);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
|
|||
|
|
break;
|
|||
|
|
case 'AssignWizard'://向导分配
|
|||
|
|
let AppCode =this.props.getAppCode();
|
|||
|
|
let req_Data = [
|
|||
|
|
{
|
|||
|
|
rqUrl: urls['queryTemp'],
|
|||
|
|
rqJson: `{\n \"pagecode\": \"${this.pagecodeValues['assign']}\"\n}`,
|
|||
|
|
rqCode: 'assign_template'
|
|||
|
|
}]
|
|||
|
|
ajax({
|
|||
|
|
url : urls['mergerequest'],
|
|||
|
|
data : req_Data,
|
|||
|
|
success : (res) => {
|
|||
|
|
if(res&&res.data){
|
|||
|
|
let meta = props.meta.getMeta();
|
|||
|
|
meta['search4assign'] = res.data.assign_template.search4assign;
|
|||
|
|
meta['material4assign'] = res.data.assign_template.material4assign;
|
|||
|
|
let businessInfo = getBusinessInfo();
|
|||
|
|
meta['search4assign'].items.forEach((item,index)=>{
|
|||
|
|
if(item.attrcode === 'pk_org_assign'){
|
|||
|
|
meta['search4assign'].items[index].itemtype = 'refer';
|
|||
|
|
meta['search4assign'].items[index].refName = props.MutiInit.getIntl("10140MATERIAL") && props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-0000158')/* 国际化处理: 业务单元+集团*/;
|
|||
|
|
meta['search4assign'].items[index].refName_db = props.MutiInit.getIntl("10140MATERIAL") && props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-0000158')/* 国际化处理: 业务单元+集团*/;
|
|||
|
|
meta['search4assign'].items[index].refcode = 'uapbd/refer/org/BusinessUnitAndGroupTreeRef/index';
|
|||
|
|
/* meta['search4assign'].items[index].queryCondition = {
|
|||
|
|
AppCode : props.config.appcode,
|
|||
|
|
TreeRefActionExt:'nccloud.web.refer.sqlbuilder.PrimaryOrgSQLBuilder'
|
|||
|
|
} */
|
|||
|
|
}else if(item.attrcode === 'pk_marbasclass'){
|
|||
|
|
meta['search4assign'].items[index].isMultiSelectedEnabled = true;
|
|||
|
|
}else if(item.attrcode === 'pk_brand' || item.attrcode === 'prodarea' || item.attrcode === 'pk_prodline' || item.attrcode === 'creator' || item.attrcode === 'modifier' || item.attrcode === 'delperson'){
|
|||
|
|
meta['search4assign'].items[index].isShowDisabledData = true;
|
|||
|
|
}
|
|||
|
|
if(item.attrcode === 'pk_org' && props.config.node_type==='ORG_NODE'){
|
|||
|
|
meta['search4assign'].items[index].refcode = 'uapbd/refer/org/BusinessUnitAndGroupTreeRef/index';
|
|||
|
|
meta['search4assign'].items[index].queryCondition={
|
|||
|
|
AppCode : AppCode,
|
|||
|
|
TreeRefActionExt:'nccloud.web.uapbd.material.action.PrimaryGroupAndOrgSQLBuilder'
|
|||
|
|
}
|
|||
|
|
}else if(item.attrcode === 'pk_org' && props.config.node_type==='GROUP_NODE'){
|
|||
|
|
meta['search4assign'].items[index].refcode = 'uapbd/refer/org/BusinessUnitAndGroupTreeRef/index';
|
|||
|
|
meta['search4assign'].items[index].queryCondition = {
|
|||
|
|
pk_group : businessInfo.groupId,
|
|||
|
|
AppCode : AppCode,
|
|||
|
|
TreeRefActionExt:'nccloud.web.uapbd.material.action.BusinessUnitAndGroupTreeRefExt'
|
|||
|
|
}
|
|||
|
|
}else if(item.attrcode === 'pk_marbasclass'){
|
|||
|
|
meta['search4assign'].items[index].isMultiSelectedEnabled = true;
|
|||
|
|
meta['search4assign'].items[index].isShowDisabledData = true;
|
|||
|
|
meta['search4assign'].items[index].isShowUnit = true;
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
props.meta.setMeta(meta);
|
|||
|
|
}
|
|||
|
|
//页签切换到主页签
|
|||
|
|
this.setInitDefaultTabbyStatus(true);
|
|||
|
|
this.assignStepModal.show('assign');
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
break;
|
|||
|
|
case 'CancelAssign':
|
|||
|
|
pk = this.props.form.getFormItemsValue(formid,'pk_material');
|
|||
|
|
if(!pk || !pk.value){
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
ajax({
|
|||
|
|
url : urls['queryJurisdiction'],
|
|||
|
|
data : {},
|
|||
|
|
success : (res) => {
|
|||
|
|
if(res.data){
|
|||
|
|
//页签切换到主页签
|
|||
|
|
this.setInitDefaultTabbyStatus(true);
|
|||
|
|
this.assignModal.show([pk.value],true);
|
|||
|
|
}else{
|
|||
|
|
if(this.hasPerm(this.props.form.getFormItemsValue(formid,'pk_org').value)){
|
|||
|
|
//页签切换到主页签
|
|||
|
|
this.setInitDefaultTabbyStatus(true);
|
|||
|
|
this.assignModal.show([pk.value],true);
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
break;
|
|||
|
|
case 'AssignStatus':
|
|||
|
|
//页签切换到主页签
|
|||
|
|
this.setInitDefaultTabbyStatus(true);
|
|||
|
|
let pk_material = this.props.form.getFormItemsValue(formid,'pk_material').value;
|
|||
|
|
this.props.modal.show('assignstatusModal',{
|
|||
|
|
title: [this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000048'), /* 国际化处理: 已分配组织查询*/,/* 国际化处理: 已分配组织查询*/
|
|||
|
|
<NCTooltip inverse overlay={this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-0000180')} trigger={["hover"]}>
|
|||
|
|
<span className='iconfont icon-shuoming1 shuoming-style'></span>
|
|||
|
|
</NCTooltip>],
|
|||
|
|
content : this.getAssignStatus(pk_material)
|
|||
|
|
});
|
|||
|
|
break;
|
|||
|
|
case 'OrgBrowse':
|
|||
|
|
props.modal.show('orgBrowseModal');
|
|||
|
|
break;
|
|||
|
|
case 'QueryOrgDoc':
|
|||
|
|
props.modal.show('marOrgModal');
|
|||
|
|
break;
|
|||
|
|
case 'Print':
|
|||
|
|
let _print_pk = this.props.form.getFormItemsValue(formid,'pk_material');
|
|||
|
|
if(!_print_pk || !_print_pk.value){
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
this.setState({oids:[_print_pk.value]},
|
|||
|
|
print('pdf',
|
|||
|
|
urls['print'],
|
|||
|
|
{
|
|||
|
|
funcode : this.config.print.funcode,
|
|||
|
|
nodekey : this.config.print.nodekey,
|
|||
|
|
oids : [_print_pk.value]
|
|||
|
|
})
|
|||
|
|
);
|
|||
|
|
break;
|
|||
|
|
case 'Output':
|
|||
|
|
let _output_pk = this.props.form.getFormItemsValue(formid,'pk_material');
|
|||
|
|
if(!_output_pk || !_output_pk.value){
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
this.setState({oids:[_output_pk.value]},()=>{this.refs.printOutput.open()});
|
|||
|
|
break;
|
|||
|
|
case 'Associate':
|
|||
|
|
let pk_material_pf = this.props.form.getFormItemsValue('material','pk_material_pf');
|
|||
|
|
if(pk_material_pf && pk_material_pf.value){
|
|||
|
|
this.props.openTo('/uapbd/material/material_pf/approve/index.html',{
|
|||
|
|
id:pk_material_pf.value,
|
|||
|
|
status:'browse',
|
|||
|
|
appcode:'10140MPFA',
|
|||
|
|
pagecode : '10140MPFA_approve',
|
|||
|
|
ismaterial:true
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 'File':
|
|||
|
|
if(!this.hasPerm(this.props.form.getFormItemsValue(formid,'pk_org').value)){
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
let uploaderDir = this.props.form.getFormItemsValue('material','pk_material');
|
|||
|
|
if(uploaderDir && uploaderDir.value){
|
|||
|
|
this.setState({
|
|||
|
|
showUploader:true,
|
|||
|
|
uploaderDir : uploaderDir.value
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
break;
|
|||
|
|
case 'Upgrade'://升级
|
|||
|
|
if(this.props.form.getFormItemsValue(formid,'pk_group').value === this.props.form.getFormItemsValue(formid,'pk_org').value){
|
|||
|
|
toast({content:this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000026'),color:'warning'});/* 国际化处理: 待升级物料全部为集团数据,不需升级。*/
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
pk = this.props.form.getFormItemsValue(formid,'pk_material');
|
|||
|
|
if(!pk || !pk.value){
|
|||
|
|
return
|
|||
|
|
}
|
|||
|
|
ajax({
|
|||
|
|
url : urls['upgrade'],
|
|||
|
|
data : {
|
|||
|
|
pk_material : pk.value,
|
|||
|
|
ts : this.props.form.getFormItemsValue(formid,'ts').value,
|
|||
|
|
isSure: false,
|
|||
|
|
node_type : this.config.node_type
|
|||
|
|
},
|
|||
|
|
success : (res)=>{
|
|||
|
|
let {success,data} = res;
|
|||
|
|
if(data && data.result){
|
|||
|
|
if(data.result === 'error'){
|
|||
|
|
console.log('22', data.result);
|
|||
|
|
toast({ content: data.msg, color: 'warning' });
|
|||
|
|
}else if(data.result === 'tip'){
|
|||
|
|
promptBox({
|
|||
|
|
color: 'warning', // 提示类别默认"success", "success"/"info"/"warning"/"danger",非必输
|
|||
|
|
title: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000027'), // 提示标题, 默认不同类别下分别为:"已成功"/"帮助信息"/"请注意"/"出错啦",非必输/* 国际化处理: 确认升级*/
|
|||
|
|
content: data.msg,
|
|||
|
|
noFooter: false, // 是否显示底部按钮(确定、取消),默认显示(false),非必输
|
|||
|
|
noCancelBtn: false, // 是否显示取消按钮,,默认显示(false),非必输
|
|||
|
|
beSureBtnName: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000016'), // 确定按钮名称, 默认为"确定",非必输/* 国际化处理: 确定*/
|
|||
|
|
cancelBtnName: this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000017'), // 取消按钮名称, 默认为"取消",非必输/* 国际化处理: 取消*/
|
|||
|
|
beSureBtnClick : ()=>{
|
|||
|
|
ajax({
|
|||
|
|
url : urls['upgrade'],
|
|||
|
|
data : {
|
|||
|
|
pk_material : pk.value,
|
|||
|
|
ts : this.props.form.getFormItemsValue(formid,'ts').value,
|
|||
|
|
isSure: true
|
|||
|
|
},
|
|||
|
|
success : (res) => {
|
|||
|
|
this.onButtonClick(props,'Refresh');
|
|||
|
|
toast({content:this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000028'),color:'success'});/* 国际化处理: 操作成功*/
|
|||
|
|
}
|
|||
|
|
})
|
|||
|
|
},
|
|||
|
|
leftBtnName : this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000008'),/* 国际化处理: 是*/
|
|||
|
|
rightBtnName : this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000007')/* 国际化处理: 否*/
|
|||
|
|
});
|
|||
|
|
}
|
|||
|
|
}else{
|
|||
|
|
this.onButtonClick(props,'Refresh');
|
|||
|
|
toast({content:this.props.MutiInit.getIntl("10140MATERIAL") && this.props.MutiInit.getIntl("10140MATERIAL").get('10140MATERIAL-000028'),color:'success'});/* 国际化处理: 操作成功*/
|
|||
|
|
}
|
|||
|
|
}
|
|||
|
|
});
|
|||
|
|
break;
|
|||
|
|
case 'Reback':
|
|||
|
|
//props.linkBack();
|
|||
|
|
props.pushTo('/list',{
|
|||
|
|
pagecode:this.props.config.pagecodelist});
|
|||
|
|
break;
|
|||
|
|
case 'DataTemplet':
|
|||
|
|
let CardData = this.props.createMasterChildData(props.config.pagecode, formid, values['convert'], "editTable");
|
|||
|
|
let reqData1 = {
|
|||
|
|
pageid : CardData.pageid,
|
|||
|
|
head : CardData.head,
|
|||
|
|
bodys : CardData.body
|
|||
|
|
}
|
|||
|
|
this.DataTempletModal.show(this.config.dataTemplet_funcode,reqData1);
|
|||
|
|
break;
|
|||
|
|
}
|
|||
|
|
}
|