Commit d5ea5dd558b6aded1057ad6a9b31ee281d8cba6e

Authored by gesilong
1 parent c64a7984

commit: 修复Bug3

@@ -12,6 +12,7 @@ export default { @@ -12,6 +12,7 @@ export default {
12 typeText: '方案类型', 12 typeText: '方案类型',
13 inspectionText: '巡检方案', 13 inspectionText: '巡检方案',
14 maintenanceText: '保养方案', 14 maintenanceText: '保养方案',
  15 + DRAFT: '草稿',
15 SCHEDULING: '排期中', 16 SCHEDULING: '排期中',
16 REPAIRFINISH: '维修完成', 17 REPAIRFINISH: '维修完成',
17 ACCEPTANCEPASSED: '验收通过', 18 ACCEPTANCEPASSED: '验收通过',
@@ -14,8 +14,10 @@ @@ -14,8 +14,10 @@
14 record.status == 'NOT_START' 14 record.status == 'NOT_START'
15 ? 'yellow' 15 ? 'yellow'
16 : record.status == 'UNDERWAY' 16 : record.status == 'UNDERWAY'
17 - ? 'blue': record.status == 'FINISH'  
18 - ? 'green': 'red' 17 + ? 'blue'
  18 + : record.status == 'FINISH'
  19 + ? 'green'
  20 + : 'red'
19 " 21 "
20 class="ml-2" 22 class="ml-2"
21 > 23 >
@@ -66,7 +68,7 @@ @@ -66,7 +68,7 @@
66 ifShow: () => record.status === 'NOT_START' || record.status === 'UNDERWAY', 68 ifShow: () => record.status === 'NOT_START' || record.status === 'UNDERWAY',
67 popConfirm: { 69 popConfirm: {
68 title: t('common.stopConfirmText'), 70 title: t('common.stopConfirmText'),
69 - confirm: handleUpdateStatus.bind(null, record,'STOP'), 71 + confirm: handleUpdateStatus.bind(null, record, 'STOP'),
70 }, 72 },
71 }, 73 },
72 { 74 {
@@ -93,147 +95,27 @@ @@ -93,147 +95,27 @@
93 </div> 95 </div>
94 </template> 96 </template>
95 <script setup lang="ts"> 97 <script setup lang="ts">
96 -import { BasicTable, useTable, TableAction } from '/@/components/Table';  
97 -import {  
98 - deleteInspectionPlan,  
99 - getInspectionPlanList,  
100 - getInsPlanDetail,  
101 - updateInspectionStatus, updateInsStatus  
102 -} from '/@/api/inspection/inspectionPlan';  
103 -import { columns, searchFormSchema } from './index';  
104 -import { useI18n } from '/@/hooks/web/useI18n';  
105 -import {Button, message, Tag} from 'ant-design-vue';  
106 -import {useMessage} from "/@/hooks/web/useMessage";  
107 -import { insPlanModal } from "./components/index"  
108 -import {ref} from "vue";  
109 -import {dateFormat} from "/@/utils/common/compUtils";  
110 -const { t } = useI18n();  
111 -const { createMessage } = useMessage();  
112 -const modalVisible = ref(false);  
113 -const isViewMode = ref(false);  
114 -const modalTitle = ref('');  
115 -const initialData = ref({  
116 - form: {  
117 - code: '',  
118 - name: '',  
119 - status: '',  
120 - enabled: '',  
121 - startTime: '',  
122 - endTime: '',  
123 - remark: '',  
124 - },  
125 - tableData: [],  
126 -});  
127 -  
128 -const [  
129 - registerTable,  
130 - { reload, setLoading, setSelectedRowKeys },  
131 -] = useTable({  
132 - title: t('inspection.inspectionPlan.listText'),  
133 - api: getInspectionPlanList,  
134 - columns,  
135 - formConfig: {  
136 - labelWidth: 100,  
137 - schemas: searchFormSchema,  
138 - },  
139 - immediate: true,  
140 - useSearchForm: true,  
141 - showTableSetting: true,  
142 - bordered: true,  
143 - showIndexColumn: false,  
144 - clickToRowSelect: false,  
145 - rowKey: 'id',  
146 - actionColumn: {  
147 - width: 360,  
148 - title: t('common.actionText'),  
149 - slots: { customRender: 'action' },  
150 - fixed: 'right',  
151 - },  
152 -});  
153 -  
154 -const handleDelete = async (record?: any) => {  
155 - let id = record.id;  
156 - try {  
157 - setLoading(true);  
158 - await deleteInspectionPlan({ id });  
159 - createMessage.success(t('common.deleteSuccessText'));  
160 - handleReload();  
161 - } catch (error) {  
162 - throw error;  
163 - } finally {  
164 - setLoading(false);  
165 - }  
166 -};  
167 -  
168 -const handleReload = () => {  
169 - setSelectedRowKeys([]);  
170 - reload();  
171 -};  
172 -  
173 -const handleUpdateStatus = async (record?: any,value?: string) => {  
174 - let id = record.id;  
175 - let status = '';  
176 - if (record.status === 'NOT_START') {  
177 - status = 'UNDERWAY'  
178 - }else if(record.status === 'UNDERWAY'){  
179 - status = 'FINISH'  
180 - }else if(record.status === 'FINISH'){  
181 - status = 'STOP'  
182 - }  
183 - if (value === 'STOP') {  
184 - status = 'STOP'  
185 - }  
186 - try {  
187 - setLoading(true);  
188 - await updateInsStatus({ id,status });  
189 - createMessage.success(t('common.editSuccessText'));  
190 - handleReload();  
191 - } catch (error) {  
192 - throw error;  
193 - } finally {  
194 - setLoading(false);  
195 - }  
196 -}  
197 -  
198 -const handleViewDetail = async (record?: any) => {  
199 - let id = record.id;  
200 - modalTitle.value = '查看';  
201 - try {  
202 - const response = await getInsPlanDetail({id})  
203 - initialData.value = {  
204 - form: response, // 表单数据  
205 - tableData: response.tkCheckDetailsDTOList, // 表格数据  
206 - };  
207 - modalVisible.value = true; // 打开弹框  
208 - isViewMode.value = true;  
209 - }catch (error) {  
210 - throw error;  
211 - }finally {  
212 -  
213 - }  
214 -}  
215 -  
216 -const handleEdit = async (record?: any) => {  
217 - let id = record.id;  
218 - modalTitle.value = '修改';  
219 - try {  
220 - const response = await getInsPlanDetail({id})  
221 - initialData.value = {  
222 - form: response, // 表单数据  
223 - tableData: response.tkCheckDetailsDTOList, // 表格数据  
224 - };  
225 - modalVisible.value = true; // 打开弹框  
226 - }catch (error) {  
227 - throw error;  
228 - }finally {  
229 -  
230 - }  
231 -}  
232 -  
233 -// 新增  
234 -const handleCreate = () => {  
235 - modalTitle.value = '新增';  
236 - initialData.value = { 98 + import { BasicTable, useTable, TableAction } from '/@/components/Table';
  99 + import {
  100 + deleteInspectionPlan,
  101 + getInspectionPlanList,
  102 + getInsPlanDetail,
  103 + updateInspectionStatus,
  104 + updateInsStatus,
  105 + } from '/@/api/inspection/inspectionPlan';
  106 + import { columns, searchFormSchema } from './index';
  107 + import { useI18n } from '/@/hooks/web/useI18n';
  108 + import { Button, message, Tag } from 'ant-design-vue';
  109 + import { useMessage } from '/@/hooks/web/useMessage';
  110 + import { insPlanModal } from './components/index';
  111 + import { ref } from 'vue';
  112 + import { dateFormat } from '/@/utils/common/compUtils';
  113 + const { t } = useI18n();
  114 + const { createMessage } = useMessage();
  115 + const modalVisible = ref(false);
  116 + const isViewMode = ref(false);
  117 + const modalTitle = ref('');
  118 + const initialData = ref({
237 form: { 119 form: {
238 code: '', 120 code: '',
239 name: '', 121 name: '',
@@ -244,22 +126,137 @@ const handleCreate = () => { @@ -244,22 +126,137 @@ const handleCreate = () => {
244 remark: '', 126 remark: '',
245 }, 127 },
246 tableData: [], 128 tableData: [],
247 - }  
248 - modalVisible.value = true;  
249 -}; 129 + });
  130 +
  131 + const [registerTable, { reload, setLoading, setSelectedRowKeys }] = useTable({
  132 + title: t('inspection.inspectionPlan.listText'),
  133 + api: getInspectionPlanList,
  134 + columns,
  135 + formConfig: {
  136 + labelWidth: 100,
  137 + schemas: searchFormSchema,
  138 + },
  139 + immediate: true,
  140 + useSearchForm: true,
  141 + showTableSetting: true,
  142 + bordered: true,
  143 + showIndexColumn: false,
  144 + clickToRowSelect: false,
  145 + rowKey: 'id',
  146 + actionColumn: {
  147 + width: 360,
  148 + title: t('common.actionText'),
  149 + slots: { customRender: 'action' },
  150 + fixed: 'right',
  151 + },
  152 + });
  153 +
  154 + const handleDelete = async (record?: any) => {
  155 + let id = record.id;
  156 + try {
  157 + setLoading(true);
  158 + await deleteInspectionPlan({ id });
  159 + createMessage.success(t('common.deleteSuccessText'));
  160 + handleReload();
  161 + } catch (error) {
  162 + throw error;
  163 + } finally {
  164 + setLoading(false);
  165 + }
  166 + };
  167 +
  168 + const handleReload = () => {
  169 + setSelectedRowKeys([]);
  170 + reload();
  171 + };
250 172
251 -const handleSubmit = async (data) => {  
252 - const format = 'yyyy-MM-dd hh:mm:ss';  
253 - const _data = {  
254 - ...data,  
255 - startTime: dateFormat(data?.startTime, format),  
256 - endTime: dateFormat(data?.endTime, format),  
257 - }  
258 - modalVisible.value = false;  
259 - await updateInspectionStatus(_data)  
260 - message.success('提交成功');  
261 - handleReload()  
262 -}; 173 + const handleUpdateStatus = async (record?: any, value?: string) => {
  174 + let id = record.id;
  175 + let status = '';
  176 + if (record.status === 'NOT_START') {
  177 + status = 'UNDERWAY';
  178 + } else if (record.status === 'UNDERWAY') {
  179 + status = 'FINISH';
  180 + } else if (record.status === 'FINISH') {
  181 + status = 'STOP';
  182 + }
  183 + if (value === 'STOP') {
  184 + status = 'STOP';
  185 + }
  186 + try {
  187 + setLoading(true);
  188 + await updateInsStatus({ id, status });
  189 + createMessage.success(t('common.editSuccessText'));
  190 + handleReload();
  191 + } catch (error) {
  192 + throw error;
  193 + } finally {
  194 + setLoading(false);
  195 + }
  196 + };
263 197
  198 + const handleViewDetail = async (record?: any) => {
  199 + let id = record.id;
  200 + modalTitle.value = '查看';
  201 + try {
  202 + const response = await getInsPlanDetail({ id });
  203 + initialData.value = {
  204 + form: response, // 表单数据
  205 + tableData: response.tkCheckDetailsDTOList, // 表格数据
  206 + };
  207 + modalVisible.value = true; // 打开弹框
  208 + isViewMode.value = true;
  209 + } catch (error) {
  210 + throw error;
  211 + } finally {
  212 + }
  213 + };
264 214
  215 + const handleEdit = async (record?: any) => {
  216 + let id = record.id;
  217 + modalTitle.value = '修改';
  218 + try {
  219 + const response = await getInsPlanDetail({ id });
  220 + initialData.value = {
  221 + form: response, // 表单数据
  222 + tableData: response.tkCheckDetailsDTOList, // 表格数据
  223 + };
  224 + modalVisible.value = true; // 打开弹框
  225 + isViewMode.value = false;
  226 + } catch (error) {
  227 + throw error;
  228 + } finally {
  229 + }
  230 + };
  231 +
  232 + // 新增
  233 + const handleCreate = () => {
  234 + modalTitle.value = '新增';
  235 + initialData.value = {
  236 + form: {
  237 + code: '',
  238 + name: '',
  239 + status: '',
  240 + enabled: '',
  241 + startTime: '',
  242 + endTime: '',
  243 + remark: '',
  244 + },
  245 + tableData: [],
  246 + };
  247 + modalVisible.value = true;
  248 + };
  249 +
  250 + const handleSubmit = async (data) => {
  251 + const format = 'yyyy-MM-dd hh:mm:ss';
  252 + const _data = {
  253 + ...data,
  254 + startTime: dateFormat(data?.startTime, format),
  255 + endTime: dateFormat(data?.endTime, format),
  256 + };
  257 + modalVisible.value = false;
  258 + await updateInspectionStatus(_data);
  259 + message.success('提交成功');
  260 + handleReload();
  261 + };
265 </script> 262 </script>
@@ -9,11 +9,8 @@ @@ -9,11 +9,8 @@
9 </Authority> 9 </Authority>
10 </template> 10 </template>
11 <template #recordResult="{ record }"> 11 <template #recordResult="{ record }">
12 - <Tag  
13 - :color="record.recordResult ? 'green' : 'red'"  
14 - class="ml-2"  
15 - >  
16 - {{record.recordResult ? '正常' : '异常'}} 12 + <Tag :color="record.recordResult ? 'green' : 'red'" class="ml-2">
  13 + {{ record.recordResult ? '正常' : '异常' }}
17 </Tag> 14 </Tag>
18 </template> 15 </template>
19 <template #action="{ record }"> 16 <template #action="{ record }">
@@ -55,18 +52,19 @@ @@ -55,18 +52,19 @@
55 </div> 52 </div>
56 </template> 53 </template>
57 <script setup lang="ts"> 54 <script setup lang="ts">
58 - import {ref} from "vue"; 55 + import { ref } from 'vue';
59 import { BasicTable, useTable, TableAction } from '/@/components/Table'; 56 import { BasicTable, useTable, TableAction } from '/@/components/Table';
60 import { 57 import {
61 getInspectionRecordList, 58 getInspectionRecordList,
62 deleteInsRecord, 59 deleteInsRecord,
63 - saveInsRecord, getInsRecordDetail 60 + saveInsRecord,
  61 + getInsRecordDetail,
64 } from '/@/api/inspection/inspectionRecord'; 62 } from '/@/api/inspection/inspectionRecord';
65 import { columns, searchFormSchema } from './index'; 63 import { columns, searchFormSchema } from './index';
66 import { useI18n } from '/@/hooks/web/useI18n'; 64 import { useI18n } from '/@/hooks/web/useI18n';
67 - import {Button, message, Tag} from 'ant-design-vue';  
68 - import {useMessage} from "/@/hooks/web/useMessage";  
69 - import { insRecordModal } from "./components/index" 65 + import { Button, message, Tag } from 'ant-design-vue';
  66 + import { useMessage } from '/@/hooks/web/useMessage';
  67 + import { insRecordModal } from './components/index';
70 const { t } = useI18n(); 68 const { t } = useI18n();
71 const { createMessage } = useMessage(); 69 const { createMessage } = useMessage();
72 const modalVisible = ref(false); 70 const modalVisible = ref(false);
@@ -84,10 +82,7 @@ @@ -84,10 +82,7 @@
84 }, 82 },
85 tableData: [], 83 tableData: [],
86 }); 84 });
87 - const [  
88 - registerTable,  
89 - { reload, setLoading, setSelectedRowKeys, },  
90 - ] = useTable({ 85 + const [registerTable, { reload, setLoading, setSelectedRowKeys }] = useTable({
91 title: t('inspection.inspectionRecord.listText'), 86 title: t('inspection.inspectionRecord.listText'),
92 api: getInspectionRecordList, 87 api: getInspectionRecordList,
93 columns, 88 columns,
@@ -136,9 +131,9 @@ @@ -136,9 +131,9 @@
136 orgId: '', 131 orgId: '',
137 }, 132 },
138 tableData: [], 133 tableData: [],
139 - } 134 + };
140 modalVisible.value = true; 135 modalVisible.value = true;
141 - } 136 + };
142 137
143 const handleReload = () => { 138 const handleReload = () => {
144 setSelectedRowKeys([]); 139 setSelectedRowKeys([]);
@@ -150,11 +145,11 @@ @@ -150,11 +145,11 @@
150 modalVisible.value = false; 145 modalVisible.value = false;
151 const _data = { 146 const _data = {
152 ...data, 147 ...data,
153 - checkDate: dateFormat(data?.checkDate, format)  
154 - }  
155 - await saveInsRecord(_data) 148 + checkDate: dateFormat(data?.checkDate, format),
  149 + };
  150 + await saveInsRecord(_data);
156 message.success('提交成功'); 151 message.success('提交成功');
157 - handleReload() 152 + handleReload();
158 }; 153 };
159 154
160 const handleViewDetail = async (record?: any) => { 155 const handleViewDetail = async (record?: any) => {
@@ -163,32 +158,31 @@ @@ -163,32 +158,31 @@
163 modalVisible.value = true; // 打开弹框 158 modalVisible.value = true; // 打开弹框
164 isViewMode.value = true; 159 isViewMode.value = true;
165 try { 160 try {
166 - const response = await getInsRecordDetail({id}) 161 + const response = await getInsRecordDetail({ id });
167 initialData.value = { 162 initialData.value = {
168 form: response, // 表单数据 163 form: response, // 表单数据
169 tableData: response.tkInspectionDetailsDTOList, // 表格数据 164 tableData: response.tkInspectionDetailsDTOList, // 表格数据
170 }; 165 };
171 - }catch (error) { 166 + } catch (error) {
172 throw error; 167 throw error;
173 - }finally {  
174 - 168 + } finally {
175 } 169 }
176 - } 170 + };
177 171
178 const handleEdit = async (record?: any) => { 172 const handleEdit = async (record?: any) => {
179 let id = record.id; 173 let id = record.id;
180 modalTitle.value = '修改'; 174 modalTitle.value = '修改';
181 try { 175 try {
182 - const response = await getInsRecordDetail({id}) 176 + const response = await getInsRecordDetail({ id });
183 initialData.value = { 177 initialData.value = {
184 form: response, // 表单数据 178 form: response, // 表单数据
185 tableData: response.tkInspectionDetailsDTOList, // 表格数据 179 tableData: response.tkInspectionDetailsDTOList, // 表格数据
186 }; 180 };
187 modalVisible.value = true; // 打开弹框 181 modalVisible.value = true; // 打开弹框
188 - }catch (error) { 182 + isViewMode.value = false;
  183 + } catch (error) {
189 throw error; 184 throw error;
190 - }finally { 185 + } finally {
191 } 186 }
192 - }  
193 - 187 + };
194 </script> 188 </script>
@@ -14,8 +14,10 @@ @@ -14,8 +14,10 @@
14 record.status == 'NOTSTART' 14 record.status == 'NOTSTART'
15 ? 'red' 15 ? 'red'
16 : record.status == 'UNDERWAY' 16 : record.status == 'UNDERWAY'
17 - ? 'blue': record.status == 'COMPLETED'  
18 - ? 'green': 'yellow' 17 + ? 'blue'
  18 + : record.status == 'COMPLETED'
  19 + ? 'green'
  20 + : 'yellow'
