Commit cdd82d9f authored by XieZhiXiong's avatar XieZhiXiong

chore: 修改评价相关接口

parent abb04fdb
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* @Author: XieZhiXiong * @Author: XieZhiXiong
* @Date: 2021-07-16 16:53:17 * @Date: 2021-07-16 16:53:17
* @LastEditors: XieZhiXiong * @LastEditors: XieZhiXiong
* @LastEditTime: 2021-07-16 16:57:12 * @LastEditTime: 2021-08-09 16:18:13
* @Description: 评价 schema * @Description: 评价 schema
*/ */
import { ISchema } from '@formily/antd'; import { ISchema } from '@formily/antd';
...@@ -39,23 +39,15 @@ export const evaluateSchema: ISchema = { ...@@ -39,23 +39,15 @@ export const evaluateSchema: ISchema = {
properties: { properties: {
star: { star: {
title: '满意程度', title: '满意程度',
required: true,
'x-component': 'Rating', 'x-component': 'Rating',
'x-component-props': { 'x-component-props': {
allowHalf: false, allowHalf: false,
allowClear: false, allowClear: false,
}, },
'x-rules': [
{
required: true,
message: '请选择满意程度',
},
],
}, },
comment: { comment: {
type: 'string', type: 'string',
title: '评价', title: '评价',
required: true,
'x-component': 'TextArea', 'x-component': 'TextArea',
'x-component-props': { 'x-component-props': {
rows: 4, rows: 4,
...@@ -92,7 +84,6 @@ export const evaluateSchema: ISchema = { ...@@ -92,7 +84,6 @@ export const evaluateSchema: ISchema = {
}, },
smile: { smile: {
type: 'object', type: 'object',
default: 5,
'x-component': 'SmilingFace', 'x-component': 'SmilingFace',
'x-component-props': { 'x-component-props': {
position: 'right', position: 'right',
......
...@@ -134,7 +134,7 @@ const EvaluationList = props => { ...@@ -134,7 +134,7 @@ const EvaluationList = props => {
{toArr(value).map((item, index) => { {toArr(value).map((item, index) => {
return ( return (
<RowStyleLayout {...componentProps} key={index}> <RowStyleLayout {...componentProps} key={index}>
<Row align="middle"> <Row align="middle" gutter={24}>
<Col span={8}> <Col span={8}>
<div className="goodInfo"> <div className="goodInfo">
<div className="goodInfo-left"> <div className="goodInfo-left">
......
...@@ -14,7 +14,7 @@ import moment from 'moment'; ...@@ -14,7 +14,7 @@ import moment from 'moment';
import { createFormActions, FormEffectHooks } from '@formily/antd'; import { createFormActions, FormEffectHooks } from '@formily/antd';
import { usePageStatus } from '@/hooks/usePageStatus'; import { usePageStatus } from '@/hooks/usePageStatus';
import { PublicApi } from '@/services/api'; import { PublicApi } from '@/services/api';
import { GetOrderPurchaseOrderDetailsResponse } from '@/services/OrderApi'; import { GetMemberCommentConsumerOrderTradeDetailResponse } from '@/services/MemberV2Api';
import AvatarWrap from '@/components/AvatarWrap'; import AvatarWrap from '@/components/AvatarWrap';
import NiceForm from '@/components/NiceForm'; import NiceForm from '@/components/NiceForm';
import { normalizeUnevaluatedList } from '../../utils'; import { normalizeUnevaluatedList } from '../../utils';
...@@ -40,7 +40,7 @@ interface Unevaluated { ...@@ -40,7 +40,7 @@ interface Unevaluated {
smile: number; smile: number;
}; };
interface OrderInfo extends GetOrderPurchaseOrderDetailsResponse { interface OrderInfo extends GetMemberCommentConsumerOrderTradeDetailResponse {
unevaluatedList: Unevaluated[]; unevaluatedList: Unevaluated[];
}; };
...@@ -56,15 +56,14 @@ const EvaluateOrder: React.FC = () => { ...@@ -56,15 +56,14 @@ const EvaluateOrder: React.FC = () => {
return; return;
} }
setInfoLoading(true); setInfoLoading(true);
PublicApi.getOrderProcurementOrderDetails({ PublicApi.getMemberCommentConsumerOrderTradeDetail({
id, id,
orderNo: '',
} as any).then(res => { } as any).then(res => {
if (res.code === 1000) { if (res.code === 1000) {
const { orderProductRequests } = res.data; const { orderProductCommentList } = res.data;
setOrderInfo({ setOrderInfo({
...res.data, ...res.data,
unevaluatedList: normalizeUnevaluatedList(orderProductRequests), unevaluatedList: normalizeUnevaluatedList(orderProductCommentList),
}); });
} }
}).finally(() => { }).finally(() => {
...@@ -171,7 +170,7 @@ const EvaluateOrder: React.FC = () => { ...@@ -171,7 +170,7 @@ const EvaluateOrder: React.FC = () => {
<Button <Button
type="primary" type="primary"
icon={<FormOutlined />} icon={<FormOutlined />}
disabled={!orderInfo || !orderInfo.id} disabled={!orderInfo}
loading={submitLoading} loading={submitLoading}
onClick={() => formActions.submit()} onClick={() => formActions.submit()}
> >
...@@ -187,7 +186,7 @@ const EvaluateOrder: React.FC = () => { ...@@ -187,7 +186,7 @@ const EvaluateOrder: React.FC = () => {
padding: '0 32px', padding: '0 32px',
}} }}
> >
<Descriptions.Item label="供应会员">{orderInfo?.supplyMembersName}</Descriptions.Item> <Descriptions.Item label="供应会员">{orderInfo?.membersName}</Descriptions.Item>
<Descriptions.Item label="下单时间" span={2}> <Descriptions.Item label="下单时间" span={2}>
{orderInfo && orderInfo.createTime ? moment(orderInfo.createTime).format('YYYY-MM-DD HH:mm:ss') : ''} {orderInfo && orderInfo.createTime ? moment(orderInfo.createTime).format('YYYY-MM-DD HH:mm:ss') : ''}
</Descriptions.Item> </Descriptions.Item>
......
...@@ -8,7 +8,6 @@ import { createFormActions } from '@formily/antd'; ...@@ -8,7 +8,6 @@ import { createFormActions } from '@formily/antd';
import moment from 'moment'; import moment from 'moment';
import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch'; import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch';
import { FORM_FILTER_PATH } from '@/formSchema/const'; import { FORM_FILTER_PATH } from '@/formSchema/const';
import { ORDER_TYPE2 } from '@/constants/order';
import { PublicApi } from '@/services/api'; import { PublicApi } from '@/services/api';
import EyePreview from '@/components/EyePreview'; import EyePreview from '@/components/EyePreview';
import NiceForm from '@/components/NiceForm'; import NiceForm from '@/components/NiceForm';
...@@ -37,13 +36,13 @@ const Unevaluated: React.FC = () => { ...@@ -37,13 +36,13 @@ const Unevaluated: React.FC = () => {
}, },
{ {
title: '订单摘要', title: '订单摘要',
dataIndex: 'orderThe', dataIndex: 'digest',
align: 'center', align: 'center',
ellipsis: true, ellipsis: true,
}, },
{ {
title: '供应会员', title: '供应会员',
dataIndex: 'supplyMembersName', dataIndex: 'memberName',
align: 'center', align: 'center',
render: (text, record) => <>{text}</>, render: (text, record) => <>{text}</>,
}, },
...@@ -51,7 +50,6 @@ const Unevaluated: React.FC = () => { ...@@ -51,7 +50,6 @@ const Unevaluated: React.FC = () => {
title: '下单时间', title: '下单时间',
dataIndex: 'createTime', dataIndex: 'createTime',
align: 'center', align: 'center',
render: (text, record) => moment(text).format('YYYY-MM-DD HH:mm:ss'),
}, },
{ {
title: '订单总额', title: '订单总额',
...@@ -60,13 +58,12 @@ const Unevaluated: React.FC = () => { ...@@ -60,13 +58,12 @@ const Unevaluated: React.FC = () => {
}, },
{ {
title: '订单类型', title: '订单类型',
dataIndex: 'type', dataIndex: 'orderTypeName',
align: 'center', align: 'center',
render: text => ORDER_TYPE2[text],
}, },
{ {
title: '外部状态', title: '外部状态',
dataIndex: 'externalState', dataIndex: 'outerStatusName',
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
<StatusTag type="success" title="已完成" /> <StatusTag type="success" title="已完成" />
...@@ -74,7 +71,7 @@ const Unevaluated: React.FC = () => { ...@@ -74,7 +71,7 @@ const Unevaluated: React.FC = () => {
}, },
{ {
title: '内部状态', title: '内部状态',
dataIndex: 'purchaseOrderInteriorState', dataIndex: 'innerStatusName',
align: 'center', align: 'center',
render: (text, record) => <Badge color="#41CC9E" text="已完成" />, render: (text, record) => <Badge color="#41CC9E" text="已完成" />,
}, },
...@@ -85,11 +82,13 @@ const Unevaluated: React.FC = () => { ...@@ -85,11 +82,13 @@ const Unevaluated: React.FC = () => {
render: (text, record) => ( render: (text, record) => (
<> <>
<Link to={`/memberCenter/tranactionAbility/purchaserEvaluation/unevaluated/evaluate?id=${record.id}`}> <Link to={`/memberCenter/tranactionAbility/purchaserEvaluation/unevaluated/evaluate?id=${record.id}`}>
<Button {!record.completeCommentStatus && (
type="link" <Button
> type="link"
评价 >
</Button> 评价
</Button>
)}
</Link> </Link>
</> </>
), ),
...@@ -99,8 +98,16 @@ const Unevaluated: React.FC = () => { ...@@ -99,8 +98,16 @@ const Unevaluated: React.FC = () => {
const [columns, setColumns] = useState<any[]>(defaultColumns); const [columns, setColumns] = useState<any[]>(defaultColumns);
const fetchListData = (params: any) => { const fetchListData = (params: any) => {
let { createTimeStart, createTimeEnd , ...rest } = params;
createTimeStart = createTimeStart ? moment(+createTimeStart).format('YYYY-MM-DD HH:mm:ss') : undefined;
createTimeEnd = createTimeEnd ? moment(+createTimeEnd).format('YYYY-MM-DD HH:mm:ss') : undefined;
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
PublicApi.getOrderProcurementOrderEvaluatedList(params) PublicApi.getMemberOrderCommentBuyerPage({
createTimeStart,
createTimeEnd,
...rest
})
.then(res => { .then(res => {
if (res.code === 1000) { if (res.code === 1000) {
resolve(res.data); resolve(res.data);
......
...@@ -38,14 +38,14 @@ export const listSearchSchema: ISchema = { ...@@ -38,14 +38,14 @@ export const listSearchSchema: ISchema = {
columns: 6, columns: 6,
}, },
properties: { properties: {
orderThe: { digest: {
type: 'string', type: 'string',
'x-component-props': { 'x-component-props': {
placeholder: '订单摘要', placeholder: '订单摘要',
allowClear: true, allowClear: true,
}, },
}, },
supplyMembersName: { memberName: {
type: 'string', type: 'string',
default: undefined, default: undefined,
'x-component-props': { 'x-component-props': {
...@@ -53,7 +53,7 @@ export const listSearchSchema: ISchema = { ...@@ -53,7 +53,7 @@ export const listSearchSchema: ISchema = {
allowClear: true, allowClear: true,
}, },
}, },
'[startCreateTime, endCreateTime]': { '[createTimeStart, createTimeEnd]': {
type: 'string', type: 'string',
default: '', default: '',
'x-component': 'dateSelect', 'x-component': 'dateSelect',
...@@ -62,7 +62,7 @@ export const listSearchSchema: ISchema = { ...@@ -62,7 +62,7 @@ export const listSearchSchema: ISchema = {
allowClear: true, allowClear: true,
}, },
}, },
type: { orderType: {
type: 'string', type: 'string',
default: undefined, default: undefined,
enum: [ enum: [
......
...@@ -2,7 +2,7 @@ ...@@ -2,7 +2,7 @@
* @Author: XieZhiXiong * @Author: XieZhiXiong
* @Date: 2020-10-19 16:02:53 * @Date: 2020-10-19 16:02:53
* @LastEditors: XieZhiXiong * @LastEditors: XieZhiXiong
* @LastEditTime: 2021-06-02 16:12:34 * @LastEditTime: 2021-08-09 16:00:36
* @Description: * @Description:
*/ */
...@@ -14,22 +14,25 @@ export const normalizeUnevaluatedList = (arr: {[key: string]: any}[]) => { ...@@ -14,22 +14,25 @@ export const normalizeUnevaluatedList = (arr: {[key: string]: any}[]) => {
return ret; return ret;
} }
arr.forEach(item => { arr.forEach(item => {
const atom = { // 未评价过的
good: { if (!item.commentStatus) {
pic: item.imgUrl || '', const atom = {
productId: item.productId, good: {
productName: item.productName, pic: item.logo || '',
unit: item.unit, productId: item.productId,
price: item.price, productName: item.name,
purchaseCount: item.purchaseCount, // 采购数量 unit: item.unit,
totalPrice: +(item.price * item.purchaseCount).toFixed(2), price: item.price,
}, purchaseCount: item.quantity, // 采购数量
star: 5, // 评分星星 totalPrice: item.amount,
comment: '', // 评价 },
picture: [], star: undefined, // 评分星星
smile: 5, // 笑脸 comment: '', // 评价
}; picture: [],
ret.push(atom); smile: undefined, // 笑脸
};
ret.push(atom);
}
}); });
return ret; return ret;
......
...@@ -17,7 +17,7 @@ import { PublicApi } from '@/services/api'; ...@@ -17,7 +17,7 @@ import { PublicApi } from '@/services/api';
import { GetOrderPurchaseOrderDetailsResponse } from '@/services/OrderApi'; import { GetOrderPurchaseOrderDetailsResponse } from '@/services/OrderApi';
import AvatarWrap from '@/components/AvatarWrap'; import AvatarWrap from '@/components/AvatarWrap';
import NiceForm from '@/components/NiceForm'; import NiceForm from '@/components/NiceForm';
import { normalizeUnevaluatedList } from '../../utils'; import { normalizeUnevaluatedList } from '../../../purchaserEvaluation/utils';
import { evaluateSchema } from '../../../purchaserEvaluation/common/schemas/evaluateSchema'; import { evaluateSchema } from '../../../purchaserEvaluation/common/schemas/evaluateSchema';
import { createEffects } from '../../../purchaserEvaluation/common/effects'; import { createEffects } from '../../../purchaserEvaluation/common/effects';
import EvaluationList from '../../../purchaserEvaluation/components/EvaluationList'; import EvaluationList from '../../../purchaserEvaluation/components/EvaluationList';
......
...@@ -8,7 +8,6 @@ import { createFormActions } from '@formily/antd'; ...@@ -8,7 +8,6 @@ import { createFormActions } from '@formily/antd';
import moment from 'moment'; import moment from 'moment';
import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch'; import { useStateFilterSearchLinkageEffect } from '@/formSchema/effects/useFilterSearch';
import { FORM_FILTER_PATH } from '@/formSchema/const'; import { FORM_FILTER_PATH } from '@/formSchema/const';
import { ORDER_TYPE2 } from '@/constants/order';
import { PublicApi } from '@/services/api'; import { PublicApi } from '@/services/api';
import EyePreview from '@/components/EyePreview'; import EyePreview from '@/components/EyePreview';
import NiceForm from '@/components/NiceForm'; import NiceForm from '@/components/NiceForm';
...@@ -37,7 +36,7 @@ const Unevaluated: React.FC = () => { ...@@ -37,7 +36,7 @@ const Unevaluated: React.FC = () => {
}, },
{ {
title: '订单摘要', title: '订单摘要',
dataIndex: 'orderThe', dataIndex: 'digest',
align: 'center', align: 'center',
ellipsis: true, ellipsis: true,
}, },
...@@ -51,7 +50,6 @@ const Unevaluated: React.FC = () => { ...@@ -51,7 +50,6 @@ const Unevaluated: React.FC = () => {
title: '下单时间', title: '下单时间',
dataIndex: 'createTime', dataIndex: 'createTime',
align: 'center', align: 'center',
render: (text, record) => moment(text).format('YYYY-MM-DD HH:mm:ss'),
}, },
{ {
title: '订单总额', title: '订单总额',
...@@ -60,13 +58,12 @@ const Unevaluated: React.FC = () => { ...@@ -60,13 +58,12 @@ const Unevaluated: React.FC = () => {
}, },
{ {
title: '订单类型', title: '订单类型',
dataIndex: 'type', dataIndex: 'orderTypeName',
align: 'center', align: 'center',
render: text => ORDER_TYPE2[text],
}, },
{ {
title: '外部状态', title: '外部状态',
dataIndex: 'externalState', dataIndex: 'outerStatusName',
align: 'center', align: 'center',
render: (text, record) => ( render: (text, record) => (
<StatusTag type="success" title="已完成" /> <StatusTag type="success" title="已完成" />
...@@ -74,7 +71,7 @@ const Unevaluated: React.FC = () => { ...@@ -74,7 +71,7 @@ const Unevaluated: React.FC = () => {
}, },
{ {
title: '内部状态', title: '内部状态',
dataIndex: 'purchaseOrderInteriorState', dataIndex: 'innerStatusName',
align: 'center', align: 'center',
render: (text, record) => <Badge color="#41CC9E" text="已完成" />, render: (text, record) => <Badge color="#41CC9E" text="已完成" />,
}, },
...@@ -85,11 +82,13 @@ const Unevaluated: React.FC = () => { ...@@ -85,11 +82,13 @@ const Unevaluated: React.FC = () => {
render: (text, record) => ( render: (text, record) => (
<> <>
<Link to={`/memberCenter/tranactionAbility/supplierEvaluation/unevaluated/evaluate?id=${record.id}`}> <Link to={`/memberCenter/tranactionAbility/supplierEvaluation/unevaluated/evaluate?id=${record.id}`}>
<Button {!record.completeCommentStatus && (
type="link" <Button
> type="link"
评价 >
</Button> 评价
</Button>
)}
</Link> </Link>
</> </>
), ),
...@@ -99,8 +98,16 @@ const Unevaluated: React.FC = () => { ...@@ -99,8 +98,16 @@ const Unevaluated: React.FC = () => {
const [columns, setColumns] = useState<any[]>(defaultColumns); const [columns, setColumns] = useState<any[]>(defaultColumns);
const fetchListData = (params: any) => { const fetchListData = (params: any) => {
let { createTimeStart, createTimeEnd , ...rest } = params;
createTimeStart = createTimeStart ? moment(+createTimeStart).format('YYYY-MM-DD HH:mm:ss') : undefined;
createTimeEnd = createTimeEnd ? moment(+createTimeEnd).format('YYYY-MM-DD HH:mm:ss') : undefined;
return new Promise((resolve, reject) => { return new Promise((resolve, reject) => {
PublicApi.getOrderEvaluatedList(params) PublicApi.getMemberOrderCommentVendorPage({
createTimeStart,
createTimeEnd,
...rest
})
.then(res => { .then(res => {
if (res.code === 1000) { if (res.code === 1000) {
resolve(res.data); resolve(res.data);
......
/*
* @Author: XieZhiXiong
* @Date: 2020-10-19 16:02:53
* @LastEditors: XieZhiXiong
* @LastEditTime: 2020-12-04 10:13:24
* @Description:
*/
// 初始化待评价列表
export const normalizeUnevaluatedList = (arr: {[key: string]: any}[]) => {
const ret = [];
if (!Array.isArray(arr)) {
return ret;
}
arr.forEach(item => {
const atom = {
good: {
pic: item.imgUrl || '',
productId: item.productId,
productName: item.productName,
unit: item.unit,
price: item.price,
purchaseCount: item.purchaseCount, // 采购数量
totalPrice: +(item.price * item.purchaseCount).toFixed(2),
},
star: 5, // 评分星星
comment: '', // 评价
picture: [],
smile: 5, // 笑脸
};
ret.push(atom);
});
return ret;
};
\ 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