| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460461462463464465466467468469470471472473474475476477478479480481482483484485486487488489490491492493494495496497498499500501502503504505506507508509510511512513514515516517518519520521522523524525526527528529530531532533534535536537538539540541542543544545546547548549550551552553554555556557558559560561562563564565566567568569570571572573574575576577578579580581582583584585586587588589590591592593594595596597598599600601602603604605606607608609610611612613614615616617618619620621622623624625626627628629630631632633634635636637638639640641642643644645646647648649650651652653654655656657658659660661662663664665666667668669670671672673674675676677678679680681682683684685686687688689690691692693 | // #ifdef APP-ANDROIDimport { selectTableData, insertTableData, updateTableData, selectJoinTableData, selectRecordData, selectRecordInfo, selectLatestInfoData, deleteTableData, selectTaskInfo, selectLatestTaskData, selectTaskId, selectTaskDetail, selectTableDataByOrder, pullSQL } from '@/utils/sqlite'// #endifexport type Download = {	pdid : number,	workorder : string,	invname : string,	productno : string,	graphid : string,	cardno : string,	processno : string,	ver : string,	updatetime : string,	progress : string,	status : number}export type Record = {	sxid : number,	senum : number,	photoitem : string,	productno : string,	part : string,	descb : string,	date : string,	partno : string,	num : number,	status : number,	urlspl : string[],	imgname : string[],	urlpdt : string[]}export type TaskProcess = {	id : number	name : string	num : number	step : number	status : number}export type JoinRecord = {	sxid : number,	senum : number,	photoitem : string,	productno : string,	part : string,	descb : string,	date : string,	partno : string,	num : number,	status : number,	urlspl : string	imgname : string,	urlpdt : string,	pid : number,	workorder : string,	invname : string}export type RecordCalculate = {	part : string,	pid : number,	step : number,	total : number,	status : number}//检验任务export type TaskInfo = {	gxid : string,	itemTitle : string,	photoitemStep : number,	photoitemTotal : number,	photoitemStatus : string,	recordStep : number,	recordTotal : number,	recordStatus : string,	keypointStep : number,	keypointTotal : number	keypointStatus : string}export type TaskDownload = {	pdid : number,	gxpk : string,	cardno : string,	productcode : string,	model : string,	workorder : string,	invname : string,	graphid : string,	processno : string,	gxno : string,	ver : string,	lastupdatetime ?: string,	updateuser ?: string,	progress ?: string,	uploadFlag : number}export type TaskDetail = {	pdid: string,	gxno: string,	photoTotal: number,	photoCount: number,	photoStatus: string,	keyTotal: number,	keyCount: number,	keyStatus: string,	recordTotal: number,	recordCount: number,	recordStatus: string,}export type TaskPhoto = {	sxid : number,	pdid : number,	senum: number,	photographpoint : string,	photographdescription : string,	photourl : string,	photourlSpl : string[],	imgname : string[],	exampleurl : string,	exampleurlSpl : string[],	photoname : string,	fk_qcRecord : string,	fk_prodcode : string,	prodno : string,	processStep ?: string,}export type TaskJoinRecord = {	sxid : number,	pdid : number,	photographpoint : string,	photographdescription : string,	photourl ?: string,	photourlSpl ?: string[],	imgname : string,	exampleurl ?: string,	exampleurlSpl ?: string[],	photoname ?: string,	fk_qcRecord ?: string,	fk_prodcode ?: string,	prodno ?: string,	processStep ?: string,	workorder : string,	invname : string,}export type QcRecord = {	sxid: number,	pdid: number,	pk: string,	fk_invcode: string,	no: string,	invcode: string,	invname: string,	processStep: string,	fk_processTask: string,	checkTarget: string,	checknum: number,	oknum: number,	ngnum: number,	status: string,	result: string,	checkTime: string,	fk_creator: string,	cs: string,	ts: string,	psxid: number,	fk_qcRecord: string,	fk_prodcode: string,	prodno: string,	name: string,	nature: string,	unit: string,	maxNum: string,	minNum: string,	memo: string,	measuredvalue: string,	measuredvaluemax: string}export type TaskKeyProcess = {	sxid: number,	pdid: number,	senum : number,	parameterorder: number,	parametername: string,	prodno: string,	testapparatus?: string,	testrequirelower?: string,	testrequireupper?: string,	memo?: string,	measuredvaluemin?: string,	measuredvaluemax?: string,	result?: string,}export function offlineData(data : UTSJSONObject) : Promise<UTSJSONObject> {	return new Promise((resolve, reject) => {		let result = JSON.parseObject(JSON.stringify(data)) as UTSJSONObject		resolve(result)	});}export const statusDict = { '1': '未执行', '2': '执行中', '3': '已执行', '4': '执行错误', '5': '已取消' }export const recordStatusDict = { '1': '未拍照', '2': '拍照中', '3': '拍照完成', '4': '检验不清晰', '5': '拍照取消' }export const taskType = { '1': '检测任务', '2': '关键工序任务' }export const funcType = { '1': '新增', '2': '更新', '3': '删除' }//export const moduleType = {'1': '声像记录', '2':'检验任务', '3':'关键工序','4': '系统管理','5':'其它'}export async function getList(tableName : string, condition ?: string | null, value ?: string | null, condition2 ?: string | null, value2 ?: string | null, initData ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await selectTableData(tableName, condition, value, condition2, value2);	console.log(result);	return result;	// #endif	// #ifdef H5	return offlineData(initData)	// #endif}export async function getJoinList(dbTable : string, joinTable : string, labels : string, joinCondition : string, lname ?: string, lvalue ?: string, others ?: string) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await selectJoinTableData(dbTable, joinTable, labels, joinCondition, lname, lvalue, others);	console.log(result);	return result;	// #endif}export async function updateData(tableName : string, data : string, lname ?: string, lvalue ?: string) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await updateTableData(tableName, data, lname, lvalue);	console.log(result);	addLog({ module: tableName, dataid: lvalue, content: '更新数据', status: result?.['errMsg'] === 'ok' ? 1 : 0, params: data })	return result;	// #endif}export async function getRecordCalculate(tableName : string, value ?: string | null, initData ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await selectRecordData(tableName, value);	console.log(result);	return result;	// #endif	// #ifdef H5	return offlineData(initData)	// #endif}export async function getRecordInfoList(query: string, initData ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await selectRecordInfo(query);	console.log(result);	return result;	// #endif	// #ifdef H5	return offlineData(initData)	// #endif}/** * 保存媒体信息数据到数据库 * @param data MediaInfoData类型的数据 * @returns Promise<UTSJSONObject> 保存结果 */export async function saveMediaInfo(data ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	// 表名	const tableName = 'app_media_info';	// 构造插入的数据字符串,注意数据库字段名和类型	const values = `'${data?.getString('workorder') ?? ''}','${data?.getString('invname') ?? ''}','${data?.getString('productcode') ?? ''}','${data?.getString('cardno') ?? ''}','${data?.getString('model') ?? ''}','${data?.getString('graphid') ?? ''}','${data?.getString('ver') ?? ''}','${data?.getString('phase') ?? ''}','${data?.getString('processno') ?? ''}','${data?.getString('progress') ?? ''}',${data?.getNumber('status') ?? 1},'${data?.getString('createtime') ?? ''}',${data?.getNumber('createuser') ?? 0}, strftime('%Y-%m-%d %H:%M:%S', 'now', 'localtime'), ${data?.getNumber('updateuser') ?? 0}, 0`;	// 构造字段名字符串	const fields = 'workorder,invname,productno,cardno,model,graphid,ver,phase,processno,progress,status,createtime,createuser,updatetime,updateuser,uploadflag';	try {		// 调用sqlite的插入方法		const result = await insertTableData(tableName, values, fields);		console.log('保存app_media_info成功:', result);		addLog({ module: tableName, dataid: 0, content: '保存媒体信息', status: 1, params: values })		return result;	} catch (error) {		console.error('保存app_media_info失败:', error);		addLog({ module: tableName, dataid: 0, content: '保存媒体信息失败', status: 0, params: values })		return { errMsg: '保存失败', data: [] as any[] } as UTSJSONObject;	}	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}/** * 保存媒体信息数据到数据库 * @param data saveMediaRecord类型的数据 * @returns Promise<UTSJSONObject> 保存结果 */export async function saveMediaRecord(values : string) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	// 表名	const tableName = 'app_media_record';	// 构造字段名字符串	const fields = 'senum,photoitem,productno,part,partno,pk,exampleid,descb,num,status,date,urlspl,imgname,urlpdt,createtime,createuser,updatetime,updateuser,pid';	try {		// 调用sqlite的插入方法		const result = await insertTableData(tableName, values, fields);		console.log('保存app_media_record成功:', result);		addLog({ module: tableName, dataid: 0, content: '保存媒体记录', status: 1, params: values })		return result;	} catch (error) {		console.error('保存app_media_record失败:', error);		addLog({ module: tableName, dataid: 0, content: '保存媒体记录失败', status: 0, params: values })		return { errMsg: '保存失败', data: [] as any[] } as UTSJSONObject;	}	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}export async function getLatestRecord(productNo : string, initData ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await selectLatestInfoData(productNo);	console.log(result);	return result;	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject)	// #endif}export async function removeTableData(tableName : string, field : string, value : string) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	try {		if (value == null || value == '') {			return { errMsg: '删除失败', data: [] as any[] } as UTSJSONObject;		}		// 调用sqlite的删除方法		const result = await deleteTableData(tableName, field, value);		console.log('删除数据成功:', result);		addLog({ module: tableName, dataid: 1, content: '删除数据成功', status: 1, params: value })		return result;	} catch (error) {		console.error('删除数据失败:', error);		addLog({ module: tableName, dataid: 1, content: '删除数据失败', status: 0, params: value })		return { errMsg: '删除失败', data: [] as any[] } as UTSJSONObject;	}	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}export async function removeInfoAndRecord(value : string) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	try {		// 调用sqlite的删除方法		const result = await deleteTableData('app_media_record', 'pid', value);		addLog({ module: 'app_media_record', dataid: 1, content: '删除数据成功', status: 1, params: value, updatetime: "strftime('%Y-%m-%d %H:%M:%S', 'now', 'localtime')" })		const result2 = await deleteTableData('app_media_info', 'pdid', value);		addLog({ module: 'app_media_info', dataid: 1, content: '删除数据成功', status: 1, params: value })		return result;	} catch (error) {		console.error('删除数据失败:', error);		addLog({ module: 'app_media_record', dataid: 1, content: '删除数据失败', status: 0, params: value })		return { errMsg: '删除失败', data: [] as any[] } as UTSJSONObject;	}	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}export async function addLog(data ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	const tableName = 'app_log';	// #ifdef APP-ANDROID	const params = data?.getString('params')?.replace(/['"]/g, '')	const dataid = data?.getNumber('dataid') ?? 0	let fields = 'module,dataid,content,status,params';	let values = `'${data?.getString('module') ?? ''}',${data?.getNumber('dataid') ?? 0},'${data?.getString('content') ?? ''}',${data?.getNumber('status') ?? 0},'${params}'`;	if (dataid === 0) {		fields = fields + ",createuser,createtime"		values = values + `,'${data?.getString('createuser') ?? 0}',strftime('%Y-%m-%d %H:%M:%S', 'now', 'localtime')`	} else {		fields = fields + ",updateuser,updatetime"		values = values + `,'${data?.getString('updateuser') ?? 0}',strftime('%Y-%m-%d %H:%M:%S', 'now', 'localtime')`	}	const result = await insertTableData(tableName, values, fields);	console.log(result);	return result;	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}export async function addOperateLog(data ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	const tableName = 'app_operate_log';	// #ifdef APP-ANDROID	let fields = 'module,title,content,msg,createuser,createtime';	let values = `'${data?.getString('module') ?? ''}','${data?.getString('title') ?? ''}', '${data?.getString('content') ?? ''}', '${data?.getString('msg') ?? ''}', '${data?.getString('createuser') ?? 0}', strftime('%Y-%m-%d %H:%M:%S', 'now', 'localtime')`;	const result = await insertTableData(tableName, values, fields);	console.log(result);	return result;	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}export async function saveTaskInfo(data ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	// 表名	const tableName = 'app_task_info';	// 构造插入的数据字符串,注意数据库字段名和类型	const values = `'${data?.getString('gxpk') ?? ''}','${data?.getString('pk_serial') ?? ''}','${data?.getString('cardno') ?? ''}','${data?.getString('productcode') ?? ''}','${data?.getString('model') ?? ''}','${data?.getString('workorder') ?? ''}','${data?.getString('invname') ?? ''}','${data?.getString('graphid') ?? ''}','${data?.getString('processno') ?? ''}','${data?.getString('gxno') ?? ''}', '${data?.getString('ver') ?? ''}', strftime('%Y-%m-%d %H:%M:%S', 'now', 'localtime'),'${data?.getString('updateuser') ?? ''}', 0`;	// 构造字段名字符串	const fields = 'gxpk,pk_serial,cardno,productcode,model,workorder,invname,graphid,processno,gxno,ver,lastupdatetime,updateuser,uploadflag';	try {		// 调用sqlite的插入方法		const result = await insertTableData(tableName, values, fields);		console.log('保存app_task_info成功:', result);		addLog({ module: tableName, dataid: 0, content: '保存检验任务信息成功', status: 1, params: values })		return result;	} catch (error) {		console.error('保存app_task_info失败:', error);		addLog({ module: tableName, dataid: 0, content: '保存检验任务信息失败', status: 0, params: values })		return { errMsg: '保存失败', data: [] as any[] } as UTSJSONObject;	}	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}/** * 保存检验任务信息里的图片数据到数据库 * @param data saveTaskPhoto类型的数据 * @returns Promise<UTSJSONObject> 保存结果 */export async function saveTaskPhoto(values : string) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	// 表名	const tableName = 'app_task_photo';	// 构造字段名字符串	const fields = 'pdid,pk,photographpoint,photographdescription,photourl,exampleurl,photoname,fk_qcRecord,fk_prodcode,prodno,fk_creator,fks_operator,operator,processStep,fk_processTask,cs,ts';	try {		// 调用sqlite的插入方法		const result = await insertTableData(tableName, values, fields);		console.log('保存app_task_photo成功:', result);		addLog({ module: tableName, dataid: 0, content: '保存任务图像记录', status: 1, params: values })		return result;	} catch (error) {		console.error('保存app_task_photo失败:', error);		addLog({ module: tableName, dataid: 0, content: '保存任务图像记录失败', status: 0, params: values })		return { errMsg: '保存失败', data: [] as any[] } as UTSJSONObject;	}	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}export async function getTaskInfoList(query : string, initData ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await selectTaskInfo(query);	console.log(result);	return result;	// #endif	// #ifdef H5	return offlineData(initData)	// #endif}export async function saveTaskKeyProcess(data ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	// 表名	const tableName = 'app_task_keyprocess';	// 构造插入的数据字符串,注意数据库字段名和类型	const values = `'${data?.getNumber('pdid') ?? 0}','${data?.getString('pk') ?? ''}','${data?.getString('testapparatus') ?? ''}','${data?.getString('tableid') ?? ''}','${data?.getString('testrequirelower') ?? ''}','${data?.getString('testrequireupper') ?? ''}','${data?.getString('parametername') ?? ''}','${data?.getString('parameterorder') ?? ''}','${data?.getString('measureunit') ?? ''}','${data?.getString('parameterinstruction') ?? ''}', '${data?.getString('parameterid') ?? ''}','${data?.getString('fk_creator') ?? ''}','${data?.getString('fk_prodcode') ?? ''}','${data?.getString('prodno') ?? ''}','${data?.getString('processstep') ?? ''}','${data?.getString('fk_processtask') ?? ''}','${data?.getString('measuredvaluemin') ?? ''}','${data?.getString('measuredvaluemax') ?? ''}','${data?.getString('result') ?? ''}','${data?.getString('memo') ?? ''}','${data?.getString('fks_operator') ?? ''}','${data?.getString('cs') ?? ''}','${data?.getString('ts') ?? ''}'`;	// 构造字段名字符串	const fields = 'pdid,pk,testapparatus,tableid,testrequirelower,testrequireupper,parametername,parameterorder,measureunit,parameterinstruction,parameterid,fk_creator,fk_prodcode,prodno,processstep,fk_processtask,measuredvaluemin,measuredvaluemax,result,memo,fks_operator,cs,ts';	try {		// 调用sqlite的插入方法		const result = await insertTableData(tableName, values, fields);		console.log('保存app_task_info成功:', result);		addLog({ module: tableName, dataid: 0, content: '保存检验任务信息成功', status: 1, params: values })		return result;	} catch (error) {		console.error('保存app_task_info失败:', error);		addLog({ module: tableName, dataid: 0, content: '保存检验任务信息失败', status: 0, params: values })		return { errMsg: '保存失败', data: [] as any[] } as UTSJSONObject;	}	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}export async function saveTaskRecord(data ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	// 表名	const tableName = 'app_task_record';	// 构造插入的数据字符串,注意数据库字段名和类型	const values = `'${data?.getNumber('pdid') ?? 0}','${data?.getString('pk') ?? ''}','${data?.getString('fk_invcode') ?? ''}','${data?.getString('no') ?? ''}','${data?.getString('invcode') ?? ''}','${data?.getString('invname') ?? ''}','${data?.getString('processStep') ?? ''}','${data?.getString('fk_processTask') ?? ''}','${data?.getString('checkTarget') ?? ''}',${data?.getNumber('checknum') ?? 0}, ${data?.getNumber('oknum') ?? 0},${data?.getNumber('ngnum') ?? 0},'${data?.getString('status') ?? ''}','${data?.getString('result') ?? ''}','${data?.getString('checkTime') ?? ''}','${data?.getString('fk_creator') ?? ''}','${data?.getString('cs') ?? ''}','${data?.getString('ts') ?? ''}'`;	// 构造字段名字符串	const fields = 'pdid,pk,fk_invcode,no,invcode,invname,processStep,fk_processTask,checkTarget,checknum,oknum,ngnum,status,result,checkTime,fk_creator,cs,ts';	try {		// 调用sqlite的插入方法		const result = await insertTableData(tableName, values, fields);		console.log('保存app_task_record成功:', result);		addLog({ module: tableName, dataid: 0, content: '保存检验任务记录信息成功', status: 1, params: values })		return result;	} catch (error) {		console.error('保存app_task_record失败:', error);		addLog({ module: tableName, dataid: 0, content: '保存检验任务记录信息失败', status: 0, params: values })		return { errMsg: '保存失败', data: [] as any[] } as UTSJSONObject;	}	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}export async function saveTaskRecordItem(data ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	// 表名	const tableName = 'app_task_record_item';	// 构造插入的数据字符串,注意数据库字段名和类型	const values = `'${data?.getNumber('psxid') ?? 0}','${data?.getString('pk') ?? ''}','${data?.getString('fk_qcRecord') ?? ''}','${data?.getString('fk_prodcode') ?? ''}','${data?.getString('prodno') ?? ''}','${data?.getString('name') ?? ''}','${data?.getString('no') ?? ''}','${data?.getString('nature') ?? ''}','${data?.getString('unit') ?? ''}','${data?.getString('maxNum') ?? ''}', '${data?.getString('minNum') ?? ''}','${data?.getString('status') ?? ''}','${data?.getString('memo') ?? ''}','${data?.getString('measuredvalue') ?? ''}','${data?.getString('measuredvaluemax') ?? ''}','${data?.getString('result') ?? ''}','${data?.getString('cs') ?? ''}','${data?.getString('ts') ?? ''}'`;	// 构造字段名字符串	const fields = 'psxid,pk,fk_qcRecord,fk_prodcode,prodno,prodno,no,nature,unit,maxNum,minNum,status,memo,measuredvalue,measuredvaluemax,result,cs,ts';	try {		// 调用sqlite的插入方法		const result = await insertTableData(tableName, values, fields);		console.log('保存app_task_record_item成功:', result);		addLog({ module: tableName, dataid: 0, content: '保存检验任务项目信息成功', status: 1, params: values })		return result;	} catch (error) {		console.error('保存app_task_record_item失败:', error);		addLog({ module: tableName, dataid: 0, content: '保存检验任务项目信息失败', status: 0, params: values })		return { errMsg: '保存失败', data: [] as any[] } as UTSJSONObject;	}	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}export async function getLatestTask(gxpk : string, initData ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await selectLatestTaskData(gxpk);	console.log(result);	return result;	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject)	// #endif}export async function removeTaskAndRecord(value : string) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	try {		// 调用sqlite的删除方法		const taskId = await selectTaskId('app_task_info', 'pdid', 'gxpk', value);		const result = await deleteTableData('app_task_info', 'pdid', taskId);		addLog({ module: 'app_task_info', dataid: 1, content: '删除数据成功', status: 1, params: value, updatetime: "strftime('%Y-%m-%d %H:%M:%S', 'now')" })		const result2 = await deleteTableData('app_task_photo', 'pdid', taskId);		addLog({ module: 'app_task_photo', dataid: 1, content: '删除数据成功', status: 1, params: value })		const recordId = await selectTaskId('app_task_record', 'sxid', 'pdid', taskId);		const result3 = await deleteTableData('app_task_record_item', 'psxid', recordId);		addLog({ module: 'app_task_record_item', dataid: 1, content: '删除数据成功', status: 1, params: value })		const result4 = await deleteTableData('app_task_record', 'sxid', recordId);		addLog({ module: 'app_task_record', dataid: 1, content: '删除数据成功', status: 1, params: value })		return {};	} catch (error) {		console.error('删除数据失败:', error);		addLog({ module: 'app_media_record', dataid: 1, content: '删除数据失败', status: 0, params: value })		return { errMsg: '删除失败', data: [] as any[] } as UTSJSONObject;	}	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject);	// #endif}export async function getTaskDetail(field ?: string | null, value ?: string | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await selectTaskDetail(field, value);	console.log(result);	return result;	// #endif	// #ifdef H5	return offlineData({ success: true, data: [] } as UTSJSONObject)	// #endif}export async function getListByOrder(tableName : string, condition ?: string | null, value ?: string | null, order ?:string | null, initData ?: UTSJSONObject | null) : Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await selectTableDataByOrder(tableName, condition, value, null, null, order);	console.log(result);	return result;	// #endif	// #ifdef H5	return offlineData(initData)	// #endif}export async function selectPageSql(tableName : string, order : string, num : number):Promise<UTSJSONObject> {	// #ifdef APP-ANDROID	const result = await pullSQL(tableName, order, num);	console.log(result);	return result;	// #endif		// #ifdef H5	return offlineData(initData)	// #endif}
 |