Commit 0b55c1ec authored by wuhao's avatar wuhao 🎯

asder

parent 3db373d2
......@@ -265,6 +265,7 @@ const Deviceprovide = (props) => {
useAsyncEffect(async () => {
let result = await tempfields("/ngic-auth/sysCustomerChar/queryCommonList", { id: curitem.id })
await setextrafields(result?.fields)
await setsubdata(result?.data);
if (curitem.key == "edit") {
doFetch({ url: "/ngic-auth/sysCustomer/query/detail", params: { id: curitem.id } }).then(res => {
......
import React, { useEffect, useRef, useReducer } from 'react';
import React, { useState, useRef, useReducer } from 'react';
import { Modal, Button, Drawer, Tooltip, Popconfirm, message, Switch } from 'antd';
import AutoTable from '@/components/AutoTable';
import getPrem from '@/utils/getPrem';//权限判断fn
......@@ -7,9 +7,11 @@ import { useRequest } from "umi";
import defaultFields from "./fields";
import { doFetch } from '@/utils/doFetch';
import { deviceprovideDetail, deleteProvideCheck } from "@/services/device";
import { deviceprovideDetails } from "@/utils/detailTotalCard";
import Deletecheck from '@/components/Deletecheck';
import { usercusDetails } from "@/utils/detailTotalCard";
import Details from "@/components/Details";
import { useAsyncEffect } from 'ahooks';
import tempfields from '@/utils/tempfields'
const initState = {
vs: false,
fields: {},
......@@ -48,11 +50,27 @@ function reducer(state, action) {
}
break;
case "cdetails":
let n = 1, dataSource = action.dataSource;
let special = action?.dataSource?.supplierCharList?.map?.(it => {
n++;
let key = n.toString();
dataSource[key] = it?.fieldRealValue;
return {
"title": it?.fieldName,
"key": key,
}
})
let extraspecial = [{
cardTitle: '特殊属性',
itemData: special
}]
newState = {
...state,
details: {
dataSource: action.dataSource,
totalCard: [...deviceprovideDetails]
totalCard: [...usercusDetails, ...extraspecial]
},
visible: true
}
......@@ -83,7 +101,7 @@ const Deviceprovide = (props) => {
ChildRef?.onRefresh();
}
const [state, dispatch] = useReducer(reducer, initState),
{ vs, fields, iftype, curitem, details, visible } = state,
{ vs, fields, iftype, details, visible } = state,
columns = [
{
"title": "供应商编号",
......@@ -188,18 +206,16 @@ const Deviceprovide = (props) => {
}
}
});
const [extrafields, setextrafields] = useState({});
const [subdata, setsubdata] = useState([]);
const [curitem, setcuritem] = useState({});
function extraAction(text, record, _, action) {
return [
getPrem("equipmentSupplier_save", action, '修改', () => {
deviceprovideDetail({ id: record.id }).then(res => {
if (res.code == "0000") {
let data = res?.data?.data || {};
for (let i in defaultFields) {
defaultFields[i].value = data[i];
}
dispatch({ type: "edit", fields: defaultFields, curitem: data })
}
})
getPrem("equipmentSupplier_save", action, '修改', async () => {
await setcuritem({
...record,
key: "edit"
});
}),
getPrem("equipmentSupplier_deleteById", action, '删除', null, {
title: "确认删除该供应商?",
......@@ -217,26 +233,52 @@ const Deviceprovide = (props) => {
delete it.id;
return it
});
let supplierCharList = subdata.map((it, i) => {
let key = "field" + i.toString();
it.fieldRealValue = values[key];
delete newfields[key]
return it
})
let params = {
...newfields,
supplierUserList
supplierUserList,
supplierCharList
}
run({ url: "/ngic-auth/sysSupplier/save", params: { ...params, ...difrid } })
};
let extrarender = ([
<Button disabled={!getPrem("equipmentSupplier_save", "ifs")} type="primary" onClick={() => {
for (let i in defaultFields) {
defaultFields[i].value = null;
if (i == "supplierUserList") {
defaultFields[i].value = []
} else if (i == "status") {
defaultFields[i].status = 0
} else {
defaultFields[i].value = null;
}
}
dispatch({ type: "add", fields: defaultFields })
for (let i in extrafields) {
extrafields[i].value = null;
if (extrafields[i]["multiple"] == true) {
extrafields[i].value = []
}
}
dispatch({ type: "add", fields: { ...defaultFields, ...extrafields } })
}}>新增</Button>
]);
useAsyncEffect(async () => {
let result = await tempfields("/ngic-auth/sysSupplierChar/queryCommonList", { id: curitem.id })
await setextrafields(result?.fields)
await setsubdata(result?.data);
if (curitem.key == "edit") {
doFetch({ url: "/ngic-auth/sysSupplier/query/detail", params: { id: curitem.id } }).then(res => {
if (res.code == "0000") {
let data = res?.data?.data || {};
for (let i in defaultFields) {
defaultFields[i].value = data[i];
}
dispatch({ type: "edit", fields: { ...defaultFields, ...result?.fields } })
}
})
}
}, [curitem])
return <div>
<AutoTable
pagetitle={props.route.name} //页面标题
......
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