#if !defined(AFX_IMPORTPHOTO_H__31892A21_6227_4C00_BB8A_AE225971E66F__INCLUDED_) #define AFX_IMPORTPHOTO_H__31892A21_6227_4C00_BB8A_AE225971E66F__INCLUDED_ #if _MSC_VER > 1000 #pragma once #endif // ImportPhoto dialog //------------------------------------------------------------------------ // remark by Jeff 2014.10.27 // 1.需要定义成员变量来表示导入或导出行为; // 2.需要定义成员变量来表示导入原片、初修、精修、设计; // 3.需要定义成员变量来表示导出原片、初修、精修、设计; // // 初修片的定义:有些原片拍照时穿帮,需要在用户选片前先进行简单的处理。 // 精修片的定义:在选完片后,导出用户选好的相片,进行相片全面美化等PS操作。 // // 其他行为:(初修片必须是原片的真子集) // 1.从原片里【导出】相片进行初修,可选择压缩相片(最好选择压缩,且默认选项为压缩)。 // 2.从初修片里【导出】修好的相片时,可选择压缩相片。(导出修好的片,用来做什么?) // 3.精修的相片是从选好的相片里【导出】(导出时,可选择相片名是否含产品名),可从原片或初修片里导出。 // 4.从原片或初修片里【导出】相片进行精修(必须已选片),可选择压缩相片。 // 5.从精修片里【导出】相片进行设计,可选择压缩相片。 // 6.从设计片里【导出】相片进行发件(必须已选设计),不用选择压缩相片。 // // 疑问:相片冲印与相片发片,是否有前提条件? // //------------------------------------------------------------------------ class ImportPhoto : public CDialog { public: ImportPhoto(CWnd* pParent = NULL); // standard constructor #if JEFF_TEST_ON BOOL m_bImportImage; // TRUE:表示导入; FALSE:表示导出; WORD m_ImportOfImageType; // 导入的图片类型,参考枚举IE_IMAGETYPE; WORD m_ExportOfImageType; // 导出的图片类型,参考枚举IE_IMAGETYPE; // 定义新的导入导出即时线程; // 禁止两个客户端对同一个订单进行导片操作!需要进程安全,使用互斥内核对象! static unsigned int WINAPI ImprotOrExportImageThread(LPVOID lp); #endif private: CStdioFile m_fp; int g_filecount; BOOL m_bautono; public: // 导入原片时,新导入相片的命名编号; int beginno; // 精修导出选好片时,相片名是否添加关联的商品名; BOOL m_bAddname; // 导入原片时,订单的分店名; // 精修导入精修片时,订单分店名; // 设计导入设计片时,订单分店名; CString m_branch; // 导入原片时,值为0; // 导入初修片时,值为1; // 精修导入精修片时,值为2; // 设计导入设计片时,值为3; int m_nphototype; // 导入原片时,值为1; // 精修导出选好片时,当导出的是原片时,值为1,导出的是初修时,值为0; BOOL m_bOfmat; CString m_id; // 订单号; // 精修导出选好的片时客户姓名1+姓名2; CString m_name; CString m_calnopath; // 导入原片时; // 导入初修片时的尺寸; // 初修导出原片制作初修时的压缩像素; // 初修导出修好的片时的尺寸; // 精修导出精修片时的尺寸; // 设计导出精修片时的尺寸; // 设计导出设计片时的尺寸; int m_nOutputSize; // 选片缓存到本机时为真; BOOL m_bCopyToLocal; CString m_sel; // 导入原片时,值为1; // 初修导出原片时,值为1; // 精修导出选好片时,值为1; // 设计导出选设计片时,值为1; BOOL m_bOrigin; BOOL m_bSaveUploadTask; // 上传任务是否保存; CStringArray m_uploadtaskarray; BOOL m_bBeautifySkinFrom; // 精修导入精修时,为TRUE; BOOL m_bOverWrite; int m_exitcode; // 导入原片时,值为2; // 导出原片时,值为1; // 初修导出修好片时,值为1; // 选片缓存到本机时,值为1; // 精修,导出选好的片时,值为1; // 精修,导出精修好的片时,值为1; // 设计,导出精修好的片时,值为1; // 设计,导出设计好的片时,值为1; // 设计,导出选设计的片时,值为1; // 查看设计片,导出的设计片时,值为1; int m_mode; // 导入原片时,相片路径集合; // 导入初修片时,相片的路径集合; // 初修时导出原片的相片路径集合; // 初修要导出修好的片的路径集合; // 选片缓存到本机时的相片路径集合; // 精修,导入精修片时的源相片路径集合???; // 精修,导出精修片时的源相片路径集合???; // 设计,导入设计片时的源设计片路径集合; // 设计,导出精修片时的源精修片路径集合; // 设计,导出设计片时的源设计片路径集合; // 设计,导出选设计片时的源选设计片路径集合; // 查看设计导出设计片时的源设计片路径集合; CStringArray *m_pArray; CStringArray *m_pArray2; // 与相片关联的选中产品数组;(选片或选设计时的商品数组) // 精修,导入精修片时的目标相片路径集合???; // 精修,导出精修片时的目标相片路径集合???; // 设计,导入设计片时的目标设计片路径集合; // 设计,导出精修片时的目标精修片路径集合; // 设计,导出设计片时的目标设计片路径集合; // 设计,导出选设计片时的目标选设计片路径集合; // 查看设计导出设计片时的目标设计片路径集合; CStringArray *m_pDesArray; // 导入原片时,原片保存的路径; // 初修,导出原片时保存的路径; // 初修,导入修好的片的保存路径; // 初修,导出修好片保存的路径; // 精修,导入精修片保存的路径???; // 精修,导出精修片保存的路径???; // 设计,导入设计片保存的路径; // 设计,导出精修片保存的路径; // 设计,导出设计片保存的路径; // 设计,导出选设计片保存的路径; // 查看设计导出设计片保存的路径; CString m_savepath; enum { IDD = IDD_DLGimportphoto }; CProgressCtrl m_progress; int GetFileNo(CString strOrderFolder); void MyCopyFile(CString file1, CString file2, BOOL bOverWrite); protected: virtual void DoDataExchange(CDataExchange* pDX); // DDX/DDV support virtual void OnOK(); virtual void OnCancel(); virtual BOOL OnInitDialog(); afx_msg void OnClose(); DECLARE_MESSAGE_MAP() public: #if USE_SHARE_FLORD #define INSERT_INCREMENT _T("INSERT INTO [IncrementalBackup]([isbackup],[branchid],[opttime],[order],[photoType],[content],[userid],[username],[baktime])\ VALUES (%d,'%s','%s','%s',%d,'%s','%s','%s',NULL)") // 导入原片和初修片时返回给增量备份使用的相片路径数组 [5/4/2015 Jeff] CString m_strIncrementalSQL; CStringArray m_AryOfImagePath; #endif }; #endif