19 " 21 "
20 class="ml-2" 22 class="ml-2"
21 > 23 >
@@ -66,7 +68,7 @@ @@ -66,7 +68,7 @@
66 ifShow: () => record.status === 'NOTSTART' || record.status === 'UNDERWAY', 68 ifShow: () => record.status === 'NOTSTART' || record.status === 'UNDERWAY',
67 popConfirm: { 69 popConfirm: {
68 title: t('common.stopConfirmText'), 70 title: t('common.stopConfirmText'),
69 - confirm: handleUpdateStatus.bind(null, record,'STOP'), 71 + confirm: handleUpdateStatus.bind(null, record, 'STOP'),
70 }, 72 },
71 }, 73 },
72 { 74 {
@@ -90,19 +92,24 @@ @@ -90,19 +92,24 @@
90 @submit="handleSubmit" 92 @submit="handleSubmit"
91 :title="modalTitle" 93 :title="modalTitle"
92 /> 94 />
93 -  
94 </div> 95 </div>
95 </template> 96 </template>
96 <script setup lang="ts"> 97 <script setup lang="ts">
97 import { BasicTable, useTable, TableAction } from '/@/components/Table'; 98 import { BasicTable, useTable, TableAction } from '/@/components/Table';
98 - import {deleteServePlan, getServicePlanList, updateServiceStatus, savePreservePlan, getPreserveDetail} from '/@/api/inspection/servicePlan';  
99 - import { servicePlanModal } from "./components/index" 99 + import {
  100 + deleteServePlan,
  101 + getServicePlanList,
  102 + updateServiceStatus,
  103 + savePreservePlan,
  104 + getPreserveDetail,
  105 + } from '/@/api/inspection/servicePlan';
  106 + import { servicePlanModal } from './components/index';
100 import { columns, searchFormSchema } from './index'; 107 import { columns, searchFormSchema } from './index';
101 import { useI18n } from '/@/hooks/web/useI18n'; 108 import { useI18n } from '/@/hooks/web/useI18n';
102 - import {Button, Tag} from 'ant-design-vue';  
103 - import {useMessage} from "/@/hooks/web/useMessage"; 109 + import { Button, Tag } from 'ant-design-vue';
  110 + import { useMessage } from '/@/hooks/web/useMessage';
104 const { t } = useI18n(); 111 const { t } = useI18n();
105 - import { ref } from "vue" 112 + import { ref } from 'vue';
106 const { createMessage } = useMessage(); 113 const { createMessage } = useMessage();
107 const modalVisible = ref(false); 114 const modalVisible = ref(false);
108 const isViewMode = ref(false); 115 const isViewMode = ref(false);
@@ -117,10 +124,7 @@ @@ -117,10 +124,7 @@
117 }, 124 },
118 tableData: [], 125 tableData: [],
119 }); 126 });
120 - const [  
121 - registerTable,  
122 - { reload, setLoading, setSelectedRowKeys, },  
123 - ] = useTable({ 127 + const [registerTable, { reload, setLoading, setSelectedRowKeys }] = useTable({
124 title: t('inspection.servicePlan.listText'), 128 title: t('inspection.servicePlan.listText'),
125 api: getServicePlanList, 129 api: getServicePlanList,
126 columns, 130 columns,
@@ -155,15 +159,15 @@ @@ -155,15 +159,15 @@
155 frequency: '', 159 frequency: '',
156 }, 160 },
157 tableData: [], 161 tableData: [],
158 - } 162 + };
159 modalVisible.value = true; 163 modalVisible.value = true;
160 }; 164 };
161 165
162 const handleSubmit = async (data) => { 166 const handleSubmit = async (data) => {
163 modalVisible.value = false; 167 modalVisible.value = false;
164 - await savePreservePlan(data) 168 + await savePreservePlan(data);
165 createMessage.success('提交成功'); 169 createMessage.success('提交成功');
166 - handleReload() 170 + handleReload();
167 }; 171 };
168 172
169 const handleReload = () => { 173 const handleReload = () => {
@@ -175,36 +179,35 @@ @@ -175,36 +179,35 @@
175 let id = record.id; 179 let id = record.id;
176 modalTitle.value = '查看'; 180 modalTitle.value = '查看';
177 try { 181 try {
178 - const response = await getPreserveDetail({id}) 182 + const response = await getPreserveDetail({ id });
179 initialData.value = { 183 initialData.value = {
180 form: response, // 表单数据 184 form: response, // 表单数据
181 tableData: response.preserveDetailList, // 表格数据 185 tableData: response.preserveDetailList, // 表格数据
182 }; 186 };
183 modalVisible.value = true; // 打开弹框 187 modalVisible.value = true; // 打开弹框
184 isViewMode.value = true; 188 isViewMode.value = true;
185 - }catch (error) { 189 + } catch (error) {
186 throw error; 190 throw error;
187 - }finally {  
188 - 191 + } finally {
189 } 192 }
190 - }  
191 - 193 + };
  194 +
