¶Ô±ÈÐÂÎļþ |
| | |
| | | |
| | | //表åå·¥å
·æä»¶ |
| | | /** |
| | | * éç¨é«çº§æ¥è¯¢è¡¨åæ°æ®æ¶é彿° |
| | | * @param {Array} formItems - 表åé
置项æ°ç» |
| | | * @param {Object} formData - è¡¨åæ°æ®å¯¹è±¡ |
| | | * @returns {Object} - æ¶éçè¡¨åæ°æ® |
| | | */ |
| | | export const collectFormDataForHighQuery = (formItems, formData) => { |
| | | const data = {}; |
| | | |
| | | // éå表åé
ç½®æ¶éæ°æ® |
| | | formItems.forEach(item => { |
| | | // æ¶éåºç¡å段 |
| | | data[item.prop] = formData.value[item.prop] || ''; |
| | | |
| | | // æ¶éè¿æ»¤æ¨¡å¼å段 |
| | | if (item.highSelectAttrs && item.highSelectAttrs.prop) { |
| | | const filterModeProp = item.highSelectAttrs.prop; |
| | | data[filterModeProp] = formData.value[filterModeProp] || ''; |
| | | } |
| | | }); |
| | | |
| | | return data; |
| | | } |
| | | |
| | | /** |
| | | * éç½®é«çº§æ¥è¯¢çè¿æ»¤æ¨¡å¼ |
| | | * @param formItems - 表åé
置项æ°ç» |
| | | * @param formData - è¡¨åæ°æ®å¯¹è±¡ |
| | | */ |
| | | export const onResetForHighSelect = (formItems, formData) => { |
| | | // éåææè¡¨ååæ®µ |
| | | formItems.forEach(item => { |
| | | // æ£æ¥å段æ¯å¦æé«çº§æ¥è¯¢çè¿æ»¤æ¨¡å¼é
ç½® |
| | | if (item.highSelectAttrs && item.highSelectAttrs.prop) { |
| | | const filterModeProp = item.highSelectAttrs.prop; |
| | | const options = item.highSelectAttrs.options || []; |
| | | |
| | | // 妿åå¨é项ï¼å设置为第ä¸ä¸ªé项çå¼ |
| | | if (options.length > 0) { |
| | | // å设éé¡¹æ ¼å¼ä¸º { value, label } æç±»ä¼¼ç»æ |
| | | const firstValue = options[0].value !== undefined ? options[0].value : options[0]; |
| | | formData.value[filterModeProp] = firstValue; |
| | | } |
| | | } |
| | | }); |
| | | } |
| | | |
| | | /** |
| | | * éç½®é«çº§æ¥è¯¢ |
| | | * @param formItems - 表åé
置项æ°ç» |
| | | * @param formData - è¡¨åæ°æ®å¯¹è±¡ |
| | | */ |
| | | export const onResetForHighQuery = (formItems, formData) => { |
| | | // 1. æ¸
空ææåºç¡å段ï¼ä¸å
å«è¿æ»¤æ¨¡å¼åæ®µï¼ |
| | | const baseFields = formItems.reduce((acc, item) => { |
| | | acc[item.prop] = ''; |
| | | return acc; |
| | | }, {}); |
| | | |
| | | // 2. åºç¨åºç¡å段åå§å¼ |
| | | formData.value = { ...baseFields }; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * ä»è¡¨åæ°æ®ä¸æåææå±æ§ï¼æé¤æ æå段ï¼,æäº¤ä¿åè¡¨åæ°æ®æ¶ç¨ |
| | | * @param formData è¡¨åæ°æ®å¯¹è±¡ |
| | | * @param excludeFields éè¦æé¤çåæ®µå表ï¼é»è®¤ä¸º ['id']ï¼ |
| | | * @returns å¤çåçæææ°æ®å¯¹è±¡ |
| | | */ |
| | | export const extractFormDataForOnConfirm = (formData) => { |
| | | //卿è·å formData çææå±æ§å¼ï¼æé¤æ æå±æ§ï¼å¦ idï¼ |
| | | const data = Object.entries(formData.value).reduce((acc, [key, value]) => { |
| | | // è¿æ»¤æä¸éè¦æäº¤ç屿§ï¼å¦ idï¼å¯æ ¹æ®å®é
éæ±è°æ´ï¼ |
| | | if (key !== 'id') { |
| | | acc[key] = value |
| | | } |
| | | return acc |
| | | }, {} as Record<string, any>) |
| | | return data; |
| | | }; |
| | | |
| | | /** |
| | | * ä»ååºæ°æ®ä¸æåææå段并èµå¼ç»è¡¨åæ°æ®,æå¼è¡¨åæ°æ®æ¶ç¨ |
| | | * @param res ååºæ°æ® |
| | | * @param formData è¡¨åæ°æ®å¼ç¨ |
| | | * @param options é
ç½®é项 |
| | | * @returns å¤çåçè¡¨åæ°æ® |
| | | */ |
| | | export function extractAndAssignFormData(res,formData) { |
| | | // æåææåæ®µï¼æé¤ä¸éè¦ç屿§ï¼å¦ä¸´æ¶å段ãé表ååæ®µï¼ |
| | | const { id, ...validFormData } = res; // ä¿ç id 坿 ¹æ®éæ±è°æ´ |
| | | |
| | | // ç´æ¥èµå¼ï¼èªå¨è¿æ»¤æ æå±æ§ï¼ |
| | | formData.value = { |
| | | ...validFormData, // èªå¨ç»§æ¿ææææå段 |
| | | // å¦éé¢å¤å¤çç¹å®å段ï¼å¦æ¥ææ ¼å¼åï¼ï¼å¯å¨æ¤è¡¥å
|
| | | // plannedStartTime: formatDate(res.plannedStartTime), |
| | | }; |
| | | } |
| | |
| | | // 2. åºç¨åºç¡å段åå§å¼ |
| | | formData.value = { ...baseFields }; |
| | | } |
| | | |
| | | |
| | | /** |
| | | * ä»è¡¨åæ°æ®ä¸æåææå±æ§ï¼æé¤æ æå段ï¼,æäº¤ä¿åè¡¨åæ°æ®æ¶ç¨ |
| | | * @param formData è¡¨åæ°æ®å¯¹è±¡ |
| | | * @param excludeFields éè¦æé¤çåæ®µå表ï¼é»è®¤ä¸º ['id']ï¼ |
| | | * @returns å¤çåçæææ°æ®å¯¹è±¡ |
| | | */ |
| | | export const extractFormDataForOnConfirm = (formData) => { |
| | | //卿è·å formData çææå±æ§å¼ï¼æé¤æ æå±æ§ï¼å¦ idï¼ |
| | | const data = Object.entries(formData.value).reduce((acc, [key, value]) => { |
| | | // è¿æ»¤æä¸éè¦æäº¤ç屿§ï¼å¦ idï¼å¯æ ¹æ®å®é
éæ±è°æ´ï¼ |
| | | if (key !== 'id') { |
| | | acc[key] = value |
| | | } |
| | | return acc |
| | | }, {} as Record<string, any>) |
| | | return data; |
| | | }; |
| | | |
| | | /** |
| | | * ä»ååºæ°æ®ä¸æåææå段并èµå¼ç»è¡¨åæ°æ®,æå¼è¡¨åæ°æ®æ¶ç¨ |
| | | * @param res ååºæ°æ® |
| | | * @param formData è¡¨åæ°æ®å¼ç¨ |
| | | * @param options é
ç½®é项 |
| | | * @returns å¤çåçè¡¨åæ°æ® |
| | | */ |
| | | export function extractAndAssignFormData(res,formData) { |
| | | // æåææåæ®µï¼æé¤ä¸éè¦ç屿§ï¼å¦ä¸´æ¶å段ãé表ååæ®µï¼ |
| | | const { id, ...validFormData } = res; // ä¿ç id 坿 ¹æ®éæ±è°æ´ |
| | | |
| | | // ç´æ¥èµå¼ï¼èªå¨è¿æ»¤æ æå±æ§ï¼ |
| | | formData.value = { |
| | | ...validFormData, // èªå¨ç»§æ¿ææææå段 |
| | | // å¦éé¢å¤å¤çç¹å®å段ï¼å¦æ¥ææ ¼å¼åï¼ï¼å¯å¨æ¤è¡¥å
|
| | | // plannedStartTime: formatDate(res.plannedStartTime), |
| | | }; |
| | | } |
| | |
| | | import { |
| | | BOOLEAN_OPTIONS_AddEdit |
| | | } from '@/utils/commonOptionConstants'; |
| | | |
| | | // å¼å
¥å
Œ
±è¡¨åå·¥å
·æä»¶ |
| | | import { extractFormDataForOnConfirm,extractAndAssignFormData } from '@/utils/myformUtils'; |
| | | export const useWorkTaskDrawer = (props: any, ctx?: any) => { |
| | | const workTaskDrawer = injectModel<WorkTaskDrawer>('workTaskDrawer') |
| | | /** |
| | |
| | | */ |
| | | const onConfirm = async () => { |
| | | await formRef.value?.validate() |
| | | const data = { |
| | | son_TaskCode: formData.value.son_TaskCode, |
| | | taskCode: formData.value.taskCode, |
| | | workPlanStatus: formData.value.workPlanStatus, |
| | | callMaterialStatus: formData.value.callMaterialStatus, |
| | | dataIdentifier: formData.value.dataIdentifier, |
| | | materialMode: formData.value.materialMode, |
| | | length: formData.value.length, |
| | | markingContent: formData.value.markingContent, |
| | | markingPosition: formData.value.markingPosition, |
| | | cuttingPosition: formData.value.cuttingPosition, |
| | | quantity: formData.value.quantity, |
| | | flangeThickness: formData.value.flangeThickness, |
| | | flangeInnerDiameter: formData.value.flangeInnerDiameter, |
| | | weldingHeatInput: formData.value.weldingHeatInput, |
| | | pipeAllowableStress: formData.value.pipeAllowableStress, |
| | | pipeDiameter: formData.value.pipeDiameter, |
| | | pipeWallThickness: formData.value.pipeWallThickness, |
| | | factoryCode: formData.value.factoryCode, |
| | | productCode: formData.value.productCode, |
| | | workstationCode: formData.value.workstationCode, |
| | | equipmentCode: formData.value.equipmentCode, |
| | | prodLineCode: formData.value.prodLineCode, |
| | | shipNumber: formData.value.shipNumber, |
| | | projectNumber: formData.value.projectNumber, |
| | | processName: formData.value.processName, |
| | | pipeFittingCode: formData.value.pipeFittingCode, |
| | | preSerialNumber: formData.value.preSerialNumber, |
| | | pipeSpecCode: formData.value.pipeSpecCode, |
| | | pipeSectionName: formData.value.pipeSectionName, |
| | | outerDiameter: formData.value.outerDiameter, |
| | | thickness: formData.value.thickness, |
| | | material: formData.value.material, |
| | | processRouteNumber: formData.value.processRouteNumber, |
| | | plannedStartTime: formData.value.plannedStartTime, |
| | | plannedEndTime: formData.value.plannedEndTime, |
| | | teamInfo: formData.value.teamInfo, |
| | | timestamp: formData.value.timestamp, |
| | | remark: formData.value.remark, |
| | | } |
| | | const data=extractFormDataForOnConfirm(formData); |
| | | if (!current.value) { |
| | | await workTaskDrawer.addWorkTask(data) |
| | | } else { |
| | |
| | | if (current.value) { |
| | | const res = await workTaskDrawer.getWorkTaskDetail(current.value) |
| | | |
| | | formData.value = { |
| | | son_TaskCode: res.son_TaskCode, |
| | | taskCode: res.taskCode, |
| | | workPlanStatus: res.workPlanStatus, |
| | | callMaterialStatus: res.callMaterialStatus, |
| | | dataIdentifier: res.dataIdentifier, |
| | | materialMode: res.materialMode, |
| | | length: res.length, |
| | | markingContent: res.markingContent, |
| | | markingPosition: res.markingPosition, |
| | | cuttingPosition: res.cuttingPosition, |
| | | quantity: res.quantity, |
| | | flangeThickness: res.flangeThickness, |
| | | flangeInnerDiameter: res.flangeInnerDiameter, |
| | | weldingHeatInput: res.weldingHeatInput, |
| | | pipeAllowableStress: res.pipeAllowableStress, |
| | | pipeDiameter: res.pipeDiameter, |
| | | pipeWallThickness: res.pipeWallThickness, |
| | | factoryCode: res.factoryCode, |
| | | productCode: res.productCode, |
| | | workstationCode: res.workstationCode, |
| | | equipmentCode: res.equipmentCode, |
| | | prodLineCode: res.prodLineCode, |
| | | shipNumber: res.shipNumber, |
| | | projectNumber: res.projectNumber, |
| | | processName: res.processName, |
| | | pipeFittingCode: res.pipeFittingCode, |
| | | preSerialNumber: res.preSerialNumber, |
| | | pipeSpecCode: res.pipeSpecCode, |
| | | pipeSectionName: res.pipeSectionName, |
| | | outerDiameter: res.outerDiameter, |
| | | thickness: res.thickness, |
| | | material: res.material, |
| | | processRouteNumber: res.processRouteNumber, |
| | | plannedStartTime: res.plannedStartTime, |
| | | plannedEndTime: res.plannedEndTime, |
| | | teamInfo: res.teamInfo, |
| | | timestamp: res.timestamp, |
| | | remark: res.remark, |
| | | id: res.id, |
| | | } |
| | | extractAndAssignFormData(res,formData); |
| | | disabled.value = true |
| | | updateCheckData() |
| | | } else { |
| | |
| | | const check = isEqual(initiateData.value, data) |
| | | return check |
| | | } |
| | | // /** |
| | | // * è·åè¡¨åæ°æ® - ä¼åç |
| | | // */ |
| | | // const commonGetFormData = () => { |
| | | // const data = {}; |
| | | |
| | | // // éå表åé
ç½®æ¶éæ°æ® |
| | | // formItems.forEach(item => { |
| | | // // æ¶éåºç¡å段 |
| | | // data[item.prop] = formData.value[item.prop] || ''; |
| | | |
| | | // // æ¶éè¿æ»¤æ¨¡å¼å段 |
| | | // if (item.highSelectAttrs && item.highSelectAttrs.prop) { |
| | | // const filterModeProp = item.highSelectAttrs.prop; |
| | | // data[filterModeProp] = formData.value[filterModeProp] || ''; |
| | | // } |
| | | // }); |
| | | |
| | | // return data; |
| | | // } |
| | | const onClose = (done: () => void) => { |
| | | if (visible.value) { |
| | | visible.value = false |
| | |
| | | const data =collectFormDataForHighQuery(formItems,formData); |
| | | ctx.emit('confirmQuery', data) |
| | | } |
| | | // /** |
| | | // * éç½®å
Œ
±selectæ¥è¯¢ |
| | | // */ |
| | | // const onResetForHighSelect = () => { |
| | | // // éåææè¡¨ååæ®µ |
| | | // formItems.forEach(item => { |
| | | // // æ£æ¥å段æ¯å¦æé«çº§æ¥è¯¢çè¿æ»¤æ¨¡å¼é
ç½® |
| | | // if (item.highSelectAttrs && item.highSelectAttrs.prop) { |
| | | // const filterModeProp = item.highSelectAttrs.prop; |
| | | // const options = item.highSelectAttrs.options || []; |
| | | |
| | | // // 妿åå¨é项ï¼å设置为第ä¸ä¸ªé项çå¼ |
| | | // if (options.length > 0) { |
| | | // // å设éé¡¹æ ¼å¼ä¸º { value, label } æç±»ä¼¼ç»æ |
| | | // const firstValue = options[0].value !== undefined ? options[0].value : options[0]; |
| | | // formData.value[filterModeProp] = firstValue; |
| | | // } |
| | | // } |
| | | // }); |
| | | // } |
| | | /** |
| | | * éç½®æ¥è¯¢ - ä¼åç |
| | | */ |
| | | const onReset = async () => { |
| | | // // 1. æ¸
空ææåºç¡å段ï¼ä¸å
å«è¿æ»¤æ¨¡å¼åæ®µï¼ |
| | | // const baseFields = formItems.reduce((acc, item) => { |
| | | // acc[item.prop] = ''; |
| | | // return acc; |
| | | // }, {}); |
| | | |
| | | // // 2. åºç¨åºç¡å段åå§å¼ |
| | | // formData.value = { ...baseFields }; |
| | | |
| | | // 1. æ¸
空ææåºç¡å段ï¼ä¸å
å«è¿æ»¤æ¨¡å¼å段ï¼,åºç¨åºç¡å段åå§å¼ |
| | | onResetForHighQuery(formItems,formData); |
| | | |
| | | // 3. 使ç¨åææ¹æ³éç½®è¿æ»¤æ¨¡å¼å段 |
| | | onResetForHighSelect(formItems,formData); // ä¿çåææ¹æ³è°ç¨ |
| | | // 2. 使ç¨åææ¹æ³éç½®è¿æ»¤æ¨¡å¼å段 |
| | | onResetForHighSelect(formItems,formData); |
| | | |
| | | // 4. åç¶ç»ä»¶åéèªå®ä¹äºä»¶ |
| | | // 3. åç¶ç»ä»¶åéèªå®ä¹äºä»¶ |
| | | ctx.emit('restQuery'); |
| | | } |
| | | |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.PipeLineLems.Domain.Shared.Enums; |
| | | using CmsQueryExtensions.Extension; |
| | | using Volo.Abp.Application.Dtos; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨æ¥è¯¢åæ° |
| | | /// </summary> |
| | | public class GetWorkTaskInput : ExtensiblePagedAndSortedResultRequestDto |
| | | { |
| | | |
| | | #region å
³é®åæ¥è¯¢ |
| | | |
| | | /// <summary> |
| | | /// å
³é®åæ¨¡ç³æ¥è¯¢ï¼æ³¨ææ¯å°åï¼ï¼ |
| | | /// </summary> |
| | | public string searchVal { get; set; } |
| | | |
| | | /// <summary> |
| | | /// éç¨æ¥è¯¢é
ç½® (1:æ¨¡ç³æ¥è¯¢ , 2:ç²¾åæ¥è¯¢)ï¼æ³¨ææ¯å°åï¼ï¼ |
| | | /// </summary> |
| | | public SearchFilterModeEnum searchVal_FilterMode { get; set; } = SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// åæç´¢ç»ä»¶ä¼ éçéç¨æ¥è¯¢é
ç½®ç屿§åï¼æ³¨ææ¯å°åï¼ï¼ |
| | | /// </summary> |
| | | [NoAutoQuery] |
| | | public string str_searchFormInputAttrs { get; set; } |
| | | /// <summary> |
| | | /// åæç´¢ç»ä»¶ä¼ éçéç¨æ¥è¯¢é
ç½®ç屿§åï¼æ³¨ææ¯å°åï¼ï¼ |
| | | /// </summary> |
| | | public List<string> searchFormInputAttrs |
| | | { |
| | | get |
| | | { |
| | | if (!string.IsNullOrEmpty(str_searchFormInputAttrs)) |
| | | { |
| | | return str_searchFormInputAttrs.Split(',').ToList(); |
| | | } |
| | | return new List<string>(); |
| | | } |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | /// <summary> |
| | | /// åä»»å¡ç¼ç |
| | | /// </summary> |
| | | public string Son_TaskCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åä»»å¡ç¼ç -æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum Son_TaskCode_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// ä»»å¡ç¼ç |
| | | /// </summary> |
| | | public string TaskCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä»»å¡ç¼ç -æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum TaskCode_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 计åç¶æ |
| | | /// </summary> |
| | | public WorkPlanStatusEnum? WorkPlanStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åç¶æ-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum WorkPlanStatus_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å«æç¶æ |
| | | /// </summary> |
| | | public CallMaterialStatusEnum? CallMaterialStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å«æç¶æ-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum CallMaterialStatus_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// åææ è¯ |
| | | /// </summary> |
| | | public string DataIdentifier { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åææ è¯-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum DataIdentifier_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// åæåå· |
| | | /// </summary> |
| | | public string MaterialMode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åæåå·-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum MaterialMode_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦(mm) |
| | | /// </summary> |
| | | public decimal? Length { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦(mm)-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum Length_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æç å
容 |
| | | /// </summary> |
| | | public string MarkingContent { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç å
容-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum MarkingContent_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æç ä½ç½® |
| | | /// </summary> |
| | | public decimal? MarkingPosition { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç ä½ç½®-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum MarkingPosition_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// åå²ä½ç½® |
| | | /// </summary> |
| | | public decimal? CuttingPosition { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åå²ä½ç½®-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum CuttingPosition_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 管段æ°é |
| | | /// </summary> |
| | | public int? Quantity { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段æ°é-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum Quantity_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å度(mm) |
| | | /// </summary> |
| | | public decimal? FlangeThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å度(mm)-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum FlangeThickness_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ³å
°ç´å¾(mm) |
| | | /// </summary> |
| | | public decimal? FlangeInnerDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°ç´å¾(mm)-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum FlangeInnerDiameter_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å
¬ç§°åå |
| | | /// </summary> |
| | | public string WeldingHeatInput { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å
¬ç§°åå-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum WeldingHeatInput_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å²ç å
容 |
| | | /// </summary> |
| | | public string PipeAllowableStress { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å²ç å
容-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum PipeAllowableStress_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡é¿åº¦(mm) |
| | | /// </summary> |
| | | public decimal? PipeDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡é¿åº¦(mm)-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum PipeDiameter_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡ç´å¾(mm) |
| | | /// </summary> |
| | | public decimal? PipeWallThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡ç´å¾(mm)-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum PipeWallThickness_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å·¥å代ç |
| | | /// </summary> |
| | | public string FactoryCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥å代ç -æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum FactoryCode_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 产å代ç |
| | | /// </summary> |
| | | public string ProductCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产å代ç -æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum ProductCode_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å·¥ä½ä»£ç |
| | | /// </summary> |
| | | public string WorkstationCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥ä½ä»£ç -æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum WorkstationCode_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 设å¤ä»£ç |
| | | /// </summary> |
| | | public string EquipmentCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 设å¤ä»£ç -æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum EquipmentCode_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 产线ç¼ç |
| | | /// </summary> |
| | | public string ProdLineCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产线ç¼ç -æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum ProdLineCode_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// è¹å· |
| | | /// </summary> |
| | | public string ShipNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è¹å·-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum ShipNumber_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 项ç®å· |
| | | /// </summary> |
| | | public string ProjectNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 项ç®å·-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum ProjectNumber_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å·¥åºåç§° |
| | | /// </summary> |
| | | public string ProcessName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥åºåç§°-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum ProcessName_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 管件ç¼ç |
| | | /// </summary> |
| | | public string PipeFittingCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管件ç¼ç -æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum PipeFittingCode_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 顺åºå· |
| | | /// </summary> |
| | | public string PreSerialNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 顺åºå·-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum PreSerialNumber_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 管段ç¼ç |
| | | /// </summary> |
| | | public string PipeSpecCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段ç¼ç -æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum PipeSpecCode_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 管段åç§° |
| | | /// </summary> |
| | | public string PipeSectionName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段åç§°-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum PipeSectionName_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å¤å¾(mm) |
| | | /// </summary> |
| | | public decimal? OuterDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¤å¾(mm)-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum OuterDiameter_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å£å(mm) |
| | | /// </summary> |
| | | public decimal? Thickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å£å(mm)-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum Thickness_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æè´¨ |
| | | /// </summary> |
| | | public string Material { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æè´¨-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum Material_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å·¥èºæµåç¼å· |
| | | /// </summary> |
| | | public string ProcessRouteNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥èºæµåç¼å·-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum ProcessRouteNumber_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 计åå¼å§æ¶é´ |
| | | /// </summary> |
| | | //è¡¨ç¤ºæ¯ é«çº§æ¥è¯¢èå´æ¥è¯¢ç¹æ§ |
| | | [HighSearchRangeAttribute] |
| | | public string PlannedStartTime { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// 计å宿æ¶é´ |
| | | /// </summary> |
| | | //è¡¨ç¤ºæ¯ é«çº§æ¥è¯¢èå´æ¥è¯¢ç¹æ§ |
| | | [HighSearchRangeAttribute] |
| | | public string PlannedEndTime { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// çç»ä¿¡æ¯ |
| | | /// </summary> |
| | | public string TeamInfo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// çç»ä¿¡æ¯-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum TeamInfo_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ¶é´æ³ |
| | | /// </summary> |
| | | public string Timestamp { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¶é´æ³-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum Timestamp_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å建æ¶é´ |
| | | /// </summary> |
| | | //è¡¨ç¤ºæ¯ é«çº§æ¥è¯¢èå´æ¥è¯¢ç¹æ§ |
| | | [HighSearchRangeAttribute] |
| | | public string CreationTime { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// å建人ID |
| | | /// </summary> |
| | | public string CreatorId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å建人ID-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum CreatorId_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹æ¶é´ |
| | | /// </summary> |
| | | //è¡¨ç¤ºæ¯ é«çº§æ¥è¯¢èå´æ¥è¯¢ç¹æ§ |
| | | [HighSearchRangeAttribute] |
| | | public string LastModificationTime { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹äººID |
| | | /// </summary> |
| | | public string LastModifierId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹äººID-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum LastModifierId_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦å é¤ |
| | | /// </summary> |
| | | public bool? IsDeleted { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦å é¤-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum IsDeleted_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å é¤äººID |
| | | /// </summary> |
| | | public string DeleterId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å é¤äººID-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum DeleterId_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å 餿¶é´ |
| | | /// </summary> |
| | | //è¡¨ç¤ºæ¯ é«çº§æ¥è¯¢èå´æ¥è¯¢ç¹æ§ |
| | | [HighSearchRangeAttribute] |
| | | public string DeletionTime { get; set; } |
| | | |
| | | |
| | | /// <summary> |
| | | /// å建人 |
| | | /// </summary> |
| | | public string CreatorName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å建人-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum CreatorName_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹äºº |
| | | /// </summary> |
| | | public string LastModifierName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹äºº-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum LastModifierName_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æä½å¤æ³¨ |
| | | /// </summary> |
| | | public string OperationRemark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æä½å¤æ³¨-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum OperationRemark_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// å é¤å¤æ³¨ |
| | | /// </summary> |
| | | public string DeleteRemark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å é¤å¤æ³¨-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum DeleteRemark_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æåº |
| | | /// </summary> |
| | | public int? Sort { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æåº-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum Sort_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | public string Remark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum Remark_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | | public bool? IsDisabled { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum IsDisabled_FilterMode { get; set; }= SearchFilterModeEnum.ç²¾åæ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段1 |
| | | /// </summary> |
| | | public string ExtraField1 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段1-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum ExtraField1_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段2 |
| | | /// </summary> |
| | | public string ExtraField2 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段2-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum ExtraField2_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段3 |
| | | /// </summary> |
| | | public string ExtraField3 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段3-æ¥è¯¢å
³ç³»è¿ç®ç¬¦ |
| | | /// </summary> |
| | | public SearchFilterModeEnum ExtraField3_FilterMode { get; set; }= SearchFilterModeEnum.æ¨¡ç³æ¥è¯¢; |
| | | |
| | | |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | namespace CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨åå»ºåæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class WorkTaskCreateDto : WorkTaskCreateOrUpdateDtoBase |
| | | { |
| | | /// <summary> |
| | | /// æåº |
| | | /// </summary> |
| | | public virtual int? Sort { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | | public bool? IsDisabled { get; set; } = false; |
| | | |
| | | /// <summary> |
| | | /// å建人 |
| | | /// </summary> |
| | | public string CreatorName { get; set; } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.PipeLineLems.Domain.Shared.Enums; |
| | | using System; |
| | | using Volo.Abp.Application.Dtos; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨åå»ºææ´æ°åºç±» |
| | | /// </summary> |
| | | public abstract class WorkTaskCreateOrUpdateDtoBase : ExtensibleEntityDto |
| | | { |
| | | /// <summary> |
| | | /// åä»»å¡ç¼ç |
| | | /// </summary> |
| | | public string Son_TaskCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä»»å¡ç¼ç |
| | | /// </summary> |
| | | public string TaskCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åç¶æ |
| | | /// </summary> |
| | | public WorkPlanStatusEnum WorkPlanStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å«æç¶æ |
| | | /// </summary> |
| | | public CallMaterialStatusEnum CallMaterialStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åææ è¯ |
| | | /// </summary> |
| | | public string? DataIdentifier { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åæåå· |
| | | /// </summary> |
| | | public string? MaterialMode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦(mm) |
| | | /// </summary> |
| | | public decimal Length { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç å
容 |
| | | /// </summary> |
| | | public string? MarkingContent { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç ä½ç½® |
| | | /// </summary> |
| | | public decimal MarkingPosition { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åå²ä½ç½® |
| | | /// </summary> |
| | | public decimal CuttingPosition { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段æ°é |
| | | /// </summary> |
| | | public int Quantity { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å度(mm) |
| | | /// </summary> |
| | | public decimal FlangeThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°ç´å¾(mm) |
| | | /// </summary> |
| | | public decimal FlangeInnerDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å
¬ç§°åå |
| | | /// </summary> |
| | | public string? WeldingHeatInput { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å²ç å
容 |
| | | /// </summary> |
| | | public string? PipeAllowableStress { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡é¿åº¦(mm) |
| | | /// </summary> |
| | | public decimal PipeDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡ç´å¾(mm) |
| | | /// </summary> |
| | | public decimal PipeWallThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥å代ç |
| | | /// </summary> |
| | | public string? FactoryCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产å代ç |
| | | /// </summary> |
| | | public string? ProductCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥ä½ä»£ç |
| | | /// </summary> |
| | | public string? WorkstationCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 设å¤ä»£ç |
| | | /// </summary> |
| | | public string? EquipmentCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产线ç¼ç |
| | | /// </summary> |
| | | public string? ProdLineCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è¹å· |
| | | /// </summary> |
| | | public string? ShipNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 项ç®å· |
| | | /// </summary> |
| | | public string? ProjectNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥åºåç§° |
| | | /// </summary> |
| | | public string? ProcessName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管件ç¼ç |
| | | /// </summary> |
| | | public string? PipeFittingCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 顺åºå· |
| | | /// </summary> |
| | | public string? PreSerialNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段ç¼ç |
| | | /// </summary> |
| | | public string? PipeSpecCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段åç§° |
| | | /// </summary> |
| | | public string? PipeSectionName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¤å¾(mm) |
| | | /// </summary> |
| | | public decimal OuterDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å£å(mm) |
| | | /// </summary> |
| | | public decimal Thickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æè´¨ |
| | | /// </summary> |
| | | public string? Material { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥èºæµåç¼å· |
| | | /// </summary> |
| | | public string? ProcessRouteNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åå¼å§æ¶é´ |
| | | /// </summary> |
| | | public DateTime? PlannedStartTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计å宿æ¶é´ |
| | | /// </summary> |
| | | public DateTime? PlannedEndTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// çç»ä¿¡æ¯ |
| | | /// </summary> |
| | | public string? TeamInfo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¶é´æ³ |
| | | /// </summary> |
| | | public string? Timestamp { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å建人ID |
| | | /// </summary> |
| | | public string? CreatorId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹äººID |
| | | /// </summary> |
| | | public string? LastModifierId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å 餿¶é´ |
| | | /// </summary> |
| | | public DateTime? DeletionTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æä½å¤æ³¨ |
| | | /// </summary> |
| | | public string? OperationRemark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å é¤å¤æ³¨ |
| | | /// </summary> |
| | | public string? DeleteRemark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æåº |
| | | /// </summary> |
| | | public int Sort { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | public string? Remark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | | public bool? IsDisabled { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段1 |
| | | /// </summary> |
| | | public string? ExtraField1 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段2 |
| | | /// </summary> |
| | | public string? ExtraField2 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段3 |
| | | /// </summary> |
| | | public string? ExtraField3 { get; set; } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WorkTaskCreateOrUpdateDtoBase"/> class. |
| | | /// </summary> |
| | | public WorkTaskCreateOrUpdateDtoBase() : base(false) |
| | | { |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.PipeLineLems.Domain.Shared.Enums; |
| | | using CmsQueryExtensions; |
| | | using Volo.Abp.Application.Dtos; |
| | | using Volo.Abp.Data; |
| | | using Volo.Abp.Domain.Entities; |
| | | |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨æ°æ®åæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class WorkTaskDto: ExtensibleEntityDto<Guid>, IHasConcurrencyStamp |
| | | { |
| | | /// <summary> |
| | | /// åä»»å¡ç¼ç |
| | | /// </summary> |
| | | public string Son_TaskCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä»»å¡ç¼ç |
| | | /// </summary> |
| | | public string TaskCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åç¶æ |
| | | /// </summary> |
| | | public WorkPlanStatusEnum WorkPlanStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åç¶æ |
| | | /// </summary> |
| | | public string WorkPlanStatusDesc |
| | | { |
| | | get |
| | | { |
| | | return GetEnumDescriptionUtil.GetEnumDescription(WorkPlanStatus); |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// å«æç¶æ |
| | | /// </summary> |
| | | public CallMaterialStatusEnum CallMaterialStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å«æç¶æ |
| | | /// </summary> |
| | | public string CallMaterialStatusDesc |
| | | { |
| | | get |
| | | { |
| | | return GetEnumDescriptionUtil.GetEnumDescription(CallMaterialStatus); |
| | | } |
| | | } |
| | | /// <summary> |
| | | /// åææ è¯ |
| | | /// </summary> |
| | | public string? DataIdentifier { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åæåå· |
| | | /// </summary> |
| | | public string? MaterialMode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦(mm) |
| | | /// </summary> |
| | | public decimal Length { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç å
容 |
| | | /// </summary> |
| | | public string? MarkingContent { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç ä½ç½® |
| | | /// </summary> |
| | | public decimal MarkingPosition { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åå²ä½ç½® |
| | | /// </summary> |
| | | public decimal CuttingPosition { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段æ°é |
| | | /// </summary> |
| | | public int Quantity { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å度(mm) |
| | | /// </summary> |
| | | public decimal FlangeThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°ç´å¾(mm) |
| | | /// </summary> |
| | | public decimal FlangeInnerDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å
¬ç§°åå |
| | | /// </summary> |
| | | public string? WeldingHeatInput { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å²ç å
容 |
| | | /// </summary> |
| | | public string? PipeAllowableStress { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡é¿åº¦(mm) |
| | | /// </summary> |
| | | public decimal PipeDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡ç´å¾(mm) |
| | | /// </summary> |
| | | public decimal PipeWallThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥å代ç |
| | | /// </summary> |
| | | public string? FactoryCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产å代ç |
| | | /// </summary> |
| | | public string? ProductCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥ä½ä»£ç |
| | | /// </summary> |
| | | public string? WorkstationCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 设å¤ä»£ç |
| | | /// </summary> |
| | | public string? EquipmentCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产线ç¼ç |
| | | /// </summary> |
| | | public string? ProdLineCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è¹å· |
| | | /// </summary> |
| | | public string? ShipNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 项ç®å· |
| | | /// </summary> |
| | | public string? ProjectNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥åºåç§° |
| | | /// </summary> |
| | | public string? ProcessName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管件ç¼ç |
| | | /// </summary> |
| | | public string? PipeFittingCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 顺åºå· |
| | | /// </summary> |
| | | public string? PreSerialNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段ç¼ç |
| | | /// </summary> |
| | | public string? PipeSpecCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段åç§° |
| | | /// </summary> |
| | | public string? PipeSectionName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¤å¾(mm) |
| | | /// </summary> |
| | | public decimal OuterDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å£å(mm) |
| | | /// </summary> |
| | | public decimal Thickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æè´¨ |
| | | /// </summary> |
| | | public string? Material { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥èºæµåç¼å· |
| | | /// </summary> |
| | | public string? ProcessRouteNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åå¼å§æ¶é´ |
| | | /// </summary> |
| | | public DateTime? PlannedStartTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计å宿æ¶é´ |
| | | /// </summary> |
| | | public DateTime? PlannedEndTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// çç»ä¿¡æ¯ |
| | | /// </summary> |
| | | public string? TeamInfo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¶é´æ³ |
| | | /// </summary> |
| | | public string? Timestamp { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ©å±å±æ§ |
| | | /// </summary> |
| | | public ExtraPropertyDictionary? ExtraProperties { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¹¶åæ³ |
| | | /// </summary> |
| | | public string? ConcurrencyStamp { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å建æ¶é´ |
| | | /// </summary> |
| | | public DateTime CreationTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å建人ID |
| | | /// </summary> |
| | | public string? CreatorId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹æ¶é´ |
| | | /// </summary> |
| | | public DateTime? LastModificationTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹äººID |
| | | /// </summary> |
| | | public string? LastModifierId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦å é¤ |
| | | /// </summary> |
| | | public bool IsDeleted { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å é¤äººID |
| | | /// </summary> |
| | | public string? DeleterId { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å 餿¶é´ |
| | | /// </summary> |
| | | public DateTime? DeletionTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å建人 |
| | | /// </summary> |
| | | public string? CreatorName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹äºº |
| | | /// </summary> |
| | | public string? LastModifierName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æä½å¤æ³¨ |
| | | /// </summary> |
| | | public string? OperationRemark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å é¤å¤æ³¨ |
| | | /// </summary> |
| | | public string? DeleteRemark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æåº |
| | | /// </summary> |
| | | public int Sort { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | public string? Remark { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¯å¦ç¦ç¨ |
| | | /// </summary> |
| | | public bool? IsDisabled { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段1 |
| | | /// </summary> |
| | | public string? ExtraField1 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段2 |
| | | /// </summary> |
| | | public string? ExtraField2 { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ©å±å段3 |
| | | /// </summary> |
| | | public string? ExtraField3 { get; set; } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// Gets the export data. |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public Dictionary<string, object> GetExportData() |
| | | { |
| | | var exportData = new Dictionary<string, object>(); |
| | | foreach (var property in this.GetType().GetProperties()) |
| | | { |
| | | exportData.Add(property.Name, property.GetValue(this)); |
| | | } |
| | | |
| | | return exportData; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using MiniExcelLibs.Attributes; |
| | | using System.ComponentModel.DataAnnotations; |
| | | using System; |
| | | using System.ComponentModel; |
| | | using CMS.Plugin.PipeLineLems.Domain.Shared.Enums; |
| | | namespace CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨å¯¼åºæ¨¡å |
| | | /// </summary> |
| | | public class WorkTaskExportModel |
| | | { |
| | | /// <summary> |
| | | /// åä»»å¡ç¼ç |
| | | /// </summary> |
| | | [ExcelColumn(Name = "åä»»å¡ç¼ç ", Width = 25)] |
| | | public string Son_TaskCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä»»å¡ç¼ç |
| | | /// </summary> |
| | | [ExcelColumn(Name = "ä»»å¡ç¼ç ", Width = 25)] |
| | | public string TaskCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åç¶æ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "计åç¶æ", Width = 25)] |
| | | public WorkPlanStatusEnum WorkPlanStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å«æç¶æ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å«æç¶æ", Width = 25)] |
| | | public CallMaterialStatusEnum CallMaterialStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åææ è¯ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "åææ è¯", Width = 25)] |
| | | public string DataIdentifier { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åæåå· |
| | | /// </summary> |
| | | [ExcelColumn(Name = "åæåå·", Width = 25)] |
| | | public string MaterialMode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦(mm) |
| | | /// </summary> |
| | | [ExcelColumn(Name = "é¿åº¦(mm)", Width = 25)] |
| | | public decimal Length { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç å
容 |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æç å
容", Width = 25)] |
| | | public string MarkingContent { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç ä½ç½® |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æç ä½ç½®", Width = 25)] |
| | | public decimal MarkingPosition { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åå²ä½ç½® |
| | | /// </summary> |
| | | [ExcelColumn(Name = "åå²ä½ç½®", Width = 25)] |
| | | public decimal CuttingPosition { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段æ°é |
| | | /// </summary> |
| | | [ExcelColumn(Name = "管段æ°é", Width = 25)] |
| | | public int Quantity { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å度(mm) |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æ³å
°å度(mm)", Width = 25)] |
| | | public decimal FlangeThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°ç´å¾(mm) |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æ³å
°ç´å¾(mm)", Width = 25)] |
| | | public decimal FlangeInnerDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å
¬ç§°åå |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æ³å
°å
¬ç§°åå", Width = 25)] |
| | | public string WeldingHeatInput { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å²ç å
容 |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æ³å
°å²ç å
容", Width = 25)] |
| | | public string PipeAllowableStress { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡é¿åº¦(mm) |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å¥ç®¡é¿åº¦(mm)", Width = 25)] |
| | | public decimal PipeDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡ç´å¾(mm) |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å¥ç®¡ç´å¾(mm)", Width = 25)] |
| | | public decimal PipeWallThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥å代ç |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å·¥å代ç ", Width = 25)] |
| | | public string FactoryCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产å代ç |
| | | /// </summary> |
| | | [ExcelColumn(Name = "产å代ç ", Width = 25)] |
| | | public string ProductCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥ä½ä»£ç |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å·¥ä½ä»£ç ", Width = 25)] |
| | | public string WorkstationCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 设å¤ä»£ç |
| | | /// </summary> |
| | | [ExcelColumn(Name = "设å¤ä»£ç ", Width = 25)] |
| | | public string EquipmentCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产线ç¼ç |
| | | /// </summary> |
| | | [ExcelColumn(Name = "产线ç¼ç ", Width = 25)] |
| | | public string ProdLineCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è¹å· |
| | | /// </summary> |
| | | [ExcelColumn(Name = "è¹å·", Width = 25)] |
| | | public string ShipNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 项ç®å· |
| | | /// </summary> |
| | | [ExcelColumn(Name = "项ç®å·", Width = 25)] |
| | | public string ProjectNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥åºåç§° |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å·¥åºåç§°", Width = 25)] |
| | | public string ProcessName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管件ç¼ç |
| | | /// </summary> |
| | | [ExcelColumn(Name = "管件ç¼ç ", Width = 25)] |
| | | public string PipeFittingCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 顺åºå· |
| | | /// </summary> |
| | | [ExcelColumn(Name = "顺åºå·", Width = 25)] |
| | | public string PreSerialNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段ç¼ç |
| | | /// </summary> |
| | | [ExcelColumn(Name = "管段ç¼ç ", Width = 25)] |
| | | public string PipeSpecCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段åç§° |
| | | /// </summary> |
| | | [ExcelColumn(Name = "管段åç§°", Width = 25)] |
| | | public string PipeSectionName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¤å¾(mm) |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å¤å¾(mm)", Width = 25)] |
| | | public decimal OuterDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å£å(mm) |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å£å(mm)", Width = 25)] |
| | | public decimal Thickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æè´¨ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æè´¨", Width = 25)] |
| | | public string Material { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥èºæµåç¼å· |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å·¥èºæµåç¼å·", Width = 25)] |
| | | public string ProcessRouteNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åå¼å§æ¶é´ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "计åå¼å§æ¶é´", Width = 25)] |
| | | public DateTime PlannedStartTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计å宿æ¶é´ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "计å宿æ¶é´", Width = 25)] |
| | | public DateTime PlannedEndTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// çç»ä¿¡æ¯ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "çç»ä¿¡æ¯", Width = 25)] |
| | | public string TeamInfo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¶é´æ³ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "æ¶é´æ³", Width = 25)] |
| | | public string Timestamp { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å建æ¶é´ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å建æ¶é´", Width = 25)] |
| | | public DateTime CreationTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹æ¶é´ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "ä¿®æ¹æ¶é´", Width = 25)] |
| | | public DateTime LastModificationTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å建人 |
| | | /// </summary> |
| | | [ExcelColumn(Name = "å建人", Width = 25)] |
| | | public string CreatorName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹äºº |
| | | /// </summary> |
| | | [ExcelColumn(Name = "ä¿®æ¹äºº", Width = 25)] |
| | | public string LastModifierName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 夿³¨ |
| | | /// </summary> |
| | | [ExcelColumn(Name = "夿³¨", Width = 25)] |
| | | public string Remark { get; set; } |
| | | |
| | | |
| | | |
| | | public Dictionary<string, object> GetExportData() |
| | | { |
| | | var exportData = new Dictionary<string, object>(); |
| | | foreach (var property in this.GetType().GetProperties()) |
| | | { |
| | | exportData.Add(property.Name, property.GetValue(this)); |
| | | } |
| | | |
| | | return exportData; |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using Volo.Abp.Domain.Entities; |
| | | namespace CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨æ´æ°åæ°å¯¹è±¡ |
| | | /// </summary> |
| | | public class WorkTaskUpdateDto : WorkTaskCreateOrUpdateDtoBase, IHasConcurrencyStamp |
| | | { |
| | | /// <summary> |
| | | /// å¹¶åæ³ |
| | | /// </summary> |
| | | public string ConcurrencyStamp { get; set; } |
| | | |
| | | /// <summary> |
| | | /// ä¿®æ¹äºº |
| | | /// </summary> |
| | | public string LastModifierName { get; set; } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask |
| | | { |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨å¯¼å
¥æ¨¡å |
| | | /// </summary> |
| | | public class WorkTasksImportModel |
| | | { |
| | | private List<WorkTaskImportModel> _WorkTasks = new(); |
| | | |
| | | public List<WorkTaskImportModel> WorkTasks |
| | | { |
| | | get => _WorkTasks; |
| | | set |
| | | { |
| | | _WorkTasks = value; |
| | | var rowIndex = 2; |
| | | _WorkTasks?.ForEach(x => x.RowIndex = rowIndex++); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨å¯¼å
¥æ¨¡å |
| | | /// </summary> |
| | | public class WorkTaskImportModel : WorkTaskExportModel |
| | | { |
| | | /// <summary> |
| | | /// è¡å· |
| | | /// </summary> |
| | | public int RowIndex { get; set; } |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask; |
| | | using Volo.Abp.Application.Services; |
| | | using CmsQueryExtensions.Entitys; |
| | | using System.Linq.Expressions; |
| | | using CMS.Plugin.PipeLineLems.Domain.WorkTask; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Application.Contracts.Services; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨åºç¨æå¡æ¥å£ |
| | | /// </summary> |
| | | public interface IWorkTaskAppService : ICrudAppService<WorkTaskDto, Guid, GetWorkTaskInput, WorkTaskCreateDto, WorkTaskUpdateDto> |
| | | { |
| | | /// <summary> |
| | | /// å
éä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | Task<List<WorkTaskDto>> CloneAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser); |
| | | |
| | | /// <summary> |
| | | /// å é¤ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | Task DeleteManyAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser); |
| | | |
| | | /// <summary> |
| | | /// ç©çå é¤ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">主é®ID</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task DeletePermanentlyAsync(Guid id, MyCurrentUser myCurrentUser, CancellationToken cancellationToken = default); |
| | | |
| | | |
| | | /// <summary> |
| | | /// æ¹éç©çå é¤ä½ä¸ä»»å¡è¡¨ï¼ç´æ¥å é¤ï¼ä¸è½¯å é¤ï¼ |
| | | /// </summary> |
| | | /// <param name="ids">è¦å é¤ç主é®IDå表</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task BatchDeletePermanentlyAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// è°æ´æåºä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <param name="sort"></param> |
| | | /// <returns></returns> |
| | | Task AdjustSortAsync(Guid id, int sort); |
| | | |
| | | /// <summary> |
| | | /// 导å
¥ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | Task ImportAsync(WorkTasksImportModel input, MyCurrentUser myCurrentUser); |
| | | |
| | | /// <summary> |
| | | /// 导åºä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWorkTaskInput input); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åä½ä¸ä»»å¡è¡¨å表 |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<List<WorkTask>> GetListByFilterAsync(Expression<Func<WorkTask, bool>> whereConditions, CancellationToken cancellationToken = default); |
| | | |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åå个ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="isMultipleThrowException">æ¯å¦æ¥è¯¢åºå¤æ¡å°±æ¥é</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | /// <exception cref="UserFriendlyException"></exception> |
| | | Task<WorkTask> GetSingleByFilterAsync(Expression<Func<WorkTask, bool>> whereConditions, bool isâMultipleThrowException = false, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åä½ä¸ä»»å¡è¡¨å表 |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | Task<List<WorkTaskDto>> FindListByFilterAsync(GetWorkTaskInput input, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åå个ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | Task<WorkTaskDto> FindSingleByFilterAsync(GetWorkTaskInput input, CancellationToken cancellationToken = default); |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask; |
| | | using CMS.Plugin.PipeLineLems.Application.Contracts.Services; |
| | | using CMS.Plugin.PipeLineLems.Domain.Shared; |
| | | using CmsQueryExtensions; |
| | | using CMS.Plugin.PipeLineLems.Domain.WorkTask; |
| | | using CmsQueryExtensions.Extension; |
| | | using System.Linq.Expressions; |
| | | using Volo.Abp; |
| | | using Volo.Abp.Application.Dtos; |
| | | using Volo.Abp.Data; |
| | | using Volo.Abp.ObjectExtending; |
| | | using Volo.Abp.ObjectMapping; |
| | | using CmsQueryExtensions.Entitys; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Application.Implements; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨åºç¨æå¡ |
| | | /// </summary> |
| | | public class WorkTaskAppService : CMSPluginAppService, IWorkTaskAppService |
| | | { |
| | | private readonly IWorkTaskRepository _workTaskRepository; |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WorkTaskAppService"/> class. |
| | | /// </summary> |
| | | /// <param name="WorkTaskRepository">The task job repository.</param> |
| | | public WorkTaskAppService(IWorkTaskRepository workTaskRepository) |
| | | { |
| | | _workTaskRepository = workTaskRepository; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åæå®ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task<WorkTaskDto> GetAsync(Guid id) |
| | | { |
| | | return ObjectMapper.Map<WorkTask, WorkTaskDto>(await _workTaskRepository.GetAsync(id)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å页è·åä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task<PagedResultDto<WorkTaskDto>> GetListAsync(GetWorkTaskInput input) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | | if (input.Sorting.IsNullOrWhiteSpace()) |
| | | { |
| | | input.Sorting = nameof(WorkTask.Sort); |
| | | } |
| | | |
| | | #region 卿æé æ¥è¯¢æ¡ä»¶ |
| | | |
| | | //卿æé æ¥è¯¢æ¡ä»¶ |
| | | var whereConditions = DynamicGetQueryParams(input); |
| | | |
| | | #endregion |
| | | |
| | | var count = await _workTaskRepository.GetCountAsync(whereConditions); |
| | | var list = await _workTaskRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount); |
| | | |
| | | return new PagedResultDto<WorkTaskDto>(count, ObjectMapper.Map<List<WorkTask>, List<WorkTaskDto>>(list)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 卿æé æ¥è¯¢æ¡ä»¶ |
| | | /// </summary> |
| | | /// <param name="input">è¾å
¥åæ°</param> |
| | | /// <returns></returns> |
| | | private FunReturnResultModel<Expression<Func<WorkTask, bool>>> DynamicGetQueryParams(GetWorkTaskInput input) |
| | | { |
| | | //卿æé æ¥è¯¢æ¡ä»¶ |
| | | var whereConditions = WhereConditionsExtensions.GetWhereConditions<WorkTask, GetWorkTaskInput>(input); |
| | | if (!whereConditions.IsSuccess) |
| | | { |
| | | throw new Exception("卿æé æ¥è¯¢æ¡ä»¶å¤±è´¥:" + whereConditions.ErrMsg); |
| | | } |
| | | |
| | | //ä¹å¯å次èªå®ä¹æå»ºæ¥è¯¢æ¡ä»¶ |
| | | Expression<Func<WorkTask, bool>> extendExpression = a => a.IsDeleted == false; |
| | | // ä½¿ç¨ System.Linq.PredicateBuilder ç And |
| | | var pres = (System.Linq.Expressions.Expression<Func<WorkTask, bool>>)(whereConditions.data); |
| | | whereConditions.data = System.Linq.PredicateBuilder.And(pres, extendExpression); |
| | | |
| | | return whereConditions; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ°å»ºä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | /// <exception cref="UserFriendlyException"></exception> |
| | | public virtual async Task<WorkTaskDto> CreateAsync(WorkTaskCreateDto input) |
| | | { |
| | | await CheckCreateOrUpdateDtoAsync(input); |
| | | |
| | | var exist = await _workTaskRepository.NameExistAsync(input.Son_TaskCode); |
| | | if (exist) |
| | | { |
| | | throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.Son_TaskCode]); |
| | | } |
| | | |
| | | var maxSort = await _workTaskRepository.GetMaxSortAsync(); |
| | | var sort = input.Sort ?? maxSort; |
| | | |
| | | var insertObj = ObjectMapper.Map<WorkTaskCreateDto, WorkTask>(input); |
| | | insertObj.Sort = sort; |
| | | input.MapExtraPropertiesTo(insertObj, MappingPropertyDefinitionChecks.None); |
| | | |
| | | insertObj.CreatorName = input.CreatorName;//å建人 |
| | | await _workTaskRepository.InsertAsync(insertObj); |
| | | |
| | | //if (input.Sort.HasValue && insertObj.Sort != maxSort) |
| | | //{ |
| | | // await AdjustSortAsync(insertObj.Id, insertObj.Sort); |
| | | //} |
| | | |
| | | return ObjectMapper.Map<WorkTask, WorkTaskDto>(insertObj); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ´æ°ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | /// <exception cref="UserFriendlyException"></exception> |
| | | public virtual async Task<WorkTaskDto> UpdateAsync(Guid id, WorkTaskUpdateDto input) |
| | | { |
| | | await CheckCreateOrUpdateDtoAsync(input); |
| | | |
| | | var updateObj = await _workTaskRepository.GetAsync(id); |
| | | var exist = await _workTaskRepository.NameExistAsync(input.Son_TaskCode, updateObj.Id); |
| | | if (exist) |
| | | { |
| | | throw new UserFriendlyException(L[CMSPluginDomainErrorCodes.NameAlreadyExists, input.Son_TaskCode]); |
| | | } |
| | | |
| | | updateObj.SetConcurrencyStampIfNotNull(input.ConcurrencyStamp); |
| | | input.MapExtraPropertiesTo(updateObj, MappingPropertyDefinitionChecks.None); |
| | | |
| | | updateObj.Son_TaskCode = input.Son_TaskCode; |
| | | updateObj.TaskCode = input.TaskCode; |
| | | updateObj.WorkPlanStatus = input.WorkPlanStatus; |
| | | updateObj.CallMaterialStatus = input.CallMaterialStatus; |
| | | updateObj.DataIdentifier = input.DataIdentifier; |
| | | updateObj.MaterialMode = input.MaterialMode; |
| | | updateObj.Length = input.Length; |
| | | updateObj.MarkingContent = input.MarkingContent; |
| | | updateObj.MarkingPosition = input.MarkingPosition; |
| | | updateObj.CuttingPosition = input.CuttingPosition; |
| | | updateObj.Quantity = input.Quantity; |
| | | updateObj.FlangeThickness = input.FlangeThickness; |
| | | updateObj.FlangeInnerDiameter = input.FlangeInnerDiameter; |
| | | updateObj.WeldingHeatInput = input.WeldingHeatInput; |
| | | updateObj.PipeAllowableStress = input.PipeAllowableStress; |
| | | updateObj.PipeDiameter = input.PipeDiameter; |
| | | updateObj.PipeWallThickness = input.PipeWallThickness; |
| | | updateObj.FactoryCode = input.FactoryCode; |
| | | updateObj.ProductCode = input.ProductCode; |
| | | updateObj.WorkstationCode = input.WorkstationCode; |
| | | updateObj.EquipmentCode = input.EquipmentCode; |
| | | updateObj.ProdLineCode = input.ProdLineCode; |
| | | updateObj.ShipNumber = input.ShipNumber; |
| | | updateObj.ProjectNumber = input.ProjectNumber; |
| | | updateObj.ProcessName = input.ProcessName; |
| | | updateObj.PipeFittingCode = input.PipeFittingCode; |
| | | updateObj.PreSerialNumber = input.PreSerialNumber; |
| | | updateObj.PipeSpecCode = input.PipeSpecCode; |
| | | updateObj.PipeSectionName = input.PipeSectionName; |
| | | updateObj.OuterDiameter = input.OuterDiameter; |
| | | updateObj.Thickness = input.Thickness; |
| | | updateObj.Material = input.Material; |
| | | updateObj.ProcessRouteNumber = input.ProcessRouteNumber; |
| | | updateObj.PlannedStartTime = input.PlannedStartTime; |
| | | updateObj.PlannedEndTime = input.PlannedEndTime; |
| | | updateObj.TeamInfo = input.TeamInfo; |
| | | updateObj.Timestamp = input.Timestamp; |
| | | updateObj.Remark = input.Remark; |
| | | |
| | | |
| | | updateObj.LastModifierName = input.LastModifierName;//ä¿®æ¹äºº |
| | | |
| | | await _workTaskRepository.UpdateAsync(updateObj); |
| | | |
| | | return ObjectMapper.Map<WorkTask, WorkTaskDto>(updateObj); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å
éä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | public async Task<List<WorkTaskDto>> CloneAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser) |
| | | { |
| | | //var workTasks = new List<WorkTask>(); |
| | | //if (ids != null) |
| | | //{ |
| | | // var sort = await _workTaskRepository.GetMaxSortAsync(); |
| | | // foreach (var id in ids) |
| | | // { |
| | | // var WorkTask = await _workTaskRepository.FindAsync(id); |
| | | // if (WorkTask != null) |
| | | // { |
| | | // var name = WorkTask.Name + WorkTaskConsts.CloneTag; |
| | | // var notExist = false; |
| | | // while (!notExist) |
| | | // { |
| | | // var exist = await _workTaskRepository.NameExistAsync(name); |
| | | // if (exist || workTasks.Any(x => x.Name == name)) |
| | | // { |
| | | // name += WorkTaskConsts.CloneTag; |
| | | // continue; |
| | | // } |
| | | |
| | | // notExist = true; |
| | | // } |
| | | |
| | | // //WorkTask = await _workTaskRepository.InsertAsync(WorkTask.Clone(GuidGenerator.Create(), name, sort++)); |
| | | // workTasks.Add(WorkTask); |
| | | // } |
| | | // } |
| | | //} |
| | | |
| | | //return ObjectMapper.Map<List<WorkTask>, List<WorkTaskDto>>(workTasks); |
| | | return new List<WorkTaskDto>(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å é¤å个ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public virtual Task DeleteAsync(Guid id) |
| | | { |
| | | return _workTaskRepository.DeleteAsync(id); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å é¤å¤ä¸ªä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids"></param> |
| | | /// <returns></returns> |
| | | public async Task DeleteManyAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser) |
| | | { |
| | | foreach (var id in ids) |
| | | { |
| | | await DeleteAsync(id); |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç©çå é¤ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">主é®ID</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task DeletePermanentlyAsync(Guid id, MyCurrentUser myCurrentUser, CancellationToken cancellationToken = default) |
| | | { |
| | | _workTaskRepository.DeletePermanentlyAsync(id); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¹éç©çå é¤ä½ä¸ä»»å¡è¡¨ï¼ç´æ¥å é¤ï¼ä¸è½¯å é¤ï¼ |
| | | /// </summary> |
| | | /// <param name="ids">è¦å é¤ç主é®IDå表</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task BatchDeletePermanentlyAsync(IEnumerable<Guid> ids, MyCurrentUser myCurrentUser, CancellationToken cancellationToken = default) |
| | | { |
| | | _workTaskRepository.BatchDeletePermanentlyAsync(ids); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è°æ´æåºä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id"></param> |
| | | /// <param name="sort"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task AdjustSortAsync(Guid id, int sort) |
| | | { |
| | | //var list = await _workTaskRepository.GetListAsync(null, nameof(WorkTask.Sort)); |
| | | //if (list != null && list.Any()) |
| | | //{ |
| | | // var initSort = 1; |
| | | // list.ForEach(x => x.AdjustSort(initSort++)); |
| | | // var entity = list.FirstOrDefault(x => x.Id == id); |
| | | // if (entity != null) |
| | | // { |
| | | // if (sort == 1) |
| | | // { |
| | | // list.Where(x => x.Id != id).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); |
| | | // } |
| | | // else if (entity.Sort > sort) |
| | | // { |
| | | // list.Where(x => x.Id != id && x.Sort >= sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); |
| | | // list.Where(x => x.Id != id && x.Sort < sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort - 1)); |
| | | // } |
| | | // else if (entity.Sort < sort) |
| | | // { |
| | | // list.Where(x => x.Id != id && x.Sort > sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort + 1)); |
| | | // list.Where(x => x.Id != id && x.Sort <= sort).ToList()?.ForEach(x => x.AdjustSort(x.Sort - 1)); |
| | | // } |
| | | |
| | | // entity.AdjustSort(sort); |
| | | // } |
| | | //} |
| | | |
| | | //await _workTaskRepository.UpdateManyAsync(list); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 导å
¥ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | /// <exception cref="UserFriendlyException"></exception> |
| | | public async Task ImportAsync(WorkTasksImportModel input, MyCurrentUser myCurrentUser) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | | var workTaskCreateDtos = new List<(int RowIndex, WorkTaskCreateDto Item)>(); |
| | | var workTaskUpdateDtos = new List<(int RowIndex, Guid Id, WorkTaskUpdateDto Item)>(); |
| | | var importItems = input.WorkTasks; |
| | | |
| | | if (importItems != null && importItems.Any()) |
| | | { |
| | | #region 导å
¥æ ¡éª |
| | | |
| | | // 夿åç§°æ¯å¦éå¤ï¼å¹¶è¾åºç¬¬å è¡éå¤ |
| | | var duplicateWorkTasks = importItems.GroupBy(x => x.Son_TaskCode).Where(x => x.Count() > 1).ToList(); |
| | | if (duplicateWorkTasks?.Any() == true) |
| | | { |
| | | var duplicateWorkTaskMsgs = duplicateWorkTasks.Select(x => $"第 {string.Join(",", x.Select(x => x.RowIndex))} è¡ï¼{x.Key} åç§°éå¤"); |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ {string.Join(",", duplicateWorkTaskMsgs)}ï¼ç»æ¢å¯¼å
¥"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | |
| | | #endregion |
| | | |
| | | foreach (var impItem in importItems) |
| | | { |
| | | if (impItem.Son_TaskCode.IsNullOrWhiteSpace()) |
| | | { |
| | | continue; |
| | | } |
| | | |
| | | if (impItem.Son_TaskCode.IsNullOrWhiteSpace()) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{impItem.RowIndex}è¡ï¼WorkTaskåç§°ä¸è½ä¸ºç©º"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | |
| | | var oldWorkTask = await _workTaskRepository.FindByNameAsync(impItem.Son_TaskCode); |
| | | if (oldWorkTask != null) |
| | | { |
| | | var workTaskUpdateDto = new WorkTaskUpdateDto |
| | | { |
| | | Son_TaskCode = impItem.Son_TaskCode, |
| | | TaskCode = impItem.TaskCode, |
| | | WorkPlanStatus = impItem.WorkPlanStatus, |
| | | CallMaterialStatus = impItem.CallMaterialStatus, |
| | | DataIdentifier = impItem.DataIdentifier, |
| | | MaterialMode = impItem.MaterialMode, |
| | | Length = impItem.Length, |
| | | MarkingContent = impItem.MarkingContent, |
| | | MarkingPosition = impItem.MarkingPosition, |
| | | CuttingPosition = impItem.CuttingPosition, |
| | | Quantity = impItem.Quantity, |
| | | FlangeThickness = impItem.FlangeThickness, |
| | | FlangeInnerDiameter = impItem.FlangeInnerDiameter, |
| | | WeldingHeatInput = impItem.WeldingHeatInput, |
| | | PipeAllowableStress = impItem.PipeAllowableStress, |
| | | PipeDiameter = impItem.PipeDiameter, |
| | | PipeWallThickness = impItem.PipeWallThickness, |
| | | FactoryCode = impItem.FactoryCode, |
| | | ProductCode = impItem.ProductCode, |
| | | WorkstationCode = impItem.WorkstationCode, |
| | | EquipmentCode = impItem.EquipmentCode, |
| | | ProdLineCode = impItem.ProdLineCode, |
| | | ShipNumber = impItem.ShipNumber, |
| | | ProjectNumber = impItem.ProjectNumber, |
| | | ProcessName = impItem.ProcessName, |
| | | PipeFittingCode = impItem.PipeFittingCode, |
| | | PreSerialNumber = impItem.PreSerialNumber, |
| | | PipeSpecCode = impItem.PipeSpecCode, |
| | | PipeSectionName = impItem.PipeSectionName, |
| | | OuterDiameter = impItem.OuterDiameter, |
| | | Thickness = impItem.Thickness, |
| | | Material = impItem.Material, |
| | | ProcessRouteNumber = impItem.ProcessRouteNumber, |
| | | PlannedStartTime = impItem.PlannedStartTime, |
| | | PlannedEndTime = impItem.PlannedEndTime, |
| | | TeamInfo = impItem.TeamInfo, |
| | | Timestamp = impItem.Timestamp, |
| | | Remark = impItem.Remark, |
| | | |
| | | }; |
| | | |
| | | workTaskUpdateDtos.Add((impItem.RowIndex, oldWorkTask.Id, workTaskUpdateDto)); |
| | | } |
| | | else |
| | | { |
| | | var workTaskCreateDto = new WorkTaskCreateDto |
| | | { |
| | | Son_TaskCode = impItem.Son_TaskCode, |
| | | TaskCode = impItem.TaskCode, |
| | | WorkPlanStatus = impItem.WorkPlanStatus, |
| | | CallMaterialStatus = impItem.CallMaterialStatus, |
| | | DataIdentifier = impItem.DataIdentifier, |
| | | MaterialMode = impItem.MaterialMode, |
| | | Length = impItem.Length, |
| | | MarkingContent = impItem.MarkingContent, |
| | | MarkingPosition = impItem.MarkingPosition, |
| | | CuttingPosition = impItem.CuttingPosition, |
| | | Quantity = impItem.Quantity, |
| | | FlangeThickness = impItem.FlangeThickness, |
| | | FlangeInnerDiameter = impItem.FlangeInnerDiameter, |
| | | WeldingHeatInput = impItem.WeldingHeatInput, |
| | | PipeAllowableStress = impItem.PipeAllowableStress, |
| | | PipeDiameter = impItem.PipeDiameter, |
| | | PipeWallThickness = impItem.PipeWallThickness, |
| | | FactoryCode = impItem.FactoryCode, |
| | | ProductCode = impItem.ProductCode, |
| | | WorkstationCode = impItem.WorkstationCode, |
| | | EquipmentCode = impItem.EquipmentCode, |
| | | ProdLineCode = impItem.ProdLineCode, |
| | | ShipNumber = impItem.ShipNumber, |
| | | ProjectNumber = impItem.ProjectNumber, |
| | | ProcessName = impItem.ProcessName, |
| | | PipeFittingCode = impItem.PipeFittingCode, |
| | | PreSerialNumber = impItem.PreSerialNumber, |
| | | PipeSpecCode = impItem.PipeSpecCode, |
| | | PipeSectionName = impItem.PipeSectionName, |
| | | OuterDiameter = impItem.OuterDiameter, |
| | | Thickness = impItem.Thickness, |
| | | Material = impItem.Material, |
| | | ProcessRouteNumber = impItem.ProcessRouteNumber, |
| | | PlannedStartTime = impItem.PlannedStartTime, |
| | | PlannedEndTime = impItem.PlannedEndTime, |
| | | TeamInfo = impItem.TeamInfo, |
| | | Timestamp = impItem.Timestamp, |
| | | Remark = impItem.Remark, |
| | | |
| | | }; |
| | | |
| | | workTaskCreateDtos.Add((impItem.RowIndex, workTaskCreateDto)); |
| | | } |
| | | } |
| | | } |
| | | |
| | | // æ°å¢ |
| | | foreach (var workTaskDto in workTaskCreateDtos) |
| | | { |
| | | try |
| | | { |
| | | workTaskDto.Item.CreatorName = myCurrentUser.UserAccount;//å建人 |
| | | await CreateAsync(workTaskDto.Item); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{workTaskDto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | } |
| | | |
| | | // æ´æ° |
| | | foreach (var workTaskDto in workTaskUpdateDtos) |
| | | { |
| | | try |
| | | { |
| | | workTaskDto.Item.LastModifierName = myCurrentUser.UserAccount;//ä¿®æ¹äºº |
| | | await UpdateAsync(workTaskDto.Id, workTaskDto.Item); |
| | | } |
| | | catch (Exception e) |
| | | { |
| | | var errorMsg = $"导å
¥å¤±è´¥ï¼é
ç½®ï¼ç¬¬{workTaskDto.RowIndex}è¡ï¼{e.Message}ï¼ç»æ¢å¯¼å
¥"; |
| | | throw new UserFriendlyException(errorMsg); |
| | | } |
| | | } |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 导åºä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | public async Task<(Dictionary<string, object> Sheets, string FileName)> ExportAsync(GetWorkTaskInput input) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | | if (input.Sorting.IsNullOrWhiteSpace()) |
| | | { |
| | | input.Sorting = nameof(WorkTask.Sort); |
| | | } |
| | | |
| | | #region 卿æé æ¥è¯¢æ¡ä»¶ |
| | | |
| | | //卿æé æ¥è¯¢æ¡ä»¶ |
| | | var whereConditions = DynamicGetQueryParams(input); |
| | | |
| | | #endregion |
| | | |
| | | |
| | | var list = await _workTaskRepository.GetListAsync(whereConditions, input.Sorting, input.MaxResultCount, input.SkipCount, includeDetails: true); |
| | | var result = ObjectMapper.Map<List<WorkTask>, List<WorkTaskDto>>(list); |
| | | |
| | | var sheets = new Dictionary<string, object> |
| | | { |
| | | ["é
ç½®"] = ExportHelper.ConvertListToExportData(result), |
| | | }; |
| | | |
| | | var fileName = "ä½ä¸ä»»å¡"; |
| | | return (sheets, fileName); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¡éªä½ä¸ä»»å¡è¡¨ï¼å½æ°å»ºææ´æ°æ¶ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | protected Task CheckCreateOrUpdateDtoAsync(WorkTaskCreateOrUpdateDtoBase input) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | Check.NotNullOrWhiteSpace(input.Son_TaskCode, "åä»»å¡ç¼ç ", 256); |
| | | Check.NotNullOrWhiteSpace(input.TaskCode, "ä»»å¡ç¼ç ", 256); |
| | | Check.NotNull(input.WorkPlanStatus, "计åç¶æ"); |
| | | Check.NotNull(input.CallMaterialStatus, "å«æç¶æ"); |
| | | Check.NotNull(input.Length, "é¿åº¦(mm)"); |
| | | Check.NotNull(input.MarkingPosition, "æç ä½ç½®"); |
| | | Check.NotNull(input.CuttingPosition, "åå²ä½ç½®"); |
| | | Check.NotNull(input.Quantity, "管段æ°é"); |
| | | Check.NotNull(input.FlangeThickness, "æ³å
°å度(mm)"); |
| | | Check.NotNull(input.FlangeInnerDiameter, "æ³å
°ç´å¾(mm)"); |
| | | Check.NotNull(input.PipeDiameter, "å¥ç®¡é¿åº¦(mm)"); |
| | | Check.NotNull(input.PipeWallThickness, "å¥ç®¡ç´å¾(mm)"); |
| | | Check.NotNull(input.OuterDiameter, "å¤å¾(mm)"); |
| | | Check.NotNull(input.Thickness, "å£å(mm)"); |
| | | |
| | | return Task.CompletedTask; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åä½ä¸ä»»å¡è¡¨å表 |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public async Task<List<WorkTask>> GetListByFilterAsync(Expression<Func<WorkTask, bool>> whereConditions, CancellationToken cancellationToken = default) |
| | | { |
| | | return await _workTaskRepository.GetListByFilterAsync(whereConditions); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åå个ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="isMultipleThrowException">æ¯å¦æ¥è¯¢åºå¤æ¡å°±æ¥é</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | /// <exception cref="UserFriendlyException"></exception> |
| | | public async Task<WorkTask> GetSingleByFilterAsync(Expression<Func<WorkTask, bool>> whereConditions, bool isâMultipleThrowException = false, CancellationToken cancellationToken = default) |
| | | { |
| | | return await _workTaskRepository.GetSingleByFilterAsync(whereConditions, isâMultipleThrowException); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åä½ä¸ä»»å¡è¡¨å表 |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task<List<WorkTaskDto>> FindListByFilterAsync(GetWorkTaskInput input, CancellationToken cancellationToken = default) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | | if (input.Sorting.IsNullOrWhiteSpace()) |
| | | { |
| | | input.Sorting = nameof(WorkTask.Sort); |
| | | } |
| | | |
| | | #region 卿æé æ¥è¯¢æ¡ä»¶ |
| | | |
| | | //卿æé æ¥è¯¢æ¡ä»¶ |
| | | var whereConditions = DynamicGetQueryParams(input); |
| | | |
| | | #endregion |
| | | |
| | | var list = await _workTaskRepository.GetListByFilterAsync(whereConditions?.data); |
| | | |
| | | return new List<WorkTaskDto>(ObjectMapper.Map<List<WorkTask>, List<WorkTaskDto>>(list)); |
| | | } |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åå个ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task<WorkTaskDto> FindSingleByFilterAsync(GetWorkTaskInput input, CancellationToken cancellationToken = default) |
| | | { |
| | | Check.NotNull(input, nameof(input)); |
| | | |
| | | if (input.Sorting.IsNullOrWhiteSpace()) |
| | | { |
| | | input.Sorting = nameof(WorkTask.Sort); |
| | | } |
| | | |
| | | #region 卿æé æ¥è¯¢æ¡ä»¶ |
| | | |
| | | //卿æé æ¥è¯¢æ¡ä»¶ |
| | | var whereConditions = DynamicGetQueryParams(input); |
| | | |
| | | #endregion |
| | | |
| | | var dataObj = await _workTaskRepository.GetSingleByFilterAsync(whereConditions?.data); |
| | | |
| | | return (ObjectMapper.Map<WorkTask, WorkTaskDto>(dataObj)); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using AutoMapper; |
| | | using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkPlan; |
| | | using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask; |
| | | using CMS.Plugin.PipeLineLems.Domain.WorkTask; |
| | | using Volo.Abp.ObjectExtending; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Application.MapperProfiles; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨AutoMapperé
ç½® |
| | | /// </summary> |
| | | /// <seealso cref="AutoMapper.Profile" /> |
| | | public class WorkTaskAutoMapperProfile : Profile |
| | | { |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WorkTaskAutoMapperProfile"/> class. |
| | | /// </summary> |
| | | public WorkTaskAutoMapperProfile() |
| | | { |
| | | /* You can configure your AutoMapper mapping configuration here. |
| | | * Alternatively, you can split your mapping configurations |
| | | * into multiple profile classes for a better organization. */ |
| | | CreateMap<WorkTask, WorkTaskDto>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | CreateMap<WorkTaskCreateDto, WorkTask>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | CreateMap<GetWorkTaskInput, WorkTask>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | |
| | | CreateMap<WorkPlanCreateDto, WorkTaskCreateDto>(MemberList.None).MapExtraProperties(MappingPropertyDefinitionChecks.None); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CmsQueryExtensions.Extension; |
| | | using System.Linq.Expressions; |
| | | using Volo.Abp.Domain.Repositories; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Domain.WorkTask; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨ä»å¨ |
| | | /// </summary> |
| | | public interface IWorkTaskRepository : IBasicRepository<WorkTask, Guid> |
| | | { |
| | | /// <summary> |
| | | /// æç
§åç§°æ¥æ¾ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="name"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<WorkTask> FindByNameAsync(string name, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// éªè¯åç§°æ¯å¦åå¨ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="name"></param> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | Task<bool> NameExistAsync(string name, Guid? id = null); |
| | | |
| | | /// <summary> |
| | | /// è·åæå¤§æåºä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | Task<int> GetMaxSortAsync(); |
| | | |
| | | /// <summary> |
| | | /// è·åå页å表ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="sorting"></param> |
| | | /// <param name="maxResultCount"></param> |
| | | /// <param name="skipCount"></param> |
| | | /// <param name="includeDetails"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<List<WorkTask>> GetListAsync(FunReturnResultModel<Expression<Func<WorkTask, bool>>> whereConditions, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, bool includeDetails = false, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// è·åæ»æ°ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<WorkTask, bool>>> whereConditions, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// ç©çå é¤ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">主é®ID</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task DeletePermanentlyAsync(Guid id, CancellationToken cancellationToken = default); |
| | | |
| | | |
| | | /// <summary> |
| | | /// æ¹éç©çå é¤ä½ä¸ä»»å¡è¡¨ï¼ç´æ¥å é¤ï¼ä¸è½¯å é¤ï¼ |
| | | /// </summary> |
| | | /// <param name="ids">è¦å é¤ç主é®IDå表</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task BatchDeletePermanentlyAsync(IEnumerable<Guid> ids, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åä½ä¸ä»»å¡è¡¨å表 |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | Task<List<WorkTask>> GetListByFilterAsync(Expression<Func<WorkTask, bool>> whereConditions, CancellationToken cancellationToken = default); |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åå个ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="isMultipleThrowException">æ¯å¦æ¥è¯¢åºå¤æ¡å°±æ¥é</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | /// <exception cref="UserFriendlyException"></exception> |
| | | Task<WorkTask> GetSingleByFilterAsync(Expression<Func<WorkTask, bool>> whereConditions, bool isâMultipleThrowException = false, CancellationToken cancellationToken = default); |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.MyExtension.Domain; |
| | | using CMS.Plugin.PipeLineLems.Domain.Shared.Enums; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using System.ComponentModel.DataAnnotations.Schema; |
| | | using Volo.Abp.Domain.Entities.Auditing; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Domain.WorkTask |
| | | { |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | public class WorkTask : MyFullAuditedAggregateRoot<Guid> |
| | | { |
| | | /// <summary> |
| | | /// åä»»å¡ç¼ç |
| | | /// </summary> |
| | | public string Son_TaskCode { get; set; } |
| | | |
| | | #region ä½ä¸è®¡å表çåæ®µ |
| | | |
| | | /// <summary> |
| | | /// ä»»å¡ç¼ç |
| | | /// </summary> |
| | | public string TaskCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åç¶æ |
| | | /// </summary> |
| | | public WorkPlanStatusEnum WorkPlanStatus { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å«æç¶æ |
| | | /// </summary> |
| | | public CallMaterialStatusEnum CallMaterialStatus { get; set; } |
| | | |
| | | #region åæç®¡ä¿¡æ¯ |
| | | |
| | | ///// <summary> |
| | | ///// åæç¼å· |
| | | ///// </summary> |
| | | //public string OrgMaterialCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åææ è¯ |
| | | /// </summary> |
| | | public string DataIdentifier { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åæåå· |
| | | /// </summary> |
| | | public string MaterialMode { get; set; } |
| | | |
| | | |
| | | #endregion |
| | | |
| | | |
| | | #region æç |
| | | |
| | | /// <summary> |
| | | /// é¿åº¦(mm) |
| | | /// </summary> |
| | | public decimal Length { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç å
容 |
| | | /// </summary> |
| | | public string MarkingContent { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æç ä½ç½® |
| | | /// </summary> |
| | | public decimal MarkingPosition { get; set; } |
| | | |
| | | #endregion |
| | | |
| | | #region åå² |
| | | |
| | | ///// <summary> |
| | | ///// å岿件 |
| | | ///// </summary> |
| | | //public string CuttingFile { get; set; } |
| | | |
| | | /// <summary> |
| | | /// åå²ä½ç½® |
| | | /// </summary> |
| | | public decimal CuttingPosition { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段æ°é |
| | | /// </summary> |
| | | public int Quantity { get; set; } |
| | | |
| | | #endregion |
| | | |
| | | #region è£
é
ãçæ¥ |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å度(mm) |
| | | /// </summary> |
| | | public decimal FlangeThickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°ç´å¾(mm) |
| | | /// </summary> |
| | | public decimal FlangeInnerDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å
¬ç§°åå |
| | | /// </summary> |
| | | public string WeldingHeatInput { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ³å
°å²ç å
容 |
| | | /// </summary> |
| | | public string PipeAllowableStress { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡é¿åº¦(mm) |
| | | /// </summary> |
| | | public decimal PipeDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¥ç®¡ç´å¾(mm) |
| | | /// </summary> |
| | | public decimal PipeWallThickness { get; set; } |
| | | |
| | | #endregion |
| | | |
| | | /// <summary> |
| | | /// å·¥å代ç |
| | | /// </summary> |
| | | public string FactoryCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产å代ç |
| | | /// </summary> |
| | | public string ProductCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥ä½ä»£ç |
| | | /// </summary> |
| | | public string WorkstationCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 设å¤ä»£ç |
| | | /// </summary> |
| | | public string EquipmentCode { get; set; } |
| | | |
| | | ///// <summary> |
| | | ///// 工件åç§° |
| | | ///// </summary> |
| | | //public string WorkpieceName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 产线ç¼ç |
| | | /// </summary> |
| | | public string ProdLineCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// è¹å· |
| | | /// </summary> |
| | | public string ShipNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 项ç®å· |
| | | /// </summary> |
| | | public string ProjectNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å·¥åºåç§° |
| | | /// </summary> |
| | | public string ProcessName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管件ç¼ç |
| | | /// </summary> |
| | | public string PipeFittingCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 顺åºå· |
| | | /// </summary> |
| | | public string PreSerialNumber { get; set; } |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// 管段ç¼ç |
| | | /// </summary> |
| | | public string PipeSpecCode { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 管段åç§° |
| | | /// </summary> |
| | | public string PipeSectionName { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å¤å¾(mm) |
| | | /// </summary> |
| | | public decimal OuterDiameter { get; set; } |
| | | |
| | | /// <summary> |
| | | /// å£å(mm) |
| | | /// </summary> |
| | | public decimal Thickness { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æè´¨ |
| | | /// </summary> |
| | | public string Material { get; set; } |
| | | |
| | | |
| | | ///// <summary> |
| | | ///// æ¯å¦ä¸»æ¯ç®¡ |
| | | ///// </summary> |
| | | //public bool HasMainSignature { get; set; } |
| | | |
| | | |
| | | |
| | | ///// <summary> |
| | | ///// æåç®¡ä»¶å¾ |
| | | ///// </summary> |
| | | //public string FinishedProductScale { get; set; } |
| | | |
| | | |
| | | |
| | | |
| | | /// <summary> |
| | | /// å·¥èºæµåç¼å· |
| | | /// </summary> |
| | | public string ProcessRouteNumber { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计åå¼å§æ¶é´ |
| | | /// </summary> |
| | | public DateTime? PlannedStartTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// 计å宿æ¶é´ |
| | | /// </summary> |
| | | public DateTime? PlannedEndTime { get; set; } |
| | | |
| | | /// <summary> |
| | | /// çç»ä¿¡æ¯ |
| | | /// </summary> |
| | | public string TeamInfo { get; set; } |
| | | |
| | | /// <summary> |
| | | /// æ¶é´æ³ |
| | | /// </summary> |
| | | public string Timestamp { get; set; } |
| | | |
| | | |
| | | #endregion |
| | | |
| | | /// <summary> |
| | | /// Adjusts the sort. |
| | | /// </summary> |
| | | /// <param name="sort">The sort.</param> |
| | | public void AdjustSort(int sort) |
| | | { |
| | | Sort = sort; |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.MyExtension.Domain; |
| | | using CMS.Plugin.PipeLineLems.Domain; |
| | | using CMS.Plugin.PipeLineLems.Domain.Shared.MyTestEntityNames; |
| | | using CMS.Plugin.PipeLineLems.Domain.WorkTask; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using Volo.Abp; |
| | | using Volo.Abp.EntityFrameworkCore.Modeling; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.EntityFrameworkCore.Extensions; |
| | | |
| | | /// <summary> |
| | | /// EfCoreæ©å± |
| | | /// </summary> |
| | | public static partial class CMSPluginEfCoreExtensions |
| | | { |
| | | /// <summary> |
| | | /// Includes the details. |
| | | /// </summary> |
| | | /// <param name="queryable">The queryable.</param> |
| | | /// <param name="include">if set to <c>true</c> [include].</param> |
| | | /// <returns></returns> |
| | | public static IQueryable<WorkTask> IncludeDetails(this IQueryable<WorkTask> queryable, bool include = true) |
| | | { |
| | | if (!include) |
| | | { |
| | | return queryable; |
| | | } |
| | | |
| | | return queryable; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// Configures the mytestentityname. |
| | | /// </summary> |
| | | /// <param name="builder">The builder.</param> |
| | | public static void ConfigureWorkTask(this ModelBuilder builder) |
| | | { |
| | | Check.NotNull(builder, nameof(builder)); |
| | | |
| | | builder.Entity<WorkTask>(b => |
| | | { |
| | | //Configure table & schema name |
| | | b.ToTable((CMSPluginDbProperties.DbTablePrefix + "_WorkTasks").ToLower(), CMSPluginDbProperties.DbSchema).HasComment("ä½ä¸ä»»å¡è¡¨"); |
| | | |
| | | b.ConfigureByConvention(); |
| | | |
| | | b.Property(x => x.Son_TaskCode).HasMaxLength(256).IsRequired().HasComment("åä»»å¡ç¼ç "); |
| | | |
| | | // Configure properties |
| | | b.Property(x => x.TaskCode).HasMaxLength(256).IsRequired().HasComment("ä»»å¡ç¼ç "); |
| | | b.Property(x => x.WorkPlanStatus).IsRequired().HasComment("计åç¶æ"); |
| | | b.Property(x => x.CallMaterialStatus).IsRequired().HasComment("å«æç¶æ"); |
| | | b.Property(x => x.DataIdentifier).HasMaxLength(256).HasComment("åææ è¯"); |
| | | b.Property(x => x.MaterialMode).HasMaxLength(256).HasComment("åæåå·"); |
| | | b.Property(x => x.Length).HasColumnType("decimal(18,2)").HasComment("é¿åº¦(mm)"); |
| | | b.Property(x => x.MarkingContent).HasMaxLength(1024).HasComment("æç å
容"); |
| | | |
| | | b.Property(x => x.Quantity).HasComment("管段æ°é"); |
| | | b.Property(x => x.FlangeThickness).HasColumnType("decimal(18,2)").HasComment("æ³å
°å度(mm)"); |
| | | b.Property(x => x.FlangeInnerDiameter).HasColumnType("decimal(18,2)").HasComment("æ³å
°ç´å¾(mm)"); |
| | | b.Property(x => x.WeldingHeatInput).HasMaxLength(256).HasComment("æ³å
°å
¬ç§°åå"); |
| | | b.Property(x => x.PipeAllowableStress).HasMaxLength(256).HasComment("æ³å
°å²ç å
容"); |
| | | b.Property(x => x.PipeDiameter).HasColumnType("decimal(18,2)").HasComment("å¥ç®¡é¿åº¦(mm)"); |
| | | b.Property(x => x.PipeWallThickness).HasColumnType("decimal(18,2)").HasComment("å¥ç®¡ç´å¾(mm)"); |
| | | b.Property(x => x.FactoryCode).HasMaxLength(256).HasComment("å·¥å代ç "); |
| | | b.Property(x => x.ProductCode).HasMaxLength(256).HasComment("产å代ç "); |
| | | b.Property(x => x.WorkstationCode).HasMaxLength(256).HasComment("å·¥ä½ä»£ç "); |
| | | b.Property(x => x.EquipmentCode).HasMaxLength(256).HasComment("设å¤ä»£ç "); |
| | | b.Property(x => x.ProdLineCode).HasMaxLength(256).HasComment("产线ç¼ç "); |
| | | b.Property(x => x.ShipNumber).HasMaxLength(256).HasComment("è¹å·"); |
| | | b.Property(x => x.ProjectNumber).HasMaxLength(256).HasComment("项ç®å·"); |
| | | |
| | | b.Property(x => x.ProcessName).HasMaxLength(256).HasComment("å·¥åºåç§°"); |
| | | b.Property(x => x.PipeFittingCode).HasMaxLength(256).HasComment("管件ç¼ç "); |
| | | b.Property(x => x.PreSerialNumber).HasMaxLength(256).HasComment("顺åºå·"); |
| | | b.Property(x => x.PipeSpecCode).HasMaxLength(256).HasComment("管段ç¼ç "); |
| | | b.Property(x => x.PipeSectionName).HasMaxLength(256).HasComment("管段åç§°"); |
| | | b.Property(x => x.OuterDiameter).HasColumnType("decimal(18,2)").HasComment("å¤å¾(mm)"); |
| | | b.Property(x => x.Thickness).HasColumnType("decimal(18,2)").HasComment("å£å(mm)"); |
| | | b.Property(x => x.Material).HasMaxLength(256).HasComment("æè´¨"); |
| | | |
| | | |
| | | b.Property(x => x.MarkingPosition).HasColumnType("decimal(18,2)").HasComment("æç ä½ç½®"); |
| | | b.Property(x => x.CuttingPosition).HasColumnType("decimal(18,2)").HasComment("åå²ä½ç½®"); |
| | | |
| | | b.Property(x => x.ProcessRouteNumber).HasMaxLength(256).HasComment("å·¥èºæµåç¼å·"); |
| | | b.Property(x => x.PlannedStartTime).HasComment("计åå¼å§æ¶é´"); |
| | | b.Property(x => x.PlannedEndTime).HasComment("计å宿æ¶é´"); |
| | | b.Property(x => x.TeamInfo).HasMaxLength(256).HasComment("çç»ä¿¡æ¯"); |
| | | b.Property(x => x.Timestamp).HasMaxLength(256).HasComment("æ¶é´æ³"); |
| | | |
| | | b.ConfigureMyCmsEntity(); |
| | | |
| | | // Configure indexes |
| | | b.HasIndex(u => u.Son_TaskCode).IsUnique(); |
| | | b.HasIndex(u => u.DataIdentifier); |
| | | b.HasIndex(u => u.PlannedStartTime); |
| | | b.HasIndex(u => u.PlannedEndTime); |
| | | |
| | | b.ApplyObjectExtensionMappings(); |
| | | }); |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using CMS.Plugin.PipeLineLems.Domain.WorkTask; |
| | | using CMS.Plugin.PipeLineLems.EntityFrameworkCore.Extensions; |
| | | using CmsQueryExtensions.Extension; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using System.Linq.Dynamic.Core; |
| | | using System.Linq.Expressions; |
| | | using Volo.Abp; |
| | | using Volo.Abp.Domain.Repositories.EntityFrameworkCore; |
| | | using Volo.Abp.EntityFrameworkCore; |
| | | |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.EntityFrameworkCore.Repositories; |
| | | |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨ä»å¨å®ç° |
| | | /// </summary> |
| | | public class EfCoreWorkTaskRepository : EfCoreRepository<ICMSPluginDbContext, WorkTask, Guid>, IWorkTaskRepository |
| | | { |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="EfCoreWorkTaskRepository"/> class. |
| | | /// </summary> |
| | | /// <param name="dbContextProvider">The database context provider.</param> |
| | | public EfCoreWorkTaskRepository(IDbContextProvider<ICMSPluginDbContext> dbContextProvider) |
| | | : base(dbContextProvider) |
| | | { |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æç
§åç§°æ¥æ¾ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="name"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task<WorkTask> FindByNameAsync(string name, CancellationToken cancellationToken = default) |
| | | { |
| | | return await (await GetDbSetAsync()) |
| | | .IncludeDetails() |
| | | .Where(x => !x.IsDeleted) |
| | | .OrderByDescending(x=>x.CreationTime) |
| | | .FirstOrDefaultAsync(t => t.Son_TaskCode == name, GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// éªè¯åç§°æ¯å¦åå¨ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="name">æ ¡éªå¼</param> |
| | | /// <param name="id"></param> |
| | | /// <returns></returns> |
| | | public async Task<bool> NameExistAsync(string name, Guid? id = null) |
| | | { |
| | | return await (await GetDbSetAsync()).WhereIf(id.HasValue, p => p.Id != id).Where(x => !x.IsDeleted).AnyAsync(x => x.Son_TaskCode == name); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åæå¤§æåºä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | public async Task<int> GetMaxSortAsync() |
| | | { |
| | | var hasAny = await (await GetQueryableAsync()) |
| | | .Where(x => !x.IsDeleted).AnyAsync(); |
| | | if (!hasAny) |
| | | { |
| | | return 1; |
| | | } |
| | | |
| | | var sort = await (await GetQueryableAsync()) |
| | | .Where(x => !x.IsDeleted).MaxAsync(x => x.Sort); |
| | | return sort + 1; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åå页å表ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="sorting"></param> |
| | | /// <param name="maxResultCount"></param> |
| | | /// <param name="skipCount"></param> |
| | | /// <param name="includeDetails"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public async Task<List<WorkTask>> GetListAsync(FunReturnResultModel<Expression<Func<WorkTask, bool>>> whereConditions, string sorting = null, int maxResultCount = int.MaxValue, int skipCount = 0, bool includeDetails = false, CancellationToken cancellationToken = default) |
| | | { |
| | | return await (await GetDbSetAsync()) |
| | | .IncludeDetails(includeDetails) |
| | | .WhereIf(whereConditions != null, whereConditions.data) |
| | | .Where(x => !x.IsDeleted) |
| | | .OrderByDescending(x=>x.CreationTime) |
| | | .PageBy(skipCount, maxResultCount) |
| | | .ToListAsync(GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åæ»æ°ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public async Task<long> GetCountAsync(FunReturnResultModel<Expression<Func<WorkTask, bool>>> whereConditions, CancellationToken cancellationToken = default) |
| | | { |
| | | return await (await GetQueryableAsync()) |
| | | .WhereIf(whereConditions != null, whereConditions.data) |
| | | .Where(x => !x.IsDeleted) |
| | | .CountAsync(cancellationToken: GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | |
| | | /// <inheritdoc /> |
| | | public override async Task<IQueryable<WorkTask>> WithDetailsAsync() |
| | | { |
| | | return (await GetQueryableAsync()) |
| | | .Where(x => !x.IsDeleted).IncludeDetails(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// ç©çå é¤ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">主é®ID</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task DeletePermanentlyAsync(Guid id, CancellationToken cancellationToken = default) |
| | | { |
| | | var entity = await (await GetDbSetAsync()) |
| | | .FirstOrDefaultAsync(x => x.Id == id && !x.IsDeleted, GetCancellationToken(cancellationToken)); |
| | | |
| | | if (entity == null) |
| | | { |
| | | throw new Volo.Abp.Domain.Entities.EntityNotFoundException(typeof(WorkTask), id); |
| | | } |
| | | |
| | | // 2. è·å DbContext å¹¶æ§è¡å é¤ |
| | | var dbContext = await GetDbContextAsync(); |
| | | |
| | | // ç´æ¥æ§è¡ SQL å é¤ |
| | | var sql = $"DELETE FROM scms_worktasks WHERE Id ='{entity.Id.ToString()}'"; |
| | | await dbContext.Database.ExecuteSqlRawAsync(sql, cancellationToken); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¹éç©çå é¤ä½ä¸ä»»å¡è¡¨ï¼ç´æ¥å é¤ï¼ä¸è½¯å é¤ï¼ |
| | | /// </summary> |
| | | /// <param name="ids">è¦å é¤ç主é®IDå表</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public virtual async Task BatchDeletePermanentlyAsync(IEnumerable<Guid> ids, CancellationToken cancellationToken = default) |
| | | { |
| | | // 1. æ¥è¯¢ç¬¦åæ¡ä»¶çå®ä½ï¼æªè½¯å é¤çè®°å½ï¼ |
| | | var entities = await (await GetDbSetAsync()) |
| | | .Where(x => ids.Contains(x.Id) && !x.IsDeleted) |
| | | .ToListAsync(GetCancellationToken(cancellationToken)); |
| | | |
| | | if (!entities.Any()) |
| | | { |
| | | // å¦ææ²¡æéè¦å é¤çè®°å½ï¼ç´æ¥è¿åï¼é¿å
ä¸å¿
è¦çæ°æ®åºæä½ï¼ |
| | | return; |
| | | } |
| | | |
| | | // 2. è·å DbContext å¹¶æ§è¡æ¹éå é¤ |
| | | var dbContext = await GetDbContextAsync(); |
| | | |
| | | var idsToDelete = entities.Select(e => e.Id).ToList(); |
| | | |
| | | // ç´æ¥æ§è¡ SQL å é¤ |
| | | var sql = $"DELETE FROM scms_worktasks WHERE Id IN ({string.Join(",", idsToDelete.Select(id => $"'{id}'"))})"; |
| | | await dbContext.Database.ExecuteSqlRawAsync(sql, cancellationToken); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åä½ä¸ä»»å¡è¡¨å表 |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | public async Task<List<WorkTask>> GetListByFilterAsync(Expression<Func<WorkTask, bool>> whereConditions, CancellationToken cancellationToken = default) |
| | | { |
| | | return await (await GetDbSetAsync()) |
| | | .IncludeDetails() |
| | | .WhereIf(whereConditions != null, whereConditions) |
| | | .Where(x => !x.IsDeleted) |
| | | .OrderByDescending(x => x.CreationTime) |
| | | .ToListAsync(GetCancellationToken(cancellationToken)); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åå个ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="whereConditions"></param> |
| | | /// <param name="isMultipleThrowException">æ¯å¦æ¥è¯¢åºå¤æ¡å°±æ¥é</param> |
| | | /// <param name="cancellationToken"></param> |
| | | /// <returns></returns> |
| | | /// <exception cref="UserFriendlyException"></exception> |
| | | public async Task<WorkTask> GetSingleByFilterAsync(Expression<Func<WorkTask, bool>> whereConditions, bool isâMultipleThrowException = false, CancellationToken cancellationToken = default) |
| | | { |
| | | if (isâMultipleThrowException) |
| | | { |
| | | var entitys = await (await GetDbSetAsync()) |
| | | .IncludeDetails() |
| | | .WhereIf(whereConditions != null, whereConditions) |
| | | .Where(x => !x.IsDeleted) |
| | | .OrderByDescending(x => x.CreationTime) |
| | | .ToListAsync(GetCancellationToken(cancellationToken)); |
| | | if (entitys?.Count > 1) |
| | | { |
| | | throw new UserFriendlyException("æ¥è¯¢å°å¤æ¡è®°å½"); |
| | | } |
| | | return entitys?.FirstOrDefault(); |
| | | } |
| | | else |
| | | { |
| | | return await (await GetDbSetAsync()) |
| | | .IncludeDetails() |
| | | .WhereIf(whereConditions != null, whereConditions) |
| | | .Where(x => !x.IsDeleted) |
| | | .OrderByDescending(x => x.CreationTime) |
| | | .FirstOrDefaultAsync(GetCancellationToken(cancellationToken)); |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | // <auto-generated /> |
| | | using System; |
| | | using CMS.Plugin.PipeLineLems.MySQL; |
| | | using Microsoft.EntityFrameworkCore; |
| | | using Microsoft.EntityFrameworkCore.Infrastructure; |
| | | using Microsoft.EntityFrameworkCore.Migrations; |
| | | using Microsoft.EntityFrameworkCore.Storage.ValueConversion; |
| | | using Volo.Abp.EntityFrameworkCore; |
| | | |
| | | #nullable disable |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.MySQL.Migrations |
| | | { |
| | | [DbContext(typeof(CMSPluginDbContext))] |
| | | [Migration("20250520032108_Update2")] |
| | | partial class Update2 |
| | | { |
| | | protected override void BuildTargetModel(ModelBuilder modelBuilder) |
| | | { |
| | | #pragma warning disable 612, 618 |
| | | modelBuilder |
| | | .HasAnnotation("_Abp_DatabaseProvider", EfCoreDatabaseProvider.MySql) |
| | | .HasAnnotation("ProductVersion", "6.0.16") |
| | | .HasAnnotation("Relational:MaxIdentifierLength", 64); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.CallMaterialOrder.CallMaterialOrder", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<int>("CallMaterialStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("å«æç¶æ"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp") |
| | | .HasComment("å¹¶åæ³"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime") |
| | | .HasComment("å建æ¶é´"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId") |
| | | .HasComment("å建人ID"); |
| | | |
| | | b.Property<string>("CreatorName") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("å建人"); |
| | | |
| | | b.Property<string>("DataIdentifier") |
| | | .IsRequired() |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åææ è¯"); |
| | | |
| | | b.Property<string>("DeleteRemark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å é¤å¤æ³¨"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId") |
| | | .HasComment("å é¤äººID"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime") |
| | | .HasComment("å 餿¶é´"); |
| | | |
| | | b.Property<string>("ExtraField1") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段1"); |
| | | |
| | | b.Property<string>("ExtraField2") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段2"); |
| | | |
| | | b.Property<string>("ExtraField3") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段3"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties") |
| | | .HasComment("æ©å±å±æ§"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted") |
| | | .HasComment("æ¯å¦å é¤"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime") |
| | | .HasComment("ä¿®æ¹æ¶é´"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId") |
| | | .HasComment("ä¿®æ¹äººID"); |
| | | |
| | | b.Property<string>("LastModifierName") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ä¿®æ¹äºº"); |
| | | |
| | | b.Property<string>("MaterialBatch") |
| | | .HasColumnType("longtext"); |
| | | |
| | | b.Property<string>("MaterialMode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åæåå·"); |
| | | |
| | | b.Property<string>("OperationRemark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æä½å¤æ³¨"); |
| | | |
| | | b.Property<int>("Quantity") |
| | | .HasColumnType("int") |
| | | .HasComment("嫿æ°é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<string>("WmsRetResult") |
| | | .HasColumnType("longtext") |
| | | .HasComment("WMSè¿åç»æ"); |
| | | |
| | | b.Property<string>("WmsTaskNo") |
| | | .HasColumnType("longtext") |
| | | .HasComment("WMSä»»å¡å·"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("DataIdentifier") |
| | | .IsUnique(); |
| | | |
| | | b.ToTable("scms_callmaterialorders", (string)null); |
| | | |
| | | b.HasComment("嫿å表"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.CallMaterialOrderRecord.CallMaterialOrderRecord", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<int>("CallMaterialStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("å«æç¶æ"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp") |
| | | .HasComment("å¹¶åæ³"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime") |
| | | .HasComment("å建æ¶é´"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId") |
| | | .HasComment("å建人ID"); |
| | | |
| | | b.Property<string>("CreatorName") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("å建人"); |
| | | |
| | | b.Property<string>("DataIdentifier") |
| | | .IsRequired() |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åææ è¯"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId") |
| | | .HasComment("å é¤äººID"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime") |
| | | .HasComment("å 餿¶é´"); |
| | | |
| | | b.Property<string>("ExtraField1") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段1"); |
| | | |
| | | b.Property<string>("ExtraField2") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段2"); |
| | | |
| | | b.Property<string>("ExtraField3") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段3"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties") |
| | | .HasComment("æ©å±å±æ§"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted") |
| | | .HasComment("æ¯å¦å é¤"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime") |
| | | .HasComment("ä¿®æ¹æ¶é´"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId") |
| | | .HasComment("ä¿®æ¹äººID"); |
| | | |
| | | b.Property<string>("MaterialBatch") |
| | | .HasColumnType("longtext"); |
| | | |
| | | b.Property<string>("MaterialMode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åæåå·"); |
| | | |
| | | b.Property<int>("Quantity") |
| | | .HasColumnType("int") |
| | | .HasComment("嫿æ°é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<string>("WmsRetResult") |
| | | .HasColumnType("longtext") |
| | | .HasComment("WMSè¿åç»æ"); |
| | | |
| | | b.Property<string>("WmsTaskNo") |
| | | .HasColumnType("longtext") |
| | | .HasComment("WMSä»»å¡å·"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("DataIdentifier"); |
| | | |
| | | b.ToTable("scms_callmaterialorderrecords", (string)null); |
| | | |
| | | b.HasComment("å«æè®°å½è¡¨"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.MyTestEntityNames.MyTestEntityName", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<string>("Code") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ç¼ç "); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .HasColumnType("tinyint(1)") |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId"); |
| | | |
| | | b.Property<string>("Name") |
| | | .IsRequired() |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("åç§°"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .HasColumnType("int") |
| | | .HasComment("æåº"); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("Name"); |
| | | |
| | | b.ToTable("scms_mytestentitynames", (string)null); |
| | | |
| | | b.HasComment("MyTestEntityName"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.WorkPlan.WorkPlan", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<int>("CallMaterialStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("å«æç¶æ"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp") |
| | | .HasComment("å¹¶åæ³"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime") |
| | | .HasComment("å建æ¶é´"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId") |
| | | .HasComment("å建人ID"); |
| | | |
| | | b.Property<string>("CreatorName") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("å建人"); |
| | | |
| | | b.Property<decimal>("CuttingPosition") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("åå²ä½ç½®"); |
| | | |
| | | b.Property<string>("DataIdentifier") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åææ è¯"); |
| | | |
| | | b.Property<string>("DeleteRemark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å é¤å¤æ³¨"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId") |
| | | .HasComment("å é¤äººID"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime") |
| | | .HasComment("å 餿¶é´"); |
| | | |
| | | b.Property<string>("EquipmentCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("设å¤ä»£ç "); |
| | | |
| | | b.Property<string>("ExtraField1") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段1"); |
| | | |
| | | b.Property<string>("ExtraField2") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段2"); |
| | | |
| | | b.Property<string>("ExtraField3") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段3"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties") |
| | | .HasComment("æ©å±å±æ§"); |
| | | |
| | | b.Property<string>("FactoryCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å·¥å代ç "); |
| | | |
| | | b.Property<decimal>("FlangeInnerDiameter") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("æ³å
°ç´å¾(mm)"); |
| | | |
| | | b.Property<decimal>("FlangeThickness") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("æ³å
°å度(mm)"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted") |
| | | .HasComment("æ¯å¦å é¤"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime") |
| | | .HasComment("ä¿®æ¹æ¶é´"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId") |
| | | .HasComment("ä¿®æ¹äººID"); |
| | | |
| | | b.Property<string>("LastModifierName") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ä¿®æ¹äºº"); |
| | | |
| | | b.Property<decimal>("Length") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("é¿åº¦(mm)"); |
| | | |
| | | b.Property<string>("MarkingContent") |
| | | .HasMaxLength(1024) |
| | | .HasColumnType("varchar(1024)") |
| | | .HasComment("æç å
容"); |
| | | |
| | | b.Property<decimal>("MarkingPosition") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("æç ä½ç½®"); |
| | | |
| | | b.Property<string>("Material") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æè´¨"); |
| | | |
| | | b.Property<string>("MaterialMode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åæåå·"); |
| | | |
| | | b.Property<string>("OperationRemark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æä½å¤æ³¨"); |
| | | |
| | | b.Property<decimal>("OuterDiameter") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å¤å¾(mm)"); |
| | | |
| | | b.Property<string>("PipeAllowableStress") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ³å
°å²ç å
容"); |
| | | |
| | | b.Property<decimal>("PipeDiameter") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å¥ç®¡é¿åº¦(mm)"); |
| | | |
| | | b.Property<string>("PipeFittingCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("管件ç¼ç "); |
| | | |
| | | b.Property<string>("PipeSectionName") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("管段åç§°"); |
| | | |
| | | b.Property<string>("PipeSpecCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("管段ç¼ç "); |
| | | |
| | | b.Property<decimal>("PipeWallThickness") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å¥ç®¡ç´å¾(mm)"); |
| | | |
| | | b.Property<DateTime?>("PlannedEndTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasComment("计å宿æ¶é´"); |
| | | |
| | | b.Property<DateTime?>("PlannedStartTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasComment("计åå¼å§æ¶é´"); |
| | | |
| | | b.Property<string>("PreSerialNumber") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("顺åºå·"); |
| | | |
| | | b.Property<string>("ProcessName") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å·¥åºåç§°"); |
| | | |
| | | b.Property<string>("ProcessRouteNumber") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å·¥èºæµåç¼å·"); |
| | | |
| | | b.Property<string>("ProdLineCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("产线ç¼ç "); |
| | | |
| | | b.Property<string>("ProductCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("产å代ç "); |
| | | |
| | | b.Property<string>("ProjectNumber") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("项ç®å·"); |
| | | |
| | | b.Property<int>("Quantity") |
| | | .HasColumnType("int") |
| | | .HasComment("管段æ°é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<string>("ShipNumber") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("è¹å·"); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<string>("TaskCode") |
| | | .IsRequired() |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("ä»»å¡ç¼ç "); |
| | | |
| | | b.Property<string>("TeamInfo") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("çç»ä¿¡æ¯"); |
| | | |
| | | b.Property<decimal>("Thickness") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å£å(mm)"); |
| | | |
| | | b.Property<string>("Timestamp") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ¶é´æ³"); |
| | | |
| | | b.Property<string>("WeldingHeatInput") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ³å
°å
¬ç§°åå"); |
| | | |
| | | b.Property<int>("WorkPlanStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("计åç¶æ"); |
| | | |
| | | b.Property<string>("WorkstationCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å·¥ä½ä»£ç "); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("DataIdentifier"); |
| | | |
| | | b.HasIndex("PlannedEndTime"); |
| | | |
| | | b.HasIndex("PlannedStartTime"); |
| | | |
| | | b.HasIndex("TaskCode") |
| | | .IsUnique(); |
| | | |
| | | b.ToTable("scms_workplans", (string)null); |
| | | |
| | | b.HasComment("ä½ä¸è®¡å表"); |
| | | }); |
| | | |
| | | modelBuilder.Entity("CMS.Plugin.PipeLineLems.Domain.WorkTask.WorkTask", b => |
| | | { |
| | | b.Property<Guid>("Id") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("char(36)"); |
| | | |
| | | b.Property<int>("CallMaterialStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("å«æç¶æ"); |
| | | |
| | | b.Property<string>("ConcurrencyStamp") |
| | | .IsConcurrencyToken() |
| | | .HasMaxLength(40) |
| | | .HasColumnType("varchar(40)") |
| | | .HasColumnName("ConcurrencyStamp") |
| | | .HasComment("å¹¶åæ³"); |
| | | |
| | | b.Property<DateTime>("CreationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("CreationTime") |
| | | .HasComment("å建æ¶é´"); |
| | | |
| | | b.Property<Guid?>("CreatorId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("CreatorId") |
| | | .HasComment("å建人ID"); |
| | | |
| | | b.Property<string>("CreatorName") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("å建人"); |
| | | |
| | | b.Property<decimal>("CuttingPosition") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("åå²ä½ç½®"); |
| | | |
| | | b.Property<string>("DataIdentifier") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åææ è¯"); |
| | | |
| | | b.Property<string>("DeleteRemark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å é¤å¤æ³¨"); |
| | | |
| | | b.Property<Guid?>("DeleterId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("DeleterId") |
| | | .HasComment("å é¤äººID"); |
| | | |
| | | b.Property<DateTime?>("DeletionTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("DeletionTime") |
| | | .HasComment("å 餿¶é´"); |
| | | |
| | | b.Property<string>("EquipmentCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("设å¤ä»£ç "); |
| | | |
| | | b.Property<string>("ExtraField1") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段1"); |
| | | |
| | | b.Property<string>("ExtraField2") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段2"); |
| | | |
| | | b.Property<string>("ExtraField3") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ©å±å段3"); |
| | | |
| | | b.Property<string>("ExtraProperties") |
| | | .HasColumnType("longtext") |
| | | .HasColumnName("ExtraProperties") |
| | | .HasComment("æ©å±å±æ§"); |
| | | |
| | | b.Property<string>("FactoryCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å·¥å代ç "); |
| | | |
| | | b.Property<decimal>("FlangeInnerDiameter") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("æ³å
°ç´å¾(mm)"); |
| | | |
| | | b.Property<decimal>("FlangeThickness") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("æ³å
°å度(mm)"); |
| | | |
| | | b.Property<bool>("IsDeleted") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasColumnName("IsDeleted") |
| | | .HasComment("æ¯å¦å é¤"); |
| | | |
| | | b.Property<bool?>("IsDisabled") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("tinyint(1)") |
| | | .HasDefaultValue(false) |
| | | .HasComment("æ¯å¦ç¦ç¨"); |
| | | |
| | | b.Property<DateTime?>("LastModificationTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasColumnName("LastModificationTime") |
| | | .HasComment("ä¿®æ¹æ¶é´"); |
| | | |
| | | b.Property<Guid?>("LastModifierId") |
| | | .HasMaxLength(36) |
| | | .HasColumnType("char(36)") |
| | | .HasColumnName("LastModifierId") |
| | | .HasComment("ä¿®æ¹äººID"); |
| | | |
| | | b.Property<string>("LastModifierName") |
| | | .HasMaxLength(64) |
| | | .HasColumnType("varchar(64)") |
| | | .HasComment("ä¿®æ¹äºº"); |
| | | |
| | | b.Property<decimal>("Length") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("é¿åº¦(mm)"); |
| | | |
| | | b.Property<string>("MarkingContent") |
| | | .HasMaxLength(1024) |
| | | .HasColumnType("varchar(1024)") |
| | | .HasComment("æç å
容"); |
| | | |
| | | b.Property<decimal>("MarkingPosition") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("æç ä½ç½®"); |
| | | |
| | | b.Property<string>("Material") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æè´¨"); |
| | | |
| | | b.Property<string>("MaterialMode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åæåå·"); |
| | | |
| | | b.Property<string>("OperationRemark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æä½å¤æ³¨"); |
| | | |
| | | b.Property<decimal>("OuterDiameter") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å¤å¾(mm)"); |
| | | |
| | | b.Property<string>("PipeAllowableStress") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ³å
°å²ç å
容"); |
| | | |
| | | b.Property<decimal>("PipeDiameter") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å¥ç®¡é¿åº¦(mm)"); |
| | | |
| | | b.Property<string>("PipeFittingCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("管件ç¼ç "); |
| | | |
| | | b.Property<string>("PipeSectionName") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("管段åç§°"); |
| | | |
| | | b.Property<string>("PipeSpecCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("管段ç¼ç "); |
| | | |
| | | b.Property<decimal>("PipeWallThickness") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å¥ç®¡ç´å¾(mm)"); |
| | | |
| | | b.Property<DateTime?>("PlannedEndTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasComment("计å宿æ¶é´"); |
| | | |
| | | b.Property<DateTime?>("PlannedStartTime") |
| | | .HasColumnType("datetime(6)") |
| | | .HasComment("计åå¼å§æ¶é´"); |
| | | |
| | | b.Property<string>("PreSerialNumber") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("顺åºå·"); |
| | | |
| | | b.Property<string>("ProcessName") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å·¥åºåç§°"); |
| | | |
| | | b.Property<string>("ProcessRouteNumber") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å·¥èºæµåç¼å·"); |
| | | |
| | | b.Property<string>("ProdLineCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("产线ç¼ç "); |
| | | |
| | | b.Property<string>("ProductCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("产å代ç "); |
| | | |
| | | b.Property<string>("ProjectNumber") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("项ç®å·"); |
| | | |
| | | b.Property<int>("Quantity") |
| | | .HasColumnType("int") |
| | | .HasComment("管段æ°é"); |
| | | |
| | | b.Property<string>("Remark") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("夿³¨"); |
| | | |
| | | b.Property<string>("ShipNumber") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("è¹å·"); |
| | | |
| | | b.Property<string>("Son_TaskCode") |
| | | .IsRequired() |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("åä»»å¡ç¼ç "); |
| | | |
| | | b.Property<int>("Sort") |
| | | .ValueGeneratedOnAdd() |
| | | .HasColumnType("int") |
| | | .HasDefaultValue(0) |
| | | .HasComment("æåº"); |
| | | |
| | | b.Property<string>("TaskCode") |
| | | .IsRequired() |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("ä»»å¡ç¼ç "); |
| | | |
| | | b.Property<string>("TeamInfo") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("çç»ä¿¡æ¯"); |
| | | |
| | | b.Property<decimal>("Thickness") |
| | | .HasColumnType("decimal(18,2)") |
| | | .HasComment("å£å(mm)"); |
| | | |
| | | b.Property<string>("Timestamp") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ¶é´æ³"); |
| | | |
| | | b.Property<string>("WeldingHeatInput") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("æ³å
°å
¬ç§°åå"); |
| | | |
| | | b.Property<int>("WorkPlanStatus") |
| | | .HasColumnType("int") |
| | | .HasComment("计åç¶æ"); |
| | | |
| | | b.Property<string>("WorkstationCode") |
| | | .HasMaxLength(256) |
| | | .HasColumnType("varchar(256)") |
| | | .HasComment("å·¥ä½ä»£ç "); |
| | | |
| | | b.HasKey("Id"); |
| | | |
| | | b.HasIndex("DataIdentifier"); |
| | | |
| | | b.HasIndex("PlannedEndTime"); |
| | | |
| | | b.HasIndex("PlannedStartTime"); |
| | | |
| | | b.HasIndex("Son_TaskCode") |
| | | .IsUnique(); |
| | | |
| | | b.ToTable("scms_worktasks", (string)null); |
| | | |
| | | b.HasComment("ä½ä¸ä»»å¡è¡¨"); |
| | | }); |
| | | #pragma warning restore 612, 618 |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using System; |
| | | using Microsoft.EntityFrameworkCore.Migrations; |
| | | |
| | | #nullable disable |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.MySQL.Migrations |
| | | { |
| | | public partial class Update2 : Migration |
| | | { |
| | | protected override void Up(MigrationBuilder migrationBuilder) |
| | | { |
| | | migrationBuilder.AlterDatabase() |
| | | .Annotation("MySql:CharSet", "utf8mb4"); |
| | | |
| | | migrationBuilder.CreateTable( |
| | | name: "scms_callmaterialorderrecords", |
| | | columns: table => new |
| | | { |
| | | Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), |
| | | DataIdentifier = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false, comment: "åææ è¯") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialMode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "åæåå·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialBatch = table.Column<string>(type: "longtext", nullable: true) |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CallMaterialStatus = table.Column<int>(type: "int", nullable: false, comment: "å«æç¶æ"), |
| | | Quantity = table.Column<int>(type: "int", nullable: false, comment: "嫿æ°é"), |
| | | WmsRetResult = table.Column<string>(type: "longtext", nullable: true, comment: "WMSè¿åç»æ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | WmsTaskNo = table.Column<string>(type: "longtext", nullable: true, comment: "WMSä»»å¡å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraProperties = table.Column<string>(type: "longtext", nullable: true, comment: "æ©å±å±æ§") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true, comment: "å¹¶åæ³") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "å建æ¶é´"), |
| | | CreatorId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "å建人ID", collation: "ascii_general_ci"), |
| | | LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "ä¿®æ¹æ¶é´"), |
| | | LastModifierId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "ä¿®æ¹äººID", collation: "ascii_general_ci"), |
| | | IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false, comment: "æ¯å¦å é¤"), |
| | | DeleterId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "å é¤äººID", collation: "ascii_general_ci"), |
| | | DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "å 餿¶é´"), |
| | | CreatorName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "å建人") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Sort = table.Column<int>(type: "int", nullable: false, defaultValue: 0, comment: "æåº"), |
| | | Remark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "夿³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraField1 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段1") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraField2 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段2") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraField3 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段3") |
| | | .Annotation("MySql:CharSet", "utf8mb4") |
| | | }, |
| | | constraints: table => |
| | | { |
| | | table.PrimaryKey("PK_scms_callmaterialorderrecords", x => x.Id); |
| | | }, |
| | | comment: "å«æè®°å½è¡¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"); |
| | | |
| | | migrationBuilder.CreateTable( |
| | | name: "scms_callmaterialorders", |
| | | columns: table => new |
| | | { |
| | | Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), |
| | | DataIdentifier = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false, comment: "åææ è¯") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialMode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "åæåå·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialBatch = table.Column<string>(type: "longtext", nullable: true) |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CallMaterialStatus = table.Column<int>(type: "int", nullable: false, comment: "å«æç¶æ"), |
| | | Quantity = table.Column<int>(type: "int", nullable: false, comment: "嫿æ°é"), |
| | | WmsRetResult = table.Column<string>(type: "longtext", nullable: true, comment: "WMSè¿åç»æ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | WmsTaskNo = table.Column<string>(type: "longtext", nullable: true, comment: "WMSä»»å¡å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraProperties = table.Column<string>(type: "longtext", nullable: true, comment: "æ©å±å±æ§") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true, comment: "å¹¶åæ³") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "å建æ¶é´"), |
| | | CreatorId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "å建人ID", collation: "ascii_general_ci"), |
| | | LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "ä¿®æ¹æ¶é´"), |
| | | LastModifierId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "ä¿®æ¹äººID", collation: "ascii_general_ci"), |
| | | IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false, comment: "æ¯å¦å é¤"), |
| | | DeleterId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "å é¤äººID", collation: "ascii_general_ci"), |
| | | DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "å 餿¶é´"), |
| | | CreatorName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "å建人") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | LastModifierName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "ä¿®æ¹äºº") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | OperationRemark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æä½å¤æ³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | DeleteRemark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å é¤å¤æ³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Sort = table.Column<int>(type: "int", nullable: false, defaultValue: 0, comment: "æåº"), |
| | | Remark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "夿³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | IsDisabled = table.Column<bool>(type: "tinyint(1)", nullable: true, defaultValue: false, comment: "æ¯å¦ç¦ç¨"), |
| | | ExtraField1 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段1") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraField2 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段2") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraField3 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段3") |
| | | .Annotation("MySql:CharSet", "utf8mb4") |
| | | }, |
| | | constraints: table => |
| | | { |
| | | table.PrimaryKey("PK_scms_callmaterialorders", x => x.Id); |
| | | }, |
| | | comment: "嫿å表") |
| | | .Annotation("MySql:CharSet", "utf8mb4"); |
| | | |
| | | migrationBuilder.CreateTable( |
| | | name: "scms_mytestentitynames", |
| | | columns: table => new |
| | | { |
| | | Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), |
| | | Code = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "ç¼ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Name = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: false, comment: "åç§°") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Sort = table.Column<int>(type: "int", nullable: false, comment: "æåº"), |
| | | Remark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "夿³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | IsDisabled = table.Column<bool>(type: "tinyint(1)", nullable: true, comment: "æ¯å¦ç¦ç¨"), |
| | | ExtraProperties = table.Column<string>(type: "longtext", nullable: true) |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true) |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false), |
| | | CreatorId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), |
| | | LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true), |
| | | LastModifierId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), |
| | | IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false), |
| | | DeleterId = table.Column<Guid>(type: "char(36)", nullable: true, collation: "ascii_general_ci"), |
| | | DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true) |
| | | }, |
| | | constraints: table => |
| | | { |
| | | table.PrimaryKey("PK_scms_mytestentitynames", x => x.Id); |
| | | }, |
| | | comment: "MyTestEntityName") |
| | | .Annotation("MySql:CharSet", "utf8mb4"); |
| | | |
| | | migrationBuilder.CreateTable( |
| | | name: "scms_workplans", |
| | | columns: table => new |
| | | { |
| | | Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), |
| | | TaskCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false, comment: "ä»»å¡ç¼ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | WorkPlanStatus = table.Column<int>(type: "int", nullable: false, comment: "计åç¶æ"), |
| | | CallMaterialStatus = table.Column<int>(type: "int", nullable: false, comment: "å«æç¶æ"), |
| | | DataIdentifier = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "åææ è¯") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialMode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "åæåå·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Length = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "é¿åº¦(mm)"), |
| | | MarkingContent = table.Column<string>(type: "varchar(1024)", maxLength: 1024, nullable: true, comment: "æç å
容") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MarkingPosition = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "æç ä½ç½®"), |
| | | CuttingPosition = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "åå²ä½ç½®"), |
| | | Quantity = table.Column<int>(type: "int", nullable: false, comment: "管段æ°é"), |
| | | FlangeThickness = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "æ³å
°å度(mm)"), |
| | | FlangeInnerDiameter = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "æ³å
°ç´å¾(mm)"), |
| | | WeldingHeatInput = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ³å
°å
¬ç§°åå") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PipeAllowableStress = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ³å
°å²ç å
容") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PipeDiameter = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "å¥ç®¡é¿åº¦(mm)"), |
| | | PipeWallThickness = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "å¥ç®¡ç´å¾(mm)"), |
| | | FactoryCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å·¥å代ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ProductCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "产å代ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | WorkstationCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å·¥ä½ä»£ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | EquipmentCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "设å¤ä»£ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ProdLineCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "产线ç¼ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ShipNumber = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "è¹å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ProjectNumber = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "项ç®å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ProcessName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å·¥åºåç§°") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PipeFittingCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "管件ç¼ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PreSerialNumber = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "顺åºå·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PipeSpecCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "管段ç¼ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PipeSectionName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "管段åç§°") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | OuterDiameter = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "å¤å¾(mm)"), |
| | | Thickness = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "å£å(mm)"), |
| | | Material = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æè´¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ProcessRouteNumber = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å·¥èºæµåç¼å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PlannedStartTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "计åå¼å§æ¶é´"), |
| | | PlannedEndTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "计å宿æ¶é´"), |
| | | TeamInfo = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "çç»ä¿¡æ¯") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Timestamp = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ¶é´æ³") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraProperties = table.Column<string>(type: "longtext", nullable: true, comment: "æ©å±å±æ§") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true, comment: "å¹¶åæ³") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "å建æ¶é´"), |
| | | CreatorId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "å建人ID", collation: "ascii_general_ci"), |
| | | LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "ä¿®æ¹æ¶é´"), |
| | | LastModifierId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "ä¿®æ¹äººID", collation: "ascii_general_ci"), |
| | | IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false, comment: "æ¯å¦å é¤"), |
| | | DeleterId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "å é¤äººID", collation: "ascii_general_ci"), |
| | | DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "å 餿¶é´"), |
| | | CreatorName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "å建人") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | LastModifierName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "ä¿®æ¹äºº") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | OperationRemark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æä½å¤æ³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | DeleteRemark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å é¤å¤æ³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Sort = table.Column<int>(type: "int", nullable: false, defaultValue: 0, comment: "æåº"), |
| | | Remark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "夿³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | IsDisabled = table.Column<bool>(type: "tinyint(1)", nullable: true, defaultValue: false, comment: "æ¯å¦ç¦ç¨"), |
| | | ExtraField1 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段1") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraField2 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段2") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraField3 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段3") |
| | | .Annotation("MySql:CharSet", "utf8mb4") |
| | | }, |
| | | constraints: table => |
| | | { |
| | | table.PrimaryKey("PK_scms_workplans", x => x.Id); |
| | | }, |
| | | comment: "ä½ä¸è®¡å表") |
| | | .Annotation("MySql:CharSet", "utf8mb4"); |
| | | |
| | | migrationBuilder.CreateTable( |
| | | name: "scms_worktasks", |
| | | columns: table => new |
| | | { |
| | | Id = table.Column<Guid>(type: "char(36)", nullable: false, collation: "ascii_general_ci"), |
| | | Son_TaskCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false, comment: "åä»»å¡ç¼ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | TaskCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: false, comment: "ä»»å¡ç¼ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | WorkPlanStatus = table.Column<int>(type: "int", nullable: false, comment: "计åç¶æ"), |
| | | CallMaterialStatus = table.Column<int>(type: "int", nullable: false, comment: "å«æç¶æ"), |
| | | DataIdentifier = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "åææ è¯") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MaterialMode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "åæåå·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Length = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "é¿åº¦(mm)"), |
| | | MarkingContent = table.Column<string>(type: "varchar(1024)", maxLength: 1024, nullable: true, comment: "æç å
容") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | MarkingPosition = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "æç ä½ç½®"), |
| | | CuttingPosition = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "åå²ä½ç½®"), |
| | | Quantity = table.Column<int>(type: "int", nullable: false, comment: "管段æ°é"), |
| | | FlangeThickness = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "æ³å
°å度(mm)"), |
| | | FlangeInnerDiameter = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "æ³å
°ç´å¾(mm)"), |
| | | WeldingHeatInput = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ³å
°å
¬ç§°åå") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PipeAllowableStress = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ³å
°å²ç å
容") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PipeDiameter = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "å¥ç®¡é¿åº¦(mm)"), |
| | | PipeWallThickness = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "å¥ç®¡ç´å¾(mm)"), |
| | | FactoryCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å·¥å代ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ProductCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "产å代ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | WorkstationCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å·¥ä½ä»£ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | EquipmentCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "设å¤ä»£ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ProdLineCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "产线ç¼ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ShipNumber = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "è¹å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ProjectNumber = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "项ç®å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ProcessName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å·¥åºåç§°") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PipeFittingCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "管件ç¼ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PreSerialNumber = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "顺åºå·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PipeSpecCode = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "管段ç¼ç ") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PipeSectionName = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "管段åç§°") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | OuterDiameter = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "å¤å¾(mm)"), |
| | | Thickness = table.Column<decimal>(type: "decimal(18,2)", nullable: false, comment: "å£å(mm)"), |
| | | Material = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æè´¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ProcessRouteNumber = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å·¥èºæµåç¼å·") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | PlannedStartTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "计åå¼å§æ¶é´"), |
| | | PlannedEndTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "计å宿æ¶é´"), |
| | | TeamInfo = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "çç»ä¿¡æ¯") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Timestamp = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ¶é´æ³") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraProperties = table.Column<string>(type: "longtext", nullable: true, comment: "æ©å±å±æ§") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ConcurrencyStamp = table.Column<string>(type: "varchar(40)", maxLength: 40, nullable: true, comment: "å¹¶åæ³") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | CreationTime = table.Column<DateTime>(type: "datetime(6)", nullable: false, comment: "å建æ¶é´"), |
| | | CreatorId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "å建人ID", collation: "ascii_general_ci"), |
| | | LastModificationTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "ä¿®æ¹æ¶é´"), |
| | | LastModifierId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "ä¿®æ¹äººID", collation: "ascii_general_ci"), |
| | | IsDeleted = table.Column<bool>(type: "tinyint(1)", nullable: false, defaultValue: false, comment: "æ¯å¦å é¤"), |
| | | DeleterId = table.Column<Guid>(type: "char(36)", maxLength: 36, nullable: true, comment: "å é¤äººID", collation: "ascii_general_ci"), |
| | | DeletionTime = table.Column<DateTime>(type: "datetime(6)", nullable: true, comment: "å 餿¶é´"), |
| | | CreatorName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "å建人") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | LastModifierName = table.Column<string>(type: "varchar(64)", maxLength: 64, nullable: true, comment: "ä¿®æ¹äºº") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | OperationRemark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æä½å¤æ³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | DeleteRemark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "å é¤å¤æ³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | Sort = table.Column<int>(type: "int", nullable: false, defaultValue: 0, comment: "æåº"), |
| | | Remark = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "夿³¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | IsDisabled = table.Column<bool>(type: "tinyint(1)", nullable: true, defaultValue: false, comment: "æ¯å¦ç¦ç¨"), |
| | | ExtraField1 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段1") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraField2 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段2") |
| | | .Annotation("MySql:CharSet", "utf8mb4"), |
| | | ExtraField3 = table.Column<string>(type: "varchar(256)", maxLength: 256, nullable: true, comment: "æ©å±å段3") |
| | | .Annotation("MySql:CharSet", "utf8mb4") |
| | | }, |
| | | constraints: table => |
| | | { |
| | | table.PrimaryKey("PK_scms_worktasks", x => x.Id); |
| | | }, |
| | | comment: "ä½ä¸ä»»å¡è¡¨") |
| | | .Annotation("MySql:CharSet", "utf8mb4"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_callmaterialorderrecords_DataIdentifier", |
| | | table: "scms_callmaterialorderrecords", |
| | | column: "DataIdentifier"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_callmaterialorders_DataIdentifier", |
| | | table: "scms_callmaterialorders", |
| | | column: "DataIdentifier", |
| | | unique: true); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_mytestentitynames_Name", |
| | | table: "scms_mytestentitynames", |
| | | column: "Name"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_workplans_DataIdentifier", |
| | | table: "scms_workplans", |
| | | column: "DataIdentifier"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_workplans_PlannedEndTime", |
| | | table: "scms_workplans", |
| | | column: "PlannedEndTime"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_workplans_PlannedStartTime", |
| | | table: "scms_workplans", |
| | | column: "PlannedStartTime"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_workplans_TaskCode", |
| | | table: "scms_workplans", |
| | | column: "TaskCode", |
| | | unique: true); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_worktasks_DataIdentifier", |
| | | table: "scms_worktasks", |
| | | column: "DataIdentifier"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_worktasks_PlannedEndTime", |
| | | table: "scms_worktasks", |
| | | column: "PlannedEndTime"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_worktasks_PlannedStartTime", |
| | | table: "scms_worktasks", |
| | | column: "PlannedStartTime"); |
| | | |
| | | migrationBuilder.CreateIndex( |
| | | name: "IX_scms_worktasks_Son_TaskCode", |
| | | table: "scms_worktasks", |
| | | column: "Son_TaskCode", |
| | | unique: true); |
| | | } |
| | | |
| | | protected override void Down(MigrationBuilder migrationBuilder) |
| | | { |
| | | migrationBuilder.DropTable( |
| | | name: "scms_callmaterialorderrecords"); |
| | | |
| | | migrationBuilder.DropTable( |
| | | name: "scms_callmaterialorders"); |
| | | |
| | | migrationBuilder.DropTable( |
| | | name: "scms_mytestentitynames"); |
| | | |
| | | migrationBuilder.DropTable( |
| | | name: "scms_workplans"); |
| | | |
| | | migrationBuilder.DropTable( |
| | | name: "scms_worktasks"); |
| | | } |
| | | } |
| | | } |
¶Ô±ÈÐÂÎļþ |
| | |
| | | using Ao.Lang; |
| | | using CMS.Extensions.Abp.AspNetCore.Mvc.Filters; |
| | | using CMS.Framework.AspNetCore.Users; |
| | | using CMS.Plugin.PipeLineLems.Application.Contracts.Dtos.WorkTask; |
| | | using CMS.Plugin.PipeLineLems.Application.Contracts.Services; |
| | | using Microsoft.AspNetCore.Authorization; |
| | | using Microsoft.AspNetCore.Http; |
| | | using Microsoft.AspNetCore.Mvc; |
| | | using MiniExcelLibs; |
| | | using System.Reflection; |
| | | using Volo.Abp; |
| | | using Volo.Abp.Application.Dtos; |
| | | using CmsQueryExtensions.Entitys; |
| | | |
| | | namespace CMS.Plugin.PipeLineLems.Controller |
| | | { |
| | | /// <summary> |
| | | /// ä½ä¸ä»»å¡è¡¨æå¡ |
| | | /// </summary> |
| | | [ApiController] |
| | | [TypeFilter(typeof(CMSLanguageFilter))] |
| | | [TypeFilter(typeof(CMSUowActionFilter))] |
| | | [TypeFilter(typeof(CMSAuditActionFilter))] |
| | | [TypeFilter(typeof(CMSExceptionFilter))] |
| | | [Route("api/v{version:apiVersion}/PipeLineLems/[controller]")] |
| | | public class WorkTaskController : ControllerBase |
| | | { |
| | | private readonly IWorkTaskAppService _workTaskAppService; |
| | | private readonly ICurrentUser _currentUser; |
| | | |
| | | /// <summary> |
| | | /// Initializes a new instance of the <see cref="WorkTaskController"/> class. |
| | | /// </summary> |
| | | /// <param name="workTaskAppService">The workTask application service.</param> |
| | | public WorkTaskController(IWorkTaskAppService workTaskAppService, ICurrentUser currentUser) |
| | | { |
| | | _workTaskAppService = workTaskAppService; |
| | | _currentUser = currentUser; |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è·åä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">主é®ID</param> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | [Route("{id}")] |
| | | public virtual Task<WorkTaskDto> GetAsync(Guid id) |
| | | { |
| | | return _workTaskAppService.GetAsync(id); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å页è·åä½ä¸ä»»å¡è¡¨çå表. |
| | | /// </summary> |
| | | /// <param name="input">æ¥è¯¢åæ°</param> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | [Route("Page")] |
| | | public virtual Task<PagedResultDto<WorkTaskDto>> GetListAsync([FromQuery] GetWorkTaskInput input) |
| | | { |
| | | return _workTaskAppService.GetListAsync(input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input">æ¥è¯¢åæ°</param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Route("FindListByFilter")] |
| | | public virtual async Task<List<WorkTaskDto>> FindListByFilterAsync([FromBody]GetWorkTaskInput input) |
| | | { |
| | | return await _workTaskAppService.FindListByFilterAsync(input); |
| | | } |
| | | /// <summary> |
| | | /// æ ¹æ®æ¡ä»¶è·åå个ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input">æ¥è¯¢åæ°</param> |
| | | /// <returns></returns> |
| | | [HttpPost] |
| | | [Route("FindSingleByFilter")] |
| | | public virtual async Task<WorkTaskDto> FindSingleByFilterAsync([FromBody]GetWorkTaskInput input) |
| | | { |
| | | |
| | | return await _workTaskAppService.FindSingleByFilterAsync(input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å建ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="input">åå»ºåæ°</param> |
| | | /// <returns></returns> |
| | | [Authorize] |
| | | [HttpPost] |
| | | public virtual Task<WorkTaskDto> CreateAsync(WorkTaskCreateDto input) |
| | | { |
| | | input.CreatorName = _currentUser.UserAccount;//å建人 |
| | | return _workTaskAppService.CreateAsync(input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ´æ°ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">主é®ID</param> |
| | | /// <param name="input">æ´æ°åæ°</param> |
| | | /// <returns></returns> |
| | | [Authorize] |
| | | [HttpPut] |
| | | [Route("{id}")] |
| | | public virtual Task<WorkTaskDto> UpdateAsync(Guid id, WorkTaskUpdateDto input) |
| | | { |
| | | input.LastModifierName = _currentUser.UserAccount;//ä¿®æ¹äºº |
| | | return _workTaskAppService.UpdateAsync(id, input); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å
éä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids">Idéå</param> |
| | | /// <returns></returns> |
| | | [Authorize] |
| | | [HttpPost] |
| | | [Route("Clone")] |
| | | public virtual Task<List<WorkTaskDto>> CloneAsync([FromBody] IEnumerable<Guid> ids) |
| | | { |
| | | MyCurrentUser myCurrentUser = new MyCurrentUser() |
| | | { |
| | | UserAccount = _currentUser.UserAccount, |
| | | UserId = _currentUser.UserId |
| | | }; |
| | | return _workTaskAppService.CloneAsync(ids, myCurrentUser); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// å é¤ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">主é®ID</param> |
| | | /// <returns></returns> |
| | | [Authorize] |
| | | [HttpDelete] |
| | | [Route("{id}")] |
| | | public virtual Task DeleteAsync(Guid id) |
| | | { |
| | | MyCurrentUser myCurrentUser = new MyCurrentUser() |
| | | { |
| | | UserAccount = _currentUser.UserAccount, |
| | | UserId = _currentUser.UserId |
| | | }; |
| | | //return _wmsMaterialAppService.DeleteAsync(id,myCurrentUser);//é»è¾å é¤ |
| | | return _workTaskAppService.DeletePermanentlyAsync(id, myCurrentUser);//ç©çå é¤ |
| | | } |
| | | |
| | | /// <summary> |
| | | /// æ¹éå é¤ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="ids">主é®IDéå</param> |
| | | /// <returns></returns> |
| | | [Authorize] |
| | | [HttpDelete] |
| | | public virtual Task DeleteAsync([FromBody] IEnumerable<Guid> ids) |
| | | { |
| | | MyCurrentUser myCurrentUser = new MyCurrentUser() |
| | | { |
| | | UserAccount = _currentUser.UserAccount, |
| | | UserId = _currentUser.UserId |
| | | }; |
| | | // return _wmsMaterialAppService.DeleteManyAsync(ids,myCurrentUser);//é»è¾å é¤ |
| | | return _workTaskAppService.BatchDeletePermanentlyAsync(ids, myCurrentUser);//ç©çå é¤ |
| | | } |
| | | |
| | | /// <summary> |
| | | /// è°æ´æåºä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <param name="id">主é®ID</param> |
| | | /// <returns></returns> |
| | | [HttpPut] |
| | | [Route("{id}/AdjustSort/{sort}")] |
| | | public virtual Task AdjustSortAsync(Guid id, int sort) |
| | | { |
| | | return _workTaskAppService.AdjustSortAsync(id, sort); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 导å
¥ä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [Authorize] |
| | | [HttpPost] |
| | | [Route("Import")] |
| | | public virtual async Task<IActionResult> ImportAsync(IFormFile file) |
| | | { |
| | | using var stream = new MemoryStream(); |
| | | await file.CopyToAsync(stream); |
| | | stream.Seek(0L, SeekOrigin.Begin); |
| | | |
| | | var sheetNames = stream.GetSheetNames(); |
| | | var workTaskRows = sheetNames.Contains("é
ç½®") ? MiniExcel.Query<WorkTasksImportModel.WorkTaskImportModel>(stream, sheetName: "é
ç½®").ToList() : new(); |
| | | |
| | | if (!workTaskRows.Any()) |
| | | { |
| | | throw new UserFriendlyException("è¯·æ£æ¥å¯¼å
¥çè¡¨æ ¼"); |
| | | } |
| | | |
| | | MyCurrentUser myCurrentUser = new MyCurrentUser() |
| | | { |
| | | UserAccount = _currentUser.UserAccount, |
| | | UserId = _currentUser.UserId |
| | | }; |
| | | await _workTaskAppService.ImportAsync(new WorkTasksImportModel |
| | | { |
| | | WorkTasks = workTaskRows, |
| | | },myCurrentUser); |
| | | |
| | | return Ok(); |
| | | } |
| | | |
| | | /// <summary> |
| | | /// 导åºä½ä¸ä»»å¡è¡¨ |
| | | /// </summary> |
| | | /// <returns></returns> |
| | | [HttpGet] |
| | | [Route("Export")] |
| | | public virtual async Task<IActionResult> ExportAsync([FromQuery] GetWorkTaskInput input) |
| | | { |
| | | input.MaxResultCount = int.MaxValue; |
| | | var exportData = await _workTaskAppService.ExportAsync(input); |
| | | var templatePath = Path.Combine(AppDomain.CurrentDomain.BaseDirectory, $"Resources/Templates/WorkTaskå¯¼åºæ¨¡æ¿.xlsx"); |
| | | if (!System.IO.File.Exists(templatePath)) |
| | | { |
| | | templatePath = Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location) ?? string.Empty, $"Resources/Templates/WorkTaskå¯¼åºæ¨¡æ¿.xlsx"); |
| | | } |
| | | |
| | | var memoryStream = new MemoryStream(); |
| | | await memoryStream.SaveAsByTemplateAsync(templatePath, exportData.Sheets); |
| | | memoryStream.Seek(0L, SeekOrigin.Begin); |
| | | return new FileStreamResult(memoryStream, "application/vnd.openxmlformats-officedocument.spreadsheetml.sheet") { FileDownloadName = $"{exportData.FileName}_{DateTime.Now:yyyyMMddhhmmss}.xlsx" }; |
| | | } |
| | | } |
| | | } |
| | |
| | | import { |
| | | BOOLEAN_OPTIONS_AddEdit |
| | | } from '@/utils/commonOptionConstants'; |
| | | |
| | | // å¼å
¥å
Œ
±è¡¨åå·¥å
·æä»¶ |
| | | import { extractFormDataForOnConfirm,extractAndAssignFormData } from '@/utils/myformUtils'; |
| | | export const use$EntityName$Drawer = (props: any, ctx?: any) => { |
| | | const $PageMenuInstanceName$Drawer = injectModel<$EntityName$Drawer>('$PageMenuInstanceName$Drawer') |
| | | /** |
| | |
| | | */ |
| | | const onConfirm = async () => { |
| | | await formRef.value?.validate() |
| | | const data = { |
| | | $Save_PageAddFormAttributes$ |
| | | } |
| | | const data=extractFormDataForOnConfirm(formData); |
| | | if (!current.value) { |
| | | await $PageMenuInstanceName$Drawer.add$EntityName$(data) |
| | | } else { |
| | |
| | | if (current.value) { |
| | | const res = await $PageMenuInstanceName$Drawer.get$EntityName$Detail(current.value) |
| | | |
| | | formData.value = { |
| | | $PageAddFormAttributesByOpen$ |
| | | id: res.id, |
| | | } |
| | | extractAndAssignFormData(res,formData); |
| | | disabled.value = true |
| | | updateCheckData() |
| | | } else { |