Commit f35a5cb6 authored by 前端-钟卫鹏's avatar 前端-钟卫鹏

fix:

parent 21402d2d
import React, { useState, useRef, useEffect } from 'react'
import React, { useState, useEffect } from 'react'
import { history } from 'umi'
import { Row, Col, Form, Input, Select, Popconfirm, Button, Card, Modal, Checkbox, Tooltip, message, Table, Radio } from 'antd';
import { Row, Col, Form, Input, Select, Popconfirm, Button, Card, Checkbox, Tooltip } from 'antd';
import { LinkOutlined, QuestionCircleOutlined, InfoCircleOutlined } from '@ant-design/icons';
import { PageHeaderWrapper } from '@ant-design/pro-layout';
import { StandardTable } from 'god'
import { ColumnType } from 'antd/lib/table/interface';
import ReutrnEle from '@/components/ReturnEle';
import { PublicApi } from '@/services/api';
import { validatorByte } from '@/utils/regExp';
import NiceForm from '@/components/NiceForm';
import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch';
import { FORM_FILTER_PATH } from '@/formSchema/const';
import Search from '@/components/NiceForm/components/Search'
import Submit from '@/components/NiceForm/components/Submit'
import { createFormActions } from '@formily/antd';
import ModalTable from '@/components/ModalTable';
const { Option } = Select;
......@@ -33,10 +30,7 @@ const tailLayout = {
},
};
const formActions = createFormActions();
const AddAtttribute: React.FC<{}> = () => {
const ref = useRef<any>({})
const [menuForm] = Form.useForm();
const [roleVisible, setRoleVisible] = useState(false)
const [selectRow, setSelectRow] = useState<any[]>([]) // 模态框选择的行数据
......@@ -69,15 +63,18 @@ const AddAtttribute: React.FC<{}> = () => {
setSubmitLoading(true)
menuForm.validateFields().then((values: any) => {
delete values.attributeShow
if (JSON.stringify(values.attribute) === '{}')
if (JSON.stringify(values.attribute) === '{}') {
delete values.attribute
}
PublicApi.postProductCustomerSaveOrUpdateCustomerAttribute(values).then(res => {
if (res.code === 1000)
if (res.code === 1000) {
history.goBack()
else
} else {
setSubmitLoading(false)
}
})
}).catch(error => {
setSubmitLoading(false)
console.error(error)
})
}
......
......@@ -600,13 +600,13 @@ const evaluationNeedInfo: ISchema = {
},
title: '{{help("是否在线评标", "在线进行评标打分")}}',
default: true,
// "x-linkages": [
// {
// type: 'value:visible',
// target: 'checkedTime',
// condition: "{{!!$value}}"
// }
// ]
"x-linkages": [
{
type: 'value:visible',
target: 'templateId',
condition: "{{!!$value}}"
}
]
},
templateId: {
type: 'number',
......
......@@ -171,9 +171,9 @@ const Repositories: React.FC<{}> = () => {
message: '请填写仓位库存',
},
{
pattern: /^[+-]?\d*(\.\d{0,3})?$/,
message: '请填写数值,最多保留3位小数',
},
pattern: /^\d+(\.\d{1,3})?$/,
message: '仅限三位小数',
}
],
},
inventoryRate: {
......@@ -190,9 +190,9 @@ const Repositories: React.FC<{}> = () => {
message: '请填写仓位库存调整比率',
},
{
pattern: /^\d+(\.\d{1,3})?$/,
message: '仅限三位小数',
}
pattern: /^[+-]?\d*(\.\d{0,3})?$/,
message: '请填写数值,最多保留3位小数',
},
],
},
}
......
import React from 'react'
import { Tooltip } from 'antd';
import { QuestionCircleOutlined } from '@ant-design/icons'
/** NiceForm lable帮助信息 */
export const help = (title: string, desc: string) => {
return (
<div>
<span>{title}</span>
<Tooltip title={desc}>
<QuestionCircleOutlined
style={{ margin: "0 3px", cursor: "default", marginLeft: 3 }}
/>
</Tooltip>
</div>
);
};
......@@ -4,7 +4,6 @@ import { StandardTable } from 'god'
import { PageHeaderWrapper } from '@ant-design/pro-layout'
import { PublicApi } from '@/services/api'
import { baseOrderListColumns } from './constant'
import { PurchaseOrderOutWorkState } from '@/constants/order'
import { history } from 'umi'
import { tableListSchema } from '../_public/order/constant'
import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch'
......@@ -15,7 +14,6 @@ import NiceForm from '@/components/NiceForm'
import { createFormActions } from '@formily/antd'
import styled from 'styled-components'
import cx from 'classnames'
import TableOperation from '@/components/TableOperation'
import ModalForm from '@/components/ModalForm'
import { useHttpRequest } from '@/hooks/useHttpRequest'
import { CaretDownOutlined } from '@ant-design/icons'
......
......@@ -3,9 +3,9 @@ import { history } from 'umi'
import { PageHeaderWrapper } from '@ant-design/pro-layout'
import ReutrnEle from '@/components/ReturnEle'
import { usePageStatus, PageStatus } from '@/hooks/usePageStatus'
import { Button, Card, Row, Col, message, Tooltip } from 'antd'
import { Button, Card, Row, Col, message } from 'antd'
import { createFormActions, registerVirtualBox, useFormSpy } from '@formily/antd'
import { SaveOutlined, LinkOutlined, PlusOutlined, QuestionCircleOutlined } from '@ant-design/icons'
import { SaveOutlined, LinkOutlined, PlusOutlined } from '@ant-design/icons'
import NiceForm from '@/components/NiceForm'
import { mergeAllSchemas, payInfo, orderMaterial, orderProduct } from './schema'
import { useModelTypeChange, useEditHideField, useOrderFormInitEffect, useProductTableChangeForPay, useOrderUpdateChangeOther } from './effects'
......@@ -38,6 +38,7 @@ import MergeOrderModalTable from './components/mergeOrderModalTable'
import { useMaterialTable } from './model/useMaterialTable'
import ContractModalTable from './components/contractModalTable'
import MaterialModalTable from './components/materialModalTable'
import { help } from '../../common'
export interface PurchaseOrderDetailProps {}
......@@ -52,19 +53,6 @@ const RowStyle = styled(props => <Row style={{marginTop: 12}} justify='end' {...
}
`
const help = (title, desc) => {
return (
<div>
<span>{title}</span>
<Tooltip title={desc}>
<QuestionCircleOutlined
style={{ margin: "0 3px", cursor: "default", marginLeft: 3 }}
/>
</Tooltip>
</div>
);
};
const addSchemaAction = createFormActions()
// 总计金额联动框
......
......@@ -28,52 +28,26 @@ export const PriceComp = (props) => {
/***********控制订单模式联动其他字段的数组集合 *******/
export const orderCombination = {
// 需从外部页面传入参数生成的订单联动, 用于禁用下单模式的手动选择
queryPageOrderModal: [
OrderModalType.PURCHASE_ORDER,
OrderModalType.CHANNEL_DIRECT_PURCHASE_ORDER,
OrderModalType.CHANNEL_SPOT_PURCHASE_ORDER
],
// 是否显示报价单字段
showQuotationNoOrder: [
showQuotationField: [
OrderModalType.INQUIRY_QUOTATION_ORDER,
OrderModalType.DEMAND_QUOTATION_ORDER,
OrderModalType.CONSOLIDATED_ORDER
],
// 是否显示报价单按钮
showQuotationNoOrderBtn: [
showQuotationSelectBtn: [
OrderModalType.INQUIRY_QUOTATION_ORDER,
OrderModalType.DEMAND_QUOTATION_ORDER,
OrderModalType.CONSOLIDATED_ORDER,
],
// 是否显示选择采购合同按钮
showPurchaseContract: [
// 是否显示采购合同字段
showPurchaseContractField: [
OrderModalType.PURCHASE_ENQUIRY_CONTRACT_ORDER,
OrderModalType.PURCHASE_TENDER_CONTRACT_ORDER,
OrderModalType.PURCHASE_BIDDING_CONTRACT_ORDER
],
// 是否显示供应会员按钮
showSupplyMembersNameBtn: [
OrderModalType.HAND_ORDER,
OrderModalType.CHANNEL_DIRECT_MINING_ORDER,
OrderModalType.CHANNEL_SPOT_MANUAL_ORDER,
OrderModalType.CONSOLIDATED_ORDER
],
// 渠道会员专属下单类型
channelMemberOrderModal: [
OrderModalType.CHANNEL_DIRECT_PURCHASE_ORDER,
OrderModalType.CHANNEL_DIRECT_MINING_ORDER,
OrderModalType.CHANNEL_SPOT_PURCHASE_ORDER,
OrderModalType.CHANNEL_SPOT_MANUAL_ORDER
// 是否显示选择采购合同按钮
showPurchaseContractBtn: [
OrderModalType.PURCHASE_ENQUIRY_CONTRACT_ORDER,
OrderModalType.PURCHASE_TENDER_CONTRACT_ORDER,
OrderModalType.PURCHASE_BIDDING_CONTRACT_ORDER
],
// 企业个人会员专属下单类型
individualsMemberOrderModal: [
OrderModalType.PURCHASE_ORDER,
OrderModalType.HAND_ORDER,
OrderModalType.INQUIRY_QUOTATION_ORDER,
OrderModalType.DEMAND_QUOTATION_ORDER,
OrderModalType.CONSOLIDATED_ORDER,
]
}
export const orderTypeLabel = ['',
......
import { ISchemaFormActions, FormEffectHooks, ISchemaFormAsyncActions } from '@formily/antd';
import { usePageStatus, PageStatus } from '@/hooks/usePageStatus';
import { useLinkageUtils } from '@/utils/formEffectUtils';
import { orderCombination } from '../constant';
import { history } from 'umi';
import { fetchOrderApi } from '../apis';
import { PublicApi } from '@/services/api';
import { getAuth } from '@/utils/auth'
import moment from 'moment';
......@@ -111,45 +108,7 @@ export const useProductTableChangeForPay = (ctx: ISchemaFormActions | ISchemaFor
// 表单初始化时,对应操作
export const useOrderFormInitEffect = (ctx: ISchemaFormActions | ISchemaFormAsyncActions) => {
const { modelType = 0, spam_id } = history.location.query
const typeEnums = parseInt(modelType)
const auth: any = getAuth()
FormEffectHooks.onFormMount$().subscribe(async () => {
ctx.setFieldState('orderModel', state => {
state.props.enum = state.props.enum.map(v => {
const assign: any = Object.assign({}, v)
// 过滤服务提供者
if (auth.memberRoleType === 2) { // 采购商
// 企业+个人
// if ((auth.memberType === 1 || auth.memberType === 2) && (assign.value > 9 && assign.value !== 24)) {
if ((auth.memberType === 1 || auth.memberType === 2) && (assign.value > 9 && assign.value < 30)) {
assign.disabled = true
}
// 渠道(企业+个人)
if ((auth.memberType === 3 || auth.memberType === 4) && assign.value < 10) {
assign.disabled = true
}
// 商城下单
if (orderCombination.queryPageOrderModal.includes(assign.value) && typeEnums !== assign.value) {
assign.disabled = true
}
// 禁用积分
if (assign.value === 24 || assign.value === 25) {
assign.disabled = true
}
} else {
assign.disabled = true
}
// if (orderCombination.queryPageOrderModal.includes(assign.value) && typeEnums !== assign.value) {
// assign.disabled = true
// }
return assign
}).sort((prev, next) => prev.disabled ? prev.value : next.value - prev.value)
})
// 写入收货地址数据
useProductAddress(ctx)
})
......
......@@ -3,9 +3,9 @@ import { history } from 'umi'
import { PageHeaderWrapper } from '@ant-design/pro-layout'
import ReutrnEle from '@/components/ReturnEle'
import { usePageStatus, PageStatus } from '@/hooks/usePageStatus'
import { Button, Card, Row, Col, message, Tooltip } from 'antd'
import { Button, Card, Row, Col, message } from 'antd'
import { createFormActions, registerVirtualBox, useFormSpy } from '@formily/antd'
import { SaveOutlined, LinkOutlined, PlusOutlined, QuestionCircleOutlined } from '@ant-design/icons'
import { SaveOutlined, LinkOutlined, PlusOutlined } from '@ant-design/icons'
import NiceForm from '@/components/NiceForm'
import { mergeAllSchemas } from './schema'
import { useModelTypeChange, useEditHideField, useOrderFormInitEffect, useProductTableChangeForPay, useOrderUpdateChangeOther } from './effects'
......@@ -26,10 +26,9 @@ import { useUpdate } from '@umijs/hooks'
import { PublicApi } from '@/services/api'
import { formatTimeString, omit, findLastIndexFlowState } from '@/utils'
import { changeRouterTitleByStatus } from '../../_public/order/utils'
import { getCookie, removeCookie } from '@/utils/cookie'
import { ReadyAddOrderDetailContext } from '../context'
import { TOP_DOMAIN } from '@/constants'
import AuditProcess from '@/components/AuditProcess'
import { help } from '../../common'
import styles from './index.less'
export interface PurchaseOrderDetailProps {}
......@@ -45,19 +44,6 @@ const RowStyle = styled(props => <Row style={{marginTop: 12}} justify='end' {...
}
`
const help = (title, desc) => {
return (
<div>
<span>{title}</span>
<Tooltip title={desc}>
<QuestionCircleOutlined
style={{ margin: "0 3px", cursor: "default", marginLeft: 3 }}
/>
</Tooltip>
</div>
);
};
const addSchemaAction = createFormActions()
// 总计金额联动框
......
......@@ -5,7 +5,7 @@ import moment from 'moment'
// 将获取的商城转化为可用类型
const getShopTypeMap = (() => {
return GlobalConfig.web.shopInfo.map(item => ({
return GlobalConfig.web.shopInfo.filter(item => (item.type === 1) && (item.environment === 1)).map(item => ({
label: item.name,
value: item.id,
type: item.type,
......@@ -13,60 +13,6 @@ const getShopTypeMap = (() => {
}))
})()
/**
* 除了订单必填字段, 默认
*/
export const tableListSchema: ISchema = {
type: 'object',
properties: {
orderNo: {
type: 'string',
"x-component": 'SearchFilter',
'x-component-props': {
placeholder: '请输入订单编号',
align: 'flex-end',
},
},
[FORM_FILTER_PATH]: {
type: 'object',
'x-component': 'flex-layout',
'x-component-props': {
inline: true,
colStyle: {
marginLeft: 20
}
},
properties: {
orderThe: {
type: 'string',
'x-component-props': {
placeholder: '请输入订单摘要',
}
},
"supplyMembersName": {
type: 'string',
"x-component-props": {
placeholder: '请输入供应会员名称'
}
},
"[startCreateTime,endCreateTime]": {
type: 'array',
"x-component": 'DateRangePickerUnix',
'x-component-props': {
placeholder: ['开始时间','结束时间'],
},
},
submit: {
'x-component': 'Submit',
'x-component-props': {
children: '查询',
},
},
},
},
}
}
// 基本信息
const basicInfo: ISchema = {
"x-index": 0,
......@@ -103,7 +49,7 @@ const basicInfo: ISchema = {
{
type: "value:schema",
"target": "quotationNo",
condition: `{{!!$value && orderCombination.showQuotationBtn.includes($value)}}`,
condition: `{{!!$value && orderCombination.showQuotationSelectBtn.includes($value)}}`,
schema: {
"x-component-props": {
disabled: true,
......@@ -125,7 +71,7 @@ const basicInfo: ISchema = {
enum: getShopTypeMap,
title: '适应商城',
required: true,
visible: false,
// visible: false,
},
orderThe: {
type: 'string',
......@@ -432,114 +378,7 @@ const ortherInfo: ISchema = {
}
}
// 审核单据
const auditRecord: ISchema = {
type: 'object',
"x-component": 'tabpane',
"x-component-props": {
tab: '审核单据'
},
properties: {
NO_SUBMIT_LAYOUT_3: {
type: 'object',
"x-component": 'mega-layout',
"x-component-props": {
labelAlign: 'left',
labelCol: 4,
wrapperCol: 10
},
properties: {
state: {
title: '是否审核通过',
type: 'radio',
required: true,
enum: [
{
label: '审核通过',
value: 1
},
{
label: '审核不通过',
value: 0
}
],
editable: true,
default: 1,
"x-linkages": [
{
type: 'value:visible',
target: 'cause',
condition: "{{$value === 0}}"
}
]
},
cause: {
type: 'textarea',
title: '审核不通过原因',
required: true,
"x-component-props": {
rows: 3
},
editable: true,
}
}
}
}
}
// 电子合同
const electronicResult: ISchema = {
type: 'object',
"x-component": 'tabpane',
"x-component-props": {
tab: '电子合同'
},
properties: {
NO_SUBMIT_LAYOUT_3: {
type: 'object',
"x-component": 'mega-layout',
"x-component-props": {
labelAlign: 'left',
labelCol: 4,
wrapperCol: 10
},
properties: {
electronic: {
title: '电子合同',
type: 'checkbox',
required: true,
enum: [
{
label: 'pdf',
value: true
}
],
editable: true,
default: false
}
}
}
}
}
// 流转记录
const transformRecord: ISchema = {
type: 'object',
"x-component": 'tabpane',
"x-component-props": {
tab: '流转记录'
},
properties: {
RECORD: {
type: 'object',
"x-component": 'VirtualChildren',
"x-component-props": {
children: "{{CirculationRecord}}"
}
}
}
}
// 新增订单详情
export const orderDetailSchema: ISchema = {
type: 'object',
......@@ -553,7 +392,6 @@ export const orderDetailSchema: ISchema = {
orderProduct,
payInfo,
ortherInfo,
transformRecord,
}
}
}
......@@ -572,8 +410,6 @@ export const auditOneSchema: ISchema = {
orderProduct,
payInfo,
ortherInfo,
auditRecord,
transformRecord
}
}
}
......@@ -610,8 +446,6 @@ export const orderElectronicSchema: ISchema = {
orderProduct,
payInfo,
ortherInfo,
electronicResult,
transformRecord
}
}
}
......
import React, { useState, useRef, useEffect } from 'react'
import {history} from "umi"
import { Button, Radio, Row, Col, Tag, Checkbox, Modal } from 'antd'
import { ISchemaFormProps, ISchemaFieldProps, ISchemaFieldComponentProps, createFormActions, useFieldState } from '@formily/antd'
import { FilePdfFilled } from '@ant-design/icons'
import { PublicApi } from '@/services/api'
const SelectContract = (props: ISchemaFieldComponentProps) => {
let { form, value = {}, mutators, editable } = props
const popConfirm = () => {
history.push(`/memberCenter/tranactionAbility/electronicContracts/apply`)
}
const onChange = (e) => {
if(e.target.checked) {
PublicApi.getContractSignatureAuthAuthState().then(({data}) => {
if(data.state !== 1) {
// 未认证
Modal.confirm({
title: '提示',
content: '未签约电子合同, 是否要立即前往?',
onOk: popConfirm,
maskClosable: true
})
} else {
mutators.change(1)
}
})
} else {
mutators.change(0)
}
}
return (
<div style={{display: "flex", flexDirection: "column"}}>
<Checkbox onChange={onChange}>同意</Checkbox>
<Button
type="link"
icon={<FilePdfFilled />}
style={{color: "#7178ea"}}
href={`/api/order/contractTemplate/downloadContract?contractName=${props.props["x-component-props"].contract.contractName}&contractUrl=${props.props["x-component-props"].contract.contractUrl}`}
>
{
props.props["x-component-props"].contract?.contractName
}
</Button>
</div>
)
}
SelectContract.defaultProps = {}
SelectContract.isFieldComponent = true;
export default SelectContract
......@@ -517,7 +517,7 @@ export const materialInfoColumns: any[] = [
key: 'purchaseCount',
formItem: 'input',
editable: true,
width: 80
// width: 80
},
{
title: '含税',
......@@ -547,7 +547,7 @@ export const materialInfoColumns: any[] = [
key: 'logistics',
formItem: 'select',
editable: true,
width: 80
// width: 80
// render: (t, r) => {
// if(r.logistics?.deliveryType === 1)
// return "物流(默认)"
......
import { ISchemaFormActions, FormEffectHooks, ISchemaFormAsyncActions } from '@formily/antd';
import { usePageStatus, PageStatus } from '@/hooks/usePageStatus';
import { useLinkageUtils } from '@/utils/formEffectUtils';
import { orderCombination } from '../constant';
import { history } from 'umi';
import { fetchOrderApi } from '../apis';
import { PublicApi } from '@/services/api';
import { getAuth } from '@/utils/auth'
import moment from 'moment';
import { OrderModalType } from '@/constants/order';
// 异步填充表格字段
const asyncPadDataForProduct = async (ctx: ISchemaFormActions | ISchemaFormAsyncActions, productValue: any) => {
const productData = productValue.value
const loading = productValue.loading
if (productData.length === 0 || loading) {
return false
}
ctx.setFieldState(productValue.path, state => {
state.loading = true
})
ctx.setFieldState(productValue.path, state => {
state.loading = false
})
}
export const createEffects = context => () => {
}
export const useModelTypeChange = (callback) => {
const utils = useLinkageUtils()
......@@ -51,47 +24,6 @@ export const useEditHideField = () => {
})
}
export const useProductTableChangeForPay = (ctx: ISchemaFormActions | ISchemaFormAsyncActions, update) => {
const { pageStatus } = usePageStatus()
FormEffectHooks.onFieldValueChange$('orderProductRequests').subscribe(state => {
const { value } = state
// 强制渲染一次, 用于触发金额总数
update()
const orderModel = ctx.getFieldValue('orderModel')
if (value && value.length > 0 && !state.loading){ // 添加loading判断避免二次调用
// 请求一次并复制给支付信息
const productItem = value[0]
console.log(productItem, 'pitem')
if(pageStatus === PageStatus.EDIT) { // 编辑下 支付信息联动实现
} else if(pageStatus === PageStatus.ADD && ctx.getFieldValue('orderModel') < OrderModalType.PURCHASE_ENQUIRY_CONTRACT_ORDER) { // 新增下 需要支付信息生成支付次数 // @采购合同下单无需支付信息
fetchOrderApi.getPayInfoList({
productId: (orderModel === OrderModalType["HAND_ORDER"] || orderModel === OrderModalType["CHANNEL_DIRECT_MINING_ORDER"] || orderModel === OrderModalType["CHANNEL_SPOT_MANUAL_ORDER"]) ? productItem.id : (productItem.productId || productItem.id),
memberId: productItem?.memberId || ctx.getFieldValue('supplyMembersId'),
memberRoleId: productItem?.memberRoleId || ctx.getFieldValue('supplyMembersRoleId'),
orderModel: orderModel,
shopId: ctx.getFieldValue('shopId')
}).then(data => {
ctx.setFieldValue('paymentInformationResponses', data)
}).catch(err => {
})
}
}
// 确认后 需根据商品id请求会员折扣接口, 以及配送方式
// 由于商品存在多个, 需对接口做一定缓存
asyncPadDataForProduct(ctx, state)
const numberInputs = document.getElementsByClassName("purchase_amount_input")
if(numberInputs?.length) {
for(let i = 0; i < numberInputs.length; i++) {
numberInputs[i].removeAttribute("disabled")
}
}
})
}
// 表单初始化时,对应操作
export const useOrderFormInitEffect = (ctx: ISchemaFormActions | ISchemaFormAsyncActions) => {
FormEffectHooks.onFormMount$().subscribe(async () => {
......
......@@ -3,17 +3,15 @@ import { history } from 'umi'
import { PageHeaderWrapper } from '@ant-design/pro-layout'
import ReutrnEle from '@/components/ReturnEle'
import { usePageStatus, PageStatus } from '@/hooks/usePageStatus'
import { Button, Card, Row, Col, message, Tooltip } from 'antd'
import { Button, Card, Row, Col, message } from 'antd'
import { createFormActions, registerVirtualBox, useFormSpy } from '@formily/antd'
import { SaveOutlined, LinkOutlined, PlusOutlined, QuestionCircleOutlined } from '@ant-design/icons'
import { SaveOutlined, LinkOutlined, PlusOutlined } from '@ant-design/icons'
import NiceForm from '@/components/NiceForm'
import { mergeAllSchemas } from './schema'
import { useModelTypeChange, useEditHideField, useOrderFormInitEffect, useProductTableChangeForPay, useOrderUpdateChangeOther } from './effects'
import { useModelTypeChange, useEditHideField, useOrderFormInitEffect, useOrderUpdateChangeOther } from './effects'
import { orderCombination, orderTypeLabelMap, procurementProcessField, procurementRenderField } from './constant'
import { OrderModalType } from '@/constants/order'
import CirculationRecord from '../components/circulationRecord'
import SelectAddress from './components/selectAddress'
import SelectContract from './components/selectContract'
import TheInvoiceList from './components/theInvoiceList'
import moment from 'moment'
import styled from 'styled-components'
......@@ -21,6 +19,7 @@ import { useUpdate } from '@umijs/hooks'
import { PublicApi } from '@/services/api'
import { formatTimeString, omit, findLastIndexFlowState } from '@/utils'
import { changeRouterTitleByStatus } from '../../_public/order/utils'
import { help } from '../../common'
import { ReadyAddOrderDetailContext } from '../context'
import AuditProcess from '@/components/AuditProcess'
import styles from './index.less'
......@@ -41,19 +40,6 @@ const RowStyle = styled(props => <Row style={{marginTop: 12}} justify='end' {...
}
`
const help = (title, desc) => {
return (
<div>
<span>{title}</span>
<Tooltip title={desc}>
<QuestionCircleOutlined
style={{ margin: "0 3px", cursor: "default", marginLeft: 3 }}
/>
</Tooltip>
</div>
);
};
const addSchemaAction = createFormActions()
// 总计金额联动框
......@@ -89,7 +75,7 @@ const PurchaseOrderDetail:React.FC<PurchaseOrderDetailProps> = (props) => {
const [btnLoading, setBtnLoading] = useState(false)
const update = useUpdate()
const productSumPriceRef = useRef<any>(0)
const { pageStatus, id, page_type = '0', modelType, om } = usePageStatus()
const { pageStatus, id, page_type = '0', modelType } = usePageStatus()
const [initFormSchema, setInitFormSchema] = useState<any>(() => ({...mergeAllSchemas[page_type]}))
const [initFormValue, setInitFormValue] = useState<any>(() => {
let resultState = {}
......@@ -110,14 +96,11 @@ const PurchaseOrderDetail:React.FC<PurchaseOrderDetailProps> = (props) => {
if (id) {
setFormLoading(true)
// @ts-ignore
PublicApi.getOrderProcurementOrderDetails({
id
}).then(res => {
PublicApi.getOrderProcurementOrderDetails({ id }).then(res => {
const { data } = res
const _orderProductRequests = procurementRenderField(data.orderProductRequests)
setInitFormValue({
...data,
// 判断是否合同下单
orderProductRequests: [],
deliveryTime: formatTimeString(data.deliveryTime)
})
......@@ -238,9 +221,6 @@ const PurchaseOrderDetail:React.FC<PurchaseOrderDetailProps> = (props) => {
// 选择合同
const handleOrderContract = () => {
// if(!addSchemaAction.getFieldValue('shopId')) {
// return message.error('请先选择适应商城')
// }
contractOrderRef.current.setVisible(true)
}
......@@ -295,13 +275,11 @@ const PurchaseOrderDetail:React.FC<PurchaseOrderDetailProps> = (props) => {
// editable={pageStatus !== PageStatus.PREVIEW}
value={initFormValue}
actions={addSchemaAction}
// schema={mergeAllSchemas[page_type]}
schema={initFormSchema}
onSubmit={handleSubmit}
components={{
SelectAddress,
TheInvoiceList,
SelectContract
}}
effects={($, ctx) => {
$('onFormMount').subscribe(() => {
......@@ -332,8 +310,6 @@ const PurchaseOrderDetail:React.FC<PurchaseOrderDetailProps> = (props) => {
ctx.setFieldValue('type', orderTypeLabelMap()[value])
})
useEditHideField()
// 商品信息的改动 驱动支付信息变化
useProductTableChangeForPay(ctx, update)
// 编辑 地址和发票信息变动 触发订单更新
useOrderUpdateChangeOther(ctx)
......
......@@ -201,6 +201,7 @@ export const orderMaterial: ISchema = {
rowKey: 'id',
columns: "{{materialColumns}}",
components: "{{materialComponents}}",
prefix: "{{materialAddButton}}",
},
},
// 仅合同下单时备用参数数据
......
......@@ -6,10 +6,8 @@ import { ISchemaFormActions, ISchema, FormEffectHooks } from '@formily/antd'
import { useRowSelectionTable } from '@/hooks/useRowSelectionTable'
import { createAddContractTemplateEffect } from '../effects'
import { PublicApi } from '@/services/api'
import {
PlusOutlined, QuestionCircleOutlined,
} from '@ant-design/icons'
import { Button, message, Tooltip } from 'antd'
import { PlusOutlined } from '@ant-design/icons'
import { Button, message } from 'antd'
import NiceForm from '@/components/NiceForm'
import ModalTable from '@/components/ModalTable'
import { GlobalConfig } from '@/global/config'
......@@ -20,6 +18,7 @@ import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilte
import Submit from '@/components/NiceForm/components/Submit'
import SelectProcesss from './selectProcesss'
import { usePaymentTable } from '../model/usePaymentTable'
import { help } from '../../common'
export interface RuleSettingProps {
addSchemaAction: ISchemaFormActions,
......@@ -301,13 +300,6 @@ const RuleSetting:React.FC<RuleSettingProps> = (props) => {
})
}
const help = (text: string, desc: string) => (<>
{text}&nbsp;
<Tooltip title={desc}>
<QuestionCircleOutlined />
</Tooltip>
</>)
return (
<>
<NiceForm
......@@ -425,9 +417,7 @@ const RuleSetting:React.FC<RuleSettingProps> = (props) => {
rowKey: 'id'
}}
/>
</>
)
}
......
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