192 const handleEdit = async (record?: any) => { 195 const handleEdit = async (record?: any) => {
193 let id = record.id; 196 let id = record.id;
194 modalTitle.value = '修改'; 197 modalTitle.value = '修改';
195 try { 198 try {
196 - const response = await getPreserveDetail({id}) 199 + const response = await getPreserveDetail({ id });
197 initialData.value = { 200 initialData.value = {
198 form: response, // 表单数据 201 form: response, // 表单数据
199 tableData: response.preserveDetailList, // 表格数据 202 tableData: response.preserveDetailList, // 表格数据
200 }; 203 };
201 modalVisible.value = true; // 打开弹框 204 modalVisible.value = true; // 打开弹框
202 - }catch (error) { 205 + isViewMode.value = false;
  206 + } catch (error) {
203 throw error; 207 throw error;
204 - }finally {  
205 - 208 + } finally {
206 } 209 }
207 - } 210 + };
208 211
209 const handleDelete = async (record?: any) => { 212 const handleDelete = async (record?: any) => {
210 let id = record.id; 213 let id = record.id;
@@ -220,22 +223,22 @@ @@ -220,22 +223,22 @@
220 } 223 }
221 }; 224 };
222 225
223 - const handleUpdateStatus = async (record?: any,value?: string) => { 226 + const handleUpdateStatus = async (record?: any, value?: string) => {
224 let id = record.id; 227 let id = record.id;
225 let status = ''; 228 let status = '';
226 if (record.status === 'NOTSTART') { 229 if (record.status === 'NOTSTART') {
227 - status = 'UNDERWAY'  
228 - }else if(record.status === 'UNDERWAY'){  
229 - status = 'COMPLETED'  
230 - }else if(record.status === 'COMPLETED'){  
231 - status = 'STOP' 230 + status = 'UNDERWAY';
  231 + } else if (record.status === 'UNDERWAY') {
  232 + status = 'COMPLETED';
  233 + } else if (record.status === 'COMPLETED') {
  234 + status = 'STOP';
232 } 235 }
233 if (value === 'STOP') { 236 if (value === 'STOP') {
234 - status = 'STOP' 237 + status = 'STOP';
235 } 238 }
236 try { 239 try {
237 setLoading(true); 240 setLoading(true);
238 - await updateServiceStatus({ id,status }); 241 + await updateServiceStatus({ id, status });
239 createMessage.success(t('common.editSuccessText')); 242 createMessage.success(t('common.editSuccessText'));
240 handleReload(); 243 handleReload();
241 } catch (error) { 244 } catch (error) {
@@ -243,6 +246,5 @@ @@ -243,6 +246,5 @@
243 } finally { 246 } finally {
244 setLoading(false); 247 setLoading(false);
245 } 248 }
246 - }  
247 - 249 + };
248 </script> 250 </script>
1 import { FormSchema } from '/@/components/Form'; 1 import { FormSchema } from '/@/components/Form';
2 import { useI18n } from '/@/hooks/web/useI18n'; 2 import { useI18n } from '/@/hooks/web/useI18n';
3 import { BasicColumn } from '/@/components/Table'; 3 import { BasicColumn } from '/@/components/Table';
4 -import {getServicePlanList} from "/@/api/inspection/servicePlan"; 4 +import { getServicePlanList } from '/@/api/inspection/servicePlan';
5 const { t } = useI18n(); 5 const { t } = useI18n();
6 6
7 -  
8 const statusOptions = [ 7 const statusOptions = [
9 { label: t('inspection.serviceRecord.INCOMPLETE'), value: 'INCOMPLETE' }, 8 { label: t('inspection.serviceRecord.INCOMPLETE'), value: 'INCOMPLETE' },
10 { label: t('inspection.serviceRecord.COMPLETE'), value: 'COMPLETE' }, 9 { label: t('inspection.serviceRecord.COMPLETE'), value: 'COMPLETE' },
@@ -60,9 +59,7 @@ export const columns: BasicColumn[] = [ @@ -60,9 +59,7 @@ export const columns: BasicColumn[] = [
60 dataIndex: 'preserveDate', 59 dataIndex: 'preserveDate',
61 }, 60 },
62 { 61 {
63 - title: t('inspection.serviceRecord.preserveByName'),  
64 dataIndex: 'preserveByName', 62 dataIndex: 'preserveByName',
65 -  
66 }, 63 },
67 { 64 {
68 title: t('inspection.serviceRecord.preserveNameText'), 65 title: t('inspection.serviceRecord.preserveNameText'),
@@ -12,8 +12,10 @@ @@ -12,8 +12,10 @@
12 <Tag 12 <Tag
13 :color=" 13 :color="
14 record.status == 'INCOMPLETE' 14 record.status == 'INCOMPLETE'
15 - ? 'red': record.status == 'COMPLETED'  
16 - ? 'green': 'yellow' 15 + ? 'red'
  16 + : record.status == 'COMPLETED'
  17 + ? 'green'
  18 + : 'yellow'
17 " 19 "
18 class="ml-2" 20 class="ml-2"
19 > 21 >
@@ -59,85 +61,26 @@ @@ -59,85 +61,26 @@
59 </div> 61 </div>
60 </template> 62 </template>
61 <script setup lang="ts"> 63 <script setup lang="ts">
62 -import { BasicTable, useTable, TableAction } from '/@/components/Table';  
63 -import {  
64 - getServiceRecordList,  
65 - deleteServeRecord,  
66 - savePreserveRecord, getRecordDetail  
67 -} from '/@/api/inspection/serviceRecord';  
68 -import { columns, searchFormSchema } from './index';  
69 -import { useI18n } from '/@/hooks/web/useI18n';  
70 -import {Button, message, Tag} from 'ant-design-vue';  
71 -import {useMessage} from "/@/hooks/web/useMessage";  
72 -import { serviceRecordModal } from "./components/index"  
73 -import {ref} from "vue";  
74 -const { t } = useI18n();  
75 -const { createMessage } = useMessage();  
76 -const modalVisible = ref(false);  
77 -const isViewMode = ref(false);  
78 -const modalTitle = ref('');  
79 -import { dateFormat } from '/@/utils/common/compUtils';  
80 -const initialData = ref({  
81 - form: {  
82 - recordCode: '',  
83 - preservePlanId: '',  
84 - preserveStatus: '',  
85 - preserveBy: '',  
86 - preserveByName: '',  
87 - preserveDate: '',  
88 - orgId: '',  
89 - },  
90 - tableData: [],  
91 -});  
92 -  
93 -const [  
94 - registerTable,  
95 - { reload, setLoading, setSelectedRowKeys, },  
96 -] = useTable({  
97 - title: t('inspection.serviceRecord.listText'),  
98 - api: getServiceRecordList,  
99 - columns,  
100 - formConfig: {  
101 - labelWidth: 100,  
102 - schemas: searchFormSchema,  
103 - },  
104 - immediate: true,  
105 - useSearchForm: true,  
106 - showTableSetting: true,  
107 - bordered: true,  
108 - showIndexColumn: false,  
109 - clickToRowSelect: false,  
110 - rowKey: 'id',  
111 - actionColumn: {  
112 - width: 230,  
113 - title: t('common.actionText'),  
114 - slots: { customRender: 'action' },  
115 - fixed: 'right',  
116 - },  
117 -});  
118 -  
119 -const handleDelete = async (record?: any) => {  
120 - let id = record.id;  
121 - try {  
122 - setLoading(true);  
123 - await deleteServeRecord({ id });  
124 - createMessage.success(t('common.deleteSuccessText'));  
125 - handleReload();  
126 - } catch (error) {  
127 - throw error;  
128 - } finally {  
129 - setLoading(false);  
130 - }  
131 -};  
132 -  
133 -const handleReload = () => {  
134 - setSelectedRowKeys([]);  
135 - reload();  
136 -};  
137 -  
138 -const handleCreate = () => {  
139 - modalTitle.value = '新增';  
140 - initialData.value = { 64 + import { BasicTable, useTable, TableAction } from '/@/components/Table';
  65 + import {
  66 + getServiceRecordList,
  67 + deleteServeRecord,
  68 + savePreserveRecord,
  69 + getRecordDetail,
  70 + } from '/@/api/inspection/serviceRecord';
  71 + import { columns, searchFormSchema } from './index';
  72 + import { useI18n } from '/@/hooks/web/useI18n';
  73 + import { Button, message, Tag } from 'ant-design-vue';
  74 + import { useMessage } from '/@/hooks/web/useMessage';
  75 + import { serviceRecordModal } from './components/index';
  76 + import { ref } from 'vue';
  77 + const { t } = useI18n();
  78 + const { createMessage } = useMessage();
  79 + const modalVisible = ref(false);
  80 + const isViewMode = ref(false);
  81 + const modalTitle = ref('');
  82 + import { dateFormat } from '/@/utils/common/compUtils';
  83 + const initialData = ref({
141 form: { 84 form: {
142 recordCode: '', 85 recordCode: '',
143 preservePlanId: '', 86 preservePlanId: '',
@@ -148,55 +91,110 @@ const handleCreate = () => { @@ -148,55 +91,110 @@ const handleCreate = () => {
148 orgId: '', 91 orgId: '',
149 }, 92 },
150 tableData: [], 93 tableData: [],
151 - }  
152 - modalVisible.value = true;  
153 -} 94 + });
  95 +
  96 + const [registerTable, { reload, setLoading, setSelectedRowKeys }] = useTable({
  97 + title: t('inspection.serviceRecord.listText'),
  98 + api: getServiceRecordList,
  99 + columns,
  100 + formConfig: {
  101 + labelWidth: 100,
  102 + schemas: searchFormSchema,
  103 + },
  104 + immediate: true,
  105 + useSearchForm: true,
  106 + showTableSetting: true,
  107 + bordered: true,
  108 + showIndexColumn: false,
  109 + clickToRowSelect: false,
  110 + rowKey: 'id',
  111 + actionColumn: {
  112 + width: 230,
  113 + title: t('common.actionText'),
  114 + slots: { customRender: 'action' },
  115 + fixed: 'right',
  116 + },
  117 + });
  118 +
  119 + const handleDelete = async (record?: any) => {
  120 + let id = record.id;
  121 + try {
  122 + setLoading(true);
  123 + await deleteServeRecord({ id });
  124 + createMessage.success(t('common.deleteSuccessText'));
  125 + handleReload();
  126 + } catch (error) {
  127 + throw error;
  128 + } finally {
  129 + setLoading(false);
  130 + }
  131 + };
154 132
155 -const handleSubmit = async (data) => {  
156 - const format = 'yyyy-MM-dd hh:mm:ss';  
157 - modalVisible.value = false;  
158 - const _data = {  
159 - ...data,  
160 - preserveDate: dateFormat(data?.preserveDate, format)  
161 - }  
162 - await savePreserveRecord(_data)  
163 - message.success('提交成功');  
164 - handleReload()  
165 -}; 133 + const handleReload = () => {
  134 + setSelectedRowKeys([]);
  135 + reload();
  136 + };
166 137
167 -const handleEdit = async (record?: any) => {  
168 - let id = record.id;  
169 - modalTitle.value = '修改';  
170 - try {  
171 - const response = await getRecordDetail({id}) 138 + const handleCreate = () => {
  139 + modalTitle.value = '新增';
172 initialData.value = { 140 initialData.value = {
173 - form: response, // 表单数据  
174 - tableData: response.preserveDetailStatusList, // 表格数据 141 + form: {
  142 + recordCode: '',
  143 + preservePlanId: '',
  144 + preserveStatus: '',
  145 + preserveBy: '',
  146 + preserveByName: '',
  147 + preserveDate: '',
  148 + orgId: '',
  149 + },
  150 + tableData: [],
175 }; 151 };
176 - modalVisible.value = true; // 打开弹框  
177 - }catch (error) {  
178 - throw error;  
179 - }finally { 152 + modalVisible.value = true;
  153 + };
180 154
181 - }  
182 -}  
183 -  
184 -const handleViewDetail = async (record?: any) => {  
185 - let id = record.id;  
186 - modalTitle.value = '查看';  
187 - try {  
188 - const response = await getRecordDetail({id})  
189 - initialData.value = {  
190 - form: response, // 表单数据  
191 - tableData: response.preserveDetailStatusList, // 表格数据 155 + const handleSubmit = async (data) => {
  156 + const format = 'yyyy-MM-dd hh:mm:ss';
  157 + modalVisible.value = false;
  158 + const _data = {
  159 + ...data,
  160 + preserveDate: dateFormat(data?.preserveDate, format),
192 }; 161 };
193 - modalVisible.value = true; // 打开弹框  
194 - isViewMode.value = true;  
195 - }catch (error) {  
196 - throw error;  
197 - }finally { 162 + await savePreserveRecord(_data);
  163 + message.success('提交成功');
  164 + handleReload();
  165 + };
198 166
199 - }  
200 -} 167 + const handleEdit = async (record?: any) => {
  168 + let id = record.id;
  169 + modalTitle.value = '修改';
  170 + try {
  171 + const response = await getRecordDetail({ id });
  172 + initialData.value = {
  173 + form: response, // 表单数据
  174 + tableData: response.preserveDetailStatusList, // 表格数据
  175 + };
  176 + modalVisible.value = true; // 打开弹框
  177 + isViewMode.value = false;
  178 + } catch (error) {
  179 + throw error;
  180 + } finally {
  181 + }
  182 + };
201 183
  184 + const handleViewDetail = async (record?: any) => {
  185 + let id = record.id;
  186 + modalTitle.value = '查看';
  187 + try {
  188 + const response = await getRecordDetail({ id });
  189 + initialData.value = {
  190 + form: response, // 表单数据
  191 + tableData: response.preserveDetailStatusList, // 表格数据
  192 + };
  193 + modalVisible.value = true; // 打开弹框
  194 + isViewMode.value = true;
  195 + } catch (error) {
  196 + throw error;
  197 + } finally {
  198 + }
  199 + };
202 </script> 200 </script>
@@ -9,6 +9,7 @@ import { createImgPreview } from '/@/components/Preview'; @@ -9,6 +9,7 @@ import { createImgPreview } from '/@/components/Preview';
9 useComponentRegister('OrgTreeSelect', OrgTreeSelect); 9 useComponentRegister('OrgTreeSelect', OrgTreeSelect);
10 10
11 const statusOptions = [ 11 const statusOptions = [
  12 + { label: t('repair.order.DRAFT'), value: 'DRAFT' },
12 { label: t('repair.order.SCHEDULING'), value: 'SCHEDULING' }, 13 { label: t('repair.order.SCHEDULING'), value: 'SCHEDULING' },
13 { label: t('repair.order.REPAIRFINISH'), value: 'REPAIRFINISH' }, 14 { label: t('repair.order.REPAIRFINISH'), value: 'REPAIRFINISH' },
14 { label: t('repair.order.ACCEPTANCEPASSED'), value: 'ACCEPTANCEPASSED' }, 15 { label: t('repair.order.ACCEPTANCEPASSED'), value: 'ACCEPTANCEPASSED' },